• Home
  • News
  • Apply Online
  • Contact us
|     Featured Links
  • myLMS

  • mySIS

  • myHRM

  • Staff Mail

  • Student Mail
  • العربية
About UsAdmissionRegistrationUPPCollegesOutreachRelationsSupportJobs
CEIT Courses
CS 101 Problem-Solving for Computing (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 100
This course introduces computer programming as a concept with gentle exposure to programming languages. The course does not teach specific language; rather it touches on a number of modern languages with a smooth introduction to C++. The course covers algorithm design, debugging, elements of good programming style, data types, sequence, selection, and repetition, and simplified software development.


CS 201 Object-Oriented Programming I (3, 2, 4)
Co-requisite: None
Pre-requisite: MATH 101 and CS 101
The course covers the basic Java syntax and language features, compilation, interpretation, execution, class and object usage, graphical interfaces, program-user interaction, and Java API. Problem-solving techniques and object-oriented programming are also covered. Topics include: an overview of computers and computing and introduction to Java; basic data types and operators; basic object-oriented concepts; wrapper classes; console input/output; logical expressions and control structures; classes and methods; arrays and strings.


CS 202 Object-Oriented Programming II (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 201
This course covers basic and advanced object-oriented programming concepts: inheritance; polymorphism; abstract classes and interfaces, java virtual machine; collection and generic classes, basic object-oriented design and modelling, graphical user interface programming; delegation model for event handling; recursion; searching and sorting algorithms; searching and sorting using the Java API; introduction to thread programming.


CS 205 Technical Software Development (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 101
This course is a continuation of CS101. It covers modular and structured programming technique, problem solving and algorithm development, simple engineering and scientific problems, object-oriented modeling, class and objects, stream I/O, inheritance and polymorphism, software development using C++, software modularization, team software development, and an introduction to data structures.


CS 210 Computer and Logic Essentials (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 201
This course introduces students to the following: Boolean algebra with applications to computers and logic design; Manipulation and minimization of Boolean functions; The Arithmetic Logical Unit (ALU), logical properties of flip-flops and sequential machines; Combinational circuits analysis and design; Multiplexers, decoders and adders; Sequential circuit analysis and design; Clocking and edge-triggering; Registers, counters, timing sequences and state assignment.


CS 241 Discrete Structures I (3, 0, 3)
Co-requisite: None
Pre-requisite: MATH 101
On this course you will deal with: Propositional Logic, Predicate Logic, Sets, Functions, Sequences and Summation, Proof Techniques, Mathematical induction, Inclusion-exclusion and Pigeonhole principles, Permutations and Combinations (with and without repetitions), The Binomial Theorem, Recurrence Relations; Graphs terminology and applications, Connectivity, Isomorphism, Euler and Hamilton Paths and Circuits, Planarity and Coloring; Trees terminology and applications.


CS 242 Discrete Structures II (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 241
Number Theory: Modular Arithmetic, Integer Representation, Fermat’s Little Theorem, Chinese Remainder Theorem, RSA.; Proof Techniques: Methods of Proofs, Applications from Number Theory, Recursive Definitions; Algorithm Correctness; Relations: Closures and Equivalence Relations, Partial Orderings and Lattices, Hasse Diagrams; Recurrence Relations and Generating Functions; Automata Theory: Finite State Machines, Regular Expressions, DFA, NDFA and their equivalence, Grammars and Chomsky Hierarchy, Introduction to Turing Machines; Abstract Algebra: Groups, Homomorphisms and Lagrange's Theorem, Applications.


CS 282 Data Structures (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 201
The course features the following: Review of object-oriented concepts; Introduction to design patterns; Basic algorithms analysis; Fundamental data structures - implementation strategies for stacks, queues and linked lists; Recursion; Implementation strategies for tree and graph algorithms; Hash tables; Applications of data structures (e.g. data compression and memory management); Garbage collection and memory management.


CS 330 Software Engineering (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 282
Formal methods of software design and development; Recognition of conditions for production of high quality software; Organization and management of software development projects; Introduction to design methodologies; History and overview of software engineering; Recognition of conditions for production of high quality software; Software processes; Software project management; Software requirements and specification; Software design; Software testing and validation; Software metrics; Software quality assurance; Software evolution; Using APIs; Software tools and environments.


CS 344 Database Systems (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 282
The purpose of this course is to provide students with an in-depth understanding of the design and implementation of relational database systems. The course topics are Basic database concepts, Conceptual data modeling, Relational data model, Relational theory and languages, Database design, SQL, Introduction to query processing and optimization, and Introduction to concurrency and recovery.


CS 350 Professional Issues in Computing (2, 0, 2)
Co-requisite: None
Pre-requisite: CS 202
Covers: professional issues in the information technology professions; history and social context of computing; professional responsibilities; privacy; intellectual property; the risks and liabilities of computer-based systems.


CS 355 Computer Algorithms (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 282
The course provides an introduction to the scientific analysis of algorithms and data structures and their implementation. Topics include: Algorithms and Problem Solving; Basic Algorithmic Analysis; Advanced algorithmic analysis; Advanced Data Structures; Algorithmic strategies & Analysis of fundamental computing algorithms; Basic computability; The complexity classes P and NP.


CS 360 Web Programming (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 202
The web represents daily interaction with computers and communications networks for many people, yet many of those people do not know it as a universally satisfying experience. In other words, many websites are poorly designed and implemented. In this course, web programming is addressed to highlight at an early stage the critical elements of specifying, designing and implementing a site. Topics include: Web design; HTTP; HTML; Platform independence; Usability; Accessibility; Interactive web pages; Client-side processing: JavaScript; CSS: Cascading Style Sheets; Forms & CGI Scripts; Server-side processing; PHP.


CS 362 Web Design (2, 2, 3)
Co-requisite: None
Pre-requisite: CS 101
This course presents the principles of interactive website design using HTML, DHTML, Cascading Style Sheets (CSS), and JavaScript. The course introduces website planning, design and creation using industry-standard website development tools. Also, screen-base color theory, web aesthetics, use of graphics editors and intuitive interface design are explored in this course.


CS 372 Computer Architecture and Assembly Language (3, 0, 3)
Co-requisite:
Pre-requisite: CS 202 and CS 241
Covers: Machine organization and architecture; (Intel/MIPS)-Assembly language: addressing, stacks, argument passing, arithmetic operations, decisions, modularization; Input/Output operations and interrupts; Memory hierarchy and cache memory; Pipeline design techniques; Super-scalar architecture; Parallel architectures.


CS 381 Real-Time Programming (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 202 and CS 241
This course explores real-time systems and the characteristics of certain devices that require real-time event response, and the development of systems to manage real-time applications. Topics to be covered include: Introduction to Real-Time Systems; Definitions of Real-time systems; Embedded systems; Designing and Developing Real-time Systems; Real-time architectures: Interruptions and exceptions, timers and real-time facilities; Real-time devices; Event-driven activities; Input/Output devices and buses; Serial devices and parallel devices; Peripheral serial buses; Multitasking in real-time systems; Scheduling.


CS 382 Human-Computer Interaction (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 282
This course deals with the problems of designing interactive computer technologies such as domestic devices, mobile and wearable computers and communications devices, graphical user interfaces, collaborative work systems and virtual reality devices. The course develops a user-centred approach to the design of interactive systems, in which understanding users and their activities plays a central role. The course topics include: Theoretical and practical issues in human-computer interfaces; Interface design process; Usability engineering; Developing, programming and evaluating interface designs; Design of windows and menus; Commands and natural languages; Input/Output; Visual prototyping; User manuals, online help and tutorials.


CS 383 Principles of Cryptography (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 355
This course is an introduction to the basic theory and practice of cryptographic techniques used in computer security. We will cover topics such as encryption (secret-key and public-key), message integrity, digital signatures, user authentication, key management, cryptographic hashing, Network security protocols (SSL, IPsec), public-key infrastructure, digital rights management, and some zero-knowledge protocols.


CS 384 Computer and Network Security (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 355
This course provides an introduction to computer and network security, and deals with the ollowing area: Security services; confidentiality, integrity, availability, accountability; Hacker techniques and attack types; Public and private key encryption; Authentication; Digital signature; User identification and access control; Computer viruses, Trojans and worms; Risk management and analysis; Information security process; Internet security: security protocols such as IPSec, SSL, TLS, email and web security; Security technologies and systems: Firewalls, VPN and IDS.


CS 385 Computer Networks (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 202
Introduction to computer networks and layered architectures: connectivity, topology, circuit and packet switching; TCP/IP and ISO models; Application layer: C/S model, DNS, SMTP, FTP, WWW, socket programming and network security; Transport layer: TCP and UDP, congestion control; Network layer: internetworking, addressing and routing algorithms and protocols; Data link layer: framing, flow and error control protocols, PPP, MAC and LANs; Physical layer: principles of data communications, circuit switching, coding, multiplexing and transmission media.


CS 395 Operating Systems (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 372
This course is concerned with the role, organization and fundamentals of operating systems. It deals with the following topics: history and evolution of operating systems; operating system structure; Process management: processes, threads, CPU scheduling, process synchronization; memory management and virtual memory; file systems and devices. These topics will be illustrated through examples and case studies.
1. A. S. Tanenbaum, Modern Operating Systems, (2nd ed.) Prentice-Hall, 2001.
2. A. Southerton, Modern UNIX: operating systems, X window system, desktop managers, interoperability, applications, John Wiley & Sons, 1993.


CS 399 Summer Training (0, 0, 0)
Co-requisite: None
Pre-requisite: CS 344, completion of 85 credit hours, and departmental approval
A major part of Computer Science professional development takes place during the summer training over a period of 8 weeks. The training is designed to place the trainees in industry, business or government agencies for the purpose of familiarization with a real-life work environment enabling them to apply and relate their academic knowledge in a professional setting. The trainee is required to participate in professional activities related to the Computer Science major. Such involvement exposes the trainees to professional issues related to Computer Science. The professional placement is monitored through progress reports and supervisors' evaluations. Upon completion of the training, the student is required to submit a final report and deliver a public presentation to summarize his/her professional experience, achievements and acquired knowledge. The course grading system is a Pass/Fail grade.


CS 410 Client-Server Programming (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 282
This course provides an introduction to constructing complete information systems based on the client-server model. On the client side, the course explores graphical user-interfaces, their design and implementation, as well as commonly used tools such as database access clients and report generators. On the server side, the course introduces database management systems and the use of server-side programming tools that provide connectivity for clients and access to database systems. Along the way, students are introduced to the basics of distributed computing and computer networks, the development of TCP/IP applications and their associated protocols.


CS 421 Computer Graphics (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 282
This course introduces students to the theory, implementation and application of modern computer graphics techniques. The course topics will include: Applications of Computer Graphics; Graphics systems and devices; Output Primitives; Attributes of Output Primitives; Two-Dimensional Transformations; Windows to Viewport Mapping and Clipping; Graphical User Interfaces and Interactive Input Methods; Two-Dimensional Object Representations; Three-Dimensional Object Representations; Three-Dimensional Graphics.


CS 423 - Digital Animatics (2, 2, 3)
Co-requisite: None
Pre-requisite: CS 101
This course introduces the steps followed by professional animators for producing media in a digital environment. Students learn the fundamental skills of planning, organizing, storyboarding and pre-visualization techniques necessary to create animated stories.


CS 442 Artificial Intelligence (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 241
This course introduces students to the foundations of artificial intelligence (AI). Topics and techniques of artificial intelligence using the language Lisp and/or Prolog. Topics include: Blind and heuristic search; Knowledge representation, Expert systems, Theorem proving; Natural language interfaces and processing; Learning; Development of programming proficiency in Lisp and/or Prolog; Real AI applications.


CS 444 Advanced Database Systems (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 344
This course is intended for students interested in advanced database system design and implementation. The course quickly starts with a quick review of relational databases and then covers advanced topics in modern database systems, including object-oriented databases, XML databases, distributed databases, and on-line analytical processing. It discusses various data description and query languages, database design, and query processing and optimization, and also looks at distributed object model, and data mining and data warehouses. Students undertake a semester project that includes the design and implementation of a database system, which includes the use of object-oriented features and XML.


CS 450 Advanced Web Programming (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 360
This course provides students with the knowledge and skills needed to successfully design and implement Web applications using several technologies and tools (XML, DOM, JSP, Servlets, and Ajax environment). Topics include: Ajax programming environment; XML, DOM and CSS; Technologies for asynchronous content update; XML objects; XSLT and XPath; Web services; APIs and mashups; Design patterns; RSS and JSON.


CS 451 Distributed Systems (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 395
Catalogue Description
The course topics include: Introduction to distributed systems; Fundamentals of communications and network technology; Remote Procedure Call (RPC); Objects everywhere; Naming and naming services - the DNS; Distributed File Systems including case study of NFS; The Web and Enterprise Computing; Content Distribution Networks; Clock Synchronization; Peer to Peer Applications; Distributed systems problems - availability, consistency and replication; Consistency and message ordering; Transactions; Distributed Concurrency Control; Distributed Transactions; Recovery from Failure; Current Research Areas.


CS 452 Cluster Computing (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 395
Catalog Description
The course covers various communication models and languages for cluster computing (parallel programming). Architectures of parallel machines are examined with regard to the efficiency and optimization of programs. The course syllabus covers concurrent, distributed and parallel programming and systems. Topics covered on the programming side include: early work on simple language extensions for concurrency; simple extensions for message passing; programming with tuples; message passing for parallel architectures; data parallel programming; mapping problems to parallel systems; optimization of parallel programs to exploit architectural features. Topics in parallel systems, including machine architectures and operating systems, include: pipelined machines; shared memory machines; distributed memory; SIMD, MIMD; massively parallel machines; special purpose parallel systems.


CS 460 Languages in Software Development (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 282
Fundamentals of programming languages; Formal specification of syntax and semantics; Data types; Control structures; Interfacing procedures; Subprograms; Programming paradigms: Imperative, functional, logical, object-oriented, and concurrent; Exception handling; Run-time storage management.


CS 480 CS Senior Project (1, 4, 3)
Co-requisite: None
Pre-requisite: CS 282.
Each student conducts an in-depth study of a current problem in computer science or a related area. Upon selection of the problem of interest, the student is expected to develop a software prototype that meets the computer science and software engineering guidelines. Upon completion, the student presents the results in both oral and written forms.


CS 485 Multimedia Systems (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 282
Multimedia has become an indispensable part of modern computer technology. In this course, students will be introduced to principles and current technologies of multimedia systems and gain hands-on experience in this area. Issues in effectively representing, processing, and retrieving multimedia data such as sound and music, graphics, image and video will be addressed. Topics include:
Introduction to multimedia systems; Fonts and hypertext; Digital audio; Synthesized audio & MIDI; Audio on the Internet & audio streaming; Speech recognition; Computer graphics and images; Image formats and standards; Color models in images; Image compression; Principles of animation; Digital video; Video compression; Video on the Internet & video streaming; Videoconferencing; Multimedia software tools; Issues in multimedia applications design; Multimedia programming techniques.


CS 486 Multi-Agent Systems (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 395
Multi-agent systems (MAS) may be viewed as a collection of distributed autonomous artifacts capable of accomplishing complex tasks through interaction, coordination, collective intelligence and emergence of patterns of behavior. They are a useful computational paradigm for creating systems that are flexible, adapt to changes in the environment, and are able to integrate heterogeneous components. In this course we first study: what are agents?; multi-agent systems and their characteristics; reasoning about agents' knowledge and beliefs; distributed planning, high-level communication and automated negotiation; coordination mechanisms; MAS learning; organizational issues; and multi-agent systems architectures involved in building closed or open distributed systems.


CS 487 Computer Vision (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 372
Catalogue Description
This course gives an introduction to the concepts behind computer-based recognition and extraction of features from raster images. Many successful applications of vision systems and their limitations are illustrated. There is an overview of early, intermediate and high level vision. The following are all dealt with: Segmentation techniques; Perceptual grouping; Overview of mammalian vision; Relaxation labelling of images; Grouping of contours and straight lines; Depth measurement in images; Matching of images; Expert system modelling in computer vision.


CS 488 Arabic Computing (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 355
Catalogue Description
This course examines a range of issues concerning computer concepts related to Arabic. Among the issues to be discussed are: Arabic Language Characteristics, Arabic Character Sets, Standardization, Unicode, Arabization systems, Arabic software tools, Arabic programming languages and Introduction to Arabic Computations.


CS 490 Artificial Neural Networks (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 395
Catalogue Description
Introduction to neural computing: Real vs. artificial neurons; Threshold logic; Training a linear threshold unit, the perceptron rule; Multilayer feed-forward networks and the back propagation algorithm; The Hopfield net; Self-organizing maps; Radial basis functions; Adaptive resonance theory; Applications of Neural Networks (ANN).


CS 491 Natural Language Processing (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 460
This course introduces basic models of grammar and meaning in natural language and the nature of speech signals, describes the main techniques used in computer processing of language and speech, and sets these models and techniques in the context of current industrial applications. Topics covered include: Formal models of language; Finite State Techniques; Grammar and parsing; Statistical NLP; Semantics and pragmatics for NLP systems; Speech processing; Commercial applications of language and speech processing; Corpus processing techniques; Standardization initiatives; Language generation.


CS 492 Machine Learning (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 395
Catalogue Description
This course provides a broad introduction to machine learning and statistical pattern recognition. Topics include: supervised learning (generative/discriminative learning, parametric/non-parametric learning, neural networks, support vector machines); unsupervised learning (clustering, dimensionality reduction, kernel methods); learning theory (bias/variance tradeoffs; VC theory; large margins); reinforcement learning and adaptive control. The course will also discuss recent applications of machine learning, such as to robotic control, data mining, autonomous navigation, bioinformatics, speech recognition, and text and web data processing.


CS 499 Cooperative Work (0, 0, 9)
Co-requisite: None
Pre-requisite: CS 344, Completion of at least 85 hours, and Department approval.
This module involves a continuous period of 28 weeks spent by students as normal employees in industry, business, or government agencies with the purpose of familiarizing themselves with the real world of work and enabling them to integrate their classroom learning into a real work environment. During this period, the student is exposed to real-life work in the field and is required to participate in at least one project. Students are required to submit progress reports during the work period, and are also required to give a presentation and submit a final report on the experience and knowledge gained during their cooperative.


SWE 212 Introduction to Object-Oriented Software Engineering (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 201
Design and construction of modular, reusable, extensible and portable software using statically typed object-oriented programming languages (Java or C#); Abstract data types; Genericity. Single versus multiple inheritance; Use and design of software libraries; Analysis and design modes; Impact of object-oriented paradigm (OOP) on software life cycle; Introduction to the application of UML diagrams to object-oriented and component-based design; Ethical and professional issues.


SWE 330 Usability (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 282
This course deals with the problems of designing interactive computer technologies such as domestic devices, mobile and wearable computers and communications devices, graphical user interfaces, collaborative work systems and virtual reality devices. The course develops a user-centered approach to the design of interactive systems, in which gaining an understanding of users and their activities plays a central role. The course topics include: Theoretical and practical issues in human-computer interfaces; Interface design process; Usability engineering; Developing, programming, and evaluating interface designs; Design of windows and menus; Commands and natural languages Input/Output; Visual prototyping; User manuals, online help and tutorials.


SWE 345 Software Architectures and Design (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 282
Students will learn about the following: Design concepts and notations; Architecture, middleware architectures, design patterns, frameworks and components; Designing for qualities such as performance, security, reusability and reliability; Metrics and measurement; Basics of software evolution, reengineering and reverse engineering. Students participate in a group project on software design.


SWE 352 Software Requirements Engineering (2, 2, 3)
Co-requisite: None
Pre-requisite: SWE 212 and CS 202
This course is about the elicitation, analysis, modelling and specification of software engineering requirements. Requirements engineering has attracted much interest in the research community and is increasingly recognised by practitioners as one of the most important stages in the software development life cycle. Topics include: Software requirements elicitation; Requirements analysis and documentation; Team process infrastructure; Resource estimation to support appropriate levels of quality; Software architectural design.


SWE 395 Visual Programming (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 202
This course covers the fundamentals of visual language theory, iconic and symbolic representations, parsing techniques, semantics and pragmatics of visual languages. This course will also introduce students to the fundamental principles of event-driven programming and to programming using a visual environment such as Visual Basic or Visual C# programming language. An additional aim of this course is to give students an understanding of the main ideas of Human-Computer Interaction (HCI).


SWE 399 Summer Training (0, 0, 0)
Co-requisite: None
Pre-requisite: CS 344, completion of 85 credit hours, and departmental approval
A major part of Software Engineer professional development takes place during the summer training over a period of 8 weeks. The training is designed to place the trainees in industry, business, or government agencies for the purpose of familiarization with a real-life work environment, thus enabling them to apply and relate the academic knowledge to a professional setting. Trainees are required to participate in professional activities related to their Software Engineering major. Such involvement exposes them to professional issues related to Software Engineering. The professional placement is monitored through progress reports and supervisors' evaluations. Upon completion of the training, the student is required to submit a final report and deliver a public presentation to summarize his/her professional experience, achievements and knowledge acquired. The course grading system is a Pass/Fail grade.


SWE 420 Software Validation and Verification (3, 0, 3)
Co-requisite: None
Pre-requisite: SWE 212
Introduction of testing techniques of software systems: unit testing, integration testing, system testing, acceptance testing, and regression testing; test plan and test case design; quality assurance; verification and validation.


SWE 462 Web Engineering (3, 0, 3)
Co-requisite: None
Pre-requisite: SWE 212
Web Engineering fundamentals: requirements, analysis modelling, design modelling, testing; Internet basics for web applications; Technologies and tools for developing web applications: markup languages, styling, data description and transformation, client and server side programming; Web services; Advances in web engineering.


SWE 465 Software Project Management (3, 0, 3)
Co-requisite:
Pre-requisite: SWE 345
This course examines the defining characteristics of Software Project Management, especially involving the development of software intensive systems, and introduces the student to a variety of project management techniques that can be applied in the context of such projects. Topics include: Introduction project management concepts; Tools and techniques; Management and project planning; Scope management; Scheduling; Budget control; Human resource management; Communication management; Risk analysis and management; Project quality management; Procurement management.


SWE 480 SWE Senior Project(1, 4, 3)
Co-requisite: None
Pre-requisite: SWE 345 and SWE 499
Software Engineering Project aims to provide students with the experience of developing a medium-scale computing project in a small team of up to five members dealing with the associated problems of communication and team management. The ultimate goal is to develop software which satisfies the customer. Each team will achieve this goal by completing the project steps as outlined in several project documents. All aspects of the development process are considered: Problem specification; Requirements extraction; System design; Implementation; Integration; Testing and documentation. This course provides students with the experience of working in a team and dealing with the associated problems of communication and team-management.


SWE 499 Cooperative Work (0, 0, 9)
Co-requisite: None
Pre-requisite: CS 344, Completion of at least 85 hours, and Department approval.
This module involves students spending a continuous period of 28 weeks as a normal employee in industry, business, or government agencies with the purpose of familiarizing themselves with the real world of work and enabling them to integrate their classroom learning into a real work environment. During this period, the student is exposed to real-life work in the field, and is expected to participate in at least one project. The student is also required to give a presentation and submit a final report on the experience and knowledge gained during his/her cooperative.


IT 201 Introduction to Information Technology (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 101
This course focuses on the IT fundamentals. It introducing skills related to information technology basics, Internet fundamentals, network systems, computer maintenance, upgrading, troubleshooting, computer applications, programming, graphics, Web page design, and interactive media. Students explore ethical issues related to computers and Internet technology and develop teamwork and communication skills that will prepare them for their IT major and career.


IT 280 Games Programming (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 202
Computer games are becoming so complex that they require large teams of programmers, designers, artists, testers, advertisers and producers to organize and develop them. This course gives a hands-on overview of the entire area of game development and programming. The course is experimental. Topics include: Game programming techniques; 2D and 3D games; Data representations of virtual elements; 3D modelling techniques; Displaying the 3D game environment; Controlling motion and avatar behaviors; Interaction control; Game architectures, including multi-player games and message passing; Managing complexity.


IT 300 E-Commerce (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 101
This course provides advanced knowledge and skills for the design, construction, and implementation of an Internet-based commerce site. This development is achieved by introducing advanced use of information technology methodologies and tools into the design and implementation stages. Legal, security, cultural, and policy issues are discussed in the framework of e-commerce.


IT 316 IT Project Management (3, 0, 3)
Co-requisite: None
Pre-requisite: CS 282
The course discusses principles, tools and technologies used in information technology project management. Topics include project initiation, planning, scheduling, resource allocate, outsourcing, teams, governance, risk management, cost management, and monitoring.


IT 360 Data Communications and Security (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 202
This course develops students' knowledge, design skills and analytical techniques associated with data communication networks and the security issues related to them. Topics include: Introduction to OSI/ISO Standards and Public Data Networks (PDN); Comparison of Circuit Switching and Packet Switching; PDH and SDH; Digital Communications Techniques and Data Link Control; Multiplexing Techniques; Network Management & Security; Firewalls for Network Security.


IT 384 Data, Information and the Internet (3, 0, 3)
Co-requisite: None
Pre-requisite: None
The course describes what data is and examines techniques of data acquisition and some general aspects of data storage. It then looks at the history of computing with emphasis on how programming evolved, then the course teaches some programming skills using Javascript. The course presents the theme of larger-scale software development – in particular software development carried out by teams of people. The course then carries on how the computer provides the whole range of non-textual ways of handling data and presenting information. This part of the course presents the principles of human–computer interaction. Other topics presented in the course include non-traditional ways to access and transmit information and the ways in which security and privacy can be ensured. Finally, the course put the presented themes together. It discusses the extent to which we have become dependent on the correct functioning of computerized systems and the risks which this dependence brings.


IT 385 Information and Communication Technologies Applications (3, 0, 3)
Co-requisite: None
Pre-requisite: None
Information and communication technologies (ICT) are all around us - in homes, offices, shops, schools, hospitals, etc. This course looks inside these technologies, explores how they work in a range of situations including entertainment, transport and health. The course is divided into three parts. The first part introduces to some of the ICT concepts and contexts which will be covered in more depth throughout the course. The second part focuses on networks, and looks at how they can connect people, information and devices. It explains how the Internet works. It also introduces other networks, such as those used in 'smart homes'. The last part looks at how ICTs have transformed entertainment, broadcasting, health, transport, and government services. It explains some fundamental ICT concepts in the context of digital photography, film, computer games, news gathering and broadcasting, e-government websites, e-health, and road networks.


IT 399 Summer Training (0, 0, 0)
Co-requisite:
Pre-requisite: CS 344
A major part of Information Technology professional development takes place during the summer training over a period of 8 weeks. The training is designed to place the trainees in industry, business, or government agencies for the purpose of familiarization with a real-life work environment enabling them to apply and relate their academic knowledge in a professional setting. The trainee is required to participate in professional activities related to his/her Information Technology major. Such involvement exposes the trainee to professional issues related to Information Technology. The professional placement is monitored through progress reports and supervisors' evaluations. Upon completion of training, the student is required to submit a final report and deliver a public presentation to summarize his/her professional experience, achievements and knowledge acquired. The course grading system is a Pass/Fail grade.


IT 440 Web Server Administration (3, 2, 4)
Co-requisite: None
Pre-requisite: CS 360 and IT 201
This course discusses issues related to Web servers. Topics covered include server installation, security testing, performance tuning, access and connectivity, etc. The course has a practical component that allows the students to practice the concepts in the lab using real production servers.


IT 455 Information Security (3, 0, 3)
Co-requisite:
Pre-requisite: CS 395
This course develops students' knowledge, design skills and analytical techniques associated with security for Information Technology systems. Topics include: Introduction to the concepts of IT security; security policies; Attacks and threats against Information Technology systems; vulnerability of Information Technology systems; Encryption standards and algorithms; Information security systems; Digital forensics; Computer forensics.


IT 460 Internet Networking Infrastructure (3, 0, 3)
Co-requisite: None
Pre-requisite: IT 282
This course covers a study of MANs/WANs and the associated infrastructure technologies to enable Internet networking. Along with the technologies, the associated protocols that are implemented with Internet networking are studied in detail. New developments such as IP over ATM and next-generation Internet are also reviewed.


IT 480 IT Senior Project (1, 4, 3)
Co-requisite: None
Pre-requisite: CS 344
Information Technology Project aims to provide students with the experience of developing a medium-scale project in one of the technical areas of Information Technology and Systems in a small team up to five members. Each team has to address issues related to communication and team management. At the commencement of the project, deliverables need to be identified and agreed upon by the project team and the project customer, and clear expectations set in terms of requirements for assessment.


IT 499 Cooperative Work (0, 0, 9)
Co-requisite: None
Pre-requisite: CS 344, Completion of at least 85 hours, and Department approval.
This module involves students spending a continuous period of 28 weeks as a normal employee in industry, business, or government agencies with the purpose of familiarizing themselves with the real world of work and enabling them to integrate their classroom learning into a real work environment. During this period, the student is exposed to a real-life work in the field, and is required to participate in at least one project, as well as submit progress reports during the work period. He/she is also required to give a presentation and submit a final report on the experience and knowledge gained during the cooperative.


MATH 101 Mathematics I (4, 0, 4)
Pre-requisite: MATH 002 or equivalent.
Limits and continuity of functions of a single variable. Derivatives of Polynomials and Exponential Functions. The Product and Quotient Rules. The Chain Rule. Implicit differentiation. Derivatives of Logarithmic Functions. Related Rates. Linear Approximations and Differentials. Maximum and Minimum of functions. First and second derivative tests for local extrema. Inflection points. Curve sketching. Indeterminate Forms and L’Hospital’s Rule Applied extrema problems. The Mean Value Theorem and applications.


MATH 102 Mathematics II (4, 0, 4)
Prerequisite: MATH 101 or equivalent.
Areas covered: The Definite Integral, The Fundamental Theorem of Calculus. Indefinite Integrals and the Net Change Theorem. The Substitution Rule. Computing areas under a curve. Areas between Curves. Volumes and Volumes by Cylindrical Shells. Average Value of a Function. Integration by Parts. Trigonometric Integrals. Trigonometric Substitution. Integration of Rational Functions by Partial Fractions. Improper Integrals. Sequences. Series. The Integral Test and Estimates of Sum. The Comparison Test. Alternating Series. Absolute Convergence and the Ratio and Root Tests. Power Series. Representations of Functions as Power Series Taylor and Maclaurin Series. Arc Length. Area of a Surface of Revolution.


MATH 240 Probability and Statistics for Engineering (3, 0, 3)
Pre-requisite: MATH 102
Areas covered: Descriptive statistics, measures of location, measures of variability, percentiles, quartiles and coefficient of variation; Graphical representation of data. Mean and variance of grouped data; Sample space and events; Probability of an event, additive rules, conditional probability and multipl;cative rules; Bayes' rule; Random variables and discrete probability distributions; Continuous probability distributions; Expected value and variance of a single random variable; Mean of a linear combination; Binomial distribution; Hypergeometric, geometric and Poisson distributions; Continuous uniform distribution; Normal distribution; Areas under the normal curve; Applications of normal distribution; Exponential distribution; Random sampling and sampling distributions; T-distribution; Estimating the mean standard error of a point estimate; Estimating a proportion; Statistical hypotheses, one and two tailed tests; The use of P-value; Tests concerning a single mean Tests on a single mean and two sample pooled T-test; Test on a single proportion; Simple linear regression using least squares; Properties of the least squares estimators; Correlation.


 
  • Final Exam schedule 2009-2010 (Summer semester) Male & Female ... read more

  • Ramadan Schedule ... read more

  • Start of Online Registration for first semester 2010/2011

    ... read more
  • Placement test dates for new students

    ... read more
  • Apply for the Ministry of Higher Education Scholarships ... read more

«
<
September 2010
>
»
S M T W T F S
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 1 2
PrivacymyDAU PolicyStudent RightsFAQDirectoryVirtual TourSitemap
Copyright © 2009 All rights reserved