Apakah itu membuat saya seorang programmer yang buruk jika saya tidak menyukai metodologi Agile? [Tutup]

10

Saya suka iterasi kecil. Saya suka tes unit. Saya suka review kode. Yang tidak saya sukai adalah memulai dengan sedikit atau tanpa dokumentasi. Apakah saya sendirian dalam hal ini? Apakah saya hanya memiliki kesalahpahaman tentang proses ini?

Pikiran apa pun akan dihargai.

Dan Appleyard
sumber
2
Pertama-tama, jangan bicara tentang itu metodologi Agile. Gerakan Agile benar-benar merupakan filosofi pembangunan, yang mendorong adopsi berbagai praktik dan metodologi yang sesuai.
Eric Wilson
1
"Ada kesalahpahaman tentang prosesnya?" - ya
vartec
2
"Metodologi Agile yang harus diikuti dengan ketat bukanlah metodologi Agile yang sebenarnya"
1
Hai Dan, sepertinya tidak ada masalah yang bisa dipecahkan dalam pertanyaan Anda, dan pertanyaan seperti "Saya pikir / merasa X, apakah orang lain merasakan hal yang sama?" tidak pada topik di sini . Jika Anda memiliki masalah khusus yang memerlukan bantuan, jangan ragu untuk bertanya tentang itu.
Semua orang memulai dengan sedikit atau tanpa dokumentasi. Pertanyaannya adalah bagaimana Anda membagi waktu antara dokumentasi dan kode - semua dokumentasi terlebih dahulu? Atau hanya sebanyak yang Anda butuhkan untuk memulai?
Carson63000

Jawaban:

18

Ingat, Agile tidak berarti tidak ada dokumentasi, Agile berarti Anda memahami "klien" tidak tahu semua yang mereka inginkan sehingga mereka tidak bisa memberi Anda dokumen persyaratan besar yang menguraikan semuanya. Agile menganjurkan Anda terus-menerus berbicara dengan klien dan berkata, "Apakah ini yang Anda inginkan?" atau "Bagaimana X akan bekerja ketika Y terjadi?" jadi bersama-sama Anda membuat persyaratan.

Yang mengatakan, tidak ada yang salah dengan Anda jika Anda tidak menyukai metodologi tertentu. Kebanyakan orang tampaknya memilih dan memilih berbagai aspek metodologi yang berbeda.

Wayne Molina
sumber
10
+1 Agile tidak berarti tidak ada dokumentasi . Orang-orang tampaknya berpikir bahwa itu Agile singkatan; ini bukan. Ini nilai perangkat lunak yang berfungsi lebih dari dokumentasi yang komprehensif; itu tidak meniadakan nilai dalam dokumentasi.
Aaron McIver
10

Metodologi Agile menyatakan bahwa Anda hanya melakukan apa yang Anda butuhkan saat itu. Jika Anda ingin / membutuhkan lebih banyak dokumentasi daripada yang diberikan, maka itu adalah masalah dengan prosesnya, dan itu bukan Anda. Ada saat-saat ketika banyak dokumentasi diperlukan untuk melanjutkan proyek. Agile tidak perlu membutuhkan ini. Anda tidak dapat membenarkan mengendur pada persyaratan dengan kedok Agile. Ini sebenarnya masalah besar yang pernah saya lihat. Banyak orang bermalas-malasan di depan dan menuliskannya ke proses. Pertanyaan sebenarnya perlu ditanyakan, "Apakah para pengembang memiliki apa yang mereka butuhkan?" Jika jawabannya tidak, maka lebih banyak pekerjaan yang harus dilakukan.

Sekarang ini bisa dianggap ekstrem, dan seseorang dapat berkata, "Yah, saya tidak bisa mengerjakannya kecuali seluruh program didokumentasikan." Terkadang ini benar, tetapi tim perlu melihat dan melihat apakah ini benar-benar diperlukan.

kemiller2002
sumber
8

Saya tidak mengerti mengapa itu akan menjadikan Anda seorang programmer yang buruk hanya karena Anda tidak menyukai metodologi tertentu. Mungkin menyulitkan Anda untuk berintegrasi dengan toko yang mengimplementasikannya; itu dikatakan saya memiliki keraguan tentang seberapa efektif itu diterapkan di mana-mana.

Apa yang membuat Anda seorang programmer yang buruk adalah kode yang buruk - mudah saya tahu - tetapi Anda bisa menyukai / menjadi brilian di semua metodologi yang Anda suka, dan masih menjadi programmer yang buruk karena kode Anda tidak memadai.

temptar
sumber
3

Ide dasar Agile adalah bahwa kecuali Anda memiliki karunia prekognisi, Anda tidak dapat melihat jauh di masa depan. Dengan demikian Anda tidak dapat mendokumentasikan, apa yang tidak dapat Anda ramalkan.

Itu tidak berarti, Anda tidak memiliki dokumentasi sama sekali. Anda mendokumentasikan desain teknis untuk persyaratan saat ini (dan tentu saja Anda melakukan sendiri persyaratan dokumen), dan Anda mendokumentasikan implementasi saat ini . Anda tidak diharapkan mendokumentasikan bagaimana sistem akan terlihat setelah 10 sprint lagi, karena Anda hidup di dunia yang dinamis, persyaratan mungkin berubah.

vartec
sumber
2

Saya pikir Anda salah memahami prosesnya. Dokumentasi apa yang Anda inginkan? Sebelum memulai, Anda perlu semacam tujuan. Saya mulai dengan menggunakan kasing yang saya kumpulkan dari percakapan dengan pelanggan saya. Saya tidak menghabiskan waktu berhari-hari membuat diagram mewah. Kami berbicara, dan kemudian saya menulis halaman Wiki, dan kami membahasnya. Lalu saya menulis beberapa tes. Lalu saya menulis beberapa kode.

kevin cline
sumber
2

Ada kombinasi tak terbatas ukuran tim, domain, bahasa, kepribadian, anggaran, dan persyaratan. Tidak ada satu metodologi yang terbaik untuk setiap situasi. Demikian pula banyak orang memiliki preferensi dan gaya pribadi.

Bahkan jika Anda tidak suka, ada baiknya mencoba ide-ide baru dan menganalisis hasilnya secara kritis. Ada banyak hal yang saya tidak suka, tetapi setelah mencoba untuk sementara waktu belajarlah untuk mencintai. Seperti Zaitun.

Hal lainnya adalah mode berubah secara teratur. Saya dibesarkan dengan Waterfall, saya bekerja di sebuah tim yang mencoba melakukan segala sesuatu dalam Proses Bersatu Rasional yang merupakan "hal terbaik" pada saat itu. Segera Agile akan diganti dengan sesuatu yang lebih baru dan lebih baik dan tidak ada yang akan menyebutkan kata Agile lagi.

Jadi jangan merasa seperti Anda perlu menyukai satu metodologi seperti Agile. (Saya pribadi tidak suka) Itu tidak membuat Anda seorang programmer yang buruk.

Richard
sumber