International Journal of Computer Applications (0975 – 8887) Volume 46– No.23, May 2012 30 Software Performance Quality Evaluation of MINPHIS Architecture using ATAM Ishaya Gambo Obafemi Awolowo University Computer Science & Engineering Department Ile-Ife, Nigeria Abimbola Soriyan Obafemi Awolowo University Computer Science & Engineering Department Ile-Ife, Nigeria Philip Achimugu Federal Univ. of Agriculture Computer Science Department Abeokuta Abeokuta, Nigeria ABSTRACT Software architecture evaluation plays an important role in the validation of quality models of software systems. This paper is based on the research carried out where the Architecture Trade-off Analysis Method (ATAM) was used. ATAM was chosen and used because it provides insight into the way quality attributes are mapped onto architecture and also shows the trade-offs existing between the identified quality and others. The evaluation was based on the developed Software Architecture Scenario-Based Performance Quality Model (SASPUM). The paper presents the results of the analysis with ATAM by providing the set of scenarios and their prioritization from brainstorming, the utility tree, the risks discovered and non-risk documented; the sensitivity points and trade-off points found. The evaluation supports the fact that performance can be identified as a software quality attribute, which is part of the execution model of software system determined by the architecture of the software system, and that is suitable for software architectural evaluation. General Terms Software architecture, ATAM, MINPHIS. Keywords Software quality, ATAM, Software architecture, MINPHIS, SASPUM 1. INTRODUCTION Software architecture and software quality are important subjects in the emerging discipline of software engineering, and it is concerned with improving the approach to software quality. Software systems‟ quality can be equal to “error free” system. In today‟s software development process, quality requirements during architectural design and decision are fundamental issues to the stakeholders (developers, analysts, programmers, users etc.). Even though the software engineering community has paid closer attention and done a lot of work around software architecture in recent years, it is still an evolving area. The software engineering community has not really looked at software quality thoroughly most especially from the perspective of software architecture. Till date it is still like news to many involved in software development processes and practices, most especially in the developing nations like Nigeria. They are more particular about the functionality of the system, and never bothered about the non-functional attributes which are more paramount to the stakeholders (end-users most especially). The challenge in software development is to develop software with the right quality levels. The main problem is not to know if a project is technically feasible concerning functionality, but if a solution exists that meets the software quality requirements. The problem resulting from this is if the architecture determines the quality of the system, do existing systems follow any specific architecture for the quality to be determined at all times? If architectural decisions determine a system‟s quality attributes, what is the possibility of evaluating architectural decisions with respect to their impact on those attributes? However, we observed that within the engineering practices, the architectural design is very crucial in the attainment of quality goals. Quality issues have been a fundamental focal target in the development of most information systems. This is because most stakeholders involve in the usability of information systems are particular about quality in terms of functionality, ease of use and satisfaction. In this sense, we are of the opinion that this quality attributes of software systems can be highly constrained by a system‟s software architecture. The work in [1] opined that “the importance of the right software architecture to a development effort is widely recognized” and [2] have done justice to establish the prominent role software architecture plays in the overall system quality. Thus, it is good to determine the time a system‟s software architecture is specified whether the system will have the desired qualities and whether it will follow any specific architecture for the quality to be determined at all times. To do this, an architectural evaluation will be necessary to validate such. Furthermore, the work in [3] opined that “a variety of qualitative and quantitative techniques are used for analyzing specific quality attributes.” These techniques have evolved in separate communities, each with its own vernacular and point of view that have been typically performed in isolation. However, being able to evaluate the quality of software is very important, not only from the perspective of a software engineer, but also from a business point of view in order to determine the level of the provided quality. Some of the analysis and evaluation techniques used to achieve this includes: the SAAM (Software Architecture Analysis Method) [4], the QAW (Quality Attribute Workshop) [5], the ADD (Attribute Driven Design) method [2], ATAM (Architecture Trade-off Analysis Method) [6] and the CBAM (Cost Benefit Analysis Method) [7] among others. This paper addresses quality issues at the architectural level by using ATAM. The paper is based on the research carried out to evaluate the architecture of the Made in Nigeria Primary Healthcare Information System (MINPHIS) currently running in some tertiary and specialist hospitals in Nigeria. The choice of ATAM for the evaluation was because it provides insight