Abordagem para geração de processos de software consistentes
Persch, Henrique Michel
Choosing the most appropriate components to compose a specific process for a project and ensuring the consistency of this are not trivial tasks, requiring great knowledge and involvement of a process engineer. This work aims to elaborate a semiautomatic approach for generating adapted and consistent software processes that aims to prevent identified and prioritized risks for a project. From the selection mechanisms, defined through adaptation criteria, and classification, using prioritization methods, the software process components most appropriate to the development process are selected. In this work, risks related to Requirements Management are used as adaptation criteria, since many projects fail due to problems related to this area in software projects. Some common requirements risks in software projects are: requirements that do not reflect actual user needs, changes in requirements during development, difficulty in finding a common agreement between developers and users, incomplete and / or inconsistent requirements. These difficulties lead to rework, delays in the schedule, high costs and, mainly, the dissatisfaction of customers and users of the software. The proposed approach generates software processes that incorporate activities that aim to prevent risks of prioritized requirements for the project. For this, the activities of the requirements area were surveyed, in which models of representation, called feature models, were elaborated, which represent rules and lead to the selection of activities more appropriate to the process. The main results of this work are: elaboration of feature model for requirements activities, association of risks to activities that aim to prevent them, development of consistency rules for process validation and automation in the creation of a software process. All of these components were inserted, validated and implemented in a support tool to exemplify the use of the approach. This tool is being developed in the research group in Software Engineering (PEnSO) of the Federal University of Santa Maria. In the end, the proposed approach was validated through the construction of a test scenario to demonstrate the operation of the approach, and the results expressed for a scenario of software process development were analyzed. However, the approach has been shown to be effective and consistent in the presented result.