METHOD FOR SOFTWARE MAINTENANCE RISK ASSESSMENT AT ARCHITECTURE LEVEL
Ronald Tombe, Stephen Kimani, George Onyango Okeyo · 2014
Successful software project maintenance necessitates a well-defined strategy to manage changes and minimize risks associated with the future operation of the software. Software maintainers usually are not engaged in the initial software development cycle. Before maintainers can modify a program, they must understand how it operates. The community of Software engineering has proposed several methods to evaluate software architectures with respect to desired quality attributes performance, usability, and so on. There is, however, little effort on a systematically way for risk assessment at the architecture analysis level. It is difficult to find exact estimates for the probability of failure of individual components and connectors in the system during the early phases of software life cycle, thus risk assessment and analysis for software architectures can be performed on UML specifications such as scenarios and use cases since they model the abstract architecture and implementation details and describe the system using compositions of components and connectors. In this paper, we analyse the well known scenario-based software architecture evaluation methods using an evaluation framework created in this paper. The framework considers each method from the point of view of method context, stakeholders, structure, and reliability. The comparison reveals that most of the studied methods are structurally similar but there are a number of differences among their activities and techniques. Hence, some methods overlap, which guides us to identify five activities that can form a method for software risk Assessment at architecture level during maintenance.