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)
Testimonials (5)
Maybe more exercises could be better for lerning but the time was to little
Gianpiero Arico' - Urmet Spa
Course - Embedded Linux Systems Architecture
Learning method, parallel work of each participant with the material that the lecturer realized and described.
Krzysztof - Seth Software
Course - System Architecture, Service Architecture, and Microservice Architecture with Spring Cloud
Machine Translated
-Knowledge of the teacher in the subject was really good. He was able to explain very nicely and was able to answer all the questions at that moment. -To be able to know what all the tool is capable of was really good. -The structure he showed, like using scenarios and traceability would be really helpful in my day-to-day work.
Harsha Jain - Scania CV AB
Course - Introduction to Enterprise Architect
Great knowledge.
Marie - Forsvarets forkningsinstitutt
Course - Systems Modeling with SysML and Enterprise Architect (EA)
I really enjoyed the real examples and exercises.