Disertační práce je zaměřena na výzkum v oblasti softwarového inženýrství specificky na získávání odhadu časového úsilí. Získávání přesnějších odhadů je jednou z kritických částí cyklu softwarového vývoje. Tato práce jako celek má přispět k vytvoření frameworku pro přesnější odhad tohoto úsilí pomocí metod symbolické regrese. V práci jsou řešeny zejména vlastnosti a nastavení tohoto nového frameworku, tak aby poskytoval zpřesnění odhadu časového úsilí. Byly řešeny otázky linearity mezi odhadem a skutečným časovým úsilím, dále možnosti optimalizace frameworku, jak pomocí snížení velikosti prohledávaného prostoru, tak změnou účelové funkce. Dále je v práci porovnán odhad pomocí nového frameworku s odhady vypočítanými dalšími zkoumanými algoritmy. Framework byl testován na dvou datasetech s křížovou validací. Na datasetu s menším počtem vzorku dosahuje prezentovaný framework průměrné relativní chyby 40 %, což je zpřesnění oproti ostatním použitým metodám v průměru až 20 % a oproti standardní UCP rovnici až o 18 %. Na větším datasetu se průměrná relativní chyba pohybuje na hodnotě 8 %, která je srovnatelná s ostatními použitými metodami a taktéž zpřesněním oproti UCP rovnici až o 18 %.
Anotace v angličtině
This thesis is focused on research in the field of software engineering; specifically on obtaining estimates of time effort. Obtaining more accurate estimates is one of the critical parts of the software development cycle. This work as a whole is intended to contribute to the creation of a framework for more accurate effort estimation. Presented effort estimation framework using symbolic regression methods. This work deals mainly with the properties and settings of this new framework, so as to provide a refinement of estimates of time effort. The issues of linearity between the estimate and the actual time effort were being undertaken, as well as the possibilities of optimizing the framework. Furthermore, this thesis compares the estimates using a new framework with estimates providing other models used in this field. This new framework was tested on two datasets with a cross-validation technique. On a dataset with a smaller number of samples, the presented framework achieves an average relative error of 40 %. This result is up to 20 % on average more accurate compared to other methods. And also up to 18 % more accurate compared to the standard UCP equation. On a larger dataset,
the average relative error is around 8 %, which is comparable to the other methods used. Moreover, these results on a larger dataset are also a refinement of up to 18 % compared to the UCP equation.
Klíčová slova
Odhad časové náročnosti, Softwarové inženýrství, Odhadování, Use Case Points
Klíčová slova v angličtině
Effort estimations, Software engineering, Predictions, Use Case Points
Rozsah průvodní práce
109
Jazyk
CZ
Anotace
Disertační práce je zaměřena na výzkum v oblasti softwarového inženýrství specificky na získávání odhadu časového úsilí. Získávání přesnějších odhadů je jednou z kritických částí cyklu softwarového vývoje. Tato práce jako celek má přispět k vytvoření frameworku pro přesnější odhad tohoto úsilí pomocí metod symbolické regrese. V práci jsou řešeny zejména vlastnosti a nastavení tohoto nového frameworku, tak aby poskytoval zpřesnění odhadu časového úsilí. Byly řešeny otázky linearity mezi odhadem a skutečným časovým úsilím, dále možnosti optimalizace frameworku, jak pomocí snížení velikosti prohledávaného prostoru, tak změnou účelové funkce. Dále je v práci porovnán odhad pomocí nového frameworku s odhady vypočítanými dalšími zkoumanými algoritmy. Framework byl testován na dvou datasetech s křížovou validací. Na datasetu s menším počtem vzorku dosahuje prezentovaný framework průměrné relativní chyby 40 %, což je zpřesnění oproti ostatním použitým metodám v průměru až 20 % a oproti standardní UCP rovnici až o 18 %. Na větším datasetu se průměrná relativní chyba pohybuje na hodnotě 8 %, která je srovnatelná s ostatními použitými metodami a taktéž zpřesněním oproti UCP rovnici až o 18 %.
Anotace v angličtině
This thesis is focused on research in the field of software engineering; specifically on obtaining estimates of time effort. Obtaining more accurate estimates is one of the critical parts of the software development cycle. This work as a whole is intended to contribute to the creation of a framework for more accurate effort estimation. Presented effort estimation framework using symbolic regression methods. This work deals mainly with the properties and settings of this new framework, so as to provide a refinement of estimates of time effort. The issues of linearity between the estimate and the actual time effort were being undertaken, as well as the possibilities of optimizing the framework. Furthermore, this thesis compares the estimates using a new framework with estimates providing other models used in this field. This new framework was tested on two datasets with a cross-validation technique. On a dataset with a smaller number of samples, the presented framework achieves an average relative error of 40 %. This result is up to 20 % on average more accurate compared to other methods. And also up to 18 % more accurate compared to the standard UCP equation. On a larger dataset,
the average relative error is around 8 %, which is comparable to the other methods used. Moreover, these results on a larger dataset are also a refinement of up to 18 % compared to the UCP equation.
Klíčová slova
Odhad časové náročnosti, Softwarové inženýrství, Odhadování, Use Case Points
Klíčová slova v angličtině
Effort estimations, Software engineering, Predictions, Use Case Points