Awak kenal dengan Scrum, bukan? Saya fikir ya mengingati bahawa The Alliance Scrum mempunyai lebih daripada 400, 000 ahli, dan kebanyakan mereka berjaya menggunakannya dalam organisasi mereka.
Tetapi, bukan satu-satunya cara untuk membina perisian dengan cara yang tangkas! Pernahkah anda mendengar tentang Kanban?
Untuk maklumat latar belakang yang sedikit, ia pada asalnya digunakan untuk pembuatan bersandar sebagai cara untuk memvisualisasikan input dan output kerja ketika ia mengalir melalui kilang. Gambaran ini dibentangkan di papan yang dikenali sebagai menunggu-kanban. Lebih baru-baru ini dan lebih banyak lagi berkaitan dengan anda, ia telah digunakan sebagai kaedah untuk menguruskan pembangunan perisian.
Pertama yang digariskan oleh neurologi David J. Anderson, ia merupakan cara untuk mengatur pembangunan perisian dan perancangan yang membolehkan anda untuk mengungkap masalah proses dan secara konsisten menyampaikan peningkatan yang berharga dalam produk anda-yang saya tahu, bunyi yang ideal. Ringkasnya, pada bila-bila masa, anda dapat melihat di mana kerja (diwakili oleh kad) sedang dalam proses pembangunan.
Bagaimana ia berfungsi
Lembaga Kanban asas menggunakan enam lajur yang menunjukkan di mana setiap bahagian kerja berada dalam kitaran pembangunan produk. Contoh kasar tentang apa yang kelihatan seperti di bawah.
Lihat contoh papan Kanban ini pada Trello.
Lajur 1: Backlog
Lajur Backlog harus mengandungi senarai idea, bug, atau keperluan perniagaan yang diprioritaskan. Kad ini tidak perlu mempunyai satu lagi terperinci, tetapi ia harus mempunyai maklumat yang cukup bahawa ahli pasukan anda memahami mengapa ia penting.
Lajur 2: Perancangan
Dalam lajur ini, seorang pengurus produk akan mengisi spesifikasi untuk ciri ini dengan bertemu dengan pemegang kepentingan, jurutera, dan pereka perniagaan. Apabila sudah siap, dia akan memindahkannya ke ruangan "Siap untuk Kejuruteraan".
Lajur 3: Bersedia untuk Kejuruteraan
Pada peringkat ini, semua kad perlu mempunyai spesifikasi terperinci. Walaupun anda masih mempunyai soalan mengenai butiran teknikal, keperluan perniagaan harus jelas.
Lajur 4: Dalam Kemajuan
Anda boleh memindahkan kad ke "Dalam Kemajuan" pada bila-bila masa. Sistem "menarik" diri ini membina budaya kebertanggungjawaban peribadi dan rasa ingin tahu.
Lajur 5: Ujian
Apabila anda telah menyelesaikan kerja pada kad, gerakkannya ke "Ujian" di mana jurutera lain (atau seseorang di pasukan QA) akan mengambilnya.
Lajur 6: Digunakan
Satu lagi ciri yang menentukan ialah kerja harus dihantar terus ke persekitaran atau persekitaran pengeluaran. Lajur ini membolehkan sesiapa sahaja dalam pasukan untuk melihat kerja apa yang telah dikeluarkan baru-baru ini.
Kelebihan dan Perdagangan
Apabila anda memutuskan antara Kanban dan metodologi yang lebih biasa seperti Scrum atau Air Terjun, pastikan manfaat dan cabaran ini diingat:
Manfaat: Meningkatkan Kerjasama
Dalam sesetengah pasukan pembangunan yang saya bekerjasama, jurutera adalah pakar. Setiap pasukan akan mempunyai jurutera frontend dan jurutera belakang. Ini bermakna pekerjaan sering disekat kerana seorang jurutera sibuk dengan sesuatu yang lain.
Di sisi lain, Kanban membatasi kerja yang sedang berjalan dan tidak menggalakkan penyumbatan. Setiap ahli pasukan hanya boleh bekerja pada satu item pada satu masa, dan sesiapa yang tidak sibuk dapat menarik kerja dari bahagian atas lajur "Siap untuk Kejuruteraan". Ini menggalakkan pakar generik kejuruteraan dan kerjasama di kalangan ahli pasukan.
Meningkatkan Faedah: Jangan Biarkan Hal Lulus Sebelum Mereka Sedia
Kanban hanya berfungsi apabila anda menunggu untuk mengalihkan kad ke lajur seterusnya sehingga mereka selesai sepenuhnya. (Bonus: Ini sangat mengurangkan kecacatan.)
Cabaran: Kurangkan Masa untuk Menggambarkan
Secara lalai, tidak ada sprint yang berkotak-kotak dengan matlamat yang jelas, sasaran tarikh, dan kitaran pelepasan. Sebaliknya, fikirkan setiap kad sebagai karya kerja bebas yang dapat diselesaikan dan dibebaskan pada bila-bila masa.
Dengan aliran kerja yang berterusan ini, tidak ada pilihan "tunggu sehingga pecut seterusnya". Anda perlu terus memeriksa papan, tarik item seterusnya, dan pindahkan item yang selesai di hilir. Kecuali anda membina masa untuk retrospektif dan standups mungkin sukar bagi ahli pasukan untuk bersaing dengan cara mereka lakukan.
Dapatkan Sekitarnya: Pinjam Apa Yang Berfungsi Daripada Scrum
Saya telah menggunakan pendirian harian dan retrospektif dengan Kanban dan mendapati bahawa mereka menambah nilai. Sekiranya terdapat mesyuarat atau corak yang kerap bekerja untuk pasukan anda, jangan ubahnya secara dogmatically mengikut Kanban. Masa belanjawan untuk bercakap tentang keutamaan dan bagaimana mereka telah berubah supaya semua orang mengetahui apa yang berlaku dalam kitaran pembangunan produk.
Manfaat: Meningkatkan Ketelusan
Setiap pemaju mesti mengambil inisiatif untuk memindahkan kad ke lajur "Dalam Kemajuan". Bermakna, pada bila-bila masa, pengurus pasukan dapat melihat siapa yang sibuk, yang tidak sibuk, dan berapa lama apa-apa kerja telah dijalankan.
Apabila pengeluaran melambatkan atau berhenti, Kanban membolehkan anda melihat dengan tepat mengapa. Sama ada kerana pasukan perniagaan tidak memprioritaskan item dalam backlog, pasukan produk belum selesai spec, pasukan dev bergerak lebih perlahan daripada yang diharapkan, atau pasukan QA tidak dapat menguji sesuatu; kesesakannya jelas.
Meningkatkan Manfaat: Membolehkan Kemajuan Menjadi Awam
Salah satu kelebihannya ialah Kanban sangat visual. Bahkan ahli pasukan bukan teknikal boleh melihat papan Kanban dan memberitahu di mana kepingan kerja sedang dalam proses. Gunakan ini untuk keuntungan anda dan membolehkan pencapaian pasukan bersinar dengan meletakkan papan anda di tempat awam.
Cabaran: Tidak Benarkan Perancangan Jangka Panjang
Bimbang tentang tarikh akhir dan anggaran bukanlah penggunaan yang paling produktif untuk masa anda, jadi anda mungkin menghargai Kanban lebih banyak tentang keluaran harian. Yang berkata, ia sendiri tidak menyediakan sistem untuk membina rancangan jangka panjang. Ini boleh menyebabkan anda bekerja pada projek secara sporadikal dan bukannya memberi tumpuan kepada satu perkara untuk masa yang lama. Sukar untuk menghabiskan sehari di Projek A kemudian sehari di Projek B kemudian beralih ke Projek A.
Dapatkan Sekitarnya: Gunakannya Apabila Keutamaan Anda Akan Berubah
Setiap lajur di papan anda adalah bebas daripada yang lain, jadi ahli pasukan dapat bergerak setiap saat. Ini boleh mengganggu pemaju dalam suasana scrum (di mana anggaran untuk pecut dipentaskan di hadapan), tetapi Kanban bertumbuh dalam persekitaran yang berubah dengan cepat ini.
Semua orang mahu menjadi lebih produktif, tetapi ia boleh menjadi sukar untuk mencuba sesuatu yang baru jika anda tidak pasti di mana untuk bermula. Saya telah menemui Kanban untuk membantu dan berharap anda juga akan mendapati ia berguna untuk aliran kerja peribadi anda (atau bahkan untuk seluruh pasukan anda!).
Tweet saya jika anda membuat keputusan untuk mencuba!




