Book Image

Solutions Architect's Handbook

By : Saurabh Shrivastava, Neelanjali Srivastav
Book Image

Solutions Architect's Handbook

By: Saurabh Shrivastava, Neelanjali Srivastav

Overview of this book

Becoming a solutions architect gives you the flexibility to work with cutting-edge technologies and define product strategies. This handbook takes you through the essential concepts, design principles and patterns, architectural considerations, and all the latest technology that you need to know to become a successful solutions architect. This book starts with a quick introduction to the fundamentals of solution architecture design principles and attributes that will assist you in understanding how solution architecture benefits software projects across enterprises. You'll learn what a cloud migration and application modernization framework looks like, and will use microservices, event-driven, cache-based, and serverless patterns to design robust architectures. You'll then explore the main pillars of architecture design, including performance, scalability, cost optimization, security, operational excellence, and DevOps. Additionally, you'll also learn advanced concepts relating to big data, machine learning, and the Internet of Things (IoT). Finally, you'll get to grips with the documentation of architecture design and the soft skills that are necessary to become a better solutions architect. By the end of this book, you'll have learned techniques to create an efficient architecture design that meets your business requirements.
Table of Contents (18 chapters)

What this book covers

Chapter 1, The Meaning of Solution Architecture, is used as a base to define what solution architecture is and explain its importance. It explains various benefits of having a solution architecture in place and talks about architecting on the public cloud.

Chapter 2, Solution Architects in an Organization, talks about the different types of solution architect roles and how they fit into the organizational structure. It explores the various responsibilities of the solution architect in detail. It further explains how the solution architect's role fits in an agile organization along with agile processes.

Chapter 3, Attributes of the Solution Architecture, throws light on various attributes of solution architecture, such as scalability, resiliency, disaster recovery, accessibility, usability, security, and cost. It explains the coexistence and utilization of these architectural attributes to create an efficient solution design.

Chapter 4, Principles of Solution Architecture Design, talks about architectural principles for creating scalable, resilient, and high-performance architecture. It explains efficient architecture design by applying security, overcoming constraints, and applying changes, along with test and automation approaches. It explores architecture principals to use design thinking effectively by exploring service-oriented architecture and taking a data-driven approach.

Chapter 5, Cloud Migration and Hybrid Cloud Architecture Design, explains the benefits of the cloud and approaches to designing cloud-native architecture. It gives an understanding of different cloud migration strategies and migration steps. It talks about hybrid cloud design and explores popular public cloud providers.

Chapter 6, Solution Architecture Design Patterns, explores various architecture design patterns, such as layered, microservice, event-driven, queue-based, serverless, cache-based, and service-oriented with examples. It demonstrates the applicability of solution architecture attributes and principles to design the best architecture as per business requirements. It explains about the various reference architectures in AWS cloud platform.

Chapter 7, Performance Considerations, provides an understanding of essential attributes of application performance improvement such as latency, throughput, and concurrency. It explains various technology choices to improve performance at multiple layers of architecture, including compute, storage, database, and networking, along with performance monitoring.

Chapter 8, Security Considerations, talks about the various design principles applicable to securing your workload. Security needs to apply to every layer and to every component of the architecture, and this chapter helps you to get an understanding of the right selection of technology to ensure your architecture is secure at every layer. It explores the industry compliance guidelines applicable to architecture design and explains security in the cloud with a shared responsibility model.

Chapter 9, Architectural Reliability Considerations, talks about design principles to make your architecture reliable. It explores various disaster recovery techniques to ensure high availability of your application, and data replication methods for business process continuations. It explains best practices and the role of the cloud in the application to achieve reliability.

Chapter 10, Operational Excellence Considerations, talks about various processes and methods for achieving operational excellence in applications. It explains best practices and technology selections that apply throughout the phases of application design, implementation, and post-production to improve application operability. It also explores operational excellence for cloud workloads.

Chapter 11, Cost Considerations, talks about the various techniques for optimizing cost without risking business agility. It explains multiple methods used to monitor cost and apply governance for cost control. It helps you to understand cost optimization using the cloud.

Chapter 12, DevOps and the Solution Architecture Framework, explains the importance of DevOps in application deployment, testing, and security. It explores DevSecOps and its role in the application's continuous deployment and delivery pipeline. It talks about DevOps best practices and the tools and techniques to implement them.

Chapter 13, Data Engineering and Machine Learning, talks about how to design big data and analytics architectures. It outlines the steps to create a big data pipeline, including data ingestion, storage, processing, and visualization. It helps you to understand the concepts and technology involved in IoT. It explores details about machine learning, model evaluation techniques, and gives an overview of various machine learning algorithms.

Chapter 14, Architecting Legacy Systems, talks about the various challenges and modernization drivers for legacy systems. It explains strategies and techniques to modernize legacy systems. Use of the public cloud is becoming a go-to strategy for many organizations, so this chapter also explores the cloud migration of legacy systems.

Chapter 15, Solution Architecture Document, talks about the solution architecture document along with its structure and the various details required to accommodate the documentation. It explores a variety of IT procurement documentation, where the solution architect participates in providing feedback.

Chapter 16, Learning Soft Skills to Become a Better Solution Architect, talks about various soft skills required for a solution architect to be successful in the role. It helps you to understand methods to acquire strategic skills such as pre-sales and executive communication, develop design thinking, and personal leadership skills such as thinking big and ownership. It explores techniques to establish yourself as a leader and continue improving your skillset.