Minggu, 26 Juli 2009

Trend Sofware Engineering


Trend software engineering
Software Engineering atau dalam bahasa indonesianya disebut dengan Rekayasa Perangkat Lunak (RPL) menurut beberapa ahli dapat didefinisikan sebagai suatu pendekatan yang sistematik, terstuktur dan dapat dikuantifikasi untuk pengembangan, pengoperasian dan pemeliharaan perangkat lunak. Seperti apa yang dikatakan oleh Ian Sommervile bahwa “Rekayasa perangkat lunak berkaitan dengan teori, metode dan tools yang diperlukan dalam mengembangkan perangkat lunak untuk komputer”. Menurut Mynat “Rekayasa Perangkat lunak secara sederhana dinyatakan sebagai pendekatan sistematis untuk menciptaan dan pemilikan perangkat lunak”.
Hampir seluruh manusia memimpikan tentang cara baru dan lebih baik untuk menggunakan perangkat komputer dan sistem. Sedangkan pengembangan jumlah aplikasi telah berkembang terus-menerus, sehingga pengguna memiliki daftar aplikasi yang ingin digunakan. Nampaknya semakin kita menulis program, maka semakin kita memahami apa yang kita butuhkan, dan akan menambah program-program didalam pengembangan aplikasi keamanan. Sejauh ini, tingkat pertumbuhan permintaan aplikasi berkembang sangat cepat. Alasan ini bahwa pertumbuhan aplikasi pemrograman sangat efektif untuk memenuhi berbagai jenis kebutuhan manusia. Selama manusia menemukan hal baru dan cara untuk bekerja dan bermain, maka mereka dapat berharap pertumbuhan aplikasi komputer dapat berkembang. Semakin lebih banyak kita belajar tentang sistem dan komputerisasi maka kita akan dapat memecahkan masalah, kita lebih memahami bagaimana untuk menangani masalah yang lebih rumit dan menarik masalah serta mencari solusi untuk jalan masalah kita. Oleh karena kecerdasan manusia tak terbatas, maka pada dasarnya jumlah program yang dibutuhkan di dunia juga tidak terbatas.
A. Kualitas Program
Sistem program berfokus pada cara untuk menyediakan sistem secara otomatis, alat-alat, dan sarana untuk membantu manusia didalam memproduksi dan menjalankan program aplikasi. Beberapa program berkualitas tinggi dan sebaliknya masih banyak yang berkualitas rendah. Pembahasan mengenai kualitas aplikasi terdiri dari dua bagian. Pertama, penggunaan komputer akan semakin penting untuk aplikasi bisnis. Ini berarti, bahwa pada saat ini tingkat kualitas membawa dampak pertumbuhan perangkat lunak. Hal ini menunjukkan bahwa kebutuhan untuk aplikasi perangkat lunak berkualitas tinggi juga akan tumbuh. Sampai saat ini, orang membeli dan menggunakan perangkat lunak tanpa melihat dan memperhatikan kualitas. Walaupun mereka mengeluh tentang masalah mutu, kualitas perangkat lunak belum menjadi pertimbangan penting . Sampai sekarang, kami tidak dapat mengharapkan supplier untuk memberikan spesifikasi dan kualitas produk. Kemudian, mereka mungkin akan menuntut adanya jaminan mutu dan jaminan dari para distributor sebelum mereka menggunakan sistem komputerisasi yang baru. Ketika pelanggan tidak yakin akan kualitas paket perangkat lunak, mereka akan kembali lagi mengunakan aplikasi dan terus menggunakan metode yang sebelumnya. Ini tidak akan secara otomatis karena metode tidak akan pernah bermanfaat, tetapi lebih dikarenakan risiko kegagalan terlalu tinggi.

B. Kompleksitas Pertumbuhan Program

Bagian kedua dari kualitas program pembahasan mengenai keprihatinan ukuran dan kompleksitas dari aplikasi program yang meningkat. Ukuran data dalam Gambar 1 menunjukkan bagaimana pertumbuhan hal tersebut. Pengukuran IBM berasal dari tindakan yang diinginkan, Pengukuran Microsoft NT berasal dari ukuran data yang diterbitkan dalam laporan, dan ukuran data angkasa dari Barry Boehm [Boehm 81, Zachary 94]. TV data adalah untuk kode tertanam di set televisi dan telah dibicarakan oleh Hans Aerts dan lain-lain di konferensi Eropa SEPG pada Juni 2000. Menurut definisi saya, produk-produk perangkat lunak IBM dan Microsoft untuk sistem angkasa dan program aplikasi perangkat lunak TV.
Data ini menunjukkan bahwa jumlah perangkat lunak yang diperlukan untuk berbagai macam sistem dan aplikasi telah berkembang eksponensial selama 40 tahun. kecenderungan baris di bagian tengah menunjukkan grafik tingkat pertumbuhan majemuk dari sepuluh kali setiap lima tahun. Ini sama dengan hukum Moore untuk pertumbuhan jumlah Semikonduktor pada chip, atau dua kali lipat setiap 18 bulan. Sedangkan ukuran pertumbuhan sistem perangkat lunak bersifat fenomenal nampaknya bersifat memperlambat, setidaknya pada tampilan IBM dan data NT dalam Gambar 1. Saya membahas tren perangkat lunak sistem ini dalam kolom selanjutnya. Point penting dari kualitas aplikasi point of view ini adalah bahwa kecenderungan pertumbuhan untuk aplikasi perangkat lunak akan terus muncul.
Dengan anggapan metode yang digunakan sama, program pertumbuhan linier jumlah cacat dengan ukuran yang sama. Namun, masalah di tingkat pengguna program aplikasi ditentukan oleh jumlah cacat dalam sebuah program mereka daripada kepadatan. Oleh karena itu, walaupun kepadatan sama tetap terjadi atau bahkan meningkat, namun memproduksi program yang lebih besar dengan metode yang sama hanya akan menghasilkan sistem progresif yang kurang handal. Jadi, kualitas aplikasi perangkat lunak di masa depan harus meningkat paling tidak dalam langkah, dengan cara meningkatkan sensitivitas dari aplikasi atau membatasi usaha mereka harus dalam menggunakan komputasi sistem aplikasi yang kurang penting.
Untuk mengetahui mengapa program keandalan tergantung kerusakan nomor bukan kepadatan kerusakan, pertimbangkan sebuah contoh. J 200 KLOC (seribu baris kode) program dengan 5 diketahui kerusakan per KLOC akan ada 1.000 kerusakan. Jika anda mengganti program ini dengan program yang disempurnakan yaitu program 2000 KLOC dan kepadatan kerusakan yang sama, akan ada 10.000 kerusakan. Dengan asumsi bahwa pengguna menggunakan siklus yang sama dengan aplikasi baru, mereka akan melaksanakan program yang lebih besar dengan tingkat yang sama seperti sebelumnya. Sementara ini akan membutuhkan komputer yang lebih cepat, pengguna akan menemukan sepuluh kali lebih banyak kerusakan dalam jumlah waktu yang sama. Hal ini, tentu saja, dengan menganggap bahwa sebenarnya pengguna menggunakan banyak peningkatan fungsi program yang baru. Jika mereka tidak melakukan hal tersebut, mungkin tidak akan ada program yang diperlukan.
Kesimpulannya adalah bahwa proses pengujian tidak akan meningkatkan ukuran program. Sejak kualitas program ini termarjinal dan permintaan kualitas meningkat, saat ini kualitas perangkat lunak praktek tidak akan cukup di masa depan.

C. Dampak Kualitas Rendah

Pertumbuhan kesalahan biaya aplikasi yang semakin besar terlihat pada dampak erforma bisnis menjadi kualitas program aplikasi akan semakin lebih penting. Sementara ini Perkembangan komunitas perangkat lunak menjadi sebuah perkembangan positif. Penyebab umumnya pemasok tidak akan memperhatikan kualitas sampai pelanggan mulai meminta hal itu. Bila kualitas perangkat lunak menjadi pertimbangan ekonomi yang penting untuk bisnis, kami berharap organisasi untuk memberikan prioritas yang lebih tinggi untuk perangkat lunak tersebut. Walaupun kita berharap bahwa industri perangkat lunak akan mengenali keunggulan kualitas pekerjaan sebelum mereka dipaksa, tidak ada tanda-tanda yang mendorong kea rah tersebut. Namun, meningkatkan kualitas produk di bidang industri menjadi hal terbaik. Ini berarti akan meningkatkan peluang bagi sistem komputasi dan peningkatan permintaan untuk pemasok 'produk. Ini juga berarti akan menjadikan permintaan professional terampil untuk perangkat lunak tumbuh. Pada kolom berikutnya, saya mendiskusikan kebutuhan keterampilan aplikasi dan bagaimana secara langsung berkaitan dengan masalah kualitas program ini. Setelah itu, kita akan membicarakan hal yang terkait dengan tren sistem pemrograman dan implikasi dari tren ini untuk software engineering.

Reference
Hatton, Les. "How Accurate is Scientific Software?" IEEE Transactions on Software Engineering, Vol. 20, No. 10 (October 1994): 785-797.

Zachary, G. Pascal. 1994.Showstopper! New York: The Free Press.

Sommerville,Ian.1992.Software Engineering.New York.Addison-Wesley

Boehm, Barry.1981. Software Engineering Economics. Englewood Cliffs, NJ: Prentice-Hall.