The importance of Software Architecture design has been acknowledged as a very important factor for a high-quality software development. Different efforts in both industry and academia have produced multiple system development methodologies (SDMs) that include SA design activities. In addition, standardization bodies have defined different recommendations regarding Software Architecture design. However, in industry Software Architecture best practices are currently poorly employed. This fact constrains the benefits that industry can potentially obtain from Software Architecture design in software development. In this paper, we analyze the degree to which the four main recognized SDMs -RUP (Rational Unified Process), MSF (Microsoft Solutions Framework), MBASE (Model-Based System Architecting and Software Engineering), and RUP-SOA (Rational Unified Process for Service-oriented Architecture) -adhere to the best practices of Software Architecture design. Our analysis points out some of the most important strengths and weakness regarding Software Architecture design and highlights some of the most relevant issues of Software Architecture design that need to be incorporated into such methodologies.
The design Software Architecture (SA) is an essential activity in the modern development software systems. This SA design activity defines its core components, the interrelationships among them, and a set of essential attributes expected for the final software. While this design is realized in a high level of abstraction, missing this activity or a wrong conduction of it will have negative effects in further software development phases, and lately in the final software. Thus, SA design methods are relevant to be studied and applied. In this article, we review the SA design methods that are (explicitly or implicitly) included in five well-known Software Development Methodologies (SDMs). We report: (1) a brief description of the five SDMs; (2) a substantial description of the SA design methods used in each SDM; and (3) a comparative analysis among them using an evaluation template posited by well-recognized experts in this topic. Our results suggest that SA design methods, while sharing a similar design purpose and some activities, they also present a varied structured and nomenclature.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.