School of Electronic Engineering and Computer Science

Mrs Eaman Alharbi


Room Number: Temporary Building, TB Ground


Computer Systems and Networks (Undergraduate)

This module provides you with a basic understanding of how a computer works and how programs are executed by the CPU at the machine level. As an introduction to computer architecture and systems software, this module presents the concepts needed to understand typical computers at the level of their ';machine-code'; instruction set. It covers Boolean algebra rules and terminology as well as logic gates. The module also examines the use of bits, bytes and data formats to represent integers, text and programs as well as looking at the conventional von Neumann computer architecture (CPU, registers, memory). Assembly language programming and system software are introduced.

Database Systems (Postgraduate)

Introduction to databases and their language systems in theory and practice. The main topics covered by the module are: The principles and components of database management systems. The main modelling techniques used in the construction of database systems. Implementation of databases using an object-relational database management system. SQL, the main relational database language. Object-Oriented database systems. Future trends, in particular information retrieval and data warehouses. There are 2 timetabled lectures a week, and 1 hour tutorial per week (though not every week). There will be timetabled laboratory sessions (2 hours a week) for approximately 4 weeks.

Semi-structured Data and Advanced Data Modelling (Postgraduate/Undergraduate)

In this module, student will learn to process XML (with XSLT and Java), to model data with XML (XML native, RDF), and to query XML data (XQuery). The module teaches many concepts of data modelling and knowledge representation that are beyond the syntactic issues of XML or RDF. The knowledge students acquire in the course is fundamental to the many data design and data analytics tasks occurring in todays IT and business landscapes. The second part of the module is dedicated to advanced DB concepts including active databases, mobile databases, spatial and temporal databases, triggers, performance tuning, distributed databases, indexing and query optimisation. The third part of the module covers the modern, agile world of data processing: NoSQL. It is about the processing of semi-structured data, transforming data streams into formats (triplets, JSON) to be processed by new DB systems (e.g. MongoDB, CouchDB). Overall, students will learn in this module to solve data and information management tasks as they typically occur in today's IT landscape.