13M111ES - Software Evolution
Course specification | ||||
---|---|---|---|---|
Course title | Software Evolution | |||
Acronym | 13M111ES | |||
Study programme | Electrical Engineering and Computing | |||
Module | Applied Mathematics, Audio and Video Communications, Audio and Video Technologies, Biomedical and Environmental Engineering, Biomedical and Nuclear Engineering, Computer Engineering and Informatics, Electronics, Electronics and Digital Systems, Energy Efficiency, Information and Communication Technologies, Microwave Engineering, Nanoelectronics and Photonics, Power Systems - Networks and Systems, Power Systems - Renewable Energy Sources, Power Systems - Substations and Power Equipment, Signals and Systems, Software Engineering, System Engineering and Radio Communications | |||
Type of study | master academic studies | |||
Lecturer (for classes) | ||||
Lecturer/Associate (for practice) | ||||
Lecturer/Associate (for OTC) | ||||
ESPB | 6.0 | Status | elective | |
Condition | none | |||
The goal | To give the student a theoretical and practical foundation for understanding and addressing advanced topics in software evolution, including processes, methodologies and tools. | |||
The outcome | After completing this course, students should be able to: Understand and categorize the causes of software evolution. Understand the advantages and disadvantages of various technologies for evolving software systems Analyze an existing system, explore possible change strategies and construct a plan for evolving the system Efficiently use various tools for implementing change. | |||
Contents | ||||
Contents of lectures | The evolution life cycles, types of software maintenance. Lehman's laws of evolution. Program understanding and reverse engineering. Cost estimation, prediction of changes, impact analysis. Configuration and Change Management, Refactoring, Aspect-oriented programming, feature oriented programming, program transformations. | |||
Contents of exercises | Laboratory exercises illustrating some of the concepts, techniques, and tools discussed in the lectures. Two practical student projects. | |||
Literature | ||||
| ||||
Number of hours per week during the semester/trimester/year | ||||
Lectures | Exercises | OTC | Study and Research | Other classes |
2 | 2 | |||
Methods of teaching | Lectures, exercises, individual work on the projects | |||
Knowledge score (maximum points 100) | ||||
Pre obligations | Points | Final exam | Points | |
Activites during lectures | 0 | Test paper | 0 | |
Practical lessons | 0 | Oral examination | 50 | |
Projects | ||||
Colloquia | 0 | |||
Seminars | 50 |