Estimate — isang kwantitatibong pagtatasa ng pagsisikap na kinakailangan para magsagawa ng isang gawain, bumuo ng functionality, o maisakatuparan ang isang proyekto sa kabuuan. Sa mobile development, ginagamit ang mga estimate para sa pagpaplano ng sprint, pagtukoy ng gastos, at pamamahala ng inaasahan ng kliyente. Ayon sa datos ng Project Management Institute, 2024, ang error sa estimate sa mga unang yugto ng proyekto ay maaaring umabot sa 100%, na ginagawang isa sa pinakamahirap na disiplina ang estimate sa development.
Mga Pangunahing Punto
Estimate (mula sa Ingles na estimate — tantiya) — paghula ng dami ng oras o pagsisikap na kailangan para magsagawa ng isang gawain. Sa mobile development, ang mga estimate ay ipinapahayag sa oras, araw, story point, o katumbas na pera. Ang layunin ng estimate ay hindi tumpak na hula, kundi pagbawas ng kawalan ng katiyakan para sa paggawa ng desisyon.
Estimate — isang hula na may margin ng error. Commitment — isang pangako na gagawin ang gawain sa isang tiyak na petsa. Ang pagkakaiba ay kritikal: sinasabi ng estimate na “malamang 5 araw”, ang commitment — “gagawin namin sa 5 araw”. Madalas nalilito ng mga manager ang mga konseptong ito, ginagawang deadline na walang karapatang magkamali ang estimate.
Ang proseso ng pag-estimate ay kasinghalaga ng resulta nito. Kapag tinalakay ng koponan ang pagtatasa ng isang gawain, lumalabas ang mga nakatagong pangangailangan, dependencies, at panganib. Kahit na hindi tumpak ang huling bilang, ang talakayan ay nagbibigay ng pag-unawa sa gawain sa lahat ng kalahok. Kaya naman ang mga kolektibong paraan ng pagtatasa (Planning Poker) ay mas epektibo kaysa sa indibidwal.
Mayroong ilang paraan ng estimate, bawat isa ay angkop para sa iba't ibang yugto ng proyekto at antas ng detalye. Ang pagpili ng paraan ay depende sa magagamit na datos at kinakailangang katumpakan.
| Paraan | Uri | Katumpakan | Kailan gagamitin |
|---|---|---|---|
| Planning Poker | Eksperto, kolektibo | Mataas (sa sprint) | Pagtatasa ng mga gawain para sa sprint |
| T-Shirt sizing | Eksperto, mabilis | Katamtaman | Paunang pagtatasa ng mga epiko |
| Analog estimate | Batay sa kasaysayan | Katamtaman | Mga katulad na gawain sa nakaraan |
| Three-point (PERT) | Probabilistiko | Higit sa katamtaman | Mga gawaing may mataas na kawalan ng katiyakan |
| Parametric | Batay sa pormula | Depende sa datos | Mga homogenous na masusukat na gawain |
Planning Poker — ang pinakasikat na paraan ng pagtatasa sa Agile. Bawat developer ay tumatanggap ng baraha na may mga numero ng Fibonacci (1, 2, 3, 5, 8, 13, 21). Pagkatapos ng talakayan ng gawain, lahat ay sabay-sabay na nagpapakita ng baraha. Kung magkaiba ang mga estimate — ipapaliwanag ng mga developer na may pinakamababa at pinakamataas na estimate ang kanilang lohika, pagkatapos ay magkakaroon ng muling pagboto. Ang paraan ay nag-aalis ng impluwensya ng mga awtoridad at nagbibigay ng mas tumpak na estimate.
T-Shirt sizing — magaspang na estimate ayon sa laki ng damit: XS, S, M, L, XL, XXL. Ang paraan ay ginagamit para sa mabilis na pagtatasa ng malalaking gawain (epiko) sa mga unang yugto, kapag hindi pa alam ang mga detalye. Mamaya, ang bawat ganitong gawain ay didecompose at eestimate sa Planning Poker. Ang T-Shirt sizing ay tumatagal ng 5-10 minuto bawat gawain, ngunit nagbibigay lamang ng pagkakasunud-sunod ng laki.
PERT ay gumagamit ng tatlong estimate: optimistiko (O), pessimistiko (P), at pinaka-malamang (M). Ang huling estimate ay kinakalkula gamit ang pormula: (O + 4M + P) / 6. Ang paraan ay isinasaalang-alang ang kawalan ng katiyakan at nagbibigay ng mas makatotohanang resulta kaysa sa iisang estimate. Ang PERT ay lalong kapaki-pakinabang para sa mga gawaing may mataas na panganib o bagong teknolohiya.
Katumpakan ng estimate ay depende sa yugto ng proyekto at dami ng alam na impormasyon. Kung gaano kaaga ginawa ang pagtatasa, mas malaki ang margin ng error — ito ay normal at dapat isaalang-alang sa pagpaplano.
Konus ng Kawalan ng Katiyakan (Cone of Uncertainty) — isang modelo na naglalarawan kung paano bumababa ang margin ng error ng estimate habang umuusad ang proyekto. Sa yugto ng konsepto, ang margin ng error ay 400% (ang gawain ay maaaring tumagal ng 1 hanggang 4 na buwan). Sa panahon ng sprint — 20% (1-1.2 buwan). Ang kamalayan sa modelong ito ay tumutulong na huwag humingi ng tumpak na mga estimate sa mga unang yugto.
Relatibong pagtatasa (sa story point) ay mas tumpak kaysa absolutong pagtatasa (sa oras), dahil mas mahusay ang mga tao sa paghahambing ng mga gawain kaysa sa pagtatantiya ng oras. “Ang gawaing ito ay dalawang beses na mas kumplikado kaysa doon” — mas mapagkakatiwalaang paghatol kaysa “ang gawaing ito ay tatagal ng 8 oras”. Ang mga relatibong estimate ay hindi nakadepende sa partikular na developer at pinapanatili ang katumpakan kapag nagbago ang tagapagsagawa.
Ang katumpakan ng estimate ay maaaring pagbutihin sa pamamagitan ng sistematikong paraan, kolektibong talakayan, at pagsusuri ng mga nakaraang pagkakamali. Mayroong ilang napatunayang kasanayan.
Bawat gawaing naestimate ng higit sa 2 araw ay dapat idecompose sa mga sub-gawain. Prinsipyo: kung ang isang gawain ay hindi maaaring i-estimate nang may 50% katumpakan, ibig sabihin ito ay masyadong malaki. Hatiin ito sa mga hakbang na nauunawaan at naeestimate. Pagkatapos ng decomposition, ang kabuuang estimate ay madalas na 1.5-2 beses na mas malaki kaysa sa orihinal.
Magtago ng kasaysayan ng mga estimate at ihambing sa aktwal na gastos. Halimbawa: “ang mga gawaing naestimate sa 3 story point ay karaniwang tumatagal ng 4 na araw, hindi 2”. Gamitin ang velocity ng koponan para sa paghula: kung ang koponan ay nakatatapos ng 20 story point bawat sprint, huwag magplano ng 30. Ang pagsusuri ng katumpakan ng mga nakaraang estimate ay ang pinakamahusay na pagsasanay para sa kasanayan sa pag-estimate.
Pag-angkla — isang sikolohikal na epekto kung saan ang unang binigkas na estimate ay nakakaimpluwensya sa lahat ng kalahok. Upang maiwasan ang pag-angkla, sa Planning Poker lahat ay nagpapakita ng baraha nang sabay-sabay, hindi isa-isa. Pagkakalibrate — regular na pagtutugma ng mga estimate sa katotohanan: pagkatapos ng 10-20 sprint, natututo ang koponan na mag-estimate nang mas tumpak dahil sa feedback.
Bawat gawain ay naglalaman ng nakatagong panganib: pagkakasakit ng developer, problema sa API, pagbabago ng mga pangangailangan. Magdagdag ng risk-adjusted factor sa estimate: para sa mga gawaing may mataas na panganib — multiplier na 1.5-2, may mababang panganib — 1.1-1.2. Ipakita nang malinaw sa kliyente kung anong mga panganib ang isinaalang-alang at kung paano ito nakakaapekto sa mga deadline.
Ang mga pagkakamali sa estimate ay nauulit sa karamihan ng mga koponan, anuman ang kanilang kapanahunan. Ang kaalaman sa mga pagkakamaling ito ang unang hakbang sa pagwawasto sa mga ito.
Pinakakaraniwang pagkakamali — estimate batay sa pinakamagandang senaryo: “kung magiging perpekto ang lahat, gagawin namin sa 3 araw”. Sa katotohanan, walang perpekto: mga bug, mga tanong tungkol sa mga pangangailangan, mga nakadependeng gawain. Solusyon: mag-estimate batay sa pinaka-malamang na senaryo, hindi sa optimistiko. Gamitin ang PERT upang isaalang-alang ang pagkakaiba-iba.
Kapag sinabi ng manager na “kailangan bago ang Biyernes”, inaayos ng developer nang hindi namamalayan ang estimate sa deadline na iyon. Estimate sa ilalim ng presyon ay palaging mas mababa at humahantong sa pagkaantala. Solusyon: ang estimate ay dapat mauna sa deadline, hindi ang kabaligtaran. Una, nag-estimate ang koponan, pagkatapos magkasundo ang mga partido sa mga deadline.
Pagiging kumplikado ng gawain (gaanong mag-isip) at oras (gaanong gumawa) — magkaibang metrics. Ang isang gawain ay maaaring simple ngunit matagal (mag-code ng 10 screen). O kumplikado ngunit mabilis (maghanap ng bug sa legacy). Sa story point, karaniwang ang pagiging kumplikado ang naeestimate, at ang oras ay hinuhugot mula sa velocity ng koponan.
Ang developer ay hindi gumagawa ng 8 oras nang tuluy-tuloy sa isang gawain: mga pagpupulong, code review, pagtulong sa mga kasamahan, mga gawaing administratibo ay kumukuha ng 30-50% ng oras ng trabaho. Paglipat ng konteksto ay dapat isaalang-alang sa estimate: sa katotohanan, ang developer ay nagsusulat ng code 3-4 na oras bawat araw.
Mga Madalas Itanong
Development — isang malikhaing proseso na may mataas na kawalan ng katiyakan. Hindi tulad ng konstruksyon o pagmamanupaktura kung saan alam ang bawat hakbang, sa IT bawat gawain ay natatangi. Ang mga hindi alam na hindi alam (unknown unknowns) — pangunahing dahilan ng hindi katumpakan. Kahit ang isang may karanasang koponan ay nagkakamali sa 30-50% ng mga estimate. Ito ay normal at dapat isaalang-alang sa pagpaplano.
Story point ay mas mahusay para sa pagpaplano ng sprint dahil ang mga ito ay relatibo at hindi nakadepende sa tagapagsagawa. Oras ay kailangan para sa mga kontrata at panlabas na pag-uulat, ngunit hindi gaanong tumpak. Pinakamainam na kombinasyon: ang mga gawain ay ine-estimate sa story point, at ang mga deadline ay kino-convert sa pamamagitan ng velocity ng koponan sa mga araw ng kalendaryo.
Para sa mga gawaing may hindi pamilyar na teknolohiya, gamitin muna ang Spiko (pagsasaliksik sa limitadong oras). Pagkatapos ng pagsasaliksik, nauunawaan ng koponan ang pagiging kumplikado at makapagbibigay ng makatotohanang estimate. Magdagdag ng multiplier na 2-3 sa karaniwang estimate at maglaan ng 50% buffer para sa hindi inaasahang kahirapan.
Ipakita ang decomposition — hatiin ang gawain sa mga sub-gawain na may estimate ng bawat isa. Ipaliwanag kung saan binubuo ang oras: development, pagsubok, code review, dokumentasyon. Magmungkahi ng mga alternatibo: bawasan ang scope, pasimplehin ang functionality, o hatiin sa mga yugto. Huwag kailanman babaan ang estimate nang hindi binabago ang mga pangangailangan.
Muling pag-estimate ay kailangan kapag may bagong impormasyon tungkol sa gawain: natuklasan ang mga karagdagang pangangailangan, natagpuan ang teknikal na limitasyon, o nagbago ang priyoridad. Sa loob ng sprint, hindi muling ine-estimate ang mga gawain — ang pokus ay sa pagkumpleto. Sa pagitan ng mga sprint, ang backlog ay muling ine-estimate sa loob ng grooming.
Buod
Gagawa kami ng mobile application na turnkey
Gumagawa ang IT Sectr ng mga iOS at Android application para sa mga startup at negosyo mula noong 2017. Magpapayo kami sa iyo at magmumungkahi ng pinakamahusay na solusyon.
Basahin din