Programme And Module Handbook
 
Course Details in 2018/19 Session


If you find any data displayed on this website that should be amended, please contact the Curriculum Management Team.

Module Title LM Software Workshop (MSc)
SchoolComputer Science
Department Computer Science
Module Code 06 30382
Module Lead Ahmad Ibrahim & Priya Manimaran
Level Masters Level
Credits 40
Semester Full Term
Pre-requisites
Co-requisites LM Fundamentals: Introduction to Computer Science - (06 30377)
LM Fundamentals: Data Structures - (06 30378)
Restrictions None
Exclusions
Description 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.

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.
-Introduce types, classes, objects, methods, inheritance, and exceptions.
-Provide experience of programming with data structures.
-Introduce object-oriented class libraries for collections, graphical user interfaces, sockets, and threads.
-Provide experience of working in a programming team.
Learning Outcomes By the end of the module students should be able to:
  • Demonstrate an understanding of types, classes, objects, methods, inheritance, and exceptions
  • Demonstrate an understanding of and use object oriented analysis and design processes
  • Demonstrate an understanding of recursion and the use of recursive data structures
  • Explain methods and techniques for program testing
  • Explain the rationale for the use of object oriented programming and its limitations
  • Demonstrate an understanding of advanced programming language concepts including generic classes, interfaces and abstract classes
  • Demonstrate the use of object-oriented class libraries for building applications including collections, GUI classes, sockets and threads
  • Develop software systems from specification through design and implementation
  • Work in groups as part of a larger project
  • Produce documentation for software system
  • Develop and use test plans
Assessment 30382-01 : Examination : Exam (Centrally Timetabled) - Written Unseen (70%)
30382-02 : Continuous Assessment : Coursework (30%)
Assessment Methods & Exceptions Assessment:
3 hr Examination (70%);
Continuous Assessment (20%);
Continuous Assessment - Teamwork (10%)
Other Duplicate of Birmingham-based module 26956
Reading List