COURSE SUBMISSION

 

B.Sc. DEGREE IN COMPUTER SYSTEMS

 

Dept of Computer Science and Information Systems

 

October 1994

 

 

 

 

 

 

 

 

 

Table of Contents

 

 

Page

 

1. Introduction 3

 

 

2. Aims and Objectives 3

 

 

3. Background 3

 

 

4. Rationale 4

 

 

5. Careers 5

 

 

6. Entry Requirements 5

 

 

7. Academic Programme 5

 

 

8. Credit Structure 5

 

 

9. Teaching Methods 6

 

 

10. List of Modules 6

 

 

11. Programme Outline 8

 

 

 

 

 

 

Bachelors Degree in Computer Systems.

 

1. Introduction

 

This document contains details of the submission to Academic Council of the University of Limerick for the award of a Bachelors Degree in Computer Systems. The structure of the programme described in this document represents the culmination of two years ongoing review of the existing B.Sc. programme. The programme design therefore reflects a logical evolution of the existing very successful degree. Some of the main changes have been to extend and modify the content of the final two years, in particular by providing a range of advanced optional topics.

 

The programme proposed here has been processed through the normal academic channels at Department and Faculty Board level.

 

2. Aims and Objectives

 

The overriding aim of the proposed course is to equip students to be successful computer professionals in the rapidly growing and dynamically changing software industry. The emphasis is on the principles and application of modern software development practices. In particular, it is the intention that students get a firm and lasting foundation that will serve them well, for a lifelong career, even after all the technical specifics have changed beyond recognition. It is felt that lasting relevance can only be given through the proper blend of theory, abstraction, and design together with exposure to a welter of technical skills and knowledge. More specifically, the aims and objectives are:

 

- to provide a professional level of competence in the most common languages, systems, methods and tools

- to provide a sound understanding of the principles of software development

- to develop in the student a strong sense of professionalism

- to reflect the current and emerging trends in the computing field

- to emphasise a set of recurring fundamental concepts that formed or are in the course of formation i.e. Binding, Complexity and Abstraction, Consistency and Completeness, Ordering in space and time, Reuse, Security, Design, Tradeoffs etc.

 

3. Background

 

The B.Sc. in Computer Systems was first established in 1979, as a four year degree course, and was revised in 1985. In the years since then it has been amended to take account of technological advances and the changing industrial and commercial environment. During the past two years the Department of Computer Science & Information Systems has been conducting a thorough review of the programme. The process was accelerated when the University decided to adopt a semester system since it would be futile to semesterize a programme and then have to redesign it within a year or two.

 

 

The existing B.Sc. programme is recognised as being very successful. Therefore in the course of revision care was taken not only to ensure that the resulting programme preserved the essential core of the existing course but in addition, to add to it to reflect the changing influences in the industry. For example the force of Object Orientation in all its embodiments, the influences of multimedia information types, and new forms of Human-Computer Interaction must be found in any modern computer science course.

 

It is recognised that specification, development, testing and support of software consume an increasing amount of national and company resources. As a consequence, there is a growing demand for software professionals who understand, and can apply, the principles of computing so as to produce systems and programs that meet the needs of society in an effective and timely manner. Due to the pervasive spread of software systems, the software professionals of the future will work in a rich diversity of positions and organizations. In recognition of this, it is a strong objective of the revised programme to develop in the student a strong sense of professionalism and a dedication to meeting the needs of their clients whether they be software vendors, purchasers or users. In addition it is intended that students should learn to relate their technological knowledge to the broader industrial and commercial context in which they work. Business, Mathematics and Management topics already in the course have been recast to match more accurately the perceived needs of computing students.

 

The proposed revised course retains the four year structure. Each year consists of two semesters, the first running from late September through to late January, the second running from mid February to late May. Each semester is made up of thirteen weeks teaching, half a week reading time and one and a half weeks of examinations. No previous knowledge of computing is required on the part of the student. The relevant fundamental concepts are developed in the early years of the course and further developed and consolidated in the succeeding years. The very successful cooperative education element has been retained. Under the revised structure, students spend the fourth semester on industrial placement, which could be either in Ireland or abroad.

 

4. Rationale

 

While the existing B.Sc. programme in Computer Systems is generally recognised to be of excellent quality, it was felt that important improvements could still be made to the course. Technology moves on, and it is necessary to reflect this movement in the inclusion of new topics plus the upgrading of existing modules. There is perhaps no other area of technology which is more dynamic than that of the computing industry, both hardware and the software. The last few years have seen the emergence of some very definite trends in the general computing field, i.e. Object Orientation, Distributed Systems, Client Server Systems, new forms of Human Computer Interaction, Multimedia, fast packet switching techniques, the convergence of Networking, Telecommunications and Computing, Artificial Intelligence in all its guises, etc. On the hardware side, the impact of RISC processors, parallel processors, bit mapped workstations, high quality fibre or coax based LANs and WANs etc. has to be explicit in any modern Computer Science course.

 

It should be stressed here that the existing programme, despite not having been revised since 1985, did pay attention to those important influences and trends alluded to above, i.e. the subject matter of individual modules would have changed over the years to reflect the more recent influences. However it was felt that a complete revision would give the opportunity to restructure modules and make explicit the inclusion of those influences.

 

 

In addition, it was desired to have some degree of flexibility in the course, especially in the final year where students may take optional topics to suit their interests and abilities. Several advanced topics are available on an optional basis.

 

Finally, it is intended to submit the programme to the British Computer Society for approval and accreditation. It is desired to gain exemption from part II of the society's examinations, and if successful, this would be the first University in the state to attain such an exemption.

 

5. Careers

 

There is a significant and growing shortage of computing graduates in industry and commerce due to the growth of the software industry in Ireland and the pervasive spread of computer systems in general. Graduates from the programme will be even better equipped to work both in the development and applications of computer systems. Past experience has shown that these graduates are very successful in quickly finding relevant employment. Career options include:

 

Database design & Administration

Software development

Software Engineering

Management Consultancy

Systems Analysis & Design

Research & Development

 

6. Entry Requirements

 

Applicants are required to hold at the time of enrolment the Leaving Certificate (or an approved equivalent) with at least Grade C3 in two higher level subjects and grade D3 in four ordinary or higher level subjects (including Mathematics, Irish or another language, and English). In addition applicants are required to hold at least a grade B3 in the Leaving Certificate Ordinary Level Mathematics, or an approved equivalent.

 

7. Academic Programme

 

The programme is of four years duration. In the proposed structure, the first year focuses on the concepts methods and theories that form the foundation of the emerging discipline of computing. Students learn to abstract the details of a problem and to formulate solutions that make appropriate use of standard algorithms, programs and systems.

 

In second year, the students have an eight month co-operative education placement, either in Ireland or abroad, where they get the opportunity to exercise the knowledge they have learned, increase their awareness of the work place and develop their social and business skills. Prior to undertaking this placement each student will have undertaken a substantial business related project as well as being introduced to the types of software infrastructure likely to be encountered in the software industry.

 

The third year program provides an in-depth treatment of many of the core topics of computer science as well as introducing some specialist topics such as artificial intelligence, computer graphics, and human computer interaction.

 

In the final year, students can choose from a number of elective streams as well as taking a number of core modules which round off their understanding of software technology and it's wider organizational

 

context. Each student must also undertake a substantial individual project which serves to integrate much of the knowledge and specialist technology that has been learned in the previous three years.

 

8. Credit Structure

 

In accordance with the University of Limerick policy the general credit structure is 3 credits per module, which involves two hours lectures, and one scheduled tutorial per week per module. However two exceptions are proposed. Firstly it is proposed to give 4 credits each to Computer Science 1 and 2, since it is considered that those are fundamental to the whole programme. Secondly in fourth year, the two modules IT in Business and Professional Issues in Software which deal with commercial and professional issues are to be examined by presentations and essays and for this reason and the nature of the material being covered, it is proposed to allocate 2 credits to each module.

 

9. Teaching Methods and Assessment

 

Teaching will mainly be via lectures and tutorials as indicated in the credit structure of modules. Most modules are designed to have associated laboratory sessions.

The main instrument of assessment will be via examinations at the end of each semester. However, project work is intended to be an important secondary instrument of assessment, as will essays and presentations for some special modules.

 

10. List of Modules

 

Semester 1 Page

 

MS4111 Discrete Mathematics 1 11

CS4111 Computer Science 1 12

CS4211 Computer Organisation 1 13

CS4311 Software Engineering 1 14

AC4801 Business Environment 1 15

 

 

Semester 2

 

MA4402 Computer Mathematics 2 16

CS4112 Computer Science 2 17

CS4212 Computer Organisation 2 18

CS4312 Software Engineering 2 19

MG4608 Business Fundamentals 20

 

 

Semester 3

 

MA4403 Computer Mathematics 3 21

CS4113 Object-Oriented Programming 22

CS4213 Operating Systems 23

CS4313 Software Engineering Project 24

CS4413 System Development 25

 

 

Semester 4

 

Co-op

 

 

Semester 5

 

CS4515 Programming Language Technology 1 26

CS4225 Computer Networks 27

CS4115 Data Structures & Algorithms 28

CS4815 Computer Graphics 29

CS4215 Concurrent Systems 1 30

 

 

Semester 6

 

CS4516 Programming Language Technology 2 26

CS4816 Artificial Intelligence 31

CS4416 Database Systems 32

CS4826 Human/Computer Interaction 33

CS4216 Concurrent Systems 2 34

 

 

Semester 7

 

CS4617 Computer Science Project 1 35

CS4817 Information Technology in Business 36

CS4317 Software Engineering 4 37

CS4417 Systems Analysis 38

 

Options

 

CS4847 Computational Linguistics 39

CS4857 Acquisitions of Computing Resources 40

CS4827 Simulation and Operations Research 41

 

 

Semester 8

 

CS4618 Computer Science Project 2 35

CS4818 Professional Issues in Software Engineering 42

CS4318 Software Engineering 5 43

 

Options

 

CS4218 Telecoms Network Architectures 44

CS4828 Computer Integrated Manufacturing 45

CS4418 Advanced Databases 46

 

 

11. Programme Outline

 

1st Year

SEMESTER 1 SEMESTER 2

MS4111 Discrete Mathematics 1

Statements, Quantifiers, Truth tables, Propositional Logic, Predicate Logic; Boolean Algebra, Sets and Relations; Computability; Proof techniques, Induction, Recurrence relations.

 

MA4402 Computer Mathematics 2

Real-valued functions: a geometrical approach to calculus using symbolic maths packages.Convergence of sequences. Simple numerical methods. Iteration of functions. Matrix operations; Matrices as linear transformations in computer graphics.Graph theory: basic concepts and algorithms. Computer representation of graphs.Notion of computational complexity.

 

CS4111 Computer Science 1

Syntax & Semantics, BNF, Notion of an algorithm, simple data structures and related algorithms; Control Structures in a procedural language.

 

CS4112 Computer Science 2

Array manipulation; Internal Sorting techniques; Recursive algorithms; Introduction to C++.

CS4211 Computer Organisation 1

Number rep.; Computer components, Microprocessors; Architecture of a PC; Low-level programming; Role of Operating Systems.

 

CS4212 Computer Organisation 2

Interrupts ; Stacks ; I/O handling; Interfacing; Installation and testing of CPU and peripheral components; Introduction to Networks.

 

CS4311 Software Engineering 1

Introduction to PCs and a Windowing environment ; Program Design; Data Intensive Systems; File Processing Algorithms; COBOL programming; File organisation and access methods;

CS4312 Software Engineering 2

Structured Systems Analysis and Design; Structuring of large programs; Projects using suitable third and fourth generation languages; Small Database systems.

 

AC4801 Business Environment 1

Financial Management ; Source, use and control of funds. Spreadsheets Auditing ; Reporting conventions; Principles and use of Spreadsheets; Structure and use of a typical Accounting Package;

MG4608 Business Fundamentals

Organisations, Functions and Management ; Personnel Marketing; Stock Control; Role of Information Systems.

 

 

   

2nd Year

SEMESTER 3 SEMESTER 4

MA4403 Computer Mathematics 3

Counting, Permutations and Combinations; Binomial theorem; Probability distributions ; elements of statistics ; Analysis of algorithms; Basic queueing theory.

 

CS4113 Object-oriented Programming

Principles of O-O programming ; Classes, inheritance ; Control structures, functions, procedures ; Programming in C++

 

CO-OP

CS4213 Operating Systems

Origins and History of Operating Systems; Functions of an OS; Programs and Processes; Memory management; File management; Scheduling; Communication management; Unix system shell.

 

[The Co-op report will be rigourously examined.It

will be written and presented in Semester 5 and

is expected to include both an account of

experience gained and of the technology used.]

CS4313 Software Engineering Project

A substantial, business-related project involving design, coding and testing. Builds on material from CS131 & CS132. Target language can be COBOL, C++,dBASE, SQL etc.

 

 

CS4413 System Development

Specification and Implementation; Modeling using Predicates, Sets and Relations; 'Z' - invariants, pre and post conditions; Implementation through SQL.

 

 

3rd Year

SEMESTER 5 SEMESTER 6

CS4515 Programming Language Technology 1

Nature of programming languages; General purpose and application specific languages; Virtual machines; Data control, Sharing and Type checking; Examples including procedural, functional, logic and list processing languages.

CS4516 Programming Language Technology 2

Compilers, Assemblers and Interpreters; Context-free Grammars; Stages in compilation; Language definition and semantics; Languages for parallel and concurrent systems.

 

 

CS4225 Computer Networks

Issues in data communications; OSI model; SNA; LANs WANs and MANs; Protocols; Packet switching; X25; Transport protocols; Internetworking; Presentation & application layer services.

 

CS4816 Artificial Intelligence

Principles of AI; Problem Solving methods; Game theory; Planning systems - including resolution; Principles and construction of Expert Systems; introduction to NLP.

 

CS4115 Data Structures & Algorithms

Abstract Data Types; Queues,Trees and Graphs; Performance estimates and measurement; Data-driven application design.

 

CS4416 Database Systems

Relational theory; Normalisation; Query languages (incl. SQL); Object-oriented databases; Security and Recovery.

 

CS4815 Computer Graphics

Graphic systems; Output devices; Graphic libraries; Viewing in two dimensions; transformations & co-ordinate systems; 3D transformations, rotations & reflections; Projections; Hidden surface removal; Rendering.

CS4826 Human/Computer Interaction

Elementary Psychology; Ergonomics; Design of Typical Systems; Advanced applications including Multi-media and CSCW.

 

CS4215 Concurrent Systems 1

Concurrent and Shared address spaces; Threads; Multiprocessor systems; IPC mechanisms.

CS4216 Concurrent Systems 2

Reqts for Concurrent/Distributed Systems; Process interaction; Interprocess communication; Naming and location; Resource allocation; Recovery; Concurrency control.

 

 

 

4th Year

SEMESTER 7 SEMESTER 8

 

Mandatory Subjects

CS4617 Computer Systems Project - 1

CS4618 Computer Systems Project - 2

 

CS4817§ Information Technology in Business

Strategic Planning of IT; Evolution of the IT function; Decision support systems; Management of IT for commercial advantage; Technology trends including Open Systems and EDI;

 

 

CS4818§ Professional Issues in Software Engineering

Computer Contracts; Intellectual Property Rights; Employee relations; Health and Safety; Product Liability; Computer Crime; Professional Codes of Conduct; Social Impacts; Case Studies.

 

CS4317 Software Engineering 4

Formal Methods and Program Proving; Logics for Software Engineering; Existing and potential tool support.

 

CS4318 Software Engineering 5

Software Quality Assurance; Approaches to Testing; Computer Aided testing; Quality Metrics; Software Process Modelling; Software Maintenance; Re-engineering.

 

CS4417 Systems Analysis

Requirements Specification; Logical and Physical Design; Planning and Control of Projects; Cost/Benefit analysis; Selection and adaptation of CASE tools.

 

 

 

 

§ NOTE - these two modules will have two credits each and will be examined by essays and student presentations.

 

Options :

Students choose two modules for each semester. Not all combinations of choices may be possible due to staffing and other resource constraints. Additional options may be provided on occasions.

 

   

CS4847 Computational Linguistics

Including advanced NLP;

 

CS4218 Telecoms Network Architectures

Supporting speech traffic; PCM trunks; transmission systems; Packed switching; X25; ISDN; Network interfaces; Management of Networks; VLR; HLR; MSCs.

CS4857 Acquisition of Computing Resources

 

 

CS4827 Simulation and Operations research

Discrete Event Simulation; Applications and Tools; Simscript/GPSS or similar; Analysis of Outputs;

 

CS4828 Computer Integrated Manufacturing

Manufacturing systems and information systems; The manufacturing system database; time-phased material requirements; the role of the planner; capacity planning and control; lead time; scheduling of operations; J I T Systems.

 

CS4418 Advanced Databases

Database Architectures including object-oriented DBs; ctive databases and trigger technology; Deductive databases, Knowledge representation and acquisition; Security and Integrity issues; Data Distribution Issues; Database Computers.

 

 

 

 

MODULE TITLE Discrete Mathematics 1

 

MODULE CODE MS4111

 

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE None

 

 

AIMS AND OBJECTIVES

 

To introduce the student to the foundations of mathematics. To develop the reasoning skills required for students who wish to use the computer in an intelligent way.

 

SYLLABUS

 

[Mathematical Logic]: statements, quantifiers, truth tables. Propositional and predicate logic. [Boolean Algebra]. [Sets and functions]. [Number systems] and the Peano axioms Induction, recurrence relations and proof techniques. [Algebraic structures]: semigroups, groups, rings and fields. [Relations], equivalence relations, order relations and operations on relations.

 

PRIME TEXT

 

 

 

OTHER RELEVANT TEXTS

 

Gersting, JL Mathematical Structures for Computer Science, Freeman (1987)

Grimaldi, RP. Discrete and Combinatorial Mathematics, Addison-Wesley (1994)

Johnsonbaugh, R. Discrete Mathematics. Macmillan (1986)

Piff, M. Discrete Mathematics, CUP (1991)

 

REASON FOR INCLUDING THIS MODULE Semesterisation

 

 

SEMESTER TO BE FIRST OFFERED Autumn 1994 - Semester 1.

 

 

 

MODULE TITLE Computer Science 1

 

MODULE CODE CS4111

 

CREDITS 4 credits - important core module, with a greater commitment of time,

which will indicate the student's ability to succeed on the Computer

Systems degree course.

 

GRADING TYPE M Grade 20%

 

PREREQUISITE MODULES None

 

 

AIMS and OBJECTIVES

 

Students will demonstrate ability to reason about and develop algorithms,

manipulate computer data representations and simple data structures and design

and write simple program implementations.

 

SYLLABUS

 

Syntax and semantics. BNF and syntax diagrams.

Number and character representations.

Principles of program design. Algorithms for summing, counting, exchanging,

manipulating arrays.

Control structures.

Procedures, functions. Parameter passing.

 

PRIME TEXT

 

How to Solve it by Computer RG Dromey, Prentice Hall, 1982.

 

 

OTHER RELEVANT TEXTS

 

Programming from First Principles R Bornat, Prentice Hall 1987.

 

REASON FOR INCLUDING THIS MODULE

 

General introduction to programming theory and practice

 

SEMESTER TO BE FIRST OFFERED Autumn 1994 - Semester 1.

 

 

MODULE TITLE: Computer Organisation 1

 

MODULE CODE: CS4211

 

CREDITS: 3

 

GRADING TYPE: Normal

 

PREREQUISITE MODULES: None

 

 

AIMS AND OBJECTIVES:

 

To provide students with a sound foundation in computer organisation and architecture.

 

SYLLABUS:

 

Introduction to Computer Architecture

The representation of data

Pure binary notation, Binary operations, Negative numbers, Fractions

Hexadecimal and octal notation

Inter-base conversions

The representation of data, ASCII, BCD, EBCDIC

Principles of error detection and prevention

The representation of numbers

Introduction to Boolean algebra

Combinational and Sequential logic circutry

Construction techniques for integrated circuits

The Central Processing Unit (CPU)

Instruction formats, The main control unit, The ALU, Buses

Operation of the CPU, The Fetch- execute cycle.

Primary and secondary memory

Introduction to microprocessors

Architecture of a PC

Main memory

General considerations, Static versus dynamic memory, ROM, PROM, EPROM, EEPROM

Serial Access Backing Storage

Magnetic Disks

Floppy Disks

New Memory Technology

input peripherals, keyboards, mouse, scanners, OCR, MICR Barcodes

output peripherals, printers, plotters, COM

Role of operating systems

Principles of Data communications

 

 

PRIME TEXT

Introduction to Computer Hardware and Data Communications. P A Goupille, Prentice Hall, 1993

 

OTHER RELEVANT TEXT

Computer Science, C.S. French, DP Publications

 

REASONS FOR INCLUDING THIS MODULE:

 

SEMESTER FIRST OFFERED Autumn 94 - Semester 1

 

 

 

MODULE TITLE Software Engineering 1

 

MODULE CODE CS4311

 

CREDITS 3

 

GRADING TYPE M

 

PREREQUISITE MODULES None

 

AIMS and OBJECTIVES

 

To equip students with a thorough understanding of the desktop environment and some of its most important applications. To give students a thorough grounding in the structures, concepts, commands, and tools of MS-DOS and MS-Windows. To introduce students to the COBOL programming language.

 

SYLLABUS

 

Introduction to the PC hardware and its operating system.

Simple Operating system concepts and commands.

Introduction to GUIs (Windows).

GUI Tools (Program Manager, File Manager, Control Panel).

OLE and DDE.

Word-processing (MSWord) and Spreadsheets (MSEXCEL)

Advanced DOS

Advanced Windows

Introduction to the programming language COBOL.

Data declaration in COBOL Producing formatted output.

COBOL Control structures (IF, EVALUATE, PERFORM)

Introduction to Sequential Files.

 

PRIME TEXT

 

Coughlan,Michael. Course Notes and COBOL Course Notes.

Windows Manuals

Application Manuals

 

OTHER RELEVANT TEXTS

 

COBOL Language Reference Manual.

COBOL User Guide.

 

REASON FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED Autumn 94 - Semester 1

 

 

 

MODULE TITLE Business Environment 1

MODULE CODE AC4801

 

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE None

 

AIMS AND OBJECTIVES

 

To familiarise the students with:

Accounting and Finance policies which are relevant to the Computer Science Student;

Major components of information systems such as transaction processing, file maintenance and information retrieval.

 

SYLLABUS

 

Data Recording:

accounts and their structure; rationale for accounts structure;

operation of accounts (eg double entry).

Source and Application of Funds:

Sales, debt, shareholders and other investors;

Various expense types, fixed and variable, investments, assets purchase and the concept of depreciation, methods and problems of depreciation.

Auditing:

Purpose, obligations and implications.

Miscellaneous:

Reporting requirements (eg P & L summaries);

Budgeting and control;

Cashflow and it's significance;

Payroll operation and the legal obligations associated with it;

Data Protection Act.

 

Accounting Software:

Spreadsheets - Principles and Use

Files, structure and content;

Transactions, updates;

Retrieval, sorting, searching, reports;

Customisation, document design;

Stock Control and the financial implication of poor stock control;

Ledgers - sales, purchases, aged debtors & creditors, invoicing, VAT, posting of transactions, integration and analysis;

Advantages of Computerised Accounts, Financial Reports.

 

 

 

PRIME TEXT

Accounting for Non-Accounting Students, Dyson, John R Pitman Publising, 1991

 

OTHER RELEVANT TEXTS

 

Business Fundamentals for Engineers, Kuo, Chengi, McGraw-Hill, 1992

Computerising Your Accounts, Marlow, A J, NCC Blackwell, 1989

 

REASONS FOR INCLUDING THIS MODULE

To give students an appreciation of the Financial Operations of Business and of the Management of Money.

 

SEMESTER TO BE FIRST OFFERED Autumn 1994 - Semester 1

 

 

 

MODULE TITLE Computer Mathematics 2

 

MODULE CODE MA4402

 

PRE-REQUISITE MODULES MS4111 Discrete Mathematics 1

 

GRADING TYPE Normal

 

CREDITS 3

 

 

AIMS/OBJECTIVES

 

To continue the development of the foundations of mathematics. To introduce the students to further mathematical ideas of crucial importance in computer science. Symbolic maths packages will be used to demonstrate many of these

ideas.

 

SYLLABUS

 

[Real-value functions:] a geometrical approach to calculus through the graphs of functions of one or two variables (use will be made of symbolic maths packages).

Convergence of sequences.

[Simple numerical methods.] Iteration of functions.

[Matrices:] addition, multiplication and scalar multiplication. Matrices as linear transformations in computer graphics.

[Graph theory:] basic concepts of vertices, edges, paths, circuits, connectedness and trees. Computer representation of graphs. Graph algorithms. Ideas of computational complexity.

 

PRIME TEXTS

 

Char, B.W. et al Maple V First Leaves. 1992. A tutorial introduction to

Maple V. Springer-Verlag.

 

Gersting, J.L. 1987. Mathematical structures for computer science.

Freeman.

 

Grimaldi, R.P., 1989. Discrete and combinatorial mathematics,

Addison-Wesley.

 

Johnsonbaugh, R. 1986. Discrete mathematics. Macmillan.

 

Piff, M. 1991. Discrete mathematics. CUP.

 

REASON FOR INCLUDING Semesterisation

 

SEMESTER TO BE FIRST Semester 2: Spring 1994/95

OFFERED

 

 

MODULE TITLE Computer Science 2

 

MODULE CODE CS4112

 

CREDITS 4 credits - important core module, with a greater commitment of time, which will indicate the student's ability to perform on the Computer Systems degree course.

 

GRADING TYPE M Grade 80%

 

PREREQUISITE MODULES CS4111 Computer Science 1

 

AIMS and OBJECTIVES

 

In this module, which follows from the basic concepts in Computer Science 1,

students will develop skills in reasoning, program design, and programming,

using a variety of essential data structures. The module will be concerned

with the introduction of levels of abstraction in programming, and students

will develop and write programs which use procedure libraries of their own

creation. Assessment of Computer Science 1 and 2 will be carried out mainly

through project work.

 

SYLLABUS

 

Array merging and sorting algorithms and implementations - Selection,

Exchange, Insertion Sort.

Implementations of search, insert and delete on ordered and unordered tables,

hash tables, stacks, queues and binary trees using arrays and linked lists.

Recursive algorithms.

 

PRIME TEXT

 

As Computer Science 1.

.

 

REASON FOR INCLUDING THIS MODULE

 

Completes the introduction to programming theory and practice

 

SEMESTER TO BE FIRST OFFERED Spring 1995 - Semester 2

 

 

MODULE TITLE: Computer Organisation 2

 

MODULE CODE: CS4212

 

CREDITS: 3

 

GRADING TYPE: Normal

 

PREREQUISITE MODULES: CS4211 Computer Organisation 1

 

AIMS AND OBJECTIVES:

 

Continuation of CS121, Introduction to Assembly Language Programming, more advanced topics.

 

SYLLABUS:

 

Introduction to low level programming

Assembly language Programming

Special registers, Addressing modes, Stack operations, 1/0 handling

Assembly language project

Interrupts, the principle of interrupts

Recognition of interrupts, Interrupt processing

Interfacing

Installation and testing of CPU and peripheral components

How to install cards, Allocation of IRQ's, Installation of drivers, Setting DIP switches

Installation of memory including SIMMS and SIPS

The microarchitecture of computer system

Introduction to microprogramming

Advanced Computer Architectures

RISC machines, Parallel Architectures

Introduction to Artificial Neural Networks

Introduction to computer networks

 

PRIME TEXT

Structured Computer Organization. A.S. Tanenbaum, 1990

 

OTHER RELEVANT TEXTS

An Introduction to Computer Architecture using VAX machine and assembly language. Schechter, Desautels. WCB Publishers.

 

OR

Programming in Assembly Language on the IBM PC, R M Trapper, West Publishers.

The Complete PC upgrade and Maintenance Guide, Mark Minasi SYBEX

 

REASONS FOR INCLUDING THIS MODULE:

 

SEMESTER FIRST OFFERED Spring 95 - Semester 2

 

 

MODULE TITLE Software Engineering 2

 

MODULE CODE CS4312

 

CREDITS 3

 

GRADING TYPE M

 

PREREQUISITE MODULES CS4311 Software Engineering 1

 

AIMS and OBJECTIVES

 

To equip students with a comprehensive knowledge of COBOL and of common file processing algorithms. To give students a thorough understanding of program design and the elements of good programming practice. To introduce testing and debugging techniques and practices. To allow students to exercise their design, programming and testing skills by means of a number of scaled programming projects.

 

SYLLABUS

Introduction to Design Notations (JSP, Nassi-Shneiderman, Warnier-Orr).

Introduction to Program Design using Diagrammatic Stepwise Refinement.

Sequential file processing algorithms.

SORTing and MERGing.

Tables. SEARCHing Tables.

The COBOL Report Writer.

Introduction to File Organizations, access methods and algorithms using COBOL.

Using direct access files (Indexed and Relative).

COBOL string handling (INSPECT, STRING, UNSTRING, Reference Modification).

CALLing external and contained sub-programs. EXTERNAL and GLOBAL data.

COPYing text from COBOL Libraries.

Screen handling in COBOL.

Debugging Techniques.

 

PRIME TEXTS

 

Coughlan,Michael. COBOL Course Notes.

 

OTHER RELEVANT TEXTS

 

COBOL Language Reference Manual.

COBOL User Guide.

 

REASON FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED Spring 95 - Semester 2

 

MODULE TITLE Business Fundamentals

 

MODULE CODE MG4608

 

PRE-REQUISITE MODULES

 

GRADING TYPE Normal

 

CREDITS

 

 

AIMS/OBJECTIVES

 

This module is a foundation module designed to introduce and familiarise students with the concepts and principles which

underpin the operations and functions of the contemporary business.

To develop an understanding and appreciation of the various functional activities of the Business-management, marketing,

production and personnel.

The module will also highlight to students how these functional areas are integrated and work together to develop the

business.

 

SYLLABUS:

 

Understanding the business, classification of business by size, sector; the changing role of business in society; business formation and structures; organizational culture; social responsibilities of business; the business environment - micro and macro factors examined; environmental scanning; business audits; managing the changing business: introduction to the functional areas of business, management, marketing, finance, human resource management; communication and information systems in the business; managing people; teamwork; strategy development.

 

PRIME TEXT(S):

 

Kuo C. (1992) Business Fundamentals for Engineers, McGraw Hill.

Palmer A and ~I Worthington. (1992) The Business and Marketing Environment, McGraw Hill.

 

OTHER RELEVANT TEXTS:

 

Appleby R. (1987) Modern Business Administration, Pitman Publishing.

Farnham D. (1990) The Corporate Environment, IPM.

Foley E. (1989) Irish Business Management, Gill and Macmillian.

Hooley J and J. Saunders. (1993) Competitive Positioning - the Key To Market Success, Prentice Hall.

 

REASONS FOR INCLUDING THIS MODULE:

 

To provide non business students, i.e. engineers, scientists, computer students with an overview and understanding of the business they work within and their contribution to the growth and development of the business. To develop students specific knowledge of the various functions of the business, and specifically the role of the technical person in the changing organization.

 

SEMESTER TO BE FIRST OFFERED: Autumn 1994

 

 

MODULE TITLE Computer Mathematics 3

 

MODULE CODE MA4403

 

PRE-REQUISITE MODULES MA4402 Computer Mathematics 2

 

GRADING TYPE Normal

 

CREDITS 3

 

 

AIMS/OBJECTIVES

 

To introduce the student to probabilistic ideas through the medium of

information theory.

 

 

SYLLABUS

 

[Combinatorics:] permutations, combinations and the binomial theorem.

[Probability:] Bayes theorem, conditional probability.

[Introduction to information theory.] Compression algorithms.

[Normal, Poisson and binomial distributions.]

[Hypothesis testing.]

X2 -test

[Elementary queuing theory.]

 

 

PRIME TEXT

 

Hodge, S.E., Seed, M.L. 1977. Statistics and probability. Balckie/Chambers.

 

Information theory and coding, 1963. McGraw-Hill.

 

 

 

REASON FOR INCLUDING Semesterisation

 

SEMESTER TO BE FIRST Semester 3: Autumn 1994/95

OFFERED

 

 

MODULE TITLE: Object Oriented Programming

 

MODULE CODE: CS4113

CREDITS: 3

GRADING TYPE: Normal

PREREQUISITE MODULES: CS4112 Computer Science 2

CS4312 Software Engineering 2

 

AIMS AND OBJECTIVES:

 

To instill into students to foundations that will help them to become effective users of the object-oriented approach to design and implementation. To provide practical experience in the development and in the re-use of object-oriented software.

 

SYLLABUS:

 

Background on the development of Object-Oriented programming. Modularity, information hiding, function abstraction, data abstraction and encapsulation. Polymorphism, overloading of functions and operators. Run-time binding and virtual functions. Use of function and class templates.

Inheritance, and its role in abstraction, design and in software re-use. Use of Class Libraries. Container and non-container class libraries. GUI classes. Specialized class libraries. Design and Construction of Classes, including classes with dynamic components. Principles of object-oriented analysis, design and representation.

 

PRACTICAL:

 

Programming with C++. Programming with use of Class Libraries, initially by building application that create and use objects from class libraries and later in the course by reusing and modifying classes. The libraries used may include; class libraries for data structure objects,

class libraries for handling GUIs, multimedia class libraries. Implementation of classes, including classes with dynamic components.

 

PRIME TEXT:

 

Stroustrup, Bjarne, "The C++ Programming Language", 2nd Edition, Addison Wesley, 1991.

 

OTHER TEXTS:

 

Booch, Grady, "Object Oriented Design with Applications", Benjamin Cummings, Menlo Park, 1991.

Winder, Russel, "Developing C++ Software", 2nd Edition, John Wiley , 1993

Lippman, Stanley B., "C++ Primer", 2nd edition, Addison-Welsley.

Documentation set for C++ enviornment and for class libraries.

(Borland C++ document set, for example.)

Meyer, Bertrand, "Object Oriented Software Construction", Prentice-Hall 1988.

 

REASONS FOR INCLUDING THIS MODULE:

To ensure that students are conversant with current and developing practices in software design and construction. Undergraduates and graduates with object-oriented skills and a knowledge of C++ are in demand by employers.

 

SEMESTER FIRST OFFERED: Autumn 1994 - Semester 3.

 

 

MODULE TITLE Operating Systems

 

MODULE CODE CS4213

 

CREDITS 3

 

GRADING TYPE N

 

PREREQUISITE MODULES CS4111/ÇS4112 Computer Science 1/2

CS4211/CS4212 Computer Organisation 1/2

 

AIMS and OBJECTIVES

 

The aim of this module is to provide students with a clear understanding of the logical structure and facilities provided by a traditional uniprocessor Operating System.

 

SYLLABUS

 

The need for and historical development of operating systems.

The operating system viewed as a set of layered services.

The concept of a process as the scheduable entity.

Process state.

Process dispatching. Interrupt handling.

Memory management:

Physical and virtual memory. Address translation hardware.

Paging and segmentation software.

Device management:

I/O devices and controllers. Device drivers. DMA.

Disk scheduling algorithms.

File management:

Files and directories.

Implementation, reliability and security. Disk space management.

The shell.

Communication management:

LANs and WANs. The ISO model of network software.

Ethernet.

The course will include a study of the Unix operating system.

Students will be expected to demonstrate competance in accessing Unix system calls through project work.

PRIME TEXT

Bacon, J., Concurrrent Systems. Workingham: Addison-Wesley. 1993

 

OTHER RELEVANT TEXTS

Milenkovic, M., Operating Systems Concepts and Design. New York: McGraw Hill, 1992.

Silberschatz, A., Peterson, J., Galvin, P., Operating System Concepts. Reading, Mass.: Addison Wesley, 1991.

Deitel, H., Operating Systems. Reading, Mass.: Addison Wesley, 1990.

Theaker, C., Brookes, G., Concepts of Operating Systems. London: Macmillan, 1993.

 

REASON FOR INCLUDING THIS MODULE

General introduction to operating systems.

 

SEMESTER TO BE FIRST OFFERED Autumn 1994 - Semester 3

 

 

MODULE TITLE Software Engineering Project

 

MODULE CODE CS4313

 

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE MODULES CS4312 Software Engineering 2.

 

AIMS and OBJECTIVES

To equip students with the skills necessary to design, code and test large

software systems. To introduce Module design criteria.

To give students experience of working in programmer teams and the confidence to tackle a large software system. To foster co-operative programming and encourage team work. To allow students to exercise the analysis, design and programming skills acquired in previous modules.

 

 

SYLLABUS

The module consists two projects (one minor and one major) and a small number of lectures. The lectures cover such topics as;

Module Strength, Module Coupling and other Module design criteria

A comparison of the abstraction features of COBOL, Modula-2 and/or C++.

Program testing techniques are reviewed and System testing is introduced.

 

The first project continues the COBOL project work. It is a relatively small project done individually.

 

The second project occupies the last eight weeks of the semester. Students work in teams to produce a complete implementation. The project is initially presented partially specified and the students complete the requirements specification. They then take the project through the design, coding and testing stages. Walkthroughs and design and code inspections are introduced in tutorials. The implementation language is open and will include COBOL, Modula-2, C++, and SQL.

 

PRIME TEXT

 

Page-Jones, Meilir. Practical Guide to Structured Systems Design. 2nd Edition. Prentice-Hall 1988.

Constantine, Larry L. Structured Design. Yourdon Press. 1978.

Myers, G.J. Composite/Structured Design. Von Nostrand Reinhold 1978.

 

OTHER RELEVANT TEXTS

 

Writings of the Revolution - Selected Readings on Software Engineering. Yourdon Press 1982

Classics in Software Engineering. Yourdon Press. 1979

Myers, G.J. The Art of Software Testing. Wiley 1979

 

REASON FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED Autumn 94 - Semester 1

 

 

MODULE TITLE System Development

 

MODULE CODE CS4413

 

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE MODULES MS4111 - Discrete Mathematics

 

AIMS and OBJECTIVES

 

The aim of this module is to present an integrated approach to system specification and implementation. The objectives are to introduce formal specification methods, to introduce relational databases and non-procedural programming, and to show how a specification may be transformed by re-specifying it in an implementation language.

Students will gradually be introduced to Information Modelling using Fact Based Analysis. Practical work in the form of a series of graded exercises in Z and SQL will support this step-by-step approach.

 

SYLLABUS

 

The software development life cycle,

Specification and Implementation,

Abstract and Concrete Specification

Modelling facts in terms of Predicates, Sets, Relations

The Relational Model

SQL, Simple Queries, Qualifiers, Projections and Joins

Z, Sets and Types, Schemas, Predicates

Invariants

Pre- and Post-conditions

Fact Based Analysis

Database definition in SQL

Database constraints

Data manipulation in SQL

Query nesting, Union

Views in SQL

 

PRIME TEXT

 

Information Modelling - Specification and Implementation, David Edmond, Prentice Hall, 1992

 

OTHER RELEVANT TEXTS

 

Software Development with Z, J. B. Wordsworth, Addison Wesley, 1992 Ultrix/SQL Reference Manual, Digital, 1990

 

REASON FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED Autumn 94 - Semester 3

 

 

MODULE TITLE: Programming Language Technology - 1 & 2

 

MODULE CODE: CS4515/CS4516

 

CREDITS: 3 + 3

 

GRADING TYPE: M (20% + 80%)

 

PREREQUISITE MODULES: CS4113 - Object Oriented Programming

CS4313 - Software Engineering Project

 

AIMS AND OBJECTIVES:

 

To describe the main programming language paradigms in use today

To discuss the issues which are involved in designing a programming language

To explain how programming languages are implemented

 

SYLLABUS:

 

The Historical development of modern programming languages

Programming paradigms:

- functional

- logic-based

- object oriented

- procedural

 

Grammars:

- Regular expression

- context free grammar

- parsing

 

Compiler Construction

- compilers and interpreters

- lexical analysis

- syntax analysis

- code generation

- symbol tables, error handling

- semantics

- compiler generating tools: Lex and YACC

 

PRIME TEXTS

 

Aho, A.V., Sethi, R. and Ullman, J.D. (1986). Compilers - Principles, Techniques and Tools. Addison-Wesley.

Wilson, C.B. and Clark, R.G. (1988). Comparative Programming Languages. Wokingham, UK: Addison-Wesley.

CN Eischer,RJ le Blanc (1991). Crafting A Compiler. Addison-Wesley.

 

 

OTHER RELEVANT TEXTS:

 

Bornat, R. (1979). Understanding and Writing Compilers. London, UK: MacMillan.

Malone, J.R. (1987). Comparative Languages. Bromley, UK: Chartwell-Bratt.

D. Maien, DS Warren, (1988) Computing with Logic, Benjamin-Cummings

Bertrand Meyer, (1990) Introduction to the Theory of Programming Languages. Prentice-Hall.

S L Peyton-Jones, (1987) The Implementation of Functional Programming Languages. Prentice-Hall

 

REASONS FOR INCLUDING THIS MODULE:

 

To enable students to develop a sophisticated understanding of programming language design issues.

To show how compilers are constructed and the relevance of this technology to software engineering in general.

 

SEMESTER TO BE FIRST OFFERED: Autumn/Spring 95/96 - Semesters 5 & 6

 

 

MODULE TITLE Computer Networks

 

MODULE CODE CS4225

 

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE MODULE CS4213 Operating Systems

 

 

AIMS and OBJECTIVES

 

To highlight the problems related to interconnecting computers

Give an understanding of how the OSI reference model addresses those problems

Understand the fundamentals of TCP/IP based networking.

 

SYLLABUS.

 

Issues in data communications, devices, media, modulation, data rates, bandwidth, multiplexing, Analog v Digital, Error Detection & Correction.

Switched v Broadcast networks, LANs v WANs, MACs.

Data Link protocols

Packet Switching, Circuit Switching, Frame Relay, Cell Relay

Transport Protocols, ISO & Internet, Connectionless v Connection Oriented operation. Internetworking.

Presentation Layer Services , Abstract & Transfer Syntaxes.

Application layer Service Elements

 

PRIME TEXT

 

Halsall, Fred. Data Communication, Computer Networks, & Open Systems. 3rd edition. ISBN 0-201-56506-4, 1992.

 

OTHER RELEVANT TEXTS

 

Tanenbaum, Andrew. Computer Networks 2nd Edition. 1988 ISBN 0-13-166836-6

Stallings, William. Data & Computer Communications 3rd edition 1991. ISBN:0-02-946478-1.

 

REASONS FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED Spring 95 - Semester 5

MODULE TITLE: Data Structures and Algorithms

MODULE CODE: CS4115

CREDITS: 3

GRADING TYPE: Normal

PREREQUISITE MODULES: CS4113 Object Oriented Programming

 

AIMS AND OBJECTIVES:

 

To provide a uniform theoretical treatment of the data structures and algorithms used in systems and applications programming. This course includes a practical component to reinforce learning and to encourage students in the practical use of theoretical material.

 

SYLLABUS:

 

Review of the ADTs, internals and usage of simple data structures and associated algorithms, in particular recursive algorithms. Use of class libraries, including container classes. Role of abstraction

Review material will cover: Collections, Bags, Sets, Arrays, Stacks, Queues, Priority Queues, and simple searching and sorting algorithms. Detailed and advanced treatment of the following data structures Binary Trees, including threaded trees, Multiway Trees (excluding B, B+ and B* trees), Linked Lists and Networks. Recursion, and the elimination of recursion from algorithms. Study of the following algorithms: Sorting: Quicksort, Heapsort, Shellsort, Merge Sort and Bin and Radix sorting. Searching: Tree searching, AVL trees and Search Tries. ( B, B+ and B* trees, external searching and hashing is deferred to CS332). String searching and pattern-matching and parsing algorithms such as Knuth-Morris-Pratt, Boyer-Moore and Rabin-Karp and recursion in parsing. Graph algorithms: Graph traversal and Spanning Forests. Depth and breadth first search of graphs. Connectivity. Minimal spanning trees for weighted graphs. Shortest path algorithms.

Networks : Ford-Foulkerson method. Storage Management. Automatic list management, general storage management. Fast Fourier Transform. Dynamic programming, optimal binary search trees. Exhaustive search. Game playing, travelling salesman problem. NP-complete problems.

 

Additional Topics some or all of which will be covered: Data compression and decompression including run length coding, and Huffman codes. Introduction to Cryptology. Bipartite Graphs and the Stable Marriage problem. Random Number generation. Curve fitting. Splines, least squares method. Parallel algorithms. Perfect shuffles, systolic arrays,

 

The following topics will be dealt with in practicals/assignments: Practical evaluation of space and time requirements of algorithms. Large integer arithmetic. Polynomial evaluation. Tree searching, game playing, minimax and pruning. Practical use of classes in problem solving. Note: Throughout, an emphasis will be placed abstractions involved in the various data structures and on the space and time performance of algorithms.

 

PRIME TEXT:

 

Sedgewick, Robert, "Algorithms in C++", Addison-Wesley.

 

OTHER RELEVANT TEXTS:

 

Wirth, N, "Algorithms+Data Structures = Programs", Prentice Hall.

Tenenbaum, Langsam and Augenstein, "Data Structures Using C", Prentice-Hall.

Knuth, Donald E., "Fundamental Algorithms", vols 1 & 3, Addison-Wesley.

Ammeraal, Leendert, "Programming and Data Structures in C", John Wiley.

 

 

Naps and Pothering, "Introduction to Data Structures and Algorithm Analysis", West Publishing Company.

Naps, Thomas L., "Program Design and Data Structures", West Publishing Company.

Borland C++ Programmer's guide

 

REASONS FOR INCLUDING THIS MODULE:

 

Essential tools-of-the-trade for software developers.

 

SEMESTER FIRST OFFERED: Autumn 94 - Semester 5.

 

 

MODULE TITLE Computer Graphics

 

MODULE CODE CS4815

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE MODULES CS4212 Computer Organisation 2

CS4113 Object Oriented Programming

 

AIMS and OBJECTIVES

To understand the properties of Interactive Graphics Systems, viz input & output devices, graphic libraries.

To make the student conversant with the issues which arise in the creation, storage and display of graphic images both in 2 and 3 dimensions.

To emphasise the role of standards in Computer Graphics.

 

SYLLABUS.

 

Interactive Graphics systems, the role of the user, Input & output devices, Raster Scan devices, Video Memory Models, Writing modes, Block Transfers. Device, Language, Application Independence.

Viewing functions,(2D) Clipping functions, Input & Output primitives, Control, Transformation & Segementation functions. Modelling.

3D Transformations, rotations, reflections. Projections. Viewing in 3D. Representation of surfaces via polygons, Realism, Hidden surface removal. Surface generation via bicubic curves. Rendering.

 

PRIME TEXT

 

Angel, Edward. Computer Graphics.1990. Addison Wesley ISBN 0-201-13548-5

 

OTHER RELEVANT TEXTS

 

Foley, Van Dam, Feiner & Hughes. Computer Graphics Principles & Practice (2nd edition) Addison-Wesley 1990. ISBN0-201-12110-7

Hearn & Baker, Computer Graphics, Prentice Hall 1986 ISBN 0-13-165598-1

 

REASONS FOR INCLUDING THIS MODULE

SEMESTER TO BE FIRST OFFERED Spring 95 - Semester 5

 

 

 

MODULE TITLE Concurrent Systems 1

 

MODULE CODE CS4215

 

CREDITS 3

 

GRADING TYPE M (20%)

 

PREREQUISITE MODULES CS4213 Operating Systems

 

AIMS and OBJECTIVES

 

The aim of this module is to provide students with an integrated view of modern software systems. The module views concurrency from a systems viewpoint and does not attempt to cover the formal theory of concurrency. In this module we introduce students to the issues and software technologies involved in the design and implementation of concurrent systems.

 

SYLLABUS

 

Requirements for Concurrent/Distributed Systems.

Review of the Process abstraction and the description of a concurrent system as a set of interacting processes.

Processes with separate address space.

Processes which share an address space.

Threads/Lightweight Processes.

Hardware support for concurrency. Multiprocessor systems.

High level language support for concurrency.

Process synchconisation and mutual exclusion.

IPC mechanisms in a system with shared memory:

Event wait and signal, semaphores, eventcounts and sequencers,

monitors.

IPC mechanisms in a system without shared memory:

Unix pipes, asynchronous and synchronous message passing.

Implementation of multi-threaded servers.

Students will be expected to undertake a significant concurrent programming project in a high level language ( SR, Pascal-FC ).

 

PRIME TEXT

 

Bacon Jean. Concurrent Systems: An integrated approach to operating systems, database, and distributed systems. Addison Wesley 1993.

ISBN 0-201-41677-8

 

OTHER RELEVANT TEXTS

 

Burns A. and Davies G. Concurrent Programming. Addison Wesley 1993.

 

REASON FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED Autumn 94 - Semester 5

 

 

MODULE TITLE: Artificial Intelligence

 

MODULE CODE: CS4816

 

CREDITS: 3

 

GRADING TYPE: Normal

 

PREREQUISITE MODULES: CS4115 Data Structures and Algorithms

MA4403 Computer Mathematics 3

AIMS AND OBJECTIVES:

 

To familiarise students with the principles of Artificial Intelligence.

To introduce them to symbolic programming techniques

 

 

SYLLABUS:

General Outline of AI including history

 

Search Strategies

 

Game Playing

 

Knowledge Representation

 

Expert Systems

 

Natural Language Processing

 

Machine Learning

 

Connectionism

 

PRIME TEXTS:

 

Bratko, I. (1990). Prolog programming for Artificial Intelligence, Second Edition. Wokingham, UK: Addison-Wesley.

Rich, E. and Knight, K. (1991). Artificial Inteligence, Second Edition. London, UK: McGraw-Hill.

 

OTHER TEXTS:

 

Allen, J. (1987). Natural Language Understanding. Wokingham, UK: Benjamin Cummings. UK

Gazdar, G. and Mellish, C. (1989). Natural Language Processing in Prolog. Addison-Wesley.

McClelland, J.L. and Rumelhart, D.E. (Eds) (1986). Parallel Distributed Processing: Explorations in the microstructure of cognition: Volume II: Psychological and biological models. MIT Press.

McClelland, J.L. and Rumelhart, D.E. (1988). Explorations in Parallel Distributed Processing: A handbook of models, programs and exercises. Cambridge, MA: MIT Press.

Partridge, D. (1991). A New Guide to Artificial Intelligence. Norwood, NJ: Ablex Publishing Corporation.

 

 

REASONS FOR INCLUDING THIS MODULE:

 

To give students a critical introduction to this area

To encourage interest in intellectual debate

To allow practice in the formation and analysis of arguments

 

SEMESTER FIRST OFFERED: Spring 95 - Semester 6

 

 

 

MODULE TITLE Database Systems

MODULE CODE CS4416

CREDITS 3

GRADING TYPE Normal

PREREQUISITE MODULE CS4413 System Development

CS4213 Operating Systems

AIMS and OBJECTIVES

Large scale data management is a critical activity within modern organisations. The goal of this course is to explain the relevance and explore the fundamental principles of database technology. The ubiquitious application of the relational model encourages it's adoptation as the principal focus for the course.

SYLLABUS

Introduction

o justification and objectives

o persistent data storage techniques (brief review)

o database management systems

o database models (overview)

Relational Model

o theory of relational database management systems (RDBMS)

o relations and functional dependency

o relational operations

o RDB design methods, particularly normalisation

RDB Languages

o algebraic

o calculus-based including SQL and PROLOG

o QBE systems

o data definition mechanisims

o data manipulation techniques

RDB Extensions and Development

Query Optimization Techniques and Strategies

Database Concurrency Issues

o transactions, locking protocols and serializability

o recovery

DBMS Technology Development (overview)

o distributed systems

o objected-oriented

o knowledge-bases and expert systems

 

PRIME TEXT(S)

 

Elmasri, R and Navathe, S (1989) Fundamentals of Database Systems. Addison-Wesley

Date, C.J. (1990) An Introduction to Database Systems - Volume 1 (5th ed.). Addison-Wesley.

Maier, D. (1988) The Theory of Relational Databases

 

REASONS FOR INCLUDING THIS MODULE

The design and implementation of effective, effieient and reliable database systems is crucial to the effective use of computers in the modern industrial world.

 

SEMESTER TO BE FIRST OFFERED Spring 95 - Semester 6

 

 

MODULE TITLE Human-Computer Interaction

MODULE CODE CS4826

 

CREDITS 3

 

GRADING TYPE N

 

PREREQUISITE MODULES

 

AIMS and OBJECTIVES

 

The objective of this course is to develop an understanding of the issues involved in the area of human-computer interaction. Issues surrounding how we design "user-friendly" systems become increasingly important as computer controlled systems play a greater role in our everyday lives.

The course will provide anoverview of traditional approaches to the field, as well as exploring

such basic questions as:

How can you design a good interface ?

How can you evaluate an interface?

What exactly is the "interface" anyway?

Who is"the user"?

Is there a difference between user-centered and user-involved design?

 

SYLLABUS

 

The nature of design and use. Analysis of everday objects.

Pioneers in the field of human-computer interaction - Bush, Licklider, Engelbart, Nelson, Kay.

Early work on human factors and "man-machine communication".

How to interact with machines - from command languages to direct manipulation.

Cognitive ergonomics. Issues of the user and usability engineering.

The role of user testing and evaluations.

Scandinavian experiences.

The relation between design practice and disciplinary theory.

Future developments - artifical intelligence, multimedia, virtual reality,

Ubiquitous computing- tabs,pens,tablets badges, and liveboards,

Computer-supported collaborative work.

Human Factors in the systems design process.

 

PRIME TEXT

 

OTHER RELEVANT TEXTS

 

Booth, P. (1989) An Introduction to Human-Computer Interaction. New Jersey: Erlbaum.

Baecker, R.M. & Buxton, W. (Eds.) (1987) Readings in Human-Computer Interaction: A Multidisciplinary Approach. Los Altos, CA: Morgan Kaufmann.

Carroll, J. (Ed.) (1991) Psychological Theory at the Human Computer Interface. Cambridge Univ. Press.

Goldberg, A. (ed.) (1989) History of Personal Workstations. ACM Press, 1989.

 

 

Greenbaum, J. & Kyng, M. (Eds.) (1991) Design at Work. Lawrence Erlbaum Associates.

Greenberg, S. (Ed.) (1991) Computer-supported Cooperative Work and Groupware. London: Acad.Press.

M. Helander, (Ed.) (1989) Handbook of Human-Computer Interaction Amsterdam: North-Holland.

Norman, D.A. (1988) The Psychology of Everyday Things. New York: Basic Books.

Norman, D.A. & Draper, S.W. (Eds.) User Centered System Design: New

Perspectives on Human-Computer Interaction, pp. 319-337.)

Pylyshyn, Z. & Bannon, L. (Eds.) (1989) Perspectives on the Computer Revolution (2nd rev. ed.) Norwood, NJ: Ablex.

Shneiderman B. (1992). Designing the User Interface: Reading, Mass.: Addison-Wesley.

 

REASON FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED Spring 95 (or earlier) Semester 6

 

 

MODULE TITLE Concurrent Systems 2

 

MODULE CODE CS4216

 

CREDITS 3

 

GRADING TYPE M (80%)

 

PREREQUISITE MODULES DP4215 - Concurrent Systems 1

 

AIMS and OBJECTIVES

 

The aim of this module is to provide students with an integrated view of modern software systems. The module views concurrency from a systems viewpoint and does not attempt to cover the formal theory of concurrency. In this module we concentrate on the issues involved in distributed environments.

 

SYLLABUS

 

Architectural models and design issues for distributed systems.

Naming, location and binding in a distributed system.

IPC in a distributed system:

Distributed message passing, Remote procedure call.

Resource allocation and deadlock.

Security and authentication, Kerberos.

Concept of an atomic transaction and a transaction as a composite

atomic action.

A system model for transaction processing, ordering of operations, aborts and recovery.

Concurrency control in transactions through locking and time-stamping. Recovery from partially completed transactions.

Distributed transactions.

The course will include a comparative study of two modern microkernel based distributed operating systems (Mach, Amoeba).

Students will be expected to undertake a significant distributed programming project in a high level language.

 

 

PRIME TEXT

 

Bacon, Jean, Concurrent Systems: An integrated approach to operating systems, database, and distributed systems. Addison Wesley 1993. ISBN 0-201-41677-8

 

OTHER RELEVANT TEXTS

 

Coulouris, G and Dollimore, J. Distributed Systems: Concepts and design. Addison Wesley 1988. ISBN 0-201-18059-6. Tanenbaum A. Modern Operating Systems. Prentice-Hall 1992. ISBN 0-13-595752-4.

 

REASON FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED Spring 95 - Semester 6

 

 

MODULE TITLE Computer Systems Project 1/2

 

MODULE CODE CS4617/CS4618

 

CREDITS

 

GRADING TYPE M

 

PREREQUISITE MODULE

 

AIMS AND OBJECTIVES

 

Students undertake a substantial individual project which integrates and applies their previous learning and deepens their knowledge of some particular application or research area relevant to the course.

 

SYLLABUS

 

The project takes two semesters. The activities associated with the project include, but are not restricted to, the following:
Literature review

Requirements analysis

Software Engineering

Advanced programming techniques

Project planning

Report writing

Formal and informal presentation techniques

 

RELEVANT TEXT

 

There is no prime text, but various software manuals, research papers and previous project reports, as well as relevant texbooks, will be used.

 

REASONS FOR INCLUDING THIS MODULE:

SEMESTER TO BE FIRST OFFERED:

 

 

 

MODULE TITLE Information Technology in Business

 

MODULE CODE CS4817

 

CREDITS 2

 

GRADING TYPE Normal

 

PREREQUISITE MODULES None

 

AIMS AND OBJECTIVES

 

To familiarise the students with:

* Management and business opportunities which can be gained by using Information Technology;

* The role of Information Systems in Business.

To provide practice in written and verbal communication.

 

SYLLABUS

 

Strategic planning of Information Technology:

Overview of planning in Business;

Importance of IT planning;

Identifying opportunities for IT;

Developing IT strageties;

Information Systems:

Transaction processing systems;

Management information systems;

Decision Support systems;

Gaining competitive advantage, developing new business through IS/IT;

Improving productivity and performance using IS/IT;

Managing and organising the introduction of technology:

Examples: Communications, EDI, Robotics;

Standardisation;

Case Studies of IS/IT Applications.

 

PRIME TEXT

 

I.T. Strategy for Business, Peppard, Joe (editor), Pitman Publishing, 1993

 

OTHER RELEVANT TEXTS

 

Computers and Society, IMPACT!, Arnold, David O., McGraw-Hill, 1991

 

Computers and Information Systems, O'Leary, T.J., Williams, Brian K., Benjamin/Cummings, 1989

 

REASONS FOR INCLUDING THIS MODULE

 

To give students an insight into how Information Systems and Information Technology can be used in business.

 

SEMESTER TO BE FIRST OFFERED Autumn, 1994 - Semester 7.

 

 

MODULE NAME: Software Engineering 4

 

MODULE CODE CS4317

 

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE MODULES CS4113 Object-Oriented Programming,

MA4403 Computer Mathematics 3

 

AIMS and OBJECTIVES

 

SYLLABUS

 

Recursively defined sets

Functions over Recursively Defined Sets

Proofs by Structural Induction

Grammars as Recursively Defined Sets

Syntax and Semantics of Propositional Logic

Syntax and Semantics of Predicate Logic

Propositional Calculi

Lambda Expressions and the Lambda Calculus

Predicate Calculi

Soundness and Completeness Issues

Non Standard Logics

Operational Semantics of Simple Programming Languages

Introduction to Program Proof Techniques

 

 

PRIME TEXT

 

Loeckx J and K Sieber. The Foundations of Program Verification Wiley-Teubrer 1987.

 

OTHER RELEVANT TEXTS

 

Allison Lloyd. A practical introduction to denotational semantics. Cambridge University Press 1987.

Peyton-Jones S. The Implementation of Functional Programming Languages. Prentice Hall 1987.

 

REASON FOR INCLUDING THIS MODULE

It serves as a base for learning and applying formal reasoning techniques and proof techniques.

 

SEMESTER TO BE FIRST OFFERED Autumn 94 - Semester 7

 

 

 

MODULE TITLE: Systems Analysis

 

MODULE CODE: CS4417

 

CREDITS: 3

 

GRADING TYPE: Normal

 

PREREQUISITE MODULE: CS4413 System Development

AIMS AND OBJECTIVES:

To equip the students with the knowledge and techniques required to

plan and control the development phases of the information systems life cycle

evaluate alternative implementation strategies

present their findings and recommendations to management.

 

SYLLABUS:

System Life Cycle

The Classical Life Cycle

Waterfall model

Spiral Model

Alternative Strategies

Prototyping and Fourth Generation Languages

System Development Methods

Structured Analysis and Design

SSADM

Jackson System Development

Object-Oriented Methods

Other Methods

Requirements Analysis

System Investigation

Analysis

Specifications

Requirements Elicitation

JAD

Computer Aided Software Engineering

Data Dictionary/Repository

Support Tools

Analysis Tools

Design Tools

Testing

Levels of Testing

Verification and Validation

White Box Testing

Black Box Testing

Testing Tools

Project Management

Project Planning

Pert, Gantt Charts

Estimation of Resources

Quality Metrics

 

 

PRIME TEXT:

Pressman. Software Engineering - A Practioners Approach, 3rd ed. 1992, McGraw-Hill

 

OTHER TEXTS:

BROOKES C H et al Information Systems Design Prentice Hall l982

JACKSON M, System Design Prentice-Hall 1984

SUTCLIFFE A, JSD Prentice-Hall 1988

 

SEMESTER FIRST OFFERED: Autumn 94 - Semester 7

 

 

 

MODULE TITLE: Introduction to Computational Linguistics

 

MODULE IDENTIFICATION: CS4847

 

PREREQUISITE MODULES: Artificial Intelligence and Prolog

 

AIMS AND OBJECTIVES:

 

To introduce the student to the fundamental concepts of computational linguistics. Use is made of Irish language structures in applying the concepts.

 

SYLLABUS:

 

Introduction to

morphology, phonology, grammar;

lexical analysis and lexicons, parsing, semantics;

machine tgranslation.

 

 

PRIME TEXTS:

 

Gazdar, G. and Mellish, C. "Natural Language Processing", Addison-Wesley, 1989.

Gal, A., Lapalme, G., Saint-Dizier, P., Somers, H., "Prolog for Natural Language Processing.". Wiley. 1991.

 

OTHER RELEVANT TEXTS:

 

"Gramadach Na Gaelige Agus Litriú Na Gaelige", Oifig An tSoláthair, BÁC 1968.

Beardon, C., Lumsden, D., Holmes, G., "Natural Language and Computational Linguistics an introduction." Ellis Horwood Books Series in Computers and Their Applications, 1991.

Bratko, I., "Prolog - programming for artificial intelligence" Addison Wesley, 1990

Clocksin, W.F., Mellish, C.S., "Programming In Prolog" Springer-Verlag, 1981.

Lloyd, J.W., "Foundations of Logic Programming". Springer-Verlag, 1984.

Thayse, A. (Ed.) "From Natural Language Processing to Logic For Expert Systems" Wiley, 1990.

Thayse, A. (Ed.) "From Standard Logic to Logic Programming", John Wiley and Sons, 1988.

The Christian Brothers, "ANew Irish Grammar", Fallon.

 

 

 

MODULE TITLE Acquisition of Computing Resources

MODULE CODE CS4857

 

CREDITS

 

GRADING TYPE Normal

 

PREREQUISITE MODULES

 

AIMS AND OBJECTIVES

 

To familiarize the student with the legal, technical, financial, and commercial aspects associated with the selection and acquisition of computer resources such as: Manpower, Machines, Materials, Software, Services and various common combinations of the above that are on offer or are likely to be on offer in Ireland.

 

SYLLABUS

 

Legislation concerning employment contracts and sale of goods

Methods of Financing - Buy, Lease, Rent;

Hire-Purchaes;

Factors involved in hardware selection;

Factors involved in software sleection

Types of materials and services available

Methods of estimating system performance;

'Life-Cycle' evaluation of computer systems;

Personnel recruitment procedures

Investment appraisal techniques.

 

PRIME TEXT

 

Specimen Contracts and Licence Agreements (In Library)

 

Computer Contracts, Morgan R., Stedman G., 2nd ed., Oyez Loughman, 1984.

 

 

 

MODULE TITLE Simulation and Operations Research

MODULE CODE CS4827

 

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE MODULES MA4403 Computer Mathematics 3

 

AIMS AND OBJECTIVES

 

To familiarise the students with some of the current use of simulation, and equip them with the skills to develop simulation models.

 

SYLLABUS

 

Use of simulation models;

Simulation methodology;

Markov chains;

Queueing Theory;

Inventory Theory;

Game Theory;

Generation and testing of random numbers;

Collection and analysis of input data;

Verification and validation of simulation models;

Simulation language programming;

Design of simulation experiments;

Analysis of output data.

 

PRIME TEXT

 

Introduction to Stochastic Models in Operations Research, Hillier, F.S., Lieberman G.J., McGrawHill, 1990

 

OTHER RELEVANT TEXTS

 

Discrete Event System Simulation, Banks, J., Carson, J.S., Prentice-Hall, 1992

 

REASONS FOR INCLUDING THIS MODULE

 

To give students an insight into how simulation models can be effectively applied to real-life situations.

 

SEMESTER TO BE FIRST OFFERED Autumn, 1996 (or earlier) - Semester 7.

 

 

MODULE TITLE: Professional Issues in Software Engineering

 

MODULE CODE: CS4818

 

CREDITS: 2

 

GRADING TYPE: Normal

 

PREREQUISITE MODULES: CS4817 Information Technology in Business

AIMS AND OBJECTIVES:

 

To make the students aware of, and sensitive to, the wider impact of their professional activities

 

SYLLABUS:

 

Software Contracts

Intellectual Property Rights

Employee relations in the software industry

Product Liability

Computer Crime

Professional Codes of Conduct - ACM/BCS

Social impacts of IT

Case Studies

 

PRIME TEXT:

Professional Issues in Software Engineering - 1993 Pitman Publishing, ISBN 0273032585

 

OTHER TEXTS:

Teich - Technology and Man's Future - St Martin's Press - 1981

Forrester T (ed) - The Information Technology Revolution - Blackwell - 1985

Papers from professional journals

 

REASONS FOR INCLUDING THIS MODULE:

Required by professional institutes.

 

SEMESTER FIRST OFFERED: Spring 95 - Semester 8

 

MODULE TITLE Software Engineering 5

 

MODULE CODE CS4318

 

CREDITS 3

 

GRADING TYPE N

 

PREREQUISITE MODULES CS4317 Software Engineering 4

 

AIMS and OBJECTIVES

 

To provide an understanding of the processes and techniques used

to develop and maintain quality software.

 

SYLLABUS

Software Quality Assurance -- Benefits, needs and goals of SQA. Launching

a SQA program. SQA tasks. The SQA organization. Software standards.

Software Inspections. Software Inspection costs.

 

Approaches to Testing -- Testing Principles, Types of Software Tests. Test

Planning, Test Development, Test Execution and Reporting, Structural

Testing, Real-time Testing, Program Verification.

 

Computer Aided Software Testing -- Benefits of CAST, Functionality of CAST

tools -- Capture Playback, Comparator, Input Generator, Static Analysis,

Simulation, Test Harnessing, Test Coverage, Debuging Tools, Test

Databases, Test Management.

 

Software Maintenance -- Program Evolution, Maintenance Costs, Maintenance

Cost Estimation, Re-engineering, Restructuring, Integrated Maintenance

Project Support Environments, Maintenence Repositories, Fine-Structured

Object Management Systems.

 

Quality Metrics -- Measurement Theory, Applications of Measurement in

Software Engineering, Measuring Internal Product Attributes, Complexity

measures, Control-flow and Data-flow Measures, Information-flow measures,

Software Metrication Tools. Selection of quality criteria and procedures

appropriate to an environment.

 

Software Process Modelling -- The Software Process Maturity Model, ISO

certification, Levels of Software Process Models, Task based models,

Entity based models, Establishing and Using a Process Definition, State,

Organizational and Control Views of Process Models.

 

PRIME TEXT

< none at present >

 

 

OTHER RELEVANT TEXTS

 

Managing the Software Process -- W.S. Humphrey.

Software Engineering -- I. Somerville.

IEEE tutorial : Software Management -- D.J. Reifer.

Research Literature.

 

REASON FOR INCLUDING THIS MODULE

 

 

SEMESTER TO BE FIRST OFFERED Spring 1995 - Semester 8

 

 

MODULE TITLE Telecom Networks Architectures

MODULE CODE CS4218

 

CREDITS 3

 

GRADING TYPE Normal

 

PREREQUISITE CS4225 Computer Networks, CS4215 Concurrent Systems 1

 

AIMS AND OBJECTIVES

 

To set out the structure of current public Telecom networks in terms of Transmission, switching and signalling elements

To highlight the forces which are causing rapid evolution of public Telecom Networks and to describe the technology associated with new directions of evolution.

 

SYLLABUS

 

The requirements to support speech traffic, Digital Switching Principles, PCM Trunks, The PDH, Cross Connects, Provision of leased lines, Signalling CCSS7, management in PDH systems. Properties of transmission systems, echo cancelling, Fibre, Coax and micro-wave systems.

 

Packet Switching X.25, ISDN principles, LAPD protocol, Frame Relay, Asynchronous Transfer Mode switching and multiplexing. Virtual channels, Virtual Paths, The SDH architecture. User network interfaces for B-ISDN, MANS MAC DQDB, ATM over SDH.

 

Intelligent Networking principles. Management of Telecom Networks, Operations Centres, TMN architecture Mobile Communications, VLR,HLR, MSCs.

 

PRIME TEXT

 

ISDN and Broadband ISDN, William Stallings (2nd edition) Macmillan ISBN 0-02-415475-X (1992)

 

OTHER RELEVANT TEXTS

 

Transmission Netwroking: SONET and the Digital Synchronous Hierarchy, Sexton & Reid (1992) Artech House, ISBN 0-89006-551-9

 

ISDN The Integrated Services Digital Network. Peter Bocker, Springer Verlag, ISBN 0-387-17446-X

 

Telecommunication Networks and Services. van Duren, Kastelein, Schoute, Addison Wesley, 1992, ISBN 0-201-56542-0

 

REASONS FOR INCLUDING THIS MODULE

 

To comply with the BSc Syllabus

 

SEMESTER TO BE FIRST OFFERED Spring 1998 - Semester 8

 

 

MODULE TITLE: Computer Integrated Manufacturing

 

MODULE CODE: CS4828

 

CREDITS 3

 

GRADING TYPE N

 

PREREQUISITE MODULE

 

AIMS AND OBJECTIVES:

 

To provide a comprehensive knowledge and understanding of the role of information systems and information technology in manufacturing.

To explore the manufacturing environment, its concepts, terminology, system requirements and problems. The approach will be to study Computer Integrated Manufacturing from the point of view of the system developer.

 

SYLLABUS:

 

Concepts and terminology of materials and manufacturing

Entities and Relationships in manufacturing

The manufacturing database

Data reference models ; CIM-OSA

File integrity and other pre-requisites of mrp

The mechanics of mrp

Transactions in an mrp system

The role of the materials planner

mrp versus Order Point systems

Frequency of mrp processing

Integrated Manufacturing Information Systems: Closed Loop MRP

Demand Management: Forecasting and Master Scheduling

The role of the master scheduler

Capacity Planning: Aggregate level and CRP ; Capacity Control

Priority Control in the work-centre

The OPT approach and the OPT model

Just In Time systems

The KANBAN philosophy

Computer Integrated Manufacturing principles

CAD/CAM and FMS

Automated Storage and Retrieval of materials

Factory networks

OSI and Manufacturing Automation Protocol

 

PRIME TEXT:

Browne, Harhen and Shivnan, Production Management Systems - A CIM Perspective, Addison Wesley

 

 

OTHER RELEVANT TEXTS:

 

Material Requirements Planning, Joe Orlicky

Development of Computerbased Production Systems, A.K. Kochhar

Manufacturing Information Systems, L. Sartori.

Production and Inventory Management, Fogarty and Hoffman

APICS Dictionary, Cox et al.

 

REASONS FOR INCLUDING THIS MODULE:

 

SEMESTER FIRST OFFERED Spring 95 - Semester 8

 

 

MODULE TITLE Advanced Database Systems

MODULE CODE CS4418

CREDITS 3

GRADING TYPE Normal

PREREQUISITE MODULE CS4416 Database Systems

AIMS and OBJECTIVES

The goal of this course is to provide the student with a knowledge of the wider aspects of database technology. The material presented looks at the more technical issues of database management systems and the emereging strategies applied to their implementation.

SYLLABUS

Database Architectures

o conventional data structures and languages

o object-oriented

o knowledge bases and expert systems

o managing graphical, statistical and other (e.g. CAD) data types

Data Characteristics

o conventional (passive) datastores

o active databases and trigger technology

o deductive databases, knowledge representation and acquisition

Security and Integrity

o domain, relation and referential constraints

o state and transition constraints

o access control and administration

Data Distribution Issues

o data placement strategies

o updating, concurrency and recovery problems

o homogenous and hetergenous environments

o querying and performance appraisal

Database Computers

o limitations of conventional computer configurations in database environments

o hardware and software approches for resolving limitation problems

o database machine classification

PRIME TEXT(S)

 

Gray, P. (1984) Logic, Algebra and Databases. Ellis Horwood

Bell, D. and Grimson, J. (1992) Distributed Database Systems Addison-Wesley.

Ullman, J. (1989) Principles of Database and Knowledge-Base Systems Vols. 1 and 2 Computer Science Press

Su, S. (1988) Database Computers McGraw-Hill

 

REASONS FOR INCLUDING THIS MODULE

 

SEMESTER TO BE FIRST OFFERED

 

 

 

 

12. APPENDIX A - CURRICULUM VITAES