blog

Kako napraviti precizne "bottom-up" procene za vaše projekte web razvoja

Šta je to procena odozdo na gore i kako je koristiti da bi dobili najtačnije procene u industriji razvoja veb sajtova?

Šta je procena odozdo na gore i kako je koristiti da biste dobili najpreciznije procene u industriji veb razvoja?

Već smo razgovarali o tome kako 4 osnovne tehnike procene projekata mogu pomoći da dobijete preciznije procene za vaš projekat veb razvoja. Moja omiljena, koja se takođe pokazuje kao najpreciznija kada se pravilno koristi, je tehnika procene odozdo na gore. Šta je procena odozdo na gore i zašto je tako dobra?

Ukratko – procena odozdo na gore je proces u kojem rukovodilac projekta ili tim za razvoj prvo dekomponuje projekat na jedinice ili zadatke, a zatim nastavlja s dekomponovanjem tih na najmanje merljive delove. Nakon toga, svaki od ovih malih delova se procenjuje i kada su sve procene za datu jedinicu ili zadatak poznate, zbir tih delova čini procenu za celu jedinicu.

Možda se pitate zašto jednostavno ne proceniti celu jedinicu ili zadatak odmah ako je to poenta? E, ovde zaista vidite zašto je procena odozdo na gore najpreciznija tehnika od svih. Dekomponovanjem jedinice na najmanje delove takođe analizirate jedinicu detaljnije i primećujete delove koji su komplikovaniji i koji bi inače verovatno bili prenebregnuti. Takođe je veoma važno, primećujete delove ili funkcionalnosti koje nisu jasno dokumentovane. Dobar pokazatelj da nešto treba bolje dokumentovati je kada počnete da nagađate kako bi nešto trebalo da se ponaša.

Jedan vrlo jednostavan primer: pregledate dizajne i vidite pod-meniju zaglavlja veb stranice u proširenom stanju, ali nije dokumentovano da li bi trebalo da se proširi kada se pređe preko nje mišem ili na klik. Ovo je trenutak kada znate da deo dokumentacije nedostaje i da trebate tražiti pojašnjenje.

Identifikacija ovih problematičnih mesta je ono što većina drugih tehnika ne uspeva da uradi, ili ne radi dovoljno dobro. I upravo su ta problematična mesta ona koja oduzimaju najviše vremena za razvoj ili uzrokuju pauze kada započne faza izvršenja i primetite da nedostaje dokumentacija usred projekta.

Iako vrlo jednostavna po prirodi, procene odozdo na gore zahtevaju određeni nivo prethodnog iskustva na sličnim projektima. Ako nema dovoljno iskustva, nedostatak se delimično može nadoknaditi rezervom, ali to nikada neće biti precizno kao vešta procena.

Primer iz stvarnog sveta procene odozdo na gore

Pogledajmo kako bi iskusni front-end web developer pristupio proceni odozdo na gore za neprijavnu početnu stranicu (vidi sliku):


Šta imamo na ovoj stranici? Tu je zaglavlje. Ima šest sekcija, dve široke i četiri uže poluširoke sekcije. Nema podnožja, izgleda dovoljno jednostavno. Takođe, raspored stranice bi takođe bio jedna celina.

Da li ste primetili da smo upravo identifikovali tri jedinice ove stranice koje se takođe mogu pretvoriti u zadatke?

  1. Raspored
  2. Zaglavlje
  3. Unutrašnje sekcije (veće i manje, ali, u osnovi, vrlo slične i mogu se kombinovati)


Toplo preporučujemo da za ove jedinice kreirate zadatke i izmerite vreme razvoja provedeno na svakoj, možda koristeći softver za praćenje projekata/zadataka po izboru. Mi koristimo alat za upravljanje projektima Active Collab i visoko ga preporučujemo. Kasnije možete uporediti procene sa stvarnim vremenom potrebnim za završetak jedinice i, ako je potrebno, analizirati šta je pošlo po zlu sa vašom procenom kako biste mogli da prilagodite procene za slične jedinice u budućnosti.

Sada ćemo dekomponovati svaku od ovih jedinica. Počnimo sa rasporedom:

On nije responsivan u smislu da bi trebao da podržava veličine za mobilne telefone i tablete, ali pošto bi trebao da pokriva ceo ekran potrebno je koristiti procentualne vrednosti za elemente umesto piksela. Dakle, imali bismo zaglavlje u punoj širini na vrhu i omotač sadržaja koji možemo koristiti za druge elemente. U omotaču sadržaja možemo plivati: levo sve sekcije gde bi veće imale širinu 100% a manje 50%. Pretpostavljajući da koristite Grunt bojlerplatu kao naš Orange Boilerplate, može trajati oko 5 minuta da ga pokrenete, instalirate Node.js dependencies, još 5 minuta za postavljanje osnovnog LESS CSS rasporeda. Sajt koristi prilagođene fontove i nemamo web-font datoteke pa ih moramo samostalno pretvoriti iz generičke font datoteke i uvesti ih koristeći LESS CSS. To obično traje ne više od 10 minuta, ali ako postoji problem sa datotekom koju imamo, možda ćemo morati da razmotrimo alternative. Hajde da to učinimo 20 minuta.

Primetite da iako procena za ovu jedinicu neće biti visoka i može izgledati nevažno, podelom na delove upravo ste izvršili analizu svih stvari koje trebate da uradite da biste postavili web sajt. U suštini, upravo ste isplanirali posao koji trebate da obavite za ovu jedinicu. Sve to dok radite procenu. Uštedeli ste vreme u fazi izvršenja i identifikovali potencijalne probleme pre nego što ste napisali ijednu liniju koda. To je samo još jedna stvar koja je sjajna kod tehnike procene odozdo na gore.

Procena rasporeda završena: 30 minuta

Pređimo na sledeću jedinicu, zaglavlje:

Ima ponavljajuću pozadinu koju bismo morali da isečemo iz PSD-a jer dizajner to nije obezbedio kao zasebnu slikovnu datoteku (kao i obično). Takođe, moramo da isečemo logo i prilagođeno dugme za Facebook. Rad u Photoshopu sam će trajati 10 minuta. Logo i dugmad mogu biti apsolutno pozicionirani i trebali bi biti linkovi. Dakle, HTML i stilizacija bi ukupno trajali 5 minuta za oba. Meni ima stavke jednake širine i granice između koje bi mogle biti komplikovane. Neke od ovih takođe imaju podmenije, pa bi najbolje bilo koristiti ugnežđene ul > li elemente. To obično traje 10-20 minuta, ali hajde da kažemo 20 zbog granica i pozicioniranja podmenija. Podmeni je sličan i ima strelicu na vrhu pa hajde da to učinimo 20 minuta. Nemam pojma da li bi trebalo da se prikaže na dodir ili klik, hajde da proverimo to; ali to ne menja mnogo procenu. Kad malo bolje razmislim, stilizacija razmaka između stavki menija i veličina fonta bi zapravo mogla trajati još 20 minuta za meni i podmenije. Šta bi trebalo da radi dugme FB? Da li bi trebalo da voli web sajt što bi zahtevalo JS ili samo linkove do FB stranice? Nije dokumentovano.

Takođe smo isplanirali zaglavlje i identifikovali dva nedostajuća dela dokumentacije.

Procena zaglavlja završena: 1 sat 15 minuta

Sledeće, unutrašnja sekcija:

HTML je prilično jednostavan za ove, element h-nešto za naslov, p element za podnaslov i dugme. To neće trajati više od 20 minuta za popunjavanje teksta za svih šest sekcija. LESS CSS je druga priča. Moramo postaviti pokrivajuće pozadine za svaku (20 minuta), stilizovati fontove i dodati čudne i neuniformne granice na svim podnaslovima (to bi moglo trajati sat vremena). Tu je i prilagođeno dugme, koje će verovatno biti korišćeno i na drugim mestima, pa bismo trebali da ga učinimo ponovno upotrebljivim (30 minuta). Dugmad su samo linkovi, pa barem to ide lako. Prvo moramo da isečemo pozadinske slike iz Photoshopa, pa ide još 10 minuta tamo. Možemo iseći strelicu dugmeta kao SVG i napraviti ikone web-fonta koje ćemo verovatno koristiti i na drugim stranicama. To je 20 minuta.

Procena unutrašnjih sekcija: 1 sat 40 minuta

Dakle, za celu početnu stranicu imamo početnu procenu od 205 minuta. Imamo neke nedostajuće dokumentacije i ako računamo na nepredviđene probleme verovatno bi trebalo dodati 20% kontingencije. To je 205 * 1.2 = 246 minuta, što se zaokružuje na 4 sata konačna procena.

Nadam se da vam je ovaj stvarni primer pomogao da shvatite prednosti tehnika procene odozdo na gore. Ovo je idealan slučaj kada radite sa iskusnim web dev timom. Ako to nije slučaj, i dalje možete koristiti ovu tehniku. U tom slučaju preporučujem da je kombinujete sa tehnikom trostruke procene o kojoj smo govorili u našem prethodnom članku 4 osnovne tehnike procene projekata.

U suštini, proces je sličan, ali umesto da daje jednu procenu po delu, programer bi trebao dati tri – najbolji slučaj, najverovatniji i najgori slučaj procene. Najgora procena čini da programer razmisli o svim stvarima koje mogu poći po zlu sa stilizacijom, implementacijom JavaScript plugin-a ili slično. Psihološki – imajući slobodu da stavi bilo koji broj koji želi za najgori slučaj daje vam dodatni sloj tačnosti prilikom izračunavanja procene korišćenjem jedne od formula za trostruku procenu.

Traje duže ali dobro funkcioniše za poboljšanje tačnosti, posebno za složenije projekte. Pored korišćenja trostruke procene možda biste takođe trebali razmisliti o dodavanju većeg budžeta za kontingenciju kako biste računali na nepredviđene probleme.

Alate za trostruku procenu možete pronaći u našem prethodnom članku. Ako već niste, preporučujem da pročitate članak koji pokriva trostruku procenu i druge tehnike procene projekata koje bi mogle bolje odgovarati vašoj organizaciji ili fazi projekta od procene odozdo na gore.

Šta dalje?

Ako želite da dodatno unapredite svoje veštine procene projekata, pripremili smo obimnu elektronsku knjigu "Konačni vodič za uspešnu procenu projekata" koja će vas naučiti sve što treba da znate o alatima i tehnikama procene projekata.

Saznajte kako da postanete uspešniji u procesu procene projekata.

Tihomir Opacic

18.04.2024.

Hajde da razgovaramo o vašem projektu.

Pošaljite kratak pregled vašeg projekta, a mi ćemo vas kontaktirati kako bi zakazali poziv. Želimo da razumemo vaše potrebe i sa vama istražimo kako možemo da vam pomognemo u ostvarivanju vaših razvojnih ciljeva.

Tihomir Opacic

osnivač i direktor

Orange Hill