School of Computer Science

Module 06-27113 (2014)

Software Engineering 1 (Extended)

Level 4/M

Rami Bahsoon Semester 1 10 credits
Co-ordinator: Rami Bahsoon
Reviewer: Behzad Bordbar

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

Outline

Overview of requirements engineering, requirements elicitation, analysis, requirements definition, specification, requirements validation, requirements management, overview of specification techniques. Management of the software development process, including: how projects arise, choosing the right project, human factors in project management, basic project management techniques (e.g. planning, estimating, monitoring progress), advanced project management techniques (e.g. risk management, configuration management, quality management, process improvement).


Aims

The aims of this module are to:

  • show the need for professional discipline and effective management throughout the software development process
  • show the importance of teamwork and good interpersonal skills in successful software development
  • give an appreciation of the importance of requirements engineering as the first phase of the software development process

Learning Outcomes

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

  1. Explain the importance of successful requirements definition in commercial software development, identifying the difficulties involved.
  2. Explain and apply appropriate techniques which help to define clear and unambiguous requirements.
  3. Explain the basic principles of project management, including the role of the project manager.
  4. Apply standard techniques in project management.
  5. Analyse the organizational issues surrounding the development and implementation of systems solutions.
  6. Identify appropriate interpersonal skills to manage and perform the systems development process more effectively.
  7. Review academic literature on a software engineering topic and reflect on the application of the principles and theories identified in an example software engineering project/case study.

Restrictions

None


Co-requisites

  • 06-27114 - Software Engineering 2 (Extended)

Teaching methods

Lectures and Exercise Classes

Contact Hours:

23


Assessment

Sessional: 1.5 hr Examination (50%) Continuous Assessment (50%)

Supplementary (where allowed): 1.5 hr Examination (100%)


Detailed Syllabus

  1. Introduction to the module (1)
  2. Project genesis (3)
    • How projects arise, choosing the right project, software life-cycles
  3. Basic project management techniques (8)
    • Planning, estimating, monitoring progress
  4. Human factors in project management (2)
    • Organizations and players in the game, interpersonal skills, project teams
  5. Advanced project management techniques (4)
    • Risk management, configuration management, quality management, process improvement
  6. Introduction to requirements engineering (3)
    • Requirements elicitation and analysis, requirements validation, requirements management

Programmes containing this module