|
Lecturer(s)
|
-
Mouček Roman, doc. Ing. Ph.D.
|
|
Course content
|
1. Introduction to software engineering and the organization of software development. 2. Elicitation, analysis, specification, and management of software requirements. 3. Software processes, life cycle models, and development methodologies. 4. People, teams, and software project management. 5. Analysis and modeling of software systems. 6. Software design and software architecture. 7. Implementation, configuration management, and collaborative software development. 8. Software quality and testing. 9. Software deployment, operation, maintenance, and evolution. 10. Economic, legal, and professional aspects of software development. 11. Use of artificial intelligence in software engineering and current trends. 12. Practical examples and application of software engineering principles. 13. Summary and integration of topics within a team software project.
|
|
Learning activities and teaching methods
|
- unspecified
- 12 hours per semester
- Contact hours
- 52 hours per semester
- Team project (50/number of students)
- 50 hours per semester
- Presentation preparation (report in a foreign language) (10-15)
- 10 hours per semester
- Preparation for an examination (30-60)
- 32 hours per semester
|
| prerequisite |
|---|
| Knowledge |
|---|
| - to understand the basic principles of imperative programming, - to describe basic data structures and algorithms, - to describe the structure and meaning of the code unit, - to be familiar with the program code documentation |
| Skills |
|---|
| - to create simple computer programs in an imperative programming language, - to use appropriate data structures and algorithms, - to assess the basic qualitative parameters of the computer program, - to document the program code, - to work in an integrated development environment |
| Competences |
|---|
| N/A |
| N/A |
| N/A |
| N/A |
| learning outcomes |
|---|
| Knowledge |
|---|
| - understand the key principles of software engineering and their interrelationships, - identify and understand stakeholder needs and requirements for a software product, - characterize the basic software process models and development methodologies, - understand the basic principles of software analysis, modeling, design, and architecture, - understand the principles of software implementation, quality assurance, deployment, operation, maintenance, and evolution, - understand the principles of software version, configuration, and change management, - understand the principles of software project management and the leadership and organization of software teams, - understand the basic economic, legal, and professional aspects of software development, as well as the possibilities and limitations of using artificial intelligence in software development. |
| Skills |
|---|
| - collect, analyze, specify, and manage requirements for a software product, - select and justify an appropriate way of organizing the development process with respect to the nature of the software project, - perform basic analysis and modeling of a software system and design its basic structure, - apply basic principles of quality assurance, configuration management, and change management in software development, - apply basic methods of planning, managing, and coordinating a software project, - collaboratively develop a software product and justify the key decisions made during its development. |
| Competences |
|---|
| N/A |
| N/A |
| N/A |
| N/A |
| N/A |
| teaching methods |
|---|
| Knowledge |
|---|
| Interactive lecture |
| Task-based study method |
| Multimedia supported teaching |
| Skills |
|---|
| Project-based instruction |
| Skills demonstration |
| Group discussion |
| Students' portfolio |
| Competences |
|---|
| Interactive lecture |
| Task-based study method |
| Project-based instruction |
| Skills demonstration |
| Group discussion |
| Students' portfolio |
| Multimedia supported teaching |
| assessment methods |
|---|
| Knowledge |
|---|
| Combined exam |
| Oral exam |
| Skills |
|---|
| Skills demonstration during practicum |
| Project |
| Continuous assessment |
| Group presentation at a seminar |
| Competences |
|---|
| Combined exam |
| Skills demonstration during practicum |
| Project |
| Continuous assessment |
| Group presentation at a seminar |
| Oral exam |
|
Recommended literature
|
-
Šochová, Zuzana; Kunce, Eduard. Agilní metody řízení projektů. 3. aktualizované vydání. 2024. ISBN 978-80-251-5107-5.
|