Durham University
Programme and Module Handbook

Undergraduate Programme and Module Handbook 2015-2016 (archived)

Module COMP1091: COMPUTATIONAL DEVELOPMENT

Department: Computer Science

COMP1091: COMPUTATIONAL DEVELOPMENT

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

Prerequisites

Corequisites

Excluded Combination of Modules

  • COMP1051 Computational Thinking

Aims

  • To introduce students to fundamental concepts from Computer Science and give students an appreciation of the breadth of Computer Science and how different topics relate to one another.
  • To introduce students to the challenges and risks associated with developing computer-based solutions to real world problems and the kind of tools that can be used.

Content

  • Different programming paradigms and how high-level programs are converted into machine code.
  • Different computational problems, some solution methods to common problems and the notion of an algorithm.
  • The notion of a computer and its formalism.
  • The measurement and efficiency of solutions.
  • Intrinsic complexity barriers and how to cope with them in practice.
  • Ethical aspects of computing.
  • Examples of real-world problems in software development
  • Risks associated with software development from a human and technological perspective
  • The type of tools used to support software development

Learning Outcomes

Subject-specific Knowledge:
  • On completion of the module, students will be able to demonstrate: an understanding of fundamental notions relating to problems and their solution in Computer Science
  • an understanding of several approaches to solving fundamental computational problems
  • an appreciation of the practical limitations of computers and computation.
  • an appreciation of the kind of problems that occur during software development
  • an understanding of the types of tools used to support software development
Subject-specific Skills:
  • On completion of the module, students will be able to demonstrate: an ability to recognise and analyse computational problems in a variety of settings
  • an ability to apply methods and techniques relating to algorithms and computation in order to solve problems
  • an ability to reason about the quality of a solution or an algorithm
  • an ability to implement basic algorithms in a general-purpose high-level programming language so as to solve fundamental problems in different domains.
Key Skills:
  • On completion of the module, students will be able to demonstrate: an ability to reason about the solution of general problems and apply different problem-solving techniques.
  • An ability to work with others towards understanding a problem.

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

  • Lectures enable the students to learn new material relevant to the development of computer-based solutions to real-world problems. These will include ‘Guru Lectures’ on the scope and challenges of software development in practice.
  • Practical classes enable the students to put into practice learning from lectures and strengthen their understanding through application (by implementing and applying algorithms in a general-purpose, high-level programming language).
  • Group tutorials enable students to work together to understand the challenges associated with development of real computer-based systems. These will include the use of case studies from industry
  • Students are assessed by formative and summative assessment and examinations.

Teaching Methods and Learning Hours

Activity Number Frequency Duration Total/Hours
lectures 44 2 per week 1 hour 44
practical classes 22 1 per week 2 hours 44
preparation and reading 112
total 200

Summative Assessment

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

Formative Assessment:

Examples and exercises are given throughout the course, to be undertaken and then discussed in practical sessions. Additional revison lectures may be arranged in the module's lecture slots in the 3rd term.


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