F29SO Software Engineering

Alistair McConnellDr Abrar UllahJohn SeeDr Thomas Basuki

Course co-ordinator(s): Alistair McConnell (Edinburgh), Dr Abrar Ullah (Dubai), John See (Malaysia), Dr Thomas Basuki (Malaysia).


  • To equip students with knowledge and skills for the effective management of a group project which encompasses the software development lifecycle
  • To enable students to reinforce their knowledge and skills gained in software processes, internet technology, database management and interaction design
  • To build students understanding, knowledge and skills in teamwork, software development in groups, and project planning.
  • To enable students to develop a broader understanding of the interrelationship of development life-cycles and a critical capability in the selection of tools and methods to support project planning, systems analysis, requirements capture, and system specification.

Detailed Information

Course Description: Link to Official Course Descriptor.

Pre-requisite course(s): F28DM Database Management Systems & F28SD Introduction to Software Design or equivalent.

Linked course(s): F29PD Professional Development Synoptic Course..

Location: ALP, Dubai, Edinburgh, Malaysia.

Semester: 1.


  • Review and extension of the components studied in earlier years which contribute to the group project
  • Software project management including working in groups, project planning and costing, risk assessment
  • Use of Industry-level Standards for software development and documentation, covering aspects such as change control and requirements traceability
  • Further study of software development tools, especially version control

Learning Outcomes: Subject Mastery

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

  • A broad and integrated understanding and knowledge of the various development and programming paradigms, software development life-cycles, teamwork and project planning
  • Detailed theoretical and practical knowledge of the use of methodologies for requirements capture, iterative design, resource capture and management, deployment and evaluation of systems, at a basic level
  • Practice in the use of object-oriented programming, databases, scripting and markup languages applied to a substantial project

Learning Outcomes: Personal Abilities

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

  • Identification, critical analysis and evaluation of the development of a software system (PDP)
  • Practice in working in a group, negotiating requirements, reaching a consensus, taking responsibility for own work, taking part in a presentation, and working with others to a deadline (PDP)
  • Appreciation of the interrelationship of knowledge domains

SCQF Level: 9.

Credits: 15.