Skip to main content
Till KTH:s startsida Till KTH:s startsida

DD2386 Patterns for Large-scale Development 7.5 credits

Course offerings are missing for current or upcoming semesters.
Headings with content from the Course syllabus DD2386 (Autumn 2015–) are denoted with an asterisk ( )

Content and learning outcomes

Course contents

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.

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.

Literature and preparations

Specific prerequisites

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 .

Recommended prerequisites

No information inserted

Equipment

No information inserted

Literature

Reading list is presented no later than 4 weeks before the start of the course on the course web.

Examination and completion

If the course is discontinued, students may request to be examined during the following two academic years.

Grading scale

A, B, C, D, E, FX, F

Examination

  • PRO1 - project, 7.5 credits, grading scale: A, B, C, D, E, FX, F

Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.

The examiner may apply another examination format when re-examining individual students.

Opportunity to complete the requirements via supplementary examination

No information inserted

Opportunity to raise an approved grade via renewed examination

No information inserted

Examiner

Ethical approach

  • All members of a group are responsible for the group's work.
  • In any assessment, every student shall honestly disclose any help received and sources used.
  • In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.

Further information

Course room in Canvas

Registered students find further information about the implementation of the course in the course room in Canvas. A link to the course room can be found under the tab Studies in the Personal menu at the start of the course.

Offered by

Main field of study

Computer Science and Engineering, Information Technology, Information and Communication Technology

Education cycle

Second cycle

Add-on studies

No information inserted

Contact

Tomas Ekholm, tomase@kth.se

Supplementary information

The course will be replaced by DD2487 from 2017.