0% found this document useful (0 votes)
149 views85 pages

بكالوريوس - تخصص برمجيات الحاسب

Uploaded by

SULTAN Sksa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
149 views85 pages

بكالوريوس - تخصص برمجيات الحاسب

Uploaded by

SULTAN Sksa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 85

Engineering of Computer and Information

KINGDOMKINGDOM OFARABIA
OF SAUDI SAUDI ARABIA
Technology
‫المملكة العربية السعودية‬
Technical andTechnical and Vocational
Vocational Training Training Corporation
Corporation ‫المؤسسة العامة للتدريب التقني والمهني‬
Directorate General
General Directorate of Curricula
for Curricula ‫اإلدارة العامة للمناهج‬
Computer Software

‫نسخة أولية‬

‫الخـطط التدريبية للكليات التقنية‬


Training Plans for Technical Colleges

Curriculum for Department of

Engineering of Computer and Information


Technology

Major
Computer Software

A Bachelor's Degree

Semesters
1439 H – 2018 G

1
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Index

No. Content Page


1. Index 1

2. Program Description 2

3. Study Plans 3

4. Brief Course Description 6

5. Courses Description 11

6. Appendix Laboratory Equipment, Workshops and Laboratories 82

7. List of Detailed Equipment for Each Laboratory, Workshop or Lab 82

8. References 83

1
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Program Description
The development and implementation of Software and Programming Solutions and technologies have
changed the way humans live. The tools of Information and Communication Technologies with the Smart
Technologies and Devices provide powerful tools to easy our life, do businesses more efficient and provide
quality services. However, the demand to create and develop more sophisticated programming solutions
and innovative software products continues to evolve, and remains crucial particularly for the Saudi
marketplace. The Bachelor of Computer Programming program comes in this critical time to enable the
students to gain the theoretical, practical, technical, professional and interpersonal abilities, as well as
problem solving and decision making skills, needed for working in different sectors of the Saudi
marketplace and for various Saudi companies in the area of Information and Communication Technologies.
This program aims to prepare professional computer and software programmers with the technical and
managerial capabilities and competencies to engage in the development of computer systems, software
applications, information systems, database applications, Smartphone applications, web services and
platforms, etc.

The courses in the Bachelor of Computer Programming focus on different core topics including
programming languages, software engineering and development, web technologies, Smartphone
technologies and applications, coding testing and security, etc. The skills gained by the students in the
Bachelor of Computer Programming will prepare them after graduation for a career in computer and
software programming industry, and prepare them for further studies at graduate and postgraduate degrees.
The graduates with the Bachelor of Computer Programming degree will be able to pursue a wide range of
careers with high rates of salaries including, but are not limited to: Computer Programmer, Information
System Programmer, Software Developer, System Developer, Software and Coding Tester, Software
Solutions Programmer, System Analyst, System Designer, Web Developer, Database Programmer,
Smartphone Applications Developer, Business Process Analyst, and other careers.
The Theoretical and Practical Tests and Graduation Projects Determine Learning Outcomes and
Trainee Levels for each program.
The training courses contain a theoretical part and a practical part. The practical part is tested as a
practical test and the theoretical part is a theoretical test with different evaluation methods.
The Bachelor Degree Graduate gets the seventh level in the Saudi Arabian Qualifications Framework
(SAQF).
Admission Requirements: The applicant must have a diploma in Computer Programming.

2
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Study Plan
Sixth Semester
Course No. of Units
No. Course Name Pre. Req
Code CRH L P T CTH

1 MATH 301 Mathematics -1 3 2 2 0 4


2 PHYS 301 Physics 3 2 2 0 4
3 ENGL 301 English Language -1 3 3 0 1 4
4 UACC 301 Principles Of Accounting 3 2 2 1 5
5 IPRG 313 Advanced computer Programming 4 3 2 0 5
Total 16 12 8 2 22
CRH:Credit Hours L:Lecture P:Practical T:Tutorial CTH:Contact Hours

Seventh Semester
Course No. of Units
No. Course Name Pre. Req
Code CRH L P T CTH

1 STAT 303 Statistics and Probability 3 3 0 1 4


2 MATH 303 Discrete Math MATH 301 3 2 2 0 4
3 IPRG 335 Advanced Web Programming 4 3 2 0 5
IT Terminologies and Technical
4 IPRG 382 2 2 0 1 3
Writing
5 IPRG 325 Algorithms Design & Data Structure 3 3 0 1 4
Total 15 13 4 3 20
CRH:Credit Hours L:Lecture P:Practical T:Tutorial CTH:Contact Hours

Eighth Semester
Course No. of Units
No. Course Name Pre. Req
Code CRH L P T CTH

1 ENGL 302 English Language -2 ENGL 301 3 3 0 1 4


2 INSA 351 Network Technologies -1 3 2 2 0 4
3 IPRG 473 Multimedia Systems Development 3 2 2 0 4
4 IPRG 443 Advanced Software Engineering IPRG 313 3 3 0 0 3
5 IPRG 472 Embedded system programming IPRG 313 3 2 2 0 4
Total 15 12 6 1 19
CRH:Credit Hours L:Lecture P:Practical T:Tutorial CTH:Contact Hours

3
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Ninth Semester
Course No. of Units
No. Course Name Pre. Req
Code CRH L P T CTH

1 IPRG 324 Database Management Systems 3 2 2 0 4


Advanced Smart Devices
2 IPRG 453 IPRG 313 3 2 2 0 4
Programming -1
3 IPRG 461 User Interface Design IPRG 443 3 2 2 0 4
Enterprise Resources Planning
4 IPRG 478 UACC 301 3 2 2 0 4
Systems - ERP
5 Elective Courses -1 3 2 2 0 4
Total 15 10 10 0 20
CRH:Credit Hours L:Lecture P:Practical T:Tutorial CTH:Contact Hours

Tenth Semester
Course No. of Units
No. Course Name Pre. Req
Code CRH L P T CTH

Advanced Smart Devices


1 IPRG 454 IPRG 453 3 2 2 0 4
Programming -2
2 IPRG 474 Software security IPRG 324 3 2 2 0 4
IPRG 453
3 IPRG 492 Graduation Project 4 2 4 0 6
IPRG 472
4 Elective Courses -2 3 2 2 0 4
5 Elective Courses -3 3 2 2 0 4
Total 16 10 12 0 22
CRH:Credit Hours L:Lecture P:Practical T:Tutorial CTH:Contact Hours

CRH L P T CTH
Total Number of Semesters Credit Units
77 57 40 6 103
Total of training Hours

16 * 103
1648

4
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Elective Courses

Elective Course 1
No. Course No. of Units
Course Name Pre. req
Code CRH L P T CTH

1 IPRG 484 Selected Topics 3 2 2 0 4


Software Testing and Quality
2 IPRG 483 IPRG 443 3 2 2 0 4
Assurance
CRH:Credit Hours L:Lecture P:Practical T:Tutorial CTH:Contact Hours

Elective Course 2
No. Course No. of Units
Course Name Pre. req
Code CRH L P T CTH

1 IPRG 475 Cloud computing IPRG 324 3 2 2 0 4


2 IPRG 476 Big Data Analytics IPRG 324 3 2 2 0 4
CRH:Credit Hours L:Lecture P:Practical T:Tutorial CTH:Contact Hours

Elective Course 3
No. Course No. of Units
Course Name Pre. req
Code CRH L P T CTH

1 IPRG 477 Data Mining IPRG 324 3 2 2 0 4


2 INSA 485 Internet of Things 3 2 2 0 4
CRH:Credit Hours L:Lecture P:Practical T:Tutorial CTH:Contact Hours

5
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Brief Course Description


Course Course Credit
Advanced computer Programming IPRG 313 4
Name Code Hours
This course focuses on Java program’s structure, constants, variables and built-in data
types. The arithmetic, assignment, increment and decrement operators. Classes and
object definition, UML representation of a class, declaration of objects (Instance
variables), primitive types and reference types. Relational and logical operators,
Description Boolean expressions, conditional statements, loop statements. Object oriented
principles, encapsulation and information hiding, methods and the message passing
principles, setters, and getters. Methods in depth, passing parameters, constructors,
setters. Arrays, usefulness of arrays, declaration of arrays, access to array elements,
operations on arrays.

Course Course Credit


Advanced Web Programming IPRG 335 4
Name Code Hours
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
Description technologies, services and business models in fixed and mobile networks. The course
will cover topics such as HTML, XML, Css, JavaScript, 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.

Course IT Terminologies and Technical Course Credit


IPRG 382 2
Name Writing Code Hours
This course introduces the professional communication and technical documentation
and writing a student will need to engage in the marketplace. The course focuses on
the production of accurate and clear technical communication and presentation of
materials to be accessible to audiences from different domains. Topics of interest
Description include the process of writing including planning, drafting, revising and editing
documentation. Computer concepts (digital basics, devices, networks, the web, social
networking, etc.), ethical and legal, collaboration, copyright, verbal and visual
information, software applications for technical writing, and other issues are also
included in this course.

Course Algorithms Design & Data Course Credit


IPRG 325 3
Name Structure Code Hours
This course enhances the programming skills of the students. It emphasizes the
importance of information hiding and how to use abstraction in good program design.
This course introduces the basic data structures and algorithm analysis to be used as
tools in designing problems solutions. This course includes: algorithm analysis and
design where students will be able to estimate algorithms growth rates and describe it
Description
using big O notation. Data structures includes: lists and linked-lists, stacks, queues,
priority queues, trees and its traversal, binary search trees, heaps, hash tables and
graphs and graphs’ algorithms. Also, important sorting and searching algorithms will
be discussed including: bubble sort, insertion sort, selection sort, merge sort, heap sort
and radix sort, sequential search and binary search.

6
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Course Course Credit


Multimedia Systems Development IPRG 473 3
Name Code Hours
The use of multimedia is growing rapidly and become unavoidable part in our daily
life. This course introduces the modern multimedia and its evolution. The course
focuses on the key components of multimedia technologies including text, graphics,
voice, video and animation. Principles, standards and technologies of multimedia
Description systems will be addressed in this course and students will gain hands-on experience
in this area. The course provides trends in the development, tools, techniques,
compression and decompression standards, and guidelines facilitating the planning,
design, production and implementation of multimedia. It also covers scanning process,
developing, editing and professional issues related to multimedia systems.

Course Course Credit


Advanced Software Engineering IPRG 443 3
Name Code Hours
This course follows Software Engineering course (at diploma degree) 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
Description
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.

Course Course Credit


Embedded System Programming IPRG 472 3
Name Code Hours
Applications of embedded systems appears in many areas surrounding us including
automotive systems, traffic control and safety, aircraft control systems, defense
systems, manufacturing, toys and games, energy management, robotics, medical
devices and other industry sectors. This course introduces the concepts of embedded
Description systems with focus on designing, interfacing, configuring and programming
embedded systems. Python language, which will be taught in this course, is used by
embedded developers in automating tests and writing frameworks that exchange data
over serial port to communicate with device firmware. This course prepares students
for cutting edge careers in both industry and research sectors.

Course Course Credit


Database Management Systems IPRG 324 3
Name Code Hours
This course introduces the concepts and terminologies of modern Data Base
Management Systems (DBMS). The course focuses on the concepts and using the
statements of the Structured Query Language (SQL) for the development of DBMS
and its applications towards building relational databases. The course also introduces
Description
the tools, techniques and methods for securing and protection the relational databases
with the administrative part of the DBMS. The students will need to practice in the
computer labs using SQL statements and query language to develop and manipulate
relational databases using a DBMS.

7
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Course Advanced Smart Devices Course Credit


IPRG 453 3
Name Programming -1 Code Hours
The widespread of cutting edge smart devices such as smart phones and tablets creates
opportunities in applications development market. This course enhances the
programming skills of the students to develop applications for Apple smart devices
Description such as iPhones and iPads. The course focuses on the latest iOS application
development with Swift which is a new programming language from Apple. This
course follows the application development processes including planning, analysis,
design, development & implementation, testing and maintenance.

Course Course Credit


User Interface Design IPRG 461 3
Name Code Hours
This course introduces advance features in user interface design by studying both
theoretical and practical issues in human-computer interfaces. These include
development awareness of various approaches to the design of contemporary user
interfaces, and to identify key principles by which effective contemporary user
Description
interfaces are designed. The course also addresses various interface issues that are
applicable to interactive systems such as user-centered interaction thinking and
methods of usability testing since there is a need to develop current and next-
generation interactive technologies.

Course Enterprise Resources Planning Course Credit


IPRG 478 3
Name Systems - ERP Code Hours
This course introduces the Enterprise Resources Planning (ERP) systems and the
computing paradigms considered by organizations. The focus will be on how
enterprise resources planning and information systems with their core modules
support accounting, financial, human resources and manufacturing business functions
Description and operations, theoretically and practically. Topics will also include ERP planning,
package selection, acquisition, development, integration with business processes and
other systems, deployment, and implementation. Technical architecture, security
issues related to ERP system and the application of analytical thinking and business
knowledge for problem solving and decision making are also included in this course.

Course Advanced Smart Devices Course Credit


IPRG 454 3
Name Programming -2 Code Hours
This course will be a complementary of Advanced Smart Devices Programming 1
course as it focuses on the hybrid application development for both android and iOS
smart devices. The course is aimed to enable students to ensure that their applications
are secure, scalable and high performing in various platforms. Ionic, which was built
Description on top of AngularJS and Apache Cordova, will be taught in this course as it offered a
complete solution for hybrid application development for smart devices. It is using
Web technologies such as CSS, HTML5, and Sass. Thus, this course provides students
with rich practical knowledge on hybrid application development for cross-platform
smart devices.

8
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Course Course Credit


Software Security IPRG 474 3
Name Code Hours
This course introduces the intersection of computer security and software engineering.
The course provides students with practical experience on building a software system,
and on security as part of software engineering process. Topics include computer
security, software and devices security, operating systems security, and security for
Description networks and databases. Further, due to the rapidly evolving threats, attacks, risks and
countermeasures in computing environments, this course provides best practices to
prevent malicious code execution, authenticate users, use encryption, protect privacy,
and implement firewalls; ultimately, to build software systems throughout a secure
lifecycles of system development and acquisition.

Course Course Credit


Graduation Project IPRG 492 4
Name Code Hours
This course introduces the students to a comprehensive experience for the
development of computer software or hardware system. The project duration is one
semester dedicated to finish the entire stages: investigation, analysis, design,
implementation, testing and changes. The students may work in small groups or teams,
Description and will be introduced to project management principles and practices. Students then
are to apply their technical skills in a major area of technologies to develop software,
hardware or on both to solve practical application or business problem. This may
include database, networking, security, smart technologies, or any other ICT area of
work.

Course Course Credit


Selected Topics IPRG 484 3
Name Code Hours
This course introduces the new trends, research, technological, software engineering
and programming approaches in the field of computer programming and technologies
with their applications in the marketplace. The focus will be on the latest and emerging
trends such as distributed systems and databases, electronic governments, Internet
Description
banking, smart technologies, smart government, and so on. Special attention is also
given to the latest analytical tools and applications including cloud computing, big
data, business intelligence, cyber-security, etc. the lecturer is to update these topics as
they appear in the domain of information and communication technologies.

Course Course Credit


Data Mining IPRG 477 3
Name Code Hours
This course offers an introduction to data mining concepts and techniques. The goal
is for the students to have a solid foundation in data mining that allows them to apply
data mining techniques to real-world problems and to conduct research and
Description
development in new data mining methods. Topics include data mining algorithms and
methods, association analysis, classification, data visualization, prediction techniques
and data clustering analysis.

9
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Course Course Credit


Big Data Analytics IPRG 476 3
Name Code Hours
This course introduces the fundamental concepts, technologies, and innovative
applications of Big Data systems with focus on distributed systems, distributed file
systems, virtualization technologies, programming models, resource management,
and analytics techniques that are needed for developing scalable and efficient next-
Description
generation applications for processing Big Data. Topics will also include bridging the
gap between analytics and data driven technologies, and performance evaluation and
benchmarking. Hands-on practice with Hadoop, MapReduce platforms and big data
databases like SQL and noSQL will be key components of this course.

Course Course Credit


Cloud Computing IPRG 475 3
Name Code Hours
This course introduces the fundamental concepts, technologies, and innovative
applications of Cloud Commuting systems, distributed systems and file systems, map-
reducing programming models, resource management, virtualization technologies,
Description programming models, cloud models and analytics techniques that are needed for
developing scalable and efficient next-generation applications for processing Big
Data. Hands-on experience with Hadoop, MapReduce platforms and big data
databases like SQL and noSQL will be key components of this course.

Course Software Testing and Quality Course Credit


IPRG 483 3
Name Assurance Code Hours
This course introduces the fundamentals, strategies and techniques for ensuring the
quality of software systems through the entire development and implementation
processes. The course provides students with hands-on and practical strategies and
experiences on testing software systems and the technologies used in this field. Topics
Description include software bugs and software faults, Model-Driven test design, Test Automation
and Execution, Criteria-Based Test Design, Testing Coverage Criteria such as Graph,
Logic and Syntax-Based Testing, assessing, managing and reporting the software
defectives, and managing, planning and implementing the software testing process
and project.

10
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Courses Description

11
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Advanced Computer Programming Course Code IPRG 313
Credit Hours 4 CTH 5
Prerequisites CRH L 3 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description:
This course focuses on Java program’s structure, constants, variables and built-in data types. The arithmetic,
assignment, increment and decrement operators. Classes and object definition, UML representation of a class,
declaration of objects (Instance variables), primitive types and reference types. Relational and logical operators,
Boolean expressions, conditional statements, loop statements. Object oriented principles, encapsulation and
information hiding, methods and the message passing principles, setters, and getters. Methods in depth, passing
parameters, constructors, setters. Arrays, usefulness of arrays, declaration of arrays, access to array elements,
operations on arrays.
Topics :
 OOP concepts
 Data Structure
 Networking in Java
 Java Applet
Experiments:

References :

Detailed of Theoretical Contents


No. Contents Hours
1 Object Oriented Programming Concepts 10
 Inheritance
 Overriding
 Polymorphism
 abstraction
 Encapsulation
 Interfaces
 Packages
2 Data Structure 7
 Linked lists
 Stacks
 Queues
3 Collection 7
 The collection interfaces
 The collection classes
 The collection algorithms
 Collection Methods
 Lists
4 Generic 6
 Generic Methods
 Bounded Type Parameters
 Generic Classes

12
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
5 Networking in Java 6
 URL Class
 URLConnection class
 InetAddress class
 Socket class
6 Java Applet 12
 Introduction
 The Applet Class
 HTML <applet> tag
 HTML Attribute Reference
 Getting Applet Parameters
 Application Conversion to Applet
 Event Handling
 Image Display
 Audio Play

JavaTM How to Program, Tenth edition


Textbook:
Java All=IN-ONE FOR DUMMIES, 4th Edition

Detailed of Practical Contents


No. Contents Hours

1 LAB 1: Object Oriented Programming 2

2 LAB 2: Object Oriented Programming 2

3 LAB 3: Object Oriented Programming 2

4 LAB 4: Object Oriented Programming 2

LAB 5: Data Structure


5 3

LAB 6: Data Structure


6 3

LAB 7: Collection
7 3

LAB 8: Generic
8 3

9 LAB 9: Networking 3

10 LAB 10: Networking 3

13
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours

11 LAB 11: Networking 2

LAB 12: Java Applet


12 2

LAB 13: Java Applet


13 2

JavaTM How to Program, Tenth edition


Textbook:
Java All=IN-ONE FOR DUMMIES, 4th Edition

14
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Advanced Web Programming Course Code IPRG 335
Credit Hours 4 CTH 5
Prerequisites CRH L 3 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :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 HTML, XML, Css, JavaScript, 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

Topics :
 HTML5
 Css3
 JavaScript
 PHP & MySql
Experiments:

References :

Detailed of Theoretical Contents


No. Contents Hours
1 HTML5 9
 Introduction to HTML5
 The Evolution of HTML5
 HTML5 Structure Elements, Forms, Audio and Video
 HTML5 Canvas
 HTML 5 APIs

2 Using Cascading Style Sheets Version 3 (CSS3) 9


 Introduction to CSS3
 CSS3 Selectors and Properties
 CSS3 Background, Colors, and Masks Properties
 CSS3 Border and Box Properties
 CSS3 Font and text Properties
 CSS3 Transformations, Transitions, Animations
 CSS3 User Interfaces
 Creating Menus and Buttons with CSS3
3 JavaScript 9
 HTML5 and JavaScript
 Embedding JavaScript into HTML5 Documents
 JavaScript Events
 JavaScript Functions
 JavaScript Methods
4 PHP 9
 Control statements
 Strings and numbers

15
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Arrays
 Functions
5 MySQL 6
 SQL statements for data manipulation
 Introduction to MySQL
 Connecting to MySQL
 Select statement
 Querying a Database in PHP

6 eXtensible Markup Language (XML) 6


 Basic Rules of XML
 Describing and Viewing XML Data
 Validating XML data with a Document Type Definition
 Styling XML data with CSS
Web Programming and Internet Technologies, 2nd edition. By Scobey.
Publisher: Jones & Bartlett LearningmRelease Date: September 2016 ISBN:
Textbook:
9781284070699

Detailed of Practical Contents


No. Contents Hours
1 Lab: HTML5 5

2 Lab: Css3 6

3 Lab: JavaScript 6

4 Lab: PHP 3

5 Lab: MySql 2

6 Lab: PHP & MySql 6

7 Lab: XML 4

Web Programming and Internet Technologies, 2nd edition. By Scobey.


Textbook: Publisher: Jones & Bartlett LearningmRelease Date: September 2016 ISBN:
9781284070699

16
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
IT Terminologies and Technical
Course Name Course Code IPRG 382
Writing
Credit Hours 2 CTH 3
Prerequisites CRH L 2 P 0 T 1
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :
This course introduces the professional communication and technical documentation and writing a
student will need to engage in the marketplace. The course focuses on the production of accurate and
clear technical communication and presentation of materials to be accessible to audiences from different
domains. Topics of interest include the process of writing including planning, drafting, revising and
editing documentation. Computer concepts (digital basics, devices, networks, the web, social networking,
etc.), ethical and legal, collaboration, copyright, verbal and visual information, software applications for
technical writing, and other issues are also included in this course.

Topics :
 Technical Communications and Documents
 Writing in Teams, Life Cycle and Management
 Academic and Workplace Research
 Computer and ICT Terminologies
 Verbal and Visual Information
 Ethical and Legal Issues

Experiments: if applicable it will support the course topics

References :
 Technical Communication, 11th Edition, 2015, Mike Markel, Bedford/St. Martin MacMillan,
ISBN-13: 978-1457673375
 New Perspectives on Computer Concepts 2016, Introductory, 18th Edition, 2016, June Jamrich
Parsons, Course Technology, ISBN: 9781305387751
 Technical Communication: Process and Product, 8th Edition, 2013, Sharon Gerson and Steven
Gerson, Pearson, ISBN-13: 978-0321864949

Detailed of Theoretical Contents


No. Contents Hours
1 Technical Communication and Writing 4
 Producing Technical Communication
 Characteristics of a Technical Document
 Excellence in Technical Documents
 Successful Workplace Communicators
 Writing and Documentation Tools
 Organizing and Outlining Documents
 Drafting Documents
 Modifying Documents
 Revising Documents
 Editing Documents
 Proofreading Documents

17
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
2 Writing Collaboratively 4
 Collaboration for Documentations
 Team Writing Assignment Modules
 Managing Projects
 Conducting Meetings
 Listening Effectively
 Team's Agenda
 Work-Scheduling
 Communicating Diplomatically
 Critiquing Colleagues
 Collaboration Tools
 Messaging Technologies
 Videoconferencing
 Shared Documents
 Gender and Culture issues
3 Planning the Documentation 4
 Understanding Audience and Purpose
 Audience Profile Sheet
 Characteristics of Audience
 Readers’ Attitudes and Expectations
 Interviewing People
 Searching Social Media
 Analyzing Social-media Data
 Communicating Across Cultures
 Using Graphics and Design
 Writing for Multiple Audiences
4 Academic and Workplace Research 4
 Research Process
 Academic Research
 Workplace Research
 Research Methods and Tools
 Primary and Secondary Research
 Social Media Resources
 Research Evaluation
 Observations and Demonstrations
 Inspections and Experiments
 Field Research
 Inquiries and Questionnaires
5 Organizing Technical Information 4
 Conventional Patterns of Organization
 Chronological Organization
 Spatial Organization
 General to Specific
 Important to Less Important
 Comparison and Contrast
 Classification and Partition
 Problem-Methods-Solution
 Cause and Effect

18
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
6 Verbal and Visual Information 4
 Context of Argument
 Working Within Constraints
 Crafting a Persuasive Argument
 Identifying the Elements of Argument
 Using the Right Kinds of Evidence
 Considering Opposing Viewpoints
 Appealing to Emotions Responsibly
 The Role of Culture in Persuasion
 Using Graphics
7 Emphasizing Important Information 4
 Writing Clear
 Informative Titles
 Informative Headings and Lists
 Effective Paragraph Lists
 Effective Sentence Lists
 Informative Paragraphs
 Structure Paragraphs
 Coherence Devices
8 Writing Correspondence 4
 Process of Writing
 Type of Correspondence
 Effective Correspondence
 Writing Letters, Memos, E-mails and Micro-blogs
 Writing Job-Application
 Crafting Personal Brand
 Writing Résumés
 Writing Research Proposals
 Budget Preparation
 Writing Informational Reports
 Writing Field Reports
 Writing Progress and Status Reports
 Writing Incident Reports, Meeting Minutes and Technical Reports
 Technical Communication, 11th Edition, 2015, Mike Markel, Bedford/St.
Martin MacMillan, ISBN-13: 978-1457673375
Textbook:
 Technical Communication: Process and Product, 8th Edition, 2013, Sharon
Gerson and Steven Gerson, Pearson, ISBN-13: 978-0321864949

19
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
1 Working with Digital Contents and Devices 3
 Digital Basics and Sounds
 Bitmap Graphics
 Vector Graphics
 Digital Video
 Device Basics
 Device Options
 Processors and Memory
 Storage, Input and Output
2 Working on the Web 2
 Web Basics
 Browsers
 HTML. HTTP
 Search Engines
 Web Pages
 Home Pages
3 Working with Software and Information Systems 3
 Software Basics and Operating Systems
 Applications and Apps
 Productivity Software
 File Management Utilities
 Information System Basics
 Enterprise Applications
 Systems Analysis
 Design and Implementation
 System Security
 Decisions Support
4 Communication Channels and Process 3
 Smartphones and Technical Communication
 Mobile Apps Communications
 Teamwork in Technical Communication
 Diverse and Dispersed Teams
 Effective Collaboration
 Collaborative Projects
 Conflict Resolution
 Communication Process
 Writing Process
 Prewriting, Rewriting and Goals
 Usability Testing
 Revision Techniques
5 Ethics in the Workplace 2
 Business Ethics
 Intellectual Property Types
 Copyrights and Patents
 Ethics of Intellectual Property Laws
 Protecting Intellectual Property
 Making Ethical Decisions

20
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
6 Research Documentation 3
 Conduct Research
 Secondary Research
 Primary Research
 Field Research
 Research Groups and Teams
 Research Meeting
 Research Reporting
 Research Writing Process
 Research Validity and Reliability
 Research Publishing
 New Perspectives on Computer Concepts 2016, Introductory, 18th Edition,
2016, June Jamrich Parsons, Course Technology, ISBN: 9781305387751
Textbook:
 Technical Communication: Process and Product, 8th Edition, 2013, Sharon
Gerson and Steven Gerson, Pearson, ISBN-13: 978-0321864949

21
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Algorithms Design & Data
Course Name Course Code IPRG 325
Structure
Credit Hours 3 CTH 4
Prerequisites CRH L 3 P 0 T 1
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :This course enhances the programming skills of the students. It emphasizes the
importance of information hiding and how to use abstraction in good program design. This course
introduce the basic data structures and algorithm analysis which are to be used as tools in designing
solutions to problems. This course includes: algorithm analysis and design where students will be able to
estimate algorithms growth rates and describe it using big O notation. Data structures includes: lists and
linked-lists, stacks, queues, priority queues, trees and its traversal, binary search trees, heaps, hash tables
and graphs and graphs’ algorithms. Also, important sorting and searching algorithms will be discussed
including: bubble sort, insertion sort, selection sort, merge sort, heap sort and radix sort, sequential search
and binary search.

Topics :
 Basics of algorithm analysis
 Arrays and Linked lists
 Stacks
 Queues
 Trees
 Sorting
 Searching
 Graphs algorithms

Experiments:

References :

Detailed of Theoretical Contents


No. Contents Hours
1 Complexity Analysis : 7
 Algorithm and its properties,
 Computational and Asymptotic Complexity,
 Complexity Notations – Big-Omega(Ω) and Theta(Ɵ) Notations,
 The Best, Average and Worst Case Analysis.
2 Arrays and Linked Lists: 5
 Practical uses of Arrays
 Singly Linked List and its basics operations – Insertion, Deletion and
Search,
 Circular Linked Lists,
 Double Linked Lists
3 Stacks: 5
 Introduction to Stack,
 Basic Operations on Stacks – clear,
 push and pop. Applications of Stack ,
4 Queues: 5
 Introduction to Queue,

22
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Basic operations on Queue – clear, enqueue, dequeue.
 Applications of Queue,
 Priority Queues.
5 Trees 7
 Trees definitions and properties
 Binary Trees
 Tree representation
6 Searching: 7
 Sequential search
 Binary Search,
7 Sorting: 6
 Sorting Techniques,
 Insertion Sort,
 Selection Sort,
 Bubble Sort,
 Quick Sort
 Merge Sort,
8 Graph Algorithms 6
 Definitions
 Topological Sort
 Shortest Path Algorithms Network Flow Problems
 Minimum Spanning Tree
Data Structure & Algorithms in Java, sixth edition
Textbook:
Data Structures and Algorithm Analysis in C++, Addison Wesley, 2014. M. A. Weiss

Detailed of exercise Contents


No. Contents Hours
1 Complexity Analysis : 2
 Algorithm and its properties,
 Computational and Asymptotic Complexity,
 Complexity Notations – Big-Omega(Ω) and Theta(Ɵ) Notations,
 The Best, Average and Worst Case Analysis.
2 Arrays and Linked Lists: 2
 Practical uses of Arrays
 Singly Linked List and its basics operations – Insertion, Deletion and
Search,
 Circular Linked Lists,
 Double Linked Lists
3 Stacks: 2
 Introduction to Stack,
 Basic Operations on Stacks – clear,
 push and pop. Applications of Stack ,
4 Queues: 2
 Introduction to Queue,
 Basic operations on Queue – clear, enqueue, dequeue.
 Applications of Queue,
 Priority Queues.

23
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of exercise Contents


No. Contents Hours
5 Trees 2
 Trees definitions and properties
 Binary Trees
 Tree representation
6 Searching: 2
 Sequential search
 Binary Search,
7 Sorting: 2
 Sorting Techniques,
 Insertion Sort,
 Selection Sort,
 Bubble Sort,
 Quick Sort
 Merge Sort,
8 Graph Algorithms 2
 Definitions
 Topological Sort
 Shortest Path Algorithms Network Flow Problems
 Minimum Spanning Tree

Data Structure & Algorithms in Java, sixth edition


Textbook:
Data Structures and Algorithm Analysis in C++, Addison Wesley, 2014. M. A. Weiss

24
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Multimedia Systems Development Course Code IPRG 473
Credit Hours 3 CTH 4
Prerequisites CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description:
The use of multimedia is growing rapidly and become unavoidable part in our daily life.This course
introduces the contemporary multimedia and its evolution. The course focuses on the key components of
multimedia technologies including text, graphics, voice, video and animation. Principles, standards and
current technologies of multimedia systems will be addressed in this course and students will gain hands-
on experience in this area. The course provides trends in the development, tools, techniques, compression
and decompression standards, and guidelines facilitating the planning, design, production, and
implementation of multimedia.This course covers scanning process, developing, editing and professional
issues related to multimedia systems.

Topics:
 Multimedia Revolution
 Digital Data
 Computer Hardware
 Computer Software
 Text
 Graphics
 Sound
 Video
 Animation
 Authoring & Multimedia Development
 Professional Issues in Multimedia Development

Experiments: if applicable it will support the course topics

Reference:
 An Introduction to Digital Multimedia, T. M. Savage and K. G. Vogel, Second Edition, Jones
and Barlett Learning, 2014, ISBN: 9781449688394.

Detailed of Theoretical Contents


No. Contents Hours
1 Multimedia Revolution 3
 Nature of a revolution
 Definition of modern multimedia
 Forms of multimedia
 Origins of multimedia
 Visionaries of multimedia
 Potential of digital media
2 Digital Data 3
 Elements of Digital Media
 Digital Codes
 Digital Files
 Digitization Process

25
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Compression for Digital Media
 Advantages of Digital Media
 Challenges of Digital Media
3 Computer Hardware 3
 Components of a Computer System
 Types of Computer Systems
 Computer Platforms
 Hardware Basics
 Network Fundamentals
4 Computer Software 3
 Main Categories of Software
 Functions of The Operating System
 Types of Programming Languages
 Software for Multimedia Development
5 Text 3
 Text tradition.
 Codes for computer text
 Font technologies
 Multimedia text
 Guidelines for use of text in multimedia
6 Graphics 3
 Key Elements of Traditional Graphics
 Features and Uses of Computer Graphics
 Bitmapped Images
 Vector-Drawn Images
 3-D Graphics
 Guidelines for Using Graphics in Multimedia
7 Sound 2
 Nature of Sound
 Traditional Sound Reproduction
 Digital Sound
 Sampled
 Synthesized
 Advantages of Digital Sound
 Guidelines for Digital Sound in Multimedia
8 Video 3
 Digital Video
 Quality Factors
 Compression Strategies
 File Formats
 Create Original Video
 Digital Video Camera Considerations
 Guidelines for Video in Multimedia
9 Animation 3
 Animation Basics
 Traditional Animation Techniques
 2-D Animation Techniques

26
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 3-D Animation
 Guidelines for Animation in Multimedia
10 Authoring & Multimedia Development 3
 Approaches of Integrating Media Elements
 Authoring Metaphors
 Authoring Process
 Guidelines to Select an Authoring Application
 Requirements of Multimedia Development
 Team Members
 Development Plan
11 Professional Issues in Multimedia Development 3
 Definition and Characteristics of a Profession
 Elements of A Professional Code of Ethics
 Copyright
 Challenges Created by The Digital Revolution
 Digital Rights Management
 Challenges and Opportunities
 Computer Networking: A Top-Down Approach, 2017, James Kurose and Keith Ross,
Textbook:
7th Edition, Pearson, ISBN-13: 978-0133594140

Detailed of Practical Contents


No. Contents Hours
1 Digital Data& Computer Software 4
 Elements of Digital Media
 Digital Codes
 Digital Files
 Digitization Process
 Compression for Digital Media
 Software for Multimedia Development
2 Text 4
 Text tradition.
 Codes for computer text
 Font technologies
 Multimedia text
 Guidelines for use of text in multimedia
3 Graphics 5
 Key Elements of Traditional Graphics
 Features and Uses of Computer Graphics
 Bitmapped Images
 Vector-Drawn Images
 3-D Graphics
 Guidelines for Using Graphics in Multimedia
4 Sound 4
 Nature of Sound
 Traditional Sound Reproduction
 Digital Sound

27
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
 Sampled
 Synthesized
 Advantages of Digital Sound
 Guidelines for Digital Sound in Multimedia
5 Video 5
 Digital Video
 Quality Factors
 Compression Strategies
 File Formats
 Create Original Video
 Digital Video Camera Considerations
 Guidelines for Video in Multimedia
6 Animation 5
 Animation Basics
 Traditional Animation Techniques
 2-D Animation Techniques
 3-D Animation
 Guidelines for Animation in Multimedia
7 Authoring & Multimedia Development 5
 Approaches of Integrating Media Elements
 Authoring Metaphors
 Authoring Process
 Guidelines to Select an Authoring Application
 Requirements of Multimedia Development
 Team Members
 Development Plan

 Computer Networking: A Top-Down Approach, 2017, James Kurose and Keith Ross,
Textbook:
7th Edition, Pearson, ISBN-13: 978-0133594140

28
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Advanced Software Engineering Course Code IPRG 443
Credit Hours 3 CTH 3
Prerequisites IPRG 313 CRH L 3 P 0 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :This course follows Software Engineering course (at diploma degree) 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.
Topics :
 System Analysis & Design Stages
 Software Testing
 Software Evolution
 Software reuse
 Software management

Experiments:

References :

Detailed of Theoretical Contents


No. Contents Hours
1 Planning 6
 Identifying and Selecting Development Projects
Process of identifying and selecting development projects
Corporate Strategic Planning
Information System Planning
 Initiating and Planning Systems Development Projects
The process of Initiating and Planning Information Systems
Development Projects
Assessing Project Feasibility
Building and Reviewing the Baseline Project Plan
2 Analysis 8
 Determing Software Requirements
Performibng Requirements Detemination
Traditional Methods
Contemporary Methods
Radical methods
Requierments Management Tools
Requieremnt Determenation Using Agile Methodologies
 Analyzing Software Process Requirements
Process Modiling
Data Flow Diagramming Mechanics
 Object-Oriented Analysis & Design
Use cases
Activity Digram

29
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
Sequence diagram
 Analyzing System Data Requirements
 Object-Oriented Analysis & Design
Object modeling-class diagram
3 Design 8
 Database Design
Process of database design
Relational database design
Normalization
Transforming ER diagram into relations
Merging Relations
Logical database design
Physical database design
 Forms & Report Design
Process of Forms & Report
Formatting Forms & Report
Assessing Usability
 Interface & Dialogue Design
Process of Interface & Dialogue Design
Interaction methods and Devices
Designing interfaces
Designing dialogues
4 Implementation and Maintenance 8
 Implementing The System
System implementation
Software application testing
Installation
System Documentation
Training and supporting users
Organizational issues in System implementation
 Maintaining The System
Process of Maintaining The System
Conducting system maintenance
Web site maintenance
5 Software Testing 3
 Development testing
 Test-driven development
 Release testing
 User testing
6 Software Evolution 3
 Evolution processes
 Legacy systems
 Software maintenance
7 Software Reuse 3
 The reuse landscape
 Application frameworks
 Software product lines
 Application system reuse

30
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
8 Software management 6
 Project management
 Project planning
 Quality management
 Configuration management
Software Engineering, 10 Edition,
Textbook:
Modern System Analysis and Design.

31
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Embedded System Programming Course Code IPRG 472
Credit Hours 3 CTH 4
Prerequisites IPRG 313 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description:

Applications of embedded systems appears in many areas surrounding us including automotive systems,
traffic control and safety, aircraft control systems, defense systems, manufacturing, toys and games,
energy management, robotics, medical devices and other industry sectors. This course introduces the
concepts of embedded systems and focuses on basics of designing, interfacing, configuring, and
programming embedded systems. Python language, which will be taught in this course, is used by
embedded developers in automating tests and writing frameworks that exchange data over serial port to
communicate with device firmware. This course prepares students for cutting edge careers in both
industry and research sectors.

Topics
 An Introduction to Python
 Basic Python Syntax
 Language Components
 Collections
 Functions
 Modules
 Exceptions
 Input and Output
 Classes in Python
 Writing GUIs in Python
 Python and CGI Scripts
 Network Programming
 Embedded System Concepts
Experiments: If applicable, it will support the course topics.
References:
 Needham, Timothy C., Python: For Beginners: A Crash Course Guide To Learn Python in 1
Week (coding, programming, web-programming, programmer), 2017.

Detailed of Theoretical Contents


No. Contents Hours
1 An Introduction to Python 3
 Introduction
 A Brief History of Python
 Python Versions
 Installing Python
 Environment Variables
 Executing Python from the Command Line
 IDLE
 Editing Python Files
 Python Documentation
 Getting Help

32
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Dynamic Types
 Python Reserved Words
 Naming Conventions
2 Basic Python Syntax 3
 Basic Syntax
 Comments
 String Values
 String Methods
 The format Method
 String Operators
 Numeric Data Types
 Conversion Functions
 Simple Output
 Simple Input
 The % Method
 The print Function
3 Language Components 2
 Indenting Requirements
 The if Statement
 Relational and Logical Operators
 Bit Wise Operators
 The while Loop
 break and continue
 The for Loop
4 Collections 3
 Introduction
 Lists
 Tuples
 Sets
 Dictionaries
 Sorting Dictionaries
 Copying Collections
 Summary
 Threading text
 Changing number of columns
 Changing text alignment
 Character style
 Find and Replace and Spell check
 Text on a path
5 Functions 3
 Introduction
 Defining Your Own Functions
 Parameters
 Function Documentation
 Keyword and Optional Parameters
 Passing Collections to a Function
 Variable Number of Arguments

33
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Scope
 Functions -
 Passing Functions to a Function
 map
 filter
 Mapping Functions in a Dictionary
 Lambda
 Inner Functions
 Closures
6 Modules 2
 Modules
 Standard Modules - sys
 Standard Modules - math
 Standard Modules - time
 The dir Function
7 Exceptions 2
 Errors
 Runtime Errors
 The Exception Model
 Exception Hierarchy
 Handling Multiple Exceptions
 raise
 assert
8 Input and Output 3
 Introduction
 Data Streams
 Creating Your Own Data Streams
 Access Modes
 Writing Data to a File
 Reading Data from a File
 Additional File Methods
 Using Pipes as Data Streams
 Handling IO Exceptions
 Working with Directories
 Metadata
 The pickle Module
9 Classes in Python 3
 Classes in Python
 Principles of Object Orientation
 Creating Classes
 Instance Methods
 File Organization
 Special Methods
 Class Variables
 Inheritance
 Polymorphism
 Type Identification

34
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Custom Exception Classes
 Compound path
 Slicing a path with scissor
 Adding end shape to open path
 Creating texture effects
 Inline graphics
10 Writing GUIs in Python 2
 Introduction
 Components and Events
 An Example GUI
 The Tk Widget
 Button Widgets
 Entry Widgets
 Button Widgets
 Entry Widgets
 Text Widgets
 Checkbutton Widgets
 Radiobutton Widgets
 Listbox Widgets
 Frame Widgets
 1 Menu Widgets
 Toplevel Widgets
 Dialogs
11 Python and CGI Scripts 2
 What is CGI
 HTML
 HTML Forms
 A Guestbook Application
 What Can Go Wrong!
 HTML Tables
 The CGI Script
 Rendering of the Script
12 Network Programming 2
 Networking Fundamentals
 The Client/Server Model
 The socket Module
 A Client Program
 A Server Program
 Maintaining consistency
 Synchronizing book document
 Updating table of content
 Indexing the book
13 Embedded System Concepts 2
 Python SERIAL libraries
 Python AUDIO libraries
 Python Bluetooth libraries
 Python GPIO libraries

35
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Python FIRMATA libraries
 Python Camera libraries
 Python & Node.JS
 Python & MQTT

Needham, Timothy C., Python: For Beginners: A Crash Course Guide To Learn Python in 1
Textbook: Week (coding, programming, web-programming, programmer), 2017.

Detailed of Practical Contents


No. Contents Hours
1 An Introduction to Python 3
 Introduction
 A Brief History of Python
 Python Versions
 Installing Python
 Environment Variables
 Executing Python from the Command Line
 IDLE
 Editing Python Files
 Python Documentation
 Getting Help
 Dynamic Types
 Python Reserved Words
 Naming Conventions
2 Basic Python Syntax 3
 Basic Syntax
 Comments
 String Values
 String Methods
 The format Method
 String Operators
 Numeric Data Types
 Conversion Functions
 Simple Output
 Simple Input
 The % Method
 The print Function
3 Language Components 2
 Indenting Requirements
 The if Statement
 Relational and Logical Operators
 Bit Wise Operators
 The while Loop
 break and continue
 The for Loop

36
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
4 Collections 3
 Introduction
 Lists
 Tuples
 Sets
 Dictionaries
 Sorting Dictionaries
 Copying Collections
 Summary
 Threading text
 Changing number of columns
 Changing text alignment
 Character style
 Find and Replace and Spell check
 Text on a path
5 Functions 3
 Introduction
 Defining Your Own Functions
 Parameters
 Function Documentation
 Keyword and Optional Parameters
 Passing Collections to a Function
 Variable Number of Arguments
 Scope
 Functions -
 Passing Functions to a Function
 map
 filter
 Mapping Functions in a Dictionary
 Lambda
 Inner Functions
 Closures
6 Modules 2
 Modules
 Standard Modules - sys
 Standard Modules - math
 Standard Modules - time
 The dir Function
7 Exceptions 2
 Errors
 Runtime Errors
 The Exception Model
 Exception Hierarchy
 Handling Multiple Exceptions
 raise
 assert

37
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
8 Input and Output 3
 Introduction
 Data Streams
 Creating Your Own Data Streams
 Access Modes
 Writing Data to a File
 Reading Data from a File
 Additional File Methods
 Using Pipes as Data Streams
 Handling IO Exceptions
 Working with Directories
 Metadata
 The pickle Module
9 Classes in Python 3
 Classes in Python
 Principles of Object Orientation
 Creating Classes
 Instance Methods
 File Organization
 Special Methods
 Class Variables
 Inheritance
 Polymorphism
 Type Identification
 Custom Exception Classes
 Compound path
 Slicing a path with scissor
 Adding end shape to open path
 Creating texture effects
 Inline graphics
10 Writing GUIs in Python 2
 Introduction
 Components and Events
 An Example GUI
 The Tk Widget
 Button Widgets
 Entry Widgets
 Button Widgets
 Entry Widgets
 Text Widgets
 Checkbutton Widgets
 Radiobutton Widgets
 Listbox Widgets
 Frame Widgets
 1 Menu Widgets
 Toplevel Widgets
 Dialogs

38
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
11 Python and CGI Scripts 2
 What is CGI
 HTML
 HTML Forms
 A Guestbook Application
 What Can Go Wrong!
 HTML Tables
 The CGI Script
 Rendering of the Script
12 Network Programming 2
 Networking Fundamentals
 The Client/Server Model
 The socket Module
 A Client Program
 A Server Program
 Maintaining consistency
 Synchronizing book document
 Updating table of content
 Indexing the book
13 Embedded System Concepts 2
 Python SERIAL libraries
 Python AUDIO libraries
 Python Bluetooth libraries
 Python GPIO libraries
 Python FIRMATA libraries
 Python Camera libraries
 Python & Node.JS
 Python & MQTT

Needham, Timothy C., Python: For Beginners: A Crash Course Guide To Learn Python in 1
Textbook: Week (coding, programming, web-programming, programmer), 2017.

39
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Database Management Systems Course Code IPRG 324
Credit Hours 3 CTH 4
Prerequisites CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :
This course introduces the concepts and terminologies of modern Data Base Management
Systems (DBMS). The course focuses on the concepts andusing the statements of the
Structured Query Language (SQL) for the development of DBMS and its applications
towards building relational databases. Thecourse also introduces the tools, techniques and
methods for securing and protection the relational databases with the administrative part
of the DBMS. The students will need to practice in the computer labs using SQL
statements and query language to develop and manipulate relational databases using a
DBMS.

Topics :
 the Oracle Database Architecture
 Installing your Oracle Software
 Creating an Oracle Database
 Managing the Oracle Database Instance
 Manage the ASM Instance
 Configuring the Oracle Network Environment
 Managing Database Storage Structures
 Administering User Security
 Implementing Oracle Database Auditing
 Database Maintenance
 Performance Management
 Backup and Recovery Concepts
Experiments: if applicable it will support the course topics

References :
 Beginning Oracle Database 11g Administration: From Novice to Professional (Expert's Voice in
Oracle) 1st ed. Edition, ISBN-13: 978-1590599686ISBN-10: 1590599683.

Detailed of Theoretical Contents


No. Contents Hours
1 Exploring the Oracle Database Architecture 2
 Oracle Database Architecture Overview
 Oracle ASM Architecture Overview
 Process Architecture
 Memory structrues
 Logical and physical storage structures
 ASM storage components
2 Installing your Oracle Software 2
 Tasks of an Oracle Database Administrator
 Tools Used to Administer an Oracle Database
 Installation: System Requirements
 Oracle Universal Installer (OUI)

40
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Installing Oracle Grid Infrastructure
 Installing Oracle Database Software
 Silent Install
3 Creating an Oracle Database 3
 Planning the Database
 Using the DBCA to Create a Database
 Password Management
 Creating a Database Design Template
 Using the DBCA to Delete a Database
4 Managing the Oracle Database Instance 3
 Start and stop the Oracle database and components
 Use Oracle Enterprise Manager
 Access a database with SQLPlus
 Modify database installation parameters
 Describe the stages of database startup
 Describe database shutdown options
 View the alert log
 Access dynamic performance views
5 Manage the ASM Instance 3
 Set up initialization parameter files for ASM instance
 Start up and shut down ASM instances
 Administer ASM disk groups
6 Configuring the Oracle Network Environment 3
 Use Enterprise Manager to create and configure the Listener
 Enable Oracle Restart to monitor the listener
 Use tnsping to test Oracle Net connectivity
 Identify when to use shared servers and when to use dedicated servers
7 Managing Database Storage Structures 3
 Storage Structures
 How Table Data Is Stored
 Anatomy of a Database Block
 Space Management in Tablespaces
 Tablespaces in the Preconfigured Database
 Actions with Tablespaces
 Oracle Managed Files (OMF)
8 Administering User Security 3
 Database User Accounts
 Predefined Administrative Accounts
 Benefits of Roles
 Predefined Roles
 Implementing Profiles
9 Implementing Oracle Database Auditing 2
 Describe DBA responsibilities for security
 Enable standard database auditing
 Specify audit options
 Review audit information
 Maintain the audit trail

41
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
10 Database Maintenance 2
 Manage optimizer statistics
 Manage the Automatic Workload Repository (AWR)
 Use the Automatic Database Diagnostic Monitor (ADDM)
 Describe and use the advisory framework
 Set alert thresholds
 Use server-generated alerts
 Use automated tasks
11 Performance Management 3
 Performance Monitoring
 Managing Memory Components
 Enabling Automatic Memory Management (AMM)
 Automatic Shared Memory Advisor
 Using Memory Advisors
 Dynamic Performance Statistics
 Troubleshooting and Tuning Views
 Invalid and Unusable Objects
12 Backup and Recovery Concepts 3
 Part of Your Job
 Statement Failure
 User Error
 Understanding Instance Recovery
 Phases of Instance Recovery
 Using the MTTR Advisor
 Media Failure
 Archive Log Files
 Backup Solutions: Overview
 Oracle Secure Backup
 User-Managed Backup
 Terminology
 Recovery Manager (RMAN(
 Configuring Backup Settings
 Backing Up the Control File to a Trace File
 Monitoring the Flash Recovery Area

Database Systems: Design, Implementation, & Management, 12th Edition, Carlos


Textbook:
Coronel and Steven Morris, Course Technology, ISBN-13: 978-1305627482.

42
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
1 Exploring the Oracle Database Architecture 2
 Oracle Database Architecture Overview
 Oracle ASM Architecture Overview
 Process Architecture
 Memory structrues
 Logical and physical storage structures
 ASM storage components
2 Installing your Oracle Software 2
 Tasks of an Oracle Database Administrator
 Tools Used to Administer an Oracle Database
 Installation: System Requirements
 Oracle Universal Installer (OUI)
 Installing Oracle Grid Infrastructure
 Installing Oracle Database Software
 Silent Install
3 Creating an Oracle Database 3
 Planning the Database
 Using the DBCA to Create a Database
 Password Management
 Creating a Database Design Template
 Using the DBCA to Delete a Database
4 Managing the Oracle Database Instance 3
 Start and stop the Oracle database and components
 Use Oracle Enterprise Manager
 Access a database with SQLPlus
 Modify database installation parameters
 Describe the stages of database startup
 Describe database shutdown options
 View the alert log
 Access dynamic performance views
5 Manage the ASM Instance 3
 Set up initialization parameter files for ASM instance
 Start up and shut down ASM instances
 Administer ASM disk groups
6 Configuring the Oracle Network Environment 3
 Use Enterprise Manager to create and configure the Listener
 Enable Oracle Restart to monitor the listener
 Use tnsping to test Oracle Net connectivity
 Identify when to use shared servers and when to use dedicated servers
7 Managing Database Storage Structures 3
 Storage Structures
 How Table Data Is Stored
 Anatomy of a Database Block
 Space Management in Tablespaces
 Tablespaces in the Preconfigured Database
 Actions with Tablespaces
 Oracle Managed Files (OMF)
8 Administering User Security 3
 Database User Accounts

43
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
 Predefined Administrative Accounts
 Benefits of Roles
 Predefined Roles
 Implementing Profiles
9 Implementing Oracle Database Auditing 2
 Describe DBA responsibilities for security
 Enable standard database auditing
 Specify audit options
 Review audit information
 Maintain the audit trail
10 Database Maintenance 2
 Manage optimizer statistics
 Manage the Automatic Workload Repository (AWR)
 Use the Automatic Database Diagnostic Monitor (ADDM)
 Describe and use the advisory framework
 Set alert thresholds
 Use server-generated alerts
 Use automated tasks
11 Performance Management 3
 Performance Monitoring
 Managing Memory Components
 Enabling Automatic Memory Management (AMM)
 Automatic Shared Memory Advisor
 Using Memory Advisors
 Dynamic Performance Statistics
 Troubleshooting and Tuning Views
 Invalid and Unusable Objects
12 Backup and Recovery Concepts 3
 Part of Your Job
 Statement Failure
 User Error
 Understanding Instance Recovery
 Phases of Instance Recovery
 Using the MTTR Advisor
 Media Failure
 Archive Log Files
 Backup Solutions: Overview
 Oracle Secure Backup
 User-Managed Backup
 Terminology
 Recovery Manager (RMAN(
 Configuring Backup Settings
 Backing Up the Control File to a Trace File
 Monitoring the Flash Recovery Area

Oracle 12c: SQL, 2015, 3rd Edition, Joan Casteel, Course Technology, ISBN-13: 978-
Textbook:
1305251038

44
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Advanced Smart Devices
Course Name Course Code IPRG 453
Programming -1
Credit Hours 3 CTH 4
Prerequisites IPRG 313 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description:
The widespread of cutting edge smart devices such as smart phones and tablets creates opportunities in
applications development market. This course enhances the programming skills of the students to develop
applications for Apple smart devices such as iPhones and iPads. The course focuses on the latest iOS
application development with Swift which is a new programming language from Apple. This course
follows the application development processes including planning, analysis, design, development &
implementation, testing and maintenance.

Topics
 The Architecture of Swift
 Functions
 Variables and Simple Types
 Object Types
 Flow Control and More
 Anatomy of an Xcode Project
 Nib Management
 Documentation
 Life Cycle of a Project
 Cocoa Classes
 Cocoa Events
 Memory Management
 Communication Between Objects

Experiments: If applicable, it will support the course topics.

References:
 Neuburg, Matt, iOS 10 Programming Fundamentals with Swift, O'Reilly Media, Inc. 2016.

Detailed of Theoretical Contents


No. Contents Hours
1 The Architecture of Swift 2
 Ground of Being
 Everything Is an Object?
 Three Flavors of Object Type
 Variables
 Functions
 The Structure of a Swift File
 Scope and Lifetime
 Object Members
 Namespaces
 Modules

45
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Instances
 Why Instances?
 Privacy
 Design
2 Functions 3
 Function Parameters and Return Value
 External Parameter Names
 Overloading
 Default Parameter Values
 Variadic Parameters
 Ignored Parameters
 Modifiable Parameters
 Function In Function
 Recursion
 Function As Value
 Anonymous Functions
 Define-and-Call
 Closures
 Curried Functions
 Function References and Selectors
3 Variables and Simple Types 2
 Variable Scope and Lifetime
 Variable Declaration
 Computed Initializer
 Computed Variables
 Setter Observers
 Lazy Initialization
 Built-In Simple Types
4 Object Types 3
 Object Type Declarations and Features
 Enums
 Structs
 Classes
 Polymorphism
 Casting
 Type Reference
 Protocols
 Generics
 Extensions
 Umbrella Types
 Collection Types
5 Flow Control and More 2
 Flow Control
 Operators
 Privacy
 Introspection
 Memory Management

46
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
6 Anatomy of an Xcode Project 3
 New Project
 The Project Window
 The Project File and Its Dependents
 The Target
 From Project to Running App
 Renaming Parts of a Project
7 Nib Management 3
 The Nib Editor Interface
 Nib Loading
 Connections
 Additional Configuration of Nib-Based Instances
8 Documentation 2
 The Documentation Window
 Class Documentation Pages
 Quick Help
 Symbols
 Header Files
 Sample Code
 Internet Resources
9 Life Cycle of a Project 3
 Device Architecture and Conditional Code
 Version Control
 Editing and Navigating Your Code
 Running in the Simulator
 Debugging
 Testing and Clean
 Running on a Device
 Profiling and Gauges
 Localization and Distribution
 Final App Preparations
 Submission to the App Store
10 Cocoa Classes 3
 Subclassing
 Categories and Extensions
 Protocols
 Some Foundation Classes
 Accessors, Properties, and Key–Value Coding
 The Secret Life of NSObject
11 Cocoa Events 2
 Reasons for Events
 Subclassing
 Notifications
 Delegation
 Data Sources
 Actions
 The Responder Chain

47
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Key–Value Observing
 Swamped by Events
 Delayed Performance
12 Memory Management 2
 Principles of Cocoa Memory Management
 Rules of Cocoa Memory Management
 What ARC Is and What It Does
 How Cocoa Objects Manage Memory
 Autorelease Pool
 Memory Management of Instance Properties
 Retain Cycles and Weak References
 Unusual Memory Management Situations
 Nib Loading and Memory Management
 Memory Management of CFTypeRefs
 Property Memory Management Policies
 Debugging Memory Management Mistakes
13 Communication Between Objects 2
 Visibility by Instantiation
 Visibility by Relationship
 Global Visibility
 Notifications and Key–Value Observing
 Model–View–Controller
 A.C, Objective-C, and Swift
 The C Language
 Objective-C
 Bilingual Targets

Neuburg, Matt, iOS 10 Programming Fundamentals with Swift, O'Reilly Media, Inc.
Textbook:
2016.

Detailed of Practical Contents


No. Contents Hours
1 The Architecture of Swift 2
 Ground of Being
 Everything Is an Object?
 Three Flavors of Object Type
 Variables
 Functions
 The Structure of a Swift File
 Scope and Lifetime
 Object Members
 Namespaces
 Modules
 Instances
 Why Instances?
 Privacy and Design

48
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
2 Functions 3
 Function Parameters and Return Value
 External Parameter Names
 Overloading
 Default Parameter Values
 Variadic Parameters
 Ignored Parameters
 Modifiable Parameters
 Function In Function
 Recursion
 Function As Value
 Anonymous Functions
 Define-and-Call
 Closures
 Curried Functions
 Function References and Selectors
3 Variables and Simple Types 2
 Variable Scope and Lifetime
 Variable Declaration
 Computed Initializer
 Computed Variables
 Setter Observers
 Lazy Initialization
 Built-In Simple Types
4 Object Types 3
 Object Type Declarations and Features
 Enums and Structs
 Classes
 Polymorphism
 Casting
 Type Reference
 Protocols
 Generics
 Extensions
 Umbrella Types
 Collection Types
5 Flow Control and More 2
 Flow Control
 Operators
 Privacy
 Introspection
 Memory Management
6 Anatomy of an Xcode Project 3
 New Project
 The Project Window
 The Project File and Its Dependents
 The Target

49
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
 From Project to Running App
 Renaming Parts of a Project
7 Nib Management 3
 The Nib Editor Interface
 Nib Loading
 Connections
 Additional Configuration of Nib-Based Instances
8 Documentation 2
 The Documentation Window
 Class Documentation Pages
 Quick Help
 Symbols
 Header Files
 Sample Code
 Internet Resources
9 Life Cycle of a Project 3
 Device Architecture and Conditional Code
 Version Control
 Editing and Navigating Your Code
 Running in the Simulator
 Debugging, Testing and Clean
 Running on a Device
 Profiling and Gauges
 Localization and Distribution
 Final App Preparations
 Submission to the App Store
10 Cocoa Classes 3
 Subclassing
 Categories and Extensions
 Protocols
 Some Foundation Classes
 Accessors, Properties, and Key–Value Coding
 The Secret Life of NSObject
11 Cocoa Events 2
 Reasons for Events
 Subclassing
 Notifications
 Delegation
 Data Sources
 Actions
 The Responder Chain
 Key–Value Observing
 Swamped by Events
 Delayed Performance
12 Memory Management 2
 Principles of Cocoa Memory Management
 Rules of Cocoa Memory Management

50
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
 What ARC Is and What It Does
 How Cocoa Objects Manage Memory
 Autorelease Pool
 Memory Management of Instance Properties
 Retain Cycles and Weak References
 Unusual Memory Management Situations
 Nib Loading and Memory Management
 Memory Management of CFTypeRefs
 Property Memory Management Policies
 Debugging Memory Management Mistakes
13 Communication Between Objects 2
 Visibility by Instantiation
 Visibility by Relationship
 Global Visibility
 Notifications and Key–Value Observing
 Model–View–Controller
 A.C, Objective-C, and Swift
 The C Language
 Objective-C
 Bilingual Targets

Neuburg, Matt, iOS 10 Programming Fundamentals with Swift, O'Reilly Media, Inc.
Textbook:
2016.

51
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name User Interface Design Course Code IPRG 461
Credit Hours 3 CTH 4
Prerequisites IPRG 443 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description:

This course introduces advance features in user interface design by studying both theoretical and practical
issues in human-computer interfaces. These include development awareness of various approaches to the
design of contemporary user interfaces, and to identify key principles by which effective contemporary
user interfaces are designed. The course also addresses various interface issues that are applicable to
interactive systems such as user-centered interaction thinking and methods of usability testing since there
is a need to develop current and next-generation interactive technologies.

Topics
 Characteristics of good design
 Methodology
 Testing & Evaluation
 Contemporary Interactive Technologies
 Application Domains
 User Centered Design
 Technological constraints
 Components of Design

Experiments: If applicable, it will support the course topics.

References:
 David Benyon, Designing Interactive Systems: A comprehensive guide to HCI, UX and
interaction design, Pearson, 2013.
 Interaction Design Foundation https://www.interaction-design.org/literature.
 Jenny Preece, Helen Sharp, Yvonne Rogers, Interaction Design: Beyond Human-Computer
Interaction, 4th Edition, John Wiley & Sons, 2015.

Detailed of Theoretical Contents


No. Contents Hours
1 Characteristics of Good Design 4
 Learnability, robustness, flexibility, usability, performance and
accessibility
2 Methodologies 4
 Prototyping, ethnocentric approach and participative design.
3 Testing & Evaluation 4
 The use of focus groups, task-based testing, surveys, interviews,
observations and walkthroughs.
4 Contemporary Interactive Technologies 4
 Mobile computing, PDAs, screen readers, voice recognition, touch
screens and game peripherals (joysticks, light guns etc.).

52
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
5 Application Domains 4
 Ecommerce, edutainment, iTV, entertainment, informational, safety
critical systems, games and online communities.
6 User Centered Design 4
 Target users, user modeling, user scenarios, localization and
globalization.
7 Technological Constraints 4
 Screen resolution and design for printing.
8 Components of Design 4
 Metaphors, icons, typography, color, contrast and juxtaposition,
storyboards and mood boards.
 F.E. Ritter, G.D. Baxter, and E.F. Churchill Foundations for Designing
User−Centered Systems: What System Designers need to know about People,
Springer, 2014.
Textbook:
 Jenny Preece, Helen Sharp, Yvonne Rogers, Interaction Design: Beyond
Human-Computer Interaction, 4th Edition, John Wiley & Sons, 2015.

Detailed of Practical Contents


No. Contents Hours
1 Characteristics of Good Design 6
 Learnability, robustness, flexibility, usability, performance and
accessibility

2 Testing & Evaluation 6


 The use of focus groups, task-based testing, surveys, interviews,
observations and walkthroughs.

3 Contemporary Interactive Technologies 6


 Mobile computing, PDAs, screen readers, voice recognition, touch
screens and game peripherals (joysticks, light guns etc.).
4 Application Domains 4
 Ecommerce, edutainment, iTV, entertainment, informational, safety
critical systems, games and online communities.

5 Technological Constraints 4
 Screen resolution and design for printing.

6 Components of Design 6
 Metaphors, icons, typography, color, contrast and juxtaposition,
storyboards and mood boards.

 F.E. Ritter, G.D. Baxter, and E.F. Churchill Foundations for Designing
User−Centered Systems: What System Designers need to know about People,
Textbook: Springer, 2014.
 Jenny Preece, Helen Sharp, Yvonne Rogers, Interaction Design: Beyond
Human-Computer Interaction, 4th Edition, John Wiley & Sons, 2015.

53
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Enterprise Resources Planning
Course Name Course Code IPRG 478
Systems - ERP
Credit Hours 3 CTH 4
Prerequisites UACC 301 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :
This course introduces the Enterprise Resources Planning (ERP) systems and the computing paradigms
considered by organizations. The focus will be on how enterprise resources planning and information
systems with their core modules support accounting, financial, human resources and manufacturing
business functions and operations, theoretically and practically. Topics will also include ERP planning,
package selection, acquisition, development, integration with business processes and other systems,
deployment, and implementation. Technical architecture, security issues related to ERP system and the
application of analytical thinking and business knowledge for problem solving and decision making are
also included in this course.

Topics :
 ERP Concepts and Technology
 ERP and Business Process Redesign and Mapping
 ERP Life Cycle and Implementation
 ERP for Financial Management, Sales and CRM
 ERP Supply Chain Management, Accounting, Finance and HR

Experiments: if applicable it will support the course topics

References :
 Modern ERP: Select, Implement, and Use Today's Advanced Business Systems, 3rd Edition,
2015, Marianne Bradford , Lulu, ISBN-13: 978-1312665989
 Concepts in Enterprise Resource Planning, 4th Edition, 2014, Ellen Monk and Bret Wagner,
Course Technology; ISBN: 3: 978-1-111-82039-8, ISBN-13: 978-1-111-82040-4

Detailed of Theoretical Contents


No. Contents Hours
1 Introduction to ERP Systems 3
 ERP Essentials
 The need for ERP
 Advantages and Disadvantages
 ERP Evolution
 ERP Market
2 ERP Technology 3
 Relational Database Management Systems
 Database Normalization
 Structured Query Language (SQL)
 ERP Data
 Configuration and Customization
 System Landscape
 ERP and Cloud Computing

54
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
3 ERP and Business Process Redesign and Mapping 4
 Business Processes
 Problems with Business Processes
 Business Process Reengineering
 Factors for Reengineering Success
 Business Process Improvement
 Business Process Improvement Model
 Processes in Need of Change
 Systems Diagrams
 The Process Map and Steps for Drawing Maps
 Gathering Information for the Process Map
 Process Mapping Roles
4 ERP Life Cycle 4
 Planning
 Package Selection
 Implementation
 Operation
 Maintenance
5 ERP Financial Management 4
 Financial Accounting
 Management Accounting
 Asset Management
 Travel and Expense Management
6 ERP Sales and Customer Relationship Management 5
 Sales Process
 Point of Sale (POS) Systems
 Customer Relationship Management
 CRM Functionality
 CRM Interaction Channels
 Social CRM
 Elements for CRM Success
 CRM Metrics
 CRM Analytics
 Knowledge Management
 CRM and Knowledge Management
 Implementing a Knowledge Management System
7 ERP Supply Chain Management 5
 The Concept of Supply Chain Management
 Purchasing and Sourcing
 Supplier Relationship Management
 Warehouse Management System
 Transportation Management System
 Manufacturing
 Quality Assurance
 Plant Maintenance
 Environment, Health, and Safety
 Supply Chain Technology

55
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
8 ERP HR Management and ERP Security 4
 Human Capital
 Employee Self-Service
 Outsourcing Human Capital Management Functions
 Internal Control
 ERP and Internal Controls
 IT Application Controls
 IT General Controls
 Logical Access Controls
 System Implementation Assurance

Modern ERP: Select, Implement, and Use Today's Advanced Business Systems, 3rd Edition,
Textbook: 2015, Marianne Bradford , Lulu, ISBN-13: 978-1312665989

Detailed of Practical Contents


No. Contents Hours
1 Business Functions and Processes 4
 Functional Areas and Business Processes
 Functional Areas of Operation
 Marketing and Sales
 Supply Chain Management
 Accounting and Finance
 Human Resources
 Functional Area Information Systems
2 The Development of ERP 4
 Computer Hardware and Software Development
 Early Attempts to Share Resources
 The Manufacturing Roots of ERP
 ERP Software Emerges: SAP and R/3
 SAP Begins Developing Software Modules
 PeopleSoft
 Oracle
 SAP ERP
 SAP ERP Software Implementation
3 Marketing Information Systems and the Sales Order Process 5
 Sales Process
 Sales Quotations and Orders
 Order Filling
 Accounting and Invoicing
 Payment and Returns
 Sales and Distribution in ERP
 Presales Activities
 Sales Order Processing
 Inventory Sourcing
 Delivery
 Billing
 Payment

56
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
 A Standard Order in SAP ERP
 Taking an Order in SAP ERP
 Discount Pricing in SAP ERP
 Integration of Sales and Accounting
 Customer Relationship Management (CRM)
 Core CRM Activities
 SAP’s CRM Software
4 Production and Supply Chain Management Information Systems 5
 The Production Planning Process
 The SAP ERP Approach to Production Planning
 Sales Forecasting
 Sales and Operations Planning
 Sales and Operations Planning in SAP ERP
 Disaggregating the Sales and Operations Plan in SAP ERP
 Demand Management
 Materials Requirements Planning (MRP)
 Bill of Material
 Lead Times and Lot Sizing
5 Finance and Accounting in ERP Systems 6
 Accounting Activities
 Using ERP for Accounting Information
 Operational Decision-Making Problem: Credit Management
 Industrial Credit Management
 Fitter’s Credit Management Procedures
 Credit Management in SAP ERP
 Product Profitability Analysis
 Inconsistent Record Keeping
 Inaccurate Inventory Costing Systems
 Inventory Cost Accounting Background
 ERP and Inventory Cost Accounting
 Product Costing Example
 Product Cost Analysis in SAP ERP
 Activity-Based Costing and ERP
 Management Reporting with ERP Systems
6 Human Resources Processes with ERP 6
 Recruiting Process
 The Interviewing and Hiring Process
 Human Resources Duties After Hiring
 Human Resources with ERP Software
 Advanced SAP ERP Human Resources Features
 Time Management
 Payroll Processing
 Travel Management
 Training and Development Coordination
 Additional Human Resources Features of SAP ERP
 Mobile Time Management
 Management of Family and Medical Leave

57
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
 Management of Domestic Partner Benefits
 Administration of Long-Term Incentives
 Personnel Cost Planning
 Management and Payroll for Global Employees

Concepts in Enterprise Resource Planning, 4th Edition, 2014, Ellen Monk and Bret Wagner,
Textbook: Course Technology; ISBN: 3: 978-1-111-82039-8, ISBN-13: 978-1-111-82040-4

58
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Advanced Smart Devices
Course Name Course Code IPRG 454
Programming -2
Credit Hours 3 CTH 4
Prerequisites IPRG 453 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description:

This course will be a complementary of Advanced Smart Devices Programming I course as it focuses on
the hybrid application development for both android and iOS smart devices. The course is aimed to enable
students to ensure that their applications are secure, scalable and high performing in various platforms.
Ionic, which was built on top of AngularJS and Apache Cordova, will be taught in this course as it offered
a complete solution for hybrid application development for smart devices. It is using Web technologies
such as CSS, HTML5, and Sass. Thus, this course provides students with rich practical knowledge on
hybrid application development for cross-platform smart devices.

Topics
 Ionic – Powered by AngularJS
 Welcome to Ionic
 Ionic CSS Components and Navigation
 Ionic and SCSS
 Ionic Directives and Services
 Building a Bookstore App
 Cordova and ngCordova
 Building a Messaging App
 Releasing the Ionic App

Experiments: If applicable, it will support the course topics.

References:
 Ravulavaru, Arvind, Learning Ionic: Build real-time and hybrid mobile applications with ionic,
Packt Publishing, 2015.

Detailed of Theoretical Contents


No. Contents Hours
1 Ionic – Powered by AngularJS 4
 Understanding the separation of concerns
 AngularJS components
 AngularJS directives
 AngularJS services
 AngularJS resources
2 Welcome to Ionic 4
 Mobile Hybrid Architecture
 What is Apache Cordova?
 What is Ionic?
 Software setup
 The platform guide
 Hello Ionic

59
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 The browser developer tools setup
 The Ionic project structure
 Scaffolding the tabs template
 Scaffolding the side menu template
 generator-ionic
3 Ionic CSS Components and Navigation 2
 Ionic CSS components
 The Ionic router
4 Ionic and SCSS 4
 What is Sass?
 Setting up SCSS in our Ionic project
 Working with Ionic SCSS
 Understanding the Ionic SCSS setup
 The SCSS workflow 105
 Building a swatch 106
5 Ionic Directives and Services 4
 Ionic directives and services
 The Ionic Platform service
 Content
 Ionic loading
 The ion-list and ion-item directives
 Gesture directives and services
6 Building a Bookstore App 4
 An introduction to the Bookstore application
 The Bookstore architecture
 Setting up the server
 Building the application
 Step 1 – Scaffolding the side menu template
 Step 2 – Refactoring the template
 Step 3 – Building authentication, localStorage, and the REST API
factory
 Step 4 – Creating controllers for each route and integrating with the
factory
 Step 5 – Creating templates and integrating with the controller data
7 Cordova and ngCordova 4
 Setting up a platform-specific SDK
 Testing the setup
 Getting started with Cordova plugins
 The Ionic plugin API
 The Cordova whitelist plugin
 ngCordova
8 Building a Messaging App 3
 The Ionic Chat app
 The application architecture
 Developing the application
 Testing the application

60
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
9 Releasing the Ionic App 3
 Preparing the app for distribution
 The PhoneGap service
 Generating installers using the Cordova CLI
 The Ionic package

Ravulavaru, Arvind, Learning Ionic: Build real-time and hybrid mobile applications
Textbook:
with ionic, Packt Publishing, 2015.

Detailed of Practical Contents


No. Contents Hours
1 Ionic – Powered by AngularJS 4
 Understanding the separation of concerns
 AngularJS components
 AngularJS directives
 AngularJS services
 AngularJS resources
2 Welcome to Ionic 4
 Mobile Hybrid Architecture
 What is Apache Cordova?
 What is Ionic?
 Software setup
 The platform guide
 Hello Ionic
 The browser developer tools setup
 The Ionic project structure
 Scaffolding the tabs template
 Scaffolding the side menu template
 generator-ionic
3 Ionic CSS Components and Navigation 2
 Ionic CSS components
 The Ionic router
4 Ionic and SCSS 4
 What is Sass?
 Setting up SCSS in our Ionic project
 Working with Ionic SCSS
 Understanding the Ionic SCSS setup
 The SCSS workflow 105
 Building a swatch 106
5 Ionic Directives and Services 4
 Ionic directives and services
 The Ionic Platform service
 Content
 Ionic loading
 The ion-list and ion-item directives
 Gesture directives and services

61
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
6 Building a Bookstore App 4
 An introduction to the Bookstore application
 The Bookstore architecture
 Setting up the server
 Building the application
 Step 1 – Scaffolding the side menu template
 Step 2 – Refactoring the template
 Step 3 – Building authentication, localStorage, and the REST API
factory
 Step 4 – Creating controllers for each route and integrating with the
factory
 Step 5 – Creating templates and integrating with the controller data
7 Cordova and ngCordova 4
 Setting up a platform-specific SDK
 Testing the setup
 Getting started with Cordova plugins
 The Ionic plugin API
 The Cordova whitelist plugin
 ngCordova
8 Building a Messaging App 3
 The Ionic Chat app
 The application architecture
 Developing the application
 Testing the application
9 Releasing the Ionic App 3
 Preparing the app for distribution
 The PhoneGap service
 Generating installers using the Cordova CLI
 The Ionic package

Ravulavaru, Arvind, Learning Ionic: Build real-time and hybrid mobile applications
Textbook:
with ionic, Packt Publishing, 2015.

62
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Software Security Course Code IPRG 474
Credit Hours 3 CTH 4
Prerequisites IPRG 324 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :
This course introduces the intersection of computer security and software engineering. The course
provides students with practical experience on building a software system, and on security as part of
software engineering process. Topics include computer security, software and devices security, operating
systems security, and security for networks and databases. Further, due to the rapidly evolving threats,
attacks, risks and countermeasures in computing environments, this course provides best practices to
prevent malicious code execution, authenticate users, use encryption, protect privacy, and implement
firewalls; ultimately, to build software systems throughout a secure lifecycles of system development and
acquisition.

Topics :
 Computer Security and Software Engineering
 Authentication, Access Control, and Cryptography
 Programs and Programming
 The Web Security and User Side
 Networks, Databases and Cloud Computing Security
 Operating Systems Security, and Legal Issues and Ethics

Experiments: if applicable it will support the course topics

References :
 Security in Computing (5th Edition), 2015, Charles P. Pfleeger and Shari Lawrence Pfleeger
and Jonathan Margulies, Prentice Hall, ISBN-13: 978-0134085043
 Cyber Security Engineering: A Practical Approach for Systems and Software Assurance,
October 2016, 1st Edition, Carol C. Woody and Nancy R. Mead, Addison-Wesley Professional,
ISBN-13: 978-0134189802.

Detailed of Theoretical Contents


No. Contents Hours
1 Introduction to Computer Security 4
 Information and Organization Assets
 Threats and Threats Types
 Control Paradigm
 Risks and Availability
 Risks Assessment
 Attacks and Types of Attackers
 Controls and Types of Controls
2 Authentication, Access Control, and Cryptography 4
 Authentication
 Access Control
 Access Policies and Lists
 Cryptography
 Symmetric Cryptography
 Asymmetric Cryptography
63
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 Error Detecting Codes
 Trust and Certification
3 Programs and Programming 4
 Unintentional and No-malicious Programming
 Buffer Overflow
 Time-of-Check to Time-of-Use
 Off-by-One Error
 Integer Overflow
 Un-terminated Null-Terminated String
 Parameter Length, Type, and Number
 Malicious Code—Malware
 Viruses, Trojan Horses, and Worms
 Countermeasures
4 The Web Security and User Side 4
 Browser Attacks
 Web Attacks Targeting Users
 Malicious Web Content
 Obtaining User or Website Data
 Code Within Data
 Email Attacks
 Spamming, Phishing, other Email Attacks
5 Operating Systems Security 4
 Security in Operating Systems
 Operating System Structure
 Security Features of Ordinary Operating Systems
 Operating System Tools to Implement Security Functions
 Security in the Design of Operating Systems
 Simplicity, Kernelized and Layered Design
 Correctness and Completeness
 Trusted Systems and their Functions
 Root-kit and their Types
6 Networks Security 4
 Protocol Layers
 Addressing and Routing
 Network Security Attacks
 Threats to Network Communications
 Interception, Modification, Fabrication and Interruption
 Port Scanning
 Wireless Network Security
 Vulnerabilities in Wireless Networks
 Denial of Service (DOS) and Distributed DOS
 DNS Attacks and Vulnerabilities
 Bots and Botnet
 Strategic Defenses: Security Countermeasures
 Cryptography in Network Security
 Firewalls and Networks
 Intrusion Detection and Prevention Systems

64
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
7 Databases and Cloud Computing Security 4
 Security Requirements of Databases
 Databases Reliability and Integrity
 Database Disclosure
 Cloud Computing Risk Analysis
 Cloud as a Security Control
 Cloud Security Tools and Techniques
 Cloud Identity Management
 Securing IaaS
8 Legal Issues and Ethics 4
 Protecting Programs and Data
 Information and the Law
 Rights of Employees and Employers
 Computer Crime
 Ethical Issues in Computer Security
 Incident Analysis with Ethics
 Cyber Warfare

Security in Computing (5th Edition), 2015, Charles P. Pfleeger and Shari Lawrence
Textbook:
Pfleeger and Jonathan Margulies, Prentice Hall, ISBN-13: 978-0134085043

Detailed of Practical Contents


No. Contents Hours
1 Cyber Security Engineering 6
 Lifecycle Assurance of Systems and Software
 Principles for Software Assurance
 Case Study: Wireless Emergency Alerts
 Case Study: Fly-By-Night Airlines
 Case Study: GoFast Automotive Corporation
2 Risk Analysis and Management 6
 Risk Management Concepts
 Risk Mission and Objective
 Security Risk Analysis
 Operational Risk Analysis
3 Secure Software Development Management and Organizational Models 6
 The Management of Assured Systems
 Process Models for Software Development and Acquisition
 Software Security Frameworks, Models, and Roadmaps
 Assurance Maturity Model (SAMM)
 Engineering Process Area
 Using Software Security Frameworks, Models, and Roadmaps
4 Engineering Competencies 6
 Security Competency and the Software Engineering
 Software Assurance Competency Models
 The SEI Software Assurance Competency Model
 Models in Practice

65
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
5 Performing Gap Analysis 4
 Using the SEI’s SwA Competency Model
 Using the BSIMM
 BSIMM Sample Report
6 Cyber Security Engineering 4
 Metrics for Cyber Security Engineering
 Models for Measurement
 Cyber Security Evaluation
 Process Evidence
 Measurement Management

Cyber Security Engineering: A Practical Approach for Systems and Software


Textbook: Assurance, October 2016, 1st Edition, Carol C. Woody and Nancy R. Mead, Addison-
Wesley Professional, ISBN-13: 978-0134189802.

66
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Graduation Project Course Code IPRG 492
Credit Hours 4 CTH 6
Prerequisites IPRG 453 and IPRG 472 CRH L 2 P 4 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :
This course introduces the students to a comprehensive experience for the development of computer
software or hardware system. The project duration is one semester dedicated to finish the entire stages:
investigation, analysis, design, implementation, testing and changes. The students may work in small
groups or teams, and will be introduced to project management principles and practices. Students then
are to apply their technical skills in a major area of technologiesto develop software, hardware or on both
to solve practical application or business problem. This may include database, networking, security, smart
technologies, or any other ICT area of work.

Topics :
 Investigate business needs and project scope
 Project Time, Cost and Quality Management
 Project planning and management
 System analysis and design
 System implementation
 System maintenance and changes

Experiments:

References :
 Information Technology Project Management: Providing Measurable Organizational Value,
5th Edition, 2015, Jack T. Marchewka, Wiley, ISBN-13: 978-1118911013.

Detailed of Theoretical Contents


No. Contents Hours
1 Introduction to Project Management 5
 Project Strategy and Organizations
 Project Scope and Selection
 Project Time, Cost and Quality Management
2 Project Human Resource 5
 Groups and Teams Management
 Communications Management
 Tasks distribution and management
3 Project Investigation Phase 4
 Business Problems Definition and Description
 System Objectives, services and beneficiaries
 Constraints/Challenges and solutions (SWOT)
 Initial Economic/Financial Feasibility Analysis
 Initial Technical Feasibility Analysis
4 Project Analysis Phase 4
 Current Systems Assessment
 Functional and Non-Functional Requirements

67
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
 System Direct/Indirect, Tangible/Intangible Expectations
 System, User, Organizational and other Requirements
 System Evolution, Expansion and Documentation
5 Project Design Phase 4
 Entity Relationship Diagrams
 System Architecture and Design
 System Conceptual Model
 System Processes Model
 Database Architecture
 Data Dictionary Model
6 Project Implementation Phase 5
 Programming Languages selection
 Programming Teams
 Programming development and coding
 Database SQL Programming
 User Interface Programming
 System Processes Programming
 Source Code documentation
7 Project Maintenance Phase 5
 Software Testing
 System Changes
 System deployment
 System documentation
 System presentation

Information Technology Project Management: Providing Measurable Organizational


Textbook:
Value, 5th Edition, 2015, Jack T. Marchewka, Wiley, ISBN-13: 978-1118911013.

Detailed of Practical Contents


No. Contents Hours
1 The lecturer will supervise the students on the their projects to achieve the tasks as in 10
the theoretical part as above
2 The lecturer will supervise the students on the their projects to achieve the tasks as in 10
the theoretical part as above
3 The lecturer will supervise the students on the their projects to achieve the tasks as in 10
the theoretical part as above
4 The lecturer will supervise the students on the their projects to achieve the tasks as in 10
the theoretical part as above
5 The lecturer will supervise the students on the their projects to achieve the tasks as in 10
the theoretical part as above
6 The lecturer will supervise the students on the their projects to achieve the tasks as in 14
the theoretical part as above

68
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
Information Technology Project Management: Providing Measurable Organizational
Textbook:
Value, 5th Edition, 2015, Jack T. Marchewka, Wiley, ISBN-13: 978-1118911013.

69
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Selected Topics Course Code IPRG 484
Credit Hours 3 CTH 4
Prerequisites CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course Description:
This course introduces the new trends, research, technological, software engineering and
programming approaches in the field of computer programming and technologies with their applications
in the marketplace. The focus will be on the latest and emerging trends such as distributed systems and
databases, electronic governments, Internet banking, smart technologies, smart government, and so on.
Special attention is also given to the latest analytical tools and applications including cloud computing,
big data, business intelligence, cyber-security, etc. the lecturer is to update these topics as they appear in
the domain of information and communication technologies.

Topics :
 E-Government and E-Banging
 Grid and Cloud Computing
 Big Data Analyticsj
 Bioinformatics and Medical Informatics
 Data Mining and Machine Learning
 Data Warehousing and Business Intelligence
 Smart Technologies and Social Networking

Experiments: if applicable it will support the course topics

References :
The Lecturer may choose latest Textbook in the area of interest, otherwise, a selected set of
lately published articles by scholar

70
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Software Testing and Quality
Course Name Course Code IPRG 483
Assurance
Credit Hours 3 CTH 4
Prerequisites IPRG 443 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course Description:
This course introduces the fundamentals, strategies and techniques for ensuring the quality of software
systems through the entire development and implementation processes. The course provides students
with hands-on and practical strategies and experiences on testing software systems and the technologies
used in this field. Topics include software bugs and software faults, Model-Driven test design, Test
Automation and Execution, Criteria-Based Test Design, Testing Coverage Criteria such as Graph, Logic
and Syntax-Based Testing, assessing, managing and reporting the software defectives, and managing,
planning and implementing the software testing process and project.

Topics :
 Software Testing and Quality Assurance Fundamentals
 Model-Driven Test Design
 Test Automation and Executions
 Input Space Partitioning
 Graph Coverage Testing
 Logic Coverage Testing
 Syntax-Based Testing
 Managing and Reporting the Test Process

Experiments: if applicable it will support the course topics

References :
Introduction to Software Testing (2nd Edition), 2016, Paul Ammann , Jeff Offutt, Cambridge
University Press, ISBN: 978-1-107-17201-2.

Detailed of Theoretical Contents


No. Contents Hours
1 Software Testing and Quality Assurance Fundamentals 4
 The Concept of Testing Software
 The Concept of Quality Assurance
 Software Bugs, Faults and Defectives
 Methods and Strategies of Software Testing
 Difficulties and Limitations of Software Testing
2 Model-Driven Test Design 4
 Software Testing Foundations
 Software Testing Activities
 Testing Levels Based on Software Activity
 Coverage Criteria
 Model-Driven Test Design
 Test Design and Evaluation

71
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
3 Test Automation and Executions 4
 Software Testability
 Components of a Test Case
 Test Automation Framework
 Data-Driven Tests
 Unit Test Framework
 Unit from the Command Line
4 Input Space Partitioning 4
 Coverage Criteria Defined
 Input Domain Modeling
 Combination Strategies Criteria
 Handling Constraints Among Characteristics
 Deriving an IDM from JavaDoc
5 Graph Coverage Testing 4
 Graph Coverage Criteria
 Structural Coverage Criteria
 Touring, Side-trips, and Detours
 Data Flow Criteria
 Graph Coverage for Source Code
 Graph Coverage for Design Elements
 Graph Coverage for Specifications
 Graph Coverage for Use Cases
6 Logic Coverage Testing 4
 Active Semantic Logic Coverage Criteria
 DFN Syntactic Logic Coverage Criteria
 Structural Logic Coverage of Programs
 Specification-Based Logic Coverage
 Logic Coverage of Finite State Machines
7 Syntax-Based Testing 4
 Syntax-Based Coverage Criteria
 Program-Based Grammars
 Integration and Object-Oriented Testing
 Specification-Based Grammars
 Input Space Grammars
8 Managing and Reporting the Test Process 4
 Managing the Test Process
 Testing Through SDLC
 Writing Test Plans
 Test Implementation
 Integration Order
Introduction to Software Testing (2nd Edition), 2016, Paul Ammann , Jeff Offutt,
Textbook:
Cambridge University Press, ISBN: 978-1-107-17201-2.

72
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
1 Software Testing Fundamentals 6
 Software Correctness and Assurance
 Case Study: Software Quality – Test Oracle
 Case Study: Test-driven development (TDD)
2 Input Space Partitioning 5
 Case Study: Input Domain Modeling
 Case Study: Combination Strategies Criteria
 Case Study: Handling Constraints Among Characteristics
 Case Study: Deriving an IDM from JavaDoc
3 Graph Coverage Testing 5
 Case Study: Structural Test
 Case Study: Data Flow Test
 Case Study: Graph Coverage for Source Code Test
 Case Study: Graph Coverage for Specifications Test
 Case Study: Graph Coverage for Use Cases Test
4 Logic Coverage Testing 5
 Case Study: Active Semantic Logic Coverage Test
 Case Study: DFN Syntactic Logic Coverage Test
 Case Study: Structural Logic Test
 Case Study: Specification-Based Test
5 Syntax-Based Testing 5
 Case Study: Syntax-Based Test
 Case Study: Program-Based Grammars Test
 Case Study: Object-Oriented Test
 Case Study: Specification-Based Grammars Test
 Case Study: Input Space Grammars Test

6 Managing and Reporting the Test Process 6
 Plan Development for the Test Process
 Testing Plan through the SDLC
 Case Study: Writing Test Plans
 Case Study: Test Implementation
Introduction to Software Testing (2nd Edition), 2016, Paul Ammann , Jeff Offutt,
Textbook:
Cambridge University Press, ISBN: 978-1-107-17201-2.

73
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Data Mining Course Code IPRG 477
Credit Hours 3 CTH 4
Prerequisites IPRG 324 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course Description:
This course offers an introduction to data mining concepts and techniques. The goal is for the students
to have a solid foundation in data mining that allows them to apply data mining techniques to real-world
problems and to conduct research and development in new data mining methods. Topics include data
mining algorithms and methods, association analysis, classification, data visualization, prediction
techniques and data clustering analysis.

Topics :
 Data warehousing
 Data Mining concepts and techniques
 Data Mining algorithms

Experiments: If applicable:
Weka: Data Mining System with Free Open Source Machine Learning Software in Java.
Available at http://www.cs.waikato.ac.nz/~ml/weka/index.html

References :

Detailed of Theoretical Contents


No. Contents Hours
1 Introduction to Data Warehouse 4
 Data Warehouse and DBMS
 Multidimensional data model
 OLAP operations
2 Introduction to Data Mining 4
 What is data mining?
 Related technologies - Machine Learning, DBMS, OLAP, Statistics
 Data Mining Goals
 Stages of the Data Mining Process
 Data Mining Techniques
 Knowledge Representation Methods
 Applications
3 Data preprocessing 4
 Data cleaning
 Data transformation
 Data reduction
 Discretization and generating concept hierarchies
4 Data mining knowledge representation 4
 Task relevant data
 Background knowledge
 Interestingness measures
 Representing input data and output knowledge
 Visualization techniques

74
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
5 Data mining algorithms: Association rules 4
 Motivation and terminology
 Basic idea: item sets
 Generating item sets and rules efficiently
 Correlation analysis
6 Data mining algorithms: Classification 4
 Basic learning/mining tasks
 Inferring rudimentary rules
 Decision trees
 Covering rules
7 Data mining algorithms: Prediction 4
 The prediction task
 Statistical (Bayesian) classification
 Bayesian networks
 Instance-based methods (nearest neighbor)
 Linear models
8 Data mining algorithms: Clustering 4
 Basic issues in clustering
 First conceptual clustering system: Cluster/2
 Partitioning methods: k-means, expectation maximization (EM)
 Conceptual clustering
"DATAWAREHOUSING FUNDAMENTALS: A COMPREHENSIVE GUIDE
FOR IT PROFESSIONALS", by Paulraj Ponniah, Latest Edition.
Textbook:
"DATAMINING: CONCEPTS AND TECHNIQUES", The Morgan Kaufmann
Series in Data Management Systems, by Jiawei Han, and Micheline Kamber, The
Latest Edition.

Detailed of Practical Contents


No. Contents Hours
1 Introduction to Data Warehouse 4
 Data Warehouse and DBMS
 Multidimensional data model
 OLAP operations
2 Introduction to Data Mining 4
 What is data mining?
 Related technologies - Machine Learning, DBMS, OLAP, Statistics
 Data Mining Goals
 Stages of the Data Mining Process
 Data Mining Techniques
 Knowledge Representation Methods
 Applications
3 Data preprocessing 4
 Data cleaning
 Data transformation
 Data reduction
 Discretization and generating concept hierarchies

75
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
4 Data mining knowledge representation 4
 Task relevant data
 Background knowledge
 Interestingness measures
 Representing input data and output knowledge
 Visualization techniques
5 Data mining algorithms: Association rules 4
 Motivation and terminology
 Basic idea: item sets
 Generating item sets and rules efficiently
 Correlation analysis
6 Data mining algorithms: Classification 4
 Basic learning/mining tasks
 Inferring rudimentary rules
 Decision trees
 Covering rules
7 Data mining algorithms: Prediction 4
 The prediction task
 Statistical (Bayesian) classification
 Bayesian networks
 Instance-based methods (nearest neighbor)
 Linear models
8 Data mining algorithms: Clustering 4
 Basic issues in clustering
 First conceptual clustering system: Cluster/2
 Partitioning methods: k-means, expectation maximization (EM)
 Conceptual clustering
"DATAWAREHOUSING FUNDAMENTALS: A COMPREHENSIVE GUIDE
FOR IT PROFESSIONALS", by Paulraj Ponniah, Latest Edition.
Textbook:
"DATAMINING: CONCEPTS AND TECHNIQUES", The Morgan Kaufmann
Series in Data Management Systems, by Jiawei Han, and Micheline Kamber, The
Latest Edition.

76
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Big Data Analytics Course Code IPRG 476
Credit Hours 3 CTH 4
Prerequisites IPRG 324 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :
This course introduces the fundamental concepts, technologies, and innovative applications of Big Data
systems with focus on distributed systems, distributed file systems, virtualization technologies,
programming models, resource management, and analytics techniques that are needed for developing
scalable and efficient next-generation applications for processing Big Data. Topics will also include
bridging the gap between analytics and data driven technologies, and performance evaluation and
benchmarking. Hands-on practice with Hadoop, MapReduce platforms and big data databases
like SQL and noSQL will be key components of this course.

Topics :
 Understanding Big Data
 Business Intelligence
 Big Data Storage Concepts and Technology
 NoSQL Databases
 Big Data Processing
 Big Data Analysis Techniques
 Hadoop

Experiments: if applicable it will support the course topics

References :
 Big Data Fundamentals: Concepts, Drivers & Techniques, 1st Edition, 2016, Paul Buhler,
Wajid Khattak and Thomas Erl, Prentice Hall, ISBN: 9780134291185.
 NoSQL: Database for Storage and Retrieval of Data in Cloud, 1st Edition, Kindle Edition, 2017,
by Ganesh Chandra Deka, Chapman and Hall/CRC, ISBN 9781498784368.

Detailed of Theoretical Contents


No. Contents Hours
1 Understanding Big Data and Business Intelligence 8
 Concepts and Terminology
 Big Data Characteristics
 Different Types of Data
 Big Data Analytics Lifecycle
 Online Transaction Processing (OLTP)
 Online Analytical Processing (OLAP)
 Extract Transform Load (ETL)
 Data Warehouses
 Data Marts
 Traditional BI
 Big Data BI

77
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
2 Big Data Storage Concepts and Technology 8
 Clusters
 File Systems and Distributed File Systems
 NoSQL
 Sharding
 Replication
 CAP Theorem
 On-Disk Storage Devices
 NoSQL Databases
 In-Memory Storage Devices
3 Big Data Processing Concepts 8
 Parallel Data Processing
 Distributed Data Processing
 Hadoop
 Processing Workloads
 Processing in Batch Mode
 Processing in Realtime Mode
4 Big Data Analysis Techniques 8
 Quantitative Analysis
 Qualitative Analysis
 Data Mining
 Statistical Analysis
 Machine Learning
 Semantic Analysis
 Visual Analysis
 Big Data Fundamentals: Concepts, Drivers & Techniques, 1st Edition, 2016,
Textbook: Paul Buhler, Wajid Khattak and Thomas Erl, Prentice Hall, ISBN:
9780134291185.

Detailed of Practical Contents


No. Contents Hours
1 Big Data Analytics Lifecycle 6
 Data Identification and Acquisition
 Data Filtering and Extraction
 Data Validation and Cleansing
 Data Aggregation and Representation
 Data Analysis and Data Visualization
 Utilization of Analysis Results
2 Big Data Analysis Techniques 6
 Correlation
 Regression
 Time Series Plot
 Clustering and Classification
 Data Migration Techniques from SQL to NoSQL
 NoSQL and Cloud Paradigm
 NoSQL for Handling Big and Complex Data

78
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Practical Contents


No. Contents Hours
3 Hadoop 6
 Applications of Hadoop Ecosystems Tools
 Hadoop Ecosystem Tools and Algorithms
 Big Data Management Tools for Hadoop
4 Hands-On Applications 6
 Aerospike
 Cassandra for Windows
 Cloudant
5 Hands-On Applications 4
 InfluxDB
 Redis
 RethinkDB
6 Hands-On Applications 4
 Neo4j: Graphs for Real-World Applications
 MongoDB
 Oracle NoSQL Database
 Big Data Fundamentals: Concepts, Drivers & Techniques, 1st Edition, 2016,
Paul Buhler, Wajid Khattak and Thomas Erl, Prentice Hall, ISBN:
9780134291185.
Textbook:
 NoSQL: Database for Storage and Retrieval of Data in Cloud, 1st
Edition, Kindle Edition, 2017, by Ganesh Chandra Deka, Chapman and
Hall/CRC, ISBN 9781498784368.

79
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Engineering of Computer and


Department Major Computer Programming
Information Technology
Course Name Cloud Computing Course Code IPRG 475
Credit Hours 3 CTH 4
Prerequisites IPRG 324 CRH L 2 P 2 T 0
CRH: Credit Hours L: Lecture P: Practical T: Tutorial CTH: Contact Hours
Course description :
This course introduces the fundamental concepts, technologies, and innovative applications of Cloud
Commuting systems, distributed systems and file systems, map-reducing programming models, resource
management, virtualization technologies, programming models, cloud models and analytics techniques
that are needed for developing scalable and efficient next-generation applications for processing Big
Data. Hands-on experience with Hadoop, MapReduce platforms and big data databases
like SQL and noSQL will be key components of this course.

Topics :
 Understanding Cloud Computing
 Business Intelligence
 Cloud Computing Model and Services
 Service-Oriented Architecture
 File System and Storage on Cloud
 Hadoop

Experiments: if applicable it will support the course topics

References :
 Cloud Computing, 1st Edition, 2017, Sandeep Bhowmik, Cambridge University Press, ISBN-
13: 978-1316638101
 NoSQL: Database for Storage and Retrieval of Data in Cloud, 1st Edition, Kindle Edition, 2017,
by Ganesh Chandra Deka, Chapman and Hall/CRC, ISBN 9781498784368.

Detailed of Theoretical Contents


No. Contents Hours
1 Introduction to Cloud Computing 8
 Cluster Computing
 Grid Computing
 Cloud Computing
 Utility Computing
 Beneits of Cloud Computing
 Challenges of Cloud Computing
 Cloud Computing: Network as Computer
 Role of Web Service
 Role of API
2 Cloud Computing Model and Services 8
 Standard Cloud Model
 Cloud Deployment Models
 Service Delivery Models
 Service Abstraction and the SPI Model
 A Traditional System vs Cloud System Model
 SaaS and PaaS: Salesforce.com and Force.com
 Open Cloud Services

80
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Detailed of Theoretical Contents


No. Contents Hours
3 Service-Oriented Architecture 8
 The Pre-SOA Era
 Role of SOA in Cloud Computing
 Service-Oriented Architecture
 Goal of System Designing
 Service Represents Business Functionality
 Open Standard Implementation
 Beneits of SOA and the Cloud Computing
4 File System and Storage on Cloud 8
 Requirements of Data-Intensive Computing
 Model for High-Performance Processing of Large Data-sets
 Cloud Native File System
 Storage Deployment Models
 Storage Types
 Popular Cloud Storages for Developers
 Popular General Purpose Cloud Storages
 Cloud Computing, 1st Edition, 2017, Sandeep Bhowmik, Cambridge
Textbook:
University Press, ISBN-13: 978-1316638101

Detailed of Practical Contents


No. Contents Hours
1 Hadoop 8
 Applications of Hadoop Ecosystems Tools
 Hadoop Ecosystem Tools and Algorithms
 Big Data Management Tools for Hadoop
2 Hands-On Applications 8
 Aerospike
 Cassandra for Windows
 Cloudant
3 Hands-On Applications 8
 InfluxDB
 Redis
 RethinkDB
4 Hands-On Applications 8
 Neo4j: Graphs for Real-World Applications
 MongoDB
 Oracle NoSQL Database
 NoSQL: Database for Storage and Retrieval of Data in Cloud, 1st
Textbook: Edition, Kindle Edition, 2017, by Ganesh Chandra Deka, Chapman and
Hall/CRC, ISBN 9781498784368.

81
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Appendix Laboratory Equipment, Workshops and Laboratories

Laboratory name Capacity of Human Training courses benefiting from the


No.
/ workshop training Resources laboratory / workshop / lab
Master in
(Information
Technology,
Computer All the core courses and elective
1 20 Computer
Software lab courses in computer software
Science,
Software
Engineering)

List of Detailed Equipment for Each Laboratory, Workshop or Lab

Computer Software lab


No. Product's Name Quantity

1. Computer with all required software application 21

82
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

References

1. JavaTM How to Program, Tenth edition

2. Java All=IN-ONE FOR DUMMIES, 4th Edition


Technical Communication, 11th Edition, 2015, Mike Markel, Bedford/St.
3. Martin MacMillan, ISBN-13: 978-1457673375

Technical Communication: Process and Product, 8th Edition, 2013, Sharon


4. Gerson and Steven Gerson, Pearson, ISBN-13: 978-0321864949

New Perspectives on Computer Concepts 2016, Introductory, 18th Edition,


5. 2016, June Jamrich Parsons, Course Technology, ISBN: 9781305387751

Technical Communication: Process and Product, 8th Edition, 2013, Sharon


6.
Gerson and Steven Gerson, Pearson, ISBN-13: 978-0321864949
7. Data Structure & Algorithms in Java, sixth edition
Data Structures and Algorithm Analysis in C++, Addison Wesley, 2014. M. A.
8.
Weiss
Web Programming and Internet Technologies, 2nd edition. By Scobey.
9. Publisher: Jones & Bartlett LearningmRelease Date: September 2016 ISBN:
9781284070699
Needham, Timothy C., Python: For Beginners: A Crash Course Guide To Learn
Textbooks 10. Python in 1 Week (coding, programming, web-programming, programmer),
2017.
An Introduction to Digital Multimedia, T. M. Savage and K. G. Vogel, Second
11.
Edition, Jones and Barlett Learning, 2014, ISBN: 9781449688394.
Computer Networking: A Top-Down Approach, 2017, James Kurose and Keith
12.
Ross, 7th Edition, Pearson, ISBN-13: 978-0133594140
13. Software Engineering, 10 Edition,

14. Modern System Analysis and Design.


Neuburg, Matt, iOS 10 Programming Fundamentals with Swift, O'Reilly Media,
15.
Inc. 2016.
David Benyon, Designing Interactive Systems: A comprehensive guide to HCI,
16.
UX and interaction design, Pearson, 2013.
17. Interaction Design Foundation https://www.interaction-design.org/literature.
V Jenny Preece, Helen Sharp, Yvonne Rogers, Interaction Design: Beyond
18.
Human-Computer Interaction, 4th Edition, John Wiley & Sons, 2015.
F.E. Ritter, G.D. Baxter, and E.F. Churchill Foundations for Designing
19. User−Centered Systems: What System Designers need to know about People,
Springer, 2014.
Jenny Preece, Helen Sharp, Yvonne Rogers, Interaction Design: Beyond
20.
Human-Computer Interaction, 4th Edition, John Wiley & Sons, 2015.

83
Engineering of Computer and Information
KINGDOM OF SAUDI ARABIA Technology
Technical and Vocational Training Corporation
Directorate General for Curricula
Computer Software

Database Systems: Design, Implementation, & Management, 12th Edition,


21. Carlos Coronel and Steven Morris, Course Technology, ISBN-13: 978-
1305627482.
Oracle 12c: SQL, 2015, 3rd Edition, Joan Casteel, Course Technology, ISBN-
22.
13: 978-1305251038
Security in Computing (5th Edition), 2015, Charles P. Pfleeger and Shari
23. Lawrence Pfleeger and Jonathan Margulies, Prentice Hall, ISBN-13: 978-
0134085043
Cyber Security Engineering: A Practical Approach for Systems and Software
24. Assurance, October 2016, 1st Edition, Carol C. Woody and Nancy R. Mead,
Addison-Wesley Professional, ISBN-13: 978-0134189802.
Ravulavaru, Arvind, Learning Ionic: Build real-time and hybrid mobile
25.
applications with ionic, Packt Publishing, 2015.
Modern ERP: Select, Implement, and Use Today's Advanced Business Systems,
26.
3rd Edition, 2015, Marianne Bradford , Lulu, ISBN-13: 978-1312665989
Concepts in Enterprise Resource Planning, 4th Edition, 2014, Ellen Monk and
27. Bret Wagner, Course Technology; ISBN: 3: 978-1-111-82039-8, ISBN-13: 978-
1-111-82040-4
Information Technology Project Management: Providing Measurable
28. Organizational Value, 5th Edition, 2015, Jack T. Marchewka, Wiley, ISBN-
13: 978-1118911013.
Cloud Computing, 1st Edition, 2017, Sandeep Bhowmik, Cambridge University
29.
Press, ISBN-13: 978-1316638101
Big Data Fundamentals: Concepts, Drivers & Techniques, 1st Edition, 2016,
30. Paul Buhler, Wajid Khattak and Thomas Erl, Prentice Hall, ISBN:
9780134291185.
NoSQL: Database for Storage and Retrieval of Data in Cloud, 1st
31. Edition, Kindle Edition, 2017, by Ganesh Chandra Deka, Chapman and
Hall/CRC, ISBN 9781498784368.
"DATAWAREHOUSING FUNDAMENTALS: A COMPREHENSIVE
32. GUIDE
FOR IT PROFESSIONALS", by Paulraj Ponniah, Latest Edition.
"DATAMINING: CONCEPTS AND TECHNIQUES", The Morgan Kaufmann
Series in Data Management Systems, by Jiawei Han, and Micheline Kamber,
33.
The
Latest Edition.

84

You might also like