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...

Descripción completa

Detalles Bibliográficos
Otros Autores: Eyskens, Stephane, author (author)
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