Code | Name | Credit Hours | Pre-requisite | Course Specification | Short Description |
---|---|---|---|---|---|
CPIT210 | Computer Organization | 3 | CPCS202 | NCAAA Course Spec. |
View Short DescriptionThe objective of this course is to explain how computers are designed and how they work. Students are introduced to modern computer principles using a typical processor. They learn how efficient memory systems are designed to work closely with the processor, and how input/output (I/O) systems bring the processor and memory together with a wide range of devices. The course emphasizes system-level issues and understanding program performance. Topics include instructions sets, assembly language, internal data representation, computer arithmetic, processor data path and control, memory hierarchy, parallel processing. |
CPIT220 | Introduction to Information Technology | 3 | CPIT201 | NCAAA Course Spec. |
View Short DescriptionThis course provides the student with the essential knowledge required for a well-rounded understanding of the use of the computer as a tool to produce useful information in small and large work environments. The course allows the student to achieve an understanding of computer technology, computer hardware, computer software and how computers can be used to produce meaningful information. |
CPIT240 | Databases 1 | 3 | CPCS204 | NCAAA Course Spec. |
View Short DescriptionThe objective of this course is to introduce students to database management systems. Topics include Data, Information, File System, Database and Database Users, Database System Concepts and Architecture, Data Modeling using the Entity Relationship (ER) Model, The Relational Data Model and Relational Database Constraints, Functional Dependencies and Normalization for Relational Databases, The Relational Algebra and Relational Calculus, Relational Database Design by ER and EER to Relational Mapping, Disk Storage, Basic File Structure and Hashing, SQL-99 Schema Definition, Constraints, Queries and Views (DDL and DML). |
CPIT250 | System Analysis And Design | 3 | CPCS203 | NCAAA Course Spec. |
View Short DescriptionThis course teaches and trains the students to analyze and design Information Systems. It also teaches the tools that are used in the analysis and design process of complete electronic systems using scientific methods. |
CPIT251 | Software Engineering 1 | 3 | CPIT250 | NCAAA Course Spec. |
View Short DescriptionDescribes the evolving role of software engineering and software engineering principles and aspects. Describes the different process models: waterfall, prototype… etc. Describes how to manage a software project, which includes: software project management concepts, team organization, cost estimation, project scheduling, tracking, project planning, and risk management. Describes the requirement engineering, which includes: requirement elicitation, requirement analysis, requirement validation, requirement specification, and requirement documentation. Conduct a review of software requirements document using best practices to assess its quality. Use software tools to support the software project management and the requirement engineering definition. |
CPIT252 | Software Design Patterns | 3 | CPIT251 | NCAAA Course Spec. |
View Short DescriptionThe objective of this course is to study the main principles of software design patterns and their history and know when using them. The course aims also to understand the different categories of software design pattern manipulate and apply them in real world problems using java programming language. |
CPIT260 | Operating Systems | 3 | CPIT210 | NCAAA Course Spec. |
View Short DescriptionThe objective of this course is to provide a general overview of operating systems concepts and recent methodologies and techniques used in the field and their trades-offs, with various examples from the contemporary used systems. Topics include the basic structure of an operating system, its interaction with the hardware, software, and users, and the services it provides. The course illustrates different algorithms and techniques used in controlling, managing, and allocating various computer resources, such as CPU, memory, storage and I/O devices. It demonstrates the tuning of the operating system for maximizing the utilization and increasing the performance of the computer system. |
CPIT280 | Human-Computer Interaction | 3 | CPIT250 | NCAAA Course Spec. |
View Short DescriptionThe objective of this course is to familiarize students with the skills and concepts of Human-Computer Interaction (HCI), including the understanding of user needs, interface design and interface evaluation. Topics include an introduction to HCI, HCI goals, interaction types, design principles, cognitive framework (Attention, Perception, Learning & decision making), HCI design, data gathering & analysis, interface types, natural user interface & interaction framework. |
CPIT285 | Computer Graphics | 3 | CPCS203 | NCAAA Course Spec. |
View Short DescriptionThe objective of this course is to study the hardware and software principles of interactive raster graphics. Topics include are: introduction to computer graphics, vector and pixel display system, 2D and 3D modeling and transformations, viewing transformations, projections, rendering techniques, graphical software packages, and graphics systems. The student will use a standard computer graphics API to reinforce concepts and study fundamental computer graphics. |
CPIT305 | Advanced Programming | 3 | CPCS204 | NCAAA Course Spec. |
View Short DescriptionThis course covers advanced techniques in programming and software solutions using Java programming language like building Graphic User Interfaces, Event Handling, Multithreading, Networking and Database Connectivity. |
CPIT330 | IT Issues And Management | 3 | CPIT220 And CPIT250 | NCAAA Course Spec. |
View Short DescriptionThe objective of this course is to study the concepts and application of Agile and Scrum techniques to manage the software development projects. Topics include an introduction to agile project management, fundamental of scrums for dealing with uncertainty and risk, identifying the roles and their responsibilities, managing releases, tools for tracking and monitoring a project, planning an agile project, establishing the business reasons for the project, clarifying the business vision, identifying features for development in an iteration, fostering self-management within the development team, creating the optimal working environment, transitioning to self-management, running iterations, managing change, reviewing the iteration through a sprint review, closing the project using a sprint retrospective, applying agile throughout your organization, dealing with the legacy organization, and scaling for large projects. |
CPIT345 | Database Administration | 3 | CPIT240 | NCAAA Course Spec. |
View Short DescriptionDatabase administration skills covering installation, configuration and tuning a database, administering servers and server groups, managing and optimizing schemas, tables, indexes, and views, creating logins, configuring permissions, assigning roles and performing other essential security tasks, backup and recovery strategies, automation and maintenance. The students will have a hands-on training about installation, configuration, administration, performance, security, backup and recovery, and enterprise services of databases. |
CPIT370 | Computer Networks | 3 | CPIT260 | NCAAA Course Spec. |
View Short DescriptionThe objective of this course is to provide an introduction to computer networks and the ISO- layers reference model, which includes necessary protocols. This course also includes a detailed discussion of protocols in selected layers, such as data link layer, transport layer, network layer, application layer. |
CPIT380 | Multimedia Technologies | 3 | CPIT285 | NCAAA Course Spec. |
View Short DescriptionThis course is an introduction to multimedia technologies covering the basic elements of multimedia which are text, graphic, audio, video and animation. The course covers the basic digital representation of each one of these elements and the existing standards for their compression and storage. It Also covers the techniques and tools to design and implement multimedia applications. |
CPIT405 | Internet Applications | 3 | CPIT370 And CPIT252 | NCAAA Course Spec. |
View Short DescriptionThis course has a practical emphasis on the design and techniques for developing interactive internet-based applications, mainly focusing on web programming. Topics include HTML, client-side scripting language (JavaScript), server-side programming (PHP), and DBMS (MySql). Course work includes substantial programming homework and team-based projects. |
CPIT425 | Information Security | 3 | CPIT370 | NCAAA Course Spec. |
View Short DescriptionThis course considers the technical and operational issues of information and computer network security. The course investigates the threats to network security including schemes for breaking security, and techniques for detecting and preventing security violations. Emphasis will be on conventional and public-key cryptosystems and their applications to achieve various security goals. |
CPIT435 | Needs Assessment And Technology Evaluation | 2 | CPIT220 And CPIT250 | NCAAA Course Spec. |
View Short DescriptionThis course provides an understanding of the basic concepts of Project Management(The Nature of Information Technology Projects, Conceptualizing and Initializing the IT Project, An Information Technology Project Methodology (ITPM)), Project Management and Information Technology Context, Developing the Project Charter and Baseline Project Plan , Project Management Process Groups and Integration Management, The Human Side of Project Management( Human Resource Management, Stockholders), Project Scope Management(Defining and Managing Project Scope, The Work Breakdown Structure and Project Estimation), Project Time Management(The Project Schedule and Budget(Gantt Charts, Project Network Diagrams, PERT Method), Project Cost Management(Cost Estimation, EVA(Earned Value Analysis), Managing Project Risk. |
CPIT470 | Networks Administration | 3 | CPIT370 | NCAAA Course Spec. |
View Short DescriptionThis course covers Network Operating System, Networking Components and Devices, IP addressing and Sub-netting, Routing techniques, VLANs, Network troubleshooting and Security. It gives the necessary skills to administrate an existing Network. |
CPIT498 | Graduation Project 1 | 1 | 90 Credit Hours | NCAAA Course Spec. |
View Short DescriptionThis course is the first part of the graduation project. In this course the students integrate the knowledge areas of IT into a development based project in which they will deliver proposals, reports and oral presentations. The course topics cover planning, analysis and design phases of the project. |
CPIT499 | Graduation Project 2 | 3 | CPIT498 | NCAAA Course Spec. |
View Short DescriptionThis course is the second part of the graduation project. The course covers detail design, coding, testing and implementation of the project. |
Total Credits | 57 |