WA2325

Solution Architect Training: SA Practitioner's Guide (Extended) Training

Our bootcamp style Solutions Architect Training will help you earn an AWS Certified Solutions Architect - Associate Certification. This Solutions Architect training covers solution architecture concepts & techniques, stakeholder identification, architecturally significant elements that drive the architecture artifacts, including system process models, system use cases, change cases, architecture requirements and more!
Course Details

Duration

4 days

Prerequisites

No prior knowledge is presumed.

Target Audience

  • Solution Architects new to SA

Skills Gained

  • Work with business use cases and requirements to identify architecturally significant requirements
  • Define architecture to fulfill the requirements, ensuring that it is traceable, verifiable, and measurable
  • Communicate the architecture to technical teams for implementation, use and ongoing support
  • Demonstrate the value of the architecture to the business
  • Identify and apply appropriate techniques to build momentum in the rapid delivery of successful solutions
Course Outline
  • Introduction
  • Solution Architecture Overview
    • Why is Solution Architecture Important?
    • Communications Vehicle Among Stakeholders
    • The Project is Organized Around Architectural Elements
    • What is a System?
    • Why Focus on Structure?
    • Solution Architecture Context
    • Solution Architecture & Domains
    • SA Spans All Domains
    • Relationship to EA Architecture Development Process
    • Solution Architecture
    • Example: Solution Architecture Stakeholders
    • Solution Architecture Deliverables
    • EA Involvement in SA
    • Architecturally Significant
    • Group Discussion: Architecture
    • Resource: Software Engineering Institute (SEI)
    • Resource: SWEBOK
    • Resource: OpenUp
    • Resource: Microsoft Library
    • Group Discussion: Methodologies
  • Core Solution Architecture Methods
    • Shared Vision
    • Example Shared Vision
    • Draw the Boundary
    • Well-defined Interface
    • Example: Context Diagram
    • Identify the External Interfaces
    • Subsystems
    • Subsystem Context Diagram
    • Layers
    • Example: Subsystems with Layers
    • Components
    • Decomposing the System
    • Partitioning Patterns
    • Example Partitioning Based on Patterns
    • Example: Healthcare SOA Framework
    • Requirements Allocation
    • Group Discussion: Requirements Allocation
    • Configuration Management Implications
    • Release Management Implications
    • Testing Implications
    • Work Pattern & Skill Set Implications
    • Work & Build Dependencies
    • Increment/Sprint Planning
    • Sizing Implications
    • More Than Executable Architecture
    • Development Architecture
    • Operations Architecture
    • Group Discussion: Integrating Operations Architecture
  • Architecture Concepts
    • Fundamental Architecture Concepts
    • Abstraction
    • Coupling
    • Cohesion
    • Decomposition & Modularization
    • Encapsulation & Information Hiding
    • Separation of Interface & Implementation
  • Stakeholder Management
    • Stakeholders
    • Stakeholder Management
    • When to Focus on Stakeholder Management
    • Steps in the Stakeholder Management Process
    • Identifying Stakeholders
    • Points to Consider
    • Example Stakeholders & Concerns
    • Classifying Their Positions: The Stakeholder Matrix
    • Determining the Stakeholder Management Approach and Tailoring the Deliverables: The Stakeholder Map
    • Example: Stakeholder Map
    • Template: Stakeholder Map Matrix Template
  • Views & Viewpoints
    • Views and Viewpoints
    • Views
    • Example View: Claim Handling from a Process Viewpoint
    • Example View: Claim Handling from a Data Viewpoint
    • Example View: Claim Handling Project from a Financial Viewpoint
    • Contents of Views and Viewpoints
    • Example Formal Viewpoint: Security
    • Software Architecture Viewpoints: 4+1
    • Group Discussion: Viewpoints
  • Architecture Requirements
    • Architecture Quality Attributes
    • Quality of Service Requirement Categories
    • Checklist: Quality Attribute (QA) Categories
    • Trade-off Analysis
    • Group Discussion: Trade-offs
    • Technique: Requirement Patterns
    • Tool: Non-Functional Requirement Patterns
    • Checklist: Requirement Statement Best Practices
    • Technique: Architecture Change Cases
    • Template: Elements of a Change Case
    • Example: Change Case
    • Eliciting Change Cases
    • Group Discussion: Change Case
  • Architecture Requirement Techniques
    • Requirements Management
    • Requirements Management Activities
    • Best Practices
    • Baselining Requirements
    • Desirable RM Repository Characteristics
    • Example: Behavior Driven Development
    • Why Traceability?
    • Identifying Candidate Tactics, Patterns and Styles
    • Requirements-Tactics-Patterns-Styles
    • Making Architectural Decisions
    • Architectural Measurement
    • Implementing Architectural Measurement
    • Example Metrics
  • Quality of Service (QoS) Requirements
    • Qualities of Service and Design
    • Performance: Requirements
    • Performance: Response Time Pattern
    • Performance: Transaction Time Patterns
    • Performance: Throughput Pattern
    • Scalability
    • Scalability: Capacity Patterns
    • Reliability & Availability
    • Mean Time Between Failures (MTBF)
    • Availability: Pattern
    • Extensibility
    • Maintainability
    • Manageability
    • Security
    • Cultural Adaptability
    • Portability
    • Testability
    • Usability
    • Upgradeability
    • Recoverability
    • Recovery Time Objective (RTO)
    • Recovery Point Objective (RPO)
    • Prioritizing Quality of Service Requirements
    • Inspecting QoS Requirements for Trade-off Opportunities
    • Quality of Service Testing
  • Business Architecture
    • Business Architecture Models & Diagrams
    • Business Process Concepts
    • Example: Medicaid Business Process Model
    • Example: Medicaid Business Process Definition
    • Business Function Concepts
    • Example: HL7 EHR Functional Model
    • Example: Process Flow Diagram
    • Resource: Business Analysis Book of Knowledge (BABOK)
    • Resource: Business Architecture Body of Knowledge (BIZBOK™)
  • Data Architecture
    • Data Modeling
    • Conceptual Data Model
    • Example: Conceptual Data Model
    • Example: Property & Casualty Conceptual Data Model
    • Example: Data Entities
    • Logical Data Model
    • Normalization
    • Abstraction
    • Example: Logical Data Model
    • Physical Data Model
    • Example: Physical Data Model
    • Data Modeling Notation
    • Entity Relationship Diagram (ERD)
    • Cardinality
    • Annotated Relationships
    • Subtype Relationship
    • Resource: DAMA DMBOK
  • Data Domain Systems
    • First, Some Practical Observations
    • Data vs Information
    • The Need to Bridge the Gap
    • The Three Vs of Big Data
    • Limitations of Relational Databases
    • Limitations of Relational Databases (Cont'd)
    • What are NoSQL (Not Only SQL) Databases?
    • What are NoSQL (Not Only SQL) Databases?
    • The Past and Present of the NoSQL World
    • NoSQL Database Properties
    • NoSQL Benefits
    • NoSQL Database Storage Types
    • NoSQL Database Storage Types
    • The NoSQL Systems CAP Triangle
    • Limitations of NoSQL Databases
    • Big Data Sharding
    • Sharding Example
    • Mix-and-match Approach
    • Amazon S3
    • Amazon Storage SLAs
    • Amazon Glacier
    • Data Lifecycle Management with Amazon S3
    • Microsoft Azure Data Management Capabilities
    • Hadoop
    • Hadoop Distributed File System
    • HBase
    • Apache Spark
    • The Spark Platform
    • Running Spark on a Cluster
    • MongoDB
    • MongoDB Use Cases
    • Apache Cassandra
    • Apache Cassandra Design
    • Cassandra's Main Features and Qualities of Service
  • Supporting QoS Requirements
    • Tactics
    • Availability Tactics
    • Supporting System's High Availability
    • The CAP Theorem
    • Mechanisms to Guarantee a Single CAP Property
    • Modifiability Tactics
    • Horizontal and Vertical Scalability
    • Leveraging Cloud Scaling Services
    • Performance Tactics
    • Achieving the Performance You Need
    • Security Tactics
    • Single Sign-On (SSO) with Federated Identity Management
    • OpenID
    • OpenID Communication Diagram
    • OAuth 2.0
    • OAuth 2.0 Communication Diagram
    • OpenID Connect
    • OpenID Connect Communication Diagram
    • Operational Security in the Cloud
    • DevOps Security Concerns
    • Testability Tactics
    • Achieving Testability with Test-Driven Development and Continuous Integration
    • Typical Setup for OSS-based Continuous Integration
    • Responsive Web Design (RWD) Support for Usability
  • Solution Architecture Styles
    • Catalog of Architectural Styles
    • Asynchronous Messaging
    • Message Oriented Middleware (MOM)
    • Example MOM implementation Platforms
    • MOM Messaging
    • MOM Qualities
    • Publish/Subscribe Messaging
    • Point-to-Point Messaging (P2P)
    • MOM Related Standards
    • MOM Example
    • Service Oriented Architecture (SOA)
    • Service-Oriented Interaction Model
    • SOA Characteristics
    • Microservices
    • Microservices Architecture
    • Microservices vs Enterprise Service Bus (ESB)
    • Many Flavors of Web Services
    • Understanding REST
    • Understanding REST
    • Principles of RESTful Services
    • SOAP and RESTful Web Services
  • Patterns
    • What are Patterns?
    • Elements of a Pattern
    • Pattern Levels
    • Pattern Types
    • How to Start Using Patterns?
    • Common Architectural Patterns
    • Layers Pattern
    • Example: Retail Layered Architecture
    • Object-Oriented Design Patterns
    • OO Design Patterns
    • Structural Design Pattern: Facade Pattern Example
    • Enterprise Integration Patterns
    • Messaging Systems: Overview
    • Example Pattern: Pipes and Filters
    • Example: Monitoring Credit Bureau
    • EAA Patterns
    • Model-View-Controller (MVC) Pattern
    • SOA Patterns
    • Example: Saga Pattern
    • Business Process Patterns
    • Example: Synchronizing Merge Pattern
    • Configuration Management Patterns
    • New Patterns Continue to Emerge
    • Group Discussion: Patterns
  • Technical Architecture
    • What is Technical Architecture?
    • Two Components of Technical Architecture
    • Software Architecture
    • What a Technical Architecture is Not
    • Architectural Views
    • Rational Unified Process (RUP) 4 + 1 Views
    • The Implementation View
    • The Deployment View
    • Technology Modeling
    • The Essential Project: Technology Modeling overview
    • Layers of the Enterprise Architecture
    • Relationship with Other Architectures
    • Relationship between Business Architecture and TA
    • Relationship between EA, SA and TA
    • SA vs TA
    • Technical Architecture's Scope
    • The Technical Architect's Areas of Expertise
    • The Technical Architect's Tasks
    • Target System Elements Identification
    • Technical Architecture Governance
    • System Capacity Planning
  • Defining the Cloud
    • A Bit of History
    • Cloud Computing at a Glance
    • Electrical Power Grid Service Analogy
    • The NIST Perspective
    • Five Characteristics
    • On-demand Self-Service (NIST Characteristic)
    • Broad Network Access (NIST Characteristic)
    • Resource Pooling (NIST Characteristic)
    • Rapid Elasticity (NIST Characteristic)
    • Measured Service (NIST Characteristic)
    • The Three Cloud Service Models: IaaS, PaaS and SaaS
    • The Four Cloud Deployment Models (NIST)
    • The NIST Cloud Definition Framework
    • A Hybrid Cloud Diagram
    • Cloud Services
    • Managed vs Unmanaged Services
    • Shared Responsibility Model
    • The AWS (Simplified) Service Stack
  • Architecture Deliverables
    • Documentation Best Practices
    • Architecture Requirements Document
    • Template: Requirements Specification
    • IEEE Architectural Description Document
    • Template: Architectural Description Document
    • TOGAF Architecture Definition Document
    • Templates: Architectural Definition Document
    • Group Discussion: Architecture Definition Documents
    • Interface Specifications
    • Interface Specification Best Practices
    • Interface Design Document
    • Template: Interface Design Document
    • Database Design Document
    • Template: Database Design Document
    • Platform Design Document
    • Template: Platform Design Document
    • Architecture Decision Document
    • Template: Architecture Decision Document
    • Verbal Supports: CREST
    • Group Discussion: Presentations
  • Reference Architecture
    • Reference Architecture
    • Reference Architecture Components
    • Reference Architecture Summarized
    • Reference Architecture Context
    • Architecture Principles
    • Components of Principles
    • Qualities of a Good Set of Principles
    • Templates: Principle & Principle Catalog
    • Example: Architecture Principles
    • Sample: Architecture Principles
    • Group Discussion: Principles
    • Applying Architecture Principles
    • Policies
    • Template: Policy
    • Example: Governance Policies
    • Example: SOA Policy
    • Example: Policies
    • Reference Models
    • Example: Reference Model
    • Example: Architecture Use Cases
    • Example: SOA Reference Architecture
    • Practices: Standards & Guidelines
    • Example: Interoperability Standards
    • Resource: Financial Industry Organizations
    • Resource: Health Industry Organizations
    • Resource: Retail Industry Organizations
    • Resource: Technical Organizations
    • Industry Organizations
    • Insurance Industry Standards ROI
    • Requirements
    • Example: Mobile Security Reference Architecture
    • Example: MSRA Requirements
    • Architecture Building Blocks: Reusable Requirement Sets
    • Resource: NIST Security Requirements
    • Example: COTS Standard Requirements Set
  • Packaged Software and SaaS
    • Alternatives to Custom Development and Hosting
    • Open Source Software
    • Frameworks
    • Cloud Computing
    • Integration of Mixed Solutions
    • Implications for Architecture
    • Packaged Software Advantages & Disadvantages
    • SaaS Advantages and Disadvantages
    • Open Source Advantages and Disadvantages
    • Integration Strategies
    • The API Economy
    • COTS Implication: Accept Design Influence
    • COTS Implication: Plan for Stability
    • COTS Implication: Sustain Competency
    • COTS Implication: Vendor Lock-In
    • COTS Implication: Balance Business Needs & Architecture
    • COTS Inherent Risks
    • COTS Risk Management Strategies
    • Group Discussion: COTS
    • Typical COTS Architecture
  • Building Modern Applications
    • Next Generation Methodologies, Approaches, Tools, and Applications
    • Web 2.0
    • Rich Internet Client Applications
    • Single Page Applications (SPA) with AngularJS
    • Two-way Data Binding (the AngularJS Way)
    • Other Client Side MV(C) Frameworks
    • \"Rich Client\" - \"Thin Server\" Architecture
    • Mobile Platforms
    • Types of Mobile Applications
    • Native Mobile Applications
    • Mobile Web Applications
    • Hybrid Mobile Applications
    • Hybrid App Tools and Frameworks
    • RIA as a Driving Force to Turn the \"Thin Server\" into Microservice(s)
    • So, How Can Microservices Help Me?
    • The Data Exchange Interoperability Consideration
    • Microservices in Their Purest Form: AWS Lambdas
    • The Microservices Architecture Design Principles
    • Decentralized Processing
    • Crossing Process Boundary is Expensive!
    • Managing Microservices
    • Traditional Enterprise Application Architecture (Simplified)
    • Microservices Architecture Example (Simplified)
    • Design for Failure
    • Fault Injection During System Testing
    • Architecting in the Cloud
    • The Building Blocks of a Fault-tolerant Application on AWS
    • Dev and Ops Views
    • What is DevOps?
    • More DevOps Definitions
    • DevOps and Software Delivery Life Cycle
    • Main DevOps Objectives
    • The Term \"DevOps\" is Evolving!
    • Infrastructure as Code
    • Prerequisites for DevOps Success
    • Alignment with Business Needs
    • Collaborative Development
    • Continuous Testing and Integration
    • Continuous Release and Deployment
    • Continuous Application Monitoring
    • Standing Up DevOps
    • Select DevOps Techniques and Practices
    • Containerization and Virtualization
    • Machine Images On Demand
    • Virtualization
    • Hypervisors
    • Docker Containers
    • Docker Containers vs Traditional Virtualization
    • Docker as Platform-as-a-Service
    • Docker Integration
    • Docker Application Container Public Repository
    • Kubernetes
    • Other Containerization Systems
    • Where to Use Virtualization and Containerization
  • Solution Architect Lab Exercises
    • Lab 1. Defining the Problem
    • Lab 2. Defining the Boundary
    • Lab 3. Stakeholders, Views, and Viewpoints
    • Lab 4. Architecture Requirements
    • Lab 5. Business and Data Architecture
    • Lab 6. Application Architecture
    • Lab 7. Technical Architecture
    • Lab 8. Retrospective
    • Lab 9. Example Problem – Acme Paint and PaintPro
    • Lab 10. Background information for Acme Paint (optional)