Module 19324.2 (2006)
Syllabus page 2006/2007
06-19324
Fundamentals of Computer Science 2
Level 4/M C
Unknown/Left:5
John Barnden
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus
The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)
Relevant Links
The ISE Web Page has more
information, including all overheads, handouts and further links,
relevant to the Software Engineering part of the module. For the
Databases part:
Databases: Essential Additional Information
Local
Postgresql documentation
Postgresql reference manual
Outline
The module will explore some of the fundamentals of computer science. Topics will include: the software lifecycle, stages of the lifecycle, case studies; relational theory, relational algebra, query languages, data design. The necessary mathematical background will be developed alongside its application in databases. Students will be introduced to an existing database system.
Aims
The aims of this module are to:
- introduce some basic software engineering issues, including requirements definition, design, implementation and testing
- develop an appreciation of the difference between good and bad software design
- introduce the fundamentals of database theory
- introduce the core of the SQL query language
- enable students to design a database
Learning Outcomes
| On successful completion of this module, the student should be able to: | Assessed by: | |
| 1 | explain and discuss the nature of software engineering | Examination |
| 2 | explain the concept of the software lifecycle and its limitations | Examination |
| 3 | demonstrate knowledge and understanding of relevant concepts for each of the three main stages of the software life-cycle (requirements definition, design, implementation) | Examination |
| 4 | explain and discuss appropriate design methodologies for a given problem | Examination |
| 5 | describe and explain the application of software engineering approaches in practice | Examination |
| 6 | use SQL to express database queries | Examination, Continuous assessment |
| 7 | apply concepts from relational theory to describe databases, queries, and consistency conditions | Examination, Continuous assessment |
| 8 | analyse a real-world scenario and perform a conceptual database design for it | Examination, Continuous assessment |
| 9 | take a conceptual data design model and translate it into the relational model | Examination, Continuous assessment |
| 10 | use an existing database system | Examination, Continuous assessment |
Restrictions, Prerequisites and Corequisites
Restrictions:
None
Prerequisites:
None
Co-requisites:
None
Teaching
Teaching Methods:
4 hrs of lectures/tutorials per week
Contact Hours:
Assessment
- Sessional: 3 hr examination (90%), continuous assessment (10%).
- Supplementary (where allowed): By examination only.
Recommended Books
| Title | Author(s) | Publisher, Date |
| Software Engineering (6th ed) | I Sommerville | Addison Wesley, 2001 |
| Database Systems: Design, Implementation and Management (7th ed) | P. Rob & C. Coronel | Thomson Learning, 2007 |
| Database Systems : a practical approach to design, implementation and management (3rd ed.) | Th. M. Connolly | Addison Wesley, 2002 |
| Database Management Systems (2nd edition) | R. Ramakrishnan & J. Gehrke | McGraw Hill, 2000 |
Detailed Syllabus
-
Software Engineering
- Definition of Software Engineering; the Software Lifecycle
- Requirements Definition
- Software Design and Design Methodologies
- Implementation and Testing
- Verification/Validation
- Documentation
- Management
- Databases
- Tables and SQL: using the existing relational database implementation, simple select queries, nested queries, aggregate functions, the group-by operator.
- Conceptual database design: entities and relationships, generalisation hierarchies, keys and weak entities, ER diagrams.
- Logical database design and relational theory: translating ER diagrams into tables, relational algebra, functional dependencies, normalisation.
- The physical layer: file formats, indexes, evaluation of relational operators, De-normalisation.
Last updated: 9 Jan 2007
Source file: /internal/modules/COMSCI/2006/xml/19324.xml
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus