Blog.hr

Ljudi, a ne alati...


Quantitative Software Management izradili su studiju o najboljim i najgorim razvojnim softverskim projektima. Izvedba projekata najboljih u klasi je 3.37 puta kraća i 7.48 puta jeftinija od onih najgorih. Od četiri glavna faktora, o kojima ovise rezultati, samo se jedan odnosi na alate i tehnologiju u kojima se projekti izvode, i on je rangiran kao 3. po važnosti. Najvažniji su ljudi koji dobro vladaju potrebnim vještinama, efikasno koriste alate s kojima rade, a cijeli projekt je dobro upravljan. Developeri koji razvijaju najbolje projekte imaju sposobnost kontroliranja promjena u zahtjevima. Upravu tu sposobnost kontroliranja promjena smatraju ključnom za uspješnost projekta.

Developeri su podcijenjeni u dosta velikim broju domaćih poduzeća, naročito je to slučaj tamo gdje vodeće strukture nisu svjesne složenosti razvoja softverskog projekta. Razvoj aplikacija nije kopanje kanala. Ako uzmeš veći broj radnika i natjeraš ih da rade prekovremeno, kanal će prije biti iskopan. Povećanje broja developera i tjeranje na prekovremeni rad neće dati isti učinak. Najvjerojatnije će se dogoditi da projekt još više kasni, a broj grešaka u njemu će se početi strahovito povećavati.

Velik broj poduzeća, uglavnom se radi o manjim, privatnim tvornicama programa, zanemaruje 'programiranje prije programiranja' . Tako je proces analize zahtjeva i projektiranja nazvao jedan učesnik news grupe posvećene programiranju. Ta njegova definicija pokazuje koliko je njegovo znanje o cjelokupnom procesu razvoja neke računalne aplikacije. Nadam se da dotični nema završen neki od informatičkih fakulteta. A možda i ima. Možda je kolegij na kojem se obrađivao razvoj softverskih projekata bio suhoparan, nezanimljiv i bez dodirnih točaka s praksom. A možda takvo nešto uopće nije ni imao. Pretpostavljam da se ipak radilo o nekom kućnom ili tečaj-programeru.

Nedostatak učinkovite metodologije i izostanak cijele faze projektiranja uobičajen je u domaćim tvornicama programa. Ali zato je prisutan kult alata. Dosta često je mišljenje da će se stvari popraviti ukoliko se izabere pravi alat. I kad se onda i nabavi 'pravi i jedini' alat i kad i dalje stvari nastave 'štekati', onda se nastave nabavljati dodaci za te alate, crne kutije koje kao nešto rješavaju, a obično donose i dodatne probleme. Rijetki je slučaj da devloperi imaju mogućnost detaljnog upoznavanja s alatom, najčešće je to na brzinu, pa u novom alatu nastave raditi na stari način.

Ali i s dobrim alatom loš developer je i dalje loš developer pa će proizvod njegovog rada biti lošiji nego što je to slučaj s dobrim developerom koji će i iz lošeg alata izvući maksimum i napraviti dobar proizvod.

Ljudi su ti koji čine razliku.