Learning Outcomes
Knowledge and understanding
After completing the course, the student should be able to:
- explain the theoretical foundations within object-oriented design
- describe methods, working methods, techniques and tools used in the development of object-oriented software
Skills and Abilities
After completing the course, the student should be able to:
- apply accepted design principles for object-oriented programming
- design algorithms and data structures that promote manageability and scalability
- apply modeling languages for visualization of object-oriented programs
Evaluation ability and approach
After completing the course, the student should be able to:
- motivate for the choice of data structures and algorithms in the software development process
Course Content
The course covers fundamental concepts in object-oriented design (OOD) and software development, such as well-known design patterns and programming principles, aimed at designing code that is well-structured, understandable, manageable and scalable.
Furthermore, how classes, attributes, methods and relationship types can be extracted based on requirements specifications, how visual representations in established notational languages are used in documentation and in planning phases.
The course deals with the basics of data structures and algorithms.
Assessment
Digital examination, Seminars and Project
Forms of Study
Lectures, exercises, seminars and projects
Grades
The Swedish grades U–VG.
Digital examination, 2.5 credits, U-VG
Seminars, 2 credits, U-G
Project, 3 credits, U-VG
The final grade for the course is based on an overall assessment by the examiner.
Prerequisites
- Programming 7.5 credits
Other Information
Overlaps GIK2F7, IK1004 and MI1003.
Teaching can take place in English.