What is system architecture and design

Software design & software architecture

Software design in two phases: software architecture vs. technical design

Basically, IT design can be divided into two main phases. In the first phase, the IT architecture is defined, for which the concrete technical design is then determined in the second phase.

IT architecture

The IT architecture defines which sub-systems and components the IT system should consist of. This is about the basic structure of the IT system. The IT architecture can be designed largely independently of the specific technologies used. Because the first thing is to create a structure that best covers the requirements. In addition to the non-functional requirements (e.g. maintainability or expandability), the specifications of "Enterprise Architecture Management" also play an important role in achieving optimal integration with other systems in the company.

Modern architectures such as the microservice approach have proven to be very effective in many projects that we have carried out with our customers.

Illustrative representations have become established for the specification of the IT architecture. We almost exclusively use the Unified Modeling Language (UML) for the IT architecture. This very powerful notation offers different types of diagrams, each offering a different view of the IT system.

These different perspectives make it possible to illuminate all aspects of the system and reflect the different perspectives of the stakeholders. Here is an excerpt from the most important UML diagram types that we regularly use in our projects:

Entity Relationship Model

The ER diagram describes which data a software system should process and how they are internally related to each other (relations). An ER model also provides a kind of glossary at the same time. This avoids confusion of terms

Functional model

The functional model describes which components an IT system consists of and which interfaces the components use to communicate with one another.

 

Sequence diagram

The sequence diagram shows the communication processes between the components.