Study Guide@lith
 

Linköping Institute of Technology

 
 
Valid for year : 2016
 
TDDB84 Design Patterns, 6 ECTS credits.
/Designmönster/

For:   CS   D   DAV   DI   I   Ii   IT   MT   U  

 

Prel. scheduled hours: 40
Rec. self-study hours: 120

  Area of Education: Technology

Main field of studies: Computer Science, Computer Engineering, Information Technology

  Advancement level (G1, G2, A): A

Aim:
After the course, students shall be able to:
  • identify and explain design principles and patterns in software
  • apply design principles and patterns when working with software
  • describe the purpose with and consequences of design patterns
  • critically evaluate consequences of design patterns with respect to desired software qualities,
  • analyze the relationship between design principles, design patterns, and programming language design, application frameworks, or application domains.


Prerequisites: (valid for students admitted to programmes within which the course is offered)
The student must be well acquainted with programming in at least one object-oriented programming language and must have used advanced algorithms and data structures. The student must be acquainted with a modelling language (UML) for object-oriented systems. The student should understand the overall structure and organization of large programs. The student should know how to read research papers on software engineering and search information independently on new topics.

Note: Admission requirements for non-programme students usually also include admission requirements for the programme and threshhold requirements for progression within the programme, or corresponding.

Supplementary courses:
Component-based software, enterprise systems

Organisation:
Students will review online lecture material and study the course literature in groups, and attend group seminars where course topics will be discussed. Students will perform a series of lab assignments in groups to analyze software components with respect to design principles and patterns, and study how design principles affect the ability to modify and extend software components.

Course contents:
Software design. Design Patterns. History of design patterns. Refactoring. Testability, domain-specific languages, dependency injection, SOLID

Course literature:
[Gamma, Helm, et.al. Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley 1995]. [Freeman & Freeman, Head First Design Patterns]. Selected articles on software design and design patterns.

Examination:
Written report
Laboratory Assignments
3 ECTS
3 ECTS
 



Course language is English.
Department offering the course: IDA.
Director of Studies: Ahmed Rezine
Examiner: Ola Leifler
Link to the course homepage at the department


Course Syllabus in Swedish

Linköping Institute of Technology

 


Contact: TFK , val@tfk.liu.se
Last updated: 12/10/2015