Skip to main content

What is software? (Apa itu perangkat lunak?) Menurut Ian Sommerville

 Banyak orang menganggap bahwa perangkat lunak hanya merujuk pada program komputer. Namun, menurut saya, definisi yang lebih komprehensif akan memasukkan tidak hanya program itu sendiri, tetapi juga dokumen terkait dan konfigurasi data yang diperlukan untuk mengoperasikan program dengan benar. Biasanya, sistem perangkat lunak terdiri dari serangkaian program yang berbeda, file konfigurasi untuk menyiapkan program, dokumen sistem untuk menjelaskan struktur sistem, dan dokumen pengguna untuk memberikan panduan penggunaan sistem. Selain itu, situs web tersedia untuk pengguna untuk mengunduh informasi produk terbaru.

Para insinyur perangkat lunak memiliki kekhawatiran dalam mengembangkan produk perangkat lunak yang dapat dijual kepada pelanggan. Terdapat dua jenis dasar produk perangkat lunak yang harus dipertimbangkan:

  1. Generic products. Produk jenis ini merupakan sistem mandiri yang dibuat oleh perusahaan pengembangan dan dijual di pasar terbuka untuk pelanggan yang memiliki kemampuan untuk membelinya. Beberapa contoh dari jenis produk ini antara lain perangkat lunak untuk PC seperti manajemen basis data, pengolah kata, paket gambar, serta perangkat lunak untuk manajemen proyek.
  2. Customised (or bespoke) products. Jenis produk lainnya adalah sistem yang dikhususkan untuk pelanggan tertentu. Kontraktor perangkat lunak akan mengembangkan perangkat lunak yang dibuat khusus sesuai kebutuhan pelanggan tersebut. Beberapa contoh dari produk jenis ini termasuk sistem kontrol untuk perangkat elektronik, sistem yang dikembangkan untuk mendukung proses bisnis tertentu, serta sistem kontrol lalu lintas udara.

Perbedaan utama antara kedua jenis perangkat lunak ini terletak pada pengontrolan spesifikasi perangkat lunak. Pada produk generik, organisasi pengembang perangkat lunak bertanggung jawab atas spesifikasi produk tersebut. Sedangkan pada produk kustom, spesifikasi umumnya dibuat dan dikendalikan oleh organisasi yang membeli perangkat lunak. Sebagai pengembang perangkat lunak, mereka harus mematuhi spesifikasi tersebut.

Namun, semakin lama, batasan antara kedua jenis produk tersebut semakin memudar. Banyak perusahaan perangkat lunak yang mulai mengembangkan sistem generik dan menyesuaikannya dengan kebutuhan pelanggan tertentu. Contoh terbaik dari pendekatan ini adalah sistem Enterprise Resource Planning (ERP) seperti sistem SAP. Sistem yang besar dan kompleks ini dapat disesuaikan dengan kebutuhan perusahaan dengan memasukkan informasi tentang aturan dan proses bisnis, laporan yang dibutuhkan, dan sebagainya.



Source: Sommerville, Ian. 2007. Software Engineering Eight Edition. s.l. : Addison-. Wisley, 2007.

Comments

Popular posts from this blog

Proses Perangkat Lunak Menurut Roger S. Pressman

Suatu proses adalah gabungan dari beberapa kegiatan, aksi, dan pekerjaan yang dikerjakan saat akan membuat beberapa produk. Setiap kegiatan memiliki tujuan yang luas (seperti komunikasi dengan pemangku kepentingan) dan diterapkan secara universal, tidak peduli pada domain aplikasi, ukuran proyek, kompleksitas usaha, atau tingkat ketelitian rekayasa perangkat lunak yang digunakan. Aksi (contohnya, desain arsitektur) mencakup rangkaian tugas yang menghasilkan produk utama (sebagai contoh, model desain arsitektural). Sebuah tugas berfokus pada tujuan yang kecil namun terdefinisi dengan baik (seperti melakukan pengujian unit) yang menghasilkan hasil yang konkret. Dalam dunia rekayasa perangkat lunak, suatu proses tidaklah berarti resep yang kaku untuk membuat perangkat lunak. Sebaliknya, proses ini merupakan pendekatan yang dapat disesuaikan yang memungkinkan tim pengembang perangkat lunak untuk memilih dan mengeksekusi serangkaian tindakan dan tugas yang sesuai. Tujuannya adalah untuk sel...

Extreme Programming (XP) Menurut Roger S. Pressman

 Untuk memberikan gambaran yang lebih rinci tentang proses agile, saya akan memaparkan Extreme Programming (XP), suatu pendekatan yang banyak digunakan dalam pengembangan perangkat lunak agile. Meskipun ide dan metode yang terkait dengan XP telah muncul pada akhir 1980-an, Kent Beck telah menulis secara ekstensif mengenai topik ini. Baru-baru ini, sebuah varian XP yang disebut Industrial XP (IXP) telah diajukan. IXP telah menyempurnakan XP dan dirancang untuk digunakan khusus dalam organisasi besar dengan proses yang lebih fleksibel. 1.1 XP Values Sebuah seperangkat lima nilai yang menjadi dasar bagi seluruh pekerjaan yang dilakukan dalam XP telah didefinisikan oleh Beck. Nilai-nilai ini mencakup communication, simplicity, feedback, courage, dan respect, dan masing-masing nilai ini digunakan sebagai motivasi dalam aktivitas, tindakan, dan tugas XP yang spesifik. XP menekankan pada kolaborasi yang erat namun tidak formal secara verbal untuk mencapai komunikasi yang efektif anta...

Other Agile Process Models (Model Process Agile Lainnya) Menurut Roger S. Pressman

 Sejarah pengembangan perangkat lunak telah dicatat dengan banyak deskripsi dan metodologi proses yang telah usang, alat-alat, dan teknologi, serta notasi pemodelan. Semua hal tersebut telah mencapai popularitasnya masing-masing sebelum akhirnya digantikan oleh yang baru dan lebih baik. Dalam upaya mencapai penerimaan di komunitas pengembangan perangkat lunak, berbagai agile process model telah diperkenalkan dan bersaing satu sama lain, mengikuti pola yang sama dengan gerakan sebelumnya. Sudah saya sampaikan pada bagian terakhir bahwa Extreme Programming (XP) merupakan agile process models yang paling sering digunakan. Meskipun demikian, terdapat banyak agile process models lain yang telah diusulkan dan diterapkan dalam berbagai industri. Beberapa model yang paling umum meliputi: Adaptive Software Development (ASD) Scrum Dynamic Systems Development Method (DSDM) Crystal Feature Drive Development (FDD) Lean Software Development (LSD) Agile Modeling (AM) Agile Unified Process (AUP) P...