Saat ini saya sedang mengerjakan kelulusan saya untuk studi "Pengembangan Perangkat Lunak" saya, di mana saya harus mengembangkan perangkat lunak yang kompleks secara individu di perusahaan eksternal. Ini semua perlu dilakukan secara terstruktur, membuat semua dokumen yang sesuai.
Untuk proyek ini saya telah memilih untuk bekerja dengan dokumen standar IEEE: Dokumen Persyaratan Perangkat Lunak (SRS), Dokumen Arsitektur Perangkat Lunak (SAD) dan Dokumen Desain Perangkat Lunak (SDD). Meskipun diajarkan sebaliknya di sekolah, untuk proyek ini saya telah memilih untuk membuat SDD setelah pengembangan (bukan sebelumnya). Alasan saya adalah:
Perusahaan tempat saya magang telah memberi saya instruksi untuk membuat perangkat lunak yang kompleks, memuaskan serangkaian persyaratan tertentu, dengan cara eksperimental. Karena jumlah kebebasan yang mereka berikan kepada saya dalam definisi proyek, hampir tidak ada yang pasti sebelumnya, dan paling baik dapat ditemui saat bereksperimen dalam proses pengembangan. Selain itu, saya membuat perangkat lunak secara individual , itu tidak akan bermanfaat bagi siapa pun di perusahaan bagi saya untuk membuat Desain Perangkat Lunak ini sebelumnya. Melakukannya sebelumnya hanya akan menghabiskan banyak waktu untuk mengubahnya nanti, karena saya dapat yakin bahwa dengan ketidakpastian dalam proyek, desain yang saya buat sebelumnya harus banyak diubah . Ini terasa kontraproduktif bagi saya.
Apakah ini pembenaran yang baik untuk membuat SDD setelah pengembangan? Jika tidak, apakah akan ada pembenaran yang baik untuk itu?
Sunting: Alasan untuk membuat SDD setelahnya adalah agar pengembang di masa depan melanjutkan proyek. Saya tidak akan dapat menyelesaikan seluruh proyek dalam periode kelulusan saya, jadi pengembang lain harus melanjutkan basis kode saat ini.