Computer Science, Prifysgol Cymru Aberystwyth University of Wales
CS41010 (1995-96 session)
Object-Oriented Design
Brief Description
The major development in software design in the last decade
has been the adoption of object-oriented techniques. The object
approach first made an impact in the area of programming language
design but the ideas have rapidly spread and object-oriented
techniques are now of growing importance in areas as diverse as
software design methods, databases, graphical user interfaces and
distributed systems. This module provides an introduction to the
key concepts and features of object technology. Students will
learn object-oriented analysis and design and will implement
object-oriented programs in Visualworks, a modern programming
environment. The course will also provide a brief introduction to
recent developments such as object request brokers.
Aims, Objectives, Syllabus, Booklist
Further Details
- Number of lectures
- 20
- Number of seminars/tutorials
- 6
- Number of practicals
- 0
- Coordinator
- Dr. Fred Long
- Other staff involved
- Not yet known
- Pre-requisites
- C210/
CS21020
or equivalent experience
- Co-requisites
- None
- Incompatibilities
- Only available to students registered for Masters in
Software Engineering
- Assessment
- Assessed coursework - 50%
Written Exam -
50%
- Timing
- This module is offered only in Semester 1
Aims
The aim of this course is to provide an outline of the key
features of object-oriented technology. The course has a practical
rather than theoretical emphasis: students will learn
object-oriented design techniques by building object-oriented
programs using a modern object-oriented programming
language. As well as lectures, the course will use some small case
studies and a significant design and implementation assignment.
Objectives
On successful completion of this module, students
should:
-
Understand the basic concepts of object technology;
-
Have an appreciation of object-oriented analysis and
design and methods;
-
Have a working knowledge of an object-oriented programming
language;
-
Be able to customise an application framework to generate
an implementation;
-
Be able to produce simple design patterns.
Syllabus
-
Introduction - 4 Lectures
-
Motivation and background. History. From types to
classes. Problems with ADTs. Programming by difference.
Introduction to an object-oriented programming language.
-
Object-oriented analysis - 3 Lectures
-
Identifying objects in the problem domain.
Identifying candidate classes. A look at some simple
examples.
-
Object-oriented design - 3 Lectures
-
The design process.
-
A notation for
OOD. - 2 Lectures
-
Short case study using a suitable design process and
notation.
-
Reuse of designs - 2 Lectures
-
Using frameworks. Project: Customising a framework (e.g.
Interviews,
HotDraw).
-
Designing for
reuse - 2 Lectures
-
Using design patterns to express important design concepts.
-
Further issues - 4 Lectures
-
A brief overview of Client-server systems,
object-oriented databases, object
request brokers.
Booklist
The following should be consulted for different approaches or for further information
-
Grady Booch.
Object-Oriented Analysis and Design.
Addison-Wesley, 1994.
-
Timothy Budd.
An Introduction to Object-Oriented Programming.
Addison-Wesley, 1991.
-
Ian Graham.
Object-Oriented Methods.
Addison-Wesley, 2nd. edition, 1994.
-
W.R. Lalonde and J.R. Pugh.
Inside Smalltalk, volume I.
Prentice Hall, 1990.
-
James Rumbaugh et al.
Object-Oriented Modeling and Design.
Prentice-Hall, 1991.
-
Rebecca Wirfs-Brock, Brian Wilkerson, and Lauren Wiener.
Designing Object-Oriented Software.
Prentice Hall, 1990.
Version 4.1
Syllabus
John Hunt Departmental Advisor
jjh@aber.ac.uk
Dept of Computer Science, UW Aberystwyth (disclaimer)