The award-winning and highly influential Software Architecture in Practice, Third Edition, has been substantially revised to reflect the latest developments in the field. In a real-world setting, the book once again introduces the concepts and best practices of software architecturehow a software system is structured and how that systems elements are meant to interact. Distinct from the details of implementation, algorithm, and data representation, an architecture holds the key to achieving system quality, is a reusable asset that can be applied to subsequent systems, and is crucial to a software organizations business strategy. The authors have structured this edition around the concept of architecture influence cycles. Each cycle shows how architecture influences, and is influenced by, a particular context in which architecture plays a critical role. Contexts include technical environment, the life cycle of a project, an organizations business profile, and the architects professional practices. The authors also have greatly expanded their treatment of quality attributes, which remain central to their architecture philosophywith an entire chapter devoted to each attributeand broadened their treatment of architectural patterns. If you design, develop, or manage large software systems (or plan to do so), you will find this book to be a valuable resource for getting up to speed on the state of the art. Totally new material covers Contexts of software architecture: technical, project, business, and professional Architecture competence: what this means both for individuals and organizations The origins of business goals and how this affects architecture Architecturally significant requirements, and how to determine them Architecture in the life cycle, including generate-and-test as a design philosophy; architecture conformance during implementation; architecture and testing; and architecture and agile development Architecture and current technologies, such as the cloud, social networks, and end-user devices
Cited By
- Kochanthara S, Singh T, Forrai A and Cleophas L (2024). Safety of Perception Systems for Automated Driving: A Case Study on Apollo, ACM Transactions on Software Engineering and Methodology, 33:3, (1-28), Online publication date: 31-Mar-2024.
- Jepsen S and Worm T Designing and Evaluating Interoperable Industry 4.0 Middleware Software Architecture: Reconfiguration of Robotic System Software Architecture, (205-220)
- Ozkaya I and Ozkaya I (2023). Can Architecture Knowledge Guide Software Development With Generative AI?, IEEE Software, 40:5, (4-8), Online publication date: 1-Sep-2023.
- Andersson J, Caporuscio M, D’Angelo M and Napolitano A (2023). Architecting decentralized control in large-scale self-adaptive systems, Computing, 105:9, (1849-1882), Online publication date: 1-Sep-2023.
- Soares R, Capilla R, dos Santos V and Nakagawa E (2023). Trends in continuous evaluation of software architectures, Computing, 105:9, (1957-1980), Online publication date: 1-Sep-2023.
- Wang A, Feng N and Chechik M Code-Level Functional Equivalence Checking of Annotative Software Product Lines Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A, (64-75)
- Karanikolas C, Dimitroulakos G and Masselos K (2022). Simulating Software Evolution to Evaluate the Reliability of Early Decision-making among Design Alternatives toward Maintainability, ACM Transactions on Software Engineering and Methodology, 32:3, (1-38), Online publication date: 31-Jul-2023.
- Bucaioni A, Di Salle A, Iovino L, Malavolta I and Pelliccione P (2023). Reference architectures modelling and compliance checking, Software and Systems Modeling (SoSyM), 22:3, (891-917), Online publication date: 1-Jun-2023.
- Lim S, Lee H, Kim H, Lee H and Kwon T ZTLS: A DNS-based Approach to Zero Round Trip Delay in TLS handshake Proceedings of the ACM Web Conference 2023, (2360-2370)
- Catano N (2023). Program Synthesis for Cyber-Resilience, IEEE Transactions on Software Engineering, 49:3, (962-972), Online publication date: 1-Mar-2023.
- Van Landuyt D and Joosen W (2022). A descriptive study of assumptions in STRIDE security threat modeling, Software and Systems Modeling (SoSyM), 21:6, (2311-2328), Online publication date: 1-Dec-2022.
- Ponce F, Soldani J, Astudillo H and Brogi A Should Microservice Security Smells Stay or be Refactored? Towards a Trade-off Analysis Software Architecture, (131-139)
- Hassine J EVSec: An Approach to Extract and Visualize Security Scenarios from System Logs Proceedings of the 26th International Conference on Evaluation and Assessment in Software Engineering, (446-452)
- Batista P, Rodrigues C, Neto V and Kassab M ARC-SoISE: Towards a Reference Architecture for Constituents of Educational Systems-of-Information Systems 2022 17th Annual System of Systems Engineering Conference (SOSE), (142-147)
- Li R, Liang P, Soliman M and Avgeriou P (2022). Understanding software architecture erosion, Journal of Software: Evolution and Process, 34:3, Online publication date: 1-Mar-2022.
- Marín-Vega H, Alor-Hernández G, Colombo-Mendoza L, Bustos-López M and Zataraín-Cabada R (2022). ZeusAR: a process and an architecture to automate the development of augmented reality serious games, Multimedia Tools and Applications, 81:2, (2901-2935), Online publication date: 1-Jan-2022.
- Wijerathna L, Aleti A, Bi T and Tang A (2021). Mining and relating design contexts and design patterns from Stack Overflow, Empirical Software Engineering, 27:1, Online publication date: 1-Jan-2022.
- Berkhout M, Leewis S and Smit K A Functional Architecture for the Verification, Validation, Deployment, and Execution of Business Decisions and Business Logic Proceedings of the 2021 5th International Conference on Software and e-Business, (1-6)
- Pérez-Verdejo J, Sánchez-García Á, Ocharán-Hernández J, Mezura-Montes E and Cortés-Verdín K (2021). Requirements and GitHub Issues: An Automated Approach for Quality Requirements Classification, Programming and Computing Software, 47:8, (704-721), Online publication date: 1-Dec-2021.
- Palma F, Zarraa O and Sadia A Are Developers Equally Concerned About Making Their APIs RESTful and the Linguistic Quality? A Study on Google APIs Service-Oriented Computing, (171-187)
- Lima R, Kassab M and Neto V Discussing the Availability Quality Attribute in Systems-of-Systems Architectures based on a Simulation Experiment Proceedings of the XXXV Brazilian Symposium on Software Engineering, (416-421)
- Soliman M, Galster M and Avgeriou P An Exploratory Study on Architectural Knowledge in Issue Tracking Systems Software Architecture, (117-133)
- Woods E and Bashroush R How Software Architects Focus Their Attention Software Architecture, (312-326)
- Chinnappan K, Malavolta I, Lewis G, Albonico M and Lago P Architectural Tactics for Energy-Aware Robotics Software: A Preliminary Study Software Architecture, (164-171)
- Nevelsteen K and Wehlou M IPSME- Idempotent Publish/Subscribe Messaging Environment Proceedings of the International Workshop on Immersive Mixed and Virtual Environment Systems (MMVE '21), (30-36)
- Yánez W, Bahsoon R, Zhang Y and Kazman R (2021). Architecting Internet of Things Systems with Blockchain, ACM Transactions on Software Engineering and Methodology, 30:3, (1-46), Online publication date: 1-May-2021.
- Jepsen S, Worm T, Mørk T and Hviid J An analysis of asset interoperability for I4.0 middleware Proceedings of the 36th Annual ACM Symposium on Applied Computing, (707-710)
- Valle P, Garcés L and Nakagawa E Architectural strategies for interoperability of software-intensive systems Proceedings of the 36th Annual ACM Symposium on Applied Computing, (1399-1408)
- Lebtag B, Teixeira P, Santos R, Viana D and Neto V Evaluating the Understandability and Expressiveness of Simulation Executable Models with Professionals Proceedings of the XIX Brazilian Symposium on Software Quality, (1-10)
- Valdivia J, Lora-González A, Limón X, Cortes-Verdin K and Ocharán-Hernández J (2020). Patterns Related to Microservice Architecture: a Multivocal Literature Review, Programming and Computing Software, 46:8, (594-608), Online publication date: 1-Dec-2020.
- Philip M, Seshadri A and Vijayakumar B (2020). Microservices Centric Architectural Model for Handling Data Stream Oriented Applications, Cybernetics and Information Technologies, 20:3, (32-44), Online publication date: 1-Sep-2020.
- Santos J, Suloglu S, Ye J and Mirakhorli M Towards an Automated Approach for Detecting Architectural Weaknesses in Critical Systems Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops, (250-253)
- Krüger T and Mauerer W Quantum Annealing-Based Software Components Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops, (445-450)
- Malavolta I, Lewis G, Schmerl B, Lago P and Garlan D How do you architect your robots? Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Software Engineering in Practice, (31-40)
- Cai Y and Kazman R Software development data for architecture analysis Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Software Engineering in Practice, (231-232)
- Guessi M, Oquendo F and Nakagawa E (2019). Ark: a constraint-based method for architectural synthesis of smart systems, Software and Systems Modeling (SoSyM), 19:3, (741-762), Online publication date: 1-May-2020.
- Zhao Y, Xiao L, Wang X, Sun L, Chen B, Liu Y and Bondi A How Are Performance Issues Caused and Resolved?-An Empirical Study from a Design Perspective Proceedings of the ACM/SPEC International Conference on Performance Engineering, (181-192)
-
Rimba P, Tran A, Weber I, Staples M, Ponomarev A and Xu X (2018). Quantifying the Cost of Distrust: Comparing Blockchain and Cloud Services for Business Process Execution, Information Systems Frontiers, 10.1007/s10796-018-9876-1, 22:2, (489-507), Online publication date: 1-Apr-2020.
- Santos L, Silva E, Batista T, Cavalcante E, Leite J and Oquendo F An architectural style for internet of things systems Proceedings of the 35th Annual ACM Symposium on Applied Computing, (1488-1497)
- Lytra I, Carrillo C, Capilla R and Zdun U (2019). Quality attributes use in architecture design decision methods: research and practice, Computing, 102:2, (551-572), Online publication date: 1-Feb-2020.
- Ochei L, Petrovski A and Bass J (2019). Optimal deployment of components of cloud-hosted application for guaranteeing multitenancy isolation, Journal of Cloud Computing: Advances, Systems and Applications, 8:1, (1-38), Online publication date: 1-Dec-2019.
- Milhem H, Weiss M and Somé S Extraction of architectural patterns from frameworks and modeling their contributions to qualities Proceedings of the 26th Conference on Pattern Languages of Programs, (1-20)
- Mendoza C, Garcés K, Casallas R and Bocanegra J Detecting architectural issues during the continuous integration pipeline Proceedings of the 22nd International Conference on Model Driven Engineering Languages and Systems, (589-597)
- Orellana C, Villegas M and Astudillo H Mitigating security threats through the use of security tactics to design secure cyber-physical systems (CPS) Proceedings of the 13th European Conference on Software Architecture - Volume 2, (109-115)
- Castellanos C, Varela C and Correal D Measuring performance quality scenarios in big data analytics applications Proceedings of the 13th European Conference on Software Architecture - Volume 2, (165-172)
- de Jong T and van der Werf J Process-mining based dynamic software architecture reconstruction Proceedings of the 13th European Conference on Software Architecture - Volume 2, (217-224)
- Volpato T, Allian A and Nakagawa E Has social sustainability been addressed in software architectures? Proceedings of the 13th European Conference on Software Architecture - Volume 2, (245-249)
- Villegas M, Orellana C and Astudillo H A study of over-the-air (OTA) update systems for CPS and IoT operating systems Proceedings of the 13th European Conference on Software Architecture - Volume 2, (269-272)
- Allian A Promoting trust in interoperability of systems-of-systems Proceedings of the 13th European Conference on Software Architecture - Volume 2, (67-70)
- Galster M, Gilson F and Georis F What Quality Attributes Can We Find in Product Backlogs? A Machine Learning Perspective Software Architecture, (88-96)
- Santos J, Sejfia A, Corrello T, Gadenkanahalli S and Mirakhorli M Achilles’ heel of plug-and-Play software architectures: a grounded theory based approach Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, (671-682)
- Laufer K, O'Sullivan J and Thiruvathukal G Tests as maintainable assets via auto-generated spies Proceedings of the Tenth ACM SIGPLAN Symposium on Scala, (17-21)
- Dasanayake S, Aaramaa S, Markkula J and Oivo M (2019). Impact of requirements volatility on software architecture, Journal of Software: Evolution and Process, 31:6, Online publication date: 24-Jun-2019.
- Bauer T, Antonino P and Kuhn T Towards architecting digital twin-pervaded systems Proceedings of the 7th International Workshop on Software Engineering for Systems-of-Systems and 13th Workshop on Distributed Software Development, Software Ecosystems and Systems-of-Systems, (66-69)
- Caraturan S and Goya D Major challenges of systems-of-systems with cloud and DevOps Proceedings of the 7th International Workshop on Software Engineering for Systems-of-Systems and 13th Workshop on Distributed Software Development, Software Ecosystems and Systems-of-Systems, (10-17)
- Márquez G, Astudillo H and Taramasco C Exploring security issues in telehealth systems Proceedings of the 1st International Workshop on Software Engineering for Healthcare, (65-72)
- Dürschmid T, Kang E and Garlan D Trade-off-oriented development Proceedings of the 41st International Conference on Software Engineering: New Ideas and Emerging Results, (109-112)
- Sharma T How deep is the mud Proceedings of the Second International Conference on Technical Debt, (59-60)
- Cui D, Liu T, Cai Y, Zheng Q, Feng Q, Jin W, Guo J and Qu Y Investigating the impact of multiple dependency structures on software defects Proceedings of the 41st International Conference on Software Engineering, (584-595)
- Neto V, Paes C, Rohling A, Manzano W and Nakagawa E Modeling & simulation of software architectures of systems-of-systems Proceedings of the Theory of Modeling and Simulation Symposium, (1-12)
- Ahmad E and Sarjoughian H A behavior annex for AADL using the DEVS formalism Proceedings of the Annual Simulation Symposium, (1-12)
- Mayer B and Weinreich R The effect of gamification on software architecture knowledge management Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing, (1731-1740)
- Vodyaho A, Osipov V, Zhukova N and Chervontsev M (2019). Cognitive Technologies in Monitoring Management, Automatic Documentation and Mathematical Linguistics, 53:2, (71-80), Online publication date: 1-Mar-2019.
- Pourmirza S, Peters S, Dijkman R and Grefen P (2019). BPMS-RA, ACM Transactions on Internet Technology, 19:1, (1-23), Online publication date: 28-Feb-2019.
- Silva C, Aquino G, Melo S, Egídio D and Méhaut J (2019). A Fog Computing-Based Architecture for Medical Records Management, Wireless Communications & Mobile Computing, 2019, Online publication date: 1-Jan-2019.
- Ochei L, Bass J and Petrovski A (2018). Degrees of tenant isolation for cloud-hosted software services, Journal of Cloud Computing: Advances, Systems and Applications, 7:1, (1-39), Online publication date: 1-Dec-2018.
- Kassab M, Mazzara M, Lee J and Succi G (2018). Software architectural patterns in practice, Innovations in Systems and Software Engineering, 14:4, (263-271), Online publication date: 1-Dec-2018.
- Alshammari M and Simpson A Privacy Architectural Strategies Proceedings of the 2018 Workshop on Privacy in the Electronic Society, (143-154)
- Russo D, Ciancarini P, Falasconi T and Tomasi M (2018). A Meta-Model for Information Systems Quality, ACM Transactions on Management Information Systems, 9:3, (1-38), Online publication date: 30-Sep-2018.
- Costa P, Canedo E and Bonifácio R On the Use of Metaprogramming and Domain Specific Languages Proceedings of the VII Brazilian Symposium on Software Components, Architectures, and Reuse, (102-111)
- Belarbi M A methodological framework to enable the generation of code from DSML in SPL Proceedings of the 22nd International Systems and Software Product Line Conference - Volume 2, (64-71)
- Fernandez E, Yoshioka N and Washizaki H Evaluating the degree of security of a system built using security patterns Proceedings of the 13th International Conference on Availability, Reliability and Security, (1-8)
- Oliveira L, Oliveira M, Santos W and Lóscio B Data on the web management system Proceedings of the 19th Annual International Conference on Digital Government Research: Governance in the Data Age, (1-8)
- Dósea M, Sant'Anna C and da Silva B How do design decisions affect the distribution of software metrics? Proceedings of the 26th Conference on Program Comprehension, (74-85)
- Kim J, Kang S, Ahn H, Keum C and Lee C Architecture reconstruction and evaluation of blockchain open source platform Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings, (185-186)
- Neto V, Manzano W, Garcés L, Guessi M, Oliveira B, Volpato T and Nakagawa E Back-SoS Proceedings of the 33rd Annual ACM Symposium on Applied Computing, (1461-1463)
- Sion L, Yskout K, Van Landuyt D and Joosen W Solution-aware data flow diagrams for security threat modeling Proceedings of the 33rd Annual ACM Symposium on Applied Computing, (1425-1432)
- Ahn H, Kang S and Lee S Reconstruction of execution architecture view using dependency relationships and execution traces Proceedings of the 33rd Annual ACM Symposium on Applied Computing, (1417-1424)
- Sedaghatbaf A and Abdollahi Azgomi M (2018). A method for dependability evaluation of software architectures, Computing, 100:2, (119-150), Online publication date: 1-Feb-2018.
- Blas M, Gonnet S and Leone H Routing structure over discrete event system specification Proceedings of the 2017 Winter Simulation Conference, (1-12)
- Sena B, Allian A and Nakagawa E Characterizing big data software architectures Proceedings of the 11th Brazilian Symposium on Software Components, Architectures, and Reuse, (1-10)
- Rago A, Vidal S, Diaz-Pace J, Frank S and van Hoorn A Distributed quality-attribute optimization of software architectures Proceedings of the 11th Brazilian Symposium on Software Components, Architectures, and Reuse, (1-10)
- Moghaddam F, Deckers R, Procaccianti G, Grosso P and Lago P A domain model for self-adaptive software systems Proceedings of the 11th European Conference on Software Architecture: Companion Proceedings, (16-22)
- Nakagawa E, Allian A, Oliveira B, Sena B, Paes C, Lana C, Feitosa D, Santos D, Zaniro D, Dias D, Horita F, Affonso F, Abdalla G, Vicente I, Duarte L, Felizardo K, Garcés L, Oliveira L, Gonçalves M, Morais M, Guessi M, Silva N, Bianchi T, Volpato T, Neto V, Zani V and Manzano W Software architecture and reference architecture of software-intensive systems and systems-of-systems Proceedings of the 11th European Conference on Software Architecture: Companion Proceedings, (4-11)
- Volpato T, Oliveira B, Garcés L, Capilla R and Nakagawa E Two perspectives on reference architecture sustainability Proceedings of the 11th European Conference on Software Architecture: Companion Proceedings, (188-194)
- Morgenstern A, Antonino P, Kuhn T, Pschorn P and Kallweit B Modeling embedded systems using a tailored view framework and architecture modeling constraints Proceedings of the 11th European Conference on Software Architecture: Companion Proceedings, (180-186)
- Leigh A Architecture analysis to predict project risks Proceedings of the 11th European Conference on Software Architecture: Companion Proceedings, (44-47)
- Aaramaa S, Dasanayake S, Oivo M, Markkula J and Saukkonen S Requirements volatility in software architecture design: an exploratory case study Proceedings of the 2017 International Conference on Software and System Process, (40-49)
- Villamizar M, Garcés O, Ochoa L, Castro H, Salamanca L, Verano M, Casallas R, Gil S, Valencia C, Zambrano A and Lang M (2017). Cost comparison of running web applications in the cloud using monolithic, microservice, and AWS Lambda architectures, Service Oriented Computing and Applications, 11:2, (233-247), Online publication date: 1-Jun-2017.
- Jagroep E, Werf J, Brinkkemper S, Blom L and Vliet R (2017). Extending software architecture views with an energy consumption perspective, Computing, 99:6, (553-573), Online publication date: 1-Jun-2017.
- da Silva Amorim S, McGregor J, de Almeida E and von Flach G. Chavez C The Architect's Role in Software Ecosystems Health Proceedings of the 2nd Workshop on Social, Human, and Economic Aspects of Software, (1-4)
- Amorim S, McGregor J, de Almeida E and von Flach G. Chavez C Software ecosystems' architectural health Proceedings of the Joint 5th International Workshop on Software Engineering for Systems-of-Systems and 11th Workshop on Distributed Software Development, Software Ecosystems and Systems-of-Systems, (66-69)
- van den Berghe A, Yskout K, Joosen W and Scandariato R A model for provably secure software design Proceedings of the 5th International FME Workshop on Formal Methods in Software Engineering, (3-9)
- Xiao L and Yu T Ripple Proceedings of the 1st International Workshop on Establishing the Community-Wide Infrastructure for Architecture-Based Software Engineering, (14-20)
- Matalonga S, Mousqués G and Bia A Deploying team-based learning at undergraduate software engineering courses Proceedings of the 1st International Workshop on Software Engineering Curricula for Millennials, (9-15)
- Jagroep E, Broekman J, van der Werf J, Brinkkemper S, Lago P, Blom L and van Vliet R Awakening awareness on energy consumption in software engineering Proceedings of the 39th International Conference on Software Engineering: Software Engineering in Society Track, (76-85)
- Alnawasreh K, Pelliccione P, Hao Z, Rånge M and Bertolino A Online robustness testing of distributed embedded systems Proceedings of the 39th International Conference on Software Engineering: Software Engineering in Practice Track, (133-142)
- Márquez G Selection of software components from business objectives scenarios through architectural tactics Proceedings of the 39th International Conference on Software Engineering Companion, (441-444)
- Cai Y and Kazman R Detecting and quantifying architectural debt Proceedings of the 39th International Conference on Software Engineering Companion, (503-504)
- (2017). Application development for the Internet of Things, Computer Communications, 104:C, (1-16), Online publication date: 15-May-2017.
- Angelov S and de Beer P (2017). Designing and applying an approach to software architecting in agile projects in education, Journal of Systems and Software, 127:C, (78-90), Online publication date: 1-May-2017.
- Sion L, Yskout K, Scandariato R and Joosen W A Modular Meta-model for Security Solutions Companion Proceedings of the 1st International Conference on the Art, Science, and Engineering of Programming, (1-5)
- Ali N, Martínez-Martínez A, Ayuso-Pérez L and Espinoza A Self-adaptive quality requirement elicitation process for legacy systems Proceedings of the Symposium on Applied Computing, (1102-1107)
- Chauhan M, Babar M and Sheng Q (2017). A Reference Architecture for provisioning of Tools as a Service, Future Generation Computer Systems, 69:C, (41-65), Online publication date: 1-Apr-2017.
- Lehmann M and Sandnes F A framework for evaluating continuous microservice delivery strategies Proceedings of the Second International Conference on Internet of things, Data and Cloud Computing, (1-9)
- Van Deursen A, Aniche M, Aué J, Slag R, De Jong M, Nederlof A and Bouwers E A Collaborative Approach to Teaching Software Architecture Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education, (591-596)
- Orlov S and Vishnyakov A (2017). Decision Making for the Software Architecture Structure Based on the Criteria Importance Theory, Procedia Computer Science, 104:C, (27-34), Online publication date: 1-Mar-2017.
- van Heesch U, Jansen A, Pei-Breivold H, Avgeriou P and Manteuffel C (2017). Platform design space exploration using architecture decision viewpoints-A longitudinal study, Journal of Systems and Software, 124:C, (56-81), Online publication date: 1-Feb-2017.
- Portocarrero J, Delicato F, Pires P, Costa B, Li W, Si W and Zomaya A (2017). RAMSES, Ad Hoc Networks, 55:C, (3-27), Online publication date: 1-Feb-2017.
- (2017). Computer, July 1967 and 1992, Computer, 50:7, (8-9), Online publication date: 1-Jan-2017.
- Kazman R (2017). Software Engineering, Computer, 50:7, (10-11), Online publication date: 1-Jan-2017.
- Krishna D, Jha V, Sharaf M and Muccini H On the use of security principles and practices for architecting cyber-physical systems Proccedings of the 10th European Conference on Software Architecture Workshops, (1-7)
- Pedraza-García G, Noël R, Matalonga S, Astudillo H and Fernandez E Mitigating security threats using tactics and patterns Proccedings of the 10th European Conference on Software Architecture Workshops, (1-7)
- Peters J and van der Werf J A genetic approach to architectural pattern discovery Proccedings of the 10th European Conference on Software Architecture Workshops, (1-7)
- Fernandez E and Astudillo H Experimental evaluation of secure software methodologies using patterns Proceedings of the 11th Latin-American Conference on Pattern Languages of Programming, (1-7)
- Zhang W, Duan P, Xie X, Xia F, Lu Q, Liu X and Zhou J (2016). QoS4IVSaaS, Personal and Ubiquitous Computing, 20:5, (795-808), Online publication date: 1-Oct-2016.
- Shahin M, Babar M and Zhu L The Intersection of Continuous Deployment and Architecting Process Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, (1-10)
- Petit M Requirement templates for distributed 3D graphics Proceedings of the 21st International Conference on Web3D Technology, (61-68)
- Cruz-Benito J, Therón R and García-Peñalvo F Software Architectures Supporting Human-Computer Interaction Analysis: A Literature Review Learning and Collaboration Technologies, (125-136)
- Christensen H Teaching DevOps and Cloud Computing using a Cognitive Apprenticeship and Story-Telling Approach Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education, (174-179)
- Chen H, Kazman R, Garbajosa J and Gonzalez E Toward big data value engineering for innovation Proceedings of the 2nd International Workshop on BIG Data Software Engineering, (44-50)
- Chen H, Kazman R, Monarch I and Wang P Predicting and fixing vulnerabilities before they occur Proceedings of the 2nd International Workshop on BIG Data Software Engineering, (72-75)
- Cervantes H, Haziyev S, Hrytsay O and Kazman R Smart decisions Proceedings of the 38th International Conference on Software Engineering Companion, (327-335)
- Chen H, Kazman R, Monarch I and Wang P Predicting and fixing vulnerabilities before they occur Proceedings of the 2nd International Workshop on BIG Data Software Engineering, (72-75)
- Xiao L, Cai Y, Kazman R, Mo R and Feng Q Identifying and quantifying architectural debt Proceedings of the 38th International Conference on Software Engineering, (488-498)
- Anish P, Balasubramaniam B, Sainani A, Cleland-Huang J, Daneva M, Wieringa R and Ghaisas S Probing for requirements knowledge to stimulate architectural thinking Proceedings of the 38th International Conference on Software Engineering, (843-854)
- Alashqar A, Elfetouh A and El-Bakry H Analyzing Preferences and Interactions of Software Quality Attributes Using Choquet Integral Approach Proceedings of the 10th International Conference on Informatics and Systems, (298-303)
- Krutz D and Mirakhorl M Architectural clones Proceedings of the 31st Annual ACM Symposium on Applied Computing, (1480-1485)
- Tekinerdogan B and Scholten H (2015). Software Ecosystems for the Life Sciences Application Domains, ACM SIGSOFT Software Engineering Notes, 40:6, (1-6), Online publication date: 11-Nov-2015.
- Yoder J, Wirfs-Brock R and Washizaki H QA to AQ part four Proceedings of the 22nd Conference on Pattern Languages of Programs, (1-14)
- Hassine J and Hamou-Lhadj A Describing Early Security Requirements Using Use Case Maps Proceedings of the 17th International SDL Forum on SDL 2015: Model-Driven Engineering for Smart Cities - Volume 9369, (202-217)
- Shahin M Architecting for DevOps and Continuous Deployment Proceedings of the ASWEC 2015 24th Australasian Software Engineering Conference, (147-148)
- Costa B, Pires P, Delicato F and Oquendo F Towards a View-Based Process for Designing and Documenting RESTful Service Architectures Proceedings of the 2015 European Conference on Software Architecture Workshops, (1-7)
- Syeed M, Lokhman A, Mikkonen T and Hammouda I Pluggable Systems as Architectural Pattern Proceedings of the 2015 European Conference on Software Architecture Workshops, (1-6)
- Gorton I From Static Books to Dynamic Knowledge Bases Proceedings of the 2015 European Conference on Software Architecture Workshops, (1-4)
- Kuhrmann M and Richardson I How do artifact models help direct SPI projects? Proceedings of the 2015 International Conference on Software and System Process, (122-126)
- Di Cola S, Lau K, Tran C and Qian C An MDE tool for defining software product families with explicit variation points Proceedings of the 19th International Conference on Software Product Line, (355-360)
- Garzón-Rodriguez L, Diosa H and Rojas-Galeano S Deconstructing GAs into Visual Software Components Proceedings of the Companion Publication of the 2015 Annual Conference on Genetic and Evolutionary Computation, (1125-1132)
- Alebrahim A, Fassbender S, Filipczyk M, Goedicke M and Heisel M Towards a reliable mapping between performance and security tactics, and architectural patterns Proceedings of the 20th European Conference on Pattern Languages of Programs, (1-43)
- Anish P, Balasubramaniam B, Cleland-Huang J, Wieringa R, Daneva M and Ghaisas S Identifying architecturally significant functional requirements Proceedings of the Fifth International Workshop on Twin Peaks of Requirements and Architecture, (3-8)
- Guessi M, Cavalcante E and Oliveira L Characterizing architecture description languages for software-intensive systems-of-systems Proceedings of the Third International Workshop on Software Engineering for Systems-of-Systems, (12-18)
- Nakagawa E, Oquendo F, Avgeriou P, Cuesta C, Drira K, Maldonado J and Zisman A Foreword Proceedings of the Third International Workshop on Software Engineering for Systems-of-Systems, (1-4)
- Staples M The unending quest for valid, useful software engineering theories Proceedings of the Fourth SEMAT Workshop on General Theory of Software Engineering, (47-58)
- Sherman S and Hadar I Toward defining the role of the software architect Proceedings of the Eighth International Workshop on Cooperative and Human Aspects of Software Engineering, (71-76)
- Chen H, Kazman R, Haziyev S and Hrytsay O Big data system development Proceedings of the First International Workshop on BIG Data Software Engineering, (44-50)
- Schroeder J, Holzner D, Berger C, Hoel C, Laine L and Magnusson A Design and evaluation of a customizable multi-domain reference architecture on top of product lines of self-driving heavy vehicles Proceedings of the 37th International Conference on Software Engineering - Volume 2, (189-198)
- Kazman R, Cai Y, Mo R, Feng Q, Xiao L, Haziyev S, Fedak V and Shapochka A A case study in locating the architectural roots of technical debt Proceedings of the 37th International Conference on Software Engineering - Volume 2, (179-188)
- Lau K and Di Cola S (Reference) Architecture = Components + Composition (+ Variation Points) Proceedings of the 1st International Workshop on Exploring Component-based Techniques for Constructing Reference Architectures, (1-4)
- Klein J and Gorton I Design Assistant for NoSQL Technology Selection Proceedings of the 1st International Workshop on Future of Software Architecture Design Assistants, (7-12)
- Kjærgaard M and Kuhrmann M On Architectural Qualities and Tactics for Mobile Sensing Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures, (63-72)
- Alzahrani N and Petriu D Modeling Fault Tolerance Tactics with Reusable Aspects Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures, (43-52)
- Anderson C (2015). Docker [Software engineering], IEEE Software, 32:3, (102-c3), Online publication date: 1-May-2015.
- Booch G (2015). Anarchy and Order [On Computing], IEEE Software, 32:3, (20-22), Online publication date: 1-May-2015.
- Gorton I and Klein J (2015). Distribution, Data, Deployment: Software Architecture Convergence in Big Data Systems, IEEE Software, 32:3, (78-85), Online publication date: 1-May-2015.
- de Graaf K, Liang P, Tang A and van Vliet H Supporting architecture documentation Proceedings of the 19th International Conference on Evaluation and Assessment in Software Engineering, (1-10)
- Ahn H Reconstruction of runtime software architecture for object-oriented systems Proceedings of the 30th Annual ACM Symposium on Applied Computing, (1668-1669)
- Agrawal A and Prabhakar T AutoQA Proceedings of the 30th Annual ACM Symposium on Applied Computing, (1464-1467)
- Lopes Silva I, Brito P, dos S. Neto B, Costa E and Silva A A decision-making tool to support architectural designs based on quality attributes Proceedings of the 30th Annual ACM Symposium on Applied Computing, (1457-1463)
- Vidal C, Fernández-Sánchez C, Díaz J and Pérez J (2015). A model-driven engineering process for autonomic sensor-actuator networks, International Journal of Distributed Sensor Networks, 2015, (18-18), Online publication date: 1-Jan-2015.
- Demey Y Adapting the Fact-Based Modeling Approach in Requirement Engineering Proceedings of the Confederated International Workshops on On the Move to Meaningful Internet Systems: OTM 2014 Workshops - Volume 8842, (65-69)
- Van Landuyt D, Op de beeck S, Hovsepyan A, Michiels S, Joosen W, Meynckens S, de Jong G, Barais O and Acher M Towards managing variability in the safety design of an automotive hall effect sensor Proceedings of the 18th International Software Product Line Conference - Volume 1, (304-309)
- Roy J, Contini C, Brodeur F, Diouf N and Suryn W Method for the Evaluation of Open Source Software Quality from an IT Untrained User Perspective Proceedings of the 2014 International C* Conference on Computer Science & Software Engineering, (1-6)
- Morais Barroca Filho I and Aquino Junior G MetamorphosIS Proceedings of the 14th International Conference on Computational Science and Its Applications — ICCSA 2014 - Volume 8584, (17-30)
- Chavarriaga J, Noguera C, Casallas R and Jonckers V Architectural tactics support in cloud computing providers Proceedings of the 10th international ACM Sigsoft conference on Quality of software architectures, (13-22)
- Horcas J, Pinto M and Fuentes L Injecting quality attributes into software architectures with the common variability language Proceedings of the 17th international ACM Sigsoft symposium on Component-based software engineering, (35-44)
- Zapalowski V, Nunes I and Nunes D Revealing the relationship between architectural elements and source code characteristics Proceedings of the 22nd International Conference on Program Comprehension, (14-25)
- Shahin M, Liang P and Li Z Do architectural design decisions improve the understanding of software architecture? two controlled experiments Proceedings of the 22nd International Conference on Program Comprehension, (3-13)
- Ali N and Solis C Mobile architectures at runtime: research challenges Proceedings of the 1st International Conference on Mobile Software Engineering and Systems, (41-44)
- Farah G, Tejada J and Correal D OpenHub: a scalable architecture for the analysis of software quality attributes Proceedings of the 11th Working Conference on Mining Software Repositories, (420-423)
- Garlan D Software architecture: a travelogue Future of Software Engineering Proceedings, (29-39)
- Nord R, Ozkaya I, Sangwan R and Koontz R Architectural dependency analysis to understand rework costs for safety-critical systems Companion Proceedings of the 36th International Conference on Software Engineering, (185-194)
- Martínez-Fernández S, Ayala C, Franch X and Marques H Artifacts of software reference architectures Proceedings of the 18th International Conference on Evaluation and Assessment in Software Engineering, (1-10)
- Feitosa D An architecture design method for critical embedded systems Proceedings of the WICSA 2014 Companion Volume, (1-3)
- Binotto A, Tizzei L and Cerqueira R A Self-tuning Scientific Framework using Model-Driven Engineering for Heterogeneous Execution Platforms Proceedings of International Workshop on Adaptive Self-tuning Computing Systems, (17-20)
- Dugerdil P Architecting mobile enterprise app Proceedings of the 2013 ACM workshop on Mobile development lifecycle, (9-14)
- Merson P Ultimate architecture enforcement Proceedings of the 2013 companion publication for conference on Systems, programming, & applications: software for humanity, (153-160)
- Pruijt L, Wiersema W and Brinkkemper S A typology based approach to assign responsibilities to software layers Proceedings of the 20th Conference on Pattern Languages of Programs, (1-14)
- Diaz-Pace J, Nicoletti M, Schiaffino S, Villavicencio C and Sanchez L A Stakeholder-Centric Optimization Strategy for Architectural Documentation Proceedings of the Third International Conference on Model and Data Engineering - Volume 8216, (104-117)
- Zimmermann A, Sandkuhl K, Pretz M, Falkenthal M, Jugel D and Wissotzki M Towards an integrated service-oriented reference enterprise architecture Proceedings of the 2013 International Workshop on Ecosystem Architectures, (26-30)
- Bogado V, Gonnet S and Leone H Toward an Integrated Quality Evaluation of Web Applications with DEVS Revised Selected Papers of the ICWE 2013 International Workshops on Current Trends in Web Engineering - Volume 8295, (79-91)
- Nakagawa E, Gonçalves M, Guessi M, Oliveira L and Oquendo F The state of the art and future perspectives in systems of systems software architectures Proceedings of the First International Workshop on Software Engineering for Systems-of-Systems, (13-20)
- Christensen H and Hansen K Architectural slicing Proceedings of the 7th European conference on Software Architecture, (316-319)
- Alexandrov T and Dimov A Software availability in the cloud Proceedings of the 14th International Conference on Computer Systems and Technologies, (193-200)
- Klein J and van Vliet H A systematic review of system-of-systems architecture research Proceedings of the 9th international ACM Sigsoft conference on Quality of software architectures, (13-22)
- Schmid K On the limits of the technical debt metaphor Proceedings of the 4th International Workshop on Managing Technical Debt, (63-66)
- Rimba P Building high assurance secure applications using security patterns for capability-based platforms Proceedings of the 2013 International Conference on Software Engineering, (1401-1404)
- Bellomo S, Nord R and Ozkaya I A study of enabling factors for rapid fielding: combined practices to balance speed and stability Proceedings of the 2013 International Conference on Software Engineering, (982-991)
- Rost D Generation of task-specific architecture documentation for developers Proceedings of the 17th international doctoral symposium on Components and Architecture, (1-6)
Index Terms
- Software Architecture in Practice
Recommendations
The Decision View's Role in Software Architecture Practice
A decision view provides a useful complement to the traditional sets of architectural views and viewpoints. It gives an explanatory perspective that illuminates the reasoning process itself and not solely its results. The decision view documents aspects ...
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 ...