Miss Hadeel Alrubayyi
Email: firstname.lastname@example.orgRoom Number: Engineering, eng-251
Algorithms and Data Structures (Undergraduate)
The module is an introduction to Algorithms and Data Structures. It covers topics such as running time of algorithms, asymptotic complexity, simple and advanced sorting algorithms, divide and conquer algorithms, recursion, dynamic programming, greedy algorithms, basic data structures (strings, arrays, lists), linked lists, trees, hash tables.
C Programming (Undergraduate)
This module introduces the principles of C Programming to students who already know how to program at a basic level in Java. It provides a knowledge of the theory of C Programming and also its practical use in real engineering systems. The focus is on microprocessor based systems.
Creating Interactive Objects (Undergraduate)
Interactive objects are physical devices controlled by microcontrollers using simple sensors and actuators. The module provides students with skills, knowledge, and experience of designing and prototyping interactive physical objects using contemporary microcontrollers. The module covers basic electronics, control circuits, sensors (analogue and digital), output (analogue and digital), microcontrollers, simple networking, and microcontroller programming using the popular Arduino open-source platform. It additionally touches on topics of interaction design and evaluation to provide a framework in which students can prototype and understand interactive objects.
Fundamentals of Web Technology (Undergraduate)
Introduction to Software Engineering (Postgraduate)
The main focus of this module is software engineering and systems analysis. Students will learn about system complexity and the special challenges of building software systems. They will learn how to analyse system and software requirements, produce object-oriented designs, and learn the principles of how to plan, manage and test systems. Content covers: Systems Analysis Requirements capture and analysis Use cases; UML for use-cases Object oriented design; UML for class diagrams Project management Software lifecycle Quality assurance and testing
Object-Oriented Programming (Undergraduate)
Major topics include the concepts of class, object, method, subclass, inheritance and their use in programming. The relevance of the object oriented style with respect to concrete software problems will be stressed both in lectures and labs. There will be two hours of lectures per week, and each student will have a weekly timetabled lab session. In addition, you will be expected to spend further time outside scheduled lab periods in the lab (or at home machines if they are available), and to read textbooks and review notes.