CS1FC16-Fundamentals of Computer Science

Module Provider: Computer Science
Number of credits: 20 [10 ECTS credits]
Terms in which taught: Autumn / Spring / Summer module
Non-modular pre-requisites:
Modules excluded:
Current from: 2020/1

Module Convenor: Dr Hong Wei

Email: h.wei@reading.ac.uk

Type of module:

Summary module description:
This module introduces the essential concept of computer systems in the autumn term, and the foundations of data structures and algorithms in the spring term.


The module aims to establish a foundation for computer science students with the main features of computer systems and algorithms, from which students can appreciate the relevance and interrelationships of further studies in the discipline.

This module also encourages students to develop a set of professional skills, such as problem solving, creativity, and numeracy.

Assessable learning outcomes:

Students completing this module should be able to:

  • describe the structure of computer systems and the interaction between software and hardware;

  • use binary code for information representation

  • articulate data manipulation inside a computer system through a machine language (instructions) and relevant operations

  • explain the role of computer networking in computer communication, including internet and its applicatio ns

  • appreciate the importance of information security in computer design and usages

  • explain the role of designing algorithms, as distinct from designing programs

  • describe and use various data structures in computer programs

  • analyse an algorithm and assess its efficiency

  • construct pseudo-code algorithms from problem specifications

  • appreciate efficiency of different programming languages.

  • Perform simple computations involving relations, orders and power sets

  • Suggest a suitable encoding for a data structure and write code to process it

  • Compare and contrast different machine arithmetics, such as fixed point and floating point

  • Explain why and when two expressions are equivalent for real numbers, one might be preferred over the other for machine arithmetic

Additional outcomes:

Programming skills are enhanced in solving real world problems.

Outline content:

General introduction to computer systems and hardware/software interaction;

  • Information representation: binary representation of text, integer, and floating points;

  • Data manipulation: the role of computer architecture, instructions and program execution;

  • Operating systems: components and their functions;

  • Computer networking: network classification, protocols, internet architecture and applications;

  • Information security: threats and protections, good practices;
  • Data structure: graphs, trees, lists, stacks, queues;

  • Algorithms: the art of problem solving, searching and sorting, time order;

  • Relations (reflexive, symmetric and transitive), orders (partial and total) and power sets.

  • Encoding of strings, vectors and matrices.

  • Comparison of different machine arithmetics.

Brief description of teaching and learning methods:

The module comprises 2 lectures per week, associated with laboratory practicals and tutorials. Coursework assignments are used to reinforce the relevant lectures.

Contact hours:
  Autumn Spring Summer
Lectures 20 20 2
Tutorials 4
Practicals classes and workshops 3 5
Guided independent study: 72 74
Total hours by term 99 99 2
Total hours for module 200

Summative Assessment Methods:
Method Percentage
Written exam 70
Written assignment including essay 20
Set exercise 10

Summative assessment- Examinations:

One 3-hour examination paper in May/June.

Summative assessment- Coursework and in-class tests:

The module includes 2 on-line tests (10%), a lab report (5%) in the Autumn Term, and one algorithms assignment (7.5%) and one practical assignment (7.5%) in the laboratory in the Spring Term.


Formative assessment methods:

Students will be provided with feedback throughout tutorials/practical classes.

Penalties for late submission:

The Module Convenor will apply the following penalties for work submitted late:

  • where the piece of work is submitted after the original deadline (or any formally agreed extension to the deadline): 10% of the total marks available for that piece of work will be deducted from the mark for each working day[1] (or part thereof) following the deadline up to a total of five working days;
  • where the piece of work is submitted more than five working days after the original deadline (or any formally agreed extension to the deadline): a mark of zero will be recorded.
The University policy statement on penalties for late submission can be found at: http://www.reading.ac.uk/web/FILES/qualitysupport/penaltiesforlatesubmission.pdf
You are strongly advised to ensure that coursework is submitted by the relevant deadline. You should note that it is advisable to submit work in an unfinished state rather than to fail to submit any work.

Assessment requirements for a pass:

A mark of 40% overall.

Reassessment arrangements:

One 3-hour examination paper in August/September.  Note that the resit module mark will be the higher of (a) the mark from this resit exam and (b) an average of this resit exam mark and previous coursework marks, weighted as per the first attempt (70% exam, 30% coursework).

Additional Costs (specified where applicable):
1) Required text books:
2) Specialist equipment or materials:
3) Specialist clothing, footwear or headgear:
4) Printing and binding:
5) Computers and devices with a particular specification:
6) Travel, accommodation and subsistence:

Last updated: 16 April 2020


Things to do now