Skip to main content
 

COMP1051: COMPUTATIONAL THINKING

Please ensure you check the module availability box for each module outline, as not all modules will run in each academic year. Each module description relates to the year indicated in the module availability box, and this may change from year to year, due to, for example: changing staff expertise, disciplinary developments, the requirements of external bodies and partners, and student feedback. Current modules are subject to change in light of the ongoing disruption caused by Covid-19.

Type Open
Level 1
Credits 20
Availability Available in 2023/24
Module Cap 260
Location Durham
Department Computer Science

Prerequisites

  • A-level Mathematics at Grade A

Corequisites

Excluded Combinations of Modules

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 give an awareness of the importance of computation and computational thinking in the modern world and the impact it has on technology advances and areas not immediately associated with Computer Science.
  • To introduce students to the application of computational thinking in a range of settings across Computer Science.

Content

  • Basic architectural components of a PC.
  • Different programming paradigms and how high-level programs are converted into machine code.
  • Basic operations of the operating system.
  • Propositional logic.
  • 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.
  • A basic general-purpose high-level programming language and the implementation of programs in this language to implement examples of computational thinking in a variety of settings.

Learning Outcomes

Subject-specific Knowledge:

  • On completion of the module, students will be able to demonstrate: an appreciation of how hardware and software combine so as to execute compute programs
  • an understanding of fundamental notions relating to problems and their solution in Computer Science
  • an appreciation of the role of Computer Science and computational thinking in the modern world
  • an understanding of several approaches to solving fundamental computational problems
  • an appreciation of the practical limitations of computers and computation.

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 reason in propositional logic.
  • 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.

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 computational thinking.
  • 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).
  • Students are assessed by formative and summative assessment and examinations.

Teaching Methods and Learning Hours

ActivityNumberFrequencyDurationTotalMonitored
lectures402 per week1 hour40 
practical classes191 per week2 hours38Yes
preparation and reading122 
total200 

Summative Assessment

Component: CourseworkComponent Weighting: 100%
ElementLength / DurationElement WeightingResit Opportunity
Coursework100Yes

Formative Assessment

Examples and exercises are given throughout the course, to be undertaken and then discussed in practical sessions.

More information

If you have a question about Durham's modular degree programmes, please visit our FAQ webpages, Help page or our glossary of terms. If you have a question about modular programmes that is not covered by the FAQ, or a query about the on-line Undergraduate Module Handbook, please contact us.

Prospective Students: If you have a query about a specific module or degree programme, please Ask Us.

Current Students: Please contact your department.