Module Identifier CH11020  
Academic Year 2001/2002  
Co-ordinator Dr Myra Wilson  
Semester Semester 1  
Co-Requisite Available only to students taking the Diploma/MSc in Computer Science scheme at Aberystwyth.  
Course delivery Lecture   45 hours  
  Workshop   14 hours  
  Practical   Up to 60 hours  
Assessment Assignment   (A1) Three practical assignments   75%  
  Assignment   (A2) Final written assignment   25%  
  Supplementary examination   There is no provision for supplementary examinations or resits.    
Further details  

Brief description

There is much more to computing than programming and many graduates from the Diploma/MSc course may never need to do any programming in their professional careers. Nevertheless, an understanding of programming and, more generally, of the software development process is an important part of the education of anyone who wishes to be an IT professional. Such an understanding needs some practical skill and experience and this is what this module provides. It also introduces students to the computing environment and other information services available to them in Aberystwyth, and gives them some experience of working in teams.


To make students understand what is involved in software development and to give them the basic skills necessary
to develop well-structured, non-trivial programs in a well-designed programming language using a modern

Learning outcomes

On successful completion of the module, students should:


1. Computer System appreciation - 4 Lectures
Introduction to the basic computer organisation. Emphasis is placed on the relationships between hardware,
architecture and software, with reference to the computer systems at Aberystwyth. Using the computing facilities
at Aberystwyth.

2. Programming in the large - An introduction to Java - 30 Lectures
Software crisis, abstraction, algorithms and programs. The design of algorithms, object oriented programming and
an introduction to Java. Programming constructs, expressions, primitive types, classes and objects. Information
hiding. Further object oriented design; inheritance. Robust programs; exceptions.

3. Testing - 2 Lectures
Techniques and aids for error detection.

4. Persistent data - 4 Lectures
Advanced input/output and files. Worked example bringing together file handling and exceptions.

5. Graphical interfaces - 5 Lectures
An introduction to Java's Abstract Window Toolkit (AWT) and Java Swing and their use in developing more attractive user

Reading Lists

Ivor Horton. (March 1999) Beginning Java 2. Wrox Press Inc ISBN 1861002238
J. M. Bishop. (2001) Java Gently: Programming Principles Explained. 3rd edition. Addison-Wesley Pub Co ISBN: 0201710501
S. Heller. (1998) Who's Afraid of Java. AP Professional ISBN 0123391016
Y. Daniel Liang. (2000) Introduction to Java Programming. 3rd Edition. ISBN: 013031997X
Walter Savitch. (2000) Java: An Introduction to Computer Science & Programming. 2nd edition. Prentice Hall ISBN: 0130316970
Elliot B. Koffman and Ursula Wolz. (Aug 1998) Problem Solving with Java. Addison-Wesley ISBN 0201357437
Samuel N. Kamin, M. Dennis Mickunas, and Edward M. Reingold. (Nov 1997) An Introduction to Computer Science: Using Java. WCB/McGraw-Hill ISBN 0070342245
Cay Horst Mann. (2000) Computing Concepts with Java 2 Essentials. John Wiley ISBN 0471 346098
John Lewis and William Loftus. (2000) Java Software Solutions. Addison Wesley ISBN 0201 612712
Patrick Henry Winston, Sundar Narasimhan. (2001) On to Java. 3rd edition. Addison-Wesley Pub Co ISBN: 0201725932
Stephen J. Chapman. (1999) Java for Engineers and Scientists . Prentice Hall ISBN: 0139195238
It is considered essential that students buy one of these general texts on Java. Exactly which is left to your own personal preference. Advice will be offered in lectures..