Course Description

Course Name

Computing Science - 1CT Introduction to Computational Thinking

Session: VGSS3122

Hours & Credits

20 SCQF Credits

Prerequisites & Language Level

Taught In English

  • There is no language prerequisite for courses at this language level.

Overview

Short Description

Computational processes are increasingly being discovered in natural, social and economic systems as well as typical silicon-based computing devices such as laptops and smartphones. This course develops in students, who have no previous computing education, the necessary understanding and thinking skills so that such systems can be viewed as predictable, understandable and ultimately controllable. It is valuable in its own right, as a support for many other disciplines, and as a foundation for further study in Computing Science.

Requirements of Entry

None

Assessment
Coursework: Quizzes in class sessions on preparatory material (10%), mid-semester class test (10%), course project (10%), end of semester lab exam (10%)

Examination: Degree exam (60%)

The coursework cannot be redone because the feedback provided to the students after the original coursework would give any students redoing the coursework an unfair advantage.
Main Assessment In: December

Course Aims

This course aims to develop in students the core computational thinking, and associated practical, skills that are required to be able to understand, reason about, and manipulate the computational systems surrounding us.

Intended Learning Outcomes of Course

By the end of this course students will be able to:
1. Identify core characteristics of computational systems;
2. Describe the purpose and operation of a range of individual computational concepts, as exemplified in more than one programming language;
3. Explain the purpose and operation of partial and complete computations expressed in a range of notations at various levels of abstraction;
4. Apply computational understanding to solve programming problems involving textual, numerical and graphical contexts;
5. Amend computations to adjust their functionality;
6. Identify and correct errors in computations expressed in a range of notations;
7. Identify the application and emergence of computational concepts in artificial and natural systems, respectively.

*Course content subject to change