Dalam setiap proyek pengembangan perangkat lunak yang melibatkan sistem terdistribusi dengan banyak pengembang, memiliki diagram Arsitektur Fisik dan Logika adalah praktik terbaik, tetapi menurut pengalaman saya diagram ini selalu dimulai dengan dipelihara dengan baik pada awal proyek tetapi tidak diperbarui saat proyek dirilis. dan fase pemeliharaan dimulai.
Untuk proyek kompleks dengan banyak proses terdistribusi, diagram cenderung menjadi usang atau tidak akurat dengan sangat cepat bahkan sebelum rilis awal karena tidak ada orang yang memiliki semua pengetahuan.
Dengan latar belakang ini, saya ingin mengajukan pertanyaan berikut kepada komunitas:
- Seberapa penting memiliki diagram Arsitektur Logikal dan Fisik yang akurat dan terkini?
- Apakah ada alat dan proses yang dapat membantu mereka tetap up to date?
- Siapa yang harus bertanggung jawab untuk memperbarui mereka? Bagaimana sistem admin, pengembang, dan tim QA berkontribusi?
design
architecture
testing
ARau
sumber
sumber
Jawaban:
Saya hidup di dunia nyata dengan kendala waktu dan masalah sumber daya, jadi saya mengerti mengapa sebagian besar dokumentasi perangkat lunak diabaikan atau ketinggalan zaman, tetapi bahkan di bawah kondisi itu saya benar-benar bersikeras bahwa diagram basis data dibuat dan terus diperbarui. Jika itu bukan model relasional biasa dan terdiri dari entitas dengan dokumen, pasangan nilai kunci, atau struktur JSON / XML, maka model objek dari item tersebut juga harus dibuat dan dipelihara. Jika semuanya gagal pada upaya dokumentasi proyek, setidaknya diagram database dan / atau model objek akan memungkinkan seseorang untuk bekerja mundur ke front-end untuk mencari tahu apa yang terjadi.
Ada banyak opsi untuk membuat dan memelihara dokumen perangkat lunak, tetapi salah satu favorit saya adalah Arsitek Perusahaan. Ini komprehensif dan mengikat bersama-sama menggunakan kasus, diagram urutan, diagram kelas, dan lainnya.
Adapun siapa yang bertanggung jawab untuk ini, saya menganggapnya sebagai upaya tim. Hanya sedikit orang yang benar-benar menikmati melakukannya, tetapi itu harus dilakukan. Arsitek atau pemimpin teknologi pada suatu proyek pada akhirnya harus bertanggung jawab untuk itu, mendelegasikan tugas dengan tepat.
sumber