IT-M Program Overall Goals:
- To prepare students for IT multimedia positions in industry or government,
- To prepare students for graduate study in IT Multimedia, and
- To provide a solid foundation in IT Multimedia that will allow graduates to adapt effectively in a quickly changing field.
IT-M Program Educational Objectives:
- Apply knowledge of IT Multimedia to the development of multimedia systems.
- Apply acquired skills and multimedia tools to integrate different media components to create complete multimedia systems.
- Blend the artistic design creativity and technological proficiency in analysis, design and development of multimedia systems.
- Understand the social and ethical issues that arise in their work and deal with them professionally.
- Communicate effectively and critically in both written documents and oral presentations.
- Work effectively in a team.
- Appreciate the need for lifelong learning and adapt to rapid technological changes
IT-M Program Learning Outcomes
Upon completing the program requirements an ITMM graduate can:
- Apply knowledge of computing and mathematics appropriate to the program's student outcomes and to the discipline.
- Analyze a problem, and identify and define the computing requirements appropriate to its solution.
- Design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs.
- Function effectively on teams to accomplish a common goal.
- Understand the professional, ethical, legal, security and social issues and responsibilities.
- Communicate effectively with a range of audiences.
- Analyze the local and global impact of computing on individuals, organizations, and society.
- Recognize the need for and be able to engage in continuing professional development.
- Use current techniques, skills, and tools necessary for computing practice.
- Use and apply current technical concepts and practices in the core information technologies of human computer interaction, information management, programming, networking, and web systems and technologies.
- Identify and analyze user needs and take them into account in the selection, creation, evaluation and administration of computer-based systems.
- Effectively integrate IT-based solutions into the user environment.
- Understand the best practices and standards and their application.
- Assist in the creation of an effective project plan.
Graduate from the IT-Multimedia program will be prepared to pursue advanced degrees in related fields and seek careers as: Programmer, Application Designer, Application Developer, Systems Analyst, Data Mining Program Developer, Database Designer and Developer, Database Administrator, User Interface Designer, E-commerce Application Developer, Graphic designer, Game Designer and Developer, Product Design Specialist, Advertisement Designer, Web Developer, Audio/Video Production Specialist, Visual Effect Artist, Cinematic Artist, Technical Artist, 3D Tool Programmer, and Computer Animator.
The program is designed to satisfy the curricular requirements of the ACM/IEEE-CS curricular task force and other relevant professional accreditation bodies, such as CSAC/CAAB. A student undertaking this program should complete a total of 123 credits distributed as follows:
|BS in IT -Multimedia (123 credits)|||||||||||
| ||UR||CR||DR||PR||Total |
|Mandatory Core Credits||15||15||12||42||84|
|Electives Core Credits||9||-||-||15||24|
|Free Elective Credits||-||-||-||6||6|
I. University Requirements
The list of the University required courses and their descriptions are presented in the introductory pages of the College of Sciences section in this bulletin
II. College Requirements
The college requirements are 15 credit hours that should be taken by all the students in the College of Sciences. The following 11 credits are mandatory:
|1440181||Statistics for Sciences||3||None|
Students selects 4 credits from the following college requirements:
|1420101||Chemistry I ||4||None|
|1420102||Chemistry Lab I ||||Pre/Co: 1420101|
|1450101||General Biology I ||4||None|
|1450107||General Biology Lab I ||||Pre/Co: 1450101|
|1430115||Physics I ||4||None|
|1430116||Physics Lab I ||||Pre/Co: 1430115|
III. Department Requirements
The 21 credits of support courses are divided into 2 sets:
- 12 credits of General Information Technology core courses
- 9 credits of Support courses
The set of general IT core courses consists of the following 12 credits:
|1411263||Intro. to Database Management Systems||3||1411116|
|1412443||Human Computer Interaction||3||1411340; 1412245|
The 9 credits of support courses offered by other departments for IT-Multimedia students are:
|0303370||Project Management||3||0303240 or 1411263|
|0302170||Principles of Marketing||3|| |
|0202213||Critical Reading and Writing||3||202112|
IV. Program Requirements
The program requirements are divided into 4 sets:
- Multimedia compulsory core courses (42 credits)
- Multimedia program elective courses (15 credits)
- Support Courses (21 credits)
- General Free elective courses (6 credits)
The set of IT Multimedia core courses (42 credits) are the ones listed below:
|Course #||Course Title||CrHrs||Prerequisite|
|1410114||Problem Solving ||3|| |
|1412240||Graphics Design||3|| |
|1412244||Design and Authoring||3||1411100|
|1410214||Programming with Data Structures||3||1411116|
|1412394||Multimedia Junior Project ||2||1410214|
|1412340||2D/3D Computer Animation||3||1412245|
|1410361||OO Software Design and Implementation||3||1410214|
|1412399||CO-OP Summer Training ||0||Junior/Senior standing|
|1412341||3D Design for Web||3||1412245|
|1412444||Game Design and Development||3||1412245|
|1411459||Information Security||3||Senior Standing|
|1411465||Development of Web Applications||3||1411341, 1411263|
|1412495||Multimedia Senior Project ||4||Senior standing|
Multimedia elective courses (15 credits) are to be chosen from a list of courses offered by the Department. The support and core courses are preparatory courses which are designed to meet the breadth requirement in information technology. After completing the preparatory courses, students are to choose a total of 18 credits of multimedia elective courses from the following list:
|Course #||Course Title||CrHrs||Prerequisite|
|1411319||Programming Language Paradigms||3||1411214|
|1411330||Introduction To Artificial Intelligence||3||1411215, 1411279|
|1411370||Numerical Methods||3||1411116, 1412211|
|1411433||Introduction to Computer Vision & Image Processing||3||1411215 or 1410214|
|1411440||Introduction to Computer Graphics||3||1411214|
|1411445||IT Application in E-Commerce||3||1411341|
|1411458||Mobile Applications and Design||3||1411463|
|1411365||Advanced Database Systems||3||1411263|
|1411490||Topics in Computer Science I||3||Senior standing|
|1411491||Topics in Computer Science II||3||Senior standing|
|1411492||Special Topics in IT||3||Senior Standing|
Each student registered in the IT Multimedia is required to take 6 credits (2 courses) as general free elective courses. Such courses can be taken from the university's pool of courses at large upon the approval of the academic advisor. These courses are intended to broaden the knowledge of students by combining studies from IT Multimedia with studies from other academic disciplines. Appointment
The IT-Multimedia program encompasses 123 credits hours that are spread over eight semesters and could be completed in four years. The following distribution of courses by semester facilitates student's normal progression through the study plan.
|Year I, Semester 1 (18 Credits)|||||||
|0202112||English for Academic Purpose||3||None|
|1411100||Introduction to IT||3||None|
|Year I, Semester 2 (17 Credits)|||||||
|0302200||Fundamentals of Innovation and Entrepreneurship||3||None|
| ||University Elective – 1||3|| |
| ||College Requirement||4|| |
|Year 2, Semester 1 (15 Credits)|||||||
| ||University Elective - 2||3|| |
|1412244||Design and Authoring||3||1411100|
|1410214||Prog. with Data Structures||3||1411116|
|0202213||Critical Reading and Writing||3||2020112|
|Year 2, Semester 2 (16 Credits)|||||||
| ||University Elective - 3||3|| |
|1440181||Statistics for Sciences||3||None|
|1440182||Statistics for Science Lab||1||1440181|
|0302220||Principles of Marketing||3||None|
|1410361||OO Design and Implementation||3||1410214|
|Year 3, Semester 1 (14 Credits)|||||||
|1412394||Multimedia Junior Project||2||1410214|
|1411263||Intr. to DB Management Sys||3||1411116|
|1412340||2D\3D Comp. Animation||3||1412245|
| ||Program Elective - 1||3|| |
|Year 3, Semester 2 (15 Credits)|||||||
|1412341||3D Design for Web||3||1412245|
|1412443||Human –Comp. Interaction||3||1412245; 1411341|
| ||General Free Elective - 1||3|| |
|Year 4, Semester 1 (15 Credits)|||||||
|1411465||Development of Web App.||3||1411341; 1411263|
|1412444||Game Design and Dev.||3||1412245|
|0303370||Project Management||3||0303240 or 1411263|
| ||Program Elective – 2||3|| |
| ||Program Elective - 3||3|| |
|Year 4, Semester 2 (13Credits)|||||||
|1412495||Multimedia Senior Project||4||Senior Standing|
| ||Program Elective – 4||3|| |
| ||Program Elective - 5||3|| |
| ||General Free Elective - 2||3|| |
Courses in the proposed program that are offered in the Department of Computer Science start with (141X). The program of study contains courses that are offered by other departments as well as from outside the college. Consistent with the university policies, Computer Science courses in the IT multimedia program will be assigned numbers of the form (141a ABC) where:
Program in the Department
0: Common to more than one IT program
1: Computer Science
2: IT Multimedia
3: IT Network (future program)
4: IT Business (future program)
|A||Year (level)|| |
Areas (as follows):
1: Basic Skills
2: Programming Languages
3: Social, Ethical and Professional Issues
4: Artificial Intelligence
5: Graphics, Multimedia and Internet
6: Systems and Architecture
7: Database and Software Engineering
8: Theoretical Foundations
9: Special Topics, Seminars and Projects
|C||Course sequence in area|| |
Courses in the proposed IT multimedia program that are offered in the department of Computer Science start with (1412). The program of study contains courses that are offered by other departments as well as from outside the college. Consistent with the university policies, Computer Science courses in the program will be assigned numbers of the form (1412ABC).
A. Core Courses
Description of the core courses are given below:
1411100 Introduction to IT (English) (2-2:3)
The Course explains what a computer is and what it can (and can't) do; it clearly explains the basics of information technology, from multimedia PCs to the internet and beyond. It illustrates how digital devices and networks affect our lives, our world, and our future. In addition, the course is intended to equip students with the necessary skills to use computer and essential software applications effectively in order to better prepare them for their professional careers. Prerequisite: None.
1411116 Programming I (3-2:4)
This course introduces basic programming techniques with a high level programming language. Topics include general introduction to computers and numbering systems, program development process, variables, data types, expressions, selection and repetition structures, functions/procedures, text files, arrays, and pointers. Perquisite: None
1411263 Introduction to Database Management Systems (3-0:3)
This course explores how databases are designed, implemented, and used. The course emphasizes the basic concepts/terminology of the relational model and applications. The students will learn database design concepts, data models (the Entity-Relationship and the Relational Model), SQL functional dependencies and normal forms. The students will gain experience working with a commercial database management system. Prerequisite: 1411116 Programming I.
1411341 Web Programming (3-0:3)
Introduction to HyperText Markup Language (HTML5): Tags, headers, text style, fonts, line breaks, rules, linking, images, lists, tables, forms, and frames. Semantic tags, Canvas, Geolocation, JQuery, Drag and Drop. Dynamic HTML: Cascading Style Sheets: Inline styles, external style sheets, backgrounds, positioning elements, text flow and box model. Filters: Flip, grayscale, sepia, saturate, hue-rotate, invert, opacity, blur, brightness, contrast, drop-shadow. JavaScrip: A simple program, memory concepts, assignment operators, decision making, control structures, if-else, while, repetition, for, switch, do/while, functions, arrays. Object Model and Collections: all, children. Event Model: OnClick, OnLoad, OnError, OnMouseMove, OnMouseOver, OnMouseOut, OnFocus, OnBlur, OnSubmit, OnReset. Multimedia. DHTMLMenu builder. PHP and databases. Prerequisite: 1411116 Programming I.
1413250 Networking Fundamentals (3-0:3)
Foundation knowledge for computer networks and communications. Topics include basic network design, layered communications models, IP addressing and subnets, and industry standards for networking media and protocols, with an emphasis on TCP/IP protocol suite and Ethernet environments. Prerequisite: 1410214 Programming with Data Structures.
1412443 Human-Computer Interaction (3-0:3)
Introduction to concepts centered on Human-Computer Interaction from hardware and software perspectives. Topics include design principles, usability principles and engineering, solving user-centered problems, device interaction, and graphical user interface design (2D and 3D interfaces). Prerequisite: 1412245 Multimedia Programming and 1411341 Web Programming.
1410114 Problem Solving (3-0:3)
General methods of problem solving and principles of algorithmic design using flowcharts and pseudo-code. Applications will be drawn from different domains. Perquisite: None.
1412240 Graphic Design (2-2:3)
This course is concerned with the basic elements and concepts of design and typography. The hands-on nature adopted is the key to successfully attain the stated course objectives. The course combines practical exercises, workshops, presentations along with major theoretical foundations in the domain. Perquisite: None.
1412243 Interactive Multimedia (2-2:3)
Multimedia Definition, Multimedia in our life (Business, Education, Communication, Entertainment), Editing and generating media elements: text, images, audio and video, authoring tools and systems, multimedia tools and applications, Implementing and Broadcasting Multimedia elements into WWW. Prerequisite: 1411110 Introduction to IT
1412244 Design and Authoring (2-2:3)
Using multimedia authoring programs, students create interactive presentations for publication on local, mobile or web platform. Topics include advanced tools within the software programs, importing and controlling video and audio, importing graphics and animation. Also, the use of emerging platforms to create web-enabled interactive sites, apps, that accounts for the basics of contemporary concepts in HCI, interactivity and user experience design. Prerequisite: 1411110 Introduction to IT.
1412245 Multimedia Programming (3-0:3)
This course covers practical and advanced programming concepts in the context of multimedia software. Students will explore fundamental programming issues applied to the use and representation of sound, graphics, animation, and text. They will be introduced to the key ideas of event-driven programming and object-oriented programming using primarily Java as the programming language. They will work with sophisticated programming aids such as integrated development environments, along with the use of JFCs and/or large code libraries. Prerequisite: 1411116 Programming 1.
1410214 Programming with Data Structures (2-2:3)
This course introduces object oriented programming paradigm, classes and data abstraction; inheritance; templates; recursion; searching and sorting algorithms; linear data structures: lists, stacks, queues. Non-linear data structures: binary trees, and graphs. Prerequisite: 141116 Programming I.
1412394 Multimedia Junior Project (0-2:2)
This course introduces many skills and perspectives using Multimedia information technology. Topics will vary. Students work in a team to design and if required create a prototype pf a multimedia system. At the end students present the current status of the project and the final report. The main implementation of the project will continue in the Multimedia Senior Project course. Prerequisite: Junior Standing
1412340 2D/3D Computer Animation (3-0:3)
This course presents a number of concepts in 2D and 3D computer animation. The concepts of animation in both object space and view and lighting space (camera control, and dynamic lighting) will be covered. Fundamental principles of animation, major techniques for 2D and 3D animation: raster and vector animations, key-framing, tweening, morphing, linear and non-linear interpolation will be introduced. The concepts of 3D animation such as physics-based animation, particle system, along with 3D camera and lighting animation, forward and inverse kinematics for motion capture will be covered. Prerequisite: 1412245 Multimedia Programming.
1410361 Object Oriented Software Design and Implementation (3-0:3)
The course teaches the essential skills in object-oriented analysis and design in Universal Modeling Language (UML). The course introduces the students to the software life cycle, requirements, analysis, system design, and implementation. Prerequisite: 1410214 Programming with Data Structures.
1412399 CO-OP Summer Training (0-0:0)
This course aims to provide students with practical training, concentrating on their fields of study, and to enhance their abilities to communicate with industry, and real life projects. Summer Training Program provides students with knowledge, skills, abilities and opportunities required for success in their studies and workplace. Prerequisite: Junior Standing.
1412341 3D Design for Web (2-2:3)
This course covers a complete introduction to modeling, animating, and rendering while learning to build a 3D scene from plans and bring it to life. The course covers modeling, material creation, animation and global illumination lighting, and creating a more realistic virtual environment. Learn complex modeling techniques, customizing the user interface, scene composition, background photo compositing and material mapping. Prerequisite: 1412245 Multimedia Programming.
1412444 Game Design and Development (3-0:3)
How games function to create experiences, including rule design, play mechanics, game balancing, social game interaction and the integration of visual, audio, tactile and textual elements into the total game experience. Students will design and implement a game for desktop or mobile devices. Prerequisite: 1412245 Multimedia Programming.
1411459 Information Security (3-0:3)
Definition of Computer Security, CIA and DAD Triads. Access Control Methodologies, Subjects and Objects, Access Control Models. Security Policies, Security Administration Tools. Handling Security Incidents, Common Types of Attacks. Firewall Security, Perimeter Security Devices, Types of Firewalls. Network and Server Attacks and Penetration, Phases of Control, Methods of Taking Control. Cryptology, Secret-Key Cryptography, Bit Generators, History of ciphers, Data Encryption Standard, Advanced Encryption Standard. Number Theory, Primality, Integer Factorization, Congruence, Hash Functions. Public-Key Cryptography, trapdoor one-way functions, Secure Key-Exchange Protocol, different Cryptosystems, Digital Signatures, Database Security, Secret Sharing Scheme. Prerequisite: 1411215 Data Structures or 1410214 Programming With Data Structures.
1411465 Development of Web Applications (3-0:3)
1412495 Multimedia Senior Project (0-4:4)
This course is a continuation of the 1412394 Multimedia Junior Project. Student will finalize the project started in the previous semester. All projects are group projects. Generally, a group has two to three students. Under special conditions (e.g. limited number of students) a single student might be allowed to work on the project. Prerequisite: Senior Standing.
B. Core Elective Courses
Descriptions of the core electives are given below:
1411319 Programming Languages and Paradigms
This course covers the fundamental concepts of programming languages (PL) and paradigms. It focuses on the design issues of the various languages constructs and the criteria used for evaluating PL and PL constructs. It covers the role of programming languages and primary formal methods for describing the syntactic and semantics structure of PLs. It also covers the design issues for imperative languages and examines data abstractions which support Object Oriented Programming, Functional Programming, and Logical Programming. Prerequisite: 1411215 Data Structures.
1411330 Introduction to Artificial Intelligence (3-0:3)
This course will provide an introduction to the fundamental concepts and techniques in the field of artificial intelligence. Topics covered in the course include: problem solving and search, logic and knowledge representation, planning, reasoning and decision-making in the presence of uncertainty, and machine learning. Areas of application such as knowledge representation, natural language processing, expert systems, and robotics will be explored. AI programming languages (LISP/Prolog) will also be introduced. Prerequisite: 1411215 Data Structures and 1411279 Discrete Structures
1411352 Operating Systems (3-0:3)
This course covers the history of operating systems. Processes: IPC, process scheduling, process synchronization, and deadlock. I/O: principles of I/O hardware and software, disks and clocks. Memory management: Swapping, paging, virtual memory and page replacement algorithms. File systems: Examples of some popular operating systems such as Unix, Linux, and Windows. Prerequisite: 1411215 Data Structures.
1411355 Computer Architecture (3-0:3)
This course covers the core concepts of computer architecture design. The main focus is on key principles for high-performance and low-cost design. It covers in details logical design of computer systems. Topics include reduced instruction set computer architecture (RISC), using the MIPS central processor as an example, interface between assembly and high level programming constructs and hardware, interrupt systems, instruction and memory cache systems, parallelism, pipeline architecture and multiprocessors. Prerequisite: 1411252 Computer Organization & Assembly Language.
1411366 Software Engineering (3-0:3)
Follows the formal software life cycle from the requirement, specification, and design phases through construction of actual software. Topics include models for the software life cycle, object-oriented analysis and design, management of software projects, CASE tools, verification and testing techniques, software quality assurance, and issues related to maintenance and delivery. Prerequisite: 1411215 Data Structures.
1411370 Numerical Methods (3-0:3)
The objectives are to introduce basic principles and techniques of computational methods and their algorithms for solving real mathematical problems that arise in science and engineering. At the end of the course, the students should be able to understand the behavior of numbers when calculated by computers. In addition, students should know the theory and application of different numerical techniques to solve mathematical problems. Prerequisite: 1411116 Programming I or 1412211 Programming II
1411433 Introduction to Computer Vision and Image Processing (3-0:3)
Introduction to the basic concepts in computer vision and image processing: An introduction to low-level image analysis methods, including image formation, edge detection, feature detection, line fitting, and image segmentation. Camera models, Image transformations (e.g., warping, morphing, and mosaics) for image synthesis. Background subtraction and tracking, Motion and video analysis. Applications such as optical character recognition, action recognition or face recognition may also be introduced. Prerequisite: 1411215 Data Structures or 1410214 Programming With Data Structures.
1411440 Introduction to Computer Graphics (3-0:3)
This course presents an introduction on Hardware and software components of graphics systems, also it covers the following topics: Output and filled data primitives, OpenGL, geometric transformations, viewing pipeline, clipping, and windowing, viewing transformations, data structures and vector tools for graphics (lines, planes, dot product, cross product, visible surface detection and illumination models), 2D animations, and curves. Prerequisite: 1411215 Data Structures or 1410214 Programming With Data Structures.
1411441 Multimedia Technology (3-0:3)
The course emphasizes underlying concepts rather than how to use the current multimedia tools. Topics covered by the course include introduction to multimedia, multimedia authoring, image and video representation, color basics, fundamental concepts of video, basics of digital audio, lossless and lossy compression algorithms, image and video compression standard, and content-based image and video retrieval. Prerequisite: 1411215 Data Structures or 1410214 Programming With Data Structures.
1411445 IT Application in E-Commerce (3-0:3)
This course prepares students to understand e-commerce architecture, e-commerce models, their legal, ethical and social issues. They will also be able to design and develop web sites with dynamic web content, and to integrate web solutions into the organization's information system. The course focuses on many techniques for e-commerce applications such as displaying product catalogue, applying shopping carts, handling online transactions. Prerequisite: 1411341 Web Programming.
1411451 Computer Networks (3-0:3)
Network uses. Network components. Network classification and services. Network architectures. Network protocols and their performance. Study of specific protocols, methods, and algorithms for framing, flow control, error detection and correction, medium access, routing, congestion control, internetworking, addressing, connection establishment and release, multiplexing, and fragmentation. Overview of Internet application protocols, resources, and services. Prerequisite: 1411352 Operating Systems.
1411458 Mobile Applications & Design (3-0:3)
This course focuses on the fundamentals of mobile applications development. It covers mobile and wireless network technologies from a software developer's perspective. The students will be exposed to several different markup as well as the techniques that can be used to generate this technology for the wide range of wireless devices. Furthermore, students will gain hands on experience in developing mobile applications for iOS devices. Prerequisite: 1411215 Data Structures or 1410214 Programming With Data Structures.
1411365 Advanced Database Systems (3-0:3)
This course will build on the concepts introduced in 1411263. The students will be exposed to more advanced topics and implementation related aspects of database management systems such as object databases, XML data queryign, file structures, indexing, query optimization, transaction processing, concurrency control, and database recovery. Prerequisite: 1411263 Introduction to Database Management Systems.
1411474 Compiler Design (3-0:3)
This course introduces students to the theory and implementation of compiler construction. It covers symbol tables, lexical analysis, syntax analysis, semantic analysis and code generation. This course includes a substantial project component, in which students will construct and implement all stages of a compiler for a subset of a general purpose programming language. Prerequisite: 1411372 Formal Languages & Automata Theory.
1411490 Topics in Computer Science I (3-0:3)
This course involves special topics in Computer Science. The course usually introduces advanced/specialized areas that are not currently offered as regular courses in the computer Science curricula. The topic depends on the interest of the instructor and those of the senior students. Prerequisite: Senior Standing.
1411491 Topics in Computer Science II (3-0:3)
This course involves special topics in Computer Science. The course usually introduces advanced/specialized areas that are not currently offered as regular courses in the computer Science curricula. The topic depends on the interest of the instructor and those of the senior students. Prerequisite: Senior standing.
1411492 Special Topics in IT (3-0:3)
This course involves special topics in IT Multimedia. The course usually introduces advanced/specialized areas that are not currently offered as regular courses in the computer Science curricula. The topic depends on the interest of the instructor and those of the senior students. Prerequisite: Senior Standing.