School of Computer Science

Module 06-21699 (2010)

Software Workshop ICY

Level 1/C I

Jonathan Rowe Semester 1 20 credits
Martin Escardo Semester 2 20 credits
Co-ordinator: Martin Escardo
Reviewer: Steven Vickers

The Module Description is a strict subset of this Syllabus Page.


The aims of this module are to:

  • introduce and develop object oriented design and programming skills
  • introduce the Java programming language as an example of an object oriented programming language
  • develop software development skills through Java

Learning Outcomes

On successful completion of this module, the student should be able to:

  • demonstrate understanding of the Java programming language
  • demonstrate understanding of and use object oriented analysis and design processes
  • develop large software systems from specification through design and implementation
  • develop and use test plans
  • work in groups as part of a larger project
  • produce documentation for large software systems
  • show familiarity with professional issues relevant to software engineering

Teaching methods

2 hrs lecture, 1 hr tutorial, 3 hrs supervised laboratory sessions per week (plus unsupervised laboratory sessions).The module is taught through a combination of lectures, tutorial and both supervised and independent practical work. The module has a strong practical element. The lectures introduce and develop the major topics of object oriented software development. Small groups are used for tutorials through which practical work is assigned, discussed and assessed.

Detailed Syllabus

  1. The Java Programming Language
    • Object Orientation
    • Classes
    • Algorithms
    • Objects and variables
    • Basic Control structures
    • Exceptions
    • Threads
    • Inheritance
    • GUIs
    • Other Java packages
  2. Case Studies
  3. Exercises: A series of exercises starting with small simple problems and developing towards large group exercises integrating applets and relational databases
  4. Professional Issues, Data security, privacy