Course Outline

Basics of Software Architecture

• What is architecture?

• Who is an architect and what role do they play?

• Risk management

System Parameters - What are System Parameters?

• How to properly define non-functional requirements

• Description of system parameters:

• User comfort, Security, Performance,

• Availability, Reliability, Scalability,

• Realizability, Testability, Maintainability, Manageability

• System dimensions

• Prioritization of system parameters

Architectural Patterns

• Introduction to patterns

• Stable Dependency Principle

• Responsibility division patterns: MVC vs SPA, N-Tier and Layers

• Infrastructure patterns:

• Horizontal and vertical scaling, Modularity

• Load Balancing, Path Redundancy, Clusters, Clouds

• EAI Patterns: Message Broker, SOA, ESB and similar

• Microservices

• Presentation of selected pattern templates

Microservices in detail

• How it relates to SOA

• And how to a Monolith

• Advantages and disadvantages of Microservices

• Cloud services: IaaS, CaaS, PaaS, FaaS, SaaS

• When to choose, when not to, and how to start

• Data in Microservices and the BASE approach

• Auxiliary patterns: CQRS and Event Sourcing

Client Layer and Presentation Architecture

• Session storage

• Client segmentation

• Thick client technologies: graphical libraries vs RCP

• Thin client support: for MVC, SPA (Angular, Vue, React)

• Advanced browser communication: AJAX, WebSocket

Business Layer Architecture

• Distributed processing

• Remote vs local communication

• Communication protocols:

• CORBA, SOAP, REST, GraphQL, Sockets, RMI, gRPC...

Integration Layer and Resources Architecture - Data Persistence Technologies:

• RDBMS, hierarchical databases, NoSQL, BigData

• Asynchronous communication

Architecture Overview in UML

• Component diagram (component diagram)

• Deployment diagram (deployment diagram)

 21 Hours

Number of participants


Price Per Participant (Exc. Tax)

Testimonials (5)

Provisional Courses

Related Categories