Get in Touch

Course Outline

Course Overview

  • System and Component Cohesion
  • Dependencies Between Systems and Components
  • Software Architecture
  • Technical Architecture
  • Enterprise Architecture
  • SOA and Microservices Architecture
  • Interrelationships Among Key Concepts
  • Logic Redundancy vs. Dependency
  • Data Redundancy vs. Dependency

Software Architecture

Fundamentals

  • Clarifying Terminology: Architecture, Design, and Modeling
  • Orthogonality in System Design
  • Conway’s Law

Common Architectural Styles

  • Modular Decomposition
  • Hierarchical Architecture
  • Centralized Control (Mediator Pattern)
  • Event-Driven Architecture
  • Interrupt-Based Models
  • OSI Model
  • Client/Server Architecture
  • Layered Models

Principles of Object-Oriented Design

  • DRY and SRP
  • Encapsulation
  • Program to an Interface
  • Liskov Substitution Principle
  • Law of Demeter

Design Patterns

  • Understanding Design Patterns
  • Creational Patterns
  • Structural Patterns
  • Behavioral Patterns
  • MVC (Model-View-Controller)

Design Tools and Techniques

  • Domain-Specific Languages
  • Lexical Analysis
  • CRC Cards
  • Scenario-Based Design
  • Use Case Descriptions

UML Graphical Notations

  • Class Diagrams
  • Sequence Diagrams
  • Aggregation Diagrams
  • UML Tooling

Non-UML Graphical Notations

  • Entity-Relationship (ER) Modeling
  • State Machine Diagrams
  • Data Flow Diagrams
  • Architectural Models

Design and Maintenance Considerations

  • Lehman’s Laws of Software Evolution
  • Architectural Antipatterns
  • Refactoring Strategies

SOA and Integration Patterns

  • Integration Technologies and Methodologies
  • Synchronous vs. Asynchronous Communication
  • In-Depth Analysis of Direct Communication Patterns
  • Direct Communication vs. Brokered Communication
  • Message Queuing Systems
  • Enterprise Service Bus (ESB)

Deployment Patterns

  • Code Deployment Strategies
  • Immutable Infrastructure and Deployment
  • Patterns for Availability, Scalability, High Performance, and Fault Tolerance
  • Data and Message Replication; Clustering (CAP Theorem)
 21 Hours

Number of participants


Price per participant

Testimonials (7)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories