Model Agile

Metodologi fleksibel (Agile) mbantu nyuda risiko pangembangan piranti lunak kanthi mindhah alur kerja menyang sawetara siklus cilik. Siklus iki diarani iterasi lan biasane suwene rong nganti telung minggu.

Pengulangan kaya proyek piranti lunak cilik sing kalebu tugas, saben-saben nambah fungsi. Iki kalebu: nggawe rencana, ngevaluasi syarat, nyetujoni proyek, nulis kode, nguji, lan nggawe dokumentasi teknis.

Siji iterasi biasane ora cukup kanggo rilis piranti lunak lengkap. Nanging, sing apik babagan Agile yaiku bagean cilik saka proyek siap kanggo evaluasi ing pungkasan saben pengulangan. Iki ngidini anggota tim ngganti prioritas kanggo karya luwih lanjut tanpa ngenteni rilis pungkasan.

Nglamar metodologi pangembangan "lincah", sampeyan bisa ndeleng asil konkrit sawise saben pengulangan. Tegese pangembang bisa mangerteni apa asil karyane nyukupi syarat apa ora. Iki minangka salah sawijining kaluwihan penting saka model fleksibel.

Minangka kontra, nalika nggunakake Agile, kadhangkala angel kanggo ngira biaya sumber daya tenaga kerja lan anggaran proyek kasebut. Yen kita njupuk opsi kanggo aplikasi praktis saka model fleksibel, sing paling misuwur ing antarane wong-wong mau Extreme Programming (XP).

XP adhedhasar rapat singkat anggota tim sing ditindakake saben dina, lan rapat reguler (seminggu utawa kurang). Ing rapat umum saben dina (standup saben dina) biasane dibahas:

  • asil karya saiki;
  • dhaptar tugas sing kudu dirampungake saben anggota tim;
  • kangelan ditemoni lan cara kanggo ngatasi.

Manifesto

Agile minangka arah kabeh ing pangembangan, mula aturan kanggo nggarap kasebut diumumake ing dokumen khusus - Manifesto Agile. Iki kalebu praktik lan prinsip sing kudu ditindakake tim.

Manifesto Agile kasusun saka 4 gagasan dhasar lan 12 prinsip.

Gagasan Utama:

  • kolaborasi antarane pangembang luwih penting tinimbang alat;
  • versi produk sing digunakake luwih dhisik tinimbang dokumentasi;
  • pangerten bebarengan antarane tim lan pelanggan luwih penting tinimbang syarat kontrak;
  • Rencana asli tansah bisa diganti yen perlu.

Kanggo 12 prinsip Agile, ing ngisor iki:

  • prioritas utama yaiku selaras karo program rampung karo pangarepan pelanggan;
  • ganti kahanan diijini ing tahap apa wae, sanajan ing tahap pungkasan pembangunan (yen bisa nambah kualitas lan daya saing piranti lunak);
  • pangiriman reguler versi produk piranti lunak (saben 14 dina, sasi utawa saben wulan);
  • kunci sukses yaiku interaksi biasa antarane pelanggan lan pangembang (luwih becik saben dina);
  • proyèk kudu dibangun ing antarane wong-wong sing kasengsem ing wong-wong mau, wong-wong mau kudu kasedhiya karo kahanan sing perlu kanggo karya lan kabeh jinis support;
  • cara paling apik kanggo nuduhake informasi ing tim yaiku rapat pribadi;
  • versi piranti lunak sing digunakake minangka indikator kemajuan sing paling apik;
  • kabeh pemangku kepentingan kudu bisa njaga kacepetan kerja sing dikarepake sajrone proses pangembangan piranti lunak;
  • dandan teknis lan desain apik nambah keluwesan;
  • iku penting kanggo tetep prasaja lan ora over-nggawe;
  • asil paling apik dipikolehi saka tim sing bisa ngatur dhewe;
  • anggota tim kudu ajeg mikir babagan cara kanggo nambah efisiensi kanthi ngganti alur kerja.

Miturut manifesto Agile, proses pangembangan piranti lunak sing apik langsung gumantung marang wong sing melu proses iki. Kanggo nindakake iki, sampeyan kudu ngatur interaksi kanthi efisien, nggawe tim sing paling teratur.

Metodologi

Ana uga sawetara metodologi ing Manifesto Agile sing nerangake nilai lan prinsip:

  • Modeling Agile;
  • Proses Unified Agile;
  • Metode Data Agile
  • Rapid Application Development (DSDM);
  • Proses Manunggal Esensial;
  • pemrograman ekstrem;
  • pangembangan fitur mimpin;
  • Njupuk Nyata;
  • OpenUP;
  • Scrum.

Agile Modeling minangka kumpulan prinsip, istilah, lan praktik sing nyepetake lan nyederhanakake pangembangan model lan dokumentasi piranti lunak.

Tujuan saka Agile Modeling yaiku kanggo nambah pemodelan lan dokumentasi. Penting kanggo dicathet yen iki ora kalebu coding, testing, utawa masalah sing ana gandhengane karo kontrol, penyebaran, lan dhukungan proyek. Nanging, metodologi iki kalebu review kode.

Agile Unified Process minangka metodologi sing nggampangake pangguna kanggo kira-kira (model). Biasane digunakake kanggo ngembangake piranti lunak komersial.

Metode Data Agile - sawetara metodologi sing padha ing ngendi kahanan pelanggan bisa ditindakake kanthi kerjasama sawetara tim.

DSDM - pendekatan iki beda-beda saka liyane ing, bebarengan karo pangembang, pangguna produk mangsa njupuk bagéyan aktif ing.

Pangembangan sing didorong fitur minangka metodologi pangembangan sing duwe watesan wektu: "saben fitur kudu ditindakake ora luwih saka rong minggu."

Perlu dipikirake yen kasus panggunaan cilik, bisa dianggep minangka fitur. Yen penting, mula kudu dipérang dadi sawetara fungsi.

Getting Real minangka metodologi iteratif ing ngendi antarmuka program dikembangake dhisik, lan mung banjur fungsine dikembangake.

OpenUP minangka cara pangembangan sing mbagi siklus proyek dadi patang tahap: wiwitan, panyulingan, konstruksi, lan serah terima.

Miturut prinsip Agile, preduli saka durasi kerja, perlu kanggo nyedhiyakake kabeh pemangku kepentingan lan anggota tim kanthi cara kanggo kenal lan nggawe keputusan. Thanks kanggo iki, bisa ngontrol kahanan kanthi efektif lan ngevaluasi asil penengah ing wektu. Rencana proyek nemtokake siklus urip, lan asil pungkasan kudu dianggep minangka rilis stabil saka aplikasi kasebut.

Kanggo Scrum, ngatur aturan kanggo ngatur proses pangembangan lan ngidini sampeyan ngetrapake praktik coding sing ana kanthi kamungkinan nyetel kahanan utawa nggawe owah-owahan. Nggunakake metodologi iki ngidini sampeyan ndeleng lan ngilangi panyimpangan saka asil sing dikarepake ing tahap awal pangembangan.

Ayo ndeleng iki kanthi luwih rinci ...