Module 15519.1 (2004)
Syllabus page 2004/2005
06-15519
Fundamentals of Computer Science A
Level 1/C I
Eike Ritter
Eike Ritter (coordinator)
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus
The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)
Relevant Links
Additional Material for Programming Methodologies
Outline
The module will explore the fundamentals of computer science, both hardware and software. Topics will include: introduction to hardware, operating systems, networking; programming languages; the software lifecycle, stages of the lifecycle, case studies.
Aims
The aims of this module are to:
- introduce some basic software engineering issues, including requirements, specification, design and testing
- develop an appreciation of the difference between good and bad software design
- introduce the main hardware components of a computer and their function
- explain the role of an operating system and system software
Learning Outcomes
| On successful completion of this module, the student should be able to: | Assessed by: | |
| 1 | demonstrate knowledge of the fundamentals of computer hardware and software architectures | Examination |
| 2 | explain the differences between software engineering models and the circumstances in which each model is appropriate | Examination |
| 3 | understand the role of requirements and specifications | Examination |
| 4 | select a suitable design methodology for a given problem | Examination |
| 5 | understand the role of validation and verification and be able to evaluate and test simple programs | Examination |
Restrictions, Prerequisites and Corequisites
Restrictions:
None
Prerequisites:
None
Co-requisites:
06-15520 (Fundamentals of Computer Science B) (linked module)
Teaching
Teaching Methods:
4 hrs of lectures/tutorials per week
Contact Hours:
Assessment
- Supplementary (where allowed): As the sessional assessment
- 3 hr examination (100%), divided equally between this module and the linked module 06-15520 (Fundamentals of Computer Science B).
Recommended Books
| Title | Author(s) | Publisher, Date |
| Computer Science - a modern Introduction | L Goldschlager, A Lister | Prentice Hall, 1988 |
| Software Engineering - a practitioner's approach | R Pressman | McGraw Hill, |
Detailed Syllabus
-
Introduction to Computer Science
- A brief history of the development of the Stored-Program Digital Computer. The von Neumann computer.
- Computer Hardware Organisation (Central Processing Unit, Primary and Secondary Memory, Input/Output devices).
- Instruction sets (CISC, RISC); Instruction execution cycles; Memory addressing modes; Interrupts.
- System Software (Compilers, Interpreters, Assemblers, Loaders)
- Operating Systems basic functions (Device Management, Process Management, Memory Management)
- Scheduling and Synchronization.
- Networks (Topology, Security).
- Computability, complexity and correctness.
- Programming Methodology
- Importance of good Programming Methodology
- Definition of Software Engineering
- The Software Lifecycle
- Requirements and Specification
- Software Design
- Design Methodologies
- Verification and Testing
Last updated: 24 Sep 2004
Source file: /internal/modules/COMSCI/2004/xml/15519.xml
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus