Software Development with UML and Java





Offered by

ICT Engineering




General admittance requirements.

Main purpose

The main purpose of the course is to provide students with the qualifications needed to understand the core object-oriented concepts and to implement smaller programs in Java from UML class diagrams.


The student should be able to:
• Identify the Java lexical structures: keywords, separators, operators, identifiers, literals and comments.
• Explain details of UML class diagrams.
• Identify selection and loop structures in UML activity diagrams.


 The student should be able to:

  • Construct Java programs with proper choice of selection and loop structures.
  • Create and use objects in Java.
  • Implement classes in Java using the object oriented concepts: encapsulation, inheritance and polymorphism.
  • Implement one-to-one relations and differentiate between association, aggregation and composition.
  • Implement one-to-many relations using array structures and a simple collection class.
  • Implement exception handling for different types of exceptions.
  • Implement persistence in text and binary files.
  • Construct simple event-based GUI applications.
  • Construct Java source code documentations.

Interpret UML class diagrams, and construct corresponding Java code.


 The student should be able to:
• Exemplify and discuss basic object-oriented concepts, including encapsulation, relationships, inheritance and polymorphism
• Implement small scale systems from UML class diagrams.


Teaching methods and study activities

A number of tests and assignments will be given during the course. One of these tests counts for 20% of the final grade, see Grading criteria below.




Tony Gaddis, "Starting Out with Java - early objects", 5th edition Addison-Wesley, 2015



Prerequisites for exam:
Mandatory course activities completed.

The student must have an attendance of at least 75% in order to qualify for the exam. Students who do not have at least 75% attendance will automatically fail the ordinary exam.

Exam type:
Individual oral examination where the student will pick an unfamiliar programming exercise at random. The student must explain the UML involved and demonstrate how to perform the programming task using a laptop. The time allotted for the examination is 30 minutes including assessment.

Exam is with an external examiner.

Tools allowed:

Same as ordinary exam.

Grading criteria

Grading based on the Danish 7-point scale.
The examination account for 80% of the final grade. A test account for the remaining 20% of the final grade.

Additional information


Steffen Vissing Andersen (SVA)

Valid from

8/1/2021 12:00:00 AM

Course type

Compulsory Course for all ICT Engineering
1. semester


<div>Java, UML, OOP</div>