Summary of Study |
Summary of Branches |
All Subject Groups |
All Subjects |
List of Roles |
Explanatory Notes
Instructions
Anotation:
The subject introduces to the design process of a software system from requirements gathering to a detailed object-oriented design. It is based on existing development methodologies, especially object-oriented, and the UML language will be used as a dominant formalism. The subject is oriented mainly on reliability analysis and formal and informal methods to reduce error rate in design phases.
Study targets:
The course is aimed to learn the student how to design a software system. After successful completion of the course, the student is able to actively apply the object-oriented software design methodology using UML and to design multi-threaded applications. Further on, he gets an overview of technologies for distributed application design including RPC, RMI, web services, Corba and COM+.
Course outlines:
1. | | User requirements, system functionality definition, formal and informal procedures to user specification |
2. | | Technical specification, structural system design, relationship of functional and non-functional requirements on systems |
3. | | Description and use of UML language |
4. | | System design using UML |
5. | | Object-oriented design |
6. | | Object-oriented design |
7. | | Object-oriented design |
8. | | Component design, module identification, guidelines for creating API |
9. | | Distributed components, distributed systems, design and formalisms |
10. | | Distributed system design, properties of distributed systems |
11. | | Synchronous and asynchronous systems, event-driven systems |
12. | | System integration, error rate, error propagation |
13. | | Integration of systems, integration of external data sources, external dependencies |
14. | | Design risk management, technical plan of the project |
Exercises outline:
1. | | Organization, safety rules, rules for credit assignment |
2. | | User requirements, requirements specification |
3. | | Technical specification, structural system design, functional and non-functional requirements |
4. | | Examples of modeling in UML language - requirements and class models |
5. | | Communication and collaboration models in UML, semestral work assignment |
6. | | Autonomous work - object-oriented design |
7. | | Autonomous work - object-oriented design |
8. | | Autonomous work - component design, interface design |
9. | | Example of distributed system design |
10. | | Event-driven systems |
11. | | Data source integration |
12. | | Semestral work presentation |
13. | | Semestral work presentation |
14. | | Credits |
Literature:
[1] | | Rumbauhg, J., Blaha, M., Premerlani, W., Eddy, F., Lorenson, W.: |
Object-oriented Modelling and Design. Prentice Hall, 1991
[2] | | Beneš, J.: Manažerské informační systémy. Automatizace, 2000 |
[3] | | Mařík a kol.: Umělá inteligence I-IV. |
Requirements:
The requirement for the examination and up-to-date information on lectures and seminars can be found at
http://cw.felk.cvut.cz/doku.php/courses/a4m33nms/start
Webpage:
http://cw.felk.cvut.cz/doku.php/courses/a4m33nms/start
Keywords:
Object-oriented analysis and design, UML, Unified Modeling Language, multi-threaded applications, race conditions, distributed applications, RPC, RMI, Corba, web services, COM+.
Subject is included into these academic programs:
Page updated 6.12.2019 17:52:32, semester: Z,L/2020-1, L/2018-9, Z,L/2019-20, Send comments about the content to the Administrators of the Academic Programs |
Proposal and Realization: I. Halaška (K336), J. Novák (K336) |