Pada beberapa proyek untuk implementasi sistem perusahaan, saya menemukan tugas perencanaan dan pengendalian tugas yang sulit diprediksi. Bayangkan Anda perlu melakukan banyak tugas serupa, dan sejumlah besar orang terlibat di dalamnya, sementara Anda tidak tahu persis urutan apa yang akan mereka lakukan dan berapa lama mereka akan melakukannya.
Diagram Gantt yang dikenal dalam manajemen proyek bekerja buruk dalam hal ini. Contoh khas adalah pengembangan ekstensi untuk CIS.
Di bawah ini saya akan memberi tahu Anda metode mana yang kami gunakan pada proyek untuk mengendalikan sejumlah besar tugas paralel dengan biaya administrasi minimal.
1. Perencanaan kerja
Sekitar lima tahun yang lalu saya menulis
artikel - rekomendasi untuk manajer proyek tentang penjadwalan. Prinsip-prinsip telah diuji oleh waktu, dan saya masih mematuhinya.
Namun, untuk beberapa jenis tugas praktis tidak mungkin untuk membuat jadwal rinci yang konsisten. Dalam situasi di mana banyak tugas dilakukan secara paralel, dan durasi dan kompleksitas masing-masing hanya dapat diperkirakan dengan kesalahan besar.
Contoh klasik adalah pengembangan. Setiap pengembangan melewati beberapa tahap, setidaknya - desain, pengkodean, pengujian. Sebagai aturan, beberapa iterasi diperlukan ketika tugas berpindah ke tahap sebelumnya. Pengembangan dipindahkan dari pengkodean ke pengujian, pengembang mengambil tugas lain. Pengembangan dikembalikan ke pengkodean, pengembang menyelesaikan tugas sebelumnya, atau segera melakukan koreksi kesalahan. Bergantung pada situasi dan prioritas, mungkin ada urutan kerja tim yang berbeda pada kelompok tugas. Prosesnya terlihat kacau dan tak terkendali. Menyajikan ini dalam bentuk bagan Gantt yang rapi, yang biasa digunakan manajer proyek, yang terbiasa mengendalikan semuanya, sangat melelahkan dan tidak terlalu berguna, jika memungkinkan.
Bagaimana menjadi Bagaimana cara mengontrol kemajuan pekerjaan? Bagaimana memahami - tepat waktu atau tidak; dimana kemacetannya; Apakah ada sumber daya yang cukup? siapa yang bekerja dengan baik dan siapa yang tidak? Bagaimana, pada akhirnya, melaporkan kepada manajemen?
Di bawah ini adalah salah satu opsi yang tampaknya optimal bagi saya, dan dalam beberapa kondisi satu-satunya.
2. Menggunakan sistem manajemen kerja
Perlu disebutkan langsung bahwa tanpa menggunakan sistem manajemen tugas yang memungkinkan setiap peserta untuk menerima tugas, mentransfernya ke peserta lain dan menandai penyelesaiannya, tidak mungkin untuk membangun proses normal.
Dalam praktik saya, saya menggunakan alat yang berbeda dan menerbitkan artikel ulasan tentang topik ini (lihat artikel tentang Habr:
Alat manajer proyek ). Di sini saya akan menjelaskan secara lebih rinci pengalaman menggunakan JIRA, yang kami atur untuk manajemen pengembangan, menggunakan fungsionalitas standar, dengan penggunaan plug-in tambahan yang minimal.
JIRA adalah sistem manajemen tugas (permintaan) Atlassian. Biaya lisensi, tergantung pada jumlah pengguna, mulai dari $ 10 per 10 pengguna. Ada opsi untuk menginstal sendiri, atau menggunakan aplikasi di cloud. Harga untuk semua opsi dapat ditemukan di
sini .
JIRA dibedakan oleh antarmuka yang agak kuno (ini adalah sistem usia yang sangat terhormat yang telah melewati perkembangan yang sangat panjang), keandalan, sistem yang fleksibel untuk mengonfigurasi semua yang mungkin (alur kerja, jenis layar, akses, sistem pemberitahuan), sejumlah besar plug-in, baik plug-in, baik yang dibayar maupun gratis, dan kemungkinan perkembangan yang mendalam.
Kami tidak perlu revisi, kami menyiapkan dan terus meningkatkan alur kerja (proses kerja adalah set dan urutan status untuk tugas dan transisi di antara mereka), serta akses peserta dan dashboard untuk mengontrol pekerjaan.
Saya tidak mengatur sendiri tugas untuk menjelaskan secara rinci fitur dan kemungkinan menggunakan aplikasi, tetapi untuk presentasi lebih lanjut, penting untuk menggambarkan beberapa poin.
3. Alur kerja manajemen tugas
Alur kerja mencerminkan siklus hidup tugas, dalam contoh kami - desain, pengujian kode. Sebenarnya prosesnya jauh lebih rumit. Bergantung pada fitur-fitur organisasi proyek, rekrutmen peserta, persyaratan kontrol, jumlah tahapan bisa sangat bervariasi.
Misalnya, salah satu proyek memiliki alur kerja berikut untuk melacak tugas pengembangan.

Banyak tahap koordinasi, distribusi pekerjaan, pengujian pada semua contoh sistem ... Tapi ini memungkinkan untuk mengkonfirmasi setiap langkah dalam sistem, melacak tanggung jawab dan tahu persis siapa dan pada tahap apa tugas itu.
4. Kompleksitas tugas
Kompleksitas tugas dibagi menjadi dua komponen: desain dan konstruksi. Desain adalah pekerjaan seorang analis untuk menyiapkan dokumen dan menguji pengembangan. Bangunan adalah tenaga pengembang untuk pengembangan desain teknis, pengkodean, pengujian sendiri sebelum meneruskannya ke analis.
Menilai kerumitan tugas di muka tanpa menyelami rinciannya cukup sulit, terutama jika ada beberapa ribu tugas, seperti yang terjadi dalam kasus kami. Tetapi perlu untuk mengevaluasi untuk memahami jumlah total pekerjaan, jumlah sumber daya yang diperlukan dan menentukan waktu.
Untuk penilaian perkiraan, kalkulator digunakan, yang, tergantung pada jenis dan kompleksitas tugas, dikaitkan dengan kompleksitas yang direncanakan.
Kompleksitas tugas ditentukan tergantung pada objek dan jumlah pekerjaan dengannya. Misalnya, untuk mengembangkan formulir di Oracle eBS, kriteria kompleksitas dijelaskan sebagai berikut:
- Sangat sederhana - bentuk blok tunggal dengan 8 kolom atau kurang. Itu tidak memerlukan logika fungsional khusus.
- Sederhana - bentuk tunggal dan multi-blok (2-3 blok) dengan 20 kolom atau kurang. Diperlukan logika fungsional sederhana (pengeditan sederhana, pengeditan silang (pengeditan silang), perhitungan sederhana, total dan subtotal).
- dll.
Jenis tugas mencerminkan konten tugas, spesifikasi teknologi, aplikasi, atau bagiannya.
Sebagai contoh:
- Formulir baru atau dapat diubah.
- Laporan baru atau revisi.
- Program database baru atau yang dapat diubah.
- Skrip SQL * Loader.
- Sinyal (peringatan).
- Personalisasi.
- dll.

Berdasarkan kompleksitas dan jenis pengembangan, kalkulator menghitung kompleksitas yang direncanakan.
Dan meskipun kesalahan estimasi bisa signifikan, dalam jumlah besar, secara statistik, kesalahan ini diratakan, dan gagasan umum tentang jumlah tenaga kerja dapat digunakan untuk tujuan perencanaan proyek.
5. Memantau kinerja tugas
Jadi, memiliki status tugas dan kompleksitasnya, bagaimana kita dapat mengevaluasi kemajuan pekerjaan?
Opsi tradisional adalah merencanakan berapa banyak tugas yang perlu Anda lakukan untuk periode tertentu dan melacak penyelesaian tugas secara berkala. Masalahnya adalah bahwa beberapa tugas memakan waktu lama dan merentang selama beberapa periode perencanaan. Dan dalam beberapa periode banyak tugas diselesaikan, dalam beberapa lainnya terlalu sedikit. Ini tidak memberikan pemahaman tentang situasi, terutama di awal dan di akhir proyek.
Anda dapat mencoba merencanakan penyelesaian setiap tahapan tugas. Dalam contoh di atas, kami menggunakan 21 tahap, masing-masing tidak mungkin untuk direncanakan. Kami memilih yang utama - penyelesaian desain, penyelesaian pengkodean, penyelesaian seluruh tugas. Kami merencanakan tanggal untuk setiap tugas, kami akan mengontrol penyimpangan. Tampaknya layak. Namun, saat mengerjakan sejumlah besar tugas pada saat yang bersamaan, agak sulit untuk melihat sesuatu dalam beberapa ratus penyimpangan dan menarik kesimpulan yang tepat. Untuk setiap penyimpangan akan ada penjelasan, alasan obyektif. Sesuatu akan dilakukan terlambat, sesuatu yang lebih cepat.
Pada salah satu proyek, kami mencoba menggunakan metode kontrol tanggal. Tanggal yang direncanakan ditentukan oleh para pemain. Faktanya secara otomatis direkam dalam sistem setelah transisi dari status yang sesuai.

Gambar tersebut menunjukkan histogram penyimpangan pada tanggal desain fungsional (FD) siap. Nilai positif menunjukkan kemajuan, nilai negatif menunjukkan kelambatan pada bagan. Dapat dilihat bahwa jumlah terbesar PD diserahkan oleh pelaksana dengan jeda 3,8 hingga 1,7 hari. Dalam hal ini, nilai ekstrem mulai dari 43 hari terlambat hingga 67 hari lebih cepat dari jadwal.
Dalam situasi ini, kita melihat bahwa dalam sebagian besar kasus, para pelaku melanggar tenggat waktu yang ditentukan oleh mereka. Kesalahan sistematis ini patut dipertimbangkan. Namun, asalkan tim termotivasi, dan semua orang bekerja dengan itikad baik, ini hanya berarti bahwa orang tidak dapat menunjukkan waktu nyata, para pemain tidak memperhitungkan faktor-faktor rumit yang dalam banyak kasus muncul selama bekerja.
Waktu ekstra dihabiskan untuk perencanaan, tetapi sebenarnya tidak ada yang bertanggung jawab untuk memenuhi tenggat waktu. Jika Anda memasukkan sanksi untuk pelanggaran, mereka akan menetapkan tanggal dengan margin besar, dan situasi kinerja akan menjadi lebih buruk.
Jika Anda ingin mengendalikan sesuatu, pikirkan apa yang akan Anda lakukan dengan hasil kontrol, keputusan apa yang dapat Anda buat berdasarkan data yang dikumpulkan?
6. Metode Volume yang Diperoleh
Upaya untuk mengelola pada tingkat terperinci secara terpusat, untuk sejumlah besar tugas dengan tingkat ketidakpastian yang besar akan menemui kegagalan.
Anda dapat membagi tugas-tugas ini ke dalam grup, mendelegasikan perencanaan terperinci ke grup. Beberapa orang, beberapa lusinan tugas dapat diatur dalam suatu rantai, dengan cepat menanggapi perubahan, membuat keputusan tentang mengubah prioritas. Tetapi di tingkat proyek, metode lain diperlukan.
Metode volume yang digunakan datang untuk menyelamatkan. Tanpa masuk ke dalam teori, saya akan menjelaskan bagaimana metode ini diterapkan untuk pengendalian rencana-fakta pembangunan.
Kami telah menentukan siklus hidup tugas dan menentukan kompleksitas yang direncanakan dari masing-masing tugas tersebut. Sekarang kami menetapkan persentase penyelesaian tugas dari setiap tahap. Dalam kasus kami, karena ada pembagian input tenaga kerja ke dalam desain dan pengkodean, persentase ditugaskan untuk masing-masing nilai.
Penugasan yang menarik dilakukan oleh seorang ahli, mengevaluasi seberapa banyak kita menganggap tugas selesai, berapa banyak lagi tenaga kerja yang tersisa pada tahap ini.

Setelah tabel seperti itu dikompilasi, untuk setiap tugas dimungkinkan untuk menentukan berapa hari-orang dari yang direncanakan sudah dikuasai dan dengan demikian mengukur kemajuan setiap tugas.
Misalnya, tugas memiliki input tenaga kerja yang direncanakan 10 jam untuk desain dan 20 jam untuk pengembangan. Kemudian, pada tahap pengujian, kami percaya bahwa itu adalah 80% selesai dalam hal pekerjaan analis (20% dari tenaga kerja lain yang diperlukan untuk menyelesaikan tes) dan 50% dalam hal pekerjaan pengembang. Kami siap mengakui bahwa desain telah bekerja 8 jam, dan sedang dalam pengembangan - 10 jam. Secara total, dari 30 hari kerja, 18 telah selesai.
Pada saat yang sama, kami tidak memperhitungkan bahwa, pada kenyataannya, waktu lain dapat dihabiskan. Untuk tujuan yang disebutkan itu tidak masalah.
7. Pelaporan proyek
Memiliki tabel di mana untuk setiap tugas kami memiliki kompleksitas yang direncanakan dan volume yang dikuasai, mudah untuk memahami bagaimana hal-hal berjalan.
Dimungkinkan untuk membagi tugas menjadi arahan, komponen, dan tonggak proyek untuk dapat menganalisis pada tingkat yang lebih rinci dan membuat tabel ringkasan di semua bagian yang diperlukan.
Gambaran keseluruhan proyek menjadi nyaman untuk presentasi di tingkat kepemimpinan:
Tabel ringkasan unggahan JIRA

kontrol fakta rencana untuk seluruh proyek

Metode ini tidak selalu menemukan pengertian. Manusia-hari mitis kurang dipahami daripada potongan pembangunan. Dan dia tidak membatalkan perencanaan terperinci di tingkat grup dan pemain individu. Namun, ini adalah metode yang paling objektif untuk menilai situasi saat ini dan memprediksi penyelesaian pekerjaan.