Karakteristik Software

Untuk mendapatkan pemahaman tentang software diperlukan juga untuk meneliti karakteristik software, yang membuat software berbeda dengan hal lainnya yang dibangun oleh manusia. Ketika software dibuat, proses kreatif manusia (analisis, desain, konstruksi, pengujian) diterjemahkan ke dalam bentuk fisik. Jika membuat komputer baru, sketsa dasar, penggambaran desain formal dan prototipe breadboarder berkembang ke dalam sutu produk fisik.

Software lebih merupakan sebuah elemen logika dan bukan merupakan elemen sistem fisik. Dengan demikian, software memiliki ciri yang berbeda dari hardware:

1. Software dibangun dan dikembangkan, tidak dibuat dalam bentuk yang klasik.

failure hardware

failure hardware

Meskipun banyak kesamaan diantara pabrik hardware dan software, aktivitas keduanya secara mendasar sangat berbeda. Dalam kedua aktivitas tersebut, kualitas yang tinggi dicapai melalui perancangan yang baik, tetapi didalam fase pembuatan hardware, selalu saja ditemukan masalah kualitas yang tidak mudah untuk di sesuaikan dengan software. Kedua aktivitas itu tergantung pada manusia, tetapi hubungan antara penerapan yang dilakukan manusia dengan usaha yang diperoleh sangat berbeda. Kedua aktivitas itu membutuhkan konstruksi sebuah “produk” tetapi pendekatan yang dicapai adalah berbeda.

Biaya untuk software dikonsentrasikan kepada pengembangan,  Hal ini berarti proyek software tidak dapat diatur seperti pengaturan proyek pemanufakturan.

2. Software tidak pernah usang

failure software

failure software

Kurva bathup menunjukkan bahwa hardware mengalami laju kegagalam yang sangat tinggi pada awal hidupnya (kegagalan-kegagalan itu sering disebabkan oleh perancangan atau cacat pembuatan). Cacat tersebut dikoreksi, dan laju kegagalan turun ke keadaan steady state ( diharapkan sangat rendah) untuk beberapa periode waktu. Tetapi seiring dengan berjalannya waktu, laju kegagalan bertambah lagi pada saat komponen hardware terkena pengaruh penumpukan debu, getaran, ketidak hati-hatian, suhu tinggi, serta beberapa kerusakan yang disebabkan oleh lingkungan. Secara singkat dapat dikatan bahwa hardware sudah mulai menjadi usang.

Software tidak rentan terhadap pengaruh lingkungan yang merusak yang menyebabkan hardware menjadi usang. Secara teoritis kurva tingkat kegagalan software akan sesuai dengan apa yang ditunjukkan . Kesalahan-kesalahan yang tidak dapat ditemukan akan menyebabkan tingkat kegagalan menjadi sangat tinggi pada awal hidup program. Tetapi hal itu dapat diperbaiki ( diharapkan tidak lagi ditemukan kesalahan yang lain)  sehingga kurva menjadi datar. Implikasinya sangat jelas bahwa software tidak usang. Tetapi semakin lama semakin memburuk.

Selama hidupnya, software mengalami perubahan (pemeliharaan).  Selagi perubahan dibuat, kesalahan pasti akan muncul yang menyebabkan kurva kegagalan akan naik secara cepat. Sebelum kurva kembali ke  keadaan semula, yaitu kegagalan sesaat, diperlukan perubahan yang lain, yang menyebabkan kurva akan naik lagi.  Secara perlahan tingkat laju kesalahan minimum kemudian mulai naik, software mulai memburuk sehubungan dengan perubahan yang dilakukan.

Aspek lain dari keusangan menggambarkan perbedaan antara hardware dan software. Bila komponen suatu hardware telah usang, komponen dapat diganti dengan suku cadangnya.  Namun tidak ada suku cadang bagi software. Setiap kegagalan software menggambarkan kesalahan dalam perancangan atau proses dimana rancangan diterjemahkan ke dalam kode mesin yang dapat dieksekusi. Jadi pemeliharaan software menjadi lebih kompleks daripada pemeliharaan hardware.

3. Sebagian besar software dibuat secara custom-built, serta tidak dapat dirakit dari komponen yang sudah ada.

Ketika hardware digunakan untuk produk berbasis mikroprosesor . Pengembang desain menggambar sebuah skema sederhana dari rangkaian digital, melakukan serangkaian analisis dasar untuk memastikan bahwa fungsi yang tepat dapat dicapai dan kemudian menyesuaikan ke katalog komponen digital.  Setiap IC mempunyai nomor bagian sendiri, serta rangkaian standar tuntunan integrasi. Setelah masing-masing komponen diseleksi, hardware dapat dipesan secara terpisah.

Sayangnya para perncang software tidak diberi fasilitas seperti hardware. Dengan sedikit pengecualian, tidak ada katalog komponen software. Memungkinkan untuk memesan software secara terpisah, tetapi tetap merupakan satu kesatuan yang lengkap, bukan sebagai komponen yang dapat dipasangkan ke dalam program-program yang baru.

This entry was posted in RPL (Rekayasa Perangkat Lunak) and tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s