Unapređenje metoda za procenu napora u softverskim projektima
Enhancing methods for effort estimation in software projects
Author
Popović, Jovan M.Mentor
Bojić, DraganCommittee members
Milutinović, VeljkoStarčević, Dušan
Metadata
Show full item recordAbstract
Procena napora potrebnog da se implementira softverski sistem je jedan od najtežih ali i
najbitnijih zadataka koji se postavlja pred softverske timove. Procena napora je često
ključni faktor koji će odrediti da li će projekat početi, pod kojim ograničenjima će se raditi
i da li će se uopšte uspešno završiti i koristiti. Realnost je da se procene često vrše na
osnovu nedovoljno definisanih zahteva pomoću različitih heuristika, pretpostavki i
iskustava, pri čemu se za ograničeno vreme traže što je moguće bolje procene.
I pored značajnog napretka u različitim oblastima softverskog inženjerstva tokom
poslednjih decenija, procene napora se uglavnom i dalje svode na subjektivne procene
timova ili eksperata u nekoj oblasti sa greškama procene koje često nisu zadovoljavajuće.
Globalne statistike govore da se samo trećina softverskih projekata uspešno završi, trećina
se završi uz probijanje budžeta i rokova, dok trećina projekata propadne. Jedan od glavnih
razloga za ovakve loše rezultate su ne...dovoljno dobre procene napora.
Cilj ovog rada je analiza postojećih metoda procene i predlaganje novih metoda kojima
se procene napora mogu olakšati i poboljšati. Osnovna ideja koja će biti predstavljena u
radu je mogućnost uvođenja novih predikcionih modela i tehnika kojima će se postojeće
metode poboljšati. U radu će biti predstavljeni predlozi rešenja za unapređenje postojećih
metoda procene kao i konkretni rezultati koji se mogu dobiti primenom tih rešenja na
realnim softverskim projektima. Unapređenja se svode na identifikaciju parametara
kojima se mogu opisati projekti koji najviše utiču na napor potreban da se implementira
projekat, kao i zavisnosti među parametrima i naporom.
Estimating the effort required to implement the software system is one of the most
difficult, but also the most important tasks in software engineering. Effort estimate is
often a key factor that will indicate whether the project will begin, under which
restrictions will be implemented and would it be successfully completed and used. The
reality is that the estimates are often made based on the incomplete requirements using
various heuristics, assumptions and experience, where best possible estimates are
required in a limited timeframe.
Besides significant advances in various domains of software engineering in recent
decades, effort estimation methods are mostly based on the subjective assessment by the
project teams or experts in a certain field, with the effort estimate errors often higher than
the expected. Global statistics show that only one third of software projects is successfully
concluded, one third is not finished within the budget and deadlines, while the rest of
projects f...ail. One of the main causes for these results are inaccurate effort estimates.
The aim of this thesis is to analyze the existing effort estimation methods and propose
new methods that can improve effort estimation. The basic idea that will be presented in
the thesis is the usage of new models and techniques that will improve the existing effort
estimation methods. In the thesis, proposals for the improvement of existing assessment
methods and concrete results that can be obtained using these solutions to real software
projects will be presented. Improvements are confined to the identification of project
parameters describing projects that influence the effort the most, as well as determining
dependencies between the parameters and the effort.