With the emergence of very complex distributed systems, complexity of a single system moved to the complexity of the architecture of the group of systems. This course covers the relationship of Software Architecture with Technical Enterprise Architecture. These two areas are interrelated in a way which currently is not well described. For example, splitting complex monolithic system into two systems communicating via web services will trigger substantial changes to both the new systems, and the architecture between them.
This course will cover trade-offs, currently common patterns and solutions for managing complex systems and communication within and between them.
Overview
- System and Component Cohesion
- System/component Dependencies
- Software Architecture
- Technical Architecture
- Enterprise Architecture
- SOA and Micro services architecture
- Relationships between above concepts
- Logic redudancy vs dependency
- Data reduancy vs dependency
Software Architecture
Fundamentals
- clarification of terms: architecture, design, modeling
- orthogonality
- conways 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
- Liskovs 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
- Lehmanns Laws
- Architectural Antipatterns
- Refactoring Strategies
SOA and Integration Patterns
- Integration technologies and methods
- Synchronous/Asynchronous
- More details direct communication patterns
- Direct and brokered communication
- Message Queuing
- ESB
Deployment Patterns
- Code Deployment
- Immutable deployment
- Availability, Scaleability, High Performance, Fault tolerance patterns
- Data and messages replication and clustering (CAP theorem)
United Arab Emirates - Technical Architecture and Patterns
Qatar - Technical Architecture and Patterns
Egypt - Technical Architecture and Patterns
Saudi Arabia - Technical Architecture and Patterns
South Africa - Technical Architecture and Patterns
Brasil - Technical Architecture and Patterns
Canada - Technical Architecture and Patterns
中国 - Technical Architecture and Patterns
香港 - Technical Architecture and Patterns
澳門 - Technical Architecture and Patterns
台灣 - Technical Architecture and Patterns
USA - Technical Architecture and Patterns
Österreich - Technical Architecture and Patterns
Schweiz - Technical Architecture and Patterns
Deutschland - Technical Architecture and Patterns
Czech Republic - Technical Architecture and Patterns
Denmark - Technical Architecture and Patterns
Estonia - Technical Architecture and Patterns
Finland - Technical Architecture and Patterns
Greece - Technical Architecture and Patterns
Magyarország - Technical Architecture and Patterns
Ireland - Technical Architecture and Patterns
Luxembourg - Technical Architecture and Patterns
Latvia - Technical Architecture and Patterns
España - Arquitectura Técnica y Patrones
Italia - Technical Architecture and Patterns
Lithuania - Technical Architecture and Patterns
Nederland - Technical Architecture and Patterns
Norway - Technical Architecture and Patterns
Portugal - Technical Architecture and Patterns
România - Technical Architecture and Patterns
Sverige - Technical Architecture and Patterns
Türkiye - Technical Architecture and Patterns
Malta - Technical Architecture and Patterns
Belgique - Technical Architecture and Patterns
France - Technical Architecture and Patterns
日本 - Technical Architecture and Patterns
Australia - Technical Architecture and Patterns
Malaysia - Technical Architecture and Patterns
New Zealand - Technical Architecture and Patterns
Philippines - Technical Architecture and Patterns
Singapore - Technical Architecture and Patterns
Thailand - Technical Architecture and Patterns
Vietnam - Technical Architecture and Patterns
India - Technical Architecture and Patterns
Argentina - Arquitectura Técnica y Patrones
Chile - Arquitectura Técnica y Patrones
Costa Rica - Arquitectura Técnica y Patrones
Ecuador - Arquitectura Técnica y Patrones
Guatemala - Arquitectura Técnica y Patrones
Colombia - Arquitectura Técnica y Patrones
México - Arquitectura Técnica y Patrones
Panama - Arquitectura Técnica y Patrones
Peru - Arquitectura Técnica y Patrones
Uruguay - Arquitectura Técnica y Patrones
Venezuela - Arquitectura Técnica y Patrones
Polska - Technical Architecture and Patterns
United Kingdom - Technical Architecture and Patterns
South Korea - Technical Architecture and Patterns
Pakistan - Technical Architecture and Patterns
Sri Lanka - Technical Architecture and Patterns
Bulgaria - Technical Architecture and Patterns
Bolivia - Arquitectura Técnica y Patrones
Indonesia - Technical Architecture and Patterns
Kazakhstan - Technical Architecture and Patterns
Moldova - Technical Architecture and Patterns
Morocco - Technical Architecture and Patterns
Tunisia - Technical Architecture and Patterns
Kuwait - Technical Architecture and Patterns
Oman - Technical Architecture and Patterns
Slovakia - Technical Architecture and Patterns
Kenya - Technical Architecture and Patterns
Nigeria - Technical Architecture and Patterns
Botswana - Technical Architecture and Patterns
Slovenia - Technical Architecture and Patterns
Croatia - Technical Architecture and Patterns
Serbia - Technical Architecture and Patterns
Bhutan - Technical Architecture and Patterns