Ada banyak faktor yang berkontribusi terhadap ketegangan dalam rapat. Pertimbangkan ini sebagai beberapa alasan penting mengapa rapat mungkin membuat Anda lebih mahal daripada nilainya:
- Fokus - perangkat lunak versus rapat
- Manajemen - manajer perlu pengukuran
- Kepribadian - Introvert vs Ekstrovert
- Waktu - menyela, Waktu Pembuat dan Manajer
- Sasaran, Prioritas
Masing-masing faktor tersebut dijelaskan di bawah ini,
Fokus - Saya menikmati pengembangan perangkat lunak, dan itu termasuk memikirkan tantangan (masalah), menciptakan solusi, membangun perangkat lunak, dan rapat mengalihkan perhatian dari fokus pada tugas-tugas yang membangun perangkat lunak. Ada keadaan yang disebut " Aliran " di mana pengembang terbenam dalam tantangan (masalah), telah membangun model mental dari solusi, dan memiliki fokus penuh untuk membangun solusi. Pengembang dapat bekerja hingga tengah malam, pergi hanya untuk makan dan tidur, kemudian kembali ke keadaan dekat dengan tempat mereka pergi.
Pengembang perlu menghindari gangguan, dan banyak yang menemukan bahwa ada keuntungan untuk kode hingga larut malam (mereka menghindari kebisingan, panggilan telepon, kantor yang sibuk, dan rekan non-pengembang mengganggu pekerjaan mereka). Dan ketika Anda telah bekerja sampai jam 10, 11, atau 12 siang, tidak masuk akal untuk datang kerja nanti (10, 11, siang?). Apakah masuk akal untuk mengharapkan pengembang bekerja dari jam 9 pagi sampai tengah malam?
Rapat scrum (dan apa saja) mengalihkan perhatian pengembang dari tujuan utamanya, yaitu membangun perangkat lunak.
Manajemen - Manajer perlu mengukur untuk menjadi sukses, maka kebutuhan untuk jadwal, pengiriman, jadwal, prioritas, dan pertemuan untuk mengukur dan melaporkan kemajuan, dan untuk mengekspos dependensi, keterlambatan, dan bidang risiko. Tantangan dengan Scrum adalah bahwa seorang manajer membutuhkan hal-hal ini, tetapi pengembang perlu fokus. Rapat melayani manajer, dan menyediakan cara bagi manajer untuk memperoleh, mengukur, dan melacak status dan kemajuan, tetapi rapat jarang memberikan manfaat bagi pengembang. Pertimbangkan bahwa manajer memberikan nilai lebih ketika mereka menangani gangguan, menghilangkan hambatan, dan memungkinkan pengembang untuk fokus membangun perangkat lunak.
Ada solusi untuk kebutuhan rapat. Seorang manajer dapat mengunjungi pengembang mereka, meminta laporan status, mengadopsi protokol ketika gangguan kurang mengganggu, atau mengadopsi kebijakan bahwa pengembang untuk memberi tahu mereka tentang kemajuan ketika pengembang itu interupsi. Lihat pembahasan waktu mengapa ini penting.
Kepribadian - Pertimbangkan bahwa beberapa orang introvert dan yang lain ekstrovert. Ekstrovert menikmati interaksi sosial, dan diisi ulang oleh mereka. Manajer biasanya ekstrovert (karena ekstrovert biasanya lebih baik dengan interaksi sosial), meskipun introvert dapat berhasil sebagai manajer. Introvert dapat menikmati dan bahkan unggul dalam interaksi sosial, tetapi diisi ulang oleh kesendirian. Pengembang sering introvert, dan berhasil bekerja sendiri (atau dalam tim kecil) karena mereka tidak "memerlukan" interaksi sosial; mereka bisa senang bekerja sendiri pada masalah (meskipun ekstrovert juga bisa menjadi pengembang). Rapat scrum harian bisa menjadi pertemuan sosial, bagus untuk ekstrovert, tetapi tidak begitu baik untuk introvert.
Waktu - Pengembang tidak dapat menulis kode saat mereka sedang rapat. Mereka juga tidak dapat memikirkan masalah-masalah sulit (kecuali mereka melakukan brainstorming), sementara terganggu oleh pertemuan. Pengembang membutuhkan blok besar waktu tanpa gangguan untuk fokus membangun perangkat lunak. Rapat adalah gangguan yang mengalihkan upaya mereka. Ketika Anda telah tenggelam dalam memecahkan masalah selama berjam-jam, hampir selesai, dan seseorang mengatakan "waktu untuk scrum", Anda terganggu, dan mungkin kehilangan jam kerja sambil "memindahkan gigi". Atau Anda tetap bekerja sampai jam 11:00 malam, meninggalkan pekerjaan, pulang ke rumah, tidur dengan masalah, bangun, kembali bekerja siap untuk menyelesaikan masalah, dan kemudian disela setelah satu jam mengerjakan suatu masalah, karena itu adalah "waktunya untuk scrum".
Paul Graham memiliki artikel yang sangat bagus tentang Waktu Pembuat vs. Waktu Manajer, yang menjelaskan masalah ini jauh lebih baik daripada saya. Cukup untuk mengatakan bahwa gangguan rapat, baik yang direncanakan atau tidak direncanakan dapat memutus arus, dan memaksa pengembang dari waktu Maker ke waktu Manajer. Percayalah, Anda ingin pengembang pada waktu Maker.
Sasaran, Prioritas - Pengembang dan manajer memiliki tujuan dan prioritas yang berbeda. Manajer memiliki tanggung jawab untuk melacak jadwal, meminimalkan biaya, memastikan bahwa laporan mereka bertanggung jawab, dan bahwa mereka melakukan. Pengembang memiliki tujuan untuk membangun perangkat lunak yang mengatasi tantangan / masalah. Tujuan-tujuan ini tidak bertentangan, tetapi mekanisme komunikasi yang menciptakan ketegangan. Rapat melayani kebutuhan manajer dan mengoptimalkan waktu manajer, tetapi mereka bertentangan dengan kebutuhan pengembang. Rapat scrum membuang aturan pertemuan pertama, "punya agenda", dan cenderung berkeliaran lebih banyak. Dan rapat digunakan untuk mengoptimalkan komunikasi (untuk manajer), tetapi biayanya memakan waktu pengembang (gangguan, kehilangan aliran, dll).
Apa tujuannya? Untuk membangun perangkat lunak yang memenuhi kebutuhan, dengan cepat dan dengan kualitas, sementara kendala adalah (kualitas, waktu, biaya, proses). Scrum dan metodologi gesit lainnya mengenali kendala proses, dan mencoba untuk meminimalkan faktor itu, dan telah berhasil karena mereka meminimalkan kendala itu. Tetapi menambahkan rapat memang menghabiskan waktu, dan interupsi itu membuat pengembang lebih mahal daripada durasi rapat.