Application Programming

The details
Computer Science and Electronic Engineering (School of)
Colchester Campus
Undergraduate: Level 5
Thursday 03 October 2019
Saturday 14 December 2019
28 August 2019


Requisites for this module



Key module for

BSC G610 Computer Games,
BSC G612 Computer Games (Including Year Abroad),
BSC I610 Computer Games (Including Placement Year),
BSC G400 Computer Science,
BSC G401 Computer Science (Including Year Abroad),
BSC G403 Computer Science (Including Foundation Year),
BSC I101 Computer Science (Including Placement Year),
MSCIG402 Computer Science,
MSCII100 Computer Science (Integrated Masters, Including Placement Year),
BSC G1G4 Mathematics with Computing (Including Year Abroad),
BSC G1G8 Mathematics with Computing (Including Foundation Year),
BSC G1GK Mathematics with Computing,
BSC G1IK Mathematics with Computing (Including Placement Year),
BENGH615 Robotic Engineering,
BENGH616 Robotic Engineering (Including Year Abroad),
BENGH617 Robotic Engineering (Including Placement Year),
BSC G111 Computing,
BSC G112 Computing (Including Year Abroad),
BSC G113 Computing (Including Placement Year),
BSC LG01 Economics with Computing,
BSC LG02 Economics with Computing (Including Year Abroad),
BSC LG03 Economics with Computing (Including Placement Year),
BSC L310 Sociology with Data Science,
BSC L311 Sociology with Data Science (including Year Abroad),
BSC L312 Sociology with Data Science (including Placement Year),
BSC L313 Sociology with Data Science (including foundation Year)

Module description

This module extends the student's knowledge and skills in object-oriented application programming. Further Java programming language principles and the use of Application Programming Interfaces (APIs) are explored supported through reference to Unified Modelling Language (UML) and design patterns. Java Graphical User Interface (GUI) Swing and AWT APIs are practically examined in some detail. The Java Collections API is explored with emphasis on how to utilise these classes in programs to best effect. Students will also be introduced to third-party APIs, since an important part of application programming is the process of understanding and using such APIs.

The module will give students core programming skills that are required for Years 2 and 3 of the Computer Science degree schemes.

Module aims

The aims of this module are to equip students with skills in object-oriented application programming using the Java programming language as the exemplar. The module will give students core programming skills that are required for Years 2 and 3 of the Computer Science degree schemes.

Module learning outcomes

After completing this module, students will be expected to be able to:

1. Demonstrate knowledge of core Java application libraries.
2. Explain the event-driven model underlying Java GUIs.
3. Write Java programs with interactive graphical user interfaces (GUIs).
4. Demonstrate knowledge of how Java programs interact with databases.
5. Write Java programs that make efficient use of the Java collections package.
6. Demonstrate an understanding of design patterns appropriate to Java GUIs.

Module information

Outline Syllabus

Java Language
Review of inheritance, abstract classes and interfaces

Application Programming and APIs
The Collections framework
User interface programming with AWT and Swing, event handling
Relational database interfacing with JDBC
Model View Controllers / Model View Presenter Design Patterns

Learning and teaching methods

Lectures and Labs


  • Deitel, Paul J.; Deitel, Harvey M. (2017) Java: how to program early objects, New York: Pearson.
  • Liang, Y. Daniel. (2019) Introduction to Java programming and data structures: comprehensive version, NY, NY: Pearson.

The above list is indicative of the essential reading for the course. The library makes provision for all reading list items, with digital provision where possible, and these resources are shared between students. Further reading can be obtained from this module's reading list.

Assessment items, weightings and deadlines

Coursework / exam Description Deadline Weighting
Coursework Progress Test - Wk 7 20%
Coursework Assignment 1: Application programming 13/11/2019 40%
Coursework Assignment 2: Application programming 16/12/2019 40%
Exam 120 minutes during Summer (Main Period) (Main)

Overall assessment

Coursework Exam
50% 50%


Coursework Exam
50% 50%
Module supervisor and teaching staff
Dr Faiyaz Doctor, Dr Serafeim Perdikis
CSEE School Office, email: csee-schooloffice (non-Essex users should add @essex.ac.uk to create full e-mail address), Telephone 01206 872770CSEE School Office, email: csee-schooloffice (non-Essex users should add @essex.ac.uk to create full e-mail address), Telephone 01206 872770



External examiner

Dr Jeremy Ian Hiller Gow
Goldsmiths College
Available via Moodle
Of 186 hours, 20 (10.8%) hours available to students:
166 hours not recorded due to service coverage or fault;
0 hours not recorded due to opt-out by lecturer(s).


Further information

Disclaimer: The University makes every effort to ensure that this information on its Module Directory is accurate and up-to-date. Exceptionally it can be necessary to make changes, for example to programmes, modules, facilities or fees. Examples of such reasons might include a change of law or regulatory requirements, industrial action, lack of demand, departure of key personnel, change in government policy, or withdrawal/reduction of funding. Changes to modules may for example consist of variations to the content and method of delivery or assessment of modules and other services, to discontinue modules and other services and to merge or combine modules. The University will endeavour to keep such changes to a minimum, and will also keep students informed appropriately by updating our programme specifications and module directory.

The full Procedures, Rules and Regulations of the University governing how it operates are set out in the Charter, Statutes and Ordinances and in the University Regulations, Policy and Procedures.