Terminologi lan Definisi Agile

Tes Ditampa

Tes resmi sing ditindakake kanggo nemtokake manawa ana sistem sing memenuhi kriteria panrima lan supaya pelanggan bisa nemtokake manawa bakal nampa sistem kasebut.

Metodologi Pangembangan Piranti Lunak Agile


Pangembangan piranti lunak sing lincah negesake akeh babagan kolaborasi, responsif kanggo pangowahan, lan pengurangan sampah sajrone siklus pembangunan. Pangembangan piranti lunak tangkas fokus ing kode supaya gampang, tes asring, lan ngirim bit fungsi aplikasi yen wis siyap.

Prinsip tangkas sing penting yaiku ngirim piranti lunak sing bisa diluncurake (kanthi potensial) sawise saben pengulangan.


Pangantenan Backlog



Dandan backlog minangka proses nambah crita pangguna anyar menyang backlog, prioritas maneh crita sing ana yen dibutuhake, nggawe perkiraan, lan dekonstruksi crita sing luwih gedhe dadi crita utawa tugas sing luwih cilik. Tinimbang ngresiki backlog kanthi sporadis sajrone pengulangan, tim bisa uga nganakake sesi ngresiki backlog sapisan saben pengulangan.

Ngilangi Mbangun

Nalika pangembang nambahake perubahan ing repositori kode sumber sing nyebabake kegagalan proses pambangunan sabanjure, pangembang wis 'ngrusak pembangunan'.


Kudu dadi komitmen tim supaya ora ngrusak pembangunan amarga bakal nyuda pembangunan lan bisa dadi hambane pangembang liyane. Nalika pembangunan rusak, tim pangembangan kudu njupuk tindakan langsung kanggo ndandani pembangunan.

Mbangun rusak yen proses pambangunan ora bisa rampung amarga ana sebab, kalebu (nanging ora diwatesi) gagal nyusun, nyusun kanthi peringatan sing ora bisa ditampa, utawa gagal tes otomatis.

Proses Mbangun / Mbangun Pipa

Proses pambangun utawa pambangunan pipa, yaiku proses sing crita wiwit didhisiki nganti produksi, biasane ngliwati tahap lan priksa sing beda kanggo njamin kualitas.


Pipa konstruksi nemtokake alur kerja kanggo pangiriman piranti lunak lan apa sing kedadeyan ing saben tahap.

Bagan Burndown

Grafik sing nampilake total jam tugas saben dina. Iki nuduhake manawa tim ngadeg babagan ngrampungake tugas sing wis setya ing sprint. Sumbu X nggambarake pirang-pirang dina sajrone sprint, dene sumbu Y isih ana upaya.

Pitik


Ing scrum, pitik minangka tembung slang sing digunakake kanggo wong sing kepengin dadi proyek nanging ora duwe tanggung jawab kanggo nggarap tugas ing pengulangan aktif. Dheweke bisa uga nonton rapat tim nanging ora bisa milih utawa ngobrol.

Integrasi Terus-terusan

Continuous Integration (CI) minangka praktik Pemrograman eXtreme (XP) ing ngendi anggota tim pangiriman asring nggabungake gaweyane (kayata saben jam, utawa paling ora sapisan saben dina).

Saben integrasi diverifikasi dening build otomatis, sing uga nindakake tes, kanggo ndeteksi kesalahan integrasi kanthi cepet lan otomatis. Tujuan utama CI yaiku nyingkiri apa sing umume diarani integrasi utawa gabungan neraka.


Tim Salib Fungsional

Tim kalebu anggota kanthi kabeh katrampilan fungsional lan spesialisasi (asring diarani multi-trampil) sing dibutuhake kanggo ngrampungake proyek wiwit wiwitan nganti pungkasan.

Pelanggan

Pelanggan biasane ditemtokake minangka panampa utawa pangguna produk. Pelanggan bisa uga internal utawa eksternal kanggo organisasi. Pelanggan bisa uga siji wong, departemen, utawa klompok gedhe.

Pelanggan internal kadang diarani 'Bisnis.'

Standup Saben Dina

Rapat tim saben dina biasane digawe esuk kanggo menehi update status kanggo anggota tim. Rapat biasane dijadwalake nganti 5-15 menit, lan diadegake kanggo ngelingake wong supaya rapat kasebut tetep ringkes lan mesthi wae.

Definisi Rampung (DoD)

Kriteria kanggo nampa karya wis rampung. Nemtokake kritéria kasebut minangka tanggung jawab kabeh tim, kalebu bisnis. Umume, ana telung level 'Rampung' (uga dikenal minangka Rampung-Rampung-Rampung):

  • Rampung: Dikembangake, mbukak kothak pangembang
  • Rampung: Diverifikasi kanthi mbukak tes unit, maneh kode, lsp.
  • Rampung: Divalidasi minangka kualitas sing bisa dikirim kanthi tes fungsional, ulasan, lsp.

Kriteria sing tepat kanggo apa sing diarani 'Rampung' beda-beda kanggo nyukupi kabutuhan tartamtu saka macem-macem organisasi lan inisiatif.

Epik

Crita pangguna sing gedhe banget lan pungkasane dadi crita cilik. Epik asring digunakake minangka placeholder kanggo ide anyar lan crita sing gegandhengan sing bakal dikembangake ing sprint sabanjure.

Crita epik mbantu tim pangembangan Agile kanthi efektif ngatur lan ngresiki produke.

Estimasi

Proses sarujuk babagan pangukuran ukuran crita utawa tugas ing backlog produk. Ing proyek sing tangkas, prakiraan ditindakake dening tim sing tanggung jawab kanggo ngirim karya, biasane nggunakake game perencanaan utawa ngrancang poker.

Pemrograman Ekstrim

Metodologi pangembangan piranti lunak sing lincah sing dimaksudake kanggo ningkatake kualitas piranti lunak lan responsif kanggo ngganti syarat pelanggan.

XP nyengkuyung 'rilis' sing asring ditindakake ing siklus pangembangan cendhak, sing dimaksudake kanggo ningkatake produktivitas lan ngenalake titik pamriksa sing bisa ditindakake syarat-syarat pelanggan anyar.

Unsur liyane kanggo program ekstrem kalebu: program pasangan, review kode ekstensif, tes unit, Integrasi Terus-terusan kanggo sawetara jeneng.

Fitur

Fungsi utawa atribut bisnis sing koheren kanggo produk utawa sistem piranti lunak. Fitur biasane kalebu akeh persyaratan rinci (unit). Fitur siji biasane dileksanakake liwat pirang-pirang crita.

Fitur bisa uga fungsi utawa non-fungsi; dheweke nyedhiyakake dhasar kanggo ngatur crita.

Urutan Fibonacci

Urutan nomer ing endi nomer sabanjure dijupuk kanthi nambah loro loro sadurunge (kayata 1, 2, 3, 5, 8, 13, 21, 34…). Urutan kasebut digunakake kanggo crita ukuran ing teknik prakiraan Agile kayata ngrancang poker.

Impediment

Apa wae sing ngalangi anggota tim supaya ora bisa kerja kanthi efisien bisa dadi hambatan. Saben anggota tim duwe kesempatan kanggo ngumumake alangan nalika rapat saben dina.

Pakaryan ScrumMaster yaiku supaya alangan bisa dicopot sanalika bisa dadi tim bisa terus produktif.

Iterasi

Periode (durasi saka 1 minggu nganti 2 wulan) sajrone tim pangembangan Agile ngasilake tambahan piranti lunak sing wis rampung. Kabeh sistem fase siklus urip (syarat, desain, kode, lan tes) kudu dirampungake sajrone iterasi banjur dipratelakake supaya iterasi bisa ditampa kanthi sukses.

Ing wiwitan pengulangan, bisnis utawa pamilik produk ngenali potongan (sabanjure prioritas utama) karya sing bakal ditindakake tim. Tim pangembangan banjur ngramal level gaweyan lan komitmen kanggo ngrampungake segmen kerja sajrone pengulangan.

Kanban

Kanban minangka alat sing asale saka manufaktur sing ramping lan digandhengake karo cabang praktik tangkas sing diarani Lean Software Development. Kanban ngencengi pinten-pinten kemajengan sing diidini kedadeyan ing wektu sing padha.

Bedane utama antara Kanban lan Scrum yaiku Scrum mbatesi kerja ing proses sprint lan Kanban mbatesi proses sing digunakake kanthi matesi sepira kerjane ing siji wektu (kayata tugas N utawa crita N).

Pangembangan Piranti Lunak Lean

Pangembangan piranti lunak Lean utawa mung Lean fokus kanggo nyuda sampah lan ngoptimalake stream nilai produksi piranti lunak.

Produk Minimal Minimal (MVP)

Produk kerja paling cilik sing bisa dibangun lan dites lan dikirim ing wektu tartamtu sing menehi nilai kanggo pangguna.

Pemasangan Pasangan

Teknik pangembangan piranti lunak sing lincah ing endi loro programer bisa kerja bareng ing siji workstation. Siji jinis kode nalika liyane mriksa saben baris kode nalika diketik. Wong sing ngetik diarani driver. lan wong sing mriksa kode kasebut diarani pengamat utawa navigasi. Kaloro programer asring ngganti peran.

Babi

Sapa sing tanggung jawab nindakake tugas ing pengulangan aktif. Kosok baline karo Ayam. Babi melu aktif ing proyek kasebut.

Poker ngrancang

Perencanaan Poker minangka teknik adhedhasar konsensus kanggo ngira-ngira, umume digunakake kanggo ngira gaweyan utawa ukuran tugas ing pangembangan piranti lunak. Tim nggunakake seri fibonacci utawa ukuran Kaos kanggo ngira crita sajrone game poker ngrancang.

Produk

Secara umum, produk nuduhake koleksi fitur sing terintegrasi lan dikemas dadi rilis piranti lunak sing menehi rega kanggo pelanggan utawa pasar.

Pamilik Produk

Pamilik Produk minangka salah sawijining peran utama ing Scrum. Tanggung jawab Pamilik Produk kalebu:

  • Nggawe, ngrawat, lan komunikasi karo sesanti produk
  • Nggawe lan nggawe tim pangembang supaya paling migunani kanggo para pelanggan
  • Ngawasi proyek kanthi target ROI lan visi investasi
  • Nggawe keputusan babagan kapan nggawe rilis resmi

Backlog Produk

Backlog produk kaya dhaptar pesenan fitur sing pengin dikirim bisnis ing jangka panjang. Iki minangka koleksi crita lan tugas sing bakal ditindakake tim ing sawetara wektu mbesuk.

Pamilik Produk njaga dhaptar backlog produk iki miturut prioritas lan kabutuhan bisnis. Barang sing ana ing backlog kudu nuduhake roadmap bisnis.

Nguripake maneh

Ngganti kode piranti lunak sing wis ana supaya bisa nambah desain sakabehe. Refactoring biasane ora ngganti prilaku sing bisa dideleng saka piranti lunak; nambah struktur internal.

Rilis Rilis

Rencana rilis minangka jadwal ngeculake piranti lunak menyang produksi. Rencana rilis khas kalebu fitur utama sing bakal dikirim, uga tanggal rilis sing cocog.

Dipikir maneh

Rapat wektu sing digawe ing pungkasan sprint ing endi tim mriksa proses kanggo nemtokake apa sing bakal sukses lan apa sing bisa ditambah. Retrospektif minangka kunci kanggo perbaikan terus-terusan.

Asil positif kanggo retrospektif yaiku ngenali siji utawa rong item tumindak prioritas utama sing pengin dikerjakake tim kasebut ing pengulangan utawa rilis sabanjure.

Scrum

Scrum minangka kerangka kerja kanggo ngembangake produk piranti lunak sing kompleks kanthi cara iteratif lan tambahan lan minangka kerangka kerja Agile sing paling misuwur.

Scrum kalebu serangkaian iterasi cekak - diarani sprint - masing-masing diakhiri karo pangiriman tambahan piranti lunak sing digunakake.

Tim Scrum

Tim scrum minangka klompok sing fungsional lan ngatur dhewe sing tanggung jawab ngirim piranti lunak kasebut.

Tim scrum kalebu wong multi-trampil sing ngerti persyaratane pelanggan lan nganakake desain piranti lunak, coding lan tes. Keahlian tambahan (kayata desain UI, kegunaan, lan liya-liyane) uga kalebu.

Tim scrum tanggung jawab kanggo kabeh komitmen lan asil kerja.

ScrumMaster

ScrumMaster tanggung jawab kanggo njaga proses Scrum lan kesehatan tim umum. ScrumMaster njamin manawa tim wis fungsional lan produktif kanthi ngilangi alangan sing bisa ngganggu kemajuan tim. ScrumMaster uga ngatur upacara Scrum.

Lunjakan

Crita utawa tugas sing dienggo mangsuli pitakon utawa nglumpukake informasi, tinimbang ngetrapake fitur produk, crita pangguna, utawa syarat.

Kadhangkala crita pangguna digawe sing ora bisa diramalake nganti tim pangembangan nindakake tugas nyata kanggo ngrampungake pitakon teknis utawa masalah desain. Solusine yaiku nggawe 'lonjakan,' yaiku crita sing tujuane menehi wangsulan utawa solusine.

Sprint

Ing pangembangan produk, sprint minangka wektu tartamtu sajrone karya tartamtu kudu dirampungake lan siyap kanggo ditinjau. Dawa sprint khas biasane 2 minggu lan biasane ora luwih saka 4 minggu.

Sprint Backlog

Dhaptar fitur, crita pangguna utawa tugas sing ditarik saka backlog produk kanggo dipertimbangkan kanggo rampung sajrone sprint sing bakal teka. Fitur backlog produk lan crita pangguna dipérang dadi tugas kanggo mbalikake sprint sajrone rapat perencanaan sprint.

Grooming Crita

Ing sesi ngresiki crita, rincian crita pangguna bisa dingerteni. Kriteria Penerimaan ditulis lan dijelaskan. Crita uga diramalake ing tahap iki.

Sasaran saka sesi iki yaiku kanggo mesthekake yen kabeh wong sing melu ngripta lan nyoba crita nuduhake pemahaman umum babagan konteks crita sadurunge miwiti crita kasebut.

Sesi ngresiki crita biasane dianakake sprint tengah kanggo sprint ing ngisor iki supaya tim ngerti beban kerja kanggo sprint sabanjure.

Peserta yaiku tim scrum, master scrum lan pamilik produk.

Perencanaan Sprint

Sesi perencanaan Sprint dianakake sadurunge wiwitan sprint anyar. Ing sesi iki, tim ngenali tugas sing kudu ditindakake lan mutusake pira crita sing bisa ditindakake kanggo sprint sing bakal teka.

Sadurunge sesi perencanaan sprint, crita kasebut kudune diandharake lan diramalake sajrone sesi Grooming Cerita, saengga ora ana wektu sing boros sajrone ngrancang sprint.

Peserta minangka master scrum lan tim scrum.

Crita Panganggo

Crita Panganggo (a.k.a Crita) bisa dianggep minangka syarat, fitur sing duwe sawetara nilai bisnis.

Crita nggambarake karya sing kudu dirampungake kanggo ngirim fitur kanggo produk. Crita minangka unit komunikasi, perencanaan, lan negosiasi dhasar antarane Tim Scrum, Pamilik Bisnis lan Pamilik Produk.

Crita kalebu unsur ing ngisor iki:

  • Katrangan, biasane ing babagan bisnis
  • Ukuran, kanggo estimasi kasar, umume ditulis ing crita (kayata 1, 2, 3, 5)
  • Siji utawa luwih Kriteria Penerimaan, menehi gambaran cekak kepiye crita kasebut bakal divalidasi

Tugas

Tugas minangka deskripsi saka karya nyata sing ditindakake individu utawa pasangan supaya bisa ngrampungake crita. Iki minangka unit kerja sing bisa diatur, bisa ditindakake, lan bisa dilacak. Biasane, ana sawetara tugas saben crita.

Utang Teknis

Istilah sing digawe dening Ward Cunningham kanggo njlentrehake kewajiban sing ditindakake organisasi piranti lunak nalika milih desain utawa pendekatan konstruksi sing kepenak ing jangka pendek nanging nambah kerumitan lan larang regane ing jangka panjang.

Kaos Ukuran

Cara ngramal karya sing dibutuhake kanggo ngrampungake crita kanthi ukuran Kaos, yaiku Cilik (S), Sedheng (M), Gedhe (L) utawa X-Large (XL)

Timebox

Timebox minangka periode wektu sing ditemtokake dawa kanggo entuk sawetara tujuan. Ing pangembangan tangkas, iterasi lan sprint minangka conto timebox sing mbatesi karya ing proses lan kemajuan proses tambahan.

Kacepetan

Kecepatan ngukur sepira kerja tim sing bisa ngrampungake kanthi pengulangan. Kacepetan asring diukur ing crita utawa crita. Kecepatan uga bisa ngukur tugas sajrone jam utawa unit sing padha.

Kecepatan digunakake kanggo ngukur suwene wektu kanggo tim tartamtu kanggo ngasilake asil mbesuk kanthi extrapolating adhedhasar kinerja sadurunge.

Bisa Dienggo

Pakaryan apa wae sing durung rampung, nanging wis ngasilake biaya modal kanggo organisasi. Piranti lunak sing wis dikembangake nanging ora dikirim menyang produksi bisa dianggep bisa digunakake.