Normalized Software Systems
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
NIE-NSS | ZK | 5 | 2P | English |
- Relations:
- It is not possible to register for the course NIE-NSS if the student is concurrently registered for or has already completed the course DA-SEA (mutually exclusive courses).
- It is not possible to register for the course NIE-NSS if the student is concurrently registered for or has previously completed the course DA-SEA (mutually exclusive courses).
- Course guarantor:
- Lecturer:
- Tutor:
- Supervisor:
- Department of Software Engineering
- Synopsis:
-
Students will learn the foundations of normalized systems theory that studies the evolvability of modular structures based on concepts from engineering, such as stability from system theory and entropy from thermodynamics. Students will understand a set of principles that indicate where violations of stability and entropy-related issues occur in any given software architecture. In the second part of the course, students learn how to construct software architectures using a set of 5 design patterns called elements. These elements provide the core functionality of information systems in terms of storing data, executing actions, workflows, connectors, and triggers, while handling violations of the stability and entropy-related principles. This knowledge allows students to realize new levels of evolvability in software architectures.
- Requirements:
-
Basic knowledge of basics of software engineering and programming languages.
- Syllabus of lectures:
-
Course will be realized in a block (concentrated) form in the first or second week of May.
The main lecturer will be prof. Jan Verelst from University of Antwerp, co-author of the book Normalized Systems (see study materials)
1. (2) Engineering basics: stability in systems theory; entropy in statistical thermodynamics.
2. (3) Normalized Systems Theory: principles, elements.
3. (3) Normalized systems tools: expanders, Prime Radiant.
4. (3) Enterprise Engineering: applying the NS theory to enterprises.
5. (2) Reflection: applying the concepts from engineering to software and enterprises.
- Syllabus of tutorials:
-
There are not exercises.
- Study Objective:
-
The goals of the subject are:
- to understand the concepts of stability and entropy, and their application to the context of evolvability of software architectures, business processes and enterprise architectures
- to understand the role of tools to build fine-grained modular structures at the software level
- to practice and learn the identification of combinatorial effects as well as the programming of customizations conforming to the NS principles
- to practice and learn the application of the NS principles to the level of BPMN processes and the design of NS elements at the enterprise level
- Study materials:
-
1. Mannaert, H. - Verelst, J. - De Bruyn, P. : Normalized systems theory : from foundations for evolvable software toward a general theory for evolvable design. Koppa, 2016. ISBN 978-90-77160-09-1.
2. Mannaert, H. - Verelst, J. : Normalized Systems: Re-creating Information Technology based on Laws for Software Evolvability. Koppa, 2009. ISBN 978-90-77160-00-8-S.
3. Ford, N. - Parsons, R.- Kua, P. : Building Evolutionary Architectures: Support Constant Change. O’Reilly Media, Inc., 2017. ISBN 978-1491986363.
- Note:
- Further information:
- https://moodle-vyuka.cvut.cz/course/view.php?id=6943
- No time-table has been prepared for this course
- The course is a part of the following study plans:
-
- Master specialization Software Engineering, in English, 2021 (PS)
- Master specialization Computer Security, in English, 2021 (elective course)
- Master specialization Computer Systems and Networks, in English, 2021 (elective course)
- Master specialization Design and Programming of Embedded Systems, in English, 2021 (elective course)
- Master specialization Computer Science, in English, 2021 (VO)
- Master Specialization Digital Business Engineering, 2023 (compulsory elective course)
- Master specialization Computer Science, in English, 2024 (VO)