Course syllabus

Course-PM

DAT055 Object-Oriented Applications lp3 VT26 (7,5 hp)

Department of Computer Science and Engineering (CSE)

Examiner:

Yehia Abd Alrahman, Associate Professor in Computer Science 

Teaching Assistants

Student Representatives:

TIDAL   lucaschristiansson05@protonmail.com     Lucas Christiansson
TIDAL   ida.lillevra@hotmail.com        Ida Franzén Karlsson
TIDAL   hughul02@gmail.com      Hugo Hultén
TIDAL   tobias.rojemo@gmail.com Tobias Röjemo
TIDAL   elliot@widell.net       Elliot Widell

Mid course evaluation

I will meet with student representatives on 6 Feb after lecture to collect feedback.

Make sure to communicate your feedback to your representatives.

Course purpose

This course shall give extended knowledge and skill in object oriented programming techniques, with emphasis put on model driven development in small project groups.

Start by forming project groups (5 students/group).

Schedule to meeting with the project supervisor will be posted soon.

See the Project requirements.

Discord

Join the discord channel to ask questions to your TA or the examiner Link Links to an external site.

Schema

TimeEdit Links to an external site.

Course literature

Course structure

The teaching consists of lectures, (a few) teacher-supervised practice sessions and supervised project meetings. The course includes a laboratory component in the form of project work. The project group constructs and documents a sizeable application designed according to the object-oriented methodology. A successful project requires individual efforts and commitment of the group members!
Active participation during the entire project period is required for an approved project.

Learning objectives and syllabus

  • construct object oriented programs with graphical user interfaces and threads.
  • construct object oriented models in a graphical modelling language.
  • use commonly available computer based program development tools.
  • perform program development in a project group.

 

Examination

Exam: Written exam 20 Mar 2026, 8:30-12:30, 4.5 credits. (Always check this page Links to an external site. for examination dates)

Laboratories: In the form of projects, 3 credits.

In order to be approved for the project, active participation in the project group is required throughout the project period.

Final grade in scale (U-5) is given after approved project (result U or G) and is based only on exam results (U-5).

Sample Exams 

Content

The course uses Java as the programming language and UML as the modeling language.
The enumeration is not chronological.

  • UML is used for modelling and Java for coding.
  • A program development process for object oriented programs.
  • Object oriented modelling in UML.
  • Computer based tools for oriented methodology (CASE).
  • The Model-View-Controller architecture.
  • A survey of common design patterns.
  • Structured error handling.
  • Streams and files.
  • Parallel programming. Active objects and threads.
  • Communication. Ports, sockets, datagram, client-server.
  • Reflection and class loading.

 

Software Development Tools

For programming: Each group is free to choose which programming IDE to choose. I prefer VSCODE Links to an external site., but you can use IntelliJ Links to an external site. or Eclipse Links to an external site.. It is highly recommended that everyone in the group uses the same development environment.

Form modelling: LucidCharts Links to an external site. is a very good, but the free version is somewhat limited, there are many free web app for drawing charts. 

The following are free:

Your repositories must be private. Share only within the group and with the group's supervisor.

 

Lectures

Lecture Content Reading Materials

L1

L2



L3

L4

Course Introduction Intro Lecture.pdf Download Intro Lecture.pdf

Version control and Git slides.pdf Download slides.pdf

 

The project, description. Introduction to OOA/OOD. Slides Part-1.pdf Download Slides Part-1.pdf


 OOA/OOD  Part-2

 

Ch 1 & 2 Pro Git Links to an external site.
Övning GitGit på en minut - snabbreferens

https://www.geeksforgeeks.org/object-oriented-analysis-and-design/ Links to an external site.

 

Ch 12  Big Java 7th Edition Links to an external site.

L5

 

 

L6

 

Review MVC

 

More on MVC

 

MVC Links to an external site..

 



L7

L8

L9

L10 

Good design  slides Download slides

Design patterns slides Download slides code Download code

I/O, streams, files, Serialisation. slides Download slides  code Download code

Ports, Sockets, Datagram, Client-Server, etc.

slides Download slides code Download code

 (Dive Into DESIGN PATTERNS Links to an external site. (2019), L7 & L8)

 

 Ch 11.1-11.3  Big Java 7th Edition Links to an external site.

Ch 23  Big Java 7th Edition Links to an external site.

L11

Threads & Parallelism slides Download slides code Download code

Ch 22  Big Java 7th Edition Links to an external site.

L12

L13

Design by contract, Exceptions slides Download slides  code Download code

Unit testing slides Download slides. code Download code

 Ch 11.4  Big Java 7th Edition Links to an external site.
L14 Reflection and Class loading  slides Download slides code Download code  reflection tutorial Links to an external site. 
L15 Revision Lecture 2026-03-02  
Projektpresentation 2026-03-10 och 2026-03-11
Projektredovisningar 
Självstudier
Exam  2026-03-20.

 

 

 

Course summary:

Course Summary
Date Details Due