DD2386 Patterns for Large-scale Development 7.5 credits
Mjukvarukonstruktion i större system
Education cycleSecond cycle
Main field of studyComputer Science and Engineering
Information and Communication Technology
Grading scaleA, B, C, D, E, FX, F
At present this course is not scheduled to be offered.
Intended learning outcomes
After completion of the course, the student should be able to
- identify the need of design patterns in development of new or in administration of existing code, and implement these, where appropriate
- structure, from an object-oriented perspective, large programs so that they become easier to understand and manage
- design and document public APIs with a clear responsibility
- design entities so that they become testable and write tests for them
- protect the internal design from the public APIs
- develop a program in collaboration with other developers
- review and reflect on program code
- develop given program code
in order to
- understand and master the parameters within software development that make program code sustainable, re-usable flexible to change of requirements.
Course main content
Design patterns: open-closed principle, single responsibility principle, inversion of control, strategy pattern, template pattern, adapter pattern, wrapper pattern, decorator pattern and builder pattern; unit - and system testing, dependency injection, global state, APIs, implementation leakages, documentation of components.
The course consists of a series of lab assignments, sprints, where new demads will be presented in each sprint. At the end, code review of code written by others should be performed.
For non-program students, 90 credits being required of which 45 credits have to be within mathematics or informatics. Furthermore English B or the equivalent is required .
Reading list is presented no later than 4 weeks before the start of the course on the course web.
- PRO1 - project, 7.5, grading scale: A, B, C, D, E, FX, F
Tomas Ekholm, email@example.com
Tomas Ekholm <firstname.lastname@example.org>
The course will be replaced by DD2487 from 2017.
Course syllabus valid from: Autumn 2015.
Examination information valid from: Spring 2019.