Object-oriented Modeling and Programming in Engineering


This module covers the basic knowledge needed to develop and implement object-oriented software solutions for engineering problems. This includes the ability to analyze an engineering problem, so that corresponding object-oriented models can be created and suitable algorithms can be selected. The programming language used in this module is Java. However, the sincefundamental concepts are described in general, students will be able to program in other modern programming languages.


  • Essential programming constructs (alternatives, loops, sequences),
  • Fundamental data structures and algorithms,
  • Principles of object oriented software development (encapsulation, inheritance and polymorphism),
  • The Unified Modeling Language as a tool for software design and documentation,
  • Development of graphical user interfaces using the Model-View-Controller pattern

The module is based on content designed and developed by Prof. Dr.-Ing. Matthias Baitsch, Bochum University of Applied Sciences.

Requirements for participation


Workload and required examination

In-class study / online-study:45
Exam preparation:30
Type of examination: Written exam
Requirements for exam registration:Homework assignments
Weighting:exam 100%
Courses with SWS / ECTS:This module is comprised of:
“Object-oriented Modeling and Programming in Engineering” (Lecture, 2 SWS) “Object-oriented Modeling and Programming in Engineering” (Seminar, 2 SWS)


  • David Flanagan, Java in a nutshell: a desktop quick reference for java programmers, O'Reilly, 2005
  • David J. Barnes, Object-oriented Programming with Java: An Introduction, Prentice Hall, 2000
  • Meyer, Bertrand Meyer, Touch of class: learning to program well with objects and contracts, Springer, 2013