Daftar Isi
1
A. Quality Assurance in Software Development Life Cycle
I. Software Development Life Cycle Model
Software Development Life Cycle Model (model SDLC) adalah model klasik
(masih berlaku sampai sekarang); ini memberikan deskripsi paling
komprehensif tentang proses yang tersedia. Model menampilkan blok
penyusun utama untuk seluruh proses pengembangan, yang digambarkan
sebagai urutan linier. Pada tahap awal proses pengembangan perangkat lunak,
dokumen desain produk disiapkan, dengan versi pertama program komputer
diselesaikan dan dipresentasikan untuk evaluasi hanya pada tahap akhir
proses.
2
besar. Informasi tentang bagian lain dari sistem yang diperluas membantu
menjalin kerja sama antara tim dan mengembangkan antarmuka komponen.
■ Analysis. Upaya utama di sini adalah menganalisis implikasi persyaratan
untuk membentuk model sistem perangkat lunak awal.
■Design. Tahap ini melibatkan definisi rinci dari output, input dan prosedur
pemrosesan, termasuk struktur data dan database, struktur perangkat lunak,
dll.
■ Coding. Pada fase ini, desain diterjemahkan ke dalam kode. Pengkodean
melibatkan kegiatan jaminan kualitas seperti inspeksi, tes unit dan tes
integrasi.
■ System Test. Tes sistem dilakukan setelah fase pengkodean selesai. Tujuan
utama pengujian adalah untuk mengungkap kesalahan perangkat lunak
sebanyak mungkin sehingga mencapai tingkat kualitas perangkat lunak yang
dapat diterima setelah koreksi selesai.
■ Installation and conversion. Setelah sistem perangkat lunak disetujui, sistem
diinstal untuk berfungsi sebagai firmware, yaitu sebagai bagian dari sistem
informasi yang mewakili komponen utama dari sistem yang diperluas. Jika
sistem informasi baru menggantikan sistem yang ada, proses konversi
perangkat lunak harus dimulai untuk memastikan bahwa aktivitas organisasi
terus berlanjut tanpa gangguan selama fase konversi.
■ Operation and Maintenance. Operasi perangkat lunak reguler dimulai setelah
penginstalan dan konversi selesai. Sepanjang periode operasi reguler, yang
biasanya berlangsung selama beberapa tahun atau hingga generasi perangkat
lunak baru muncul, diperlukan pemeliharaan. Pemeliharaan menggabungkan
tiga jenis layanan: korektif – memperbaiki kesalahan perangkat lunak yang
diidentifikasi oleh pengguna selama pengoperasian; adaptif – menggunakan
fitur perangkat lunak yang ada untuk memenuhi persyaratan baru; dan
perfective – menambahkan fitur minor baru untuk meningkatkan kinerja
perangkat lunak.
Jumlah fase dapat bervariasi sesuai dengan karakteristik proyek. Dalam model
skala besar yang kompleks, beberapa fase dibagi, menyebabkan jumlahnya
bertambah menjadi delapan, sembilan atau lebih. Dalam proyek yang lebih
3
kecil, beberapa fase dapat digabungkan, mengurangi jumlah fase menjadi
enam, lima, atau bahkan empat fase.
Di akhir setiap fase, keluaran diperiksa dan dievaluasi oleh pengembang dan,
dalam banyak kasus, juga oleh pelanggan. Hasil yang mungkin dari tinjauan
dan evaluasi meliputi:
■ Persetujuan output fase dan melanjutkan ke fase berikutnya, atau
■ Tuntutan untuk memperbaiki, mengulang atau mengubah bagian dari fase
terakhir; dalam kasus tertentu, kembali ke fase sebelumnya diperlukan.
4
Gambar 2The Prototype Model
5
■ Kegiatan perekayasaan sesuai dengan tahapan proyek: desain, pengkodean,
pengujian, pemasangan, dan pelepasan
■ Evaluasi pelanggan, termasuk komentar, perubahan dan persyaratan
tambahan, dan lain lain.
6
lunak yang berkembang di perpustakaan perangkat lunak yang dapat
digunakan kembali akan memungkinkan penggunaan kembali perangkat
lunak secara substansial dan meningkat, sebuah tren yang akan
memungkinkan pemanfaatan sumber daya yang lebih besar sebagai berikut:
■ Ekonomi – Biaya pengintegrasian komponen perangkat lunak yang dapat
digunakan kembali jauh lebih rendah daripada biaya pengembangan
komponen baru.
■ Peningkatan kualitas – Komponen perangkat lunak yang digunakan
diharapkan memiliki lebih sedikit cacat daripada komponen perangkat lunak
yang baru dikembangkan karena deteksi kesalahan oleh pengguna
sebelumnya.
V. Scrum Model
Scrum adalah kerangka kerja yang membantu tim bekerja sama. Scrum mendorong
tim untuk belajar melalui pengalaman, mengatur diri sendiri saat mengerjakan suatu
masalah, dan merenungkan kemenangan dan kekalahan mereka untuk terus
7
meningkat. Scrum paling sering digunakan oleh tim pengembangan perangkat lunak
dalam beberapa tahun belakangan ini.
a. Kerangka kerja
Orang sering menganggap scrum dan agile adalah hal yang sama karena scrum
berpusat pada peningkatan berkelanjutan, yang merupakan prinsip inti dari agile.
Namun, scrum adalah kerangka kerja untuk menyelesaikan pekerjaan, di mana
kelincahan adalah pola pikirnya. Anda tidak bisa benar-benar "agile", karena
dibutuhkan dedikasi dari seluruh tim untuk mengubah cara berpikir mereka tentang
memberikan nilai kepada pelanggan Anda. Tetapi Anda dapat menggunakan
kerangka kerja seperti scrum untuk membantu Anda mulai berpikir seperti itu dan
berlatih membangun prinsip-prinsip agile ke dalam komunikasi dan pekerjaan
sehari-hari Anda.
b. Artefak scrum
- Product Backlog adalah daftar utama pekerjaan yang harus diselesaikan oleh
pemilik produk atau manajer produk. Ini adalah daftar fitur, persyaratan, peningkatan,
dan perbaikan dinamis yang berfungsi sebagai masukan untuk sprint backlog. Ini,
pada dasarnya, adalah daftar "To Do" tim. Product Backlog terus-menerus ditinjau
kembali, diprioritaskan kembali, dan dikelola oleh Product Owner.
- Sprint Backlog adalah daftar item, user stories, atau bug fixes, yang dipilih oleh tim
develop untuk diterapkan dalam siklus sprint saat ini. Sebelum setiap sprint, dalam
rapat sprint planning, tim memilih item mana yang akan dikerjakan untuk sprint dari
product backlog. Sprint backlog mungkin fleksibel dan dapat berkembang selama
sprint.
8
- Increment (atau Sprint Goal) adalah produk akhir yang dapat digunakan dari sprint.
Selama demo akhir sprint, di mana tim menunjukkan apa yang telah diselesaikan
dalam sprint. Itu tergantung pada bagaimana tim mendefinisikan "done" dan
bagaimana tim menentukan tujuan sprint.
- Sprint: Sprint adalah periode waktu sebenarnya saat tim scrum bekerja sama untuk
menyelesaikan sebuah increment. Dua minggu adalah durasi yang cukup umum
untuk sprint. Selama periode ini, ruang lingkup dapat dinegosiasikan ulang antara
pemilik produk dan tim pengembangan jika diperlukan. Ini membentuk inti dari sifat
empiris scrum.
- Scrum atau daily stand up: Banyak tim mencoba menyelesaikan rapat dalam 15
menit, tetapi itu hanya pedoman. Pertemuan ini juga disebut 'daily stand-up' yang
menekankan bahwa itu harus cepat. Sasaran scrum harian adalah agar setiap orang
dalam tim memiliki pemahaman yang sama, selaras dengan sasaran sprint, dan
menyusun rencana untuk 24 jam ke depan. Stand up adalah waktu untuk
menyuarakan keprihatinan apa pun yang Anda miliki dengan memenuhi tujuan sprint
atau penghalang apa pun. Cara umum untuk melakukan stand up adalah setiap
anggota tim menjawab tiga pertanyaan dalam rangka mencapai tujuan sprint:
• Apa yang saya lakukan kemarin?
• Apa yang saya rencanakan hari ini?
• Apakah ada kendala?
- Sprint Review: Di akhir sprint, tim berkumpul untuk sesi informal untuk melihat
demo, atau memeriksa, kenaikan. Tim pengembangan menampilkan item simpanan
9
yang sekarang 'done' kepada stakeholder dan rekan tim untuk mendapatkan
feedback. Pemilik produk dapat memutuskan apakah akan melepaskan kenaikan
atau tidak, meskipun dalam banyak kasus kenaikan tersebut dilepaskan.
10
Perencana jaminan kualitas untuk suatu proyek diharuskan untuk menentukan:
■ Daftar kegiatan penjaminan mutu yang diperlukan untuk suatu proyek.
■ Untuk setiap kegiatan penjaminan mutu:
– Pengaturan waktu
– Jenis kegiatan penjaminan mutu yang akan diterapkan
– Siapa yang melakukan aktivitas dan sumber daya yang dibutuhkan. Perlu dicatat
bahwa berbagai badan dapat berpartisipasi dalam kinerja kegiatan penjaminan mutu:
tim pengembangan dan anggota staf departemen bersama-sama dengan badan
independen seperti anggota tim atau konsultan penjaminan mutu eksternal.
– Sumber daya yang diperlukan untuk menghilangkan cacat dan pengenalan
perubahan.
11
Referensi
Perry, William E. 2006. Effective Methods for Software Testing, Third Edition.
Canada: Wiley Publishing, Inc.
https://www.atlassian.com/agile/scrum
12