Hide menu

Software Engineering (CUGS Core)


Status Archive
School National Graduate School in Computer Science (CUGS)
Division SAS
Owner Kristian Sandahl
Homepage http://www.ida.liu.se/~krisa/vuxenpum/

  Log in  

Course plan


Ca. 24 hours (4 full days)
2014 (week 13 and/or week 14)

Recommended for

Mandatory course for CUGS doctoral students in computer science.

The course was last given

2012. It is given every year in March-April.


CUGS core course.
The course gives a broad overview of the theory of software engineering and treats selected topics in more depth.


Data structures and algorithms;
Programming in an object-oriented language (Java or C++)


The following list of issues is preliminary. A detailed list of lectures will be announced on the course homepage before course start.

  • Software life cycles and processes
  • Requirements specification
  • Quality control and metrics
  • Software project organisation and documentation
  • Modern concepts in object-oriented programming languages:
    Design by contract, syntactic and semantic substitutability,
    fragile base class problems
  • Introduction to UML
  • Introduction to design patterns
  • COTS component systems, e.g. CORBA, EJB, COM
  • Aspect-oriented programming (Aspect-J)
  • Software architecture systems (e.g., UNICON, CoSy)
  • Static and dynamic metaprogramming
  • Model-driven software development and MDA
  • Software testing


The course is given in an intensive format ("crash course") at
Linköping university.


  • Pfleeger, S. L. and Atlee, J. M. Software Engineering - Theory and Practice, 4th edition, Pearson Education International, 2009, ISBN10: 0138141819. ISBN13: 9780138141813
  • C. Szyperski: Component Software, 2nd edition, 2002.

Further literature on specific topics will be announced in the course.


Kristian Sandahl, Christoph Kessler, Mariam Kamkar
and others.


Kristian Sandahl


Written exam, 5 hp, in Linköping.


5 hp

Organized by

Department of Computer Science, Linköping University


Overlap with other courses:

  • Full overlap: Software Engineering Theory,

  • Partial overlap: TDDD05 Component based software

Course web page

Page responsible: Director of Graduate Studies