Apa itu maintenance dan reengineering dalam Proyek Software?
Pikirkan tentang produk teknologi apa pun yang kita miliki. Kita menggunakannya secara teratur, tetapi semakin lama semakin tua. Kerusakan menjadi terlalu sering, membutuhkan waktu lebih lama untuk diperbaiki daripada yang kita inginkan, dan tidak lagi mewakili teknologi terbaru. Apa yang harus dilakukan? Untuk sementara waktu, Kita mencoba memperbaikinya, menambalnya, bahkan memperluas fungsinya. Itu disebut dengan maintenance (pemeliharaan).
Namun maintenance (pemeliharaan) menjadi semakin sulit seiring berlalunya waktu. Ada saatnya kita perlu membuatnya kembali. Kita akan membuat produk dengan fungsionalitas tambahan, kinerja dan kehandalan yang lebih baik, dan peningkatan maintanability. Itulah yang kita sebut reengineering (rekayasa ulang).
Siapa yang melakukan ini?
Di tingkat organisasi, maintenance dilakukan oleh staf pendukung yang merupakan bagian dari organisasi software engineering
Reengineering dilakukan oleh business spesialist (seringkali perusahaan konsultan), dan pada tingkat perangkat lunak, reeingineering dilakukan oleh para software engineer.
Mengapa ini penting?
Kita hidup di dunia yang berubah dengan cepat. Tuntutan pada fungsi bisnis dan teknologi informasi yang mendukung juga berubah dengan cepat dan memberikan tekanan kompetitif yang sangat besar pada setiap organisasi komersial. Itu sebabnya software lunak harus dipelihara terus-menerus, dan pada waktu yang tepat, direkayasa ulang untuk mengimbangi hal tersebut.
Apa saja langkah-langkahnya?
Maintenance memperbaiki cacat, menyesuaikan software untuk memenuhi lingkungan yang berubah, dan meningkatkan fungsionalitas untuk memenuhi kebutuhan pelanggan yang terus berubah. Pada tingkat strategis, Business Process Reengineering (BPR) mendefinisikan tujuan bisnis, mengidentifikasi dan mengevaluasi proses bisnis yang ada, dan menciptakan proses bisnis yang direvisi menjadi lebih baik untuk memenuhi tujuan saat ini. Software reengineering mencakup analisis inventaris, restrukturisasi dokumen, reverse engineering, restrukturisasi program dan data, dan forward engineering.
Maksud dari kegiatan ini adalah untuk membuat versi program yang ada yang menunjukkan kualitas yang lebih tinggi dan maintanability yang lebih baik.
Apa produk pekerjaan ini?
Berbagai produk kerja maintenance and reengineering (mis., use cases, model analisis dan desain, prosedur pengujian). Hasil akhir adalah software yang sudah upgrade.
Bagaimana kita memastikan bahwa kita telah melakukannya dengan benar?
Gunakan praktik SQA yang sama yang diterapkan dalam setiap proses software engineering — review teknis untuk menilai analisis dan model desain; review khusus untuk mempertimbangkan penerapan dan kompatibilitas bisnis; dan pengujian juga diterapkan untuk mengungkap kesalahan dalam konten, fungsionalitas, dan interoperabilitas.
--o0o--
Referensi:
Software Engineering - A Practitioner's Approach - Roger S. Pressman / Bruce R. Maxim
Comments
Post a Comment