Mengurangi Pengembalian pada Pengembang Tambahan

10

Apakah ada istilah untuk menggambarkan titik di mana menambahkan lebih banyak pengembang ke proyek perangkat lunak akan memberikan hasil yang semakin berkurang?

Saya menyadari bahwa pada tingkat tinggi, lebih rumit bahwa hanya sejumlah pengembang di mana proyek akan berada pada kapasitas produktif (ex / keadaan proyek, kualitas pengembang yang ditambahkan), tetapi saya mencoba untuk datang dengan cara untuk menghubungkan ini dengan manajemen non-teknis melalui pengulangan. Saya pada dasarnya mencari istilah yang memunculkan citra mental yang kuat seperti "kecepatan terminal", kecuali untuk Hukum Brook .

smp7d
sumber
2
Saya percaya bahwa titik itu disebut "Sekarang". Namun serius, Anda harus menunjukkan kepada mereka grafik, merencanakan saat satu / lima / sepuluh pengembang baru ditambahkan dan pengaruhnya terhadap timeline proyek (mempertimbangkan hilangnya produktivitas karena mentoring anggota yang ada, kesalahan anggota baru dan pengerjaan ulang dll ... )
Oded
14
"Sembilan wanita melahirkan bayi dalam satu bulan" adalah analogi yang umum digunakan untuk menjelaskan masalah sumber daya vs timeline kepada manajemen.
dasblinkenlight
2
@dasblinkenlight - "Tapi bagaimana jika Anda memiliki para wanita yang bekerja secara bergiliran?" (respons manajemen non-teknis yang khas).
jfrankcarr
6
but senior management tends to view it as aggressively negativeAgenda manajemen senior dalam kasus Anda kemungkinan dua kali lipat: untuk mengurangi data penyelesaian proyek dengan cara apa pun yang mungkin, dan untuk mengontrol pengembang. Pandangan apa pun yang bertentangan dengan gagasan mereka sebelumnya akan dipandang sebagai negatif dan bergantung pada seberapa agresif Anda berusaha "meyakinkan" mereka, jika tidak, hanya akan memberi label Anda sebagai "bukan pemain tim" Misalnya. Manajemen berbicara untuk seseorang yang tidak dapat dikendalikan.
maple_shaft
1
Apakah Anda (mereka?) Khawatir tentang - Jadwalkan, risiko atau $, atau kombinasi dari semuanya. Cari tahu apa yang paling mereka pedulikan, dan tanyakan mengapa lebih banyak pengembang tidak akan memperbaiki masalah itu (dan untuk dianggap serius, usulkan solusi alternatif). Seringkali lebih halus daripada uang murni atau jadwal waktu.
mattnz

Jawaban:

7

Pertanyaan Anda mencakup jawabannya: titik berkurangnya pengembalian. Ini adalah titik di mana menambahkan lebih banyak sumber daya lebih banyak daripada efek produktif dari sumber daya ini. Itu konsep ekonomi dasar sehingga manajemen Anda diharapkan untuk mengetahui ini dengan hati ...

miraculixx
sumber
3
Apa yang Anda gambarkan adalah apa yang oleh para ekonom disebut sebagai titik pengembalian negatif - di mana menambahkan sumber daya membuat Anda lebih buruk. Titik pengembalian yang berkurang adalah di mana menambahkan lebih banyak sumber daya masih meningkatkan produksi, tetapi dengan jumlah yang lebih kecil. Jadi menambahkan sumber daya membuat Anda sedikit lebih baik, tetapi kurang dari yang Anda harapkan.
MarkJ
@MarkJ Poin bagus. Saya kira saya belum tentu mencari pengembalian yang menurun atau negatif menurut aturan. Saya hanya mencari titik bahwa manajer proyek / manajer utama akan mengatakan tidak untuk lebih banyak sumber daya. Sayangnya, itu tidak selalu dipotong dan kering.
smp7d
6

" Menambahkan tenaga kerja ke proyek perangkat lunak yang terlambat membuatnya nanti. Bulan kerja adalah konsep unit kerja yang proporsional dengan jumlah orang yang bekerja dikalikan dengan waktu mereka bekerja; Hukum Brook mengatakan bahwa hubungan ini adalah mitos, dan karenanya merupakan inti dari buku ini. "- Sumber: Wiki-Mythical_Man_Month .

Tidak ada kesempatan
sumber
1
"Teman golf saya, yang juga mengelola sebuah perusahaan konsultan IT, mengatakan bahwa dia memiliki dua programmer 'sabuk hitam' yang tersedia saat ini. Mereka berdua memiliki gelar master dalam ilmu komputer. Anda harus dapat membawanya masuk tanpa masalah , kan? Mungkin Anda akan belajar sesuatu tentang cara mengatur waktu Anda dengan lebih baik. "
jfrankcarr
1
@kevincline - "Saya melihat Anda bukan pemain tim. Saya menugaskan Anda untuk mempertahankan aplikasi VB6 kami yang berusia 14 tahun. Ini adalah salinan Who Moved My Cheese? Untuk Anda baca."
jfrankcarr
3
"Saya melihat Anda bukan pemain tim.": Saya punya komentar ini juga. Jawaban saya adalah perbandingan dengan sepak bola: Tim yang bagus tidak mencoba menjejalkan dirinya sendiri menjadi 5 meter persegi tetapi mencoba untuk menempati seluruh lapangan sehingga setiap pemain bisa lebih efektif; dan para pemain sering memberikan bola bolak-balik sesuai kebutuhan. Bekerja dalam tim berarti bahwa anggota tim mengoordinasikan kegiatan mereka tetapi bekerja pada area proyek yang independen dan tidak tumpang tindih. Jika memungkinkan, Anda dapat menambahkan lebih banyak pengembang dan meningkatkan produktivitas.
Giorgio
1
@kevin cline: Mungkin inilah alasan mengapa akhirnya menjadi tidak berguna untuk menambahkan pengembang baru ke dalam tim. Mungkin seseorang harus berhenti menambahkan pengembang baru jika seseorang tidak dapat menemukan area yang cukup independen dari sisa proyek.
Giorgio
2
Sikap tim, ukuran proyek, seberapa baik situasinya, pengalaman anggota baru, persyaratan saat ini, dll. Adalah semua faktor penting untuk dipertimbangkan di sini ...
NoChance
4

Ditakdirkan untuk Diulang

Fred Brooks yang malang seperti Cassandra dari Homer's Illiad . Jika Anda membaca buku yang berasal dari film Troy, dialah yang tidak peduli dengan kuda (Trojan). Dia memprediksi masa depan dengan akurat, tetapi tidak ada yang percaya dia sampai setelah prediksi telah terjadi dan mereka telah melihatnya sendiri.

Jangan Memerangi Manajemen / Perlawanan Pasif atau Mempekerjakan dengan Hati-hati?

Saran saya adalah mungkin bukan hari yang baik untuk mati, dan jika manajer Anda ingin Anda mempekerjakan lebih banyak staf, lakukanlah. Menyarankan beberapa parameter seperti mendapatkan seseorang dengan pengalaman khusus dan menggunakan teknik screen-out cepat akan tiga kali lipat waktu pencarian dan mungkin Anda akan mencapai tenggat waktu Anda sebelum pengganggu tiba.

Meminimalkan waktu yang Anda habiskan untuk kandidat yang tidak mungkin akan menghemat banyak waktu. Misalnya, resume apa pun tanpa tiga persyaratan teratas Anda di 1/3 pertama resume mereka dilemparkan, kandidat harus melewati layar ponsel 30 menit sebelum wawancara di tempat, abaikan perekrut yang tidak menyaring terlebih dahulu untuk kebutuhan Anda. Banyak teknik lain, pastikan apa pun yang Anda gunakan efisien dan efektif.

Mengontrol Beban Integrasi Perekrutan Baru

Jika Anda melakukan perekrutan sebelum batas waktu Anda dan perlu berurusan dengan karyawan baru, anggarkan waktu dari orang-orang yang tidak berada di jalur kritis untuk terlibat dalam pelatihan. Sangat membantu untuk membuat anggota tim Anda melihat satu, melakukan satu, menunjukkan satu. Jika Anda memiliki anggota tim yang berpengalaman rendah hingga menengah, hal itu akan memperkuat pemahaman mereka tentang proses, perangkat, dan basis kode Anda untuk membimbing karyawan baru di bidang-bidang ini.

Mudah-mudahan, Anda memiliki beberapa dokumentasi, sehingga menugaskan orang baru untuk membaca dokumentasi yang akan membantu mereka meningkatkan adalah investasi jangka pendek dan jangka panjang yang baik. Mereka harus dimasukkan ke dalam proses Anda secara bertahap, dan pekerjaan mereka harus ditinjau oleh orang-orang yang dapat mencegah mereka mengendalikan proyek di atas batu dengan perubahan yang berani tetapi berbahaya.

Penugasan Terbaik dan Terburuk untuk Karyawan Baru

Jika Anda memiliki proyek terpisah atau pengembangan teknologi yang dapat mereka lakukan untuk mempersiapkan penggunaannya dalam proyek masa depan, itu juga bisa menjadi manfaat besar. Mempelajari perangkat alat khusus Anda, melakukan build lokal sendiri, pengujian unit, pengujian kegunaan, dokumentasi, dan partisipasi dalam ulasan adalah semua tugas kandidat yang hebat untuk karyawan baru. Seorang karyawan baru mungkin memiliki perspektif yang baru dan dapat memberikan komentar kritis yang berharga tentang hal-hal yang dipelajari oleh tim Anda untuk hidup bersama dan tidak dapat lagi melihat.

Kegunaan yang kurang bermanfaat untuk staf baru mungkin termasuk pertemuan tim dengan manajer dan pemangku kepentingan non-pengembang, estimasi, persyaratan elisitasi dan manajemen (kecuali mereka ahli setelah bekerja di pesaing), paten, dan mewawancarai kandidat baru atau sebaliknya membantu kepegawaian.

Menjaga Harmoni dalam Tim, Menentukan Harapan Masa Depan

Prioritas perekrutan baru masih berlaku. Jika Anda memiliki tim yang telah melewati evolusi pembentukan, badai, norming, melakukan, Anda harus memberi karyawan baru harapan Anda untuk kinerja dan tanggung jawab yang direncanakan dalam tim. Anda tidak boleh membuat pekerjaan karyawan baru tampak kurang menuntut daripada peran lain dalam tim. Jika tim Anda secara agresif mendorong tenggat waktu, karyawan baru harus memiliki cara untuk menunjukkan bahwa ia secara agresif mendorong ke arah integrasi.

Pengembang Don
sumber
1

Saya tidak tahu istilah standar untuk titik pengembalian tenaga kerja yang semakin berkurang; karena tujuannya adalah untuk meyakinkan orang, coba balikkan frasa:

  • "batas penguraian" mungkin sangat relevan untuk proyek berukuran sedang.
  • "komunikasi overhead barrier" membangkitkan Hukum Brook klasik untuk proyek-proyek besar.
  • "Persyaratan desain iterasi" sebagai cara mewah untuk mengatakan "jika Anda menginginkan sesuatu yang bukan omong kosong, itu akan memakan waktu cukup lama untuk melakukannya dengan benar."
datang badai
sumber
0

Istilah yang cukup dekat adalah "rentang elastisitas ": analogi untuk memukul wilayah tidak elastisnya harga, ketika semakin mengurangi harga tidak meningkatkan penjualan Anda, harus membunyikan bel dengan manajemen.

dasblinkenlight
sumber