Architecture and Design Patterns
Syllabus, Bachelor's level, 2IS226
- Code
- 2IS226
- Education cycle
- First cycle
- Main field(s) of study and in-depth level
- Software Engineering G1F
- Grading system
- Pass with distinction (VG), Pass (G), Fail (U)
- Finalised by
- The Department Board, 25 October 2018
- Responsible department
- Department of Informatics and Media
General provisions
The course is included in the following degree programme:
* Bachelor's programme in Information Systems, specialisation software engineering, 180 credits.
Is also given as a freestanding course
Entry requirements
30 credits in software engineering or equivalent
Learning outcomes
Regarding knowledge and understanding be expected the students be able to on completion of the course:
* Account for basic design principles, architectural solutions and design patterns including their possibilities and limitations
Regarding skills and abilities the student is expected to be able to on completion of the course:
* Apply design principles on architectural level and system level
* Use design pattern to create object-oriented programmes that are simple to maintain and test
Regarding judgement and approach the student is expected to be able to on completion of the course:
* Evaluate system and architectural design based on design principles
Content
Software development often takes place in an existing information infrastructure. A central design issue is thereby, how different systems should interact with one another. In the course, two levels of system design are studied: 1) Architectural level that treats design of interaction between system. 2) System level that treats good properties in the internal design of a system. The course also covers design principles that can be applied on both architecture and system level.
Component 1: Design patterns, 3 credits
The component covers how object-oriented programmes are created that are simple to maintain and test by studying design principles such as Single responsibility principle, Open-closed principle and Dependency inversion principle that we apply through commonly occurring design patterns such as State, Observer and Command.
Component 2: Architecture, 2 credits
The component covers how systems and subsystems can be designed to be able to interact with one another and be simple to maintain at the same time and test. We build further on the general design principles and look closer on various types of software architectures with special focus on Service Oriented Architecture (SOA).
Component 3: Application, 2.5 credits
The component applies and deepens how general design principles can be used at design on system level and/or architectural level.
Instruction
The course is given in the form of lectures and practical assignments.
Assessment
The components are examined through written assignments.
For the grade Pass in the whole course, it is required that all components are passed. For the grade Pass with distinction it is furthermore required that at least two components are passed with distinction.
If there are special reasons for doing so, an examiner may make an exception from the method of assessment indicated and allow a student to be assessed by another method. An example of special reasons might be a certificate regarding special pedagogical support from the University's disability coordinator or a decision by the department's working group for study matters.
Other regulations
The course is given on Campus Gotland and as a distance course.