Software architecture

Key Practices of a Software Architect

This course is an introduction to systems architecture (software architecture) and introduces key practices: requirements elicitation, design, documentation, analysis, and evaluation of architecture, and gives an understanding of the place of architecture in the software development life cycle.

Domain Driven Design

During the course, students will learn how Domain Driven Design (DDD) helps build Enterprise systems with complex business logic, analyze strategic (Bounded Contexts) and tactical (Aggregates) approaches to implementing systems, and consider Enterprise architectures that can be successfully applied with DDD. The course is based on real-world examples with lots of code examples.

Enterprise Application Design Templates

Examines best design practices based on typical solutions tested in a multitude of projects – enterprise application design patterns.

Analytical Templates

The main objective of the course is to consider techniques for building a conceptual model of an application based on the use of templates, and the possibility of reusing designs made in object-oriented analysis. The course provides practical advice on building a UML representation of the conceptual model and on further transforming the conceptual model into a design.

Designing high performance applications

The course examines the differences between high-load, high-reliability, and high-performance systems. The main goal of the course is to provide an introduction to the basic concepts, principles, and approaches used in the design of high-performance systems. The course will be useful not only for architects, but also for development project managers and lead developers.

Integration in enterprise systems

The course deals with the basic methods and technologies of integration in enterprise systems.

Architecture in Agile projects

This course introduces students to basic architectural practices in the context of Agile. How the concepts of Agile and architectural practices complement each other, what biases may result in one way or another, and how practically you can and should adapt the work of an architect in Agile projects.

Microservice Architecture

This course introduces students to the basic concepts of microservice architecture (MSA). The concept of microservice architecture is introduced, its relationship to “traditional” system construction techniques is examined. Patterns of microservice architecture aimed at ensuring the quality of the developed system are given. Deployment issues and techniques to ensure meaningful qualities of MCA are discussed in detail.

Cloud application architecture

A general course in cloud application design with hands-on activities. In addition to introduction to the basic principles of building systems in the cloud, we will look at the basic building blocks offered by IaaS/PaaS/SaaS solutions providers, methods and features of their application. In practice we will build a virtual network, form application structure and address quality attributes.

Digital Transformation Technologies

The training course describes the key technologies of digital transformation (Digital Transformation). Digital technologies are penetrating everyday life, pushing the boundaries of business, changing industries, turning markets upside down, and so most executives expect to see new players that can change the status quo.

Corporate Architecture Based on TOGAF

The concept of managing enterprise enterprise architecture, is a way to synchronize the needs of the organization with the capabilities of information technology in the face of increasing technology complexity and accelerating changes in existing business processes.

Modeling in ArchiMate

The ArchiMate modeling language specification (The Open Group) contains elements for modeling all architectural layers: goals and motivation, business architecture and requirements, business processes, applications, and technology. The training course allows you to learn both the notation of the language ArchiMate, and to test it on the example of the latest version of the free tool Archi.