F27SB Software Development 2

Dr Christian DondrupSmitha Kumar

Course co-ordinator(s): Dr Christian Dondrup (Edinburgh), Smitha Kumar (Dubai).


  • To impart further techniques of object orientation
  • To introduce Graphical User Interface techniques

Detailed Information

Pre-requisites: none.

Location: ALP, Dubai, Edinburgh.

Semester: 2.


  • Inheritance and Generics: hierarchies, subclasses, polymorphism, static and dynamic type, overriding, dynamic method lookup.
  • Designing classes: coupling, cohesion, abstraction, modularisation, types
  • Abstract classes, abstract methods, interfaces
  • State machines & state diagrams GUIs: components, layout, event handling
  • Code refactoring and regression testing using Unit testing

Learning Outcomes: Subject Mastery

Understanding, Knowledge and Cognitive Skills Scholarship, Enquiry and Research (Research-Informed Learning)

  • Understanding and application/ mastery of the object-oriented paradigm
  • Understanding of inheritance and generics.
  • Understand how to produce well designed, i.e. extendable and maintainable, code.
  • Ability to critically evaluate and improve the quality of code.
  • Ability to develop simple state diagrams
  • Ability to design and implement simple graphic user interfaces

Learning Outcomes: Personal Abilities

Industrial, Commercial & Professional Practice Autonomy, Accountability & Working with Others Communication, Numeracy & ICT

  • Possession of fundamental skills in computer science, applicable throughout the remainder of the degree
  • Understanding of the importance of regular working habits (PDP)
  • Understanding of the use of chat boards and other devices to learn from and instruct others in the class (PDP)
  • Ability to compare and evaluate the applicability of simple data structures to relevant problems (PDP)

SCQF Level: 7.

Credits: 15.