SYSTEMS AND DATABASE DESIGN
<< Back to Course List
Systems Analysis Fundamentals
Course Code: |
SADD08E |
Duration: |
4 hours |
Prerequisites: |
An understanding of the role of analysts, designers, and developers; an understanding of the steps in the software development life cycle |
Course Aim: |
To introduce the concept of systems analysis |
Learning Objectives: |
After this course the student should be able to:
1. outline the role of systems analysis in application development
2. identify the techniques used by the systems analyst
3. define processes and entity types |
Data Flow Diagrams
Course Code: |
SADD04E |
Duration: |
3 hours |
Prerequisites: |
Completion of the courses Software Engineering: Personal Software Process I, and Software Engineering: Personal Software Process II |
Course Aim: |
To describe the theory and use of data flow diagrams in the context of a software development project |
Learning Objectives: |
After this course the student should be able to:
1. explain the theory of data flow diagrams
2. explain the symbols used in data flow diagrams
3. explain the use of data flow diagrams in a software development project
4. construct a context-level data flow diagram
5. construct a leveled data flow diagram |
Entity Relationship Diagrams
Course Code: |
SADD05E |
Duration: |
5 hours |
Prerequisites: |
An understanding of relational database theory and of the role of analysts, designers, and database administrators |
Course Aim: |
To describe the technique of entity relationship diagramming |
Learning Objectives: |
After this course the student should be able to:
1. describe the typical stages in database modeling and design
2. perform entity relationship analysis
3. identify primary and foreign keys |
Data Dictionaries
Course Code: |
SADD07E |
Duration: |
3 hours |
Prerequisites: |
An understanding of the principles of software engineering and software design; an understanding of the role of analysts, designers, and programmers; and an understanding of the importance of the concepts of completeness and correctness in software development, in particular in analysis and design |
Course Aim: |
To give students a complete understanding of the construction and validation of a data dictionary |
Learning Objectives: |
After this course the student should be able to:
1. describe the construction and use of a data dictionary
2. explain the role of a data dictionary in the software engineering process
3. understand the role of validation in the construction and use of data dictionaries
4. explain the different data dictionary entries for different entities |
Completing the Logical Model
Course Code: |
SADD06E |
Duration: |
3 hours |
Prerequisites: |
An understanding of the principles of software engineering and design; an understanding of the role of analysts, designers, and programmers; and an understanding of the importance of the concepts of completeness and correctness in software development, in particular in analysis and design |
Course Aim: |
To provide an understanding of the entity life history as a software engineering tool and of its place in the software development life cycle |
Learning Objectives: |
After this course the student should be able to:
1. explain an entity life history
2. describe the impact of an entity life history in the software development life cycle
3. show how to use a process entity matrix in a software development life cycle |
Relational Principles
Course Code: |
WDBREL |
Duration: |
12 hours |
Prerequisites: |
Some familiarity with databases |
Course Aim: |
To give the student a sound appreciation of the relational model and the principles on which it is based |
Learning Objectives: |
After this course the student should be able to:
1. contrast relational databases with those based on the hierarchical and network models, pointing out the advantages of the relational model
2. evaluate a DBMS in terms of its relationality (as defined by Codd's rules) and its functionality
3. use the criteria of uniqueness and minimality to identify suitable candidate keys in relational tables and use these to select a primary key
4. state the referential and entity-integrity rules, identify when they are breached, and relate integrity rules to requirements of the real world
5. identify traditional set and special relational operators and demonstrate their usefulness |
Database Fundamentals
Course Code: |
WDBFUN |
Duration: |
6 hours |
Prerequisites: |
A basic understanding of computers would be an advantage |
Course Aim: |
To introduce students to the database approach and enable them to make an informed decision about purchasing a database management system |
Learning Objectives: |
After this course the student should be able to:
1. evaluate the advantages of a the computer database's file-based system of information storage
2. outline the four components of a DBMS, describe its three-level architecture, list its functions, and explain its relationship to the operating system and application programs
3. distinguish three major information systems supported by a DBMS and list the services offered by a database |
Fundamentals of Database Design
Course Code: |
SADD02E |
Duration: |
4 hours |
Prerequisites: |
Completion of the courses Relational Principles and Database Fundamentals |
Course Aim: |
To describe the typical database design processes and explain ERDs as a technique for data modeling |
Learning Objectives: |
After this course the student should be able to:
1. explain the stages of database design
2. understand database design in the context of a typical software development life cycle
3. identify user data requirements
4. construct a data model using entity relationship diagrams |
Normalization and Physical Database Design
Course Code: |
SADD03E |
Duration: |
4 hours |
Prerequisites: |
The courses Relational Principles and Database Fundamentals |
Course Aim: |
To describe the process of relational database design using appropriate modeling tools and techniques |
Learning Objectives: |
After this course the student should be able to:
1. use primary and foreign keys
2. explain the different types of data integrity
3. normalize entities to the appropriate level
4. understand the issues of physical database design and database optimization |
Database Management
Course Code: |
WDBMAN |
Duration: |
3 hours |
Prerequisites: |
Ability to use SQL, or the course SQL Programming |
Course Aim: |
To enable the student to manage a relational database |
Learning Objectives: |
After this course the student should be able to:
1. classify users into the privilege levels specified by SQL, create users with access to the database and GRANT and REVOKE privileges
2. describe the functions of data dictionaries, views, audit trails, and transaction logs as security mechanisms
3. distinguish between referential and entity integrity, and state whether particular operations contravene integrity rules
4. identify and create primary keys, identify foreign keys, and create an index for a table
5. recognize a trigger and describe its operation
6. identify three concurrency problems that may arise in relational systems and suggest locking solutions that avoid deadlocking
7. distinguish between media and system failures, explain the consequences of transaction failure, and outline the key elements in transaction recovery
8. explain the storage structures used at the internal level and relate space allocation to database performance
9. discuss data clustering and indexing
10. relate storage methods to access |
Web and Database Integration
Course Code: |
SADD01E |
Duration: |
4 hours |
Prerequisites: |
A working knowledge of database and Internet concepts is assumed; the courses Relational Principles, Database Fundamentals, Database Design, and Database Management, while not essential, would be beneficial |
Course Aim: |
To introduce the technologies used to build and deploy web databases |
Learning Objectives: |
After this course the student should be able to:
1. describe the technologies used to build and deploy databases
2. recognize and interpret simple SQL statements
3. outline the technologies involved in creating web database applications
4. identify the security risks of connecting databases to the Web and identify the security measures that can be taken to overcome them
5. describe how to incorporate legacy databases with the Internet |
Database Technologies - Object-Relational DBMSs: Characteristics
Course Code: |
ODB101E |
Duration: |
4 hours |
Prerequisites: |
A knowledge of both RDBMS and OODBMS |
Course Aim: |
To introduce the concept of object-relational DBMSs |
Learning Objectives: |
After this course the student should be able to:
1. describe object-relational databases, and how they differ from relational and object-oriented DBMSs
2. explain how an ORDBMS can be used to solve problems associated with complex data
3. explain the use of base datatype extensions and user-defined functions and operators
4. discuss the role of complex objects and how to manipulate composite datatypes
5. explain the concept of data inheritance in an ORDBMS |
Database Technologies - Object-Relational DBMSs: Mechanisms and Implementation
Course Code: |
ODB102E |
Duration: |
4 hours |
Prerequisites: |
A knowledge of both RDBMS and OODBMS |
Course Aim: |
To discuss the mechanisms and implementation of an ORDBMS |
Learning Objectives: |
After this course the student should be able to:
1. describe relational and user-defined optimizers, predicate clauses and expensive functions, indexing, sets, and inheritance hierarchies
2. describe object-relational parsing
3. explain how to modify an executor and a query |
Database Technologies - Data Warehousing: Fundamentals
Course Code: |
DW0001E |
Duration: |
3 hours |
Prerequisites: |
A general knowledge of IT and databases |
Course Aim: |
To introduce the fundamentals of data warehousing |
Learning Objectives: |
After this course the student should be able to:
1. explain what data warehousing is and where it fits into a company's information processing setup
2. describe the history of information systems
3. discuss examples of situations where data warehousing has been used effectively
4. explain some of the terms used in data warehousing
5. describe a typical data warehouse setup and the types of systems that data warehouses exist on |
Database Technologies - Data Warehousing: Building, Using, and Managing
Course Code: |
DW0002E |
Duration: |
4 hours |
Prerequisites: |
A general knowledge of IT and databases |
Course Aim: |
To discuss how a data warehouse is built, used, and managed |
Learning Objectives: |
After this course the student should be able to:
1. describe how to plan the structure and content of a data warehouse
2. explain how to populate the warehouse with data
3. describe how to allocate user access, update the warehouse, and mine data |
SQL Programming: Database Queries
Course Code: |
SQLPDQ |
Duration: |
4 hours |
Prerequisites: |
The course Relational Principles, though not a strict prerequisite, would be beneficial; programming experience is not absolutely necessary |
Course Aim: |
To demonstrate the use of SQL in data retrieval |
Learning Objectives: |
After this course the student should be able to:
1. categorize SQL into three component languages and indicate the functions of each
2. use the SELECT command to retrieve data
3. use the built-in functions available in SQL to refine database queries |
SQL Programming: Data Handling Techniques
Course Code: |
SQLPDHT |
Duration: |
4 hours |
Prerequisites: |
The courses SQL Programming: Database Queries and Relational Principles; programming experience is not absolutely necessary |
Course Aim: |
To demonstrate the use of SQL in defining database structures and controlling data security |
Learning Objectives: |
After this course the student should be able to:
1. describe and use the data manipulation commands INSERT, UPDATE, and DELETE
2. describe how to embed SQL in a C routine using the EXEC SQL command
3. use data definition commands to create, manipulate, and remove base tables, indexes, and views |
<< Back to Course List