Architectural Patterns

Learn the importance of architectural and design patterns in producing and sustaining next-generation IT and business-critical applications with this guide.
Preview in Mapt
Code Files

Architectural Patterns

Pethuru Raj, Anupama Raman, Harihara Subramanian

7 customer reviews
Learn the importance of architectural and design patterns in producing and sustaining next-generation IT and business-critical applications with this guide.
Mapt Subscription
FREE
$29.99/m after trial
eBook
$28.00
RRP $39.99
Save 29%
Print + eBook
$49.99
RRP $49.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$28.00
$49.99
$29.99 p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Architectural Patterns Book Cover
Architectural Patterns
$ 39.99
$ 28.00
Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Buy 2 for $34.30
Save $29.68
Add to Cart

Book Details

ISBN 139781787287495
Paperback468 pages

Book Description

Enterprise Architecture (EA) is typically an aggregate of the business, application, data, and infrastructure architectures of any forward-looking enterprise. Due to constant changes and rising complexities in the business and technology landscapes, producing sophisticated architectures is on the rise. Architectural patterns are gaining a lot of attention these days.

The book is divided in three modules. You'll learn about the patterns associated with object-oriented, component-based, client-server, and cloud architectures. The second module covers Enterprise Application Integration (EAI) patterns and how they are architected using various tools and patterns. You will come across patterns for Service-Oriented Architecture (SOA), Event-Driven Architecture (EDA), Resource-Oriented Architecture (ROA), big data analytics architecture, and Microservices Architecture (MSA). The final module talks about advanced topics such as Docker containers, high performance, and reliable application architectures. The key takeaways include understanding what architectures are, why they're used, and how and where architecture, design, and integration patterns are being leveraged to build better and bigger systems.

Table of Contents

Chapter 1: Demystifying Software Architecture Patterns
Envisioning the software-defined world
Software patterns
Software architecture patterns
The EDA fundamental principles
The ED-SOA composite pattern benefits
Microservices architecture (MSA)
Event-driven microservices patterns
Space-based architecture (SBA)
Combining architecture patterns
Special-purpose architectures
Real-time context-aware prediction architecture
Summary
Additional reading materials
Chapter 2: Client/Server Multi-Tier Architectural Patterns
Domain name service (DNS) server and DNS client
Functional requirements in two-tier client-server patterns
The three-tier pattern / multi-tier pattern client-server
Three-tier client-server architecture
The distributed client-server architecture
Motivation for development of web application patterns
The ASP.Net framework
Design patterns for web application development
Summary
Chapter 3: Object-Oriented Software Engineering Patterns
Key elements of OOD
Design principles
OO design patterns
Concurrency patterns
Summary
References
Chapter 4: Enterprise Integration Patterns
Need for integration patterns
Integration scenarios in enterprises
Main challenges in enterprise integration
Getting started with messaging patterns
Pipe and filter pattern
Message router pattern
Message translator pattern
Message endpoint pattern
Point-to-point channel pattern
Publish-subscribe channel pattern
Datatype channel pattern
Message bus patterns
Command message patterns
Event message patterns
Request-reply pattern
Content-based router pattern
Message filter pattern
Resequencer pattern
Polling consumer pattern
Channel adapter
Mobile integration pattern
Request-response pattern
Defining a push notification pattern
API management pattern
Summary
Chapter 5: Domain-Driven Design (DDD) Principles and Patterns
Principles, characteristics, and practices of DDD
DDD patterns
Integrating bounded contexts
Integrating with legacy systems
Distributed bounded context integration strategies
Tactical patterns
Patterns to model the domain
Emerging patterns
Summary
References and further reading materials
Chapter 6: Enterprise Architecture Platforms and Tools
Overview of enterprise architecture frameworks
Getting started with TOGAF
Architecture development method (ADM)
Deliverables, artifacts, and building blocks
Enterprise continuum
Architecture repository
Zachman framework for enterprise architecture
Enterprise architecture platforms and tools
Enterprise Architect from Sparx Systems
Dragon1
ABACUS from avolution software
Summary
References
Chapter 7: Service-Oriented Architecture (SOA)
Web services and SOA
Introduction to SOA
Life cycle of SOA
Primary characteristics of SOA
Principles of SOA
SOA design patterns
Summary
Chapter 8: Event-Driven Architectural Patterns
Service-oriented architecture and event-driven architecture (SOA versus EDA)
Key characteristics of event-driven patterns
Event flow layers
Design considerations for event-driven patterns
Implementation variants of EDA patterns
Types of event-driven patterns
EDA pattern implementation in systems/processes
Improving the performance of EDA-based processes/systems
IBM WebSphere MQ
Emerging trends in EDA
References
Summary
Chapter 9: Microservices Architecture Patterns
Microservices patterns
Remote procedure invocation (RPI) pattern
Messaging design pattern
Domain-specific protocol pattern
API gateway pattern
Service discovery pattern
Service registry pattern
Service registration pattern
Event-driven architecture (EDA) patterns
Event sourcing pattern
Transaction log tailing pattern
Publishing events using the database trigger pattern
Application publishes events pattern
Testing and troubleshooting patterns
Access token pattern
Service component test pattern
Log aggregation pattern
Application metrics pattern
Distributed tracing pattern
Health check API pattern
Circuit breaker pattern
Summary
Chapter 10: Patterns for Containerized and Reliable Applications
Introduction
Docker image building patterns
Multi-stage image building pattern
The pattern for file sharing between containers 
Pipes and filters pattern
Containerized applications - Autopilot pattern
Containers - persistent storage patterns
Docker compose configuration pattern
Docker container anti-patterns
Patterns for highly reliable applications
Resiliency implementation strategies
Summary
Chapter 11: Software-Defined Clouds - the Architecture and Design Patterns
Reflecting the cloud journey
Traditional application architecture versus cloud application architecture
Cloud integration patterns
Cloud design patterns
Cloud reliability and resilience patterns
Cloud security patterns
Summary
Bibliography
Chapter 12: Big Data Architecture and Design Patterns
The four V's of big data
Big data analysis and technology concepts
Big data analysis and data science
Big data platform
Big data architecture landscape and layers
Big data architecture patterns
Big data design patterns
Summary
References

What You Will Learn

  • Understand how several architectural and design patterns work to systematically develop multitier web, mobile, embedded, and cloud applications
  • Learn object-oriented and component-based software engineering principles and patterns
  • Explore the frameworks corresponding to various architectural patterns
  • Implement domain-driven, test-driven, and behavior-driven methodologies
  • Deploy key platforms and tools effectively to enable EA design and solutioning
  • Implement various patterns designed for the cloud paradigm

Authors

Table of Contents

Chapter 1: Demystifying Software Architecture Patterns
Envisioning the software-defined world
Software patterns
Software architecture patterns
The EDA fundamental principles
The ED-SOA composite pattern benefits
Microservices architecture (MSA)
Event-driven microservices patterns
Space-based architecture (SBA)
Combining architecture patterns
Special-purpose architectures
Real-time context-aware prediction architecture
Summary
Additional reading materials
Chapter 2: Client/Server Multi-Tier Architectural Patterns
Domain name service (DNS) server and DNS client
Functional requirements in two-tier client-server patterns
The three-tier pattern / multi-tier pattern client-server
Three-tier client-server architecture
The distributed client-server architecture
Motivation for development of web application patterns
The ASP.Net framework
Design patterns for web application development
Summary
Chapter 3: Object-Oriented Software Engineering Patterns
Key elements of OOD
Design principles
OO design patterns
Concurrency patterns
Summary
References
Chapter 4: Enterprise Integration Patterns
Need for integration patterns
Integration scenarios in enterprises
Main challenges in enterprise integration
Getting started with messaging patterns
Pipe and filter pattern
Message router pattern
Message translator pattern
Message endpoint pattern
Point-to-point channel pattern
Publish-subscribe channel pattern
Datatype channel pattern
Message bus patterns
Command message patterns
Event message patterns
Request-reply pattern
Content-based router pattern
Message filter pattern
Resequencer pattern
Polling consumer pattern
Channel adapter
Mobile integration pattern
Request-response pattern
Defining a push notification pattern
API management pattern
Summary
Chapter 5: Domain-Driven Design (DDD) Principles and Patterns
Principles, characteristics, and practices of DDD
DDD patterns
Integrating bounded contexts
Integrating with legacy systems
Distributed bounded context integration strategies
Tactical patterns
Patterns to model the domain
Emerging patterns
Summary
References and further reading materials
Chapter 6: Enterprise Architecture Platforms and Tools
Overview of enterprise architecture frameworks
Getting started with TOGAF
Architecture development method (ADM)
Deliverables, artifacts, and building blocks
Enterprise continuum
Architecture repository
Zachman framework for enterprise architecture
Enterprise architecture platforms and tools
Enterprise Architect from Sparx Systems
Dragon1
ABACUS from avolution software
Summary
References
Chapter 7: Service-Oriented Architecture (SOA)
Web services and SOA
Introduction to SOA
Life cycle of SOA
Primary characteristics of SOA
Principles of SOA
SOA design patterns
Summary
Chapter 8: Event-Driven Architectural Patterns
Service-oriented architecture and event-driven architecture (SOA versus EDA)
Key characteristics of event-driven patterns
Event flow layers
Design considerations for event-driven patterns
Implementation variants of EDA patterns
Types of event-driven patterns
EDA pattern implementation in systems/processes
Improving the performance of EDA-based processes/systems
IBM WebSphere MQ
Emerging trends in EDA
References
Summary
Chapter 9: Microservices Architecture Patterns
Microservices patterns
Remote procedure invocation (RPI) pattern
Messaging design pattern
Domain-specific protocol pattern
API gateway pattern
Service discovery pattern
Service registry pattern
Service registration pattern
Event-driven architecture (EDA) patterns
Event sourcing pattern
Transaction log tailing pattern
Publishing events using the database trigger pattern
Application publishes events pattern
Testing and troubleshooting patterns
Access token pattern
Service component test pattern
Log aggregation pattern
Application metrics pattern
Distributed tracing pattern
Health check API pattern
Circuit breaker pattern
Summary
Chapter 10: Patterns for Containerized and Reliable Applications
Introduction
Docker image building patterns
Multi-stage image building pattern
The pattern for file sharing between containers 
Pipes and filters pattern
Containerized applications - Autopilot pattern
Containers - persistent storage patterns
Docker compose configuration pattern
Docker container anti-patterns
Patterns for highly reliable applications
Resiliency implementation strategies
Summary
Chapter 11: Software-Defined Clouds - the Architecture and Design Patterns
Reflecting the cloud journey
Traditional application architecture versus cloud application architecture
Cloud integration patterns
Cloud design patterns
Cloud reliability and resilience patterns
Cloud security patterns
Summary
Bibliography
Chapter 12: Big Data Architecture and Design Patterns
The four V's of big data
Big data analysis and technology concepts
Big data analysis and data science
Big data platform
Big data architecture landscape and layers
Big data architecture patterns
Big data design patterns
Summary
References

Book Details

ISBN 139781787287495
Paperback468 pages
Read More
From 7 reviews

Read More Reviews

Recommended for You

Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Building Microservices with .NET Core 2.0 - Second Edition Book Cover
Building Microservices with .NET Core 2.0 - Second Edition
$ 35.99
$ 25.20
C# 7.1 and .NET Core 2.0 – Modern Cross-Platform Development - Third Edition Book Cover
C# 7.1 and .NET Core 2.0 – Modern Cross-Platform Development - Third Edition
$ 31.99
$ 22.40
ASP.NET Core 2 and Angular 5 Book Cover
ASP.NET Core 2 and Angular 5
$ 35.99
$ 25.20
Architecting Modern Java EE Applications Book Cover
Architecting Modern Java EE Applications
$ 39.99
$ 28.00
Statistics for Machine Learning Book Cover
Statistics for Machine Learning
$ 39.99
$ 28.00