IT 211 | Human Computer Interaction and Visual Programming | 3 |
---|---|---|
This course provides an introduction to the field of Human-Computer Interaction (HCI) and an overview of software architectures used in modern graphical user interfaces. A variety of analysis and design methods are introduced (e.g. GOMS. heuristic evaluation, User-Centred Design and contextual design techniques). Visual programming topics include file manipulation, related data structures; exception handling and Graphical User Interfaces (event handling and models), and windows applications. Evaluations of user interfaces according to usability and accessibility standards will be covered. Throughout the course, the quality of design and the need for a professional and user-centered approach to interface development is emphasized. | Pre-requesite: CSC113 |
IT 212 | Data Structures | 3 |
---|---|---|
This course emphasized the importance of information hiding and how to use abstraction in good program design. Students will be able to estimate algorithms growth rates and describe it using big O notation. Various Sorting and searching techniques including Hashing will be studied and their performances compared. Similarly, various data structures their representations, traversal, and application will be studied and compared. These data structures include at least: lists, stacks, queues, trees, and graphs. For trees: binary trees, search trees, height-balanced trees, and Heaps will be discussed; For graphs: Depth-First Traversal, Breadth-First Traversal, and Shortest/Cheapest path algorithms will be covered. | Pre-requesite: CSC113 |
IT 221 | Computer Organization and Assembly Language | 3 |
---|---|---|
The purpose of this course is to introduce the information technology students to computing systems below that of a high-level programming language. The material covered can be broadly separated into the categories of assembly language programming and Computer Organization. Topics include: number representation, basic organization of the von Neumann machine, computer instructions, memory organization, interrupt, input/output (I/O), IBM PC organization and assembly language programming; instruction formats, addressing mode, basic arithmetic, data transfer and control instructions. | Pre-requesite: CSC111 MATH151 |
IT 222 | Database Principles | 3 |
---|---|---|
Characteristics of the database approach. Database concepts and architecture; Data models, schemas and instances; Program data independence, Database languages and interfaces. Data models for database systems; The E-R DM, Relational DM and Relational Algebra. Relational model constraints; Domain, key, and integrity constraints. SQL-relational DB language; Data definition, queries, update statements, and views in SQL. Database design; functional dependencies, Normal forms. Introduction to OO databases. | Pre-requesite: CSC111 |
IT 224 | Networks I | 3 |
---|---|---|
Network technologies, protocol and standards are discussed in-depth as well as the first three layers: physical, data link and network layer. Topics include, but are not limited to, controls, framing, and operation of layer 2 protocol for wired technologies. This course will include both lectures and hands-on-experience. | Pre-requesite: PHYS104 MATH151 |
IT 311 | Web Applications | 3 |
---|---|---|
This course introduces students to the field of Web Programming with emphasis on its use to build real world web applications. Students will be trained to get a basic and solid understanding of various fundamental topics of web programming including web design principles, client side scripting. This course is also an opportunity for students to discover web technologies. It should review how web technologies have been incorporated by enterprises and companies to enhance traditional applications. On completion of this course, students should relate what they have learned to what impact the web is making to society. | Pre-requesite: CSC113 IT222 |
IT 321 | Computer Architecture | 3 |
---|---|---|
This course will provide students with a thorough understanding of the computer architecture by designing a simple processor and memory system starting from basic logic gates. Topics include: digital logic: logic expressions, minimization, sum of product forms, fundamental building blocks (logic gates, flip-flops, decoders, encoder, multiplexer, arithmetic functions, counters, registers), register transfer notation, memory, bus and CPU (data path and control unit) design. | Pre-requesite: IT221 |
IT 322 | Software Engineering I | 3 |
---|---|---|
This course is aimed at helping students build up an understanding of how to develop a software system from scratch by guiding them thru the development process and giving them the fundamental principles of system development either with Object oriented technology using UML or with the structured approach. The course will initiate students to the nature of systems analysis and design as a problem-solving activity, describe the key elements of analysis and design, and explain the place of the analysis and design phases within the system development life cycle. | Pre-requesite: CSC111 IT222 |
IT 323 | Software Engineering II | 3 |
---|---|---|
This course follows Software Engineering-1 course as it continues the investigation into software development life cycle to its end. Students will be exposed to an in-depth coverage of design (architectural design, interface design). They will be introduced to different approaches to software development (e.g. Rapid Software Development, Extreme programming, and Component Based Software Engineering) and system integration (validation, verification, inspections and dynamic testing techniques). This course also introduces students to the program evolution process, software maintenance, managing the code, documentation, configuration management, and software quality management including software measurements and metrics. | Pre-requesite: IT322 |
IT 324 | Information Security | 3 |
---|---|---|
This course defines information security. Topics include security services and its mechanisms, such as confidentiality, integrity, availability and non-repudiation, security policies, access control models, authentication methods, types of attacks (including social engineering, man in the middle, DoS…etc), malware, security principles (such as separation of duties, need to know…etc), basic principles of hashing, symmetric & asymmetric cryptography, digital certificates &PKI , Email security through S/MIME & PGP, Web Security, overview of firewalls and Intrusion detection system, Operating System security, physical security, risk assessment, incidence response, disaster recovery, business continuity and a general look into computer forensics. | Pre-requesite: IT224 |
IT 325 | Operating Systems | 3 |
---|---|---|
This course is introduction to the basics of computer operating systems. Topics include operating system principles, concurrency, scheduling and dispatch, memory management and virtual memory, device management and file systems. At least two operating systems are compared and contrasted. | Pre-requesite: IT212 |
IT 331 | Database Management Systems | 3 |
---|---|---|
This course teaches advanced concepts in Database implementation and administration. Components include transaction processing, concurrency control, DB recovery, query processing, distributed databases, data warehousing, data mining, and non-relational databases. It also teaches the students the main skills that need to be acquired by a DB Administrator. | Pre-requesite: IT222 |
IT 332 | Distributed Systems | 3 |
---|---|---|
The course introduces the main principles underlying distributed systems: processes, communication, naming, synchronization, consistency, fault tolerance, and security. Students will be familiar with some of the main paradigms in distributed systems: object-based systems, file systems, web-based and coordination-based systems. On the completion of the unit, students will understand the fundamentals of distributed computing and be able to design and develop distributed systems and applications. | Pre-requesite: IT224 IT311 |
IT 341 | Advanced Web Technologies | 3 |
---|---|---|
This course aims to explore, discuss, and research emerging technologies in the web arena. Emphasis is placed on exposure to up-and-coming technologies relating to the web, providing hands-on experience, and discussion of practical implications of these emerging fields. It allows students to gain an in-depth understanding of new web technologies, services and business models in fixed and mobile networks. The course will cover topics such as XML and its technologies, Web services, Rich Internet Applications (RIA), Hypertext and Hypermedia Systems, Web application frameworks, and some Advanced Topics in Emerging Web Technologies such as Cloud/Grid Computing and Mobile Computing. Upon completion, students should be able to articulate issues relating to these technologies and implement more advanced web systems. | Pre-requesite: IT224 IT311 |
IT 342 | Fundamentals of Multimedia | 3 |
---|---|---|
The aim of this course is to help students develop an understanding of the fundamental principles of multimedia systems and how they are being developed and applied. The course will explain the technologies underlying digital images, videos and audio contents, including various compression techniques and standards, and the issues to deliver multimedia content over the Internet. | Pre-requesite: IT224 IT212 IT341 |
IT 351 | Wireless & Mobile Computing | 3 |
---|---|---|
This course will examine the area of mobile and wireless networking, looking at the unique network protocol challenges and opportunities presented by wireless communication and host or router mobility. Although, this course will touch on some of the important physical layer properties of radio and infrared communications, it will focus on network protocols above the physical layer, with an emphasis on the media access control, network, and transport protocol layers. | Pre-requesite: IT224 Co-requesite: IT324 |
IT 352 | Network Security | 3 |
---|---|---|
The course covers theory and practice of network security giving detailed study of symmetric and asymmetric cryptography algorithms, pseudorandom functions and generators, hashing algorithms, message authentication codes, Key management through Diffie-hellman key agreement & Kerberos, entity authentication through CHAP. The course also provides the students with a closer look into security protocols at different network layers such as SSL/TLS, IP Sec, VPNs, network security devices and designing secure networks. Through the use of lecture, and hands-on tutorials and labs, the key components of Network Security will be discussed and demonstrated. | Pre-requesite: IT324 |
IT 361 | E-commerce | 3 |
---|---|---|
The purpose of this course is to provide the essentials of electronic commerce – how it is being conducted and managed as well as assessing its major opportunities, limitations, issues, and risks. Major topics include Internet consumer retailing, Business-to-Business e-commerce, m-commerce, e-commerce support services, and e-commerce strategy and implementation. Students will also learn how to build an online business from scratch. | Pre-requesite: IT311 IT324 |
IT 419 | Ethical Issues in Information Technology | 3 |
---|---|---|
This course will cover ethical issues regarding legal, privacy and intellectual property rights concerns and their application to information technology. It will give an overview of the subject aimed at raising students’ awareness about ethics in Information Technology and in research. It will include case studies to target specific IT subfields such as ethics in business and in the workplace. | Pre-requesite: 60 CHs |
IT 422 | Intelligent Systems | 3 |
---|---|---|
This course introduces students to the wide field of Artificial Intelligence (AI) with emphasis on its use to solve real world problems. Students will be trained to get a basic and solid understanding of various fundamental topics of Artificial Intelligence including searching, knowledge representation and reasoning, rule based systems and machine learning. This course is also an opportunity for students to discover AI based technologies. It reviews how AI techniques have been incorporated by companies to enhance traditional business applications. An exposure to PROLOG or another AI language would be beneficial for students. On completion of this module, students should relate what they have learned to what impacts AI is making to society. | Pre-requesite: IT212 |
IT 424 | Networks II | 3 |
---|---|---|
In this course internet technology protocols are discussed in details. The course covers the transport layer to cover process to process delivery and its protocols. It also covers the user support layers to cover user services such as application services. Students will be able to explain the role of networking in distributed applications and to compare and contrast the historical evolution of the switched and routed infrastructures. | Pre-requesite: IT224 |
IT 434 | Data Warehousing and Data Mining | 3 |
---|---|---|
This course teaches Data mining techniques, Data warehousing design and basic machine learning techniques. Topics covered include data preparation, data warehouses logical and physical design, data marts, classification, clustering, decision trees, association rules, Online Analytical Processing (OLAP) and dimensionality modeling. | Pre-requesite: IT222 |
IT 443 | Advanced Human Computer Interaction | 3 |
---|---|---|
This advanced HCI course covers the history, state-of-the-art and contemporary trends of this fast-moving field. HCI is also central to recent technological developments such as hypertext, multimedia, virtual reality and the web. This course focuses on psychological aspects of the individual user, universal design principles, and User Centered Design (UCD) models. Topics include interactive system development lifecycle and its requirements, major themes and recent trends in HCI, interaction design models, participatory design, Information Architecture (IA), adaptive interfaces, measuring the User Experience (UX), social computing and online communities, mobile computing and issues surrounding the design for smaller screens, ubiquitous computing, Computer Mediated Communication (CMC) and Computer Supported Cooperative Work (CSCW). | Pre-requesite: IT211 |
IT 444 | Web Intelligence | 3 |
---|---|---|
This module provides a critical and applied understanding of the technologies and standards enabling reasoning over and intelligent access to information on the World Wide Web, and a critical and applied understanding of the structure and properties of the web as a complex system, and how this impacts on the growth and use of the web. This module explores the fundamental roles as well as practical impacts of artificial intelligence and advanced information technology for the next generation of Web-empowered systems, services, and environments. Web Intelligence is regarded as the key research field for the development of the Wisdom Web (including the Semantic Web). It presents both the current state of research and development as well as application aspects. Topics covered include Web Agents, Web Mining and Farming, Web Information Retrieval, Web Knowledge Management, Infrastructure for Web Intelligence Systems, Social Networks Intelligence. | Pre-requesite: IT341 IT422 |
IT 453 | Information Security and Assurance | 3 |
---|---|---|
This course introduces students to managerial and technical aspects of Information Security and Assurance in organizations. Students are expected to learn, think and act as an executive manager assessing security in the existing technologies, applications and processes within an organization and understanding new developments in Information Security management. Topics include the need for Information Security and Assurance, place of security within an organization and the contributed parties, Legal and ethical issues, Information Security and risk management, Information Security implementation, standards and compliance, security auditing, incident response, business continuity, disaster recovery planning and Information Security education and training. | Pre-requesite: IT324 |
IT 454 | Computer Forensics | 3 |
---|---|---|
Fundamentals of computer forensics, cyber-crime scene analysis and electronic discovery. Technical and formal methodology for conducting security incident investigations; file systems and storage analysis, data hiding techniques, network forensics; projects involving using, understanding, and designing digital forensic tools; anti-forensics; legal issues and standards. | Pre-requesite: IT324 |
IT 455 | Network Operating System Management | 3 |
---|---|---|
Definition of network management, network management applications, tools, architectures, protocols and agents. Configuration management (Network devices and network operating system), accounting management (Network devices and network operating system). Fault and disaster management (Network devices and network operating system) and performance management (Network devices and network operating system). Remote monitoring for Network devices and network operating system. | Pre-requesite: IT324 IT325 |
IT 496 | Project I | 3 |
---|---|---|
This course is the first of a two-course sequence in which the students will develop a complete software system. The second stage will be carried out in IT 497. Students will work in groups of 3-5 students, each group will have a supervisor to guide them through the system development process using a specific methodology. In this first part, each group must identify a problem domain, define the problem, identify and specify the requirements, document the current system, analyze it, propose alternative systems, and design a solution. The design must include the definitions of all the required system models, such as the data model and the functional model. At the end of the course, each group must submit a formal report documenting the complete process. | Pre-requesite: IT323 90 Chs |
IT 497 | Project II | 3 |
---|---|---|
In this course, each group will continue developing the software systems started in IT 496. Each group must use a particular tool to implement its system in a good programming practice. This implementation tool is preferably new –i.e. not taken in previous courses. Furthermore, students must generate a user manual for their information system in an appropriate format. At the end of the term, each group must submit a final report, which documents completely the information system from the problem definition phase to the implementation phase and contains a user manual for the information system. Team work, leadership, communication and writing skills are all important ingredients for a successful project. | Pre-requesite: IT496 |
IT 499 | Seminar | 2 |
---|---|---|
In this course, latest advances in information technology application and research are discussed. Students are encouraged to research specific topics, summarize, and present them. | Pre-requesite: 90 CHs |
IT 501 | Advanced Topics in Computer Networks | 3 |
---|---|---|
This course covers the topics: Review of OSI layered architecture, security, privacy, text compression, application layer: distributed computing, network operating systems, topics of research and development such as routing, congestion control, multicasting and resource reservation in the internet, wireless networks, multimedia networks, Voice over IP (VoIP) and Quality of Service (QoS), crosslayer design, cognitive networks, programmable network, future Internet design, overlay networks, ad hoc and sensor networks, performance study of computer networks, current research problems and proposed solutions in the field. |
IT 502 | Advanced Topics in Web Technologies | 3 |
---|---|---|
This course focuses on the Service Oriented Computing paradigm and web services technology, motivations that led to the emergence of web services from middleware and Enterprise Architecture Integration (EAI), introduction to fundamental concepts of Service Oriented Architectures (SOA), web services and the key standards that underpin web services: SOAP, WSDL and UDDI. Various service discovery protocols will be evaluated and compared. |
IT 503 | Advanced Topics in Database | 3 |
---|---|---|
This course emphasizes modern database models and research issues in the field. Topics include: transaction processing, database design theory, distributed database, failure, concurrency models, semantics of data models, relevant relational theory, security and integrity, object oriented database, web and semi-structured data management, continuously streaming and sensor-based data systems. |
IT 504 | Selected Topics in Information Technologies | 3 |
---|---|---|
This course covers the topics: introduction to special topics of current interest of the field in Information Technology. |
IT 505 | Research Methods | 3 |
---|---|---|
This course introduces students to a number of research methods useful for academic and professional investigations of information practices, texts and technologies. By examining the applications, strengths and major criticisms of methodologies drawn from both the qualitative and quantitative traditions, this course permits an understanding of the various decisions and steps involved in crafting (and executing) a research methodology, as well as a critically informed assessment of published research. |
IT 531 | Advanced Networks Security | 3 |
---|---|---|
Topics will reflect the current research in network security, topics include: malware containment, formal specifications and logics, denial of service protection, ubiquitous/pervasive computing security, cryptography, anonymity and privacy enhancing technologies, access controls, systems integrity, wireless network security, system-of-systems security, digital rights management. |
IT 532 | Advanced Topics in Data Mining | 3 |
---|---|---|
This course emphasizes advanced data mining algorithms and techniques. Topics include: feature selection, high dimensional indexing, and pattern discovery, interdisciplinary applications of data mining; web and text data mining, e-commerce, security and intelligence analysis, and data mining of economic data. |
IT 533 | Ubiquitous and Pervasive Computing | 3 |
---|---|---|
This course covers the topics: Defining Pervasive and Ubiquitous Computing (PUC), Evolution paths for PUC; mobile and social computing, networked appliances, Role of sociology and psychology in designing PUC, Sensors and context information, Intelligent/smart spaces, Security and privacy problems in PUC, Human Computer Interaction issues, Applied systems: social, health, art, gaming. |
IT 534 | Grid and Cloud Computing | 3 |
---|---|---|
This course covers the topics: Logical Grid Infrastructure, and Grid Solution Development. Topics include Service-Oriented Grid Computing, Grid Solution Framework, and Cloud Computing. Logical Grid Infrastructure, Packaged Application Grid, Grid Middleware, Process Grid, Grid Solution Development, Grid Service Development, basics of parallel and distributed systems: strategies, programming models and interfaces, parallel machine architectures, multicore and multithreaded chips, parallel program optimization techniques - synchronization granularity, dependences, scheduling, load balancing, data-centric versus client-centric consistency models. |
IT 535 | Games Technology | 3 |
---|---|---|
This course covers the topics: the concepts of computer and video game technology and how they have evolved, explain the importance of the different technologies in computer and video games production, evaluate computer games design and implementation, and explain various techniques to produce 3D model and animation, implement animation techniques using modern programming language and 3D modeling tools. |
IT 536 | Bioinformatics | 3 |
---|---|---|
This course covers the topics: Introduction to methods and tools used in bioinformatics, molecular biology, mathematical, statistical and data mining principles, biological database and programming database access, relational scheme for storing, accessing and using the biological data types, bioinformatics software, resources, practical and programming skill, design and develop bioinformatics software and libraries. |
IT 537 | Mobile Computing | 3 |
---|---|---|
This course covers the topics: introduction to mobile computing and its applications, mobile technologies for developing regions, smart mobile devices, database and web client-server systems for achieving the goal of computing in wireless mobile environment anytime and anywhere, data management in mobile computing environment, and in particular in distributed mobile applications and virtualization. |
IT 538 | Social Web | 3 |
---|---|---|
This course covers the topics: theories and technologies behind social web; analytical and behavioral interactions in social web from different perspectives; social psychology and economics, design and use of social web applications, and exploring social technologies by conducting empirical studies of several social systems. |
IT 539 | Semantic Web | 3 |
---|---|---|
This course aims to provide the basic overview of what the Semantic Web is and how it can be used. It mainly contains three parts: Semantic Web language, ontology and its applications. The major part of the course is the Semantic Web languages. It starts from XML and goes further to RDF and OWL. The ontology part contains ontology engineering and the survey of the most popular ontologies (or metadata). The application part shows some current trends and other semantic related applications. |
IT 540 | E-Government | 3 |
---|---|---|
This course will cover the role in the delivery of government information and services, e-government relation to the political and to information policy, challenges to access and usage, the roles of database in providing e-government access and training, understanding of technologies supporting e-governance, case studies in electronic government. |
IT 541 | E-Learning System | 3 |
---|---|---|
This course covers the topics: concepts and principles of e-learning system, the theoretical underpinnings of the field, research and application literature, requirements for building a viable e-learning strategy, adaptation of students learning styles, cognitive factors underlying efficient use of e-learning technologies, knowledge management and other new forms of e-learning and relevant delivery technologies, including the Internet, course management systems, and video conferencing. |
IT 542 | E-health Applications | 3 |
---|---|---|
This course will cover the critical role of the e-Health information technology systems in the planning, operation and management of health care organizations, standards and interoperability, decision support systems, health informatics specialties, organizing health information, analysis and design, selection, implementation and evaluation of health information technologies in a variety of settings such as health systems, hospitals and medical practices. |
IT 543 | Usability and User Experience in Information Technology | 3 |
---|---|---|
This course covers the conceptual frameworks and applied methodologies for user-centered design and user experience research. Emphasis is placed on learning and practicing a variety of usability research methods/techniques such as scenario development, user profiling, tasks analysis, contextual inquiry, card sorting, usability tests, log data analysis, expert inspection and heuristic evaluation. |
IT 544 | Interactive Multimedia Application | 3 |
---|---|---|
The course covers an overview of the hypermedia/interactive multimedia technology through working with various hypermedia/interactive multimedia tools and applying them in developing interactive multimedia-based applications. |
IT 545 | E-Business | 3 |
---|---|---|
This course covers the topics: introduction to e-business, evolution of e-business, e-business activities, applications in e-business, e-business technology infrastructure, business process re-engineering, application of e-business strategic management; technical analysis, eCommerce, common techniques to enhance business processes; ethical, and regulatory environments for conducting e-business, e-business models. |
IT 546 | Arabic Computing | 3 |
---|---|---|
This course covers the topics: Introduction to Arabic language characteristics, Arabic character sets, standardization, Arabization systems, Arabic software tools, and programming languages, introduction to Arabic computations, challenges and future research in the area of Arabic computing. |
IT 547 | Open Source Technology | 3 |
---|---|---|
This course covers the following topics: open source history and ecosystem, understanding of Open Source and Free Software Licensing, Adaption of Open source Software, Producing Open Source Software, open source tools and techniques and future directions in open source movement. |
IT 548 | Information Visualization | 3 |
---|---|---|
This course will provide introduction of the relevant concepts, issues and practices in this diverse field including a brief history of data / information visualization; principles of visual literacy; an overview of contemporary systems and techniques used in information visualization; common applications of information visualization; and considerations in analyzing and evaluating applications in information visualization. |
IT 549 | IT Project Management | 3 |
---|---|---|
This course covers detailed topics of the basic concepts of IT project management, including initiating, planning, controlling, executing, and closing projects, managing IT project from inception to post implementation review, create a workable project plan, and project management within the budget and schedule, understanding customer behavior, The IT Infrastructure for E-Business. |
IT 596 | Graduation Project I | 3 |
---|---|---|
Students in the non-thesis option will normally complete their project in the last two terms of the program. Students will undertake an independent project in an area of Information Technology. Students should apply to the non-thesis option in their initial application rather than attempting to transfer to this option once registered in the program. The project supervisor must be a member of IT dept. A project report summarizing the work is to be submitted and the student is requested to deliver a (public presentation). This part is dedicated to the literature review, analysis and design of the project. |
IT 597 | Graduation Project II | 3 |
---|---|---|
Students should continue developing the project. This part is more dedicated to detailed design, implementation, and validation issues. A project report summarizing the work is to be submitted and the student is requested to deliver a (public presentation). |
IT 600 | Thesis | 3 |
---|---|---|
The student has to undertake research at depth level under the supervision of a faculty member from the IT department for a specific problem in the area of information technology. The student is expected to defend the outcomes of the research work in public and deliver a thesis in a format determined by the college. |
IT 999 | Practical Training | 2 |
---|---|---|
Students join a company or an IT center in a government or private sector on a full-time basis for at least 8 weeks in the last summer prior to their graduation. It may be for a longer time if taken on part-time basis. The aim of the practical training is to gain experience by applying knowledge and skills they acquire in the program in real-life and in team working. The training is evaluated by the training supervisor at the Organization and comprehensive reports are sent to the IT department. | Pre-requesite: 90 CHs |