M S Ramaiah Institute of Technology Department of

advertisement
M S Ramaiah Institute of
Technology
Department
of
M.Tech in CSE
Computer
2014
Science and
Engineering
Scheme and Syllabi for
batch 2014-16
CSE/PG-14-16
1
Postgraduate Program in Computer Science and Engineering
Program Educational Objectives (M. Tech)
An M.Tech. (Computer Science & Engineering) graduate of M S Ramaiah Institute of
Technology should, within three to five years of graduation
PEO.1 Pursue a successful career in the field of Computer Science & Engineering or a
related field utilizing his/her education and contribute to the profession as an
excellent employee, or as an entrepreneur
PEO.2 Be aware of the developments in the field of Computer Science & Engineering,
continuously enhance their knowledge informally or by pursuing doctoral studies and
engage in research and inquiry leading to new innovations and products
PEO.3 Be able to work effectively in multidisciplinary and multicultural environments and
Be responsible members and leaders of their communities
PEO.4 Understand the human, social and environmental context of their profession and
contribute positively to the needs of individuals and society at large
These objectives can be demonstrated by performance, actions, or achievements.
PEO1. Pursue a successful career in the field of Computer Science & Engineering or a
related field utilizing his/her education and contribute to the profession as an
excellent employee, or as an entrepreneur
 Gainful employment in a reputed organization or University
 Promotions achieved during the employment period
 Utilization of the technical skill-set in professional activities
 Participating in client-based definition of scope and constructability
 Producing lucid documents such as technical reports, white papers, proposals, etc.
 Make presentations or reports to colleagues/clients
 Using data-driven balanced decision making to analyze engineering and business
trade-offs
 Formulating and delivering a product/process
PEO2. Be aware of the developments in the field of Computer Science & Engineering,
continuously enhance their knowledge informally or by pursuing graduate studies and
engage in research and inquiry leading to new innovations and products
 Acceptance by, satisfactory progress in, or successful completion of a doctoral
program in a reputed institute/university
 Learning a new skill, tool, or system independently
 Attending a technical conference/symposium/workshop/tutorial
 Membership of professional bodies
 Publishing refereed paper in conference/journal
 Publishing/ Reviewing books, book chapters, conference or journal papers
 Delivering guest lectures, seminars and tutorials in Conferences
 Working with Industry on research and innovations.
 Applying for a patent or making a useful invention
 Accounting for larger societal, ethical, legal, business, and technical context while
making decisions on a project
 Utilize the existing knowledge in varied applications
PEO3. Be able to work effectively in multidisciplinary and multicultural environments and
be
responsible members and leaders of their communities
 Working across teams consisting of people from diverse disciplines, cultures and
nationalities
 Use tools for collaboration such as teleconferencing, video conferencing, etc.
 Communicate effectively with clients/team members
 Make appropriate decisions regarding delegation of work, allocation of resources
(time, man power, and hardware and software assets) and responsibilities.
 Anticipate and resolve problems and coordinate the work within a team
 Mentoring a new hire
 Become a team leader for a project
 Election or appointment to leadership position in a professional society
 Organizing/ Chairing
Conferences, symposiums, workshops at National/
International Levels
PEO4. Understand the human, social and environmental context of their profession and
contribute positively to the needs of individuals and society at large
 Identify the civic, environmental, homeland security, healthcare needs of the
community and contribute by applying Computer Science & Engineering to create
services, processes and products.
 Participation and leadership in competitive activities like team sports, quiz, debates,
etc.
 Participation and leadership in community outreach activities as in cultural events,
civic actions, health initiatives.
Program Outcomes (M.Tech.)
An M.Tech. (Computer Science & Engineering) graduate must demonstrate
PO (1) An ability to apply knowledge of mathematics, science, and engineering as it applies
to Computer Science & Engineering
PO (2) An ability to design and conduct experiments, as well as to analyze and interpret data
PO (3) An ability to design a system, component, or process to meet the desired needs
subject to feasibility and sustainability
PO (4) An ability to function on multi-disciplinary teams
PO (5) An ability to identify, formulate, and solve computer science & engineering problems
PO (6) An understanding of professional and ethical responsibility
PO (7) An ability to communicate effectively
PO (8) An understanding of the impact of computer engineering on economic, social and
environmental aspects
PO (9) A recognition of the need for, and an ability to engage in life-long learning
PO (10) A knowledge of contemporary issues
PO (11) An ability to use the techniques, skills, and modern engineering tools necessary for
computer engineering practice
PO (12) An ability to apply design and development principles of software and/or hardware
systems of varying complexity
PO (13) An understanding of the need for information and network security
Mapping of POs with PEOs
Program
Outcomes
PO (1)
PO (2)
PO (3)
PO (4)
PO (5)
PO (6)
PO (7)
PO (8)
PO (9)
PO (10)
PO (11)
PO (12)
PO (13)
PEO1
S
S
S
S
M
S
M
S
M
S
S
S
S
Program Educational Objectives
PEO2
PEO3
S
S
M
S
M
S
M
M
S
S
S
S
S
S
M
S
S
S
M
S
S
S
M
S
S
S
PEO4
M
M
M
S
M
S
S
S
S
S
M
M
S
Table 1: Relationships between Program Educational Objectives and Program Outcomes
Key: S – Strong Relationship; M – Moderate Relationship
Mapping of Courses Contributing to PO Attainment
Sl.
No.
Course
Codes
MCSE 121
1.
MCSE 122
2.
MCSE 123
3.
MCSE 124
4.

MCSE S01
MCSE 125
5.
MCSE 126
6.
MCSE 221
7.
8.
MCSE 222
MCSE 223
9.
10.
MCSE S02
MCSE 224
11.
MCSE 225
12.
MCSE 311
13.
14.
MCSE 312
MCSE 313
15.
16.
17.
MCSE S03
MCSE 401
18.
MCSE E11
Core Courses
Advances in
Operating
Systems
Computer
Networks
Engineering
Random
Variables,
Stochastic
Processes and
Queuing Theory
Topics in
Software
Engineering
Seminar
Software
Development for
Portable Devices
Network
Programming
Lab
Advances in
Computer
Architecture
Embedded
System Design
Formal Models in
Computer
Science
Seminar
Embedded
Systems
Laboratory
High
performance
Computing
Laboratory
Industrial
Training and
Seminar*
Project Phase I
Big Data and
Data Science
Laboratory
Seminar
Project Phase II
Computer
Systems
Performance
Analysis
PO
1
PO
2
PO
3
X
X
X
PO
4
Programme Outcomes
PO PO PO PO PO
5
6
7
8
9
X
PO
10
PO
11
PO
12
PO
13
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
x
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
19.
MCSE E13
20.
MCSE E14
21.
MCSE E15
22.
MCSE E17
23.
MCSE E18
24.
MCSE E20
25.
MCSE E21
26.
MCSE E26
27.
MCSE E28
28.
MCSE E32
29.
MCSE E30
30.
MCSE E37
31.
MCSE E33
32.
MCSE E34
33.
MCSE E35
34.
MCSE E38
35.
MCSE E41
36.
MCSE E43
37.
MCSE E
38.
MCSE E42
39.
MCSE E44
40.
MCSE E 45
Advances in
Artificial
Intelligence
Fault Tolerant
Systems
Digital Image
Processing
Advances in
Compiler Design
Data Structures
& Algorithms
Stochastic
Process
Advanced
Algorithms
Web
Technologies
Multimedia
Communications
Software
Architecture
Cloud Computing
VLSI Design and
Algorithms
Metrics and
Models in
Software Quality
Engineering
Information
Security
Soft Computing
Analysis of
Computer
Networks
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Wireless and
Cellular
Networks
GPU
Programming
using CUDA
Big Data and
Data Science
Advances in
Storage Area
Networks
Information
Retrieval
Topics in
Software Testing
X
X
X
X
X
X
X
X
X
X
X
X
X
X
M S Ramaiah Institute of Technology
(Autonomous Institute, Affiliated to VTU)
Department of Computer Science and Engineering
Revised Scheme of Studies of Master of Technology in Computer Science and
Engineering
(2014-16)
Core Courses
28
Electives
21
Project Work
33
Seminar
04
Industrial Training
07
I Semester M.Tech in Computer Science and Engineering
Code
Subject
MCSE 121
Advances in Operating Systems
MCSE 122
Computer Networks Engineering
MCSE 123
Random Variables, Stochastic Processes and
Queuing Theory
MCSE 124
Topics in Software Engineering
MCSE S01
Seminar
MCSE E
Elective 1
MCSE E
Elective 2
MCSE 125
Software Development for Portable Devices
MCSE 126
Network Programming Lab
Two Electives to be chosen from Group A
L
3
3
4
Total
T
0
0
0
3
0
3
3
0
0
0
0
0
0
0
0
II Semester M.Tech in Computer Science and Engineering
Code
Subject
MCSE 221
Advances in Computer Architecture
MCSE 222
Embedded System Design
MCSE 223
Formal Models in Computer Science
MCSE S02
Seminar
MCSE E
Elective 3
MCSE E
Elective 4
MCSE E
Elective 5
MCSE 224
Embedded Systems Laboratory
MCSE 225
High performance Computing Laboratory
Two Electives to be chosen from Group A
III Semester M.Tech in Computer Science and Engineering
Code
Subject
MCSE 311
Industrial Training and Seminar*
MCSE 312
Project Phase I
MCSE E
Elective 6
MCSE E
Elective 7
MCSE 313
Big Data and Data Science Laboratory
Two Electives to be chosen from Group B
IV Semester M.Tech in Computer Science and Engineering
Code
Subject
L
MCSE S03
Seminar
0
MCSE 401
Project Phase II
0
T
0
0
0
0
0
T
0
0
1
1
0
0
1
1
P
7
10
0
0
2
P
2
23
Total
100
Credits: 25
P Credit CIE
1
4
50
1
4
50
0
4
50
4
1
3
3
1
1
Total
T P
0 1
0 0
0 1
0 1
0 0
0 0
0 0
0 1
0 2
L
3
4
3
0
3
3
3
0
0
L
0
0
3
3
0
Practical
07
50
50
50
50
50
50
Credits:
Credit
4
4
4
1
3
3
3
1
2
25
CIE
50
50
50
50
50
50
50
50
50
SEE
50
50
50
50
50
50
50
SEE
50
50
50
50
50
50
50
50
Total Credits: 25
Credit CIE
SEE
7
50
10
50
3
50
50
3
50
50
2
50
50
Total Credits: 25
Credit
CIE
SEE
2
50
23
100
100
Group A Electives
MCSE E11: Computer Systems Performance
Analysis
MCSE E13: Advances in Artificial Intelligence
MCSE E14: Fault Tolerant Systems
MCSE E15: Digital Image Processing
MCSE E17: Advances in Compiler Design
MCSE E18: Data Structures & Algorithms
MCSE E20: Stochastic Process
MCSE E21: Advanced Algorithms
MCSE E26: Web Technologies
MCSE E28: Multimedia Communications
MCSE E32: Software Architecture
Group B Electives
MCSE E30: Cloud Computing
MCSE E33: Metrics and Models in Software
Quality Engineering
MCSE E34: Information Security
MCSE E35: Soft Computing
MCSE E37: VLSI Design and Algorithms
MCSE E38: Analysis of Computer Networks
MCSE E41: Wireless and Cellular Networks
MCSE E42: Advances in Storage Area
Networks
MCSE E43: GPU Programming using CUDA
MCSE E44: Information Retrieval
MCSE E 45: Topics in Software Testing
MCSE E12: Big Data and Data Sciences
L - Lecture, T – Tutorial, P-Practical, CIE-Continuous Internal Evaluation, SEE-Semester
End Evaluation.
NOTE:
1. The hours/week shown in the column Tutorial/Practical is the contact hours for
students. The teachers should provide guidance.
2. Faculty handling M.Tech classes should give a lesson plan including the topics to
be covered in Tutorial by first week of the class.
3. Industrial Training and Seminar: The students should devote minimum 8 weeks
after availing 2 weeks of vacation at the end of 2nd Semester and before the Start
of 3rd Semester. The Training can be in any of the advanced technology of
Relevance to Industry. The training can be either a Certification / Summer
Training inside the Institution / Technology Survey / Mini project on Industry
Relevant Recent Technology. At the end of the Training, Student should give a
seminar and demo of the Technology learnt. For Industrial Training each student
will be assigned a Mentor.
4. Project Phase I: This is carried out in addition to regular courses in the 3rd
Semester. During this phase, problem identification, literature survey, test plan,
formation of detailed specifications (SRS document), higher level design should
be completed. A report on this work must be submitted and a presentation on the
same must be given at the end of 3rd Semester. This is to be evaluated for 10
credits by the Department Committee constituted for the purpose.
5. Project phase II: Project to be completed with detailed design, implementation,
test case preparations, testing and demonstration.
6. During the final project viva, students have to submit all the reports. The project
evaluation and viva-voce will be conducted by a committee constituted for this
purpose.
7. The student should prepare a consolidated report in IEEE format and should
submit it for possible publication in National/International Conferences/Journals
before the submission of the Thesis.
8. The students should periodically meet their guide and maintain a log book with
periodic milestones achieved.
9. Seminar in first, second and fourth semesters should be given on the topics taken
from Research Articles from reputed Journals/Conferences.
I. Rubrics for Assessment of Student Performance in Seminar
Seminars are used as course delivery modes to encourage students to gather current
trends in technology, research literature, and self-learn topics of their interest. Seminars
require students to research a technical topic, make presentations and write a detailed
document on their findings.
The student is expected to :
1. Identify seminar topics based on contemporary technical, societal and
environmental issues.
2. Conduct literature survey on complex issues in the selected domain
3. Learn or explore advanced technologies
4. Make good oral and written technical presentations
Assessment
Level C
Level B
Level A
50-75
75-90
90-100
Criteria
% Marks to
be awarded
Literature
Few sources, aware of
Multiple sources of
Multiple sources of
survey
quality of resources
high quality, good
high quality, well
and relevance to
judgment of the
researched and
problem at hand
information,,
analyzed, continuous
identification of gaps
efforts at acquiring
in knowledge
information
Assessment
Level C
Level B
Level A
50-75
75-90
90-100
Criteria
% Marks to
be awarded
Report Writing
Reasonably good
Sound organization
Excellent
organization and lacks
and structure, clear,
organization, no
clarity in few topics,
very few errors,
technical or grammar
complete, few
complete, reasonably
errors, concise and
omissions,
good style
precise, complete
grammatically correct,
documentation
lacks style
Presentation
Reasonably good
Good , professional
Excellent professional
and viva voce
communication and
communication,
and technical
presentation, able to
good visual aids,
communication,
give technical answers
able to give technical
effective
to some extent
answers
presentations, able to
analyze technically
and clarify views in
viva-voce
Technical paper
Accepted in any
Accepted and
Accepted in any
presentation in
National Level
Presented in any
International
reputed
Conferences/ Journals
International
Conferences/Journals
Journals or
Conferences/Journals
held in outside India
Conferences
held in India.
Standards as
IEEE/ACM.
II. Rubrics for Assessment of Student Performance in Industrial Training
Industrial Training is used as course delivery mode to encourage students to gather current
trends in Industry and the usage of newer technology in any of the reputed Industries. In
this way the student is able to gather the knowledge of working environment at the Industry
during his/her Course.
At the end of the Industrial Training the Student is required to prepare a presentation on the
training at the Industry and present the same in front of the committee constituted at the
Department.
He will be then accessed on the new technology Learnt, the documentation skills of the
same, exposure and demonstration of any Tools and Techniques Learnt and his presentation
Skills.
Assessment
Level C
Level B
Level A
50-75
75-90
90-100
Criteria
% Marks to be
awarded
Tools and new
Few sources at the
Multiple sources of
Multiple sources of
Technology
Industry, aware of quality
high quality, good
high quality, well
Learnt
of resources and relevance
judgment of the
researched and
to tools and Techniques at
information,,
analyzed, continuous
hand
identification of gaps
efforts at acquiring
in knowledge at the
information.
Industry and
Academics.
Identification of the
application of the
tools and Technology
learnt to the present
market.
Assessment
Level C
Level B
Level A
50-75
75-90
90-100
Criteria
% Marks to be
awarded
Report Writing
Reasonably good
Sound organization
Excellent
organization and lacks
and structure, clear,
organization, no
clarity in few topics,
very few errors,
technical or grammar
complete, few omissions,
complete, reasonably
errors, concise and
grammatically correct,
good style
precise, complete
lacks style
documentation
Demonstration of
Moderately be able to
Efficiently be able to
Excellent
the Tools Learnt
demonstrate the tools
demonstrate the
demonstration of the
learnt at the Industry
skills learnt and be
tools and techniques
able to propose an
learnt and be able to
application for the
apply it to any simple
same.
case study.
Presentation and
Reasonably good
Good , professional
Excellent professional
viva voce
communication and
communication,
and technical
presentation, able to give
good visual aids,
communication,
technical answers to some
able to give technical
effective
extent
answers
presentations, able
to analyze technically
and clarify views in
viva-voce
III. Rubrics for Assessment of Student Performance in Project Phase I
Assessment
Level C
Level B
Level A
50-75
75-90
90-100
Criteria
% Marks to
be awarded
Problem
Moderately aware, clear
Problem domain well
Has investigated
definition
description, broad idea
understood, clear and
problem domain
about relevance to current
specific description of
extensively,
technical and social
problem, relevance well
context
identified
Literature
Few sources, aware of
Multiple sources of high
Multiple sources of
survey
quality of resources and
quality, good judgment
high quality, well
relevance to problem at
of the information,,
researched and
hand
identification of gaps in
analyzed, continuous
knowledge.
efforts at acquiring
information
Requirements
Multiple, clear, specific,
Many, varied, clear,
Complete
Specification
functional requirements
measurable
requirements –
requirements, include
functional, non-
some non-functional
functional,
requirements
performance, security
related considered,
clear and measurable
High Level
Mostly correct, minor
Technically correct,
Technically correct
Design /
errors in applying theory
meets requirements
with innovative
System
and techniques, meets
application of theory
Architecture
requirements
and techniques
Assessment
Level C
Level B
Level A
50-75
75-90
90-100
Criteria
% Marks to
be awarded
Report Writing
Reasonably good
Sound organization and
Excellent
organization and lacks
structure, clear, very
organization, no
clarity in few topics,
few errors, complete,
technical or grammar
complete, few omissions,
reasonably good style
errors, concise and
grammatically correct,
precise, complete
lacks style
documentation
Presentation
Reasonably good
Good , professional
Excellent professional
and viva voce
communication and
communication, good
and technical
presentation, able to give
visual aids, able to give
communication,
technical answers to some
technical answers
effective
extent
presentations, able to
analyze technically
and clarify views in
viva-voce.
Attitude and
Acceptable posture and
Appropriate posture and
Professional
team work
appearance, team roles
appearance, Well
approach, team
defined but members fulfill
defined team roles,
members work with
only minimally
individualistic members
synergy in their roles,
who focus only on their
help other team
roles, lacks synergy
members also
( Applicable if
working in
Industry )
IV. Rubrics for Assessment of Student Performance in Project Phase II
Assessment
Level C
Level B
Level A
50-75
75-90
90-100
Criteria
% Marks to be
awarded
Detailed Design
Mostly correct, minor
Technically correct,
Technically correct with
errors in applying
meets requirements
innovative application of
theory and techniques,
theory and techniques
meets requirements
Implementation
Few errors in
Correct algorithmic
Technically sound
algorithms and
approach and choice
implementation with
programming style,
of tools, meets
excellent programming
correct choice of
deadlines and
style, s, finishes well
hardware and software
schedule
within deadline
tools, misses some
deadlines
Testing and
Poor planning and
Able to identify test
Clear test plans created in
results
specification of test
plans for most
advance, meets all
cases, meets functional
requirements, meets
requirements, optimized
requirements
requirements
solution
Reasonably good
Sound organization
Excellent organization, no
organization and lacks
and structure, clear,
technical or grammar
clarity in few topics,
very few errors,
errors, concise and
complete, few
complete, reasonably
precise, complete
omissions,
good style
documentation
Report Writing
grammatically correct,
lacks style
Assessment
Level C
Level B
Level A
50-75
75-90
90-100
Criteria
% Marks to be
awarded
Presentation
Reasonably good
Good , professional
Excellent professional and
and viva voce
communication and
communication,
technical communication,
presentation, able to
good visual aids,
effective presentations,
give technical answers
able to give technical
able to analyze
to some extent
answers
technically and clarify
views in viva-voce
Attitude and
Acceptable posture and
Appropriate posture
Professional approach,
team work
appearance, team roles
and appearance,
team members work with
defined but members
Well defined team
synergy in their roles,
fulfill only minimally
roles, individualistic
help other team members
members who focus
also
(Applicable if
working in
Industry )
only on their roles,
lacks synergy
Technical paper
Accepted in any
Accepted and
Accepted in any
presentation in
National Level
Presented in any
International
reputed Journals
Conferences/ Journals
International
Conferences/Journals held
Conferences/Journals
in outside India Standards
held in India.
as IEEE/ACM.
or Conferences
V. Rubrics for Assessment of Student Performance in Lab Courses:
Trait
Barely
Acceptable
Basic
Good
Very Good
Specifications
The
program
is
producing
incorrect
results.
The
program
produces
correct results
but does not
display
them
correctly.
The program works and
produces
the
correct
results and displays them
correctly. It also meets
most
of
the
other
specifications.
The
program
works and meets
all
of
the
specifications.
Readability
The code is poorly
organized and very
difficult to read.
The
code
is
readable
only
by
someone
who
knows
what
it
is
supposed to be
doing.
The code is fairly easy to
read.
The
code
is
exceptionally well
organized
and
very
easy
to
follow.
Reusability
The code
organized
reusability.
not
for
Some parts of
the code could
be reused in
other
programs.
Most of the code could be
reused
in
other
programs.
The code could be
reused as a whole
or each routine
could be reused.
Documentation
The documentation is
simply
comments
embedded
in
the
code and does not
help
the
reader
understand the code.
The
documentation
is
simply
comments
embedded
in
the code with
some
simple
header
comments
separating
routines.
The
documentation
consists of embedded
comment
and
some
simple
header
documentation that is
somewhat
useful
in
understanding the code.
The
documentation is
well written and
clearly
explains
what the code is
accomplishing and
how.
Delivery
The code was more
than
2
weeks
overdue.
The code was
within 2 weeks
of
the
due
date.
The
program
was
delivered within a week
of the due date.
The program was
delivered on time.
Efficiency
The code is huge and
appears
to
be
patched together.
The
code
is
brute force and
unnecessarily
long.
The code is fairly efficient
without
sacrificing
readability
and
understanding.
The
code
is
extremely
efficient
without
sacrificing
readability
and
understanding.
is
Deliverables Student Performance in Industrial Training:
Industrial Training Title: __________________________________________
Company Name : _________________________________________________
Name of Student: _________________________________________________
Name of Supervisor at Company: _____________________________________
Name of Supervisor at College: _______________________________________
Each supervisor on the project must fill a rubric for each student
Basic
(0-4 Pts)
Good
(5-7 Pts)
Very Good
(10 Pts)
Tools and new
Few sources at
Multiple sources
Multiple sources
Technology
the Industry,
of high quality,
of high quality,
Learnt
aware of quality
good judgment of
well researched
of resources
the information,
and analyzed,
and relevance
identification of
continuous
to tools and
gaps in
efforts at
Techniques at
knowledge at the
acquiring
hand
Industry and
information.
Academics.
Identification of
Total
Possible
10
the application of
the tools and
Technology
learnt to the
present market.
Relevance of the
Fairly Relevant
topic chosen to
Moderately
Highly Relevant
10
Relevant
the current
market
Report Writing
Reasonably
Sound
Excellent
good
organization and
organization, no
organization
structure, clear,
technical or
and lacks clarity
very few errors,
grammar errors,
in few topics,
complete,
concise and
complete, few
reasonably good
precise,
omissions,
style
complete
10
Earned
grammatically
documentation
correct, lacks
style
Demonstration
Moderately be
Efficiently be able
Excellent
of the Tools
able to
to demonstrate
demonstration of
Learnt
demonstrate
the skills learnt
the tools and
the tools learnt
and be able to
techniques learnt
at the Industry
propose an
and be able to
application for the
apply it to any
same.
simple case
10
study.
Presentation
Reasonably
Good ,
Excellent
and viva voce
good
professional
professional and
communication
communication,
technical
and
good visual aids,
communication,
presentation,
able to give
effective
able to give
technical answers
presentations,
technical
able to analyze
answers to
technically and
some extent
clarify views in
viva-voce
10
Deliverables before final project presentation:
You should submit the following documents to your supervisors
Interim Progress Assessment Rubric
Project: ________________________________________
Name of Student: _________________________________
Name of Supervisor: _______________________________
Each supervisor on the project must fill a rubric for each student
Problem
formulation
Selfmotivation
and project
manageme
nt
Barely
acceptable
( 0 – 2 Pts)
 Bare formulation
 Bare
understanding
of the problem,
with scarce
knowledge of
relevant material
 Slow progress,
with barely
satisfactory result
 Unresponsive to
supervisor
Basic
(3 Pts)
Good
(4 Pts)
Very Good
(5 Pts)
 Basic
formulation
 Basic
understanding of
the problem, but
lack appropriate
study of
relevant
material
 Clear
formulation
 Good
understanding
of
the problem,
with
study of
relevant
material
 Good
system
analysis
 Slow progress,
with basic
project
outcome
 Rely on
supervisor’s
push
to work
 Good
progress
 Need
reminder
sometimes
 Minor
problems
in project
manageme
 Clear
formulation
with well
defined
scope
 Very good
understandin
g of
the problem
and
relevant
material
 Near
production
quality
system
analysis
 Steady
progress
 Highly selfmotivated
Good
project
managemen
t
Total
Possible
5
5
Earned
Design Development and Solution Asset Rubric
Project: ________________________________________
Name of Student: _________________________________
Name of Supervisor: _______________________________
Each supervisor on the project must fill a rubric for each student
Analysis and
solving skills
Barely
acceptable
( 0 – 2 Pts)
 Obvious
solution,
sketchy
functionalities
Innovation
in
the Design
Solution and
self-study
 Basic
concepts
used correctly
 Lack selfstudy,
but apply
previously
taught
technique on a
satisfactory level
Selfmotivation
and project
management
 Slow
progress,
with barely
satisfactory
result
 Unresponsive
to Supervisor
Basic
(3 Pts)
Good
(4 Pts)
Very Good
(5 Pts)
 Simple,
yet mostly
complete
solution that
solves the
stated
problem
 Superficial
usage of
new
concepts
 Self-study
of new
technique,
with basic
understanding
 Complete
solution with
nontrivial
functionalities
that meet the
desired needs
 Provide
solution
to complex
problems;
Solution
optimize
desired needs
 New
concepts
used
frequently
 Self-study
of new
technique and
solve technical
difficulties;
 Innovative
work
with research
value
 Good
progress
 Need
reminder
sometimes
 Minor
problems
in project
management
 Slow
progress,
with basic
project
outcome
 Rely on
supervisor’s
push to
work
 Self-study of
new
concepts /
technique,
with
good
understanding
 Minor
innovative
Work

Good
progress
 Need
reminder
sometimes
 Minor
problems
in project
management
Total
Possible
5
5
5
Earned
Written Report Rubric:
Project: ________________________________________
Name of Student: _________________________________
Name of Supervisor: _______________________________
Content
Writing
Barely
acceptable
( 0 – 2 Pts)
 Important
points
covered only
superficially
 No major
errors
and
misconception
 Frequent
errors
in spelling
and
grammar
 Mostly
readable, but
a
few points are
hard to
understand
Basic
(3 Pts)
Good
(4 Pts)
Very Good
(5 Pts)
 Covers
important
points
 A few
inaccurate
or irrelevant
points
 All major
points
covered and
explained
clearly and
correctly
 Major
points
strongly
supported
with
suitable
detail
 Some
errors in
spelling and
grammar

Readab
le

Follow
basic
written report
structure
 A few
errors in
spelling and
grammar
 Readable
and
easy to
understand
 Well
proofread
 Clear and
easy to
understand
 Graphs and
diagrams
used
appropriately
Total
Possible
5
5
Earned
Final Presentation Rubric
Project: ________________________________________
Name of Student: _________________________________
Name of Supervisor: _______________________________
Content
Presentation
Skills
Communication
(Q/A)
Barely
acceptable
( 0 – 2 Pts)
 Important
points
covered only
superficially
 No major
errors
and
misconception
 Bare
organizatio
n
and
preparation
 Lack of
confidence
and
familiarity
in
some parts of
the
presentation
 Answer at
least
one questions
correctly
 Need
clarification
Basic
(3 Pts)
Good
(4 Pts)
Very Good
(5 Pts)
 Covers
important
points
 A few
inaccurate
or
irrelevant
points
 Basic
organization
and
preparation
 Confident
in
only some
parts of the
presentation
 All major
points
covered and
explained
clearly and
correctly
 Major points
strongly
supported with
suitable detail
 Good
organization
and
preparati
on
 Confident
in
most parts
of
the
presentat
ion
Attractive to
audience
 Answer
most
questions
correctly
and
concisely
 Excellent
organization
and
preparation
Confident and
relaxed in the
whole
 presentation
Engaging to
audience
 Answer
most
questions
correctly
 Need
clarification
sometimes
 Handle
difficult
questions with
ease and
confidence
 Illustrative
explanation
Total
Possible
5
5
5
Earned
STUDENT SEMINAR EVALUATION RUBRIC
Student Name _________________________Date ______________
Title/Topic _________________________________________________
Name of Supervisors: 1._______________________________
2._______________________________
Evaluate the student’s presentation employing the following range-scored criteria
Barely
Basic
Good
Very Good
Total
acceptable
(3 Pts)
(4 Pts)
(5 Pts)
Possible Earned
( 0 – 2 pts)
Speaking
 Mumbles
 Incorrectly
 Incorrectly
 Correct,
5
Skills &
and/or
pronounces
pronounces
precise
Elocution Incorrectly
some terms
few terms
pronunciation of
not
pronounces
Voice
Voice is clear
all
ability to
some terms
fluctuates
with few
terms Voice is
speak
Voice is low;
from low to
fluctuations;
clear and
English
difficult to hear
clear; difficult
audience
steady;
language
to
can hear well
audience can
hear at times
most of the
hear well at all
time
times
Audience
Completely lost
Difficulty
Held audience
Held audience’s
5
interaction
audience
holding
attention
attention
attention;
audience
most of the
throughout,
started
attention, facts
time; polite
points made
responding
presented
in
in creative way;
before
with little or no
answering
listened
questions
imagination;
questions,
carefully to
finished;
lengthy
but
audience
answers often
answers,
not as directly
questions and
unrelated
sometimes
responded
to the question
without
directly to
asked
answering the
question asked
question asked
Subject
Does not have
Superficial
Adequate
Demonstrates
5
knowledge
grasp of
knowledge of
knowledge of
in depth
information;
topic; only able
most topics;
knowledge;
cannot
to answer
answers
answers
answer
basic questions
questions, but
questions with
questions
fails to
explanations
about
elaborate
and
subject.
elaboration
Organizatio
n of
presentatio
n
 Hard to follow;
sequence
of information
jumpy
 Most of
information
presented in
sequence
 Information
presented in
logical
sequence;
easy to
follow
 Information
presented as
interesting story
in logical,
easy to follow
sequence
5
Evaluate the student’s presentation employing
Barely
Basic
acceptable
(3 Pts)
( 0 – 2 pts)
Background Material not
Material
content
clearly
sufficient for
related to topic
clear
OR
understanding
background
but not clearly
dominated
presented
seminar
Methods
Methods too brief Sufficient for
or
understanding
insufficient for
but not
adequate
clearly
understanding
presented
OR too
detailed
Results
 Some figures
 Majority
(figures,
hard to Read
appropriately
graphs,
 Some in
Formatted
tables,
inappropriate
 Reasonably
etc.)
Format
explained
 Some
 Significance
explanations
mentioned
lacking
Graphics
Uses graphics
Uses graphics
(use
that rarely
that
of
support text and
relate to text
Powerpoint
presentation
and
)
presentation
Eye contact
 Reads most
 Refers to
and Length
slides; no or
slides to make
and Pace
just occasional
points;
eye contact
occasional eye
 Short; less
contact
than 30 min
 Short 40 min
 Rushed OR
OR long
dragging
>50
throughout
 Rushed OR
dragging in
parts
Conclusions conclusions not
conclusions
supported
could be
by evidence; no
supported by
discussion of
stronger
implications
evidence;
and future work
minimal
discussion of
implications
and future work
the following range-scored criteria
Good
Very Good
Total
(4 Pts)
(5 Pts)
Possible Earned
Material
sufficient for
clear
understanding
AND
effectively
presented
Sufficient for
understanding
AND
effectively
presented
Material
sufficient for
clear
understanding
AND
exceptionally
presented
Sufficient for
understanding
AND
exceptionally
presented
5
 Most figures
clear
 Most
appropriately
Formatted
 Well
explained
 All figures clear
 All
appropriately
formatted
 Exceptionally
explained
5
Uses graphics
that
explain text
and
presentation
 Refers to
slides to
make points;
eye contact
majority of
time
 Adequate
40-45 min
 Most of the
seminar well
pace
conclusions
supported by
evidence;
some
discussion of
implications
and future
direction
Uses graphics
that explain
and reinforce
text and
presentation
 Refers to slides
to make
points;
engaged with
Audience
 Appropriate
(45-50 min)
 Well-paced
throughout
5
insightful
conclusions
supported by
evidence;
discusses
implications
and application;
recommends
future
directions for
research
5
5
5
Semester: I
Course Title: Advances in Operating Systems
Credits (L:T:P) : 3:0:1
Type of Course: Lecture, Practicals
Year: 2014- 2016
Course Code: MCSE 121
Core/ Elective: Core
Total Contact Hours: 56
Prerequisites: Operating Systems
Course Objectives:
The objective of this course is to make the students to

Identify the basic resource management responsibilities of an operating system

Understand the concept of a process, list the various process state transitions and
distinguish between a process from a thread

Design and implement a concurrent programming application using semaphores &
monitors for process control

Analyze the necessary conditions for deadlock, implement deadlock avoidance,
prevention & recovery, Understand virtual memory concepts, paging and
segmentation

Implement process and disk scheduling algorithms, provide protection using access
controls.
Course Contents:
Unit I
Process Synchronization: Overview, Synchronizations mechanisms – Introduction,
concept of a process, concurrent processes, critical section problem, other
synchronization problems. Distributed Operating Systems: Architectures of
Distributed Systems - System Architecture types, issues in distributed operating
systems, communication networks - communication primitives Theoretical Foundations inherent limitations of a distributed system lamp ports logical clocks - vector clocks casual ordering of messages - global state -cuts of a distributed computation termination detection.
Unit 2
Distributed Mutual Exclusion - introduction - the classification of mutual exclusion and
associated algorithms - a comparative performance analysis Distributed Deadlock
Detection -Introduction - deadlock handling strategies in distributed systems - issues in
deadlock detection and resolution - control organizations for distributed deadlock
detection - centralized and distributed deadlock detection algorithms hierarchical
deadlock detection algorithms.
Unit 3
Agreement protocols - introduction-the system model, a classification of agreement
problems,
applications of agreement algorithms.
Distributed resource
management: Distributed File Systems- introduction-architecture - mechanism for
building distributed file systems - design issues - log structured file systems. Distributed
shared memory-Architecture- algorithms for implementing DSM - memory coherence
and protocols - design issues.
Unit 4
Distributed Scheduling - introduction - issues in load distributing components of a load
distributing algorithm - stability load distributing algorithm - performance comparison
selecting a suitable load sharing algorithm requirements for load distributing -task
migration and associated issues. Failure Recovery: Introduction- basic concepts classification of failures - backward and forward error recovery, backward error
recoveryrecovery in concurrent systems - consistent set of check points synchronous and asynchronous check pointing and recovery check pointing for
distributed database systems- recovery in replicated distributed databases.
Unit 5
Protection and security Resource Security and Protection:-preliminaries, the access
matrix model and its implementations safety in matrix model- advanced models of
protection Multiprocessor operating systems: Multiprocessor System Architecturesbasic multiprocessor system architectures - inter connection networks for multiprocessor
systems - caching - hypercube architecture. Multiprocessor Operating System structures of multiprocessor operating system, operating system design issues- threads
Process synchronization issues related to instructions Process scheduling : issues, coscheduling, Smart scheduling.
Laboratory Work:
(The following programs can be executed on any available and suitable platform)
1. Design, develop and execute a program using any thread library to create the
number of threads specified by the user; each thread independently generates a
random integer as an upper limit, and then computes and prints the number of
primes less than or equal to that upper limit along with that upper limit.
2. Rewrite above program such that the processes instead of threads are created
and the number of child processes created is fixed as two. The program should
make use of kernel timer to measure and print the real time, processor time,
user space time and kernel space time for each process.
3. Design, develop and implement a process with a producer thread and a consumer
thread which make use of a bounded buffer (size can be prefixed at a suitable
value) for communication. Use any suitable synchronization construct.
4. Design, develop, and execute a program to solve a system of n linear equations
using Successive Over-relaxation method and n processes which use Shared
Memory API.
5. Design, develop, and execute a program to demonstrate the use of RPC.
Text Book :
1. Mukesh Singhal, Niranjan G.Shivaratri, "Advanced concepts in operating systems:
Distributed, Database and multiprocessor operating systems", TMH, 2009
Reference Books:
1. Andrew S.Tanenbaum, "Modern operating system", PHI, 2003
2. Pradeep K.Sinha, "Distributed operating system-Concepts and design", PHI, 2003.
3. Andrew S.Tanenbaum, "Distributed operating system", Pearson education, 2003.
Course Delivery:
The course will be delivered through lectures, class room interaction, Practicals, SelfStudy, online courses, group discussion, and demonstrations.
Course Assessment and evaluation:
Indirect
Assessment
Methods
Direct
Assessment
Methods
What
CIE
SE
E
Internal
Assessment
Tests
Practical, Mini
Project and
Certification
To
Whom
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
Thrice(Average of
the best two will
be computed)
25
Blue Books
1,2, 3,4 & 5
Once
25
Code
Reposition,
Certificates
2&4
End of Course
(Answering
5 of 10 questions)
100
Answer scripts
1,2, 3,4 & 5
Questionnaire
1,2, 3,4 & 5
Effectiveness of
Delivery of
instructions &
Assessment
Methods
Studen
ts
Standard
Examination
Students
Feedback
When/ Where
(Frequency in
the course)
Studen
ts
-
End of the course
End of Course
Survey
Course Outcomes:
At
1.
2.
3.
4.
the end of the course the students should be able to:
Understand and implement concurrent processes
Understand the basic concepts of Distributed Operating Systems and its architecture
Identify the Distributed resource management and design issues
Implementation of CPU scheduling, IPC memory management, recovery and concurrent
algorithms
5. Understand the concepts of multiprocessor operating systems and to apply related
algorithms
Mapping course outcomes with program outcomes:
Course Outcomes
Program Outcomes
PO
1
x
PO
2
x
PO
3
x
Understand the basic concepts
of
Distributed
Operating
Systems and its architecture.
x
x
x
x
x
Identify the Distributed
resource management and
design issues.
x
x
x
x
x
Understand and implement
concurrent processes.
PO
4
PO
5
x
PO
6
PO
7
PO
8
PO
9
PO
10
x
PO
11
PO
12
PO
13
Implementation of CPU
scheduling, IPC memory
management, recovery and
concurrent algorithms.
Understand the concepts of
multiprocessor
operating
systems and to apply related
algorithms
x
x
x
x
x
x
x
x
x
x
x
Semester: I
Year: 2014 - 2016
Course Title: Computer Networks Engineering
Course Code: MCSE 122
Credits (L:T:P) : 3:0:1
Core/ Elective: Core
Type of course: Lecture/ Laboratory/ /Project
Total Contact Hours: 56
Prerequisites:
Data Communications, Computer Networks
Course Objectives:
The objective of this course is to make the students to

Understand the networks architecture and quantitative performance metrics that
drive network design..

Discuss the basic model of switched networks and key elements of the Internet
Protocol.

Examine the various concepts of Internet and principles of the TCP/IP protocol
suite.

Analysis the how congestion control works and concepts of resource allocation.

Identify the significance of application layer and protocol they use.
Course Contents:
Unit 1
Review of Basic Concepts: Building a Network; Applications; Requirements; Network
Architecture; Implementing Network software; Performance; Physically connecting
hosts; Hardware building blocks.
Unit 2
Packet Switching: Switching and forwarding; Bridges and LAN Switches; Cell
Switching; Implementation and Performance. Internetworking: Simple internetworking
(IP); Routing; Global Internet; Multicast; MPLS.
Unit 3
End–to-End Protocols: Simple De-multiplexer (UDP); Reliable byte stream (TCP);
RPC; RTP.
Unit 4
Congestion Control and Resource Allocation: Issues in resource allocation; Queuing
discipline; TCP Congestion Control; Congestion-Avoidance mechanisms; Quality of
Service.
Unit 5
Applications: Traditional applications; Web services; Multimedia applications; Overlay
Networks.
Laboratory Work:
Using any Protocol Analyzer like Ethereal, perform the following experiments:
1. Capture the packets that are transmitted after clicking on the URL of the web site
of your college. Analyze the packets at the highest level and prepare a brief
report of your analysis.
2. Analyze the data captured above at lower levels and demonstrate the layering of
the protocols.
3. Capture the ARP packets and find the MAC addresses in the LAN in your
laboratory.
Laboratory Work:
Using any Protocol Analyzer like Ethereal, perform the following experiments:
1. Capture the packets that are transmitted after clicking on the URL of the web
site of your college. Analyze the packets at the highest level and prepare a
brief report of your analysis.
2. Analyze the data captured above at lower levels and demonstrate the layering
of the protocols.
3. Capture the ARP packets and find the MAC addresses in the LAN in your
laboratory.
Using either NS2/OPNET or any other suitable simulator, perform the following
experiments:
1. Simulate a three nodes point – to – point network with duplex links between
them. Set the queue size and vary the bandwidth and find the number of
packets dropped.
2. Simulate the transmission of ping messages over a network topology consisting
of 6 nodes and find the number of packets dropped due to congestion.
3. Simulate an Ethernet LAN using n nodes and set multiple traffic nodes and plot
congestion window for different source / destination.
Text Book:
1. Larry L. Peterson and Bruce S. Davie: Computer Networks – A Systems
Approach, 5th Edition, Elsevier, 2011.
Reference Books:
1. Behrouz A. Forouzan: Data Communications and Networking, 4th Edition, Tata
McGraw Hill, 2012.
2. William Stallings: Data and Computer Communication, 8th Edition, Pearson
Education, 2012.
3. Alberto Leon-Garcia and Indra Widjaja: Communication Networks -Fundamental
Concepts and Key Architectures, 2nd Edition Tata McGraw-Hill, 2011.
Course Delivery:
The course will be delivered through lectures, class room interaction, group discussion
and lab exercises.
Course Assessment Methods:
Direct
Assessm
ent
Methods
What
CI
E
Internal
Assessme
nt Tests
Lab Tests
a. CIE Scheme:
To
Whom
Students
When/ Where
(Frequency in
the course)
Max
Marks
Evidence
Collected
Contribution to
Course
Outcomes
Thrice(Average of
the best two will
be computed)
30
Blue Books
1,2 ,3,4 & 5
Twice
20
Data sheet
1,2,3,4 &5
Indirect
Assessment
Methods
S
E
E
Standard
Examinati
on
End of Course
(Answering 5 of 10
questions)
100
Answer scripts
1,2,3,4&5
Questionnaire
1,2,3,4&5
Effectiveness of
Delivery of
instructions &
Assessment
Methods
Students
Feedback
End of Course
Survey
Students
End of the course
-
Questions for CIE and SEE will be designed to evaluate the various educational
components (Bloom’s taxonomy)
Course Outcomes:
1. Demonstrate knowledge of basic networking concepts and their performance
metrics.
2. Understands the basic model of switched networks and key elements of the
Internet Protocol.
3. Understands the various concepts of Internet and principles of the TCP/IP
protocol suite.
4. Understanding the how congestion control works and concepts of resource
allocation.
5. Understand the significance of application layer and protocol they use.
.
Mapping Course Outcomes with Program Outcomes:
Course Outcomes
Demonstrate knowledge of
basic networking concepts and
their performance metrics.
Understands the basic model of
switched networks and key
elements of the Internet
Protocol
Understands the various
concepts of Internet and
principles of the TCP/IP protocol
suite
Understanding the how
congestion control works and
concepts of resource allocation
Understand the significance of
application layer and protocol
they use
PO
1
X
PO
2
PO
3
X
PO
4
X
Program Outcomes
PO PO PO PO PO
5
6
7
8
9
X
X
X
X
PO
10
X
PO
11
X
PO
12
PO
13
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Semester: I
Course Title: Random Variables, Stochastic Processes
Year: 2014 - 2016
Course Code: MCSE 123
and Queuing Theory
Credits (L:T:P) : 4:0:0
Core/ Elective: Core
Type of course: Lecture/ Laboratory/ /Project/
assignment
Total Contact Hours:
per week
4Hrs
Prerequisites:
Course Objectives:
The students will
 Learn the concept of discrete and continuous random variable
 Understand the Probability mass and density function and probability distributions
 Learn the theory of Random process and special classes of random variable
 Learn the concept of continuous time Markov Chains, pure birth , pure death, birth and death
 process
 Learn the concept of different queuing models such as M/M/1, M/G/1.
Course Contents:
Unit I
Discrete Random Variables: Introduction, Random variables and their event spaces,
probability Mass function. Distribution functions, Special Distribution functions,
Independent Variables.
Unit II
Continuous Random Variables: Introduction, Exponential Distribution, Functions of a
random variable, Jointly distributed random variables, Functions of normal random
variables.
Unit III
Random Processes: Introduction, Binomial Process, Poisson Process, Ergodic Process,
Special Classes of Random Process.
Unit IV
Markov Process: Markov chain and Transition Probabilities, Continuous Parameter
Markov chain, Pure birth and pure Death Process, Birth and Death Process, Renewal
Process.
Unit-V
Introduction to Queuing theory and applications: Single server with infinite
system capacity, queuing Modes
(M/M/1):(  /FIFO),(M/M/1):(k/FIFO),(M/M/s):(  /FIFO), (M/M/s):(k/FIFO),M/G/1
Queuing system characteristics, Case Studies.
Text Books
1. Sheldon M Ross – Introduction to Probability Models, 10th Edition, Elsevier, 2010.
2. T Veera Rajan – Probability, Statistics and Random Process, 3rd Edition, Tata Mc
Graw Hill, 2008.
Reference Books
1. Kishore S Trivedi – Probability & Statistics with Reliability, Queuing and Computer
Science Applications, 2nd edition, John Wiley & Sons, 2008.
2. Athanasios Papoulis. S, Unni Krishna Pillai – Probability, Random Variables and
Stochastic Processes, 4th edition, Tata Mc. Graw Hill, 2002.
Course Delivery:
The course will be delivered through lectures, class room interaction, group discussion
and lab exercises.
Course Assessment Methods:
Indirect
Assessmen
t Methods
Direct
Assessment
Methods
What
C
I
E
S
E
E
To Whom
Internal
Assessment
Tests
Lab Tests
When/ Where
(Frequency in
the course)
Max
Marks
Evidence
Collected
Contribution to
Course
Outcomes
Thrice(Average of
the best two will be
computed)
30
Blue Books
1, 2, 3, 4 & 5
Twice
20
Data sheet
1, 2, 3, 4 & 5
End of Course
(Answering 5 of 10
questions)
100
Answer
scripts
1, 2, 3, 4 & 5
Questionna
ire
1, 2, 3, 4 & 5
Effectiveness of
Delivery of
instructions &
Assessment
Methods
Students
Standard
Examination
Students
Feedback
End of Course
Survey
Students
End of the course
-
b. CIE Scheme:
Questions for CIE and SEE will be designed to evaluate the various educational
components (Bloom’s taxonomy)
Course Outcomes:
The students will be able to
1. Recognize the random variable governing the problem
2. Discuss the different features of the probability distribution which is used in statistical
models.
3. Uses of knowledge random processes, evaluate various measures of the system
effectiveness such as response time, reliability, etc,
4. Recognize the types of queues and discusses its queuing system characteristics.
Mapping Course Outcomes with Program Outcomes:
Course Outcomes
Recognize the random
variable governing the
problem
Discuss the different
features of the
probability distribution
which is used in
PO
1
X
X
PO
2
PO
3
X
PO
4
X
X
Program Outcomes
PO PO PO PO PO
5
6
7
8
9
X
X
X
X
X
X
X
X
PO
10
X
PO
11
X
X
X
PO
12
PO
13
statistical models
Uses of knowledge
random processes,
evaluate various
measures of the system
effectiveness such as
response time, reliability,
etc
Recognize the types of
queues and discusses its
queuing system
characteristics
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Semester: I
Year: 2014 - 2016
Course Title: Topics in Software Engineering
Course Code: MCSE 124
Credits (L:T:P) : 3:0:1
Core/ Elective: Core
Type of course: Lecture/ Laboratory/ /Project/
assignment
Total Contact Hours:
Prerequisites: Software Engineering
Course Objectives:
The Objectives of this course are to:
 Present the concept of different software development methodologies, Identify the
importance of agile development, Analyze the components involved in web design.
 Provide an understanding of Formal modeling and verification, the project
management principles, and estimation of software projects.
 Analyze the activities involved in project scheduling, risk management and to identify
the role of maintenance and reverse engineering process in developing software
systems.
 Identify the different approaches to Software process Improvement, Software
Configuration management and the metrics for process and product development.
 Provide an understanding of how to conduct individual and detailed research into a
topic covered by the course in the field of software engineering and be able to search
appropriate literature including research publications, industrial newspapers and
articles, and internet resources so as to summaries the findings in a clear and critical
manner.
Course Content
Unit 1
Agile development: What is agile? Agility and cost of change; What is an agile
process? Extreme programming; Other agile process models.
Web Application Design: Web application design quality; Design quality and design
pyramid; Interface design; Aesthetic design; Content design; Architecture design;
Navigation design; Component-level design; Object-oriented hypermedia design
method.
Unit 2
Formal Modeling and verification: The cleanroom strategy; Functional specification;
Cleanroom design; Cleanroom testing; Formal methods: Concepts; Applying
mathematical notation for formal specification; Formal specification languages.
Software Project Management: The management spectrum; The management of
people, product, process and project; The W5HH Principle; Critical practices.
Estimation for Software Projects: Software project estimation; Decomposition
techniques, Examples; Empirical estimation models; Estimation for Object-Oriented
projects; Specialized estimation techniques; The make / buy decision.
Unit 3
Software Project Scheduling: Basic concepts and principles of project scheduling;
Defining task set and task network; Scheduling; Earned value analysis.
Risk Management: Reactive versus proactive strategies; Software risks; risk
identification; Risk projection; Risk refinement; Risk mitigation, monitoring and
management; The RMMM plan.
Unit 4
Maintenance and Reengineering: Software maintenance; Software supportability;
Reengineering; Business process reengineering; Software reengineering; Reverse
engineering; Restructuring; Forward engineering; The economics of reengineering.
Software Process Improvement (SPI): Approaches to SPI; Maturity models; The SPI
process; The CMMI; The People CMM; Other SPI frameworks: SPICE, Bootstrap, PSP and
TSP, ISO; SPI return on investment.
Unit 5
Software Configuration Management (SCM): Basic concepts; SCM repository; The
SCM process; Configuration management for web applications; SCM standards.
Product Metrics: A framework for product metrics; Metrics for requirements model,
design model, source code, testing and maintenance; Design metrics for web
applications.
Process and Project Metrics: Basic concepts; Software measurement; Metrics for
software quality; Integrating metrics within the software process; Metrics for small
organizations; Establishing a software metrics program.
Laboratory:
The Software Engineering Lab has been designed for students to be exposed to the
following:
 To Understand and realize the concept of Software Engineering and UML using
any case studies.
 The students would be exposed to experiment with the following concepts using
any of the tools available:
 Identifying the Requirements from Problem Statements
 Modeling UML Use Case Diagrams
 Identifying Domain Classes from the Problem Statements
 State chart and Activity Modeling
 Modeling UML Class Diagrams and Sequence diagrams
 Estimation of Test Coverage Metrics and Structural Complexity
 Designing Test Suites for the case study
 The Students would also be required to Prepare a Work Breakdown Structure
(WBS) and a mini project plan with PERT and Gantt charts
Text Book:
1. Roger S. Pressman: Software Engineering: A Practitioner’s Approach, Alternate
edition, 7th Edition, McGraw Hill, 2010.
Reference Book:
2. Ian Sommerville: Software Engineering, 8th Edition, Pearson, 2012.
Course Delivery:
The course will be delivered through lectures, class room interaction, group discussion,
lab exercises and projects.
Course Assessment Methods:
CIE Scheme:
Questions for CIE and SEE will be designed to evaluate the various educational
components (Bloom’s taxonomy)
To
Whom
Indirect
Assessment
Methods
Direct Assessment
Methods
What
CIE
Internal
Assessment
Tests
Project and
lab Exercise
evaluation
SEE
Students
Semester
End
Examination
Students
Feedback
Students
End of Course
Survey
When/ Where
(Frequency in
the course)
Thrice (Average
of the best two
will be
computed)
Summation of
lab and project
demonstration
End of Course
(Answering
5 of 10
questions)
Max
Mark
s
Evidence
Collected
Contribution
to Course
Outcomes
30
Blue Books
1-5
20
Soft copies
of the work
1-5
100
Answer
scripts
1-5
Questionnai
re
1, 2, 3, 4 & 5
Effectiveness
of Delivery of
instructions &
Assessment
Methods
End of the
course
-
Course Outcomes:
At the end of the course the students will be able to:
1. Apply the concept of Agile development and be able to design any web application
using the principles learnt.
2. Identify the concepts of Formal Modeling and verification methods and also the
process of Project management and estimation.
3. Demonstrate an understanding of the activities involved in Software Scheduling, Risk
management and reversing engineering and Maintenance task.
4. Identify the approaches to Software Process Improvement.
5. Understand the concepts of Software Configuration Management, Product and
Process metrics
Mapping Course Outcomes with Program Outcomes:
Program Outcomes*
Course Outcomes
Apply the concept of Agile
development and be able to
design any web application
using the principles learnt.
Identify the concepts of
Formal
Modeling
and
verification methods and
also the process of Project
management and estimation
Demonstrate
an
understanding
of
the
activities
involved
in
Software Scheduling, Risk
management and reversing
engineering
and
PO
1
X
X
PO
2
PO
3
PO
4
PO
5
X
X
X
X
X
X
X
X
X
X
PO
6
PO
7
X
X
PO
8
PO
9
PO
10
PO
11
PO
12
X
X
X
X
X
X
X
X
X
X
PO
13
Program Outcomes*
Course Outcomes
Maintenance task.
Identify the approaches to
Software
Process
Improvement
Understand the concepts of
Software
Configuration
Management, Product and
Process metrics
PO
1
PO
2
PO
3
PO
4
X
X
X
X
X
X
PO
5
PO
6
PO
7
X
PO
8
PO
9
PO
10
PO
11
X
X
X
X
PO
12
PO
13
Semester: I
Course Title: Software Development for Portable Devices
Credits (L:T:P) : 0:0:1
Type of course: Practical
Year: 2014 - 2016
Course Code: MCSE 125
Core/ Elective: Core
Total Contact Hours: 14
Prerequisites: Basics of Java
Course Objectives:
The objective of this course is to make the students to

Introduction to Mobile Computing and Emerging mobile application and Hardware Platforms.

Developing and accessing mobile applications.

Software Lifecycle for Mobile Application - Design and Architecture, Development – Tools,
Techniques, Frameworks, Deployment.

Human factors and emerging HCI interfaces (tangible, immersive, attentive, gesture, zeroinput).

Select Application domains such as Pervasive Health Care, m-Health. Mobile Web browsing,
Gaming and Social Networking.
Course Contents:
Experiments that are to be conducted as a part of the course:
1. Developing simple android applications for mobile devices & introducing to android
development tools.
2. Simple programs to investigate the android life cycle.
3. Programs on Android activities.
4. Programs to create user interfaces, layouts and views.
5. Program to create and use menus.
6. Programs on using intents, adapters and dialogs.
7. Programs on working with data storage.
8. Programs on saving and loading files.
9. Programs on introducing content providers.
10. Programs on location based services and Google maps.
11. Developing applications to work with threads.
12. Introducing Toasts and Notifications.
13. Developing applications to work with messaging.
14. Programs to work with hardware of mobile devices
The student will execute a mini project using Android, write a report and demonstrate to the
examiner.
Prescribed Text Book
T1
Professional Android 4 Application Development, by Reto Meier, WROX Press, Wiley
Publishing.
Reference Book (S)
R1.
Android Application Development, Programming with the Google SDK, by, Rick Rogers, John
Lombardo, Zigurd Mednieks, Blake Meike, SPD, Oreilly,
ISBN10: 81-8404-733-9,
ISBN13:978-81-8404-733-2
R2. Hello Android, Introducing Google’s Mobile Development Platform, 3rd Edition, by Ed
Burnette, Pragmatic Programmers, LLC.ISBN-10: 1-934356-56-5, ISBN-13: 978-1934356-56-2
Course Assessment Methods:
Indirect
Assessment
Methods
Direct
Assessme
nt
Methods
What
CI
E
S
E
E
To Whom
When/ Where
(Frequency in
the course)
Max
Mark
s
Evidence
Collected
Contribution
to Course
Outcomes
Once
50
Project
Documentation
1,2,3,4 &5
Project demo
50
Answer scripts
1,2,3,4&5
Questionnaire
1,2,3,4&5
Effectiveness
of Delivery of
instructions &
Assessment
Methods
Mini
Project
Standard
Examinati
on
Students
Feedback
End of Course
Survey
Students
Students
End of the course
-
Course Outcomes:
1. Demonstrate knowledge of android platform and different android developer tools.
2. Understands the android application life cycle and creating UI and activities.
3. Demonstrating the concept of sending messages between application components and also
data storage, retrieval, and sharing.
4. Demonstrate the knowledge of using location-based services, Threads, and Notifications in
applications.
5. Understands the Android’s communication abilities using SMS and ability to work with
mobile hardware like camera, accelerometers, and compass sensors.
.
Mapping Course Outcomes with Program Outcomes:
Course Outcomes
Demonstrate
knowledge
of
android platform and different
android developer tools
Understands
the
android
application
life
cycle
and
creating UI and activities
Demonstrating the concept of
sending
messages
between
application components
and
also data storage, retrieval, and
sharing
Demonstrate the knowledge of
using location-based services,
Threads, and Notifications in
applications
Understands
the
Android’s
communication abilities using
SMS and ability to work with
mobile hardware like camera,
accelerometers, and compass
sensors
PO
1
X
PO
2
PO
3
X
PO
4
X
Program Outcomes
PO PO PO PO PO
5
6
7
8
9
X
X
X
X
X
X
X
X
X
X
X
PO
10
PO
12
PO
13
X
X
X
X
PO
11
X
X
X
X
X
X
X
X
Rubrics for Assessment of Student Performance:
Trait
Barely Acceptable
Basic
Good
Very Good
Specifications
The program is producing
incorrect results.
The program
produces correct
results but does
not display them
correctly.
The program works
and produces the
correct results and
displays them
correctly. It also
meets most of the
other specifications.
The program
works and
meets all of the
specifications.
Readability
The code is poorly
organized and very
difficult to read.
The code is
readable only by
someone who
knows what it is
supposed to be
doing.
The code is fairly
easy to read.
The code is
exceptionally
well organized
and very easy
to follow.
Reusability
The code is not organized
for reusability.
Some parts of the
code could be
reused in other
programs.
Most of the code
could be reused in
other programs.
The code could
be reused as a
whole or each
routine could
be reused.
Documentation
The documentation is
simply comments
embedded in the code
and does not help the
reader understand the
code.
The
documentation is
simply comments
embedded in the
code with some
simple header
comments
separating
routines.
The documentation
consists of
embedded comment
and some simple
header
documentation that
is somewhat useful
in understanding the
code.
The
documentation
is well written
and clearly
explains what
the code is
accomplishing
and how.
Delivery
The code was more than
2 weeks overdue.
The code was
within 2 weeks of
the due date.
The program was
delivered within a
week of the due
date.
The program
was delivered
on time.
Efficiency
The code is huge and
appears to be patched
together.
The code is brute
force and
unnecessarily
long.
The code is fairly
efficient without
sacrificing readability
and understanding.
The code is
extremely
efficient
without
sacrificing
readability and
understanding.
STUDENT EVALUATION RUBRIC
Student Name _________________________Date ______________
Question:
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
____________
Name of Supervisors: 1._______________________________
2._______________________________
Sl
No.
Components
Sub - Components
Marks
Alloted
Marks
Scored
sub
Total
sub
Total
Marks
Marks
Scored
1
Program Write up
Lab Test 1
Program Execution
Viva
3
Project Implementation
6
20
10
4
25
30
Mini Project
Project report
5
50
Total Marks
Semester: I
Course Title: Network Programming Lab
Credits (L:T:P) : 0:0:1
Type of course: Practical
Year: 2014-2016
Course Code: MCSE E126
Core/ Elective: Core
Total Contact Hours: 14
Prerequisites:
Undergraduate degree
Course Objectives:





To learn the basics of socket programming using TCP Sockets.
To learn basics of UDP sockets.
To learn about raw sockets.
To implement few standard network protocols
To develop knowledge of threads for developing high performance scalable
applications.
Course Content:
1. Write client server programs using TCP socket programming.
2. Write client server programs using UDP socket programming.
3. Write packet filter program using raw sockets.
4. Implement few standard protocols like FTP, Telnet, Ping etc.
5. Write socket programs using Java.
6. Write programs to implement RPC.
Text Books:
1. W. Richard Stevens:Unix Network Programming, PHI
2. W. Richard Stevens, Bill Fenner, Andrew M. Rudoff : Unix Network Programming
The Sockets Networking API , Volume 1, Third Edition, PHI.
3. W. Richard Stevens:Unix Network Programming Interprocess Communications
Volume 2, Second edition, PHI.
4. Elliotte Rusty Harold: Java Network Programming, 3rd Edition, Shroff Publishers.
REFERENCE BOOKS:
1. W. Richard Stevens: TCP/IP Illustrated, Volumes 1, 2, and 3, Pearson, 2000.
Course Delivery:
The course will be delivered through lab exercises.
Course Assessment Methods:
Direct
Assessme
nt
Methods
What
C
I
E
To
Whom
Lab Tests
When/ Where
(Frequency in the
course)
Max
Marks
Evidence
Collected
Contribution to
Course
Outcomes
Twice
40
Answer
Sheets
1,2 ,3,4 & 5
Once
10
Data
sheets
1,2,3,4 &5
Students
Practical
assignments
Indirect
Assessment
Methods
S
E
E
Standard
Examination
End of Course
100
Answer
scripts
1,2,3,4&5
Questionna
ire
1,2,3,4&5
Effectiveness of
Delivery of
instructions &
Assessment
Methods
Students
Feedback
End of Course
Survey
End of the course
Students
-
Course Outcomes
1.
Write both connection-oriented and connectionless servers and clients using the
Sockets API.
2.
Understand the Unix process model, standard Unix input/output, and their system
calls
3.
Use signals and their associated system calls in Unix
4.
Understand and implement the most widely used network application protocols
such as ftp, telnet, ping, etc to develop distributed applications
5.
Understand multithreading and implement it in Unix.
Mapping Course Outcomes with Program Outcomes:
Course Outcomes
Write either connectionoriented or connectionless
servers and clients using the
Sockets API
Understand the Unix process
model, standard Unix
input/output, and their
system calls
Use signals and their
associated system calls in
Unix
Understand and implement
the most widely used network
application protocols such as
ftp, telnet, ping, etc to
develop distributed
applications
Understand multithreading
and implement it in Unix.
PO
1
PO
2
X
PO
3
PO
4
X
X
X
X
X
X
X
X
X
X
PO
5
PO
6
X
PO
7
PO
8
PO
9
PO
10
PO
11
PO
12
x
PO
13
X
X
X
x
X
X
x
X
X
X
X
X
x
x
x
Semester: II
Course Title: Advances in Computer Architecture
Credits (L:T:P) : 3:0:1
Type of course: Lecture
Year: 2014-2016
Course Code: MCSE 221
Core/ Elective: Core
Total Contact Hours: 56
Prerequisites: Computer Architecture
Course Objectives:
This course will help students to achieve the following objectives:
 Describe the principles of computer design and Classify instruction set architectures.
 Describe the operation of performance enhancements such as pipelines, dynamic
scheduling, branch prediction, caches, and vector processors.
 Describe the operation of virtual memory, modern architectures such as RISC,
Super Scalar, VLIW (very large instruction word), and multi-core and multi-CPU
systems.
 Compare the performance of different architectures
 Improve application performance for different CPU architectures.
Course Contents:
Unit 1
Introduction and Review of Fundamentals of Computer Design: Introduction;
Classes computers; Defining computer architecture; Trends in Technology; Trends in
power in Integrated Circuits; Trends in cost; Dependability, Measuring, reporting and
summarizing Performance; Quantitative Principles of computer design; Performance and
Price-Performance; Fallacies and pitfalls; Case studies.
Unit 2
Some topics in Pipelining, Instruction –Level Parallelism, Its Exploitation and
Limits on ILP: Introduction to pipelining, ILP; Crosscutting issues, fallacies, and pitfalls
with respect to pipelining; Basic concepts and challenges of ILP; Case study of Pentium
4, Fallacies and pitfalls. Introduction to limits in ILP; Performance and efficiency in
advanced multiple-issue processors.
Unit 3
Memory Hierarchy Design, Storage Systems: Review of basic concepts; Crosscutting
issues in the design of memory hierarchies; Case study of AMD Opteron memory
hierarchy; Fallacies and pitfalls in the design of memory hierarchies. Introduction to
Storage Systems; Advanced topics in disk storage; Definition and examples of real faults
and failures; I/O performance, reliability measures, and benchmarks; Queuing theory;
Crosscutting issues; Designing and evaluating an I/O system – The Internet archive
cluster; Case study of NetAA FAS6000 filer; Fallacies and pitfalls.
Unit 4
Hardware and Software for VLIW and EPIC
Introduction: Exploiting Instruction-Level Parallelism Statically, Detecting and Enhancing
Loop-Level Parallelism, Scheduling and Structuring Code for Parallelism, Hardware
Support for Exposing Parallelism: Predicated Instructions, Hardware Support for
Compiler Speculation, The Intel IA-64 Architecture and Itanium Processor, Concluding
Remarks.
Unit 5
Large-Scale Multiprocessors and Scientific Applications
Introduction, Interprocessor Communication: The Critical Performance Issue,
Characteristics of Scientific Applications, Synchronization: Scaling Up, Performance of
Scientific Applications on Shared-Memory Multiprocessors, Performance Measurement of
Parallel Processors with Scientific Applications, Implementing Cache Coherence,
Custom Cluster Approach: Blue Gene/L, Concluding Remarks.
The
Laboratory Work:
Using OpenMP and MPI / Intel Multicore Library / Atom Processors / Arm
Processors
 Matrix Multiplication and Finding Trace of a Matrix
 Sorting Algorithms (Sequential on Atom and Arm Processors / Parallel Versions
on Multicore)
 Counting Algorithms
 Image Processing Algorithms
 Search Algorithms
Text Book:
1. Hennessey and Patterson: ―Computer Architecture A Quantitative Approach‖, 4th
Edition, Elsevier, 2012.
Reference Book:
Kai Hwang, Naresh Jotwani: Advanced Computer Architecture - Parallelism, Scalability,
Programmability, 2nd Edition, Tata McGraw Hill, 2011.
Course Delivery:
The course will be delivered through lectures, class room interaction, group discussion
and exercises and self-study cases.
Course Assessment and Evaluation Scheme:
Indirect
Assessment
Methods
Direct Assessment
Methods
What
C
I
E
S
E
E
To
Whom
Internal
Assessment
Tests
Online
Course/Quiz
Students
Standard
Examination
When/ Where
(Frequency in
the course)
Thrice(Average
of the best two
will be
computed)
Max
Marks
Evidence
Collected
Contributio
n to Course
Outcomes
30
Blue Books
1,2,3,4 &5
Twice
20
Online Course
Certificate/Quiz
Answers
Recollection
Skills
End of Course
(Answering
5 of 10
questions)
100
Answer scripts
1,2,3,4 &5
Questionnaire
4, 5 &
Effectiveness
of Delivery
of
instructions
&
Assessment
Methods
Students
Feedback
Students
End of Course
Survey
End of the
course
-
Questions for CIE and SEE will be designed to evaluate the various educational
components (Bloom’s taxonomy)
Course Outcomes:
At the end of the course the students should be able to:
1. Understand the classes of computers, the change in technology and the
quantitative principles of computer design
2. Comprehend operation of instruction level parallelism in pipelines and the
challenges of ILP through case study
3. Identify the crosscutting issues in memory hierarchy design and in the storage
devices
4. Design Scheduling and Structuring Code for Parallelism and study of issues
related to VLIW and EPIC
5. Discuss the large scale multiprocessors and their relevance to the scientific
applications
Mapping Course Outcomes with Program Outcomes:
Course Outcomes
Understand
the
classes
of
computers,
the
change
in
technology and the quantitative
principles of computer design
Comprehend
operation
of
instruction level parallelism in
pipelines and the challenges of ILP
through case study
Identify the crosscutting issues in
memory hierarchy design and in
the storage devices
Design Scheduling and Structuring
Code for Parallelism and study of
issues related to VLIW and EPIC
Discuss
the
large
scale
multiprocessors and their relevance
to the scientific applications
Program Outcomes
PO
1
x
PO
2
x
PO
3
x
PO
4
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
PO
5
x
PO
6
PO
7
PO
8
PO
9
PO
10
x
PO
11
x
PO
12
PO
13
Semester: II
Year: 2014-2016
Course Title: Embedded System Design
Course Code: MCSE 222
Credits (L:T:P): 4:0:0
Core/ Elective: Core
Type of Course: Lecture
Total Contact Hours: 56Hrs
Prerequisites: The student should have undergone the course on Microprocessors and
Computer organization.
Course Objectives:
This course will help students to achieve the following objectives:

Understand the basic components of embedded systems and steps in designing
them.

List the salient features of the Cortex M0 and its programming.

Knowledge of the assembly instructions and C programming using CMSIS.

Learning the interfacing of various I/O devices with Cortex M0.

Understanding of the RTOS and its important concepts.
Course Contents:
UNIT I
Embedded Computing: Introduction, Complex Systems and Microprocessors Embedded
Systems Design Process, design metrics, flow and optimization,. Specifications and
modeling, Cortex-M0 Technical Overview, Implementation Features System Features ,
Debug Features, Advantages
UNIT II
Programming model , Operation Modes and States , Architecture, Registers and Special
Registers Behaviors of the Application Program Status Register (APSR), Memory System
Overview, Stack Memory , Operations Introduction to Cortex-M0 Programming,
Instruction Set
UNIT III
Instruction Usage Examples, implementation of various structures like loop, switch,
function, subroutine, Memory System, Exceptions and Interrupts, Interrupt Control and
System Control,
UNIT IV
Simple Application Programming, Simple Input /Output, Simple Interrupt Programming,
Sensors, Thermistors, LDRs, LEDs 7 segment, LCD, Stepper motor , relays, Actuator,
and ADCs
UNIT V
Embedded/ Real time tasks, real time systems, types of real time systems Quality of
good real time systems. Real Time Operating System Concepts: Architecture of the
kernel. Task, task scheduler. ISR. Semaphores. Mutex. Mail boxes. Message queues.
Message queues Pipes. Signal. Memory management. Priority inversion problem.
Text Books:
1. Wayne Wolf ―Computers as Components Principles of Embedded Computer
System Design‖, Second Edition, Elsevier, 2008.
2. Joseph Yiu, ― The Definitive Guide to the ARM Cortex-M0 ―, 1st edition, Newnes an imprint of Elsevier, 2011
3. Lyla B. Das, ―Embedded Systems an integrated approach ― , 1st edition,
Pearson, 2013.
4. KVVK Prasad,
―Embedded/Real Time Systems : Concepts, Design and
Programming ― , 1st edition, Dreamtech, 2011 .
5. Rob Toulson ans Tim Wilmshurst ― Fast and Effective Embedded systems Design
applying the ARM mbed‖ First edition 2012, Newnes - an imprint of Elsevier
Reference Books:
1. Frank
Wahid/Tony
Givargis
―Embedded
System
Design
A
Unified
Hardware/Software Introduction ― 1st Edition, John Wiley & Sons, 2002.
2. Raj Kamal , ―Embedded Systems: Architecture ,Programming and Design‖, Tata
McGrawhill, New Delhi,2003.
3. Tammy Noergaard, ―Embedded Systems Architecture- Comprehensive Guide for
Engineer and Programmers – Elsevier Publication, 2005
4. Barnett, Cox & O’cull,‖Embedded C programming‖,Thomson ,2005.
Course Assessment and evaluation:
What
To
Whom
Direct Assessment Methods
Internal
Assessment
Tests
When/
Where
(Frequency
in the
course)
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
Thrice(Average
of the best two
will be
computed)
30
Blue Books
1,2,4 & 5
Once
(Summation of
the two will be
computed)
20
Quiz ONLINE
1,2 & 3,4
100
Answer
scripts
1,2, 3,4 & 5
CIE
Surprise
Quiz
SEE
Standard
Examination
Students
End of Course
(Answering
5 of 10
questions)
Indirect
Assessment
Methods
Students
Feedback
Students
End of Course
End of the
course
-
Questionnaire
Survey
1, 2 & 3,
Effectiveness of
Delivery of
instructions &
Assessment
Methods
Course Outcomes: At the end of the course students should be able to:
1. Identify the difference between a general purpose computing system and
embedded system
2. List the advantages of using Cortex M0 for designing embedded systems over
other microcontrollers
3. Programming cortex M0 in assembly and C language using CMSIS features .
4. Able to easily interface cortex m0 to the various I/O. devices and interfaces.
5. Appreciate the kernel of RTOS and its various deployment for embedded
systems.
Mapping Course Outcomes with Programme Outcomes:
Course Outcomes
Program Outcomes
PO
1
PO
2
Identify the difference between a
general purpose computing system
and embedded system.
X
X
List the advantages of using Cortex
M0
for designing embedded
systems
over
other
microcontrollers.
X
X
X
X
X
Programming
cortex
M0
in
assembly and C language using
CMSIS features.
X
X
X
X
X
X
X
X
Able to easily interface cortex m0
to the various I/O. devices and
interfaces.
Appreciate the kernel of RTOS and
its
various
deployment
for
embedded systems.
PO
3
PO
4
X
PO
6
PO
7
X
X
X
PO
5
X
X
PO
8
PO
9
PO
10
PO
11
X
X
X
X
X
X
PO
12
PO
13
Semester: II
Year: 2014 - 2016
Course Title: Formal Models in Computer Science
Course Code: MCSE 223
Credits (L:T:P) : 3:0:1
Core/ Elective: Core
Type of course: Lecture/ Laboratory/ /Project/
assignment
Total Contact Hours: 56
Prerequisites: Discrete Mathematics, Software Engineering
Course Objectives:
The Objectives of this course are to:

Discuss the role of formal verification techniques in the context of software
validation and testing, and compare the benefits with those of model checking.

Explain the potential benefits and drawbacks of using formal specification
languages.

Using a common formal specification language, formulate the specification of a
simple software system and demonstrate the benefits from a quality perspective.
Course Contents:
Unit 1
Propositional Logic: Declarative sentences, Natural deduction, Propositional logic as a
formal language, Semantics of propositional logic, Normal forms.
Unit 2
Predicate Logic: The need for a richer language, Predicate logic as a formal language,
Proof theory of predicate logic, Semantics of predicate logic, Undecidability of predicate
logic, Micromodels of software.
Unit 3
Verification by Model Checking: Motivation for verification, Linear-time temporal
logic, Model checking, Branching-time logic, CTL* and the expressive powers of LTL and
CTL.
Unit 4
Program Verification: Need for specifying and verifying code, A framework for
software verification, Proof calculus for partial correctness and total correctness,
Programming by contract.
Unit 5
Introduction to Z: Basic concepts; Z notation in Propositional logic and Predicate logic.
Laboratory Work:
1. Design, develop and run a program in ALLOY (or in any equivalent system) to
model a Software Package Dependency System. Make suitable assumptions
regarding the system. The model should allow checking to see if prerequisites in
the form of libraries or other packages are present for all components in the
system
2. Design, develop and run a program in NuSMV (or in any equivalent system) to
model and solve the Mutual Exclusion problem.
3. Design, develop and run a program in NuSMV (or in any equivalent system) to
model and simulate the Alterate Bit Protocol.
4. Design, develop and run a program in NuSMV (or in any equivalent system) to
model and solve the planning problem of Ferry Man.
5. Design, develop and run a program in NuSMV (or in any equivalent system) to
model and solve the Dining Philosophers Problem.
Text Books:
1. Michael Huth and Mark Ryan: Logic in Computer Science, 2nd Edition, Cambridge
University Press, 2011.
2. Jim Woodcock , Jim Davies: Using Z Specification, Refinement and Proof,
Prentice Hall, 1996. (Online Edition: http://www.usingz.com/text/online/)
Reference Books:
1. J M Spivey, ―The Z notation: A reference Manual‖, 2nd edition, PHI, 1992.
2. J Bowen ― Information about the Z formal specification notation‖.
(http:// www.cis.ohio-state.edu/hypertext/faq/usenet/z-fq/faq.html.)
Course Delivery:
The course will be delivered through lectures, class room interaction, group discussion,
lab exercises and projects.
Course Assessment Methods:
CIE Scheme:
Questions for CIE and SEE will be designed to evaluate the various educational
components (Bloom’s taxonomy)
Indirect
Assessment
Methods
Direct Assessment
Methods
What
To
Whom
Internal
Assessment
Tests
CIE
SEE
Term paper
and lab
Exercise
evaluation
Students
Semester
End
Examination
Students
Feedback
Students
End of Course
Survey
When/ Where
(Frequency in
the course)
Thrice
(Average of the
best two will be
computed)
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
30
Blue Books
1-5
Summation of
lab and Paper
presentation
20
Soft copies
of the work
1-5
End of Course
(Answering
5 of 10
questions)
100
Answer
scripts
1-5
End of the
course
-
Questionnai
re
3-5,
Relevance of
the course
Course Outcomes:
At the end of the course the students will be able to:
1. Apply the concept of propositional language as a formal language.
2. Understand the Concepts of Predicate Logic and micromodels of Software.
3. Demonstrate an understanding of Verification of Software Systems by Model
Checking and expressive power of LTL and CTL.
4. Identify the need for specifying and Verifying the Code and a framework for software
verification.
5. Understand the concepts of Z notation in Propositional logic and Predicate logic
Mapping Course Outcomes with Program Outcomes:
Program Outcomes*
Course Outcomes
Apply the concept of
propositional language as
a formal language
Understand the Concepts
of Predicate Logic and
micromodels of Software
Demonstrate
an
understanding
of
Verification of Software
Systems
by
Model
Checking and expressive
power of LTL and CTL
Identify the need for
specifying and Verifying
the
Code
and
a
framework for software
verification
Understand the concepts
of
Z
notation
in
Propositional logic and
Predicate logic
PO
1
PO
2
X
X
X
PO
3
PO
4
X
X
X
PO
6
PO
7
PO
8
PO
9
X
X
X
X
X
X
X
X
X
X
X
PO
5
PO
11
PO
12
X
X
X
X
X
X
X
PO
10
X
X
X
PO
13
Semester: II
Course Title: Embedded Systems Laboratory
Credits (L:T:P) : 0:0:1
Type of course: Practical
Year: 2014-2016
Course Code: MCSE 224
Core/ Elective: Core
Total Contact Hours: 14
Prerequisites:
The student must have knowledge in computer organization and microprocessors.
Course Objectives:
This course will help students to achieve the following objectives:

Study the architecture of ARM Cortex M0 processor and its instructions set.

Learn assembly and c programming in ARM CortexM0.

Interfacing of ARM Cortex M0 processor with LCD, 7 segment display, keyboard, and
AD convertor.

Using UART for serial transmitting and receiving data. Interrupt and timers.

Design embedded system projects ARM CortexM0 processor with Nuvoton board.
Course Contents:
Experiments that are to be conducted as a part of the course
1. Introduction to the nuvoton 140 board, introduction to all the ports peripherals
Introduction to Kiel software 4.0 simulator and writing simple assembly programs
2. Program for 64 bit addition, subtraction, multiplication, copy 10 locations , swap 10
memory locations, factorial, use of fuctions, use of bit extraction, use of bit clear ,
sign extention
3. Write program to use a counter, using branch instruction square root, evaluating a
equation
4. programs in c introduction to cmsis files. Using gpio use rgb leds
5. program to use the leds to toggle using gpio
6. GPIO to scan 3x3 keypad (Smpl_7seg_Keypad)
7. Exercise : GPIO controlled by 3x3 keypad (Smple_GPIO_Keypad)
8. Exercise : GPIO to read Body IR Sensor (Smpl_GPIO_BodyInfrared)
9. Exercise : GPIO interfacing with LCM (Smpl_GPIO_LCM16x2)
10. Smpl_GPIO_Buzzer
11. seg_display routine
12. Smpl_GPIO_Interrupt
13. using ADC to read variable resistor (Smpl_ADC_VR1)
14. Exercise using ADC using variable resistor and display on LCD using built in function
Text Book:
1. Wayne Wolf ―Computers as Components Principles of Embedded Computer
System Design‖, Second Edition, Elsevier, 2008.
2. Joseph Yiu, ― The Definitive Guide to the ARM Cortex-M0 ―, 1st edition, Newnes an imprint of Elsevier, 2011
3. Lyla B. Das, ―Embedded Systems an integrated approach ― , 1st edition,
Pearson, 2013.
4. Rob Toulson ans Tim Wilmshurst ― Fast and Effective Embedded systems Design
applying the ARM mbed‖ First edition 2012, Newnes - an imprint of Elsevier
Course Outcomes (CO)
At the end of the course the students should be able to:
1. Know Architecture of ARM Cortex M0 processor and its instructions set.
2. Able to write Assembly and c programming in ARM CortexM0 using CMSIS files
3. Interfacing of ARM Cortex M0 processor with LCD, 7 segment display, keyboard ,
AD convertor
4. Able to program UART, Interrupt and timers
5. Embedded system projects ARM CortexM0 processor with Nuvoton board
Course Assessment and Evaluation:
To
Whom
Internal
Assessment Tests
CIE
Class-room Surprise Quiz
SEE
Students
Standard Examination
Max
Marks
Evidence
Collected
Contribution to
Course
Outcomes
30
Observation
sheets
1,2 3,4,5
Working
model
1,2,3,4,5
Answer
scripts
1,2,3,4 &5
Questionnaire
1, 2 & 3,
Effectiveness of
Delivery of
instructions &
Assessment
Methods
20
Project
Lab test
50
Students
Feedback
Indirect
Assessment
Methods
Direct
Assessment
Methods
What
When/
Where
(Frequency
in the
course)
One internal
test be
computed
Students
End of Course
Survey
End of the
course
-
Mapping Course Outcomes with Programme Outcomes:
Program Outcomes*
Course Outcomes
Know
PO
1
PO
2
PO
3
PO
4
PO
5
PO
6
PO
7
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
8
PO
9
PO
10
PO
11
X
X
PO
12
Architecture of ARM
Cortex M0 processor and its
instructions set.
X
Able to write Assembly and
c programming in ARM
CortexM0 using CMSIS files
X
Interfacing of ARM Cortex M0
processor
with
LCD,
7
segment display, keyboard ,
X
AD convertor
Able
to
program
UART,
X
Interrupt and timers.
Embedded system projects
ARM CortexM0 processor
with Nuvoton board
X
X
X
X
X
X
X
X
X
PO
13
Semester: II
Course Title: High Performance Computing
Laboratory
Credits (L:T:P) : 0:0:2
Type of course: Practical
Year: 2014-2016
Course Code: MCSE E225
Core/ Elective: Core
Total Contact Hours: 28
Prerequisites:
The student must have knowledge in C and Operating System.
Course Objectives:
This course will help students to achieve the following objectives:

Study the Concept of parallel architecture.

Learn C and C++ program of # pragma in openmp().

Understand the concept of combined parallel Work sharing Constructs.

Explore the concept of synchronization, data environment class of openmp and
Message passing.

Challenges in Debugging parallel programs, Debugging MPI programs and
Performance analysis of MPI programs.
Course Contents:
Experiments that are to be conducted as a part of the course
1. Introduction to Openmp(),programs on #pragrma using C
2. Simples programs on omp Sections, omp for and omp single
3. Exercise on thread private directives.
4. Exercise on clauses on last private reduction, copy in and shared.
5. Programming Paradigms
6. Distributed Architecture
7. Introduction to MPI
8. Point to Point MPI calls
9. Message passing MPI calls
10. Sample MPI programs
11. Challenges in Debugging parallel programs
12. Debugging MPI programs
13. Performance analysis of MPI programs
Text Book:
1. Parallel Programming in OpenMP ,Rohit Chandra , Leo Dagum , Dror Maydan , David Kohr, Jeff
McDonald , Ramesh Menon.
2. Multi-core programming,Increase performance through software multi-yhreading by
Shameem Akhter and Jason Roberts.
At
1.
2.
3.
4.
5.
Course Outcomes (CO)
the end of the course the students should be able to:
Understand the concept of multithreading and multi process.
Able to write the programs on openmp()
Able to write the programs on MPI
Explain and illustrate the concepts of directives and classes of open MP
Performance analysis of MPI programs
Course Assessment and Evaluation:
To
Whom
Indirect
Assessment
Methods
Direct Assessment
Methods
What
Internal
Assessment Test1
CIE
Internal
Assessment Test2
SEE
Students
Standard
Examination
When/ Where
(Frequency in
the course)
First internal
test be
computed
Second
internal test be
computed
Lab test
Students
Feedback
Students
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
20
Observation
sheets
1,2 3
Observation
sheets
1,2,3,4,5
Answer
scripts
1,2,3,4 &5
Questionnaire
1, 2 & 3,
Effectiveness of
Delivery of
instructions &
Assessment
Methods
30
50
End of the
course
-
Mapping Course Outcomes with Programme Outcomes:
Program Outcomes*
Course Outcomes
Understand the concept
of
multithreading
and
multi process.
Able to write the
programs on openmp()
Able to write the
programs on MPI
Performance analysis of
openmp programs
Performance analysis of
MPI programs
PO
1
PO
2
PO
3
PO
4
PO
5
PO
6
PO
7
PO
8
PO
9
PO
10
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
x
X
PO
11
PO
12
PO
13
Semester:
III
Course Title:
Laboratory
Year: 2014-2016
Big
Data
and
Data
Science
Course Code: MCSE313
Credits (L:T:P) : 0:0:2
Core/ Elective: Core
Type of Course: Practical
Total Contact Hours: 28 Hrs
Prerequisites: Nil
Course Objectives
The objectives of this course are to
 Understand how organizations these days use their data a decision supporting tool
and to build data - intensive products and services.
 Understand the collection of skills required by organizations to support these
functions has been grouped under the term ―Data Sciences‖
 Understand the basic concepts of big data, methodologies for analyzing structured
and unstructured data
 Understand the relationship between the Data Scientist and the business needs.
Course Contents:
Experiments that are to be conducted as a part of the course:
1. Data Stores and Data kind
2. Data Subsets in Big Data
3. Providing Structure to Unstructured Data
4. Data Types
5. Classes of Analytic Techniques
6. Learning Models
7. Data Veracity & Application of Domain Knowledge
8. Data Clustering
9. Normalising and Adjusting Data
10. Text processing and information retrieval
11. Programming model
12. Hadoop Approach
13. HDFS
14. MapReduce in Hadoop
Reading Material: (In no particular order of precedence)
1. Principles of Big Data: Preparing, Sharing and Analyzing Complex Information,
Jules J Berman, First Edition, MK Publishers, 2013.
2. The Field Guide to Data
Science:http://www.boozallen.com/media/file/TheFieldGuidetoDataScience.pdf
3. Understanding Big Data:
ftp://129.35.224.12/software/tw/Defining_Big_Data_through_3V_v.pdf
4. Ghemawat et.al Google, MapReduce: Simplied Data Processing on Large Clusters
http://static.googleusercontent.com/media/research.google.com/en//archive/ma
preduceosdi04.pdf
5. Hadoop Tutorial: http://developer.yahoo.com/hadoop/tutorial/
Course Delivery
The course will be delivered through lectures, presentations, classroom discussions,
practice exercises and practical sessions.
Course Assessment and evaluation:
Indirect
Assessmen
t Methods
Direct
Assessment
Methods
What
C
I
E
S
E
E
To
Whom
When/ Where
(Frequency in the
course)
Max
Marks
Evidence
Collected
Contribution to
Course
Outcomes
Twice
40
Answer
Sheets
1,2 ,3,4 & 5
Once
10
Data
sheets
1,2,3,4 &5
End of Course
100
Answer
scripts
1,2,3,4&5
Questionna
ire
1,2,3,4&5
Effectiveness of
Delivery of
instructions &
Assessment
Methods
Lab Tests
Practical
assignments
Students
Standard
Examination
Students
Feedback
End of Course
Survey
Students
End of the course
-
Course Outcomes
At the end of the course students should be able to:
1. Identify the differences between Big Data and Small Data
2. Design the programs to analyze big data
3. Demonstrate the analysis of big data
4. Analyze the Ontologies, Semantics, Introspection, Data Integration and
Measurement techniques of big data
5. Illustrate the stepwise approach to big data analysis and understand the legalities
and societal issues involved
Mapping Course Outcomes with Programme Outcomes:
Program Outcomes*
Course Outcomes
Identify
the differences
between Big Data and Small
Data
Design the programs to
analyze big data
Demonstrate the analysis of
big data
Analyze
the
Ontologies,
Semantics,
Introspection,
Data
Integration
and
Measurement techniques of
big data
Illustrate
the stepwise
approach to big data analysis
and understand the legalities
and societal issues involved
PO
1
PO
2
PO
3
PO
4
PO
5
PO
6
PO
7
X
PO
8
PO
9
PO
10
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
11
PO
12
X
X
X
X
X
X
X
X
X
PO
13
MCSE E11: Computer Systems Performance Analysis (3:0:0)
Semester I
Year 2014-2016
Course Title: Computer Systems Performance
Course Code: MCSE E11
Analysis
Credits (L:T:P): 3:0:0
Core/Elective: Elective
Type of Course: Lectures
Total Contact Hours: 42 Hours
Prerequisites: Students should have undergone a course on probability theory,
matrices, software engineering aspects and queuing theory
Course Objectives:
The objectives of this course are:
 Learn techniques to approach performance problems.
 Compare two systems and determine the optimal value of a parameter.
 Identify performance bottlenecks and characterize the load on a system.
 Select the number and size of system components and predict the performance of
future workloads.

Understand the use of different analysis strategies like measurement, simulation,
analytical modeling.

Learn mathematical techniques for performance analysis.
Course Contents:
Unit 1
Introduction: The art of Performance Evaluation; Common Mistakes in Performance
Evaluation, A Systematic Approach to Performance Evaluation, Selecting an Evaluation
Technique, Selecting Performance Metrics, Commonly used Performance Metrics, Utility
Classification of Performance Metrics, Setting Performance Requirements.
Unit 2
Workloads, Workload Selection and Characterization: Types of Work loads,
addition instructions, Instruction mixes, Kernels; Synthetic programs, Application
benchmarks, Popular benchmarks. Work load Selection: Services exercised, level of
detail; Representativeness; Timeliness, Other considerations in workload selection. Work
load characterization Techniques: Terminology; Averaging, Specifying dispersion, Single
Parameter Histograms, Multi Parameter Histograms, Principle Component Analysis,
Markov Models, Clustering.
Unit 3
Monitors, Program Execution Monitors and Accounting Logs: Monitors:
Terminology and classification; Software and hardware monitors, Software versus
hardware monitors, Firmware and hybrid monitors, Distributed System Monitors,
Program Execution Monitors and Accounting Logs, Program Execution Monitors,
Techniques for Improving Program Performance, Accounting Logs, Analysis and
Interpretation of Accounting log data, Using accounting logs to answer commonly asked
questions.
Unit 4
Capacity Planning and Benchmarking: Steps in capacity planning and management;
Problems in Capacity Planning; Common Mistakes in Benchmarking; Benchmarking
Games; Load Drivers; Remote-Terminal Emulation; Components of an RTE; Limitations
of RTEs.
Experimental Design and and Analysis: Introduction: Terminology, Common
mistakes in experiments, Types of experimental designs, 2k Factorial Designs, Concepts,
Computation of effects, Sign table method for computing effects; Allocation of variance;
General 2k Factorial Designs, General full factorial designs with k factors: Model, Analysis
of a General Design, Informal Methods.
Unit 5
Queuing Models: Introduction: Queuing Notation; Rules for all Queues; Little’s Law,
Types of Stochastic Process. Analysis of Single Queue: Birth-Death Processes; M/M/1
Queue; M/M/m Queue; M/M/m/B Queue with finite buffers; Results for other M/M/1
Queuing Systems. Queuing Networks: Open and Closed Queuing Networks; Product form
networks, queuing Network models of Computer Systems. Operational Laws: Utilization
Law; Forced Flow Law; Little’s Law; General Response Time Law; Interactive Response
Time Law; Bottleneck Analysis; Mean Value Analysis and Related Techniques; Analysis of
Open Queuing Networks; Mean Value Analysis; Approximate MVA; Balanced Job Bounds;
Convolution Algorithm, Distribution of Jobs in a System, Convolution Algorithm for
Computing G(N), Computing Performance using G(N), Timesharing Systems,
Hierarchical Decomposition of Large Queuing Networks: Load Dependent Service
Centres, Hierarchichal Decomposition, Limitations of Queuing Theory.
Text Book:
1. Raj Jain: The Art of Computer Systems Performance Analysis, 1st edition, John
Wiley and Sons, 2012.
Reference Books:
1. Paul J Fortier, howard E Michel: computer Systems Performance Evaluation and
prediction, 1st edition, Elsevier, 2009.
2. Trivedi K S: Probability and Statistics with Reliability, Queuing and Computer
Science Applications, 1st edition, PHI, 2011.
Course Delivery: The course will be delivered through lectures, presentations,
classroom discussions, and case studies. Questions for CIE and SEE are designed in
accordance with the Bloom’s taxonomy
Indirect
Assessment
Methods
Direct
Assessment Methods
What
To
Whom
Internal
Assessme
nt Tests
CIE
Quiz and
Home
Work
SEE
Students
Semester
End
Examinati
on
Students
Feedback
End of
Course
Survey
When/Where
(Frequency in
the course)
Evidence
Collected
Contributio
n to course
outcomes
Thrice (Average
of the best two
will be
computed)
25
Blue Books
1,2,3,4
2 quizzes and 2
home work
assignments
25
Quiz and
Home Work
Marks
1,2,3,4
100
Answer scripts
1,2,3,4
Questionnaire
1,2,3,4,Relev
ance of the
course
End of Course
(Answering 5 of
10 questions)
Students
Max
Mark
End of the
course
-
Course Outcomes:
1. Develop an understanding of the issues of reliability and its evaluation in the
design of computer systems, and to emphasize their importance.
2. Examine the concepts and techniques for redundant designs which can make a
system fault tolerant, i.e. still functioning correctly in the presence of failures, in
hardware, software and communications.
3. Discuss techniques for developing distributed reliable hardware and software
systems.
4. Examine testing techniques and algorithms in hardware, software and
communications.
Mapping Course Outcomes with program Outcomes:
Course Outcomes
Develop an understanding
of the issues of reliability
and its evaluation in the
design
of
computer
systems, and to emphasize
their importance
Examine the concepts and
techniques for redundant
designs which can make a
system fault tolerant, i.e.
still functioning correctly in
the presence of failures, in
hardware, software and
communications
Discuss
techniques
for
developing
distributed
reliable
hardware
and
software systems.
Examine
testing
techniques and algorithms
in hardware, software and
communications.
Program Outcomes
PO
1
PO
2
X
X
X
X
X
X
X
PO
3
PO
4
X
X
PO
5
PO
6
PO
7
PO
8
PO
9
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
10
PO
11
X
PO
12
PO
13
X
X
X
X
X
X
X
X
X
X
Semester: II
Year: 2014-2016
Course Title: : Advances in Artificial Intelligence
Course Code: MCSE E13
Credits (L:T:P) : 3:0:0
Core/ Elective: Elective
Type of course: Lecture/ Laboratory/ /Project/
assignment
Total Contact Hours: 42
Prerequisites:
Knowledge of any advance programming language
Course Objectives:
The objectives of this course are to:

Present to the students an understanding of the basic concepts and the modern
view of Artificial Intelligence and its applications and the agent approach to AI,
agent types, environments and their applications

Identify the problem solving techniques that use different search methods and
provide an understanding of different search methods as informed and uninformed
search and their applications.

Provide an ability to assess the applicability, strengths, and weaknesses of the
different knowledge representation and inference methods.

Present an understanding of Game Playing and statistical reasoning techniques and
to Identify the importance of Genetic/ Biological inspired algorithms to solve
computational problems.

Analyze the concepts of Natural Language Processing, different learning methods
and planning techniques in solving computational problems and to develop an
interest in the field of AI, sufficient to take more advanced and related subjects.
Course Contents:
Unit 1
Introduction: AI problems, AI technique, Problem as state space search, problem
characteristics, production systems, types of production systems, Design of Search
programs.
Heuristic search techniques: Generate and test, Hill climbing, Best first search,
Problem reduction, Constraint satisfaction, Means-Ends Analysis.
Unit 2
Informed search, exploration, constraint satisfaction, adversial search, logical
agents: Heuristic functions, on-line search agents and unknown environment,
backtracking search for CSPs, adversial search, knowledge-based agents, propositional
logic reasoning patterns in propositional logic, effective propositional inference, agents
based on propositional logic.
Unit 3
Knowledge Representation: Theorem proving using Predicate logic, Resolution,
Natural Deduction, Knowledge representation using Rules, Forward versus Backward
Reasoning, Matching, Control Artificial Knowledge, Knowledge Structures: Semantic
Networks, Frames, Conceptual Dependency diagrams, Scripts.
Unit 4
Game Playing: Minimax search procedure, adding alpha-beta cutoffs, additional
refinements, Iterative deepening.
Statistical Reasoning: Probability and Bayes theorem, Certainty factors and Rules
based systems, Bayesian Networks, Dempster Shafer theorem.
Genetic Algorithms: Survival of the fittest principle in Biology, Genetic Algorithms,
Significance of Genetic operators, termination parameters, Evolving Neural nets, Ant
Algorithms.
Unit 5
Planning: Components of planning system, goal stack planning, nonlinear planning
using constraint posting, Hierarchical planning, and Reactive systems.
Natural Language Processing: Steps in NLP, Syntactic processing, Semantic analysis,
Discourse and Pragmatic processing, Statistical NLP, Spell checking.
Learning: Rote learning, learning by taking advice, learning in problem solving,
Learning from examples, Explanation based learning, Discovery, Analogy, Formal
learning theory, NN learning and Genetic learning.
Text Books:
1. E.Rich, Kevin Knight, shivashankar B Nair, Artificial Intelligence, 3rd edition, TMH
Companies 2011.
2. Stuart Russel, Peter Norvig, Artificial Intelligence, A modern Approach, 2 edition,
Pearson education, 2012.
Reference Books:
1. Nils J. Nilsson: ―Principles of Artificial Intelligence‖, 1st edition, Elsevier, 2002.
2. George F Luger ―Artificial Intelligence Structures & Strategies for Complex Problem
Solving‖, 5th edition, pearson education, 2011.
Course Delivery:
The course will be delivered through lectures, class room interaction, group discussion,
lab exercises and projects.
Course Assessment and Evaluation:
What
To
Whom
Direct
Assessment Methods
Internal
Assessment
Tests
CIE
Indirect
Assessme
nt
Methods
SEE
Incorporating
the AI
Techniques
such as search,
learning and
inference
methods in
building AI
application
Students
Semester End
Examination
Students
Feedback
End of Course
Survey
Students
When/
Where
(Frequency
in the
course)
Thrice
(Average of
the best
two)
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
30
Blue Books
1-5
Review 1
Review 2
20
Soft copies
(working
model) the
any
application
built using
the AI
concepts.
1,2,4,5
End of
Course
(Answering
5 of 10
questions)
100
Answer
scripts
1-5
End of the
course
-
Questionnaire
1-5, Relevance
of the course
CIE Scheme:
Questions for CIE and SEE will be designed to evaluate the various educational
components (Bloom’s taxonomy)
Course Outcomes:
At the end of the course students will be able to:
1. Understand the modern view of AI and its application based on agent philosophy and
to analyze the heuristic search techniques.
2. Demonstrate an understanding of various search algorithms commonly used in AI
and their applications, also to identify the importance of Constraint satisfaction
problems and the use of logical agents for inferring knowledge.
3. Understand the various knowledge representation and inference techniques and
implement the same in any form.
4. Demonstrate an understanding of game playing techniques, Statistical reasoning
methods and the application of genetic algorithms in building AI systems.
5. Recognize the components of planning system, steps involved in NLP and the
different learning methods in AI and to use them in building intelligent systems.
Mapping Course Outcomes with Program Outcomes:
Program Outcomes*
Course Outcomes
Understand the modern view of AI
and its application based on agent
philosophy and to analyze the
heuristic search techniques.
Demonstrate an understanding of
various
search
algorithms
commonly used in AI and their
applications, also to identify the
importance
of
Constraint
satisfaction problems and the use of
logical
agents
for
inferring
knowledge.
Understand the various knowledge
representation
and
inference
techniques and implement the same
in any form.
Demonstrate an understanding of
game playing techniques, Statistical
reasoning
methods
and
the
application of genetic algorithms in
building AI systems.
Recognize the components of
planning system, steps involved in
NLP and the different learning
methods in AI and to use them in
building intelligent systems
PO
1
PO
2
X
X
X
X
PO
3
PO
4
PO
5
PO
6
PO
7
X
PO
8
PO
9
PO
10
PO
11
PO
12
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
13
MCSE E14: Fault Tolerant Systems (3:0:0)
Course Objectives:
Many computer applications exist where failure of the computer would be very
expensive. Examples include real-time embedded computers which control aircraft,
spacecraft, robots, or industrial plants, and computers used in stock markets. Such
applications require extremely high levels of reliability, which can only be provided by
fault-tolerant computers, i.e., machines which can continue to function despite the
failure of a certain fraction of their components. In this course, we will study the design
of such computers, and learn how to estimate their reliability. This course will help
students to achieve the following objectives: (i) provide the basic skill for the design of
fault tolerant systems. Concepts of reliability, availability, safety, maintainability,
testability, dependability (ii)Understand Software testing and fault tolerant systems (iii)
Information redundancy, using some types of error detecting/correcting codes (iv) Study
of quantitative methods for reliability evaluation (v) Case studies of practical fault
tolerant systems
Topics:
Fault classification, Hardware Fault Tolerance, Information Redundancy, Fault-Tolerant
Networks, Software Fault Tolerance, Checkpointing, Defect Tolerance in VLSI Circuits,
Fault Detection in Cryptographic Systems, Case Studies
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
(i) develop an understanding of the issues of reliability and its evaluation in the design
of computer systems, and to emphasize their importance.(ii) Examine the concepts and
techniques for redundant designs which can make a system fault tolerant, i.e. still
functioning correctly in the presence of failures, in hardware, software and
communications. (iii) Discuss techniques for developing distributed reliable hardware
and software systems. (iv) Examine testing techniques and algorithms in hardware,
software and communications.
Detailed Syllabus:
Unit 1
Introduction: Fault classification; Types of Redundancy; Basic measures of Fault
Tolerance.
Hardware Fault Tolerance: The rate of hardware failures; Failure rate, Reliability, and
Mean Time To Failure; Canonical and Resilient Structures; Other Reliability Evaluation
Techniques; Fault-Tolerance – Processor-Level techniques; Byzantine Failures.
Unit 2
Information Redundancy: Coding; Resilient Disk Systems; Data Replication;
Algorithm-Based Fault Tolerance.
Fault-Tolerant Networks: Measures of Resilience; Common Network Topologies and
Their Resilience; Fault-Tolerant Routing.
Unit 3
Software Fault Tolerance: Acceptance Tests; Single-Version Fault Tolerance; NVersion Programming; Recovery Block Approach; Preconditions, Postconditions, and
Assertions; Exception Handling; Software Reliability Models; Fault-Tolerant Remote
Procedure Calls.
Unit 4
Checkpointing: What is Checkpointing? Checkpoint Level; Optimal Checkpointing – An
Analytical Model; Cache-Aided Rollback Error Recovery; Checkpointing in Distributed
Systems; Checkpointing in Shared Memory Systems; Checkpointing in Real-Time
Systems; Other uses of Checkpointing.
Defect Tolerance in VLSI Circuits: Manufacturing Defects and Circuit Faults;
Probability of Failure and Critical Areas; Basic Yield Models; Yield Enhancement through
Redundancy.
Unit 5
Fault Detection in Cryptographic Systems: Overview of Ciphers; Security Attacks
through Fault Injection; Countermeasures.
Case Studies: Non-Stop Systems; Stratus Systems; Cassini Command and Data SubSystem; IBM G5; IBM Sysplex; Itanium.
Text Book:
1. Israel Koren, C. Mani Krishna: ―Fault-Tolerant Systems‖, 1st edition, Elsevier,
2009.
Reference Books:
1. D. K. Pradhan (Ed):‖Fault Tolerant Computer Systems Design‖, Prentice Hall,
1996.
2. K. S. Trivedi: ―Probability, Statistics with Reliability, Queuing and Computer
Science Applications‖, 1st edition, John Wiley, 2011.
MCSE E15: Digital Image Processing (3:0:0)
Course Objectives:
Visual information plays an important role in many aspects of our life. Much of this
information is represented by digital images. Digital image processing is ubiquitous, with
applications including television, tomography, photography, printing, robot perception,
and remote sensing. This is an introductory course to the fundamentals of digital image
processing. It emphasizes general principles of image processing, rather than specific
applications. This course will help students to achieve the following objectives: (i) To
study the image fundamentals and mathematical transforms necessary for image
processing. (ii) To study the image enhancement techniques (iii) To study image
restoration procedures (iv) To study the image compression procedures. (v) To study
the image segmentation and representation techniques.
Topics:
Origins of Digital Image Processing, Image Enhancement in the Spatial Domain, Image
Enhancement in the Frequency Domain, Image Restoration, Color Fundamentals, Image
Transformation, Image and Video Compression, Image Segmentation and Object
Recognition
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
(i) understanding of digital image fundamentals, image digitization, image display
hardware and software (ii) ability to understand and apply image enhancement and
restoration techniques (iii) understanding of image encoding techniques, image
segmentation approaches (iv)introduction to pattern recognition and feature detection
approaches. (v) ability to apply image processing techniques in both the spatial and
frequency (Fourier) domains
Detailed Syllabus:
Unit 1
Introduction: Origins of Digital Image Processing, examples, Fundamental Steps in
Digital Image Processing, Components of an Image Processing System, Digital Image
Fundamentals: Elements of Visual Perception, A Simple Image Formation Model, Basic
Concepts in Sampling and Quantization, Representing Digital Images, Zooming and
Shrinking Digital Images, Some Basic Relationships between Pixels, Linear and Nonlinear
Operations.
Unit 2
Image Enhancement in the Spatial Domain: Some Basic Gray Level
Transformations,
Histogram
Processing,
Enhancement
Using
Arithmetic/Logic
Operations, Basics of Spatial Filtering, Smoothing Spatial Filters, Sharpening Spatial
Filters, Combining Spatial Enhancement Methods.
Image Enhancement in the Frequency Domain: Background, Image Enhancement
in the Frequency Domain, Introduction to the Fourier Transform and the Frequency,
Domain, Smoothing Frequency-Domain Filters, Sharpening Frequency Domain Filters,
Homomorphic Filtering.
Unit 3
Image Restoration: A Model of the Image degradation/Restoration process, Noise
Models, Restoration in the Presence of Noise Only–Spatial Filtering, Periodic Noise
Reduction by Frequency Domain Filtering, Linear, Position-Invariant Degradations ,
Estimating the Degradation Function, Inverse Filtering ,Minimum Mean Square Error
(Wiener) Filtering.
Color Fundamentals: Color Models, Pseudo color Image Processing, Basics of FullColor Image Processing, Color Transformations, Smoothing and Sharpening, Color
Segmentation, Noise in Color Images, Color Image Compression.
Unit 4
Image Transformation: Discrete Cosine Transforms, Walsh Hadmard Transforms,
Wavelet Transforms and Multiprocessing, Background, Multiresolution Expansions,
Wavelet Transforms in one Dimension, Wavelet Transforms in Two Dimensions, Wavelet
Packets.
Image and Video Compression: Fundamentals, Image Compression Models, Lossless
compression Methods: Huffman coding, run length coding, LZ coding, Arithmetic coding,
Lossy Compression: Gray level Run length coding, Block truncation coding, vector
quantization, Differential predictive coding, Transform coding , Hybrid coding,
Unit 5
Image Segmentation and Object Recognition: Detection of Discontinuities, Edge
Linking and Boundary Detection, Thresholding, Region-Based Segmentation, Patterns
and Pattern Classes, Recognition Based on Decision-Theoretic Methods, Structural
Methods.
Text Books:
1. Rafel C Gonzalez and Richard E. Woods: Digital Image Processing, PHI 3rd Edition
2012.
2. A. K. Jain: Fundamentals of Digital Image Processing, 1st edition, Pearson, 2011.
Reference Books:
1. Z. Li and M.S. Drew: Fundamentals of Multimedia, 1st edition, Pearson, 2011.
2. S.Jayaraman, S.Esakkirajan, T.Veerakumar: Digital Image Procesing, 1st edition,
TataMcGraw Hill, 2011.
3. Scott.E.Umbaugh: Computer Vision and Image Processing, Prentice Hall, 1997.
4. Braunl, Parallel Image Processing, 1st edition,(Yes Dee Publishing Pvt Ltd),
Springer, 2008.
MCSE E17: Advances in Compiler Design (3:0:0)
Course Objectives:
The aim of this course is to provide students with an overview of the issues that arise in
Compiler construction as well as to throw light upon the significant theoretical
developments and tools that are deep rooted into computer science. This course will
basically introduce the major phases of Compiler construction and also its theoretical
aspects including regular expressions, context free grammars, Finite Automata etc. As a
part of this course the students are required to design a compiler passing through the
phases namely Lexical Analysis, Syntax Analysis, Semantic Analysis and Intermediate
code generation for a small language This course will help students to achieve the
following objectives: (i) To introduce the major concept areas of language translation
and compiler design (ii) To develop an awareness of the function and complexity of
modern compilers.(iii) To provide practical, hands on experience in compiler design. (iv)
To understand the theory and practice of compiler implementation. (v) To learn compiler
parsing techniques, construction of abstract syntax trees, symbol tables, intermediate
machine representations and actual code generation.
Topics:
Language processors, Topics in Code Generation, Machine-Independent Optimizations,
Instruction-Level Parallelism, Optimizing for Parallelism and Locality.
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
(i) Understand lexical analysis, syntactic analysis, semantic analysis. (ii) Understand
typechecking, intermediate code generation, symbol tables, run-time organization.
(iii)Analyze code generation, optimization, data-flow analysis, and their implementation.
(iv) Understand and implement an example compiler for a high level language. (v)
Understand and implement parallelization, vectorization, and VLIW in compilers.
Detailed Syllabus:
Unit 1
Introduction and Review: Language processors; The structure of a Compiler; The
evolution of programming languages; The science of building a compiler; Applications of
Compiler technology; Programming language basics.
Unit 2
Topics in Code Generation: Issues in the design of Code Generator; Peephole
optimization; Register allocation and assignment; Instruction selection by tree
rewriting; Optimal code generation for expressions; Dynamic programming code
generation.
Unit 3
Machine-Independent Optimizations: The principle sources of optimization;
Introduction to data flow analysis; Foundations of data flow analysis; Constant
propagation; Partial-redundancy elimination; Loops in flow graphs; Region-based
analysis; Symbolic analysis.
Unit 4
Instruction-Level Parallelism: Process architectures; Code-scheduling constraints;
Basic-block scheduling; Global code scheduling; Software pipelining.
Unit 5
Optimizing for Parallelism and Locality: Basic concepts; An example of matrix
multiplication; Iteration spaces; Affine array indexes; Data reuse; Array data –
dependence analysis; Finding synchronization-free parallelism; Synchronization
between parallel loops; Pipelining; Locality optimizations.
Text Book:
1. Alfred V Aho, Monica S. Lam, Ravi Sethi, Jeffrey D Ullman: Compilers - Principles,
Techniques and Tools, 2nd Edition, Pearson, 2012.
Reference Books:
1. Charles N. Fischer, Richard J. leBlanc, Jr.: Crafting a Compiler with C, Pearson,
1991.
2. Andrew W Apple: Modern Compiler Implementation in C, Cambridge University
Press, 1997.
3. Kenneth C Louden: Compiler Construction Principles & Practice, 1st edition,
Cengage Learning, 2011.
MCSE E18: Data Structures and Algorithms (3:0:0)
Course Objectives:
When developing software it is important to know how to solve problems in a
computationally efficient way. Algorithms describe methods for solving problems under
the constraints of the computers resources. Often the goal is to compute a solution as
fast as possible, using as few resources as possible. To solve a problem efficiently it may
be necessary to use data structures tailored for the particular problem(s) at hand. A
data structure is a specific way of organizing data that supports efficient performance of
the relevant operations on that data. For instance there are data structures for
organizing large numbers of records where records already present can be quickly found
and/or deleted, and new records can be inserted and found fast. This course will help
students to achieve the following objectives: (i) Assess how the choice of data structures
and algorithm design methods impacts the performance of programs. (ii) Choose the
appropriate data structure and algorithm design method for a specified application. (iii)
Write programs using object-oriented design principles. (iv) Solve problems using data
structures such as linear lists, stacks, queues, hash tables, binary trees, heaps,
tournament trees, binary search trees, and graphs and writing programs for these
solutions (v) Solve problems using algorithm design methods such as the greedy
method, divide and conquer, dynamic programming, backtracking, and branch and
bound and writing programs for these solutions.
Topics:
Algorithm Analysis, List, Stacks, and Queues, Trees, Hashing, Priority Queues (Heaps),
Sorting, Graph Algorithms, Algorithm Design Techniques.
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
(i) Understand the concept of arrays, structures pointers, recursion, stack, queue linked
list (ii) Basic ability to analyze algorithms and to determine algorithm correctness and
time efficiency class. (iii) Master a variety of advanced abstract data type (ADT) and
data structures and their implementations. (iv) Master different algorithm design
techniques (brute force, divide and conquer, greedy,etc.) (v) Ability to apply and
implement learned algorithm design techniques and data structures to solve problems.
Detailed Syllabus:
Unit 1
Algorithm Analysis: Mathematical Background, Model, What to Analyze, Running Time
Calculations.
List, Stacks, and Queues: Abstract Data Types (ADTs), The List ADT, Vector and List
in the STL, Implementation of Vector, Implementation of List, The Stack ADT, The
Queue ADT.
Unit 2
Trees: Preliminaries, Binary Trees, The Search Tree ADT – Binary Search Trees.
Hashing: General Idea, Hash Function, Separate Chaining, Hash Tables Without Linked
Lists, Rehashing, Hash Tables in the Standard Library.
Unit 3
Priority Queues (Heaps): Model, Simple Implementation, Binary Heap, Applications of
Priority Queues, Priority Queues in the standard Library.
Unit 4
Sorting: Preliminaries, Insertion Sort, Merge sort, Quicksort.
Graph Algorithms: Definitions, Topological Sort, Shortest-Path Algorithms, Minimum
Spanning Tree, Applications of Depth-First Search approaches.
Unit 5
Algorithm Design Techniques: Greedy Algorithms, Divide and Conquer, Dynamic
Programming, Backtracking Algorithms.
Text Book:
1. Mark Allen Weiss: Data Structures and Algorithm Analysis in C++, 3rd Edition,
Pearson Education, 2011.
Reference Books:
1. Yedidyah, Augenstein, Tannenbaum: Data Structures Using C and C++, 1st
Edition, Pearson Education, 2012.
2. Sartaj Sahni: Data Structures, Algorithms and Applications in C++, 2nd Edition,
Universities press, 2011.
MCSE E20: Stochastic Processes (3:0:0)
Course Objectives:
This course will help students to achieve the following objectives (i) to understand
discrete time, discrete-state Markov chains, renewal processes, and the Poisson process,
(ii) to understand continuous-time, discrete-state Markov processes; queuing theory;
Brownian motion; martingales; and possibly some other topics, and (iii) to develop that
may cover topics such as convergence of sequences of stochastic processes, and
stochastic calculus.
Topics:
Discrete-time Markov Chains, Renewal Processes, and Poisson Process
Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
(i) to learn to develop an ability to model dynamical processes with noise as stochastic
processes; (ii) to learn to develop an understanding of important qualitative
characteristics of stochastic processes; (iii) to learn to develop an ability to analyze
some basic stochastic processes
Detailed Syllabus:
Unit 1
Preliminaries: Probability, Random Variables, Expected Value, Moment Generating,
Characteristic Functions, and Laplace Transforms, Conditional Expectation, The
Exponential Distribution, Lack of Memory, and Hazard Rate Functions, Some Probability
Inequalities, Limit Theorems, Stochastic Process.
The Poisson Process: Interarrival and waiting Time Distributions, Conditional
Distribution of Arrival Times, Nonhomogeneous Poisson Process, Compound Poisson
Random Variables and processes, Conditional Poisson Processes.
Unit 2
Renewal Theory: Introduction and Preliminaries, Distribution of N(t), Some Limit
Theorems, The Key Renewal Theorem and Applications, Delayed Renewal Processes,
Renewal Reward Processes, Regenerative Processes, Stationary Point Processes.
Unit 3
Markov Chains: Introduction and Examples, Chapman-Kolmogorov Equations and
Classification of States, Limit Theorems, Transitions among Classes, the Gambler’s Ruin
Problem, and Mean Times in Transient States, Branching Processes, Applications of
Markov Chains, Time Reversible Markov Chains, Semi Markov Processes.
Unit 4
Continuous-Time Markov Chains: Introduction, Continuous-Time Markov Chains,
Birth and death Processes, The Kolmogorov Differential Equations, Limiting Probabilities,
Time Reversibility, Applications of the Reversed Chain to queuing Theory, uniformization.
Martingales: Introduction, Stopping Times, Azuma’s Inequality for Martingales, Sub
martingales, Super martingales and the Martingale Convergence Theorem, A
Generalized Azuma Inequality.
Random Walks: Duality in Random Walks, Some Remarks concerning Exchangeable
Random Variables, Using Martingales to Analyze Random Walks, Applications to G/G/1
Queues and Ruin Problems, Blackwell’s Theorem on the Line.
Unit 5
Brownian Motion and Other Markov Processes: Introduction and Preliminaries,
Hitting Times, Maximum Variable, and Arc Sine Laws, Variations on Brownian Motion,
Brownian Motion with Drift, Backward and Forward Diffusion Equations, Applications of
the Kolmogorov Equations to Obtaining Limiting Distributions, A Markov Shot Noise
Process, Stationary Process.
Text Books:
1. Sheldon M Ross: Stochastic Process, 4th Edition, Wiley, 2012.
2. Kishor S Trivedi: Probability and Statistics with Reliability Queuing and Computer
Science Applications, 1st Edition, Wiley, 2011.
Reference Books:
1. R.W. Wolff: Stochastic Modeling and Queuing Theory, Prentice Hall, 1989.
2. B. R. Bhat: Stochastic Models Analysis and Applications, 1st edition, New Age
International, 2010.
MCSE E21: Advanced Algorithms (3:0:0)
Course Objectives:
This is a first course in the design and analysis of algorithms. The main focus is on
techniques for constructing correct and efficient algorithms, and on tools to reason about
them. The course forms a foundation for all areas of computer science. The particular
computational problems discussed have applications in artificial intelligence,
computational biology, compiler construction, hardware and network protocols, and
optimization. This course will help students to achieve the following objectives: (i)
Discuss and use fundamental algorithms and algorithmic techniques. (ii) Decide which
algorithm among a set of possible choices is best for a given application. (iii) Prove
correctness and analyze the running time of a given algorithm. (iv) Design efficient
algorithms for new situations, using as building blocks the techniques learned. (v) Prove
a problem is NP-complete using reduction and understand the implications.
Topics:
Analysis Techniques, Graph Algorithms, Polynomials and the FFT, Number -Theoretic
Algorithms, String-Matching Algorithms, Approximation Algorithms, Introduction Parallel
Algorithms, Introduction to Amortization
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
(i) learn good principles of algorithm design (ii) learn how to analyze algorithms and
estimate their worst-case and average-case behavior (iii) Become familiar with
fundamental data structures and with the manner in which these data structures can
best be implemented (iv) Become accustomed to the description of algorithms in both
functional and procedural styles (v) learn how to apply their theoretical knowledge in
practice
Detailed Syllabus:
Unit 1
Analysis Techniques: Growth of Functions: Asymptotic notations; Standard notations
and common functions; Recurrences and Solution of Recurrence equations- The
substitution method, The recurrence – tree method, The master method; Amortized
Analysis: Aggregate, Accounting and Potential Methods.
Unit 2
Graph Algorithms: Bellman - Ford Algorithm; Single source shortest paths in a DAG;
Johnson’s Algorithm for sparse graphs; Flow networks and Ford-Fulkerson method;
Maximum bipartite matching.
Unit 3
Polynomials and the FFT: Representation of polynomials; The DFT and FFT; Efficient
implementation of FFT.
Number -Theoretic Algorithms: Elementary notions; GCD; Modular Arithmetic;
Solving modular linear equations; The Chinese remainder theorem; Powers of an
element; RSA cryptosystem; Primality testing; Integer factorization.
Unit 4
String-Matching Algorithms: Naïve string Matching; Rabin - Karp algorithm; String
matching with finite automata; Knuth-Morris-Pratt algorithm Boyer – Moore algorithms.
Approximation Algorithms: The vertex-cover problem; The traveling-sales-person
problem; The setcovering problem;The subset-sum problem.
Unit 5
Introduction Parallel Algorithms: Parallel Sorting Algorithms, Parallel Search
Algorithms. Introduction to Amortization.
Text Books:
1. T. H Cormen, C E Leiserson, R L Rivest and C Stein: ―Introduction to Algorithms‖,
3rd Edition, Prentice-Hall of India, 2011.
2. Mark Allen Weiss, Data Structures and Algorithm analysis in C++, 3rd edition,
PEA, 2011.
Reference Book:
1. Ellis Horowitz, Sartaj Sahni, S.Rajasekharan: ―Fundamentals of Computer
Algorithms‖,1st edition, University Press, 2012.
Semester: II
Course Title: Web Technologies
Credits (L:T:P) :3:0:0
Type of course: Lecture/ Laboratory/
/Project/ assignment
Year: 2014-2016
Course Code: MCSE E26
Core/ Elective: Elective
Total Contact Hours: 42 Hrs
Prerequisites:
NIL
Course Objectives :
At the end of the course the students should be able to:

Implement Perl scripts to parse and manipulate structured data.

Design and build robust and maintainable web applications using a server-side
scripting language and servlets and JSP.

Design simple database driven web applications using a server-side scripting
language.

Design web applications using the powerful Rails framework.

Use AJAX to develop web applications for a dynamic user experience
Course Contents:
Unit 1
Perl, CGI Programming: Origins and uses of Perl; Scalars and their operations;
Assignment statements and simple input and output; Control statements; Fundamentals
of arrays; Hashes; References; Functions; Pattern matching; File input and output;
Examples. The Common Gateway Interface; CGI linkage; Query string format; CGI.pm
module; A survey example; Cookies.
Unit 2
Servlets and Java Server Pages: Overview of Servlets; Servlet details; A survey
example; Storing information on Clients; Java Server Pages.
PHP: Origins and uses of PHP; Overview of PHP; General syntactic characteristics;
Primitives, operations and expressions; Output; Control statements; Arrays; Functions;
Pattern matching; Form handling; Files; Cookies; Session tracking.
Unit 3
Database Access through the Web: Relational Databases; An introduction to SQL;
Architectures for Database access; The MySQL Database system; Database access with
PERL and MySQL; Database access with PHP and MySQL; Database access with JDBC
and MySQL.
Unit 4
Introduction to Ruby, Rails: Origins and uses of Ruby; Scalar types and their
operations; Simple input and output; Control statements; Fundamentals of arrays;
Hashes; Methods; Classes; Code blocks and iterators; Pattern matching. Overview of
Rails; Document requests; Processing forms; Rails applications with Databases; Layouts.
Unit 5
Introduction to Ajax: Overview of Ajax; The basics of Ajax; Rails with Ajax.
Text Book:
1. Robert W. Sebesta: ―Programming the World Wide Web‖, 4th Edition, Pearson
Education, 2012.
Reference Books:
1. M. Deitel, P.J. Deitel, A. B. Goldberg: ―Internet & World Wide Web How to
program‖, 3rd Edition, Pearson Education, 4th edition, PHI, 2011.
2. Chris Bates: ―Web Programming Building Internet Applications‖, 3rd Edition,
Wiley India, 2011.
3. Joyce Farrell, Xue Bai, Michael Ekedahl: ―The Web Warrior Guide to Web
Programming‖, 1st edition, Thomson, 2010.
Course Delivery:
The course will be delivered through lectures, class room interaction, group discussion,
lab exercises and projects.
Course Assessment Methods:
CIE Scheme:
Indirect
Assessment
Methods
Direct Assessment
Methods
What
CIE
Internal
Assessment
Tests
Project and
lab test
SEE
To
Whom
Students
Semester
End
Examination
When/ Where
(Frequency in
the course)
Thrice (Average
of the best two
will be
computed)
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
30
Blue Books
1-4
Summation of lab
and project
20
Data Sheets
1-5
End of Course
(Answering
5 of 10
questions)
100
Answer
scripts
1-5
End of the course
-
Questionnaire
3-5,
Relevance of
the course
Students
Feedback
End of Course
Survey
Students
Questions for CIE and SEE will be designed to evaluate the various educational
components (Bloom’s taxonomy)
Course Outcomes :
1. Apply perl for text and file processing and write CGI applications.
2. Create dynamic HTML content with Servlets and JavaServer Pages and PHP.
3. Design dynamic data-driven Web sites using MySQL and PHP and perl
4. Apply MVC design pattern to write database-backed Web Applications using the
Ruby on Rails Framework .
5. Understand the relationship between the different protocols that comprise AJAX.
Mapping Course Outcomes with Program Outcomes:
Program Outcomes*
Course Outcomes
Apply perl for text and file
processing and write CGI
applications
Create
dynamic
HTML
content with Servlets and
JavaServer Pages and PHP
Design dynamic
datadriven Web sites using
MySQL and PHP and perl
Apply MVC design pattern
to write database-backed
Web Applications using
the
Ruby
on
Rails
Framework
Understand
the
relationship between the
different protocols that
comprise AJAX
PO
1
PO
2
X
X
X
X
PO
3
X
X
PO
4
PO
5
X
X
X
PO
6
PO
7
PO
8
X
X
X
X
X
PO
9
PO
10
PO
11
PO
13
X
X
X
X
X
PO
12
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
MCSE E28: Multimedia Communications (3:0:0)
Course Objectives: This course will help students to achieve the following objectives:
understand the basics of analog and digital video: video representation and
transmission, analyze analog and digital video signals and systems, know the
fundamental video processing techniques, acquire the basic skill of designing video
compression, familiarize himself/herself with video compression standards and know the
basic techniques in designing video transmission systems: error control and rate control.
Topics:
Introduction to Multimedia Communications, Framework for Multimedia Standardization,
Application Layer, Middleware Layer, Network Layer.
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
(i) Learn the basics of analog and digital video: color video formation and specification,
analog TV system, video raster, digital video formats, (ii) Frequency domain analysis of
video signals, spatial and temporal frequency response of the human visual system, (iii)
Scene, camera, and motion modeling, 3D motion and projected 2D motion, models for
typical camera/object motions and (iv) 2D motion estimation: optical flow equation,
different motion estimation methods (pel-based, block-based, mesh-based, global
motion estimation, multi-resolution approach).
Detailed Syllabus:
Unit 1
Introduction to Multimedia Communications: Introduction, Human communication
model, Evolution and convergence, Technology framework, Standardization framework.
Unit 2
Framework for Multimedia Standardization: Introduction, Standardization activities,
Standards to build a new global information infrastructure, Standardization processes on
multimedia communications, ITU-T mediacom2004 framework for multimedia, ISO/IEC
MPEG-21 multimedia framework, IETF multimedia Internet standards.
Unit 3
Application Layer: Introduction, ITU applications, MPEG applications, Mobile servers
and applications, Universal multimedia access.
Unit 4
Middleware Layer: Introduction to middleware for multimedia, Media coding, Media
Streaming, Infrastructure for multimedia content distribution.
Unit 5
Network Layer: Introduction, QoS in Network Multimedia Systems.
Text Books:
1. K.R. Rao, Zoran S. Bojkovic, Dragorad A. Milovanovic: Introduction to Multimedia
Communications – Applications, Middleware, Networking, 1st edition, Wiley India,
2011.
Reference Books:
1. Fred Halsall: Multimedia Communications – Applications, Networks, Protocols,
and Standards, 1st edition, Pearson, 2012.
2. Nalin K Sharad: Multimedia information Networking, 1st edition, PHI, 2010.
3. Ralf Steinmetz, Klara Narstedt: Multimedia Fundamentals: Volume 1-Media
Coding and Content Processing, 1st Edition, Pearson, 2010.
4. Prabhat K. Andleigh, Kiran Thakrar: Multimedia Systems Design, 1st edition, PHI,
2011.
MCSE E32: Software Architecture (3:0:0)
Course Objectives:
This course will help students to achieve the following objectives: The objective of the
course is to provide a sound technical exposure to the concepts, principles, methods,
and best practices in software architecture and software design. Principal topics that will
be covered include object oriented analysis and design, UML (Unified Modeling
Language) modeling, architectural patterns, analysis of architectures, formal
descriptions of software architectures, design patterns, extreme programming,
refactoring, distributed objects, component technology, and object oriented frameworks.
Case studies and programming assignments will be an integral part of the course.
Topics:
The Architecture Business Cycle, Architectural Styles and Case Studies, Quality,
Architectural Patterns, Some Design Patterns, Designing and Documenting Software
Architecture.
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
produce "software architects" with sound knowledge and superior competence in
building robust, scalable, and reliable software intensive systems in an extremely
effective way. They would have a clear appreciation of the role of abstraction, modeling,
architecture, and design patterns in the development of a software product. They would
be able to make optimal architectural choices and employ the most relevant methods,
best practices, and technologies for architecting and implementing a software product,
regardless of its complexity and scale.
Detailed Syllabus:
Unit 1
Introduction: The Architecture Business Cycle: Where do architectures come from?
Software processes and the architecture business cycle; What makes a ―good‖
architecture? What software architecture is and what it is not; Other points of view;
Architectural patterns, reference models and reference architectures; Importance of
software architecture; Architectural structures and views.
Unit 2
Architectural Styles and Case Studies: Architectural styles; Pipes and filters; Data
abstraction and object-oriented organization; Event-based, implicit invocation; Layered
systems; Repositories; Interpreters; Process control; Other familiar architectures;
Heterogeneous architectures. Case Studies: Keyword in Context; Instrumentation
software; Mobile robotics; Cruise control; Three vignettes in mixed style.
Unit 3
Quality: Functionality and architecture; Architecture and quality attributes; System
quality attributes; Quality attribute scenarios in practice; Other system quality
attributes; Business qualities; Architecture qualities. Achieving Quality: Introducing
tactics; Availability tactics; Modifiability tactics; Performance tactics; Security tactics;
Testability tactics; Usability tactics; Relationship of tactics to architectural patterns;
Architectural patterns and styles.
Unit 4
Architectural Patterns: Introduction; From mud to structure: Layers, Pipes and Filters,
Blackboard. Distributed Systems: Broker; Interactive Systems: MVC, PresentationAbstraction-Control. Adaptable Systems: Microkernel; Reflection.
Unit 5
Some Design Patterns: Structural decomposition: Whole – Part; Organization of work:
Master – ave; Access Control: Proxy.
Designing and Documenting Software Architecture: Architecture in the life cycle;
Designing the architecture; Forming the team structure; Creating a skeletal system.
Uses of architectural documentation; Views; Choosing the relevant views; Documenting
a view; Documentation across views.
Text Books:
1. Len Bass, Paul Clements, Rick Kazman: ―Software Architecture in Practice, 2nd
Edition‖, Pearson Education, 2010.
2. Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael
Stal: ―Pattern-Oriented Software Architecture, A System of Patterns, Volume 1‖,
John Wiley and Sons, 2007.
3. Mary Shaw and David Garlan: ―Software Architecture-Perspectives on an
Emerging Discipline‖, 1st edition, Prentice-Hall of India, 2011.
Reference Books:
1. E. Gamma, R. Helm, R. Johnson, J. Vlissides: ―Design Patterns-Elements of
Reusable Object-Oriented Software‖,1st edition, Addison-Wesley, 2006.
2. Web site for Patterns: http://www.hillside.net/patterns/
Semester: III
Year: 2014-2016
Course Title: Cloud Computing
Course Code: MCSE E30
Credits (L:T:P) : 3:0:0
Core/ Elective: Elective
Type of Course: Lecture, Practical
Total Contact Hours: 52
Prerequisites: NIL
Course Objectives
The objectives of this course are to
 Provide an understanding cloud computing delivery models.
 Analyze the features of cloud applications and Paradigms.
 Provide understanding of Virtualization.
 Identify policies and mechanisms for resource management.
 Analyze scheduling algorithms for cloud computing systems and cloud security.
Course Contents:
Unit 1
Introduction: Network centric computing and network centric content, Peer-to-peer
systems, Cloud Computing: an old idea whose time has come, Cloud Computing delivery
models & Services, Ethical issues, Cloud vulnerabilities, Challenges, Cloud
Infrastructure: Amazon, Google, Azure & online services, open source private clouds.
Storage diversity and vendor lock-in, intercloud, Energy use & ecological impact of data
centers, service level and compliance level agreement, Responsibility sharing, user
experience, Software licensing.
Unit 2
Cloud Computing Applications & Paradigms: Challenges, existing and new
application opportunities, Architectural styles of cloud applications, Workflows
coordination of multiple activities, Coordination based on a state machine model -the
Zoo Keeper, The Map Reduce programming model, Apache Hadoop, A case study: the
GrepTheWeb application, Clouds for science and engineering, High performance
computing on a cloud, Social computing, digital content, and cloud computing.
Unit 3
Cloud Resource Virtualization: Layering and virtualization, Virtual machine monitors,
Virtual machines Performance and security isolation, Full virtualization and
paravirtualization, Hardware support for virtualization Case study: Xen -a VMM based on
paravirtualization, Optimization of network virtualization in Xen 2.0, vBlades paravirtualization targeting a x86-64 Itanium processor, A performance comparison of
virtual machines, Virtual machine security, The darker side of virtualization, Software
fault isolation.
Unit 4
Cloud Resource Management and Scheduling: Policies and mechanisms for resource
management, Applications of control theory to task scheduling on a cloud, Stability of a
two-level resource allocation architecture, Feedback control based on dynamic
thresholds, Coordination of specialized autonomic performance managers, A utilitybased model for cloud-based web services, Resource bundling.
Unit 5
Storage systems: Evolution, Storage models, file systems, databases, DFS, General
parallel File system, GFS, Hadoop, Locks & Chubby, TPS, NOSQL, Bigdata, Mega store.
Cloud security: Risks, privacy and privacy impacts assessments.
Cloud Application Development: Amazon web Services:EC2 Instances, Connecting
Clients, Security Rules,Launch an EC2 Linux Instance and connect it, create EC2
placement Group,to use S3 in java, to manage SQS services in C#,to install simple
notification service on Ubuntu 10.04, Cloud based simulation of a didtributed trust
Algorithm,A Trust Management Service,A Cloud service for Adaptive Data
Streaming,Cloud- based Optimal FPGA syntesis.
Text Book:
1. Cloud Computing: Theory and Practice, Dan Marinescu, 1st edition, MK Publishers,
2013.
Reference Books:
1. Cloud Computing: Theory and Practice, Dan Marinescu, 1st edition, MK Publishers,
2013.
2. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things,
Kai Hwang, Jack Dongarra, Geoffrey Fox.
MK Publishers.
3. Cloud Computing: A Practical Approach, Anthony T. Velte, Toby J. Velte, Robert
Elsenpeter, McGraw Fill, 2010.
Course Delivery
The course will be delivered through lectures, presentations, classroom discussions,
practice exercises and practical sessions.
Course Assessment and evaluation:
Indirect
Assessment
Methods
Direct
Assessment Methods
What
To
Whom
Internal
Assessment
Tests
CIE
SEE
Mini Project/
Assignment
Submitted
as a Team
Work
Students
Semester
End
Examination
When/
Where
(Frequency
in the
course)
Thrice
(Average of
the best two
will be
computed)
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
30
Blue Books
1-5
Review 1
Review 2
20
Soft Copy of
the Work
Executed
1-5
End of
Course
(Answering
5 of 10
questions)
50
Answer
scripts
1-5
End of the
course
-
Questionnaire
1-5,
Relevance of
the course
Students
Feedback
End of Course
Survey
Students
Course Outcomes
At the end of the course students should be able to:
1. Analyze the transformation let to the evolution of Cloud computing, it's impact on
the enterprises and list the different services offered by service providers.
2. Design different workflows according to requirements applying map reduce
model.
3. Make performance comparison of virtual machines, Virtual machine security.
4. Create combinatorial auctions for cloud scheduling algorithms for computing
clouds.
5. Assess the Cloud security, the risks involved, its impact and cloud service
providers.
Mapping Course Outcomes with Programme Outcomes:
Course Outcomes
Analyze the transformation let to
the evolution of Cloud computing,
it's impact on the enterprises and
list the different services offered
by service providers
Design different workflows
according to requirements
applying map reduce model.
Make performance comparison of
virtual machines, Virtual machine
security.
Create combinatorial auctions for
cloud scheduling algorithms for
computing clouds.
Assess the Cloud security, the
risks involved, its impact and
cloud service providers.
Program Outcomes
PO
1
PO
2
PO
3
X
X
X
X
X
P
O
10
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
4
X
PO
5
PO
6
PO
7
PO
8
PO
9
PO
11
P
O
12
P
O
13
X
MCSE E33: Metrics and models in Software Quality Engineering (3:0:0)
Course Objectives: This course will help students to achieve the following objectives:
Understand the basics of software quality engineering, including its benefits, related
models and standards, and quality team tools, Plan, implement and audit a Software
Quality Management program for their organization, Assist in defining and tailoring
software engineering life cycles and processes, Understand the basic software project
management principles and techniques as they relate to software project planning,
tracking, control and risk management, Select, define, and apply software
measurement, metrics, and analytical techniques to their software products, processes
and services, Participate in peer reviews, and assist in the planning, implementation and
evaluation of software testing activities and Understand the fundamentals of the
configuration management process to include configuration identification, configuration
control, status accounting, and audits.
Topics:
Introduction, QA in Context and Quality Engineering, Testing Concepts, Issues and
Techniques, Test Activities, Management, and Automation, Coverage and Usage Testing
Based on Checklists and Partitions, Input Domain Partitioning and Boundary Testing,
Coverage and Usage Testing Based On Finite-State Machines and Markov Chains,
Control Flow, Data Dependency, and Interaction Testing, Testing Techniques:
Adaptation, Specialization and Integration, Defect Prevention and Process Improvement,
Software Inspection, Formal Verification.
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
discusses basic software project management principles and techniques as they relate to
software project planning, monitoring and control, and risk management. Attendees will
learn how to select, define and implement software metrics to understand, evaluate,
control and predict their software process, product and services. This course covers the
basics of software verification and validation planning with an emphasis on software
peer reviews and software testing techniques. The course ends with an overview of
software configuration management, including configuration identification, control,
status accounting and auditing.
Detailed Syllabus:
Unit 1
Introduction: Meeting people’s quality expectations, Software Quality: Perspective and
Expectations, Quality frameworks and ISO, Correctness and defects, Historical
perspective of Quality, Classification: Quality Assurance as dealing with defects, Defect
prevention, Defect reduction, Defect Containment.
QA in Context and Quality Engineering: Handling discovered defects during QA
activities, QA Activates in Software Processes, Verification and Validation Perspectives,
Reconciling the Two Views. Quality Engineering: Activities and Process, Quality Planning:
Goal Setting and Strategy Formation, Quality Assessment and Improvement, Quality
Engineering in Software Processes.
Unit 2
Testing Concepts, Issues and Techniques: Purpose, Activities, Processes and
Context, Questions about Testing, Functional vs Structural Testing, Coverage - based vs
Usage - based Testing.
Test Activities, Management, and Automation: Test Planning and Preparation, Test
Execution, Result Checking, and Measurement, Analysis and Follow-up, Activates,
People, and Management, Test Automation
Coverage and Usage Testing Based on Checklists and Partitions: Checklist-Based
Testing and its Limitations, Testing for partition Coverage, Usage-Based Statistical
Testing with Musa’s Operational Profiles, Constructing Operational Profiles, A case study.
Unit 3
Input Domain Partitioning and Boundary Testing: Input Domain Partitioning and
Testing, ISimple domain analysis and the Extreme Point Combination Strategy, Testing
strategies based on boundary analysis, Other Boundary Test Strategies and Applications.
Coverage and Usage Testing Based On Finite-State Machines and Markov
Chains: Finite-State machines and testing, FSM testing: State and transition coverage,
A Case study, Markov chains and unified Markov models for testing, Using UMMs for
Usage-Baseed statistical testing, Case study continued.
Unit 4
Control Flow, Data Dependency, and Interaction Testing: Basic Control Flow
Testing, Loop Testing, CFT Usage, and Other Issues, Data Dependency and Data flow
Testing, DFT: Coverage and Applications.
Testing Techniques: Adaptation, Specialization and Integration: Testing SubPhases and Applicable Testing Techniques, Specialized Test Tasks and Techniques, Test
Integration, Case Study: Hierarchical Web Testing.
Unit 5
Defect Prevention and Process Improvement: Basic concepts and Generic
Approaches, Root cause Analysis for Defect Prevention, Education and training for defect
prevention, Other Techniques for Defect Prevention, Focusing on Software Processes.
Software Inspection: Basic concepts and Generic Process, Fagan inspection, Other
Inspections and Related Activities, Defect Detection Techniques, Tool / Process Support,
and
Effectiveness.
Formal Verification: Basic Concepts: Formal Verification and Formal Specification,
Formal
Verification: Axiomatic Approach, Other approaches, Applications, effectiveness and
integration issues.
Text Book:
1. Stephan H. Kan: ―Metrics and Models in Software Quality Engineering‖, 2nd
Edition, Pearson Education, 2012.
Reference Book:
1. Jeff Tian: ―Software Quality Engineering: Testing, Quality Assurance, and
Quantifiable Improvement‖, 1st edition, John Wiley and Sons Inc., 2006.
Semester III
Year: 2014-2016
Course Title: Information Security
Course Code: MCSE E34
Credits (L:T:P): 3:0:0
Core/Elective: Elective
Type of Course: Lectures
Total Contact Hours: 42 Hours
Prerequisites: Students should have undergone a course on Data Communication
Course Objectives:
The objectives of this course are:

Explain the purpose of Information Security Management Systems (ISMS)

To learn processes involved in establishing, operating, monitoring, reviewing and
improving ISMS as defined in ISO/IEC 27001

To learn the significance of the above for ISMS auditors

Explain the purpose, content, and interrelationship of legislative framework
relevant to ISMS

Explain and undertake the role of an auditor to plan, conduct, report and follow-up
an ISMS audit.
Course Contents:
Unit 1
Introduction to Information Security: Introduction; what is security? Critical
characteristics of information; NSTISSC security model; Approaches to information
security implementation; The Security System Development Life Cycle; Information
Security Terminology.
Planning for Security: Introduction; Information Security Policy, Standards, and
Practices; The Information Security Blue Print.
Unit 2
Security Technology: Firewalls and VPNs: Introduction, Physical design, Firewalls,
Protecting Remote Connections. Intrusion Detection, Access control and Other Security
Tools: Introduction; Intrusion Detection Systems (IDS); Honey Pots, Honey Nets, and
Padded cell systems; Scanning and Analysis Tools; Access Control Devices.
Information Security maintenance: Introduction; Security Management Models; The
Maintenance Model.
Unit 3
Introduction to Network Security: Attacks, Services, and Mechanisms; Security
Attacks; Security Services; A model for Internetwork Security; Internet Standards and
RFCs.
Cryptography: Conventional Encryption Principles and Algorithms; Cipher Block Modes
of Operation; Location of encryption devices; Key distribution; Approaches to message
authentication; Secure Hash functions and HMAC; Public Key Cryptography Principles
and Algorithms; Digital Signatures; Key management.
Unit 4
Authentication Applications: Kerberos, X.509 Directory Authentication Service.
Electronic Mail Security: Pretty Good Privacy (PGP), S/MIME.
IP Security: IP Security Overview, IP Security Architecture, Authentication Header,
Encapsulating Security Payload, Combining Security Associations, Key Management.
Unit 5
Web Security: Web security requirements, Secure Socket layer (SSL) and Transport
layer
Security (TLS), Secure Electronic Transaction (SET).
Network Management Security: Basic concepts of SNMP, SNMPv1 community facility,
SNMPv3.
Text Books:
1. Michael E. Whitman and Herbert J. Mattord: ―Principles of Information Security‖,
4th Edition, Thomson, 2012.
2. William Stallings: ―Network Security Essentials Applications and Standards‖, 4th
edition, Person Education, 2012.
Reference Books:
1. Behrouz a Forouzan, Debdeep Mukhopadhyay: ―Cryptography and Network
Security‖, 2nd edition, Tata McGraw-Hill, 2011.
2. Deven N. Shah: Mark Stapms Information Security Principles & Practice, 1st
edition, Wiley India, 2010.
Course Delivery: The course will be delivered through lectures, presentations,
classroom discussions, case studies and exercises. Questions for CIE and SEE are
designed in accordance with the Bloom’s taxonomy
Indirect
Assessment
Methods
Direct
Assessment Methods
What
To
Whom
Internal
Assessmen
t Tests
C
I
E
S
E
E
Quiz (out
of reading)
+
Exercises
Students
Semester
End
Examinatio
n
Students
Feedback
End of
Course
Survey
When/Where
(Frequency in
the course)
Evidence
Collected
Contribution
to course
outcomes
Thrice (Average
of the best two
will be
computed)
25
Blue Books
1,2,3,4,5
2 Quizes + Two
Exercises
25
Project
Report
1,2,3,4,5
100
Answer
scripts
1,2,3,4,5
Questionnai
re
1,2,3,4,5
Relevance of
the course
End of Course
(Answering 5 of
10 questions)
Students
Max
Mark
End of the
course
-
Course Outcomes:
1. Describe the five keys of network security
2. Identify and explain the concepts, policies, and technologies associated with a
layered and diversified defense-in-depth strategy
3. Discuss the objectives of access control methods and describe how the available
methods are implemented in the defense of a network
4. Identify the impact of a layered defense on the performance of the network
5. Define the concepts of auditing in a network, including the types of audits and
the handling of data.
Course Outcomes
Program Outcomes
PO
1
Describe the five keys of
network security
Identify and explain the
concepts,
policies,
and
technologies associated with
a layered and diversified
defense-in-depth strategy
Discuss the objectives of
access control methods and
describe how the available
methods are implemented in
the defense of a network
Identify the impact of a
layered defense on the
performance of the network
Define the concepts of
auditing
in
a
network,
including the types of audits
and the handling of data.
PO
2
PO
3
PO
4
PO
5
X
X
X
X
X
X
X
X
X
X
PO
6
PO
7
PO
8
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
9
PO
10
X
X
X
PO
12
X
X
X
X
PO
13
X
X
X
X
X
PO
11
X
X
X
X
X
X
MCSE E35: Soft Computing (3:0:0)
Course Objectives:
This course will help students to achieve the following objectives: To become able to
apply Genetic Algorithms and Artificial Neural Networks as computational tools to solve a
variety of problems in their area of interest ranging from Optimization problems to
Pattern recognition and control tasks.
Topics:
Neural Networks, Fuzzy Logic, Operations on Fuzzy Sets, Fuzzy Arithmetic, Fuzzy Logic,
and Uncertainty based Information, Introduction of Neuro-Fuzzy Systems, and
Introduction of Neuro-Fuzzy Systems
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
computational techniques like Genetic/ Evolutionary algorithms, Artificial Neural
Networks, Fuzzy Systems, Machine learning and probabilistic reasoning etc. It also
discusses Genetic Algorithms, Artificial Neural Networks (major topologies and learning
algorithms) and Fuzzy Logic.
Detailed Syllabus:
Unit 1
Neural Networks: History, overview of biological Neuro-system, Mathematical Models
of Neurons, ANN architecture, Learning rules, Learning Paradigms-Supervised,
Unsupervised and reinforcement Learning, ANN training Algorithm sperceptions, Training
rules, Delta, Back Propagation Algorithm, Multilayer Perceptron Model, Hopfield
Networks, Associative Memories, Applications of Artificial Neural Networks.
Unit 2
Fuzzy Logic: Introduction to Fuzzy Logic, Classical and Fuzzy Sets: Overview of
Classical
Sets, Membership Function, Fuzzy rule generation.
Unit 3
Operations on Fuzzy Sets, Fuzzy Arithmetic, Fuzzy Logic, Uncertainty based
Information: Compliment, Intersections, Unions, Combinations of Operations,
Aggregation Operations. Fuzzy Numbers, Linguistic Variables, Arithmetic Operations on
Intervals & Numbers, Lattice of Fuzzy Numbers, Fuzzy Equations. Classical Logic,
Multivalued Logics, Fuzzy Propositions, Fuzzy Qualifiers, Linguistic Hedges. Information
& Uncertainty, Nonspecificity of Fuzzy & Crisp Sets, Fuzziness of Fuzzy Sets.
Unit 4
Introduction of Neuro-Fuzzy Systems: Architecture of Neuro Fuzzy Networks,
Applications of Fuzzy Logic: Medicine, Economics etc.
Unit 5
Genetic Algorithms: An Overview, GA in problem solving, Implementation of GA.
Text Books:
Anderson J.A.: ―An Introduction to Neural Networks‖, 1st edition, PHI, 2012.
Hertz J. Krogh, R.G. Palmer: ―Introduction to the Theory of Neural Computation‖,
Addison-Wesley, 1991.
3. G.J. Klir & B. Yuan: ―Fuzzy Sets & Fuzzy Logic Theory & applications‖, 1st
edition,PHI, 2012.
4. Melanie Mitchell: ―An Introduction to Genetic Algorithm‖, 1st edition, PHI, 1998.
1.
2.
Reference Books:
1. Tettamanzi, Andrea, Tomassini, and Marco: ― Soft Computing: Integrating
Evolutionary, Neural and GFuzzy Systems‖, Springer, 2001.
2. Naresh K. Sinha and madan M gupta:‖ Soft Computing and Intelligent systems –
Theory and Application‖, Academic press, 2000.
.
MCSE E37: VLSI Design and Algorithms (3:0:0)
Course Objectives:
This course will help students to achieve the following objectives: Study the
fundamental structures of VLSI Systems at the lowest levels of system abstraction,
namely those associated with the direct application of VLSI devices to particular
problems of interest. VLSI design is concerned with the set of principles governing MOS
(metal oxide semiconductor) devices and their behaviors. The CMOS transistors (nchannel and p-channel) and the ways in which we can use them to create the most basic
structure—the digital switch and to build a range of VLSI structures from this switch,
including NAND/NOR gates, Multiplexers, Latches and Registers.
Topics:
Introduction to Digital systems and VLSI, Fabrication and Devices, Sequential Machines,
Subsystem Design, Architecture Design, Simulations
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
Be able to use mathematical methods and circuit analysis models in analysis of CMOS
digital electronics circuits, including logic components and their interconnect, Be able to
create models of moderately sized CMOS circuits that realize specified digital functions,
Be able to apply CMOS technology-specific layout rules in the placement and routing of
transistors and interconnect, and to verify the functionality, timing, power, and parasitic
effects, Have an understanding of the characteristics of CMOS circuit construction and
the comparison between state-of-the-art CMOS 2.5 micron process and emerging
nanometer-scale electronic circuit technologies and processes and Be able to complete a
significant VLSI design project having a set of objective criteria and design constraints.
Detailed Syllabus:
Unit 1
Introduction to Digital systems and VLSI: Why Design Integrated Circuits?
Integrated Circuits manufacturing, Integrated Circuit Design Techniques; IP-Based
Design.
Fabrication and Devices: Introduction; Fabrication processes; Fabrication theory and
practice; Reliability.
Unit 2
Sequential Machines: Introduction; Latches and Flip-flops; Sequential systems and
clocking disciplines; Performance analysis; Clock generators;
Sequential systems
design, Power optimization, Design validation, Sequential testing.
Unit 3
Subsystem Design: Introduction; Combinational shifters; Adders; ALUs; Multipliers;
High-density memory; Image sensors; FPGAs; PLA; Buses and networks on chips; Data
paths; Subsystems as IP.
Unit 4
Architecture Design: Introduction; Hardware description languages; Register Transfer
design; Pipelining; High-level synthesis; Architecture for low power; GALS systems;
Architecture testing; IP components; Design methodologies; Multiprocessor system-onChip design.
Unit 5
Simulations: General remarks; Gate-level modeling and simulations; Switch-level
modeling and simulation.
Text Books:
1. Wayne Wolf: Modern VLSI design IP Based Design, 4th edition, Pearson
Education, 2011.
2. Sabih H Gerez: Algorithms for VLSI Design Automation, 2nd edition, Wiley India,
2011.
Reference Books:
1. Naveed Shervani: Algorithms for VLSI Physical Design Automation, Kluwer
Academic Publisher, 3rd Edition, 2010.
2. Christophher Meinel, Thorsten Theobold: Algorithm and Data Structures for VLSI
Design, KAP, 2002.
MCSE E38: Analysis of Computer Networks (3:0:0)
Course Objectives:
This course will help students to achieve the following objectives: apply knowledge of
mathematics, science, and engineering, identify, formulate, and solve engineering
problems, use the techniques, skills, and modern engineering tools necessary for
engineering practice and knowledge of probability and statistics, mathematics through
differential and integral calculus, discrete mathematics, basic sciences, and computer
science.
Topics:
Introduction, Multiplexing, Stream Sessions: Deterministic Network Analysis, Stochastic
Analysis; Adaptive Bandwidth Sharing for Elastic Traffic
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
use applied probability theory in measuring the performance of a system, Understand
statistics and data presentation, Practice performance evaluation techniques and
performance measures or metrics, Summarize and analyze experiments outcomes,
Compare systems using sample data, Use Queuing theory to measure performances of
systems, Analyze single queue systems, Analyze simple queuing networks and Model
communication networks and I/O computer systems.
Detailed Syllabus:
Unit 1
Introduction: Two examples of analysis: Efficient transport of packet voice calls,
Achievable throughput in an input-queuing packet switch; The importance of
quantitative modeling in the Engineering of Telecommunication Networks.
Unit 2
Multiplexing: Network performance and source characterization; Stream sessions in a
packet network: Delay guarantees; Elastic transfers in a packet network; Packet
multiplexing over Wireless networks.
Unit 3
Stream Sessions: Deterministic Network Analysis: Events and processes in packet
multiplexer models: Universal concepts; Deterministic traffic models and Network
Calculus; Scheduling; Application to a packet voice example; Connection setup: The
RSVP approach; Scheduling (continued).
Unit 4
Stream Sessions: Stochastic Analysis: Deterministic analysis can yield loose bounds;
Stochastic traffic models; Additional notation; Performance measures; Little’s theorem,
Brumelle’s theorem, and applications; Multiplexer analysis with stationary and ergodic
traffic; The effective bandwidth approach for admission control; Application to the
packet voice example; Stochastic analysis with shaped traffic; Multihop networks; LongRange-Dependent traffic.
Unit 5
Adaptive Bandwidth Sharing for Elastic Traffic: Elastic transfers in a Network;
Network parameters and performance objectives; Sharing a single link; Rate-Based
Control; Window-Based Control: General Principles; TCP: The Internet’s Adaptive
Window Protocol; Bandwidth sharing in a Network.
Text Books:
1. Anurag Kumar, D. Manjunath, Joy Kuri: Communication Networking An Analytical
Approach, 1st edition, Elsevier, 2011.
2. M. Schwartz: Broadband Integrated Networks, Prentice Hall PTR, 1996.
Reference Books:
1. J. Walrand P. Varaiya: High Performance Communication Networks, 2nd edition,
Morgan Kaufmann, 2012.
MCSE E41: Wireless and Cellular Networks (3:0:0)
Course Objectives:
This course will help students to achieve the following objectives: Will understand
different network layer protocols, application layer, transport layer and network layer,
Will understand Internet and principles of the TCP/IP protocol suite, Will understand
Wireless and mobile networks, Will be able to program simple network applications
using socket API. Also justify the philosophy on cellular and wireless networks.
Topics:
Wireless communication systems, modern systems, cellular concepts, mobile radio
propagation, modulation techniques for mobile radio, multiple access techniques and
wireless networking.
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
identify and design wireless communication systems, mobile radio propagation and
wireless networking, simulation of the discussed topics are essentials for better
understanding. Also understand the conceptual and implementation aspects of network
application, Understanding the relationship between the transport and network layer,
examine the critical function of transport layer. Understand the controlling of the
transmission rate of transport layer or avoid congestion within network, Understand the
various routing algorithms that determine paths that packets take through the network
from source to destination, Understand how multimedia applications can be designed to
make the best effort internet and understand the internet architecture to provide explicit
support for service requirements of media applications.
Detailed Syllabus:
Unit 1
Introduction to Wireless Communication Systems: Evolution of Mobile Radio
Communications, Mobile Radio Systems around the world examples of Wireless
Communication Systems, Paging System, Cordless Telephone System. Cellular
Telephone Systems, Comparison of Common Wireless Communications Systems.
Modern Wireless Communications Systems: Second generation (2G), Cellular
Networks, evolution of 2.5G, TDMA Standards, Third Generation (3G) Wireless Networks,
Wireless Local Loop (WLL) and LMDS, Wireless Local Area Networks (WLANs), Bluetooth
and Personal Area Networks (PANS)
Unit 2
The Cellular Concept: System Design Fundamentals, Introduction, Frequency reuse,
channel assignment strategies, handoff strategies – prioritizing handoffs, Practical
Handoff considerations. Interference and system capacity, co-channel interference and
system capacity, channel planning for wireless systems, adjacent channel interference,
power control for reducing interference.
Unit 3
Mobile Radio Propagation: Introduction to radio wave propagation, Free space
propagation model, Relating power to electric field, Reflection, Diffraction, Scattering.
Modulation Techniques for Mobile Radio: Frequency modulation Vs amplitude
modulation, Amplitude modulation, Angle modulation, Digital Modulation, Linear
Modulation techniques – Binary phases shift keying (BPSK), Differential Phase Shift
Keying (DPSK), Quadrature Phase Shift Keying (QPSK), Constant envelope modulation –
Binary Frequency Shift Keying, Minimum Shift Keying (MSK), Gaussian Minimum Shift
Keying (GMSK).
Unit 4
Multiple Access Techniques for Wireless Communications: Introduction to Multiple
access, Frequency Division Multiple Access (FDMA), Time Division Multiple Access
(TDMA), Spread Spectrum Multiple Access, Space Division Multiple Access (SDMA),
Packet Radio. Protocols, Reservation Protocols – Reservation ALOHA, Packet Reservation
Multiple Access (PRMA), Capacity of cellular systems.
Unit 5
Wireless Networking: Introduction, Difference between Wireless and Fixed Telephone
Networks, Development of Wireless Networks, First generation, second generation, third
generation.
Text Book:
1. Theodore S Rappaport: Wireless Communications, Principles and Practice, 2nd
Edition, Pearson Education Asia, 2011.
Reference Books:
1. William C Y Lee: Mobile Communications Engineering Theory and Applications, 2nd
Edition, McGraw Hill, 2011.
2. William Stallings: Wireless Communications and Networks, 2nd edition, Pearson
Education Asia, 2009.
MCSE E42: Advances in Storage Area Networks (3:0:0)
Course Objectives:
This course will help students to achieve the following objectives: ability for aligning the
appropriate technologies to specific business problems, ability to evaluate design
alternatives according to standard practice, specifications, performance analysis, an
ability for preparing a guidelines for aligning technical solutions with the business
objectives of data availability and preservation, an ability to propose solutions for the
support of business processes with the aid of storage networks, will be able to design
data networks with built –in redundancy and high availability and will be able to design
a storage model and storage networks.
Topics:
Intelligent disk subsystems, I/O techniques, network attached storage, file system and
NAS, storage virtualization, SAN architecture and hardware devices, software
components of SAN and management.
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
Understand computer systems, especially server Centric and storage centric IT
architecture, the memory hierarchy and its impact on performance; access to stored
information via file systems, and access to other computer systems via networks, Be
able to compare large and small internal hard disks that is, active and passive I/O
channels ,virtualization by RAID and All levels of RAIDs, Understand the details of data
flow, internal working of fiber channel transmission, protocols, latency, communication
between arbitrated loop and fabric, connection via SCSI and be able to develop a
program to test the architecture provision intended operations, Be able to Design,
implement, test, debug, and document storage network problems, Understand the
techniques that might be useful in designing and implementing the different
architectures and Understand the problems of consistent and reliable storage networks
production and the goals of architecture.
Detailed Syllabus:
Unit 1
Introduction: Server Centric IT Architecture and its Limitations; Storage – Centric IT
Architecture and its advantages. Case study: Replacing a server with Storage Networks
The Data Storage and Data Access problem; The Battle for size and access.
Intelligent Disk Subsystems: Architecture of Intelligent Disk Subsystems; Hard disks
and Internal I/O Channels; JBOD, Storage virtualization using RAID and different RAID
levels; Caching: Acceleration of Hard Disk Access; Intelligent disk subsystems,
Availability of disk subsystems.
Unit 2
I/O Techniques: The Physical I/O path from the CPU to the Storage System; SCSI;
Fibre
Channel Protocol Stack; Fibre Channel SAN; IP Storage.
Unit 3
Network Attached Storage: The NAS Architecture, The NAS hardware Architecture,
The NAS Sotfware Architecture, Network connectivity, NAS as a storage system.
File System and NAS: Local File Systems; Network file Systems and file servers;
Shared Disk file systems; Comparison of fibre Channel and NAS.
Unit 4
Storage Virtualization: Definition of Storage virtualization ; Implementation
Considerations; Storage virtualization on Block or file level; Storage virtualization on
various levels of the storage Network; Symmetric and Asymmetric storage virtualization
in the Network.
Unit 5
SAN Architecture and Hardware devices: Overview, Creating a Network for storage;
SAN Hardware devices; The fibre channel switch; Host Bus Adaptors; Putting the storage
in SAN; Fabric operation from a Hardware perspective.
Software Components of SAN: The switch’s Operating system; Device Drivers;
Supporting the switch’s components; Configuration options for SANs.
Management: Planning Business Continuity; Managing availability; Managing
Serviceability; Capacity planning; Security considerations.
Text Book:
1. Ulf Troppens, Rainer Erkens and Wolfgang Muller: Storage Networks Explained,
1st edition, Wiley India, 2012.
Reference Books:
1. Marc Farley: Storage Networking Fundamentals – An Introduction to Storage
Devices, Subsystems, Applications, Management, and File Systems, Cisco Press,
2005.
2. Robert Spalding: ―Storage Networks The Complete Reference‖, 1st edition, Tata
McGraw-Hill, 2011.
3. Richard Barker and Paul Massiglia: ―Storage Area Network Essentials A
CompleteGuide to understanding and Implementing SANs‖, 1st edition, John
Wiley India, 2011.
Semester: II/III
Year: 2014-2016
Course Title: Big Data and Data Science
Course Code: MCSE E 12
Credits (L:T:P) : 3:0:0
Core/ Elective: Elective
Type of Course: Lecture, Practical
Total Contact Hours: 42
Prerequisites: Nil
Course Objectives
The objectives of this course are to

Understand how organizations these days use their data a decision supporting tool
and to build data - intensive products and services.

Understand the collection of skills required by organizations to support these
functions has been grouped under the term ―Data Sciences‖

Understand the basic concepts of big data, methodologies for analyzing structured
and unstructured data

Understand the relationship between the Data Scientist and the business needs
Course Contents:
Unit 1
Introduction to big Data, Big Data Overview with typical examples, What is Data
Science, Introduction to Big Data Analytics, Data Analytics Life cycle, Domain-specific
Life cycle.
Unit 2
Data, Data Range, Data Management, Data Mining, Data Munging, Wrangling and
Cleaning, Databases and Relational Algebra, Parallel Data Bases, Parallel Query
Processing, Mean and Standard Deviation, Estimation-Only Analyses, Use Case:
Watching Data Trends with Google Ngrams, Use Case: Estimating Move Preferences.
Unit 3
Introduction to Analytics - introduction to machine learning, Supervised learning
overview, simple nearest neighbor, decision trees/forests, regression, Unsupervised
learning: k-means, multi-dimensional scaling Graph Analytics: PageRank, community
detection, recursive queries, iterative processing, Text Analytics: latent semantic
analysis, Visualization & visual data analytics.
Unit 4
Tools and Methods deployed in Data Science, Introduction to R language, R functions
and programming, R Grphics, R and commonly used statistics, R Commander, analyzing
and exploring data with R, R studio, Advantages and disadvantages of R, R vs SAS
MapReduce/Hadoop, MapR Technologies and The Most Powerful, Elegant FREE Version of
Hadoop Window and MADlib functions.
Unit 5
Case Studies and Illustrations:
IBM BigInsights, BigSheets, and Netezza Customer Intelligence, RainStor Big Data
Analytics on Hadoop - The Industry's First Enterprise-Class Database Running Natively
on Hadoop, DataStax (Including Coverage of the Free "Community Edition" of
DataStax's Cassandra Implementation, with OpsCenter), Microsoft's Big Data Solution,
Jigsaw: Visualization for Investigative Analysis and latest state of the art examples.
References:
There is no single good book available covering all the above units. Copies of topics
from different papers and books will be distributed to the students
Course Delivery
The course will be delivered through lectures, presentations, classroom discussions,
practice exercises and practical sessions.
Course Assessment and evaluation:
Direct
Assessment
Methods
What
CIE
Indirect
Assessm
ent
Methods
Internal
Assessment
Tests
Lab test
SEE
To
Whom
Students
Semester
End
Examination
Students
Feedback
End of Course
Survey
Students
When/
Where
(Frequency
in the
course)
Thrice
(Average of
the best two
will be
computed)
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
25
Blue Books
1-5
Once
25
Data Sheets
1,2,4-5
End of Course
(Answering
5 of 10
questions)
50
Answer
scripts
1-5
End of the
course
-
Questionnaire
1-5,
Relevance of
the course
Course Outcomes
At the end of the course students should be able to:
1. Identify the differences between Big Data and Small Data
2. Design the programs to analyze big data
3. Demonstrate the analysis of big data
4. Analyze the Ontologies, Semantics, Introspection, Data Integration and
Measurement techniques of big data
5. Illustrate the stepwise approach to big data analysis and understand the legalities
and societal issues involved
Mapping Course Outcomes with Programme Outcomes:
Program Outcomes
Course Outcomes
Identify the differences
between Big Data and
Small Data
Design the programs to
analyze big data
Demonstrate
the
analysis of big data
Analyze the Ontologies,
Semantics,
Introspection,
Data
Integration
and
Measurement
techniques of big data
Illustrate the stepwise
approach to big data
analysis and understand
the
legalities
and
societal issues involved
PO
1
PO
2
PO
3
PO
4
PO
5
PO
6
PO
7
X
PO
8
PO
9
PO
10
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
11
PO
12
X
X
X
X
X
X
X
X
X
PO
13
Semester: II/III
Course Title: GPU Programming using CUDA
Credits (L:T:P) : 3:0:0
Type of Course: Lecture/Seminar
Year: 2014-2016
Course Code: MCSE E43
Core/ Elective: Elective
Total Contact Hours: 42
Prerequisites: NIL
Course Objectives
The objectives of this course are to
 Provide an understanding Graphical Processing Units and their architecture.
 Analyze the features GPUs and their functionalities
 Provide understanding of using GPUs as accelerators
 Design parallel applications using CUDA-C
 Analyze parallel algorithms implemented on heterogeneous computing environments
with sequential versions
Course Contents:
Unit 1
Introduction: GPUs as Parallel Computers, Architecture of a Model GPU, Why More
Speed or Parallelism? Parallel Programming Languages and Models, Overarching Goals.
History of GPU Computing: Evolution of Graphics Pipelines, GPU Computing.
Introduction to CUDA: Data Parallelism, CUDA Program Structure, A Matrix-Matrix
Multiplication Example, Device Memories and Data Transfer, Kernel Functions and
Threading.
Unit 2
CUDA Threads: CUDA Thread Organization, Using blockIdx and threadIdx,
Synchronization and Transparent Scalability, Thread Assignment, Thread Scheduling and
Latency Tolerance.
CUDA Memories: Importance of Memory Access Efficiency, CUDA Device Memory Types,
A Strategy for Reducing Global Memory Traffic, Memory as a limiting Factor to
Parallelism.
Performance Considerations: More on Thread Execution, Global Memory Bandwidth,
Dynamic Partitioning of SM Resources, Data Perfecting, Instruction Mix, Thread
Granularity, Measured Performance and Summary.
Unit 3
Floating Point Considerations: Floating Point Format, Representable Numbers,
Special Bit Patterns and Precision, Arithmetic Accuracy and Rounding, Algorithm
Considerations.
Parallel Programming and Computational Thinking: Goals of Parallel Programming,
Problem Decomposition, Algorithm Selection, Computational Thinking.
Unit 4
Introduction to OPENCL: Background, Data Parallelism Model, Device Architecture,
Kernel Functions, Device Management and Kernel Launch, Electrostatic Potential Map in
OpenCL.
Goals of Programming GPUs, Memory Architecture Evolution, Kernel Execution Control
Evolution, Core Performance, Programming Environment
Unit 5
Application Case Study - Advanced MRI Reconstruction: Application Background,
Iterative Reconstruction, Computing FHd, Final Evaluation.
Application Case Study – Molecular Visualization and Analysis: Application
Background, A Simple Kernel Implementation, Instruction Execution Efficiency, Memory
Coalescing, Additional Performance Comparisons, Using Multiple GPUs.
Text Book:
1. David B Kirk, Wen-mei W. Hwu, ―Programming Massively Parallel Processors – A
Hands-on Approach‖, First Edition, Elsevier and nvidia Publishers, 2010.
Reference Books:
1.
Kai Hwang and Naresh Jotwani ―Advanced Computer Architecture – Parallelism,
Scalability, and Programmability, Second Edition, TMH, 2011.
2.
Mattson, Sanders, Massingill: Patterns for Parallel Programming, Addison
Wesley,2005, ISBN0-321-22811-1.
Course Delivery
The course will be delivered through lectures, presentations, classroom discussions,
practice exercises and practical sessions. The course is basically learnt using Project
based Learning Method.
Course Assessment and evaluation:
Direct
Assessment Methods
What
Internal
Assessment
Tests
CIE
Mini Projects
SEE
Indirect
Assessment
Methods
To
Whom
Students
Semester
End
Examination
Students
Feedback
End of Course
Survey
Students
When/
Where
(Frequency
in the
course)
Thrice
(Average of
the best two
will be
computed)
Will be
carried out by
a batch of
two students.
Evaluation is
at the end of
the Semester
End of Course
(Answering
5 of 10
questions)
End of the
course
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
15
Blue Books
1-5
35
Project Report,
Code
Repository
1,2,4-5
100
Answer scripts
1-5
-
Questionnaire
1-5, Relevance
of the course
Course Outcomes
At the end of the course students should be able to:
1. Identify the advantages and need of GPUs as an emerging technology
2. Design the programs using CUDA-C/OPENCL
3. Demonstrate Heterogeneous Computing on CPUs and GPUs
4. Analyze the speedup of programs on GPUs when compared to CPUs
5. Illustrate the usage of different programming abstractions using CUDA-C on GPUs
Mapping Course Outcomes with Program Outcomes:
Program Outcomes
Course Outcomes
Identify the advantages
and need of GPUs as an
emerging technology
Design the programs
using CUDA-C/OPENCL
Demonstrate
Heterogeneous
Computing on CPUs and
GPUs
Analyze the speedup of
programs
on
GPUs
when compared to CPUs
Illustrate the usage of
different programming
abstractions
using
CUDA-C on GPUs
PO
1
PO
2
PO
3
PO
4
PO
5
PO
6
PO
7
PO
8
PO
9
PO
10
X
PO
11
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
12
PO
13
Semester: III
Course Title: Information Retrieval
Credits (L:T:P) : 3:0:0
Type of course: Lecture, Tutorial
Year: 2014-2016
Course Code: MCSE E44
Core/ Elective: Elective
Total Contact Hours: 42
Prerequisites: There are no prerequisites to this course.
Course Objectives: The objectives of this course are to
 Present the differences between data and information retrieval systems and
different classical IR models
 Present methods to evaluate the performance of information retrieval systems and
introduce different querying languages and protocols.
 Provide the concepts of query operations and the use of metadata and markup
languages.
 Present the various text operations, indexing and search techniques, and the basics
of parallel and distributed IR.
 Discuss the concepts of user interfaces for IR applications and web search
techniques.
Course Contents:
Unit 1
Introduction: Motivation, Basic concepts, Past, present, and future, The retrieval
process.
Modeling: Introduction, A taxonomy of information retrieval models, Retrieval: Adhoc
and filtering, A formal characterization of IR models, Classic information retrieval,
Alternative set theoretic models, Alternative algebraic models, Alternative probabilistic
models, Structured text retrieval models, Models for browsing.
Unit 2
Retrieval Evaluation: Introduction, Retrieval performance evaluation, Reference
collections.
Query Languages: Introduction, keyword-based querying, Pattern matching, Structural
queries, Query protocols.
Unit 3
Query Operations: Introduction, User relevance feedback, Automatic local analysis,
Automatic global analysis.
Text and Multimedia Languages and Properties: Introduction, Metadata, Text,
Markup languages, Multimedia.
Unit 4
Text Operations: Introduction, Document preprocessing, Document clustering, Text
compression, Comparing text compression techniques.
Indexing and Searching: Introduction; Inverted Files; Other indices for text; Boolean
queries; Sequential searching; Pattern matching; Structural queries; Compression.
Parallel and Distributed IR: Introduction, Parallel IR, Distributed IR.
Unit 5
User Interfaces and Visualization: Introduction, Human-Computer interaction, The
information access process, Starting pints, Query specification, Context, Using relevance
judgments, Interface support for the search process.
Searching the Web: Introduction, Challenges, Characterizing the web, Search engines,
Browsing, Metasearchers, Finding the needle in the haystack, Searching using
hyperlinks.
Text Book:
1. Ricardo Baeza-Yates, Berthier Ribeiro-Neto: Modern Information Retrieval, 1st
edition, Pearson, 2011.
Reference Books:
1. David A. Grossman, Ophir Frieder: Information Retrieval Algorithms and
Heuristics, 2nd Edition, Springer, 2009.
2. William B. Frakes, Ricardo Baeza-Yates (Editors): Information Retrieval Data
Structures and Algorithms, 1st edition, Prentice Hall PTR, 2009.
Course Delivery: The course will be delivered through lectures, presentations,
classroom discussions, and practical implementations. Questions for CIE and SEE are
designed in accordance with the Bloom’s taxonomy.
Course Assessment and Evaluation Scheme:
Indirect
Assessment
Methods
Direct Assessment
Methods
What
To
Whom
Internal
Assessment Tests
CIE
Surprise Quiz/
Assignment/Seminar
SEE
Students
Standard
Examination
When/
Where
(Frequency in
the course)
Thrice(Average
of the best two
will be
computed)
Max
Marks
Evidence
Collected
Contribution
to Course
Outcomes
30
Blue Books
1,2,3,4 &5
Once each
20
Quiz Sheets/
report/
presentation
Recollection,
analytical and
communication
Skills
End of Course
(Answering
5 of 10
questions)
100
Answer
scripts
1,2,3,4 &5
Questionnaire
4, 5 &
Effectiveness
of Delivery of
instructions &
Assessment
Methods
Students
Feedback
End of Course
Survey
Students
End of the
course
-
Course Outcomes :
At the end of the course the students should be able to:
1. Distinguish between data and information retrieval systems and explain different
classical IR models
2. Evaluate the performance of information retrieval systems and use different
querying languages and protocols.
3. Perform query operations and recognize the use of metadata and markup
languages.
4. Explain various text operations, indexing and search techniques, and the basics
of parallel and distributed IR.
5. Discuss the concepts of user interfaces for IR applications and web search
techniques.
Program Outcomes
Course Outcomes
Distinguish between data and
information retrieval systems
and explain different classical
IR models
Evaluate the performance of
information retrieval systems
and use different querying
languages and protocols
Perform query operations and
recognize the use of metadata
and markup languages
Explain various text operations,
indexing
and
search
techniques, and the basics of
parallel and distributed IR
Discuss the concepts of user
interfaces for IR applications
and web search techniques.
PO
1
PO
2
PO
3
PO
4
PO
5
PO
6
PO
7
PO
8
PO
9
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
PO
10
PO
11
PO
12
X
X
X
X
X
X
X
X
PO
13
MCSE E45: Topics in Software Testing (3:0:0)
Course Objectives:
This course will help students to achieve the following objectives: Select, with
justification, an appropriate set of tools to support the development of a range of
software products, Analyze and evaluate a set of tools in a given area of software
development, Demonstrate the capability to use a range of software tools in support of
the development of a software product of medium size, Identify the principal issues
associated with software evolution and explain their impact on the software life cycle,
Discuss the challenges of maintaining legacy systems and the need for reverse
engineering, Outline the process of regression testing and its role in release
management, Estimate the impact of a change request to an existing product of medium
size, Develop a plan for re-engineering a medium-sized product in response to a change
request, Discuss the advantages and disadvantages of software reuse. Exploit
opportunities for software reuse in a given context and Identify weaknesses in a given
simple design, and highlight how they can be removed through refactoring.
Topics:
Basics of software testing and examples, decision table-based testing, data flow testing,
levels of testing, integration, system, interaction, OO, class, OO integration, GUI, OO
system, exploratory, model-based testing and test-driven development.
Course Outcomes:
This course uses assigned readings, lectures, and homework to enable the students to:
design and identify the suitable capabilities to use a range of software tools in support of
the development of a software product of medium size, identify the principal issues
associated with software evolution and analyze it, explain the impact on the software life
cycle by different testing tools, challenges of maintaining legacy systems and the need
for reverse engineering and outline the process of regression testing and its role in
release management.
Detailed Syllabus:
Unit 1
Basics of Software Testing and Examples: Basic definitions, Test cases, Insights
from a Venn diagram, Identifying test cases, Error and fault taxonomies, Levels of
testing. Examples: Generalized pseudocode, The triangle problem, The NextDate
function, The commission problem, The SATM (Simple Automatic Teller Machine)
problem.
Decision Table-Based Testing: Decision tables, Test cases for the triangle problem,
Test cases for the NextDate function, Test cases for the commission problem, Guidelines
and observations.
Data Flow Testing: Definition-Use testing, Slice-based testing, Guidelines and
observations.
Unit 2
Levels of Testing: Traditional view of testing levels, Alternative life-cycle models, The
SATM system, Separating integration and system testing.
Integration Testing: A closer look at the SATM system, Decomposition-based, call
graph-based, Path-based integrations, Case study.
System Testing: Threads, Basic concepts for requirements specification, Finding
threads, Structural strategies and functional strategies for thread testing, SATM test
threads, System testing guidelines, ASF (Atomic System Functions) testing example.
Unit 3
Interaction Testing: Context of interaction, A taxonomy of interactions, Interaction,
composition, and determinism, Client/Server Testing.
Issues in Object-Oriented Testing: Units for object-oriented testing, Implications of
composition and encapsulation, inheritance, and polymorphism, Levels of objectoriented testing, GUI testing, Dataflow testing for object-oriented software, Examples.
Class Testing: Methods as units, Classes as units.
Unit 4
Object-Oriented Integration Testing: UML support for integration testing, MM-paths
for object-oriented software, A framework for object-oriented dataflow integration
testing.
GUI Testing: The currency conversion program, Unit testing, Integration Testing and
System testing for the currency conversion program.
Object-Oriented System Testing: Currency converter UML description, UML-based
system testing, Statechart-based system testing.
Exploratory Testing: The context-driven school, Exploring exploratory testing,
Exploring a familiar example, Exploratory and context-driven testing observations.
Unit 5
Model-Based Testing: Testing based on models, Appropriate models, Use case-based
testing, Commercial tool support for model-based testing.
Test-Driven Development: Test-then-code cycles, Automated test execution, Java and
JUnit example, Remaining questions, Pros, cons, and open questions of TDD,
Retrospective on MDD versus TDD.
A Closer Look at All Pairs Testing: The all-pairs technique, A closer look at NIST
study, Appropriate applications for all pairs testing, Recommendations for all pairs
testing.
Software Testing Excellence: Craftsmanship, Best practice of software testing, Top 10
best practices for software testing excellence, Mapping best practices to diverse
projects.
Text Book:
1. Paul C. Jorgensen: Software Testing, A Craftsman’s Approach, 3rd Edition,
Auerbach Publications, 2012.
Reference Books:
1. Aditya P Mathur: Foundations of Software Testing, Pearson, 2008.
2. Mauro Pezze, Michal Young: Software Testing and Analysis – Process, Principles
and Techniques, 1st edition, John Wiley & Sons, 2011.
3. Srinivasan Desikan, Gopalaswamy Ramesh: Software testing Principles and
Practices, 1st Edition, Pearson, 2012.
4. Brian Marrick: The Craft of Software Testing, 1st edition, Pearson, 2012.
M. S. Ramaiah Institute of Technology
(Autonomous Institute, Affiliated to VTU)
BANGALORE-560054
Department of Computer Science & Engineering
Guidelines for M.Tech (CSE) Project Phase I and II
Course Details
Subject Code /Name: MCSE 312 / Project Phase 1
Subject Code/ Name: MCSE 401/Project Phase-2
Max CIE marks: 100
Credits: 10
Credits: 23
Max SEE marks: 100

Project can be done in-house or externally in any reputed industry/institution.

Students are instructed to meet their Guides at the department every week.
Component
Timeline
Assessment
Project phase-I
End of 3rd semester-12th week
Interim Progress Assessment
Project phase-II
Mid of 4th semester -8th week
Design Development and
Solution
End of 4th semester -13th week
Written Report
Evaluation-1
Project phase-II
Evaluation-2
Final Presentation
Guidelines for External Projects

The company/organization has to give an acceptance letter permitting the
students to carry out their project work in their premises prior to the
conduction (Third Semester Project Phase I).

Students are free to carry out their project work in the Company premises, but
should meet their guides at the department every week for updates.

Demonstration of the project is a must at the College during the final Viva
Voce.

A project guide (external guide) shall be allotted by the company/organization
for supervising the progress of the project work (Third Semester Project Phase
I).

An internal guide will be allotted by the department for every external project
also. In consultation with the external guide, the internal guide must be
permitted to oversee the progress of the project work at the company premises
at suitable times.

Students carrying out external projects will have to submit synopsis /
functional specification of the project work duly signed by the external guide
before the deadline (Third Semester Project Phase I).

The project guides are responsible for approving the progress of their respective
wards.

In case the project guide requires a committee to approve their status of the work,
he/she can convey the same to the project coordinator at regular intervals. An expert
committee will be then formed to review the work on request from the project guide.
The committee will finalize the work by end of the semester.

Students are required to maintain a project diary wherein all the student-guide
meetings must be recorded.

The Project Phase II will be reviewed in two stages.
a. Project Phase II- Evaluation-I: to be done after six (6) weeks from the start of
the semester. The evaluation should be done by the guide and two coexaminers. The students are required to submit the work on the System
Design, Detailed Design and further course of action of their work.
b. Project Phase II- Evaluation-II: The same team that conducted the EvaluationI must do the Evaluation- II after twelve (12) weeks from the start of the
semester. Students must complete the implementation and testing by this
time. They are required to demonstrate the implementation, testing & results.
All projects must be demonstrated at the CSE Department.
c. The faculty should also visit the Industry (in case it is an external project) to
interact with the mentors so as to monitor the progress of their respective
students.
d. A draft version of the complete project report must also be submitted at the
end of twelve (12) weeks.

The CIE marks will be cumulative sum of the two evaluations done (40:60) for a total
of 100 marks.

The student should prepare a consolidated report in IEEE Format and should submit it
for possible publication in National/International Conferences/Journals before the
submission of the Thesis

A final project viva-voce will be conducted at the end of the semester (SEE) with an
internal examiner and an external examiner.
Typical Project Activities and Timelines
The project activities include
1. Deciding the project subject area (Third Semester Project Phase I).
2. Establishing relevance and importance of the project (Third Semester Project
Phase I).
3. Identifying requirements (Third Semester Project Phase I).
4. Feasibility study and freezing of project scope/objectives (Third Semester
Project Phase I).
5. General design inputs: requirements analysis (Third Semester Project Phase I).
6. System and subsystem level design: design(Fourth Semester Project Phase II)
7. Convert all designs into programs: implementation(Fourth Semester Project Phase II)
8. Performance evaluation at system/subsystem level testing (Fourth Semester Project
Phase II)
9. Documentation of all above activities into a project report (Third Semester Project
Phase I & Fourth Semester Project Phase II)
Suggested Timelines for Activities and Deliverables
1. Start time + 6 weeks
Write very clearly scope/objective set for the project. The objectives must reflect as to what
exactly is proposed to implement. Freeze the title and scope/ objectives and this will not
change under normal situation.
System design: Understand the overall system functioning, identify and draw a system level
block schematic identifying all identified subsystems and their input/output need. Prepare a
list of hardware systems, computing and network environment. Similarly identify the
software – operating systems, application software, case tools, simulators, databases, etc.
Highlight what is already available and what will be newly created or required for the
project.
Deliverable: System design document
2. Start time + 8 weeks
Detailed Design: Design from the conceptual level block schematic, a detailed architectural
layout, indicate every subsystem and within that identify input/output and design for every
small entity. Draw functional block schematics, data flow diagrams for every small entity
and subsystem.
Formulate a test plan: list the test data at the inputs, type of tests to be performed during
development and making of subsystems, and tests required during runtime or execution.
Deliverable: Detailed design document
3. Start time + 10 weeks
Write the algorithms, the pseudo code for every function call, the subroutines and the
recursions. Implement the design; execute the programs step by step for each module. Debug,
evaluate the performance and validate the design. Integrate all modules/subsystems to realize
the over system.
Perform all system level tests, evaluate the results and compare the project scope/objects and
the requirements.
Deliverable: Implementation and testing document, demo of working code
4. Start time + 13 weeks
Complete all documentation and make the project report ready for submission.
Deliverable: Complete project report
The Students need to also consolidate their work into a IEEE and publish the same in a
reputed Journal or an International Conference.
At the end of the 13th week, The PG students can attend the Best Project Selection
Process which will be conducted at the department of Computer Science and
Engineering, MSRIT.
The Criteria for the same would be Quality of the Project, Its relevance to the present
technology, Research contribution, relevant papers published, etc.
One Project will be selected from the Batch as the Best Project.
GUIDELINES FOR THE PREPARATION OF PG IV Semester
(Project Phase- II) PROJECT REPORTS
1. Project reports should be typed neatly only on one side of the paper with 1.5 or double
line spacing on a A4 size paper. The margins should be: Left - 1.25", Right - 1", Top
and Bottom -0.75".
2. The total number of reports to be prepared is 5 (4+1)
 Four (4) Copies to be submitted to the department
 One (1) copy to the student.
3. Before taking the final printout, the approval of the concerned guide(s) is mandatory and
suggested corrections, if any, must be incorporated.
4. The organization of the report should be as follows

Inner title page

Certificate from the guide and department

Declaration by candidate

Abstract or Synopsis

Acknowledgments

Table of Contents
 List of table & figures (optional)
All the above pages Starting from abstract must be numbered in roman ( i, ii,
iii, iv, v, …)
 Chapters ( page numbers in Arabic i.e. 1, 2, 3)
o Main body of the report divided appropriately into chapters, sections and
subsections.

5.
References or bibliography
Numbering : The chapters, sections and subsections may be numbered in the decimal
form for e.g. Chapter 2, sections as 2.1, 2.2 etc., and subsections as 2.2.3, 2.5.1 etc.
6.
Fonts sizes:
a. The chapter number must be left or right justified (font size 16).
b. Followed by the title of chapter centered (font size 18),
c. Section/subsection numbers along with their headings must be left justified
with
i. Section number and its heading in font size 16
ii. Subsection and its heading in font size 14.
iii. The body or the text of the report should have font size 12.
7. The figures and tables must be numbered chapter wise for e.g.: Fig. 2.1 Block diagram
of a serial binary adder, Table 3.1 Primitive flow table, etc. Figure captions must be
placed below the figure and centred. Table captions must be above the table and centred.
8. Reference or Bibliography: The references should be numbered serially in the order of
their occurrence in the text and their numbers should be indicated within square brackets
for e.g. [3]. The section on references should list them in serial order in the following
format.
For textbooks –
[1] A.V. Oppenheim and R.W. Schafer, Digital Signal Processing, Englewood, N.J.,
Prentice Hall, 3 Edition, 1975.
For papers –
[2] Devid, Insulation design to combat pollution problem, Proc of IEEE, PAS, Vol 71,
Aug 1981, pp 1901-1907.
Bibliography need not be numbered and need not be cited.
9.
Only SI units are to be used in the report. Important equations must be numbered in
decimal form for e.g.
V = IR
..........
(3.2)
All equation numbers should be right justified
10. The project report should be clearly written and include descriptions of work carried out
by others only to the minimum extent necessary. Verbatim reproduction of material
available elsewhere should be strictly avoided. If short excerpts from published work
are desired to be included, they should be within quotation marks and appropriately
referenced.
11. Proper attention is to be paid not only to the technical contents but also to the
organization and clarity of the report. Due care should be taken to avoid spelling and
typing errors.
The student should note that report-write-up forms the important
component in the overall evaluation of the project.
12. The colour of the cover page for Computer Science PG projects is CREAM.
Download