Course Syllabus For Computer S. PG
Course Syllabus For Computer S. PG
COURSE SYLLABUS
Year I, Semester I
Status
Course Code Course Title Credit Hours ECTS
CoSc5141 Cryptography and Computer Security Not
3 7
Started
CoSc5181 Cloud and Edge Computing On
3 7
Progress
CoSc5121 Distributed Systems On
3 7
Progress
CoSc5171 Seminar in Computer Science Not
1 3
Started
CoSc52*1 Big Data Analytics Not
3 7
Started
Sub Total 0 0
Year I, Semester II
Credit Status
Course Code Course Title ECTS
Hours
CoSc5152 Natural Language Processing 3 7 Completed
CoSc5112 Software Project Management 3 7 Completed
CoSc5162 Research Methods 2 5 Completed
CoSc5132 Machine Learning Not
3 7
Started
CoSc52*2 Digital Image Processing and 3 7 Not
Computer Vision Started
Sub Total 0 0
Method of Assessment
This Course is assessed by a group project, individual assignments, and examination. Each
group project will be presented in the class, defended/demonstrated by the students and
feedbacks will be given to them by the instructor and by other peer students in the class.
Text Book and Reading Materials
1. D. Russell and G.T. Gangemi, Computer Security Basics, OReilly & Associates, 1991.
2. BPB Publications, Security Complete, New Delhi BPB Publications,1999.
3. C. Easttom, Computer Security Fundamentals, Prentice Hall, May 2005.
4. W. Stallings, Network Security Essentials, 2nd edition, Prentice Hall, 2003.
5. L. Fennelly, Effective Physical Security, Butterworth-heinemann, 2003.
6. T. R. Peltier, Information Security Policies, Procedures, And Standards:Guidelines
ForEffective Information Security Management, Auerbach Publications, 2001.
7. E. Michael, Physical Security for IT, Digital Pr, 2004.
8. M. Bishop, Computer Security: Art and Science, Addison-Wesley, 2002.
9. S. Bosworth and M. E. Kabay, Computer Security Handbook, 4th edition, Willey, 2002.
10. M. R. Overly, E-Policy: How to Develop Computer, E-Policy, and Internet Guidelines to
Protect Your Company and its Assets, AMACOM, 1998.
11. S. A. Thomas, SSL and TLS Essentials: Securing the Web, Wiley, 2000.
12. R.J. Anderson, Security Engineering, Ross Anderson, John Wiley & Sons Inc., 2008.
Course Title: Natural Language Processing
Course Code: CoSc5152
Credit Hours: 3 (7 ECTS)
Prerequisite Course(s): None
Description of Course
This course is an introduction to natural language processing - the study of human language
from a computational perspective and designed to get students up to speed of with the current
research in the area. It covers morphology, syntactic, semantic and pragmatic processing
models, emphasizing statistical or corpus-based methods and algorithms. It also covers
applications of these methods and models in syntactic parsing, information extraction, statistical
machine translation, dialogue systems, and summarization.
Learning Outcomes
On successful completion of the course students will be able to explain and apply fundamental
algorithms and techniques in the area of natural language processing (NLP). In particular,
students will:
Describe major trends and systems in Natural Language Processing;
Define: morphology; syntax; semantics; pragmatic processing;
Describe approaches to syntax and semantics in NLP;
Describe approaches to generation, dialogue and summarization within NLP;
Describe current corpus-based methods to NLP;
describe statistical techniques as applied within NLP; and
Describe an application of natural language processing (machine translation,
information retrieval) and show the place of syntactic and semantic processing.
Course Content
1. Natural Language Processing: Background and Overview
2. Lexical Semantics and Word-Sense Disambiguation
3. Morphology
4. Parsing and Syntax
5. Semantic Analysis
6. Pragmatic Processing
7. Natural Language Generation/Summarization
8. Statistical/Corpus-Based NLP
9. Information Extraction
10. Machine Translation
Teaching Strategy/Method:
This course will be offered through lectures, presentations, class discussions, laboratory work
and group project work. Students present their assignments, and get feedbacks.
Method of Assessment
Assignments
Article review
Project and examination
Text Book and Reading Materials
Jurafsky, David, and James H. Martin. Speech and Language Processing:
AnIntroduction to Natural Language Processing, Computational Linguistics and
Speech Recognition. Upper Saddle River, NJ: Prentice-Hall, 2000
Manning, Christopher D., and Hinrich Schütze. Foundations of Statistical Natural
Language Processing. Cambridge, MA: MIT Press, 1999
Allen J, Natural language understanding (2nd ed). Benjamin/Cummings, 1995
Course Title: Research Methods
Course Code: CoSc5162
Credit Hours: 2 (5 ECTS)
Prerequisite Course(s): None
Description of Course
This course presents the research methods and research topics in computer science. Selected
topics are researched under the direct supervision of faculty members, and reports on the
outcome of this research are given in both oral presentations and in written papers. Required of
all students in the M.Sc. program.
The course introduces students to the nature and demands of science and research, provides a
framework for productive writing, and gives opportunities to practice researching, writing, and
presenting that include research paradigms and methodologies across computer science, research
question formulation, design of research approach, literature search and presentation of related
work, analysis of results, verbal and written presentation skills, and research ethics.
Students prepare and defend a thesis proposal or project proposal in an area of their choice
Learning Outcomes
On successful completion of the course students will be able to explain and apply techniques in
the area of research methods. In particular,
To provide a deep and systematic understanding of the nature and conduct of computer
science research
To equip the students with the ability to undertake independent research
To enhance existing transferable key skills
To develop high-order transferable key skills
To remind students of the Legal, Social, Ethical and Professional (LSEP) issues
applicable to the computer industry
To have an understanding of how established techniques of research and enquiry are used
to extend, create and interpret knowledge in Computer Science
To have a conceptual understanding sufficient to:
1. evaluate critically current research and advanced scholarship in Computer
Science, and
2. propose possible alternative directions for further work
Be able to deal with complex issues at the forefront of the academic discipline of
Computer Science in a manner, based on sound judgements, that is both systematic and
creative; and be able to communicate conclusions clearly to both specialists and non-
specialists
Demonstrate self-direction and originality in tackling and solving problems within the
domain of Computer Science, and be able to act autonomously in planning and
implementing solutions in a professional manner
Be able to define and plan a programme of independent research
Participate within the professional, legal and ethical framework within which they would
be expected to operate as professionals within the IT industry
Make use of the qualities and transferable skills necessary for employment requiring:
(i) the exercise of initiative and personal responsibility,
(ii) decision making in complex and unpredictable
situations, and
(iii) the independent learning ability required for
continuing professional development
Have the skills set to be able to continue to advance their knowledge and understanding,
and to develop new skills to a high level, with respect to continuing professional
development as a “self-directed life-long learner” across the discipline of Computer
Science
Course Content
1. Introduction and overview of the research
2. The nature of CS research
3. Design Research
4. Type of Research
5. Literature searches, information gathering, Problem identification.
6. Reading and understanding research papers.
7. Technical writing, referencing, bibliographies.
8. Topics in Computer Science.
9. Presentation skills-written and oral.
10. Choosing or proposing a project.
11. Project planning, tools and techniques for planning.
12. Project conduct, time management, risk management, team working
13. Commercial and economic considerations in IT research and IT industry
14. Review of legal, ethical, social and professional (LSEP) issues including data protection
and standards
Teaching Strategy/Method:
This course will be offered through lectures, presentations, class discussions, group work.
Students present their assignments, and get feedbacks.
Method of Assessment
Assignments
Article review
examination
Text Book and Reading Materials
1. Christian W. Dawson: Projects in Computing and Information Systems (A Student's
Guide). Addison Wesley, 2005
2. Oates, B.J., Researching Information Systems and Computing, Sage Publications, 2005
3. Zobel, J. (2004). Writing for Computer Science - The art of effective communication. 2nd
ed., Springer, 2004
4. Dresch, Aline et al. 2015. Design Science Research: a Method for Science and
Technology
Advancement. Springer International
5. Online tutorials and research papers
Course Title: Seminar in Computer Science
Course Code: CoSc5171
Credit Hours: 1 (3 ECTS)
Prerequisite Course(s): None
Description of the Course
This course is intended to provide a skill in reviewing recently published works and prepare
review report in a selected area of Computer Science.
Learning Outcomes
On successful completion of the course, students will be able to: -
Critically and scientifically evaluate published works.
Identify current research issues in Computer Science.
Prepare well-written reports and present their findings.
Course Content
In this course, the instructor is not expected to make presentations on the subjects of the topics
except coordinating and guiding the class for self-learning. Students are expected to make
critical and scientific evaluations on published works, which are current research issues and
results in selected areas of Computer Science. So that presentations and interactive sessions in
the class on given topics with the help of the facilitator are expected to facilitate the learning
process.
Teaching Strategy
The instructor will avail published research papers to the students. Students, in groups or
individually, critically and scientifically review published papers, prepare well-written
reports and present their findings in a class.
Assessment Criteria
Analyze published articles
Develop assessment report
Method of Assessment
This course is assessed by classroom activities, written report and presentation. Percentage
Contribution to the Assessment
Class Room Activities: 10%
Review Report: 60%
Presentation: 30%
Teaching Support and Inputs for Each Content
Student should find related articles published in journals and conference proceedings, books,
reading materials from the Web, etc.
Course Requirements
Every student should attend all seminar classes.
Students should submit their review report according to the deadline.
Students should present their paper reviews.
Course Calendar
The calendar follows the usual semester duration as per the University legislation. The details
of delivery, assignment deadlines, presentations and examination will be given to the student
one week before commencement of the class.
Reading Materials
Vary depending on the selected topics.
Course Title: Cloud and Edge Computing
Course Code: CoSc5181
Credit Hours: 3 (7 ECTS)
Prerequisite Course(s): None
Course Description
Cloud Computing has become a de facto infrastructure in many business and research
organizations to deliver various user-facing, business, and scientific applications to end users.
The goal of this course is to introduce the underlying technologies that created the current cloud
computing and infrastructure, then discuss the future of clouds by investigating the cutting-edge
research that will soon be part of cloud ecosystems. This is a graduate-level, research-oriented,
and a (mostly) seminar-type course in cloud computing. The instructor will introduce the
fundamentals of cloud computing in the first a few lectures. Then students will read recent
papers and discuss topics such as: Modern Cloud Infrastructures and Applications, Cloud Scale
Machine Learning, Edge, and the Future of Clouds.
In addition, students will have opportunities to present assigned research papers. The students’
presentation should clearly address and summarize motivation, problem statement, the authors’
approach, evaluation, and more discussion ideas like pros/cons, further improvement, etc.
Learning Outcomes
Upon successful completion of this course a student is able to:
Describe the key architectures and applications in edge computing
Critically evaluate research publications on cloud services and edge computing.
Develop presentations for research publications on cloud and edge computing.
Implement open-source cloud and edge computing software for data analytics.
Develop and execute a research project related to data analytics and edge computing.
Course Contents
1. Introduction to Cloud Computing
2. Cloud Fundamentals
2.1. Cloud Service Models
2.2. Data Centres, Cloud Infrastructure, VM, and Containers
2.3. Elasticity and Auto Scaling
2.4. Cloud Applications and Workloads
2.5. Cloud Computing Analytics Pipeline
2.6. Cloud Databases
2.7. Coordination of Cloud Services
3. Cloud Infrastructure
3.1. Large-Scale Cluster Management (i.e.; Resource Sharing, Scheduling, Provisioning)
3.2. Container Orchestration and Micro-Service Management
3.3. Server less Computing and Cloud Functions
4. Introduction to Edge Computing
4.1. Edge Computing Fundamentals
4.2. Future Research Direction/Opportunity in the Cloud and Edge Computing
4.3. Apache Edge
4.4. Geo-Distributed Computing
4.5. Edge Architectures
4.6. Algorithms for Sensor Networks
4.7. Edge Computing Applications
5. Internet of Things (IoT) and New Computing Paradigms
5.1. Introduction
5.2. Relevant Technologies
5.3. Fog and Edge Computing Completing the Cloud
5.4. Hierarchy of Fog and Edge Computing
5.5. Business Models
5.6. Opportunities and Challenges
6. Fog Computing: Integrating IoT + Fog + Cloud Infrastructures
6.1. Introduction
6.2. System Modelling and Research Challenges
6.3. Methodology
6.4. Optimization Problems in Fog and Edge Computing
6.5. Data Management in Fog Computing
6.6. Future Research Directions
Teaching Strategy/Method: Lecture and Laboratory
Lecture and reading assignment
Presentations and Class discussions
Laboratory work and Group work
Method of Assessment
Assignments and Article review
Project and examination
Text Books and Reading Materials
This course does not require a textbook. Course materials will be recent publications from top-
tier cloud/system conferences and journals.
Course Title: Thesis
Course Code: CoSc6191
Credit Hours: 6 (30 ECTS)
Prerequisite Course(s): Completion of All Required Courses
Description of Course
This module is intended to provide a practical skill in carrying out research and documenting and
presenting the findings in a selected area of Computer Science.
Learning Outcomes
At the end of this module, students will be able to:
Know how to understand published papers and other materials related to the thesis title
Understand and apply issues related to research in Computer Science
Write technical reports in the form of journal and workshop papers and thesis
Present and defend research findings
Course Content
The student investigates an original work including a study of its possible implications, its
potential applications, and its relationship to previous related works reported in the literature.
Contributions and results from this investigation are synthesized and compiled into a thesis
presenting the new idea and presented to an examining committee, to be organized by the
Department, and any interested audience.
Teaching Strategy/Methods
Individual investigation of significant areas of Computer Science; Guided study and research
working closely with a faculty member
Method of Assessment
The assessment is based on two aspects: content of the thesis and defense in front of an
examination committee. Issues that will be considered for the content of the thesis are;
Problem formulation and methodology
Prototype or data presentation and interpretation
Literature coverage, Format and Overall Organization
The defense considers presentation skills and response to questions
Text Books and Reading Materials
Articles published in journals and conference proceedings related to the area of the title of the
thesis, books, reading materials from the Web, etc.
Teaching Strategy/method:
Course offering is through lectures, presentations, class discussions, laboratory work and Group
project work. Then students present their assignments, and get feedbacks.
Method of Assessment
Course assessment includes project and examination with percentage contributions:
Written Examination
Practical Project
Text Book and Reading Materials
There is no single text book for the course, thus its recommended that students read appropriate
chapters from the following given reading materials in addition to their own reading materials.
1. Dharma P. Agrawal, Introduction to Wireless and Mobile Systems, Cengage Learning,
3rdEdn, 2011
2. Frank Adelstein , Sandeep KS Gupta, Golden Richard III, Loren Schwiebert,
Fundamentals of Mobile and Pervasive Computing, McGraw-Hill, 2005
3. Jochen H. Schiller, Mobile Communications, Pearson, 2ndEdn., 2003
4. William Stallings, Wireless Communications and Networks, Pearsons, 2ndEdn. 2005