dc.description.abstract | Penelitian ini mencari tahu bagaimana dampak penerapan TDD dalam pengembangan perangkat lunak. Sebagai studi kasus digunakan aplikasi mobile gamifikasi dengan kerangka kerja IONIC yang pada proses pengembangan iterasi sebelumnya tidak menggunakan TDD. Penelitian - penelitian sebelumnya menunjukkan bahwa penerapan pendekatan ini dapat meningkatkan nilai kualitas software correctness. Namun, beberapa penelitian juga menjelaskan TDD memiliki kekurangan yaitu durasi pengembangan yang lebih lama diawal masa pengembangan dan implementasi relatif sulit untuk dilakukan karena diperlukan pengembang yang paham akan struktur kode yang bisa diuji (terisolasi). Tujuan dari penelitian ini adalah menerapkan TDD pada iterasi pengembangan perangkat lunak, mengukur dan membandingkan nilai correctness antara iterasi tanpa TDD dengan iterasi menggunakan TDD. Untuk mencapai tujuan tersebut, penelitian ini dimulai dengan melakukan requirement validation menggunakan metode test-case driven inspection yang menghasilkan luaran berupa test case dari setiap butir requirement.
Test cases kemudian digunakan selama proses development sebagai acuan bagi pengembang dalam menerapkan TDD, dan digunakan pada tahap pengujian untuk mengukur nilai correctness menggunakan metriks rasio antara jumlah butir requirement yang telah diimplementasikan dengan tepat dengan keseluruhan requirement. Pada tahapan terakhir, analisis pengaruh TDD dilakukan dengan membandingkan nilai akhir hasil pengukuran software correctness pada iterasi tanpa TDD dan iterasi dengan TDD. Ketika nilai akhir corretness pada suatu iterasi lebih besar dari yang lain, maka dapat disimpulkan software corretness pada iterasi tersebut lebih baik.
Hasil akhir penelitian menunjukan bahwa aplikasi calculus games dengan menerapkan TDD memiliki nilai akhir software correctness lebih besar 25,539% dibandingkan dengan aplikasi calculus games yang tidak menerapkan TDD. Perbedaan nilai software corretness pada aplikasi
calculus games terjadi karena terdapat kerusakan perangkat lunak pada tingkatan unit pada pengembangan perangkat lunak tanpa TDD. Disisi lain pengembangan perangkat lunak dengan menggunakan TDD mengeliminasi kerusakan pada level unit tersebut sebab TDD memastikan setiap bagian perangkat lunak pada setiap tingkatan baik end-to-end test dan unit test untuk lulus uji.
Kata kunci: Software Correctness, Test Driven Development, Requirement Validation, Test
Case, Test-case Driven Inspection. | en_US |