Background. The architecture of the automated system is the main source of quality of software and software-hardware systems. It determines how quickly and efficiently a developer is able to analyze, understand, test, extend, and maintain an automated system. Changes in the system architecture have a high cost due to its complexity and the possibility of destruction during expansion. At present, most of the knowledge and information about the design decisions on which the architecture is based are implicitly embedded in it, which leads to problems during the development process, in particular, during the programmatic implementation of its structural elements. It is determined that, despite the long way that the evolution of systems architecture has passed, today there are very few objective, repeatable and empirically based methodologies and tools for the design and analysis of architecture. As a rule, software architects are programmers who have decades of experience in software development practice. Given their experience, they clearly understand that errors in the architecture design are the root causes of lower-level problems that manifest in the software code. Most often, a programmer feels when the architecture of his project is of low quality, because there are a large number of technical flaws, the number of which only increases with time. But most projects continue to be implemented, which leads to a decrease in the quality of the finished automated system. Objective. The purpose of this work is to design and document the software architecture of the automated system for creating the accompanying documentation of the educational process in order to take the first step towards understanding the relationships and the impact of the adopted project decisions on the code base. Conclusions. To achieve the goal, a class of multi-level architectures was chosen, among which the three-level architecture is the most common. Features of implementation of open and closed three-level architectures are considered. On the basis of the MVC architectural template, an architectural project of an automated system for creating accompanying documentation of the educational process has been developed. The main subsystems and data elements are documented.
Read full abstract