| Course title | Software Engineering |
|---|---|
| Course code | KI/ESWI |
| Organizational form of instruction | Seminary |
| Level of course | Bachelor |
| Year of study | not specified |
| Semester | Summer |
| Number of ECTS credits | 5 |
| Language of instruction | English |
| Status of course | unspecified |
| Form of instruction | Face-to-face |
| Work placements | This is not an internship |
| Recommended optional programme components | None |
| Course availability | The course is available to visiting students |
| Lecturer(s) |
|---|
|
| Course content |
|
1. Introduction to systems engineering, software processes 2. Requirements analysis 3.-4. Software architecture design (system and application modelling) 5.-9. Version control systems (history, type of version control systems and their typical usage, history of Git, Git internals, Git for a single user, team and heavily decentralized groups, Git as a repository for custom programs) 10. Testing (functional, performance, security), validation, and verification 11.-12. Software evolution and API design (properties of proper API, modularization, library vs. framework, practical suggestions for API design, API vs. SPI, evolution of API and significance of automated tests) 13.-14. Deployment and support (availability, reliability, monitoring)
|
| Learning activities and teaching methods |
| unspecified |
| Learning outcomes |
|
The course focuses on the basics of software engineering. More attention is given to the problem of developing of reliable and fault-tolerant software systems. Modern formal methods for developing reliable SW are considered with the examples.
|
| Prerequisites |
|
unspecified
|
| Assessment methods and criteria |
|
unspecified
submission of a seminar paper on a selected topic in software engineering followed by the discussion |
| Recommended literature |
|
|
| Study plans that include the course |
| Faculty | Study plan (Version) | Category of Branch/Specialization | Recommended semester |
|---|