"Designing a large software system is an extremely complicated undertaking that requires juggling differing perspectives and differing goals, and evaluating differing options. Applied Software Architecture is the best book yet that gives guidance as to how to sort out and organize the conflicting pressures and produce a successful design." -- Len Bass, author of Software Architecture in Practice. Quality software architecture design has always been important, but in today's fast-paced, rapidly changing, and complex development environment, it is essential. A solid, well-thought-out design helps to manage complexity, to resolve trade-offs among conflicting requirements, and, in general, to bring quality software to market in a more timely fashion. Applied Software Architecture provides practical guidelines and techniques for producing quality software designs. It gives an overview of software architecture basics and a detailed guide to architecture design tasks, focusing on four fundamental views of architecture--conceptual, module, execution, and code. Through four real-life case studies, this book reveals the insights and best practices of the most skilled software architects in designing software architecture. These case studies, written with the masters who created them, demonstrate how the book's concepts and techniques are embodied in state-of-the-art architecture design. You will learn how to: * create designs flexible enough to incorporate tomorrow's technology; * use architecture as the basis for meeting performance, modifiability, reliability, and safety requirements; * determine priorities among conflicting requirements and arrive at a successful solution; and * use software architecture to help integrate system components. Anyone involved in software architecture will find this book a valuable compendium of best practices and an insightful look at the critical role of architecture in software development.
Cited By
- Ribeiro F, Reuberg A, Pereira C and Soares M An Approach for Architectural Design of Automotive Systems using MARTE and SysML 2018 IEEE 14th International Conference on Automation Science and Engineering (CASE), (1574-1580)
- Tekinerdogan B On devising an architecture framework for system-of-systems Proceedings of the International Colloquium on Software-intensive Systems-of-Systems at 10th European Conference on Software Architecture, (1-6)
- Antonino P, Trapp M, Barbosa P, Gurjão E and Rosário J The Safety Requirements Decomposition Pattern Proceedings of the 34th International Conference on Computer Safety, Reliability, and Security - Volume 9337, (269-282)
- van Heesch U and Avgeriou P Naive architecting - understanding the reasoning process of students Proceedings of the 4th European conference on Software architecture, (24-37)
- Juric M, Sasa A, Brumen B and Rozman I (2009). WSDL and UDDI extensions for version support in web services, Journal of Systems and Software, 82:8, (1326-1343), Online publication date: 1-Aug-2009.
- Jansen A, Avgeriou P and van der Ven J (2009). Enriching software architecture documentation, Journal of Systems and Software, 82:8, (1232-1248), Online publication date: 1-Aug-2009.
Recommendations
Software architecture: reflections on an evolving discipline
ESEC/FSE '11: Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineeringSoftware Architecture emerged in the 1990's as an important sub-field of software engineering. While good architectural design had long been recognized as critical to the success of any complex software system, before then the practice of architecting ...
Software architecture: foundations, theory, and practice
ICSE '10: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2Software architecture has become a centerpiece subject for software engineers, both researchers and practitioners alike. At the heart of every software system is its software architecture, i.e., "the set of principal design decisions about the system". ...