MEng Software Engineering

Year of entry: 2020

Course unit details:
Programming 2

Unit code COMP16412
Credit rating 10
Unit level Level 1
Teaching period(s) Semester 2
Offered by Department of Computer Science
Available as a free choice unit? No


Unit title Unit code Requirement type Description
Programming 1 COMP16321 Co-Requisite Compulsory


To specify, design, test, develop, deploy, debug and run programmes of a significant
complexity using an object-oriented language (ie Java) and its standard platform. To identify
the strengths and weaknesses of the paradigm and the language.

Learning outcomes

  • To identify the fundamental building blocks of new programming languages in general
  • Identify the advantages of object-oriented programming.
  • Design classes using the UML notation and write the code of a specified class.
  • Explain and implement object oriented concepts including inheritance, polymorphism, interfaces and abstraction.
  • Identify appropriate situations for reading/writing files from an application, be able to make secure, robust calls out to the relevant file-handling libraries in Java.
  • Use data structures of the Java Collections Framework, and create your own data structures.
  • Build interactive graphical applications using JavaFX that respond to user events and consider some basic usability concerns. Use custom components to achieve these goals where appropriate.
  • Describe the benefits of grouping files into packages. Create and deploy packages, use existing libraries.
  • Apply concepts above to existing programming language knowledge, i.e. Python.




Week 1: Crash course on Java I
Week 2: Crash course on Java II
Week 3: Advanced OO
Week 4: Error handling and working with input/output
Week 5: Talking about your code
Week 6: Data structures I
Week 7: Reading week
Week 8: Java GUI I
Week 9: Java GUI II
Week 10: Packages
Week 11: Data structures II
Week 12: Further Java and Revision

Teaching and learning methods

Lectures, workshops, clinics, coursework, face to face mentoring by TAs. Use of online quizzes.

Assessment methods

Method Weight
Written exam 50%
Practical skills assessment 50%

Recommended reading


Study hours

Scheduled activity hours
Lectures 12
Practical classes & workshops 36
Independent study hours
Independent study 52

Teaching staff

Staff member Role
Markel Vigo Unit coordinator

Return to course details