Software architecture for busy developers talk and act like a software architect in one weekend
A quick start guide to learning essential software architecture tools, frameworks, design patterns, and best practicesKey Features* Apply critical thinking to your software development and architecture practices and bring structure to your approach using well-known IT standards* Understand the impac...
Otros Autores: | |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt Publishing
2021.
|
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009633573106719 |
Tabla de Contenidos:
- Cover
- Title Page
- Copyright and Credits
- Contributors
- Table of Contents
- Preface
- Section 1: Introduction
- Chapter 1: Introducing Software Architecture
- Software architecture in a nutshell
- A software architect's duties
- Introducing the different architecture disciplines
- EA
- Positioning software architecture within the global architecture landscape
- Summary
- Section 2: The Broader Architecture Landscape
- Chapter 2: Exploring Architecture Frameworks and Methodologies
- Introducing frameworks and methodologies
- Delving into TOGAF, ArchiMate, and related tools
- EA
- Introducing TOGAF's ADM
- Building blocks
- Architecture patterns
- EA wrap-up
- Introducing security frameworks
- COBIT for risk
- NIST
- ITIL in a nutshell
- Summary
- Chapter 3: Understanding ATAM and the Software Quality Attributes
- Introducing ATAM
- Understanding sensitivity points, trade-off points, risks, and non-risks
- Exploring quality attributes
- Getting started with quality-attribute scenarios
- Practical use case
- Utility trees
- Quality-attribute scenarios
- Identified sensitivity points
- Architectural approaches
- ATAM and agile at scale
- Summary
- Section 3: Software Design Patterns and Architecture Models
- Chapter 4: Reviewing the Historical Architecture Styles
- Introducing architecture styles
- Starting with monoliths
- Benefits of monoliths
- Challenges of monoliths
- Continuing with service-oriented architecture (SOA)
- Benefits of SOA
- Challenges of SOA
- Microservices
- Benefits of microservices
- Challenges of microservices
- Hosting microservices
- Microservices in action
- Summary
- Chapter 5: Design Patterns and Clean Architecture
- Technical requirements
- Understanding design patterns and their purpose
- Reviewing the GoF
- Delving into the most recurrent patterns and applying them to a use-case scenario
- Understanding the DI pattern
- Exploring the singleton design pattern
- Factory method
- Lazy loading/initialization pattern
- Strategy pattern
- Mediator pattern
- Facade design pattern
- Repository design pattern
- Design patterns use case
- Looking at clean architecture
- My top 10 code smells
- Summary
- Section 4: Impact of the Cloud on Software Architecture Practices
- Chapter 6: Impact of the Cloud on the Software Architecture Practice
- Technical requirements
- Introducing cloud service models, the cloud, and cloud-native systems
- Software as a Service (SaaS)
- Function as a Service (FaaS)
- Platform as a Service (PaaS)
- Containers as a Service (CaaS)
- Infrastructure as a Service (IaaS)
- Anything as a Service (XaaS or *aaS)
- Service models and software quality attributes
- Cloud versus cloud native
- Mapping cloud services to architecture styles and patterns
- Reviewing cloud and cloud-native patterns
- The Cache-Aside pattern