Computer Science, Prifysgol Cymru Aberystwyth University of Wales
CS20210 (1995-96 session)
Computer Programming for Life Sciences
Brief Description
This module introduces the principles of procedural computer
programming. It is intended for students doing degrees in life
sciences but may be taken by others. On successful completion of
the course students will be able to design and implement simple
programs in a particular high level language. They will also have
an appreciation of the software development process which would
enable them to evaluate new software as a potential tool in their
work and to liaise meaningfully with software developers. Other
programming paradigms will be briefly introduced.
Aims, Objectives, Syllabus, Booklist
Further Details
- Number of lectures
- 24
- Number of seminars/tutorials
- 0
- Number of practicals
- 0 (Students are expected to spend unscheduled time on the
significant practical aspects of this course)
- Coordinator
- Mr. Nigel Hardy
- Other staff involved
- Not yet known
- Pre-requisites
-
CS20510
or equivalent experience
- Co-requisites
- None
- Incompatibilities
- CS10210, CS10310,
CS11010
,
CS21020
- Assessment
- Assessed coursework - 50%
Written exam -
50%
- Timing
- This module is offered only in Semester 1
Aims
Through an introduction to the software life cycle; a study of
the principles of procedural programming; examination of the
details of one high level language; experience of building small
programs; consideration of relevant case studies and examination
of procedural languages in a wider context this course
will:
-
give students an insight into the process of building
software;
-
allow them to assess the efficacy of building new software
as a potential solution to application problems in their own
discipline
-
allow them to work more effectively with and to modify and
customise existing software;
-
give them the skills to build small items of
software.
Objectives
On successful completion of this course, students will have an
understanding of:
-
the size and importance of the stages in simple software
life cycles;
-
the elements of procedural programming languages;
-
the resources necessary to build new software.
They will be able to:
-
use a development environment available at
Aberystwyth;
-
develop small programs of reasonably high quality.
Syllabus
-
Introduction - 1 Lecture
-
A practical overview of machines and
instruction sets; high level languages; interpretation and
compilation; data and algorithms.
-
Notation and
an introductory case study - 1 Lecture
-
Syntax and semantics; lexical conventions;
reserved words and identifiers. A small code example will be
considered from these aspects.
-
The development
environment - 1 Lecture
-
Practical details of using the chosen
environment.
-
Simple data types and variable
declaration - 1 Lecture
-
The concept of type; constants; the concept
of a variable; the need for a value of data declarations.
-
Basic control structures - 5 Lectures
-
The need for control constructs; basic branching and
looping; the need for and form of boolean expressions;
control construct syntax. Subprograms as control constructs;
procedures and functions.
-
A case study in
control structures - 1 Lecture
-
A structured program to demonstrate the
benefits of control structures.
-
Data
structures - 4 Lectures
-
The need for compound data structures; arrays and records.
User defined types; enumerated types. Simple
data structure design.
-
A full case study in
coding - 1 Lecture
-
A case study covering all aspects of coding
covered to date.
-
Program design - 2 Lectures
-
The need for a design phase. Simple design aids; flow
diagrams; pseudocode.
-
Establishment of functional
requirements - 1 Lecture
-
The need for a requirements establishment
phase. Examples of poor definition. The difficulties of
establishing requirements.
-
Testing - 1 Lecture
-
The need for testing; test strategies and
plans. Examples of testing schemes.
-
The software life
cycle - 1 Lecture
-
A review of the stages met, in context. The
relative importance of the stages in projects of different
types.
-
A major case study - 4 Lectures
-
The interactive development of a program of significant
complexity. Example requirements, design and testing documents.
Booklist
Students are likely to need ready access to the following
-
Walter J. Savitch.
An Introduction to the Art and Science of Programming.
Benjamin/Cummings Pub. Co, Redwood City, Calif, 3rd edition, 1991.
Version 4.1
Syllabus
John Hunt Departmental Advisor
jjh@aber.ac.uk
Dept of Computer Science, UW Aberystwyth (disclaimer)