
Software Architecture Fundamentals
iSAQB-Compliant Study Guide for the Certified Professional for Software Architecture-Foundation Level Exam
Rheinwerk (Publisher)
2nd Edition
Published on 30. June 2024
Book
Paperback/Softback
224 pages
978-1-4932-2598-9 (ISBN)
Description
Preparing for your iSAQB CPSA--Foundation Level exam? Make the grade with this study guide! First, tackle essential topics and fundamentals, beginning with development approaches and design techniques for scalable software architectures. Then, see how views, templates, and documents are used to communicate design decisions, and understand how to evaluate software architectures. Level up your exam prep with this handy resource!a. Fundamentals of Software ArchitectureReinforce your understanding of key concepts, including software architecture design principles, techniques to develop scalable architectures, tools needed to describe designs to stakeholders, and methods for quality evaluation. b. Core Exam ConceptsThoroughly review each topic in the exam: basic concepts, architecture design and development, architecture communication, and quality analysis. Expand your knowledge with a bonus chapter about software architecture tools.c. Expert GuidanceLearn directly from iSAQB experts who helped develop the curriculum for the Certified Professional for Software Architecture-Foundation Level exam. Highlights:iSAQB CPSA-Foundation Level exam Architecture designDevelopment approachesArchitectural patternsTemplatesDocumentationPrototypesQuality managementDeploymentModeling toolsStatic code analysis toolsCode management
More details
Language
English
Place of publication
Bonn
Germany
Publishing group
Rheinwerk Publishing Inc.
Target group
College/higher education
Professional and scholarly
Edition type
New edition
Product notice
Klappenbroschur
Dimensions
Height: 239 mm
Width: 166 mm
Thickness: 17 mm
Weight
438 gr
ISBN-13
978-1-4932-2598-9 (9781493225989)
Schweitzer Classification
Other editions
Previous edition

Mahbouba Gharbi | Arne Koschel | Andreas Rausch
Software Architecture Fundamentals
A Study Guide for the Certified Professional for Software Architecture® - Foundation Level - iSAQB compliant
Book
02/2019
1st Edition
dpunkt
€36.90
Shipment within 7-9 days
Persons
Author
Mahbouba Gharbi is the managing director and chief architect of ITech Progress GmbH and a chairperson of the International Software Architecture Qualification Board (iSAQB). She's a dedicated software architecture enthusiast, author of numerous technical articles, and a frequent speaker at international conferences.
Arne Koschel is a lecturer at the University of Hanover, specializing in distributed data systems. He has many years of industry experience in the planning and development of distributed data systems. He also advises and lectures on topics like SOA, integration, middleware, EDA, and cloud computing. He serves as an active board member of the iSAQB.
Andreas Rausch heads the software systems engineering department at Technische Universität, Clausthal. He is a consultant and lead software architect for a number of large-scale distributed software systems.
Content
... Preface to the 2nd Edition ... 15
1 ... Introduction ... 17
1.1 ... Software architecture as an aspect of software engineering ... 18
1.2 ... iSAQB: The International Software Architecture Qualification Board ... 19
1.3 ... Certified Professional for Software Architecture - Foundation and Advanced Level ... 21
1.4 ... The aim of this book ... 22
1.5 ... Prerequisites ... 23
1.6 ... Reader's guide ... 23
1.7 ... Target audience ... 24
1.8 ... Acknowledgements ... 24
2 ... Software Architecture Fundamentals ... 25
2.1 ... Integration with the iSAQB curriculum ... 26
2.2 ... Software-intensive systems and software architectures ... 27
2.3 ... Fundamental software architecture concepts ... 33
2.4 ... A bird's-eye view of software architecture design ... 49
2.5 ... Test your knowledge ... 57
3 ... Designing Software Architectures ... 61
3.1 ... Integration with the iSAQB curriculum ... 62
3.2 ... Overview of the architecture design process ... 62
3.3 ... Working with boundary conditions and external influencing factors ... 68
3.4 ... Design principles and heuristics ... 70
3.5 ... Architecture-centric development approaches ... 77
3.6 ... Techniques for a good design ... 85
3.7 ... Architectural patterns ... 91
3.8 ... Side Note: Design patterns ... 101
3.9 ... Deployment and operations ... 109
3.10 ... Test your knowledge ... 113
4 ... Description and Communication of Software Architectures ... 117
4.1 ... Integration with the iSAQB curriculum ... 117
4.2 ... The CoCoME example ... 118
4.3 ... Views and templates ... 121
4.4 ... Technical/cross-cutting concepts in software architectures ... 146
4.5 ... Architecture and implementation ... 148
4.6 ... Common document types for software architectures ... 150
4.7 ... Best-practice rules for documentation ... 153
4.8 ... Examples of alternative architecture frameworks ... 156
4.9 ... Test your knowledge ... 158
5 ... Software Architectures and Quality ... 161
5.1 ... Integration with the iSAQB curriculum ... 162
5.2 ... Evaluating software architectures ... 163
5.3 ... Side Note: Prototypes and technical proof of concept ... 170
5.4 ... Architecture analysis ... 172
5.5 ... Test your knowledge ... 178
6 ... Side Note: Tools for software architects ... 181
6.1 ... General information on tools ... 181
6.2 ... Requirements management tools ... 182
6.3 ... Modeling tools ... 183
6.4 ... Static code analysis tools ... 184
6.5 ... Dynamic analysis tools ... 186
6.6 ... Configuration and version management tools ... 187
6.7 ... Code management tools ... 188
6.8 ... Testing tools ... 188
6.9 ... Documentation tools ... 189
... Appendices ... 191
A ... Sample Questions ... 193
B ... Abbreviations ... 199
C ... Glossary ... 201
D ... References ... 213
... About the Authors ... 219
... Index ... 221
1 ... Introduction ... 17
1.1 ... Software architecture as an aspect of software engineering ... 18
1.2 ... iSAQB: The International Software Architecture Qualification Board ... 19
1.3 ... Certified Professional for Software Architecture - Foundation and Advanced Level ... 21
1.4 ... The aim of this book ... 22
1.5 ... Prerequisites ... 23
1.6 ... Reader's guide ... 23
1.7 ... Target audience ... 24
1.8 ... Acknowledgements ... 24
2 ... Software Architecture Fundamentals ... 25
2.1 ... Integration with the iSAQB curriculum ... 26
2.2 ... Software-intensive systems and software architectures ... 27
2.3 ... Fundamental software architecture concepts ... 33
2.4 ... A bird's-eye view of software architecture design ... 49
2.5 ... Test your knowledge ... 57
3 ... Designing Software Architectures ... 61
3.1 ... Integration with the iSAQB curriculum ... 62
3.2 ... Overview of the architecture design process ... 62
3.3 ... Working with boundary conditions and external influencing factors ... 68
3.4 ... Design principles and heuristics ... 70
3.5 ... Architecture-centric development approaches ... 77
3.6 ... Techniques for a good design ... 85
3.7 ... Architectural patterns ... 91
3.8 ... Side Note: Design patterns ... 101
3.9 ... Deployment and operations ... 109
3.10 ... Test your knowledge ... 113
4 ... Description and Communication of Software Architectures ... 117
4.1 ... Integration with the iSAQB curriculum ... 117
4.2 ... The CoCoME example ... 118
4.3 ... Views and templates ... 121
4.4 ... Technical/cross-cutting concepts in software architectures ... 146
4.5 ... Architecture and implementation ... 148
4.6 ... Common document types for software architectures ... 150
4.7 ... Best-practice rules for documentation ... 153
4.8 ... Examples of alternative architecture frameworks ... 156
4.9 ... Test your knowledge ... 158
5 ... Software Architectures and Quality ... 161
5.1 ... Integration with the iSAQB curriculum ... 162
5.2 ... Evaluating software architectures ... 163
5.3 ... Side Note: Prototypes and technical proof of concept ... 170
5.4 ... Architecture analysis ... 172
5.5 ... Test your knowledge ... 178
6 ... Side Note: Tools for software architects ... 181
6.1 ... General information on tools ... 181
6.2 ... Requirements management tools ... 182
6.3 ... Modeling tools ... 183
6.4 ... Static code analysis tools ... 184
6.5 ... Dynamic analysis tools ... 186
6.6 ... Configuration and version management tools ... 187
6.7 ... Code management tools ... 188
6.8 ... Testing tools ... 188
6.9 ... Documentation tools ... 189
... Appendices ... 191
A ... Sample Questions ... 193
B ... Abbreviations ... 199
C ... Glossary ... 201
D ... References ... 213
... About the Authors ... 219
... Index ... 221