The topic of my thesis is the design and development of application lifecycle management software.
In the first half of my thesis, at the theoretical prelude I gave an introduction into evolution of the software development methodologies. After this section I wrote about the SCRUM methodology, about the reasons why that many developers follow the principles. Later I described the SCRUM’s main specifics properties, the transparency, review and correction. In the next section I wrote about the roles of SCRUM team, the developers, scrum master and product owner, about the Events of the SCRUM, for example the Sprint, Sprint planning daily SCRUM, Sprint review and Sprint retrospective. Finally I wrote about the SCRUM artifacts like product backlog, sprint backlog and increment.
Between the practical and theoretical sections, I described the main advantages and disadvantages of the leading softwares at the software market, the Hewlett Packard’s Application Lifecycle Management software family, the IBM’s Rational Team Concert and the Microsoft’s Visual Studio Application Lifecycle Management features.
At the practical section of my thesis, at first I described the specification of the software, including which requirements should be handled in the software. Later I described the design of the databases with Entity-Relationship diagrams. The planning session was divided into four sections due to the most important modules required to be discussed separately for the sake of clarity. In the four sections the general project module, the SCRUM project module and the ticketing and reporting module followed each other. For the simple clarity I used several screenshots which can help the reader to understand how the software works in practical environment.
As the result of the software design I developed a JAVA program which includes a ticketing and reporting system and supports projects which type can be General and SCRUM. SCRUM supported by the hierarchy of the requirements, because they must be divided into theme, epic, story and task. On the other hand the tasks can be modified only under sprint. Sprints are in accordance with scrum policies.