Pemrograman Ekstrim di Agile - Panduan Praktis untuk Manajer Proyek danUDN Task Manager.ers.
Kami telah menerima banyak permintaan tentang pemrograman ekstrim di air terjun - dan bagaimana orang bisamanfaat darinya sebagai manajer proyek. Kalau-kalau Anda tidak tahu apa itu pemrograman ekstrim, itu adalah bentuk kerangka gesit di mana PMS mendapatkan yang terbaik dari sumber daya yang tersedia di lingkungan pengembangan perangkat lunak.
Extreme Programming (XP), kerangka pengembangan perangkat lunak tangkas, dirancang khusus untuk meningkatkan kualitas perangkat lunak, proses kerja untuk tim pengembangan dan meningkatkan kepuasan pelanggan.
Ini adalah metode yang dirancang untuk yang lebih halus dan efisienSiklus Kehidupan Pengembangan Perangkat Lunak (SDLC)Untuk proyek Anda, dan pertama kali diimplementasikan pada proyek pada 6 Maret 1996.
Pemrograman ekstrem bekerja untuk menyediakan rilis perangkat lunak berulang dan berulang di seluruh proyek; Alih-alih semuanya bersama setelah siklus pengembangan proyek yang panjang.
Inisiklus berulang pendek.Bantu anggota tim dan pelanggan untuk menilai dan meninjau kemajuan proyek sepanjang pengembangannya.
XP menggabungkan 5 nilai berikut:
Inti dari XP adalah seperangkat praktik pengembangan perangkat lunak yang saling berhubungan. Meskipun dimungkinkan untuk menerapkan praktik-praktik ini dalam isolasi, banyak tim telah menemukan bahwa beberapa praktik memperkuat yang lain dan harus dilakukan bersamaan. Ini dapat memungkinkan sepenuhnya menghilangkan risiko yang sering Anda hadapi dalam pengembangan perangkat lunak.
Dua belas praktik asli untuk XP terdiri:
Selama bertahun-tahun, tim telah menemukan bahwa beberapa praktik memperkuat yang lain. Untuk menghilangkan risiko, ini harus disatukan. Deskripsi berikut mencakup beberapa penyempurnaan berdasarkan berbagai pengalaman tim:
Seluruh tim: Tim harus terdiri dari kelompok lintas-fungsional orang dengan keterampilan yang berbeda. Dengan cara ini, mereka dapat saling melengkapi untuk mencapai hasil tertentu.
Duduk bersama:Kebanyakan orang setuju bahwa percakapan tatap muka adalah bentuk komunikasi terbaik. Tim harus duduk bersama tanpa hambatan untuk komunikasi mis. Dinding kubik.
Ruang kerja informatif: Tim harus diatur untuk duduk dengan cara membuat pekerjaan tim transparan satu sama lain dan orang-orang yang berafiliasi di luar tim.
Pekerjaan berenergi: Ini berarti memastikan bahwa seseorang sehat secara mental dan fisik untuk fokus pada pekerjaan. Ini juga menyiratkan seharusnya tidak ada pekerjaan berlebihan dan menghormati tim untuk mendukung kesehatan mental dan fisik mereka juga.
Baca juga:
Bagaimana mengelola proyek seperti pro di lingkungan kerja saat ini?
Pemrograman pasangan: Gagasan di balik praktik ini adalah bahwa 2 otak lebih baik dari satu. Pemrograman pasangan mengacu pada produksi perangkat lunak melalui 2 orang yang duduk di mesin yang sama. Dengan ini, ada ulasan kerja berkelanjutan dan masalah menerima respons yang lebih cepat. Metode ini telah terbukti meningkatkan kualitas dan tetap lebih fokus.
Cerita: Cerita mendefinisikan fitur-fitur yang seharusnya dimiliki produk itu akan berarti bagi pelanggan dan pengguna. Kisah-kisah ini digunakan untuk perencanaan dan juga berfungsi sebagai pengingat untuk percakapan lebih lanjut.
Siklus mingguan.: Hari pertama setiap minggu, tim bertemu untuk merefleksikan kemajuan hingga saat ini. Kisah-kisah yang harus dikirim pada minggu dipilih oleh pelanggan. Tim menentukan cara mendekati cerita-cerita itu. Tujuan di balik ini adalah untuk mencapai fitur yang berjalan dan dapat diverifikasi pada akhir minggu. Periode tetap memungkinkan produksi fitur yang dapat ditunjukkan kepada pelanggan untuk umpan balik.
Siklus triwulanan:Tujuan dari siklus triwulanan adalah untuk memeriksa pekerjaan rinci setiap siklus mingguan dalam konteks proyek secara keseluruhan. Pelanggan menyediakan rencana keseluruhan untuk tim dalam kuartal tertentu. Ini tidak hanya memberi tim pandangan proyek tetapi juga membantu pelanggan untuk bekerja dengan pemangku kepentingan lain yang terlibat.
Kendur: Ini menyiratkan menambahkan beberapa, tugas atau cerita prioritas rendah dalam siklus mingguan dan triwulanan. Jika tim tertinggal pada tugas yang lebih penting, ini dapat dijatuhkan. Selain itu, ini juga akan selesai, meningkatkan peluang untuk memenuhi perkiraan jadwal.
Bangun sepuluh menit: Seluruh sistem dan semua tes harus dijalankan dalam 10 menit. Jika waktu melebihi batas ini, beberapa putaran ulang akan menelan biaya lebih besar antara kesalahan. Praktek ini mendorong otomatisasi proses pembangunan, membuatnya layak secara teratur, untuk menjalankan semua tes Anda.
Integrasi berkelanjutan:Praktik ini mendorong pengujian langsung kode baru ke basis kode yang lebih besar. Ini membantu menangkap dan memperbaiki masalah integrasi lebih cepat. Praktek ini membutuhkan disiplin dan tergantung pada praktik sepuluh menit membangun dan menguji pengembangan pertama.
Pemrograman Tes-First: Alih-alih mengikuti cara reguler I.E.,
Kembangkan kode - & gt; TAKUT TESTS - & gt; Jalankan tes
Praktek pemrograman tes pertama mengambil jalur:
Tulis tes otomatis yang gagal - & gt; Jalankan Tes Gagal - & gt; Kembangkan kode untuk membuat test pass - & gt; Jalankan tes - & gt; Mengulang
Praktek ini juga mengurangi siklus umpan balik untuk identifikasi dan resolusi masalah. Ini menghasilkan pengurangan jumlah bug yang diperkenalkan ke produksi.
Desain tambahan: Praktek ini menggambarkan dengan melakukan sejumlah pekerjaan di muka untuk memahami perspektif yang sangat bijaksana dari desain sistem. Setelah itu, bekerja lebih lanjut tentang detail aspek tertentu dari desain ketika fitur spesifik dikirim. Pendekatan ini mengurangi biaya perubahan dan memungkinkan Anda membuat keputusan desain bila perlu berdasarkan informasi terkini yang tersedia.
XP memasukkan praktik-praktik tertentu untuk mengikuti tim Anda dan tidak menetapkan peran tertentu untuk anggota tim. Namun, sesuai dengan kebutuhan, 4 peran paling umum adalah:
Pelanggan:Pelanggan XP diharapkan untuk berpartisipasi aktif dalam proyek. Pelanggan membuat semua keputusan bisnis mengenai proyek seperti:
Pengembang: Pengembang menyadari kisah-kisah yang diidentifikasi oleh pelanggan, yang berarti memberikan proyek dengan fitur yang diputuskan.
Pelacak: Pelacak adalah peran opsional dan tergantung apakah tim membutuhkannya. Ini dilakukan oleh salah satu pengembang untuk melacak relevanMetrik Agile, dan itu Untuk evaluasi kemajuan dan identifikasi bidang-bidang utama untuk perbaikan. Ini penting untuk pelacakan kemajuan dan identifikasi area utama untuk perbaikan. Beberapa dari metrik ini dapat mencakup jumlah waktu yang bekerja, jumlah lembur, uji yang lewat dan gagal, kecepatan, dan alasan variasi terhadap kecepatan.
Pelatih: Peran ini bermanfaat terutama jika tim baru memulai. Pelatih dapat menjadi konsultan luar yang telah menggunakan XP sebelumnya dan dapat membantu mentor tim pada praktik XP serta disiplin diri. Mempekerjakan pelatih membantu menghindari kesalahan potensial yang dapat dilakukan oleh tim baru, mempercepat proyek.
Lifecycle XP dapat dijelaskan mengenai siklus mingguan dan siklus triwulanan.
Untuk memulai, pelanggan mendefinisikan serangkaian cerita. Tim memperkirakan ukuran setiap cerita, yang bersama dengan manfaat relatif seperti yang diperkirakan oleh pelanggan, menunjukkan nilai relatif yang digunakan untuk memprioritaskan cerita.
Dalam hal, beberapa cerita tidak dapat diperkirakan oleh tim karena pertimbangan teknis yang tidak terlibat, mereka dapat memperkenalkan lonjakan. Spikes disebut sebagai pendek, frame waktu untuk penelitian dan dapat terjadi sebelum iterasi reguler dimulai atau bersama dengan iterasi yang sedang berlangsung.
Selanjutnya datang rencana rilis: Rencana Rilis mencakup kisah-kisah yang akan disampaikan dalam seperempat atau rilis tertentu.
Pada titik ini, siklus mingguan dimulai. Awal setiap siklus mingguan melibatkan tim dan pertemuan pelanggan hingga memutuskan serangkaian cerita untuk direalisasikan minggu itu. Kisah-kisah itu kemudian dipecah menjadi tugas-tugas yang harus diselesaikan dalam minggu itu.
Akhir pekan dengan ulasan tentang kemajuan hingga saat ini antara tim dan pelanggan. Ini mengarah pada keputusan jika proyek harus berlanjut atau jika nilai yang cukup telah disampaikan.
XP untuk sistem krizp
KRIZP SOLUSI adalah perusahaan pengembangan berbasis web startup di India. Rencana bisnis mereka mencakup penciptaan portal web untuk perusahaan kecil atau lembaga pendidikan lainnya. Perusahaan mulai sebagai bisnis paruh waktu, mempekerjakan orang-orang yang sudah bekerja untuk organisasi IT utama lainnya. Rencananya adalah untuk melanjutkan penuh waktu hanya jika startup berkelana menjadi sukses. Tidak ada kerangka kerja untuk proses pengembangan perangkat lunak mereka karena itu hanya perusahaan startup dengan tidak banyak proyek dan beberapa karyawan.
Perusahaan tidak memiliki pendekatan terstruktur untuk pengembangan perangkat lunak. Dengan persyaratan awal yang dimotretkan di atas kertas, informasi lebih lanjut dan klarifikasi diterima dari pelanggan melalui panggilan telepon. Biasanya, perubahan besar dalam persyaratan tidak muncul sampai tinjauan pelanggan, yang setelah larutan dikembangkan.
Selain untukperbaikan bug., para pengembang memiliki sedikit atau tidak memiliki komunikasi satu sama lain. Mereka bekerja secara terpisah pada fitur yang berbeda. Hal ini menyebabkan menjadi penghalang untuk diskusi mengenai peningkatan metode kerja.
Apalagi proyek-proyek tidak didokumentasikan. Tidak ada manajer proyek untuk melacak proyek atau untuk memastikan bahwa persyaratan yang ditata oleh pelanggan sedang dipenuhi. Pengembang hanya bekerja pada apa yang diminta untuk dilakukan.
Tim di sistem Krizp diperkenalkan dengan konsep-konsep di balik berbagai kerangka gesit. Metode XP dipekerjakan selama rentang satu bulan dan hasilnya dinilai.
CEO Perusahaan mengambil 2 peran: perwakilan pelanggan dan pelacak. Untuk peran pertamanya, ia memprioritaskan cerita pengguna, mendelegasikanmereka ke tim pengembangan, dan memiliki komunikasi reguler dengan pelanggan. Sebagai pelacak, ia melacak waktu untuk menyelesaikan tugas-tugas tertentu. CEO juga memprakarsai game perencanaan setiap minggu (atau setidaknya sekali dalam empat hari), karena proyek itu kecil dan pengembang dapat menyelesaikan tugas dalam satu cerita pengguna lebih cepat. Namun, pelanggan tersedia untuk komunikasi langsung hanya dua kali per bulan dan sisa waktu ia berhubungan melalui panggilan telepon dan email.
Teknik pemrograman berpasangan diadopsi di mana kedua pengembang bekerja bersama. Setelah penyelesaian tugas, kedua pengembang meninjau kode dengan CEO.
Tes pelanggan diperkenalkan dan tim bekerja pada peningkatan desain berkelanjutan, yaitu sekitar 12-15 per bulan.
Ringkasan
Pendekatan XP tampaknya memiliki dampak yang baik pada siklus pengembangan perangkat lunak untuk perusahaan. Beberapa perubahan positif termasuk:
Untuk menilai praktisAplikasi Air TerjunVs. Extreme Programming, sebuah penelitian penelitian dilakukan melalui 2 studi kasus: satu di IBM dan yang lainnya di Saber Airlines. Setiap studi kasus membandingkan pendekatan air terjun untuk pendekatan XP.
Dalam studi kasus pertama, di IBM, para peneliti ingin mempelajari dampak dari mengadopsi pendekatan XP pada produktivitas, kualitas, dan kepuasan pelanggan. Sebuah penelitian sepanjang tahun dilakukan pada tim yang terdiri dari 7 - 11 anggota mengenai adopsi praktik XP. Tim bertanggung jawab untuk mengembangkan aplikasi servlet / xml untuk toolkit yang digunakan oleh tim IBM lainnya untuk membuat produk untuk pelanggan eksternal. Studi kasus menganalisis 2 pendekatan tentang rilis berurutan dari produk yang sama. Yang pertama adalah pendekatan air terjun tradisional dan yang kedua adalah XP.
Dalam studi kasus kedua, pada Saber Airline Solutions, metode yang sama digunakan I.E. Membandingkan 2 pendekatan melalui rilis yang berbeda dari produk yang sama. Tim bekerja untuk mengembangkan lingkungan GUI skrip bagi pelanggan eksternal untuk mengembangkan pengguna akhir-pengguna dan bisnis yang disesuaikan. Tim terdiri dari 6-10 anggota. Rilis lama selesai 3 tahun sebelumnya (spanning 18 bulan) menggunakan metode air terjun sedangkan rilis baru selesai baru-baru ini (spanning 3,5 bulan), menggunakan XP.
Langkah pertama adalah membangun kerangka evaluasi pemrograman ekstrim (XP-EF), yang terdiri dari tiga bagian: faktor konteks XP (XP-CF), metrik pengadatan XP (XP-AM) dan ukuran hasil XP (XP-OM):
Selain kerangka kerja, wawancara dilakukan dengan anggota tim dan pelanggan untuk membantu memahami menggabungkan XP oleh tim untuk kepuasan pelanggan.
Ringkasan
Di IBM, metode XP tampak lebih produktif dibandingkan dengan metode air terjun dengan langkah-langkah berikut:
Di Saber Airlines, hasil serupa diketahui:
Gunakan kasus 1:
Pernyataan masalah:Situs web perusahaan perlu didesain ulang.
Aktor: Pelanggan, Pengembang, Pelacak
Menggunakan XP:
Gunakan Kasus 2:
Pernyataan Masalah: Klien memerlukan permainan untuk dikembangkan dari awal.
Aktor: Pelanggan, Pengembang, Pelacak
Aliran peristiwa reguler:
Menggunakan XP :
UDN Task Manager.adalah sistem manajemen tugas yang mendukungMetode Agile.kerangka pemrograman ekstrim. Ini adalah aplikasi manajemen tugas online yang dirancang khusus untuk kerja tim dan pengiriman proyek. Terlepas dari industri,UDN Task Manager.Memfasilitasi metodologi XP dan berkontribusi pada perencanaan proyek dan penyelarasan proses yang efektif.
Berikut ini adalah beberapa caraUDN Task Manager.dapat membantu Anda merencanakan dan mencapai tujuan proyek Anda dengan lebih baik, semua dalam kerangka XP.
Penjadwalan rapat
Anda dapat menjadwalkan sit-in, pertemuan mingguan serta pertemuan triwulanan sebelumnya. Agenda dan timing dari pertemuan dapat ditentukan. Anda dapat mendefinisikan waktu yang tetap untuk rapat atau mengirimkan waktu yang disarankan kepada tim, untuk diselesaikan setelah respons tim.
Aplikasi ini juga memungkinkan Anda untuk mencatat semua poin penting yang dibahas dalam rapat. Risalah kemudian ditinjau dan diterbitkan untuk seluruh tim.
Alokasi tim
Anda dapat mengatur tim Anda dan peran yang akan mereka lakukan melalui bagian alokasi tim. Anda dapat dengan mudah mendefinisikan peran untuk pengembang, pelacak, dan pelanggan.
Penciptaan Proyek.
Pelanggan dapat membuat proyek dan menentukan persyaratan. Pelanggan juga dapat mendefinisikan anggaran dan timeline.
Penciptaan dan Penugasan Tugas
Pelanggan dapat membuat cerita dengan membuat tugas dalam proyek. Tugas akan terdiri dari daftar kegiatan untuk menyelesaikan di bawah satu cerita. Kisah-kisah ini kemudian dapat ditugaskan ke programmer.
Jika kisah-kisah selesai sebelum waktu oleh beberapa anggota tim, pelanggan dapat menugaskannya "Slack" Tasks I.E. Tugas prioritas lebih rendah dalam timeline yang tersisa. Ini menghemat waktu bekerja lebih cepat menuju penyelesaian proyek.
Lihat juga:
MemperkenalkanUDN Task Manager.2.0 - Pembaruan kami yang paling ditunggu
Aliran proyek
Manajer atau pelacak proyek dapat membantu melacak aliran proyek melalui modul absen. Modul ini memungkinkan pemantauan dan evaluasi yang efektif terhadap kemajuan proyek. Ini membantu secara individual menilai timeline untuk tugas yang berbeda juga dan tonggak sejarah mencapai atau tertunda.
Kolaborasi yang mudah
Kadang-kadang tidak mungkin untuk mengadakan pertemuan tatap muka mis. ketika tim tertentu bekerja di situs lain. Dalam kasus seperti itu, pembaruan otomatis pada proyek, tugas, dan pertemuan dapat memastikan kolaborasi dan diskusi tim yang tepat waktu dan efektif. Hal ini menghindari waktu yang disia-siakan dalam pengaturan manual proyek dan tugas tindak lanjut, berkomunikasi rapat menit, atau pembaruan proyek.
Komentar real-time menyediakan cara mudah untuk berkomunikasi dengan tim. Apakah itu pertukaran informasi atau ide-ide baru, ini memudahkan tim untuk tinggal di halaman yang sama.
Tugas yang saling tergantung disorot dan setiap anggota tim dapat memeriksa pembaruan secara instan sebagaimana diperbarui oleh anggota tim lainnya. Ini membuat tim memperbarui situasi yang berubah dan dalam merencanakan tugas berikutnya, karenanya.
Selain itu, pelanggan dapat secara langsung berkolaborasi dengan tim dan memperbarui setiap perubahan dalam persyaratan.
Transparansi.
UDN Task Manager.Memberikan pandangan transparan tentang semua proyek dan tugas yang sesuai dan sub-tugas melalui buginya. Setiap proyek yang dibuat atau dimodifikasi dikomunikasikan kepada tim, segera. Tidak perlu periksa kembali pembaruan kemajuan, undangan rapat atau laporan proyek.
Tugas diperbarui, memodifikasi atau menghapus membuka jalan bagi seluruh tim untuk sepenuhnya sadar dan tahu persis apa yang sedang dilakukan ketika.
Dengan opsi filternya, Anda dapat memilih untuk melihat pembaruan untuk proyek-proyek tertentu berdasarkan prioritas atau tugas yang dihadapi. Dengan opsi status, status tugas yang dipilih dapat dilihat apakah sudah dimulai atau tidak, selesai atau sedang berlangsung.
Kesimpulan
Rincian penulisan ini bagaimana Anda dapat mengambil manfaat dari XP sebagai pekerja gesit. Tambahan,UDN Task Manager.dibuat untuk melakukan persyaratan tersebut dalam domain teknik pemrograman dan air terjun yang ekstrem. Oleh karena itu, jangan baca dan jangan lupa untuk membagikan pemikiran Anda melalui bagian komentar di bawah ini. Atau, Anda dapat mengirim email kepada kami .