Get in Touch

Course Outline

Overview

  • System and Component Cohesion
  • System/Component Dependencies
  • Software Architecture
  • Technical Architecture
  • Enterprise Architecture
  • SOA and Microservices Architecture
  • Relationships Between Above Concepts
  • Logic Redundancy vs. Dependency
  • Data Redundancy vs. Dependency

Software Architecture

Fundamentals

  • Clarification of terms: architecture, design, modeling
  • Orthogonality
  • Conway's Law

Common Architectures

  • Modular decomposition
  • Hierarchical architecture
  • Centralised (Mediator Pattern)
  • Event-based architecture
  • Interrupt-based
  • OSI
  • Client/Server
  • Layer model

Principles of OO Design

  • DRY, SRP
  • Encapsulation
  • Program against an interface
  • Liskov's Principle
  • Law of Demeter

Design Patterns

  • What are Design Patterns
  • Creational Patterns
  • Structural Patterns
  • Behavioural Patterns
  • Model-Controller-View (MCV)

Design Tools

  • Domain-specific language
  • Lexical Analysis
  • CRC cards
  • Scenarios
  • Use Case descriptions

UML Graphical Representations

  • Class Diagram
  • Sequence Diagram
  • Aggregation diagram
  • UML tools

Non-UML Graphical Representations

  • ER-modeling
  • State Machine
  • Data flow
  • Architectural model

Design and Maintenance

  • Lehmann's Laws
  • Architectural Antipatterns
  • Refactoring Strategies

SOA and Integration Patterns

  • Integration technologies and methods
  • Synchronous/Asynchronous
  • More details on direct communication patterns
  • Direct and brokered communication
  • Message Queuing
  • ESB

Deployment Patterns

  • Code Deployment
  • Immutable deployment
  • Availability, Scalability, High Performance, Fault tolerance patterns
  • Data and messages replication and clustering (CAP theorem)
 21 Hours

Number of participants


Price per participant

Testimonials (7)

Upcoming Courses

Related Categories