SOAL :

Anda adalah seorang software engineer yang dihadapkan pada proyek pengembangan sistem manajemen rumah sakit. Sistem ini mencakup banyak modul, seperti pendaftaran pasien, penjadwalan dokter, pencatatan rekam medis, dan laporan administrasi. Sistem akan diterapkan di jaringan rumah sakit besar dengan kebutuhan pengguna yang sering berubah dan melibatkan data pasien yang sangat sensitif. Selain itu, sistem ini diharapkan dapat berintegrasi dengan teknologi terkini seperti cloud computing untuk menyimpan data pasien, dan harus mampu menangani lebih dari 3.000 pasien per hari dengan kebutuhan modul baru setiap dua bulan.

  1. Pemilihan Model PengembanganModel yang paling sesuai:

Jawab:

Model Agile adalah pilihan yang paling tepat untuk proyek ini.

Berikut alasan pemilihannya: Kebutuhan Sistem yang Sering Berubah: Sistem manajemen rumah sakit memerlukan fleksibilitas tinggi karena kebutuhan pengguna dapat berubah dengan cepat. Misalnya, modul baru dapat ditambahkan setiap dua bulan, dan kebutuhan fungsional serta non-fungsional seperti keamanan data pasien sangat dinamis. Agile memungkinkan iterasi dan perbaikan sistem secara bertahap, sehingga pengembangan dapat menanggapi perubahan ini dengan cepat.

Skala Proyek dan Kompleksitas: Dengan lebih dari 3.000 pasien per hari dan modul-modul yang kompleks seperti pendaftaran pasien dan rekam medis, pengembangan secara bertahap (sprint) di bawah model Agile memungkinkan tim untuk menyelesaikan bagian sistem lebih cepat, tanpa harus menunggu seluruh sistem selesai.

Integrasi dengan Teknologi Terkini: Sistem perlu berintegrasi dengan teknologi cloud computing. Dalam Agile, fokus pada pengiriman fitur yang berfungsi memungkinkan pengujian berkelanjutan terhadap teknologi terbaru, termasuk cloud, yang memungkinkan integrasi lebih cepat dan lancar.

Perubahan Kebutuhan Pengguna: Model Agile memungkinkan adaptasi terhadap perubahan kebutuhan pengguna melalui iterasi dan feedback yang terus-menerus. Setiap iterasi dapat mengakomodasi umpan balik dari pengguna (seperti dokter atau manajemen rumah sakit) dan memungkinkan penyesuaian cepat tanpa harus memulai dari awal.

  1. Dampak Terhadap ArsitekturReusabilitas, Skalabilitas, dan Kemampuan Menangani Perubahan:

Jawab: Reusabilitas: Agile mengutamakan pengembangan komponen modular yang dapat digunakan kembali di seluruh sistem. Misalnya, modul pendaftaran pasien dapat dikembangkan secara terpisah dan digunakan untuk berbagai tujuan di sistem, seperti pembaruan data pasien atau penjadwalan.

Skalabilitas: Dalam Agile, arsitektur sistem dapat dibangun dengan fokus pada kemampuan skalabilitas. Setiap sprint memungkinkan penyesuaian arsitektur berdasarkan kebutuhan skalabilitas. Mengingat volume pengguna dan data yang besar, cloud computing dapat diintegrasikan untuk memberikan skalabilitas yang diperlukan.

Kemampuan Menangani Perubahan: Penggunaan pendekatan berbasis iterasi memungkinkan penyesuaian cepat terhadap perubahan permintaan dari rumah sakit atau pengguna. Misalnya, jika ada permintaan untuk menambahkan fitur baru pada pendaftaran pasien, fitur tersebut dapat dimasukkan dalam sprint berikutnya tanpa mengganggu pengembangan fitur lain.

Contoh Modul Pendaftaran Pasien dalam Implementasi Awal: Pada tahap awal, modul pendaftaran pasien mungkin hanya mencakup fungsionalitas dasar seperti pendaftaran, pencatatan identitas, dan verifikasi data. Seiring berjalannya waktu, berdasarkan feedback, modul ini dapat diperluas untuk menangani lebih banyak fitur, seperti integrasi dengan rekam medis, verifikasi melalui biometrik, atau integrasi dengan sistem asuransi.

  1. Manajemen Risiko dan KomunikasiManajemen Risiko:

Jawab: Keamanan Data Pasien: Untuk menjaga keamanan data pasien yang sangat sensitif, model Agile memungkinkan integrasi pengujian keamanan di setiap iterasi. Setiap modul dapat diuji untuk kerentanannya secara teratur, dan pembaruan atau patch keamanan dapat diluncurkan tanpa menunggu seluruh sistem selesai.

Target Waktu Pengembangan: Dalam Agile, meskipun waktu pengembangan sangat dinamis, sprint yang jelas dengan tujuan yang terdefinisi memungkinkan pengelolaan jadwal secara lebih fleksibel. Tim dapat menyesuaikan prioritas untuk memastikan bahwa modul yang paling penting (misalnya, pendaftaran pasien) diselesaikan terlebih dahulu, sementara bagian lain dikembangkan bertahap.

Komunikasi dengan Stakeholder: Agile mendukung komunikasi yang lebih langsung dan teratur antara tim pengembang dan stakeholder. Misalnya, dalam setiap sprint, dapat diadakan pertemuan dengan dokter, pasien, atau manajemen rumah sakit untuk mendiskusikan kemajuan dan mendapatkan umpan balik. Hal ini memungkinkan agar perubahan kebutuhan atau masalah dapat segera diidentifikasi dan ditangani.

  1. Pengujian dan PemeliharaanPendekatan Pengujian: