The University of Southampton
Courses

COMP6221 Computational Thinking

Module Overview

The aim of this module is to provide non-computer science specialists (especially those who do not have any experience of programming) with an understanding of the topics, issues and challenges in Computer Science that will enable them to engage computational approaches to problems while acting as professionals and researchers in related fields. The principles of this module are based on Wing, J. (2006) Computational thinking, Communications of the ACM, v.49 n.3. The discipline of Computer Science is built on a broad understanding of hardware systems, software algorithms, computation, information handling, modelling; topics that are laid out in the standard ACM Computer Science curriculum. A Bachelors degree introduces students to these areas and attempts to give expertise in a range of these subjects (the choice of which is determined by the focus of the course). A Masters level Computing degree will provide a more intensive treatment of these topics, with an aim to allow the student to work at the forefront of the discipline. This module aims to provide students who do not have a computing background with an understanding of the scope and importance of the broad range of computer science topics.

Aims and Objectives

Module Aims

To provide non-computer science specialists with an understanding of the topics, issues and challenges in Computer Science

Learning Outcomes

Knowledge and Understanding

Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:

  • The nature and history of Computer Science as an emerging research area
  • The breadth of the Computer Science discipline
  • Key areas of Computer Science
  • Gain familiarity with topical isues in Computer Science (e.g. Internet of Things, 3D printing)
Transferable and Generic Skills

Having successfully completed this module you will be able to:

  • Communicate technical concepts to a lay audience, in live presentations and online, written material
  • Develop and deliver outreach material in teams
  • Create educational material for a school curriculum
Subject Specific Practical Skills

Having successfully completed this module you will be able to:

  • Have experience in simple programming techniques
  • Design and create an animated toy or household object using a Raspberry Pi

Syllabus

- Operating systems (1960s, resource management, UNIX/Linux, Windows, Mac, thin clients, cloud computing) - Databases (SQL, third normal form, Hadoop, data centres) - Devices (Mainframes, PCs, iPhones, sensor networks) - Programming Languages (binary, assembler, C, Object orientation, Java, LISP, Prolog, functional, scripting) - Algorithms (sorting, complexity, tractability, IP) - Artificial Intelligence (Lisa to Machine Learning, Neural Networks) - Graphics (OpenGL, PS3! GPUs) - Software Engineering (methodologies, projects, mythical man year) - Networks (Ethernet, X25, TCP/IP, routers, IPv6, Wifi, 3G, Wimax). - Python Programming - Raspberry Pi

Learning and Teaching

TypeHours
Completion of assessment task78
Follow-up work4
Supervised time in studio/workshop10
Wider reading or practice46
Preparation for scheduled sessions4
Lecture8
Total study time150

Resources & Reading list

J. Glenn Brookshear. Computer Science: An Overview. 

Assessment

Summative

MethodPercentage contribution
Coursework 20%
Laboratory 20%
Oral presentation 40%
Teaching Activity 20%

Referral

MethodPercentage contribution
Coursework assignment(s) 100%

Repeat Information

Repeat type: Internal & External

Share this module Facebook Google+ Twitter Weibo

We use cookies to ensure that we give you the best experience on our website. If you continue without changing your settings, we will assume that you are happy to receive cookies on the University of Southampton website.

×