Semester: 5
ECTS: 5
Lectures: 30
Practice sessions: 30
Independent work: 90
Module Code: 24-000-0129
Semester: 5
ECTS: 5
Lectures: 30
Practice sessions: 30
Independent work: 90
Module Code: 24-000-0129

Module title:


Software engineering

Lecturers and associates:



Module overview:


The aim of the module is to familiarize students with standard concepts and best practices in the business sector of software development and engineering.
This is a central module within the study program and introduces topics that are important for roles within a software development project team and introduces students to globally relevant methodology. By attending this module, students acquire organizational skills that are crucial for any software development project. Acquired skills significantly contribute to the professional development of students in related professional fields.
The module is taught in the programming language C#. The final evaluation is based on solving a series of small practical tasks using the given programming language and tools for software development.
Students will learn:
- types of software development methods
- roles in agile or waterfall methodologies and related duties
- artifacts that should be created in the process of creating a successful software project
- organize the requirements and develop the specification of the software system
- create visual language diagrams for system modeling (UML)
- ways to use best practices in areas such as unit testing and core implementation patterns to promote a culture of software development.

Literature:


Required readings:
1. Martin, R. (2008) Clean Code: A Handbook of Agile Software. Hoboken: Prentice Hall.

Supplementary readings:
1. Sommerville, I. (2010) Software Engineering. 9th edn. London: Pearson.