Bab I Pendahuluan
I.1 Latar Belakang Seiring dengan berjalannya waktu, perkembangan teknologi di bidang perangkat lunak semakin meningkat. Biaya untuk pengembangan perangkat lunak telah melampaui biaya perkembangan perangkat keras [1]. Teknologi web dan mobile computing yang perkembangannya semakin meningkat dapat memunculkan inovasi. Dari inovasi yang ditemukan ini dapat memunculkan ide-ide baru tentang perkembangan perangkat lunak ini lebih lanjut. Jika tidak mengikuti perkembangan teknologi ini, perangkat lunak ini akan menjadi usang dan sulit untuk dirawat. Biaya perawatan pun akan menjadi mahal karena akan mengalami kesulitan untuk mencari orang yang ahli dalam teknologi lama [3].
Lingkungan bisnis dapat berubah seiring dengan berjalannya waktu, untuk menyesuaikan lingkungan bisnis ini maka berbagai permintaan baru muncul terhadap perangkat lunak yang telah berjalan ini. Perubahan ini menuntut suatu perangkat lunak yang merupakan aset bisnis kritis untuk diubah agar dapat lebih lanjut digunakan sesuai dengan hukum Lehman mengenai continuing change [3] .
Definisi perangkat lunak Servicing Database secara umum adalah suatu aplikasi yang seperti event organizer. Pada perusahaan multinasional Financial Partners International, Ltd
munculnya nama Servicing Database itu berasal dari suatu
departemen yang bernama Client Service atau departemen yang berurusan dengan masalah pelayanan dengan klien. Servicing dalam arti kamus yaitu pelayanan. Event organizer yang dimaksud pada Servicing Database berfungsi untuk mengatur jadwal pertemuan antara adviser dengan kliennya untuk memberikan pelayanan terhadap kliennya yang telah melakukan investasi. Fungsi lainnya dari Servicing Database yaitu untuk mengelola informasi tentang klien-klien yang dimiliki. Servicing
1
Database hanya dapat berinteraksi dengan aplikasi-aplikasi web lainnya yang masih dalam ruang lingkup Financial Partners International, Ltd yang menggunakan datadata klien yang sudah ada.
Para adviser dengan jumlah kliennya yang bertambah banyak ini menuntut suatu kemudahan dalam melayani klien-kliennya dengan cepat. Pengaksesan informasi selama ini melalui web saja dirasakan masih kurang memiliki aksesibilitas yang tinggi karena tidak suatu saat berada di meja kerja dengan komputer/notebook yang terhubung ke internet.
Dokumentasi tentang proses pengembangan perangkat lunak pada Servicing Database ini dirasakan masih sangat kurang. Penyampaian mengenai permintaan perubahan dilakukan oleh pihak lain yang terkait, kemudian web application manager menyampaikan perubahaan itu kepada staf pemrogram, biasanya dengan meeting secara lisan dan diberikan berupa lembaran kertas, e-mail perusahaan, ditulis pada papan tulis tentang apa saja yang perlu diubah. Cara penyampaian terhadap permintaan perubahan perangkat lunak ini hanya berlaku untuk staf pemrogram lama yang sudah menguasai sistem itu, tetapi untuk pemrogram baru akan dirasakan sulit. Pada akhirnya proses perawatan ini akan menghabiskan waktu pada pemahaman program itu melalui pembacaan semua source code.
I.2 Rumusan Masalah Rumusan masalah dalam tesis ini adalah sebagai berikut : 1. Bagaimana mengidentifikasi rancangan perangkat lunak pada aplikasi Servicing Database. 2. Bagaimana merekayasaulang perangkat lunak Servicing Database untuk menjawab masalah inovasi teknologi baru, masalah struktur program dan dokumentasi yang kurang terstruktur dengan baik.
2
I.3 Tujuan Tujuan dari tesis ini adalah : 1. Melakukan analisis terhadap proses bisnis Servicing Database yang telah berjalan saat ini. 2. Mengajukan usulan-usulan perbaikan terhadap struktur program dan dokumentasi yang hilang untuk tujuan kemampurawatan. 3. Mengajukan usulan-usulan pengembangan program untuk tujuan aksesibilitas. 4. Melakukan rekayasa ulang pada Servicing Database.
I.4 Ruang Lingkup Tesis Pekerjaan yang dilakukan dalam tesis ini yang akan dilaksanakan adalah: 1. Pemahaman proses bisnis dari Servicing Database berdasarkan proses reverse engineering dari source code. 2. Pengkajian ulang dokumentasi dan source code dari aplikasi Servicing Database yang sudah ada. 3. Penentuan bagian-bagian dari aplikasi Servicing Database yang perlu direkayasa ulang. 4. Pengembangan pemecahan masalah rekayasa ulang perangkat lunak Servicing Database.
I.5 Batasan Masalah 1. Kajian masalah pada pemahaman program kemudian menentukan bagian yang akan direkayasaulang. 2. Dokumentasi yang dinilai kurang lengkap itu seperti dokumen spesifikasi dan perancangan perangkat lunak yang menunjukkan bagaimana perangkat lunak itu dibangun dari awal sampai akhir. 3. Dokumentasi yang dikaji saat ini hanya User Manual dan dokumentasi internal berupa comment pada source code. 4. Pembangunan perangkat lunak menggunakan bahasa pemrograman ASP.NET 2.0 dengan Ms Visual Studio 2005 sebagai development tools, SQL Server 2005 sebagai DBMS-nya, tools bantuan untuk reengineering seperti Reflector, 3
Refactor! For VB.NET/ASP.NET; Rational Rose sebagai bahasa permodelan UML dan Ms Excel untuk cross check mengenai kelas, method dan field. 5. Aksesibilitas yang dimaksud adalah pengaksesan dengan perangkat nirkabel (wireless) berbasis WAP dan SMS. 6. Bagian aplikasi yang dapat diakses melalui perangkat nirkabel adalah laporanlaporan yang bersifat penting. 7. Rekayasa ulang dilakukan pada source code dan disain berorientasi objek berbasis UML dengan refactoring. 8. Basis data untuk aplikasi Servicing Database tidak diubah selama proses rekayasa ulang.
I.6 Metode Penelitian Metode yang digunakan dalam pelaksanaan tesis ini adalah dengan cara : 1. Eksplorasi mengenai situs perusahaannya sebagai domain aplikasinya. 2. Pengkajian informasi yang dikandung dalam Servicing Database. 3. Studi literatur mengenai software maintenance, reengineering dan refactoring. 4. Studi literatur mengenai analisis berorientasi objek sebagai metodologi pembangunan perangkat lunak Servicing Database yang menggunakan bahasa pemrograman berorientasi objek. 5. Studi kelayakan mengenai teknologi perangkat lunak yang akan dipakai. 6. Analisis dan rekayasa ulang perangkat lunak untuk Servicing Database. 7. Pengkajian aspek-aspek perawatan perangkat lunak dalam rekayasa ulang perangkat lunak Servicing Database. 8. Penarikan kesimpulan yang diperoleh selama pelaksanaan tesis.
I.7 Sistematika Pembahasan Sistematika pembahasan yang digunakan penyusunan laporan tesis ini disusun sebagai berikut :
4
Bab 1 berisi latar belakang masalah, rumusan masalah, tujuan-tujuan yang ingin dicapai dalam pelaksanaan tesis, ruang lingkup pengerjaan tesis, batasan masalah yang dikaji dalam tesis, dan metoda penelitian yang digunakan.
Bab 2 berisi teori-teori dasar yang berkaitan dengan Rekayasa Perangkat Lunak, Perawatan Perangkat Lunak, Reengineering, Refactoring, Metrik Kualitas Perangkat Lunak dan sekilas mengenai aplikasi yang bernama Servicing Database.
Bab 3 berisi analisa sistem yang telah berjalan saat ini, bad smell yang dideteksi dan usulan perubahan dalam segi non fungsionalnya.
Bab 4 berisi rekayasa ulang perangkat lunak untuk menjawab masalah bad smell dan usulan perubahan terhadap perangkat lunak itu.
Bab 5 berisi implementasi dan pengujian terhadap rekayasa ulang perangkat lunak itu.
Bab 6 berisi kesimpulan dan saran yang diperoleh dalam proses pelaksanaan rekayasa ulang perangkat lunak
5