Tidak ada review pada koleksi ini: 41096
Requirements merupakan salah satu kunci sukses software engineering dan
software reengineering. Pengembangan perangkat lunak tanpa memperhatikan
requirements dapat menjadikan perangkat lunak sebagai produk yang sia-sia. Untuk
kepentingan rekayasa ulang dan pemeliharaan perangkat lunak, requirements
dimuat dalam dokumen requirements. Dengan demikian, sebuah perangkat lunak
seharusnya dilengkapi dengan dokumen requirements yang sesuai dengan keadaan
perangkat lunak. Dokumen requirements terkadang tidak sesuai terhadap perangkat
lunak jadi (existing software). Ketidaksesuaian dokumen requirements antara lain
karena perubahan perangkat lunak tidak disertai dengan perubahan dokumen
requirements-nya. Menurut hasil riset Lethbridge, dokumen yang paling jarang
dilakukan perubahan adalah dokumen requirements meskipun perangkat lunak
telah mengalami perubahan.
Ketidaksesuaian atau ketiadaan dokumen requirements, menyebabkan
kehilangan informasi terkini tentang requirements perangkat lunak jadi. Keadaan
ini menyebabkan diperlukan usaha untuk memperoleh kembali requirements
(requirements recovery) dari perangkat lunak. Requirements recovery dapat
dilakukan dengan proses reverse engineering. Fahmi dan Choi mengemukakan
bahwa requirements recovery dari perangkat lunak berperan dalam memastikan
pemahaman lebih baik tentang requirements yang redundan, requirements yang
harus dipertahankan, dan requirements yang dapat digunakan kembali. Pentingnya
peranan requirements menjadikan requirements recovery sebagai riset penting
dalam area reverse engineering. Namun, masih sedikit riset terhadap requirements
recovery. Dengan pertimbangan kepentingan dan minimnya riset requirements
recovery, maka periset melakukan riset di area riset requirements recovery.
Pada riset ini diusulkan metode untuk memperoleh kembali requirements
(requirements recovery) dengan berbasis pada end-to-end (E-E) interaction antara
pengguna dan perangkat lunak, serta merekonstruksi requirements tersebut
(requirements reconstruction) menjadi model ontologi sebagai dokumen
requirements. Metode diusulkan tersebut diberi nama metode R3 (Requirements
Recovery and Reconstruction). Metode R3 menggunakan model ontologi R3
(Requirements Recovery and Reconstruction), mencakup model ontologi WIMPUI,
model ontologi USI, dan model ontologi R2UC. Model ontologi WIMP-UI
(Window Icon Menu Pointer – User Interface) memodelkan antarmuka windowing
perangkat lunak. Model ontologi USI (User Software Interaction) memodelkan
interaksi antara pengguna dan perangkat lunak. Pada metode R3, dilakukan
penggabungan model ontologi WIMP-UI dan USI untuk menangkap makna pada
kehadiran E-E interaction. Model ontologi R2UC (Requirements Representation
with Use Case) mendokumentasikan requirements dari perangkat lunak jadi.
Metode R3 terdiri dari serangkaian aktivitas yang merujuk pada aktivitas
requirements engineering. Pada metode R3, sebagai aktivitas awal adalah
mendeskripsikan domain. Selanjutnya adalah mengenali end-to-end interaction (EE
interaction) yang ada pada perangkat lunak. Pada E-E interaction tersebut
dilakukan observasi elemen yang terlibat pada E-E interaction yaitu antarmuka,
pengguna, dan interaksi. Hasil observasi tersebut ditransformasikan kedalam model
ontologi penggabungan WIMP-UI dan USI. Dari model ontologi WIMP-UI dan
USI dilakukan elisitasi goal perangkat lunak. Selanjutnya dilakukan perolehan
vii
Universitas Indonesia
alternate use case model. Akhirnya, requirements ditransformasikan kedalam
model ontologi R2UC sebagai dokumen requirements. Untuk membangun model
ontologi digunakan OWL-DL sebagai bahasa ontologi, Protégé sebagai editor
tools, Pellet sebagai reasoner, Prompt sebagai merger tools, dan OWLViz sebagai
perangkat visualisasi.
Metode R3 menawarkan kelebihan pada sumber requirements hanya berupa EE
interaction. E-E interaction diperoleh dengan menjalankan perangkat lunak jadi.
Metode R3 juga menawarkan kelebihan lainnya yang timbul dari penggunaan
model ontologi, antara lain dapat membangkitkan desain dalam kode tertentu, serta
lebih mudah untuk pengembangan ontologi. Metode R3 telah diuji coba dengan
serangkaian eksperimen terhadap perangkat lunak SiMitra, SIAK-NG, dan
EDOM. Eksperimen melibatkan tiga (3) lulusan baru S1 (semester genap
T.A.2011/2012) dari Fakultas Ilmu Komputer UI sebagai observer untuk
melakukan elisitasi E-E interaction dan mentransformasikannya kedalam ontologi
gabungan WIMP-UI dan USI.
Hasil eksperimen SiMitra divalidasi menggunakan komparasi dokumen
requirements miliknya, hasil eksperimen SIAK-NG divalidasi menggunakan
komparasi manual pengguna miliknya, serta survei terhadap responden dilakukan
pada hasil eksperimen SIAK-NG dan EDOM. Responden yang terlibat dalam
survei adalah mahasiswa Fakultas Ilmu Komputer, Universitas Indonesia pada
jenjang S1, S2, dan S3 sebagai peserta mata kuliah Metode Penelitian (semester
genap T.A. 2012/2013). Dilakukan pengelompokan responden berdasarkan kelas
sehingga terdapat 2 kelompok responden untuk S1, dan 2 kelompok untuk kelas S2.
Responden dari S3 masuk kedalam kelompok S2, karena responden S3 memang
tergabung dengan responden S2 pada perkuliahan tersebut. Total jumlah responden
adalah 119 orang.
Hasil komparasi requirements yang diperoleh terhadap dokumen requirements
milik perangkat lunak menunjukkan bahwa semua requirements tersebut benar
ditemukan pada dokumen requirements. Demikian pula komparasi fitur yang
diperoleh terhadap manual pengguna, hasilnya menunjukkan fitur tersebut dimuat
pada manual pengguna. Hasil survei yang dilakukan dalam kelompok responden
dan keseluruhan responden menunjukkan bahwa semua fitur yang dimuat dalam
kuesioner benar ditemukan dalam perangkat lunak. Dengan demikian, validasi yang
dilakukan dengan cara komparasi dokumen ataupun cara survei memberikan hasil
yang konsisten; yakni requirements dan fitur yang diperoleh dengan penggunaan
metode R3 benar ditemukan pada perangkat lunak.
Dengan demikian, metode R3 dapat digunakan untuk memperoleh kembali
requirements dari perangkat lunak jadi dengan berbasis pada E-E interaction.
Metode ini dapat merekonstruksi requirements menjadi ‘dokumen’ requirements
yang sesuai dengan perangkat lunak jadi sehingga dapat digunakan dalam software
reengineering dan pemeliharaan perangkat lunak (software engineering). Metode
ini juga dapat digunakan untuk memeriksa keterkinian manual pengguna perangkat
lunak.