Durham University
Programme and Module Handbook

Undergraduate Programme and Module Handbook 2015-2016 (archived)

Module COMP2191: SOFTWARE ENGINEERING

Department: Computer Science

COMP2191: SOFTWARE ENGINEERING

Type Open Level 2 Credits 20 Availability Available in 2015/16 Module Cap Location Durham

Prerequisites

  • Introduction to Programming OR Computational Thinking

Corequisites

  • None

Excluded Combination of Modules

  • None

Aims

  • To gain a detailed understanding of the phases of the software development lifecycle.
  • To understand and appreciate the problems that are associated with each of the individual phases and the best practice for their solution.

Content

  • Software development practices: development models including Agile, plan-driven, scrum and XP; software reuse; configuration management, maintenance and evolution of large software systems
  • Requirements discovery and analysis: discovery techniques and identification of stakeholder; types of requirements, systems modelling; requirements validation
  • Software Design: design representation forms; system architectures; design patterns; OO design; parallel design paradigms
  • Software Testing: unit, integration and systems testing, reviews and inspections; software metrics and measurement
  • Human Computer Interaction: memory and metal models; interaction design; enhancing usability; evaluating HCI
  • Software Quality and Process: software standards, process maturity models; cost estimation techniques; risk
  • Business and Professional Issues: awareness of industrial and commercial applications that are being developed or currently deployed and to highlight problems faced and solutions identified by industry

Learning Outcomes

Subject-specific Knowledge:
  • On completion of the module, students will be able to demonstrate:
  • a knowledge of software development that is relevant and applicable to software development in industry
  • an appreciation of the problems facing the software development industry in terms of the software development practices and processes.
Subject-specific Skills:
  • On completion of the module, students will be able to demonstrate:
  • an ability to describe and analyse the different core facets of software engineering and how they interrelate
  • an ability to critically analyse systems with regard to the principles of software engineering so that this analysis aids the production and maintenance of software applications
  • an ability to conduct self-study to further their knowledge in the integration of the topic areas.
Key Skills:
  • On completion of the module, students will be able to demonstrate:
  • an ability to produce written documentation according to scientific writing principles
  • an ability to apply methods and techniques to general software development problem solving.

Modes of Teaching, Learning and Assessment and how these contribute to the learning outcomes of the module

  • Lectures enable students to learn the principles and methodology as regards software engineering, and appreciate how these are applied.
  • Seminars given by external speakers enable students to understand the different development approaches and application of software in industry.
  • Practical classes enable students to correctly develop their knowledge and methodological skills in practical scenarios.
  • Examinations assess the knowledge acquired and coursework the ability to use this knowledge to solve problems.

Teaching Methods and Learning Hours

Activity Number Frequency Duration Total/Hours
Lectures 44 2 per week 1 hour 44
Practicals 10 1 per fortnight 2 hours 20
Industry seminars 12 Term 1 and 2 1 hour 12
preparation and reading 124
Total 200

Summative Assessment

Component: Examination Component Weighting: 66%
Element Length / duration Element Weighting Resit Opportunity
Examination 2 hours 100% Yes
Component: Coursework Component Weighting: 34%
Element Length / duration Element Weighting Resit Opportunity
Coursework 100% Yes

Formative Assessment:

Formative feedback will be given during the coursework students undertake.


Attendance at all activities marked with this symbol will be monitored. Students who fail to attend these activities, or to complete the summative or formative assessment specified above, will be subject to the procedures defined in the University's General Regulation V, and may be required to leave the University