Apa yang Anda sarankan baik-baik saja dari sudut pandang puritan Teknik Sistem.
(Akan ada beberapa peminat Agile yang berpikir bahwa semua cara terbuka atas ... dan Anda hanya harus keluar dan melakukan hal-hal dengan ulasan yang biasa, dll).
Namun, Anda perlu memperhitungkan apa yang Anda lakukan, dan untuk siapa Anda melakukannya.
Melakukan proyek untuk diri sendiri berbeda dengan melakukannya untuk orang lain - demi uang.
Ketika Anda bekerja untuk orang lain (baik di perusahaan atau di kontrak) alat komunikasi HANYA berbicara, dan menulis. (Pada akhirnya akan ada produk atau hasil yang dapat dinilai.)
Inti dari spesifikasi adalah untuk mencoba dan mengurangi biaya perbaikan dan perubahan yang terjadi kemudian. Anda mungkin telah melihat grafik yang menunjukkan biaya pembuatan perbaikan pada berbagai tahap proyek, kira-kira seperti ini:
Sebuah perbaikan yang dibuat untuk ide bodoh harganya $ 1
Perbaikan yang dilakukan ketika ide bodoh membuatnya menjadi spesifikasi (yang harus diperbarui) biaya $ 10
Perbaikan yang dilakukan saat Anda membuat prototipe berharga $ 100
Perbaikan yang dilakukan tentang waktu Anda melakukan penerimaan sebelum biaya pengiriman $ 1000
Perbaikan yang dilakukan setelah Anda mengirim dan membuat marah pelanggan Anda dikenai biaya $ 10.000.
Jadi apa yang Anda tulis dalam spesifikasi cukup penting.
Untuk berargumen bahwa Anda seharusnya tidak memiliki spesifikasi sama sekali naif, bodoh, dan mungkin berbahaya.
Salah satu masalah terbesar yang Anda miliki dalam menulis spesifikasi adalah mengetahui kapan Anda melangkah terlalu jauh. Ini bervariasi tergantung pada ukuran proyek. Misalnya, sebuah proyek yang memakan waktu 1-2 orang sekitar satu tahun seharusnya memiliki sekitar 2 hingga 4 MINGGU total dihabiskan untuk spesifikasi ... yang mencakup penyelidikan kelayakan ... spesifikasi yang akan ditulis oleh orang-orang yang benar-benar melakukan pekerjaan itu bukan tipe analis falutin tinggi yang tidak tahu detail berdarah. Sebuah proyek yang memakan waktu 10 orang 2 tahun membutuhkan lebih lama.
Sekarang untuk beberapa komentar tentang berbagai poin Anda:
YA, tulis ini. Simpan hingga 1-2 paragraf, maks. 1/2 halaman.
MUNGKIN. Hanya jika itu menambah nilai bagi yang lainnya.
PENTING. Menunjukkan SEMUA input dan output. Memperlihatkan konteks. Anda dapat (dan harus) menghabiskan banyak waktu untuk hal ini.
- Faktor Keberhasilan Proyek Kritis
MUNGKIN. Tentunya jika proyek memenuhi persyaratan itu sukses. Saya pikir ini tidak terlalu dibutuhkan.
TIDAK. Diagram konteks Anda melakukan ini.
IYA. Coba dan tetap singkat.
- Aktor (Sumber Data, Aktor Sistem)
MUNGKIN. Ini kedengarannya seperti bit teknis berdarah bagi saya yang seharusnya tidak dalam spesifikasi FUNGSIONAL.
MUNGKIN. Masukkan ini (ini) dalam lampiran. Jelaskan dengan kata-kata. Cobalah untuk menyimpan ini dalam jumlah kecil. Saya telah melihat saran bahwa sebuah proyek seharusnya tidak lebih dari 8 Use Case yang dijelaskan secara rinci. Jangan tutupi semua jalur "unahppy" atau Anda tidak akan pernah selesai.
Sangat jarang ada bagian s / w memiliki Diagram Kasus / Kasus Penggunaan tunggal.
MUNGKIN. Hanya jika itu menambah nilai signifikan, kalau tidak Anda akan membuang-buang waktu.
MUNGKIN. Hanya jika itu menambah nilai signifikan, kalau tidak Anda akan membuang-buang waktu.
YA - jika relevan.
YA - wajib. Harus mengatakan apa yang harus dilakukan (dan dengan tingkat kinerja apa).
MUNGKIN - jika ada sesuatu yang istimewa.
MUNGKIN - jika berguna.
- Model Domain (Model data)
MUNGKIN - jika berguna.
- Skenario Aliran (Sukses, alternatif ...)
MUNGKIN - jika berguna.
- Jadwal Waktu (Manajemen Tugas)
TIDAK. Ini bukan yang seharusnya di spec. Ini tentang jadwal, perencanaan, dll.
MUNGKIN. Tujuan bukanlah persyaratan, mereka tidak jelas hal-hal yang menyenangkan, yang berfungsi untuk mengeruhkan air. Coba dan hindari.
IYA. Penting Mengatakan apa yang harus dilakukan.
TIDAK. Bagian dari perencanaan dan manajemen, bukan persyaratan dari hal yang Anda buat.
Penjelasan: Saya telah menulis spesifikasi untuk produk, perangkat lunak, dan sistem yang kompleks selama lebih dari 15 tahun. Semua barang komersial. Sebagian besar sukses secara komersial dan menghasilkan banyak uang untuk berbagai pengusaha. Termasuk spesifikasi untuk pengembangan Agile s / w di mana Anda masih membutuhkan spesifikasi sebelum Anda melompat ke pengembangan. Pengembangan ACTUAL dapat dilakukan dalam proses apa pun yang Anda inginkan, tetapi pada akhirnya Anda harus memiliki 3 hal untuk sukses:
Ketahui apa yang ingin Anda lakukan. DAN MENULISKANNYA. (Itu spec.)
Lakukan hal-hal untuk memenuhi # 1 di atas.
Lakukan beberapa tingkat pengujian penerimaan terhadap spek (yang pada dasarnya "apakah Anda melakukan apa yang Anda katakan akan Anda lakukan").