Original title:
Interface-Based Software Development
Translated title:
Interface-Based Software Development
Authors:
Rais, Aziz ; Pecinovský, Rudolf (advisor) ; Lacko, Branislav (referee) ; Merunka, Vojtěch (referee) Document type: Doctoral theses
Year:
2017
Language:
eng Publisher:
Vysoká škola ekonomická v Praze Abstract:
[eng][cze] Even though there are many software development and project management methodologies available, research and practice both show that IT software development projects still fail, and that the quality of software products does not always meet customers' expectations. There might be multiple causes for such failures, but some of these reasons can be seen to influence or create others. Therefore, the larger the project is, the higher its risk of failure, especially if the teams involved work remotely (distributed and outsourced). This increase in project complexity is considered the motivation for this paper. Similarly, there are other factors that can result in a project's failure and customers' dissatisfaction regarding software quality. All such factors identified by research conducted by organizations specializing in this area are analyzed in order to identify a common root of IT project failures. Once the root causes of these failures have been identified and analyzed, the goal of the Interface based software development methodology is to solve them. The solution offered by an Interface based software development methodology is to improve understanding of software requirements and to describe these requirements with interfaces in an object-oriented way. Interface based software development will support and drive development towards service-oriented architecture (SOA) and component-based development (CBD). The goal of interface based software development is to increase software testability and maintainability and to make it more easily feasible to execute various software development processes in parallel.Přesto, že existuje mnoho metodik vývoje softwaru a řízení IT projektů, výzkumy a praxe ukazují, že projekty vývoje softwaru stále selhávají a kvalita softwarových produktů často nesplňuje očekávání zákazníků. Faktorů selhání IT projektů vývoje softwaru je mnoho, avšak některé faktory ovlivňují nebo vytváří další. Jedním z cílů této práce je právě hledání a analýza zásadních faktorů čerpající z výzkumů vycházejících z rozsáhlých dat o různých IT projektech. Některé faktory jako např. velikost projektu nebo dislokace jednotlivých projektových týmů (distribuovaný vývoj, využití outsourcingu, atd.) zvyšují sice složitost řízení IT projektu, ale přestože nejde o faktory nejdůležitější, jsou důležitou motivací této práce. Hlavním cílem této dizertační práce je věnovat se identifikovaným zásadním faktorům selhávání projektů vývoje softwaru. Na základě této analýzy je v práci vyvinuta Metodika vývoje softwaru založená na rozhraních (Interface based software development methodology). Aplikace této metodiky přináší zlepšení sběru požadavků na software a jejich popis objektově orientovaným způsobem pomocí rozhraní. Metodika umožňuje lépe řídit vývoj softwaru pro servisně orientovanou architekturu (SOA) a komponentově založený vývoj (CBD). Aplikace metodiky zvyšuje a zlepšuje testovatelnost a udržovatelnost softwaru. Dalším efektem navržené metodiky je usnadnění paralelní realizace jednotlivých procesů vývoje softwaru.
Keywords:
component based development (CBD); interface based software development (IBSD); model driven architecture (MDA); object-oriented analysis (OOA); object-oriented design (OOD); service-oriented architecture (SOA); component based development (CBD); interface based software development (IBSD); model driven architecture (MDA); object-oriented analysis (OOA); object-oriented design (OOD); service-oriented architecture (SOA)
Institution: University of Economics, Prague
(web)
Document availability information: Available in the digital repository of the University of Economics, Prague. Original record: http://www.vse.cz/vskp/eid/53607