School of Computer Science

Module 26956 (2018)

Module description - MSc Software Workshop

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

Module Title MSc Software Workshop
School School of Computer Science
Module Code 06-26956
Level 4/M
Member of Staff Manfred Kerber Mohammed Bahja
Semester Semester 1 - 20 credits Semester 2 - 20 credits
  • 06-21933 - Fundamentals Intro to Computer Science
  • 06-21921 - Fundamentals Data Structures

Lectures, tutorials and assisted lab sessions

Contact Hours:



This module introduces and develops object oriented design and programming skills. It introduces the Java programming language as an example of an object oriented programming language and develops software development skills through Java. In the second semester, the module develops advanced object oriented design and programming skills. It introduces object-oriented class libraries for collection data structures and graphical user interfaces, and provides exposure to concurrent programming using threads and network communication via sockets. In addition, the students will work in teams to build a substantial piece of software from specification through analysis and design to implementation.


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

  1. Demonstrate an understanding of types, classes, objects, methods, inheritance, and exceptions
  2. Demonstrate an understanding of and use object oriented analysis and design processes
  3. Demonstrate an understanding of recursion and the use of recursive data structures
  4. Explain methods and techniques for program testing
  5. Explain the rationale for the use of object oriented programming and its limitations
  6. Demonstrate an understanding of advanced programming language concepts including generic classes, interfaces and abstract classes.
  7. Demonstrate the use of object-oriented class libraries for building applications including collections, GUI classes, sockets and threads.
  8. Develop software systems from specification through design and implementation.
  9. Work in groups as part of a larger project.
  10. Produce documentation for software system.
  11. Develop and use test plans

Sessional: 3 hr Examination (70%) Continuous Assessment (20%) Continuous Assessment - Teamwork (10%)

Supplementary (where allowed): By repeat only, except by permission of the Director of Postgraduate Studies for supplementary examination. When permitted, the supplementary examination carries 90% credit with Teamwork mark (10%) carried forward.