470 likes | 1.05k Views
Proses Testing & Standar Internasional. Testing & Implementasi Sistem (2 sks). Definisi Proses Pengembangan Software. Proses pengembangan software adalah sekumpulan aktifitas, metode-metode, dan praktek-praktek yang digunakan dalam produksi dan evolusi dari software [HUM94].
E N D
Proses Testing & Standar Internasional Testing & Implementasi Sistem (2 sks)
Definisi Proses Pengembangan Software • Proses pengembangan software adalah sekumpulan aktifitas, metode-metode, dan praktek-praktek yang digunakan dalam produksi dan evolusi dari software [HUM94].
Saat suatu organisasi memulai usaha untuk mendefinisikan prosesnya secara sistematis akan mulai melihat kesempatan dalam mengurangi siklus waktu dan biaya. • Standarisasi proses memperendah biaya overhead, dimana metode-metode yang distandarkan akan memudahkan bagi konstribusi pengalaman proyek dalam memperbaiki proses [HUM94]. • Yang lebih penting: Biaya kualitas, dan jadual dapat diprediksi. • Organisasi menggunakan teknologi baru hanya bila kebutuhan muncul, tidak pada saat terjadi masalah. • Sukses dapat diprediksi dan diharapkan. • Kesalahan akan sedikit dan biasanya terjadi karena faktor luar. • Kedewasaan, pengembangan organisasi secara berkesinambungan menghasilkan produk berkualitas yang akan semakin sempurna dibandingkan dengan produk berkualitas yang bukan merupakan hasil pengembangan yang berkesinambungan [CUR93, HUM94].
“Umbrella Frameworks” • Secara teori, suatu standar umbrella dapat mendiskripsikan suatu proses software yang kompeten pada tiap tingkat detil. Secara tradisional, tujuan umum metodologi-metodologi sistem informasi didifinisikan hanya untuk proses pengembangan (development), yang membatasi kegunaannya pada daerah-daerah yang berhubungan dengan operasi. • Di lain pihak, model umbrella membawa ke sudut pandang yang lebih luas, yaitu suatu referensi kerangka kerja tunggal yang mendefinisikan semua aspek dari proses fungsional dan pendukung bagi tiap proyek software.
Pada awalnya, strategi sistem informasi hanya berfokus pada proses pengembangan (development), yang biasanya disebut sebagai model siklus hidup pengembangan (development). • Proses yang didefinisikan oleh model-model ini berdasarkan pada sekumpulan tahapan atau fase dasar. • Sedangkan umbrella frameworks berorientasi pada diskripsi dari suatu proses secara total daripada hanya pada aspek pengembangan (development). • Ditambah dengan mendefinisikan proses-proses yang merupakan aktifitas penting dan tipe dokumentasi yang dibutuhkan untuk tiap aktifitas. • Selain itu juga mengintegrasikan proses-proses pendukung yang kritis, seperti manajemen proyek, manajemen produk (konfigurasi) dan jaminan kualitas software (SQA) ke dalam fungsi-fungsi organisasi software.
Mengingat bahwa tiap organisasi memiliki keunikan sendiri, perbedaan yang terjadi mungkin besar atau kecil. • Namun perbedaan itu selalu ada, tiap organisasi harus memutuskan bagaimana untuk dapat mengorganisasikan prosesnya secara eksplisit dalam suatu kerangka kerja terintegrasi yang lebih besar, yang dihadirkan oleh model umbrella. • Sehingga, walaupun organisasi dapat menggunakan suatu kerangka kerja standar untuk menuntun dalam kreasi sekumpulan proses yang koheren dan telah didefinisikan, organisasi harus menyesuaikan implementasinya agar sesuai dengannya. • Jadi suatu standarisasi tidak dapat langsung diadopsi oleh suatu organisasi, namun juga harus diadaptasi ke dalam organisasi bersangkutan.
Pentingnya Standarisasi Proses • Suatu kerangka kerja standar merupakan dasar dari manajemen operasi software yang efektif, karena standarisasi membuat kebijakan dan prosedur yang berkaitan dengan pendefinisian dan hubungan antar komponen menjadi jelas. Namun bila organisasi tidak mengetahui bagaimana proses yang ada, akan sangat sulit dalam mengembangkannya. • Kendali manajemen yang akurat dibutuhkan dalam rangka untuk memastikan proyek berjalan sesuai dengan rencana. Namun pada kenyataannya, karena pekerjaan di manufaktur software kebanyakan adalah kreatifitas, manajer tidak akan pernah tahu akan apa yang sebenarnya terjadi pada proses yang dilakukan oleh teknisi-teknisi yang disupervisi olehnya. Tidak mungkin bagi seorang manajer untuk memonitor pengembangan tiap aspek dari tiap artifak dalam inventori mereka. Akhirnya tanggung jawab sukses dan gagalnya produk diserahkan kepada tiap individu. • Suatu kerangka kerja standar menyediakan titik-titik acuan yang dibutuhkan bagi pengembangan informasi dimana supervisor dapat melakukan supervisi terhadap proyek yang ditanganinya. Menyediakan keuntungan-keuntungan substansial bagi tiap manajer dalam suatu situasi teknologi tinggi.
Siklus Hidup Testing • Metodologi software yang efektif berarti bahwa tahapan detil didefinisikan untuk tiap fase pengembangan. • Sedangkan metodologi testing harus merupakan salah satu bagian dari keseluruhan metodologi software. Metodologi testing harus mempertimbangkan apa (tahapan-tahapannya) dan kapan (waktu).
Siklus hidup testing tradisional Permasalahan yang terjadi dengan pendekatan ini adalah testing terlambat memulai proses, akhirnya tes didisain dengan sederhana (ala kadarnya). Biasanya fase coding akan terlambat selesai (85% proyek software terlambat diserahkan atau tidak sama sekali).
Siklus hidup testing paralel • Model ini untuk kemudian dikembangkan lagi dengan menambahkan teknik pencegahan defect, untuk meningkatkan kemampuan proses, sehingga bugs tidak sampai muncul lagi di awal.
Selain itu terdapat pula pengembangan yang lain dari siklus hidup testing paralel, yaitu model V. • Proses verifikasi dan validasi digunakan pada pengembangan software dengan model V. • Proses ini menggambarkan hubungan pengembangan dan testing dalam bentuk V. • Pada tiap fase pengembangan terdapat tes yang akan memeriksa apakah pengembangan pada tahap tersebut telah benar. • Tes ada di tiap tingkatan dapat direncanakan dan didisain pada aktifitas di tingkat sebelum aktifitas tersebut dilaksanakan.