Upload
hoanglien
View
221
Download
2
Embed Size (px)
Citation preview
M.S. RAMAIAH INSTITUTE OF TECHNOLOGY
BANGALORE
(Autonomous Institute, Affiliated to VTU)
SYLLABUS
(For the Academic year 2016 – 2017)
Information Science and Engineering
V and VI Semester B.E.
History of the Institute:
M. S. Ramaiah Institute of Technology was started in 1962 by the late Dr. M.S. Ramaiah, our
Founder Chairman who was a renowned visionary, philanthropist, and a pioneer in creating
several landmark infrastructure projects in India. Noticing the shortage of talented engineering
professionals required to build a modern India, Dr. M.S. Ramaiah envisioned MSRIT as an
institute of excellence imparting quality and affordable education. Part of Gokula Education
Foundation, MSRIT has grown over the years with significant contributions from various
professionals in different capacities, ably led by Dr. M.S. Ramaiah himself, whose personal
commitment has seen the institution through its formative years. Today, MSRIT stands tall as
one of India’s finest names in Engineering Education and has produced around 35,000
engineering professionals who occupy responsible positions across the globe.
About the Department:
Department of Information Science and Engineering (ISE) was established in the year 1992
with an objective of producing high-quality professionals to meet the demands of the emerging
field of Information Science and Engineering. Department started with UG programme with an
annual sanctioned intake of 30 students and the intake was enhanced to 60 seats in the year
1999, to 90 seats in the year 2001 and then to 120 seats in the year 2008. Department started
M.Tech in Software Engineering in the year 2004. Department is recognized as R&D center by
VTU in the year 2012. Department has well equipped laboratories. Some of the laboratories
have also been set up in collaboration with industries such as Intel, Apple, Honeywell, EMC2,
Microsoft and IBM. Department has highly qualified and motivated faculty members. All
faculty are involved in research and technical paper publications in reputed technical journals,
conferences across the world. Department has been accredited by the NBA in 2001, 2004, 2010
and 2015 (Tier-I). The department is successfully conducting seminars & workshops for
students and academicians in the emerging technologies.
Faculty List
Sl.No. Name of Faculty Qualification Designation
1 Dr. Vijaya Kumar B P M.Tech (IITR), Ph.D (IISc.) Professor & Head
2 Dr. Lingaraju G M Ph.D Professor
3 Dr.Mydhili K Nair
M.Tech, Ph.D (Anna
University) Professor
4 Rajaram M Gowda MTech. (Ph.D) Associate Professor
5 Shashidhara H S M.Tech. (Ph.D) Associate Professor
6 George Philip C M.Tech. Associate Professor
7 Dr. Megha.P.Arakeri M.Tech, Ph.D (NITK) Associate Professor
8 Dr. Siddesh G M M.Tech., Ph.D Associate Professor
9 T Tamilarasi M.E (Ph.D) Assistant Professor
10 Savita K Shetty M.Tech. Assistant Professor
11 Myna A N M.Sc(Engg) , (Ph.D) Assistant Professor
12 Deepthi K M.Tech. Assistant Professor
13 LincyMeera Mathews M.Tech (Ph.D) Assistant Professor
14 Dr. P M Krishna Raj M.Sc(Engg), Ph.D Assistant Professor
15 Rajeshwari S B M.Tech. Assistant Professor
16 Prathima M N M.E. Assistant Professor
17 Pushpalatha M N M.Tech (Ph.D) Assistant Professor
18 Mohan Kumar S M.Tech (Ph.D) Assistant Professor
19 Sumana M M.Tech (Ph.D) Assistant Professor
20 Prashanth Kambli
M.Sc, (MSc(Engg.) by
Research) Assistant Professor
21 Naresh E M.Tech, (Ph.D) Assistant Professor
22 Jagadeesh Sai D M.Tech. Assistant Professor
23 Mani Sekhar S R M.Tech.(Ph.D) Assistant Professor
24 Suresh Kumar K R M.Tech.(Ph.D) Assistant Professor
25 Sunitha R S M.Tech. Assistant Professor
26 Sandeep B L M.Tech.(Ph.D) Assistant Professor
27 Dr. Dayananda P M.Tech, Ph.D Assistant Professor
28 Koushik S M.Tech.(Ph.D) Assistant Professor
Vision and Mission of the Institute and the Department
Vision of MSRIT
To evolve into an autonomous institution of international standing for imparting quality
technical education
Mission of the Institute
MSRIT shall deliver global quality technical education by nurturing a conducive learning
environment for a better tomorrow through continuous improvement and customization
Quality Policy
“We at M. S. Ramaiah Institute of Technology, Bangalore strive to deliver comprehensive,
continually enhanced, global quality technical and management education through an
established Quality Management system Complemented by the Synergistic interaction of the
stake holders concerned”.
Vision of the Department
To evolve as an outstanding education and research center of Information Technology to create
high quality Engineering Professionals for the betterment of Society
Mission of the Department
To provide a conducive environment that offers well balanced Information Technology
education and research
To provide training and practical experience in fundamentals and emerging technologies
To nurture creativity for overall personality development
Process of deriving the vision and mission of the department
Process of deriving the vision and mission of the department is shown in Figure below:
Vision &
Mission of
the
Departmen
t
Manageme
nt
Institute Vision & Mission
Parents
Alumni
Students Departme
nt Faculty
Industry
Periodic
Review
Programme Educational Objectives (PEOs) of the programme
PEO1: Become competent Information Technology professionals with continuous progress in
career or learning
PEO2: Design and develop computing systems using modern tools and technologies
PEO3: Function effectively as professionals in a team environment
Process of Deriving Programme Educational Objectives
Academic Council &
Governing Council
Accept & Approve
PEOs
Institute Vision &
Mission
Department Vision &
Mission
Student
s
PG faculty
Parents Alumni Industry
Collect data
(Department Committee)
Deliberate, Analyze and
summarize the data
(Board of Studies)
Data Collection
Process
Process of deriving the Programme Outcomes
POsdescribe what students are expected to know or be able to do by the time of graduation
from the program. They are derived by using institute Vision and Mission, Department Vision
and Mission, NBA Graduate Attributes, Professional bodies such as ACM, IEEE, CSAB,
Regulatory bodies such as UGC, AICTE, VTU as well as stakeholders such as faculty, alumni
and industry as shown in the figure below.
Process Employed to Define the POs.
PO’s of the program offered
a Apply the knowledge of mathematics, science, engineering fundamentals and
computing to solve information science and engineering related problems.
b Identify, specify, formulate and analyze the computing problems using engineering
knowledge reaching substantiated conclusions.
c Design and develop solutions for computing problems considering the
environmental and societal needs.
d Design and conduct experiments, analyze the data and interpret the information and
provide valid conclusion.
e Develop and apply appropriate techniques, resources and modern software tools to
solve real world information technology related problems within constraints
applicable.
f Apply reasoning along with the contextual knowledge to assess and provide
computing solutions for societal issues.
g Understand the impact of the information technology solutions in environmental
context for sustainable development.
h Ability to acquire, apply and commit to professional ethics.
Review
Input Input Review
i Work individually and as a team member and/or as a leader in multidisciplinary
environment.
j Communicate effectively with respect to documentation and presentation with
engineering community and society.
k Apply the knowledge of the information science and engineering and management
principles for cost effective management of projects in multidisciplinary areas.
l Enhance the knowledge and upgrade the skills independently in the ever changing
information technology environment.
Mapping of PEO’s and PO’s
The correlation between the Programme outcomes and Program Educational objectives are
mapped in the Table shown below:
Correlation between the POs and the PEOs
PEO
Programme Outcomes
PO
a
PO
b
PO
c
PO
d
PO
e
PO
f
PO
g
PO
h
PO
i
PO
j
PO
k
PO
l
Become competent
Information Technology
professionals with continuous
progress in career or learning
X X X X X X X X X
Design and develop computing
systems using modern tools
and technologies
X X X X X X X
Function effectively as
professionals in a team
environment
X X X X X
Curriculum breakdown structure:
The curriculum of Information Science and Engineeeringprogramme is so structured to include
all the courses that together satisfy the requirements of the programme specific criteria
prescribed by the CSAB(Comptuter Science Accreditation Board), IEEE Computer
Society/Association for Computing Machinery (ACM). The Course code, Course title, the
number of contact hours and the number of credits for each course are given in the following
table. The courses are grouped in line with the major components of the curriculum namely: (i)
Mathematics and Basic sciences, (ii) Basic Engineering courses, (iii) Humanities and Social
Sciences, (iv)Professional core courses, (v) Electives and (vi) Industry exposure/internship.
Breakup of Credits for BE Degree Curriculum. ( I to VIII Semester)
Semester
HSS BS ES PCS Profess
ional
Electiv
es
Other Electives Project /
Seminar/
Internship
Total
Credits
I & II 06 20 24
50
III 3 4 18 0 0 0 25
IV 4 21 0 0 0 25
V 2 0 19 4 0 0 25
VI 0 15 8 0 2 25
VII 0 14 4 3 4 25
VIII 1 0 4 20 25
Total 12 28 24 87 20 3 26 200
HSS Humanities and Social Sciences 12
BS Basic Sciences (Mathematics, Physics, Chemistry) 28
ES Engineering Sciences (Materials, Workshop, Drawing, Computers). 24
PCS Professional Core Subjects 87
Prof. Ele Professional Electives, relevant to the chosen specialization branch 20
Other Ele Elective Subjects, from other technical and / or emerging subject Areas. 03
Project /
Seminar
Project Work, Seminar and / or Internship in industry
or elsewhere.
26
Board of Studies
S.
No. Category Name of the Person with Official Address Status
1 Head of the Department
Concerned
Dr. Vijaya Kumar B P
Head of the Department
Information Science &Engg.,
M.S. Ramaiah Institute of Technology,
MSRIT Post,
Bangalore – 560 054.
Chair Person
2
Faculty members
nominated by the
Academic Council
Shashidhara H S
Associate Professor
Dept. of Information Science & Engineering,
M.S. Ramaiah Institute of Technology,
MSR Post, Bangalore – 560 054.
Member
Dr. Megha P Arakeri
Associate Professor
Dept. of Information Science & Engineering,
M.S. Ramaiah Institute of Technology,
MSR Post, Bangalore – 560 054.
Member
Dr. Siddesh G M
Associate Professor,
Dept. of Information Science & Engineering,
M.S. Ramaiah Institute of Technology,
MSR Post, Bangalore – 560 054.
Member
Dr. P. M Krishna Raj
Asst. Professor
Dept. of Information Science & Engineering,
M.S. Ramaiah Institute of Technology,
MSR Post, Bangalore – 560 054.
Member
3
Experts in the subject
from outside the
College, to be
nominated by the
Academic Council
Dr. Satish Babu
Professor & Head,
Dept. of Computer Science & Engineering
SiddagangaInstitute of Technology
NH 206,B.H.Road, Tumkur,
Karnataka 572103.
Autonomous
Institute
Member
Dr. Dilip Kumar
Professor & Head
University Visvesvaraya College of
Engineering (UVCE),
Government
University
Member
K R Circle, DrAmbedkarVeedhi, Bangalore
Karnataka 560001
Dr.Y.N. SRIKANT
Professor, Department of Computer Science
and Automation,
Indian Institute of Science
Bangalore 560 012.
VTU Member
from IISc
Madhu N. Belur
Department of Electrical Engineering
Indian Institute of Technology Bombay
Powai, Mumbai 400 076
India
Special
Invitee
Dr. Chetan Kumar S
Manager Software Development
CISCO System
Cessna Business Park,
Kadubeesanahalli Village,
VarthurHobli, SarjapurMarathalli,
Bangalore – 560 087
Expert
Member from
Industry
Mr.Niranjan Salimath
Beaglesloft , 37/5, Ulsoor Rd,
YellappaChetty Layout, Sivanchetti Gardens,
Bengaluru, Karnataka 560042
Alumni
Member
11 of 69
M.S. RAMAIAH INSTITUTE OF TECHNOLOGY, BANGALORE – 54
(Autonomous Institute, Affiliated to VTU)
SCHEME OF TEACHING FOR THE ACADEMIC YEAR 2016-2017
V SEMESTER B.E. INFORMATION SCIENCE AND ENGINEERING
Sl.No Subject Code Subject
Credits*
L T P Total
1 IS531 Computer Networks 4 0 0 04
2 IS531L Computer Networks Lab 0 0 1 01
3 IS532 Operation Research 3 1 0 04
4 IS523 Intellectual Property Rights 2 0 0 02
5 IS534 Database Management Systems 4 0 0 04
6 IS534L Database Management Systems Lab 0 0 1 01
7 IS535 Object Oriented Analysis and Design Patterns 4 0 0 04
8 IS535L Object Oriented Analysis and Design Patterns Lab 0 0 1 01
9 IS52AX Elective A 4 0 0 04
Total 21 1 3 25
*L:Lecture T:Tutorial P:Practical
Elective A
IS52A1 Digital Image Processing
IS52A4 Natural Language Processing
IS52A5 Information Systems
12 of 69
M.S. RAMAIAH INSTITUTE OF TECHNOLOGY, BANGALORE – 54
(Autonomous Institute, Affiliated to VTU)
SCHEME OF TEACHING FOR THE ACADEMIC YEAR 2016-2017
VI SEMESTER B.E. INFORMATION SCIENCE AND ENGINEERING
Sl.No Subject Code Subject Credits*
L T P Total
1 IS631 System Software 4 0 0 04
2 IS631L System Software Lab 0 0 1 01
3 IS632 Operating System and Unix 4 0 0 04
4 IS632L Operating System and Unix Lab 0 0 1 01
5 IS633L Project Based Learning 0 1 1 02
6 IS624 Java and J2EE 4 0 0 04
7 IS624L Java and J2EE Lab 0 0 1 01
8 IS62BX Elective B 4 0 0 04
9 IS62CX Elective C 4 0 0 04
Total 20 1 4 25
*L:Lecture T:Tutorial P:Practical
Elective B Elective C
IS62B1 File Structures IS62C3 Bioinformatics
IS62B2 Distributed Storage Technologies IS62C4 Software Testing
IS62B3 Compiler Design IS62C5 Computer Graphics
13 of 69
COMPUTER NETWORKS
Course code: IS531 Credits: 4:0:0
Prerequisites: IS432 – Data Communications Contact Hours: 56
Course coordinator(s): S R Mani Sekhar
Course objectives:
Make the students appreciate the need and techniques for transitioning from IPV4 to
IPV6.
Give conceptual understanding of Address Mapping, Error Reporting & unicast
routing.
Introduce the students to different transport layer protocols and multicast routing.
Make the students analyze different techniques to improve QOS and introduce them
to the concept of domain name system.
Give conceptual understanding of the working of various application layer services
like Remote login, E-mail, FTP, SNMP and simple network management protocol.
Course Contents:
Unit–I
Network Layer: Logical addressing, IPV4 addresses, IPV6 addresses. Network layer:
Internet protocol-IPV4, IPV6, Transition from IPV4 to IPV6.
Unit–II
Network layer: Address mapping, Error reporting & Multicasting-Addressmapping,
ICMP,IGMP, Network layer: Delivery, Forwarding, & Routing - Forwarding, Unicast routing
protocols.
Unit–III
Multicast routing protocols, Transport Layer: Process-to-Process delivery: UDP, TCP, & SCTP
- Process-to-Process delivery, User Datagram Protocol, Transmission Control Protocol,
SCTP-services, features.
Unit–IV
Congestion control & QOS - Data traffic, Congestion, Congestion control, Two examples,
QOS, Techniques to improve QOS, Application Layer: Domain Name System -Namespace,
Domain name space, Distribution of Name space, DNS in internet, Resolution.
Case studies: QoS requirements in portable devices.
14 of 69
Unit–V
Remote logging, Electronic mail, & File transfer - Remote logging, E-mail, File transfer
(FTP), Network Management: SNMP - Network management system, Simple Network
Management Protocol.
Case studies: Mobile networks applications.
Text Book
1. Behrouz A. Forouzan, Data Communications and Networking, Fourth Edition, Tata
McGraw-Hill, 2006.
Reference Books
1. Alberto Leon-Garcia and IndraWidjaja, Communication Networks –Fundamental
Concepts and Key architectures, Second Edition, Tata McGraw-Hill, 2004.
2. William Stallings, Data and Computer Communication, Eight Edition, Pearson Education,
2007.
3. Larry L. Peterson and Bruce S. David, Computer Networks – A Systems Approach,
Fourth Edition, Elsevier, 2007.
Course outcomes:
Students will be able to
1. Identify and solve the problems associated with transition from IPV4 to IPV6.(PO-a,b)
2. Use different protocols to achieve Address mapping, Error reporting & unicast
routing.(PO-a,b,c)
3. Illustrate multicast routing and distinguish between different transport layer
protocols.(PO-a,c)
4. Analyze different techniques to improve QoS and illustrate domain namespace
resolution.(PO-b,c)
5. Describe the working of various application layer services like Remote login, E-mail,
FTP, SNMP and simple network management protocol.(PO-c)
15 of 69
COMPUTER NETWORKS LAB
Course Code :IS531L Credits : 0:0:1
Prerequisites: IS432 – Data Communications Contact Hours : 28
Course coordinator(s): Sandeep B L
Course objectives:
1. Design program for file transfer using the concepts of Socket programming.
2. Build programs to implement congestion control techniques.
3. Construct programs to build optimal routing table.
4. Build programs to implement error detection.
5. Design sample networks with different topologies and configurations
6. Analyze the network behavior with respect to different parameters and
conditions.
Course Contents:
Part A: Implement the following using C/C++:
1. Using TCP/IP sockets, write a client-server program to make client send the file
name and the server to send back the contents of the requested file name
“sample.txt” with the following contents:”Hello we are at Computer Networks Lab”.
Display suitable error message in case the file is not present in the server.
2. Write a program to archive Traffic management at Flow level by implementing Leaky
Bucket Algorithm.
3. Given a graph,each node A knows the shortest path to node Z and node A can
determine its shortest path to Z by calculating the minimum cost. Now when packet
flows through a path it incurs some cost to the network, find shortest paths from src
to all nodes in the given graph using Bellman Ford Algorithm. The graph may contain
negative weight edges.
4. Given a graph find shortest paths from source to all nodes in the graph using
Dijkstra’s shortest path algorithm.
5. Write a program for implementing the error detection technique for data transfer in
unreliable network code using CRC (16-bits) Technique.
6. Write a program to implement internet checksum for error correction and detection.
7. Packets from different flows arrive at a switch or router for processing. A good
scheduling technique treats the different flows in a fair and appropriate manner.
Implement priority queuing as a technique to improve Quality of Service.
16 of 69
Part B: Simulation Using NS-2 and analysis using X-graph
1. Simulate three nodes point-to-point networks with duplex links between them. Set
the queue size and vary the bandwidth and find the number of packets dropped
2. Simulate the different types of internet traffic such as FTP and TELNET over network
and analyze the throughput
3. Simulate a four-node point-to-point network, and connect the links as follows: n0-
>n2, n1->n2 and n2->n3. Apply TCP agent changing the parameters and determine
the number of packets sent/received by TCP/UDP
4. Simulate the transmission of ping messages over a network topology consisting of 6
nodes and find the number of packets dropped due to congestion.
5. Simulate an Ethernet LAN using n nodes and set multiple traffic nodes and determine
collision across different nodes.
6. Simulate an Ethernet LAN using n nodes (6-10), change error rate and data rate and
compare throughput.
Text Books:
2. Behrouz A. Forouzan, Data Communications and Networking, Fourth Edition, Tata
McGraw-Hill, 2006.
Course Outcomes:
The students will be able to-
CO1:Design and implement the functionalities of various layers of the OSI model (PO – c)
CO2: Simulate and analyze the network behavior against various parameters using NS2.
(PO – e)
17 of 69
OPERATIONS RESEARCH
Course code: IS532 Credits: 3:1:0
Prerequisites: NIL Contanct Hours: 56
Course coordinator(s): Rajaram M Gowda
Course objectives:
To introduce the concepts of Operations Research and its applications
To formulate a linear programming model given the problem
To provide the knowledge of the algorithms of Operations Research
To apply OR techniques and determine optimal solutions to real-world problems
To make managerial decisions given the constraints
Course Contents:
Unit–I
What is Operations Research (OR)? OR Models, Solving the OR Model, Phases of an OR
Study; Modeling with Linear Programming (LP), Two-variable LP Model, Graphical LP
solution, Solution of a Maximization/Minimization Model; Computer solution with Excel
Sover; The Linear Programming Applications, Investment, Production planning and
inventory control.
Unit–II
The Simplex Method: LP Model in Equation Form, Transition from Graphical to Algebraic
Solution; The Simplex Method; Special cases in the Simplex Method, Degeneracy,
Alternative optima, Unbounded solutions, Non-existing solutions; Sensitivity Analysis (SA);
Graphical SA, Artificial Variable Techniques: Two Phase Method, Big-M method; Advanced
LP: Revised Simplex method.
Unit–III
Duality and Game Theory: Definition of Dual problem; Primal-Dual Relationships;
Introduction of Game Theory, Characteristics of Games Theory; Minimax (Maximin) Criterion
and Optimal Strategy; Saddle Point, Optimal Strategies and the value of game; Solution of
Games with Saddle Point(s); Rectangular Games without Saddle Point; Arithmetic Method
for (2x2) Games, Gambit tool for Game theory.
Unit–IV
Project Management by PERT-CPM: Introduction, Applications of PERT/CPM Techniques,
Basic Steps in PERT/CPM Techniques; Network Diagram Representation, Rules for Drawing
Network Diagram, Labeling Fulkerson’s ‘I-J’ Rule; Time Estimates and Critical Path in
Network Analysis; Optimum Duration and Minimum Duration Cost; Project Evaluation and
Review Technique, Updating, Resource Allocation; Uses of PERT/CPM for Management,
Application Areas of PERT/CPM Techniques.
18 of 69
Unit–V
Transportation and Assignment Problems: Mathematical Formulation of transportation
problem (TP); Matrix Form of TP; Feasible Solution, Basic Feasible Solution and Optimum
Solution; Tabular Representation; Special Structure of Transportation Table and their
Problems; Initial Basic Feasible Solution to TP; Moving Towards Optimality; Degeneracy in
TP; Unbalanced TP; Mathematical Formulation of Assignment Problem (AP); Fundamental
Theorems; Hungarian Method for AP; Illustrative Examples; Unbalanced Assignment
Problem.
Tutorial:
Problems on linear programming, simplex method, two-phase method, Big-M, dual simplex
method, CPM, PERT, transportation and assignment.
Text Book
1. Operations Research: An Introduction – Hamdy A Taha – 9th Edition, Pearson Education,
India, 2011.
2. Operations Research – S.D. Sharma – 16th Edition, KNRN Publications, 2009.
Reference Books
4. Introduction to Operations Research – Frederick S. Hillier and Gerald J. Lieberman – 9th
Edition, Tata McGraw Hill, 2009.
Course outcomes:
Students will be able to
CO1. Formulate a linear programming model from the description of a real world problem
(PO-a, b)
CO2. Solve a linear programming model using Simplex method.(PO-a,b,c,e,k)
CO3. Apply game theory to model, analyze and solve real-world problems.(PO-
a,b,c,e,k)
CO4. Analyze a project network using PERT and CPM techniques. (PO-a,b,c,e,k)
CO5. Build and Solve Transportation and Assignment problems. (PO-a,b,c,e,k)
19 of 69
INTELLECTUAL PROPERTY RIGHTS
Course code: IS523 Credits: 2:0:0
Prerequisites: NIL Contact Hours: 28
Course coordinator(s): Lincy Mathews
Course objectives:
To introduce the role and importance of intellectual property rights in the field of
information technology.
To understand the concepts of patents, trademarks and copyrights.
To introduce the procedure for obtaining patents, trademarks and copyrights
Course Contents:
Unit–I
Introduction:Meaning, Relevance, Business Impact, Protection of Intellectual Property,
Copyrights, Trademarks, Patents, Designs, Utility Models, Trade Secrets and Geographical
Indications Bio-diversity and IPR Competing Rationales for Protection of Intellectual
Property Rights, Introduction to the leading International Instruments concerning
Intellectual Property Rights: the Berne Convention, Universal Copyright Convention, The
Paris Convention, Patent Co-operation Treaty, TRIPS, The World Intellectual Property
Organization(WIPO) and the UNESCO
Unit–II
Patents: Concept of Patent, Product / Process Patents & Terminology, Duration of Patents-
Law and Policy Consideration Elements of Patentability - Novelty and Non Obviousness
(Inventive Steps and Industrial Application, Non- Patentable Subject Matter Procedure for
Filing of Patent Application and types of Applications, Procedure for Opposition, Revocation
of Patents, Ownership and Maintenance of Patents, Assignment and licensing of Patents,
Working of Patents- Compulsory Licensing, Patent Database and Information Systems,
Preparation of Patent documents, Process for Examination of Patent Application, Patent
Infringement
Unit–III
Trademarks - The rationale of protection of trademark for commercial and of consumer
rights , Definition and concept of Trademarks , Different kinds of marks (brand names,
logos, signatures, symbols, well known marks, certification marks and service marks), Non
Registrable Trademarks Procedure for Registration of Trademarks, Opposition Procedure,
Assignment/Transmission / Licensing of Trademarks, Infringement of Trademarks, Passing
off Action, Offences and Penalties, International Conventions- Madrid Protocol, Domain
Names , WIPO Internet Domain Name Process
20 of 69
UNIT-IV
Copyright- Nature of Copyright, Works in which Copyrights subsist, Author & Ownership of
Copyright Rights Conferred by Copyright Assignment, Transmission, Licensing of Copyrights
Infringement of Copyrights Remedies & Actions for Infringement of Copyrights Copyright
Societies, Office, Board, Registration of Copyrights & Appeals International Conventions
Copyright pertaining to Software/Internet and other Digital media Remedies, especially,
possibility of Anton Pillar Injunctive Relief in India
UNIT-V
IPR in the Field of Information Technology
Recent Developments in Patent System, Subject matter of software design law definition,
subject matter Law relating to embedded software design and registration in India,
Infringement of software design rights. Technological and Legal Developments in
Intellectual Property, IP in Cyberspace.
Text Books:
1. Dr. B. L. Wadhera, Law Relating to Intellectual Property, Universal law Publishing Co.
Ltd. 2009.
2. Aswani Kumar Bansal, Law of Trademarks in India
Reference books:
1. Intellectual Property Rights, Handbook/Notes
2. Course materials for one year P.G. Diploma in IPR from NLSIU, Bangalore by Prof. T.
Ramakrishna
3. Case studies from internet sources.
Course outcomes:
Students will be able to:
CO 1: Identify the principles of Intellectual Property Rights and its importance in the
field of Information Technology. (PO-h)
CO 2: Analyze the importance of patents, trademarks and copyrights.(PO-h)
CO 3: Describe the procedure for obtaining a patent, registering a trademark and
owning copyrights. (PO-h)
21 of 69
DATABASE MANAGEMENT SYSTEMS
Course code: IS534 Credits: 4:0:0
Prerequisites: NIL Contact Hours: 56
Course coordinator(s): Dr. Dayanand. P
Course objectives:
Providing the basic Database concepts and Designing an ER model for any Database
Application
Converting ER model to Relational model
Design a relational database schema for any database application using SQL and
PL/SQL
Apply the normalization procedure on relational database schema
Provide the concepts on Transaction processing, concurrency control, recovery
techniques to handle the real world problem
Course Contents:
Unit-I
Introduction; Characteristics of Database approach; Advantages of using DBMS approach,
Data models, Schemas and Instances; Three-schema architecture and data independence;
Database languages and interfaces; Classification of Database Management systems; Using
High-Level Conceptual Data Models for Database Design; An Example Database Application.
Types of data: structured, semi0 structured and unstructured data.
Unit-II
Entity Types, Entity Sets, Attributes and Keys; Relationship types, Relationship Sets, Roles
and Structural Constraints; Weak Entity Types; Refining the ER Design; ER Diagrams,
Relational Model Concepts; Relational Model Constraints and Relational Database Schemas;
Update Operations, Transactions and dealing with constraint violations.
Unit-III
Unary Relational Operations: SELECT and PROJECT; Relational Algebra Operations from Set
Theory; Binary Relational Operations: JOIN and DIVISION; Additional Relational Operations,
Relational Database Design Using ER- to-Relational Mapping, Informal Design Guidelines for
Relation Schemas; Functional Dependencies; Normal Forms Based on Primary Keys-1NF,
2NF,3NF, BCNF.
Unit-IV
SQL Data Definition and Data Types; Specifying basic constraints in SQL; Schema change
statements in SQL; Basic queries in SQL; More complex SQL Queries. Insert, Delete and
Update statements in SQL; Views (Virtual Tables) in SQL.
22 of 69
PL/SQL: Data types in PL/SQL, Control statements (IF,LOOP,WHILE, FOR), Cursor, Passing
Parameter to Cursor, Implicit Cursor, Exceptions, Procedures and functions.
Unit–V
Introduction to Transaction Processing, Transaction and System Concepts, Desirable
properties of Transactions, Characterizing Schedules Based on Recoverability, Characterizing
Schedules Based on Serializability, Transaction Support in SQL, Two-phase Locking
Techniques for concurrency Control, Concurrency Control based on Timestamp Ordering,
Recovery concepts, Recovery techniques based on Deferred Update, Recovery techniques
based on Immediate Update, Shadow paging, The ARIES recovery algorithm.
Text Books
1. RamezElmasri and ShamkantB.Navathe: Fundamentals of Database Systems, 5th Edition,
Addison-Wesley, 2007.
2.Benjamin Rosenzweig, Elena SilvestrovaRakhimov : Oracle PL/SQL by Example, 4th
Edition, 2010.
Reference Books
1. Silberschatz, Korth and Sudharshan: Data base System Concepts, Fifth Edition, Mc-
GrawHill, 2006.
2. Raghu Ramakrishnan, Johannes Gehrke, Database Management Systems, Third Edition,
McGraw-Hill, 2003.
3. “Fundamentals of Business Analytics” , R N Prasad, Seema Acharya , Wiley India, 2011.
Course outcomes:
Students will be able to
1. Utilize the basic Database concepts and design ER model for any Database
Application. (PO-a,b,c)
2. Convert ER model to Relational model. (PO-b,c,e)
3. Design a relational database schema for any database application using SQL and
PL/SQL. (PO-a,b,e)
4. Apply the normalization procedure on relational database schema. (PO-a,c,e)
5. Apply the concepts of Transaction processing, concurrency control, recovery
techniques to solve the real world problem. (PO-b,c,e)
23 of 69
DATABASEMANAGEMENTSYSTEMS LAB
Course objectives:
Execute SQL commands
Implement simple exercises on relational database schema
Design a relational database schema for specific database application using SQL and PL/SQL
Apply the normalization procedure on relational database schema
Develop the database system to handle the real world problem
Course Contents:
The Database Management Systems Lab consists of two components viz. Part A: Program
Execution and Part B: Mini Project.
Part A
Execute the following exercises in SQL
In Each of the following exercise the student has to identify the primary key and
other constraints required for the relations.
1. Consider the relations
EMPLOYEE(SSN, Name, DeptNo),
ASSIGNED_TO(USN , ProjectNo)
PROJECT(ProjectNo, ProjectArea).
Create the above tables, insert suitable tuples and perform the following operations in SQL:
a. Obtain the SSN of employees assigned to database projects.
b. Find the number of employees working in each department
c. Update the ProjectNo of Employee bearing SSN=1 to ProjectNo=20
d. Display all the employee names assigned to testing projects
e. Display the number of employees working in each project
Course Code: IS534L Credits : 0:0:1
Prerequisites:Nil Contact Hours : 28
Course coordinator(s): T. Tamilarasi
24 of 69
2. Consider the relations
PART(PNO, PNAME, COLOUR),
SUPPLIER( SNO,SNAME,ADDRESS)
SUPPLY(PNO,SNO,QUANTITY)
Create the above tables, insert suitable tuples and perform the following operations in SQL:
a. Obtain the PNO of parts supplied by supplier ‘Ram’.
b. Obtain the Names of suppliers who supply bolts
c. Delete the parts which are green in colour
3. Consider the relations
BOAT(BID, BNAME, COLOUR),
SAILOR(SID, SNAME, AGE, RATING)
RESERVES(BID,SID, DAY)
Create the above tables, insert suitable tuples and perform the following operations in SQL:
a. Obtain the bid of the boats reserved by ‘Ram’.
b. Retrieve the bid of the boats reserved by all the sailors.
c. Find the colors of boats reserved by Lubber
d. Find the names of sailors who have reserved boat 103
e. Find the number of boats reserved by each sailor
4. Consider the relations
PART(PNO, PNAME, COLOUR),
WAREHOUSE( WNO,WNAME,CITY)
SHIPMENT(PNO,WNO,QUANTITY,DATE)
Create the above tables, insert suitable tuples and perform the following operations in SQL:
a. Obtain the Names of warehouses which have shipped red coloured parts.
b. Retrieve the PNO of the parts shipped by all the warehouses.
c. Find the number of parts supplied by each warehouse
5. Consider the relations
BOOK(ISBN, TITLE,AUTHOR,PUBLISHER)
STUDENT(USN, NAME, SEM, DEPTNO),
BORROW(ISBN, USN, DATE)
Create the above tables, insert suitable tuples and perform the following operations in SQL:
25 of 69
a. Obtain the name of the student who has borrowed the book bearing ISBN ‘123’
b. Obtain the Names of students who have borrowed database books.
c. Find the number of books borrowed by each student.
Execute the following programs in PL/SQL
6. Consider the following database for a BANK system
BRANCH(Code, Name, Assets)
CUSTOMER(SSN, Name, Place)
ACCOUNT(AccNo, SSN, Code, Balance)
i) Create the above tables by stating the primary and foreign keys
ii) Insert the following tuples to the tables
BRANCH CUSTOMER
Code Name Assets
B1 MSR 10000
B2 RNR 20000
B3 SMR 15000
B4 SKR 25000
ACCOUNT
AccNo SSN Code Balance
A1 1 B1 100000
A2 1 B1 200000
A3 2 B2 100000
A4 3 B2 100000
A5 3 B2 100000
A5 3 B2 100000
A7 4 B2 200000
Write a PL/SQL program to display the contents of the above tables and then update the
balance of a few accounts.
7. (a) Write a PL/SQL program to check whether a given number is prime or not
(b) Using cursors demonstrate the process of copy the contents from sailor table to
new sailor table
8. (a) Write a program that gives all employees in department 10 a 15% pay increase.
Display a message displaying how many employees were awarded the increase.
SSN Name Place
1 Ram BNG
2 Asha MNG
3 Usha MYS
4 Sri DEL
26 of 69
(b) Create a program that accepts two numbers. If the first is larger than the second
then raise an exception called e_bigger and display an appropriate message.
9. (a) Write a PL/SQL program to print the first 8 fibonacci numbers
(b) Write a PL/SQL program to display the day of the week taking system date as
the input
10. (a) Write a PL/SQL procedure to find the factorial of a given number and a program
to call the same
(b) Consider the following relation schema.
EMPLOYEE (SSN, Name, sal, DeptNo)
Display SSN and name of employees of the department entered by the user as input
11. (a) Write a PL/SQL program to check whether a given number is palindrome or not
(b) Consider the following relation schema.
EMPLOYEE (SSN, Name, sal, DeptNo)
Write a trigger to raise an error if the table is modified on a specific day (Eg.,
Saturday or Sunday) of the week.
12(a) Write a PL/SQL Program to create a view for the employee working in sales
department assigned to more than 5 projects
(b) Write a Pl/SQL Program to create a cursor for supplier who supplies the part P234
and display it.
Part B
Mini Project
A team project in groups of maximum 4 students has to be carried out. The work and a
project report should be submitted for demonstration and evaluation. Related to the case
study identified by the students, they should be able to design and develop a database
application using the following approach.
Data Requirements collection
Functional Requirements Collection
Entity Relationship Model Design
ER-to-Relational mapping and Normalization
SQL :Data definition-Create the tables that have been designed. Populate the table
SQL:Data manipulation
Create Views and Triggers
27 of 69
SQL:Queries- Execute the queries
Complex SQL queries
Front end design
Text Book
Benjamin Rosenzweig, Elena SilvestrovaRakhimov : Oracle PL/SQL by Example, 4th Edition,
2010.
Course outcomes:
Students will be able to
CO1 Design and implement a database schema for a given problem-domain and
Normalize a database (PO-a,b,e)
CO2 Populate and query a database using SQL DML/DDL commands. (PO-a,b)
CO3 Declare and enforce integrity constraints on a database using a state-of-
the-art RDBMS (PO-d,e)
CO4 Programming PL/SQL including stored procedures, stored functions, cursors,
packages.(PO-a,b,d,e)
CO5 Develop the database system to handle the real world problem. (PO-b,e,l)
28 of 69
OBJECT ORIENTED ANALYSIS AND DESIGN PATTERNS
Course Code : IS535 Credits : 4:0:0:0
Prerequisites: Object Oriented
Programming(IS315) Contact Hours : 56
Course coordinator(s): Dr.Mydhili K Nair
Course objectives:
The aim of this course is to:
Introduce the students to Object Oriented Analysis and Modeling using Unified
Modeling Language (UML) notations.
Familiarize them with the three models, namely, Class Model, State Model and
Interaction Model
Hand-hold the students to thinking beyond the object oriented concepts they have
learnt so far (inheritance, aggregation, association etc) and make them appreciate
the need for Design Patterns in designing software.
Make them get acquainted with the three categories of design patterns, namely,
Creational, Structural and Behavioral Patterns.
Course Contents:
UNIT -1
Modeling as a Design Technique: Modeling, Abstraction, The Three Models
Class Modeling: Objects and Class Concepts, Link and Association Concepts, Generalization
and Inheritance, A Sample Class Model, Navigation of Class Models
Advanced Class Modeling: Advanced Object and Class Concepts, Association Ends, N-ary
Association, Aggregation, Abstract Classes, Multiple Inheritance, Metadata, Reification,
Constraints, Derived Data, Packages
UNIT -2
State Modeling: Events, States, Transitions and Conditions, State Diagrams, State Diagram
Behavior.
Interaction Modeling: Use Case Models, Sequence Models, Activity Models
Advanced Interaction Modeling: Use Case Relationships, Procedural Sequence Models
29 of 69
An Introduction to Design Patterns: Overview, Design Patterns Arose from Architecture and
Anthropology, Moving from Architectural to Software Design Patterns, Why Study Design
Patterns?, Other Advantages of Studying Design Patterns
UNIT -3
The Facade Pattern: Overview, Introducing the Façade Pattern, Learning the Façade
Pattern, Field Notes: The Façade Pattern.
The AdapterPattern: Overview, Introducing the AdapterPattern, Learning the
AdapterPattern, Field Notes: The AdapterPattern.
The StrategyPattern: Overview, The International E-Commerce System Cast Study: Initial
Requirements, Handling New Requirements, The StrategyPattern, Field Notes: Using the
StrategyPattern.
The BridgePattern: Overview, Introducing the BridgePattern, Learning the BridgePattern –
An example, An Observation About Using Design Patterns, Learning the BridgePattern –
Deriving It, The BridgePattern in retrospect, Field Notes: Using the BridgePattern.
UNIT -4
The Abstract FactoryPattern: Overview, Introducing the Abstract FactoryPattern, Learning
the Abstract FactoryPattern – An example, Learning the Abstract FactoryPattern –
Implementing It, Field Notes: The Abstract FactoryPattern.
The DecoratorPattern: Overview,A Little More Detail, The Decorator Pattern, Applying the
Decorator Pattern to the Case Study, Another Example: Input/Output, Field Notes: Using
the DecoratorPattern, The Essence of the DecoratorPattern.
The ObserverPattern: Overview,Categories of Patterns, More Requirements for the
International E-Commerce Case Study, The Observer Pattern, Applying the Observer to the
Case Study, Field Notes: Using the Observer Pattern
UNIT -5
Lessons from Design Patterns: Factories: Overview, Factories, The Universal Context
Revisited, Factories Follow Our Guidelines, Limiting the Vectors of Change, Another Way to
Think About It, Different Roles of Factories, Field Notes
The Singleton Pattern and the Double-Checked Locking Pattern: Overview, Introducing the
Singleton Pattern, Applying the Singleton Pattern to the Case Study, A Variant: The Double-
Checked Locking Pattern, Reflections, Field Notes: Using the Singleton and Double-Checked
Locking Patterns
The Factory Method Pattern: Overview, More Requirements for the Case Study, The Factory
Method Pattern, Factory Method Pattern and Object-Oriented Languages, Field Notes: Using
the Factory Method Pattern.
30 of 69
Text Books:
1. Michael Blaha, James Rambaugh, “Object-Oriented Modeling and Analysis with UML”,
Pearson, 2nd Edition, 1st Impression
2. Alan Shalloway, James R Trot, “Design Patterns Explained – A New Perspective on
Object-Oriented Design”, Pearson, 2nd Edition, 4th Impression 2010
Reference Books:
1. Satzinger, Jackson, Burd, “Object Oriented Analysis and Design with Unified
Process”, Thomson Learning, 1st Indian Reprint 2007
2. Eric Freeman, Elisabeth Freeman, “Head First Design Patterns”, O’reilly Publications,
October 2004, 1st Edition
Course Outcomes:
The students will be able to-
CO1: Use UML notations and model problem scenarios and case-studies given using the
Class Modeling technique (PO-b, e, i, j, l)
CO2: Apply State Modeling and Interaction Modeling UML techniques to problem scenarios
and case-studies given (PO-b, e, i, j, l)
CO3: Identify the need for design patterns in object oriented analysis and design of
software(PO-i, j, l)
CO4: Recognize the need for Façade, Adaptor, Strategy and Bridge Design Patterns and use
them in different problem scenarios / case-studies (PO-b, c, e, i, j, l)
CO5: Analyze why we require Abstract Factory, Decorator and Observer Design Patterns and
spot when and how to apply them (PO-b, c, e, i, j, l)
CO6: Distinguish between Factory, Singleton and Factory Method Design Patterns and design
problem scenarios / case-studies using them (PO-b, c, e, i, j, l)
31 of 69
OBJECT ORIENTED ANALYSIS AND DESIGN PATTERNS LAB
Course Objectives:
Design a problem using UML
Analyze the problem for possible restructuring
Select candidate Design pattern for the problem
Apply the most suitable design pattern for the problem
Implement the problem using the selected design pattern
1. Abstract Factory
Suppose you plan to manage address and telephone information as part of a personal
information manager application. The will act as a combination address book, personal
planner, and appointment and contact manager, and will use the address and phone
number data extensively. Design the problem to accommodate information from another
country.
2. Factory method:
Imagine that you’re working on a Personal Information Manager application. It will contain
many pieces of information essential to your daily life: addresses, appointments, dates,
books read, and so on. This information is not static; for instance, you want to be able to
change an address when a contact moves, or change the details of an appointment if your
lunch date needs to meet an hour later. Design the problem so that each item, like
appointments provides their own mechanism to manage additions and changes.
3. Singleton:
Create a chocolate factory class so that the empty boilers are not heated and raw mixture is
not poured out of boiler without heating. Make sure that there exists only one chocolate
boiler object.
4. Strategy
For many of the collections in the personal information manager, it would be useful to be
able to organize and summarize individual entries. Demonstrate this using Strategy pattern
to summarize entries in a ContactList, a collection used to store Contact objects.
5. Observer
Suppose you want to let personal information manager users share information. This would
be useful, for instance, for coordinating a regular club meeting. You could use an
Appointment object to provide club members with current information about the meeting
location, date and time. However, how do you ensure that, if the meeting time changes, a
change to the appointment information is sent to everyone who's interested?
Course Code : IS535L Credits : 0:0:1
Prerequisites: NIL Contact Hours : 28
Course coordinator(s): Shashidhara H S
32 of 69
6. Façade
To make the personal information manager more functional for users, we want to give them
the opportunity to customize the application. Some examples of items to customize include
font type, font size, colors, which services to start when, default currency, etc. Provide an
unified interface for some of these items.
7. Adapter
Create a shapes class to accommodate different types of shapes. Assuming that object of a
shape you are planning to include is already available but with different interface,
demonstrate how you include it into your design.
8. Decorator
Demonstrate how you use the Decorator pattern to extend the capability of the elements in
one of the above problems.
9. Bridge
A class shapes abstracts different types of shapes. A shape can be drawn using different
types of drawing programs. How do you solve the problem of increasing number of classes
when new drawing programs are introduced in future.
Course Outcomes:
At the end of the course, the students will be able to:
1. Design the given problem using standard UML(PO b, PO e)
2. Identify maintenance issues in the existing solutions(PO b, PO f)
3. Explain the use of design patterns( PO j)
4. Apply Design patterns to the problems(PO b, PO d, PO k)
33 of 69
DIGITAL IMAGE PROCESSING
Course Code : IS52A1 Credits : 4:0:0
Prerequisites: NIL Contact Hours : 56
Course coordinator(s): Dr.Megha.P.Arakeri
Course objectives:
Introduce the principles of digital image processing.
Explore the various image filtering techniques.
Develop a theoretical foundation of Image segmentation and description.
Understand object recognition and image compression methods.
Explore color image processing and morphological operations.
Course Contents:
UNIT-I
Introduction: Digital image processing, Imaging modalities, Fundamental steps in image
processing, Components of image processing system, Applications of image processing.
Digital Image Fundamentals: Image formation model, Sampling and quantization,
Relationships between pixels. Mathematical tools used in image processing.
UNIT-II
Spatial Filtering: Intensity transformation functions, Histogram processing, Fundamentals of
spatial filtering, Smoothing spatial filters, Sharpening spatial filters. Filtering in the
Frequency Domain: 2-D DFT, FFT, Basics of filtering in frequency domain, Image smoothing
and sharpening using frequency domain filters.
UNIT-III
Image Segmentation: Fundamentals, Detection of isolated points, line and basic edge,
Thresholding, Region-based segmentation. Representation and Description: Representation
(border following, chain codes, minimum-perimeter polygons) Boundary descriptors (simple
descriptors, shape numbers, Fourier descriptors), Region descriptors (simple descriptors,
topological descriptors, texture).
34 of 69
UNIT-IV
Object Recognition: Patterns and pattern classes, Decision-theoretic methods, Structural
methods. Image Compression: Fundamentals, Compression methods (Huffman, Arithmetic,
Run-length, LZW), Digital image watermarking.
UNIT-V
Color Image Processing: Color models, Full-color image processing Color transformations,
Smoothing and sharpening. Segmentation in HIS and RGB space. Morphological Image
Processing: Erosion and Dilation, Opening and closing, Hit-or-miss transform, Morphological
algorithms.
Text Book:
1. Rafael C.Gonzalez, Richard E. Woods , “Digital Image Processing”, 3rd ed., Pearson.
Reference Books:
1. Anil K. Jain, “Fundamentals of Digital Image Processing”, Pearson Education, 2001.
2. B. Chanda and D. Dutta Majumdar ,“Digital Image Processing and Analysis”, PHI,
2003.
Course Outcomes:
CO1: Acquire the fundamental concepts of a digital image processing(PO-a).
CO2. Apply the filtering, segmentation, description, compression and morphological
techniques in processing the image(PO-a,b).
CO3. Analyze a wide range of problems and provide solutions related to the design of
image processing systems through suitable algorithms (PO-a,b,c).
CO4. Exhibit teamwork and communication skills through course projects(PO-i,j).
35 of 69
NATURAL LANGUAGE PROCESSING
Course Code : IS52A4 Credits : 4:0:0
Prerequisites : Finite Automata and
Formal Languages (IS416)
Contact Hours : 56
Course coordinator(s): Rajeshwari S B
Course Objectives:
Learn the most important fundamental concept in language processing
(the finite automaton) and the practical tool based on automaton (the regular
expression).
Describe the working of N-gram tool and the part-of-speech tagging in language
processing.
Understand the working of various parsing techniques to validate the syntactic
structure of the language.
Explore the representations need for semantic processing and syntax-driven
semantic analysis.
Explain the language generation and machine translation frameworks.
Course Contents:
Unit-I
Introduction: Knowledge in Speech and Language Processing, Ambiguity, Models and
Algorithms; Language, Thought, and Understanding; The State of the Art and The Near-
Term Future; Regular Expressions and Automata; Morphology and Finite-State
Transducers: Lexicon-free FSTs: The Porter Stemmer, Human Morphological Processing.
Unit-II
N-grams: Counting Words in Corpora, Smoothing, N-grams for Spelling and Pronunciation,
Entropy; Word Classes and Part-of-Speech Tagging: Part-of-Speech Tagging , Rule-
based Part-of-speech Tagging, Stochastic Part-of-speech Tagging, Transformation-Based
Tagging; Context-Free Grammars for English: Constituency, Context-Free Rules and
Trees, Sentence-Level Constructions, The Noun Phrase.
36 of 69
Unit-III
Parsing with Context-Free Grammars: The Earley Algorithm; Features and
Unification: Feature Structures, Unification of Feature Structures, Features Structures in
the Grammar, Implementing Unification, Parsing with Unification Constraints; Lexicalized
and Probabilistic Parsing:Probabilistic Context-Free Grammars, Problems with PCFGs.
Unit-IV
Representing Meaning:First Order Predicate Calculus, Some Linguistically Relevant
Concepts, Related Representational Approaches, Alternative Approaches to
Meaning;Semantic Analysis : Syntax-Driven Semantic Analysis, Attachments for a
Fragment of English; Lexical Semantics : Relations Among Lexemes and Their Senses,
WordNet: A Database of Lexical Relations, The Internal Structure of Words.
Unit-V
Discourse: Reference Resolution, Text Coherence, Discourse Structure; Generation:
Introduction to Language Generation, An Architecture for Generation; Machine
Translation: Language Similarities and Differences, The Transfer Metaphor.
TEXT BOOK
1. Daniel Jurafsky and James H Martin, ”Speech and Language Processing: An
introduction to Natural Language Processing, Computational Linguistics and Speech
Recognition”, Prentice Hall, 2nd Edition, 2008.
REFERENCE
2. Tanveer Siddiqui, U.S. Tiwary, “Natural Language Processing and Information
Retrieval”, Oxford University Press, 2008.
Course Outcomes:
Students will be able to:
CO1. Interpret how speech and language technology relies on formal models to capture
knowledge, and language processing deals with subparts of words (morphology).
(PO- a, b, e)
CO2. Illustrate the way N-gram tool is used for spelling and pronunciation processing,
and part-of-speech tagging mechanism using various categories. (PO-b, e)
CO3. Describe feature structures and the unification operation which is used to combine
37 of 69
them, and probabilistic parsing to capture more syntactic information. (PO-b, e)
CO4. Outline on representations used to bridge the gap from language to commonsense
Knowledge(semantic processing), andmeanings associated with lexical items.
(PO- b, g)
CO5.Emphasize on problems that NLP systems face, constructing natural language
outputs from non-linguistic inputs andmachine translation framework
approaches.(PO-g)
38 of 69
INFORMATION SYSTEMS
Course Code : IS52A5 Credits : 4:0:0
Prerequisites: Nil Contact Hours : 56
Course coordinator: Jagadeesh Sai D
Course Objectives:
Recognize the role of Information technologies in today’s world
Discuss the role of Information Systems to gain strategic advantage in a competitive
business environment
Recognizes three critical issues: Ethics, Security and Privacy
Analyze the effective Management of data to make decisions
Understand the networks like telecommunication, wireless communication and e-
commerce
UNIT I
Information Systems: Concepts and Definitions, Types of Information Systems, Examples of
Information Systems, Managing Information Resources, Doing Business in the Digital
Economy, Business Pressures, Organizational Responses, and IT Support, Competitive
Advantage and Strategic Information Systems, Why Should You Learn about Information
Technology?
UNIT II
Ethical Issues, Threats to Information, Protecting Information Resources, Planning for and
Justifying IT Applications, Strategies for Acquiring IT Applications, The Traditional System
Development Life Cycle, Alternative Methods and Tools for Systems Development,
Outsourcing and Application Service Providers, Vendor and Software Selection
UNIT III
Managing Data, The Database Approach, Database Management Systems, Data
Warehousing, Data Visualization, Knowledge Management, Types of Networks, The Internet,
The World Wide Web, Network applications, E-Learning and Distance Learning,
Telecommuting.
UNIT IV
Overview of E-Business and E-Commerce, Business-to-Consumer (B2C) Electronic
Commerce, Business-to-Business (B2B) Electronic Commerce, Electronic Payments , Ethical
and Legal Issues in E-Business, Wireless Technologies, Wireless Computer Networks and
Internet Access, Mobile Computing and Mobile Commerce, Pervasive Computing, Wireless
Security
UNIT V
Transaction Processing Systems, Functional Area Management Information Systems,
Enterprise Resource Planning Systems, Customer Relationship Management Systems,
Supply Chain Management Systems, Electronic Data Interchange, Extranets, and Web
Services, Managers and Decision Making Decision Support Systems, Enterprise and
Executive Decision Support Systems, Intelligent Systems
39 of 69
Text Book:
1 Rainer, Turban and Potter, Introduction to Information Systems, 1st Edition, Wiley
India Edition, 2008
Reference Books:
1 Kenneth C. Laudon and Jane P. Laudon, Management Information System, Managing the
Digital Firm, 9th Edition, Pearson Education, 2006.
2 Steven Alter, Information Systems The Foundation of E-Business, 4th Edition, Pearson
Education, 2002.
3 W.S. Jawadekar, Management Information Systems, Tata McGraw Hill 1998.
Course Outcomes:
CO1 : Differentiate among data, information and knowledge(PO-a,b,d)
CO2 :Identify the major information systems that support each organization level(PO-a,d)
CO3 :Recognize the importance of data, issues involved in managing these data and their
life cycle(PO-b,e)
CO4 :Explain transaction processing systems, management information systems and the
support they provided for each functional area of the organization. (PO-a,b,c)
CO5 :Explain electronic commerce, including its scope, benefits, limitation and types
(PO-b,l)
40 of 69
SYSTEM SOFTWARE
Sub Code: IS631 Credits: 4:0:0
Prerequisite: NIL Total Hours: 56
Course Coordinator: Rajeshwari S B
Course Objectives
1. Understand the need of system software in information technology and the object
code generation of SIC machines.
2. Learn the dependent and independent machine features of SIC/XE and also the
various types of assemblers.
3. Explain the different types of loaders and their design options.
4. Realize the macroprocessor functions, data structures and analyze the
macroprocessor design options.
5. Analyze the LEX regular expressions, YACC grammars and design the programs.
Course Contents:
Unit-I
SIC,SIC/XE Architecture and Assembler: Introduction, System Software and Machine
Architecture, Simplified Instructional Computer (SIC) - SIC Machine Architecture, SIC/XE,
Basic Assembler Function, A Simple SIC Assembler, Assembler Algorithm and Data
Structures, SIC object code generation.
Unit-II
Assembler Features and Design Options: Machine Dependent Assembler Features -
Instruction Formats & addressing Modes, Program Relocation. Machine Independent
Assembler Features – Literals, Symbol-Definition Statements, Expression, Program Blocks,
Control Sections and Programming Linking, SIC/XE object code generation. Assembler
Design Operations - One-Pass Assembler, Multi-Pass Assembler, Implementation Examples
– MASM Assembler.
Unit-III
Loader Functions, Features and Design Options: Basic Loader Functions - Design of an
Absolute Loader, A Simple Bootstrap Loader, Machine-Dependent Loader Features –
Relocation, Program Linking, Algorithm and Data Structures for a Linking Loader; Machine-
Independent Loader Features - Automatic Library Search, Loader Options, Loader Design
Options - Linkage Editor, Dynamic Linkage, Bootstrap Loaders, Implementation Examples -
MS-DOS Linker.
Unit-IV
Macro Processor Functions, Features and Design Options: Basic Macro Processor
Functions - Macro Definitions and Expansion, Macro Processor Algorithm and Data
Structures, Machine-Independent Macro Processor Features -Concatenation of Macro
Parameters, Generation of Unique Labels, Conditional Macro Expansion, Keyword Macro
41 of 69
Parameters, Macro Processor Design Options Recursive Macro Expansion, General-Purpose
Macro Processors, Macro Processing Within Language Translators, Implementation Examples
- MASM Macro Processor, ANSI C Macro Processor.
Unit-V
LEX and YACC Tools: Lex and Yacc - The Simplest Lex Program, Recognizing Words With
LEX, Grammars, Parser-Lexer Communication, A YACC Parser, The Rules Section, Running
LEX and YACC, Using LEX – Regular Expression, Using YACC – Grammars, Recursive Rules
Shift/Reduce Parsing, What YACC Cannot Parse, A YACC Parser - The Definition Section, The
Rules Section, The LEXER, Compiling and Running a Simple Parser, Arithmetic Expressions
and Ambiguity.
Text Books:
1. Leland.L.Beck, System Software, 3rd Edition, Addison-Wesley, 1997.
2. John.R.Levine, Tony Mason and Doug Brown, Lex and Yacc, O'Reilly, SPD, 1999.
Reference Books:
1. D.M.Dhamdhere, System Programming and Operating Systems, 2nd Edition, Tata
McGraw Hill, 1999.
Course Outcomes
Students will be able to:
CO1: Describe the architecture of SIC, SIC/XE machine and to design the programs on
those machine.(PO a, PO b)
CO2: Apply the assembler algorithm to generate the object code for SIC/XE.(PO c, PO
d, PO e, PO g)
CO3: Understand the working of different types of Loaders.(PO c, PO d, PO e, PO g)
CO4: Analyze the concepts of macro processing and its various features.(PO a, PO d,
PO e, PO g)
CO5:Design the programs using LEX and YACC tools.(PO a, PO e)
42 of 69
SYSTEM SOFTWARE LAB
Course Code : IS631L Credits : 0:0:1
Prerequisites: NIL Contact Hours : 28
Course Coordinator: Sumana.M.
Course objectives:
The lab focuses on the experimental design, implementation, and evaluation of
systems software technologies
To acquire basic skills and knowledge in constructing two-pass assemblers.
To analyze the concept of absolute and relocating loaders.
To understand and study of lex and yacc tools which helps write programs whose
control flow is directed by instances of regular expressions in the input stream
Realize the role of macroprocessors in system software.
List of exercises to be carried out in the LABORATORY
PART-A
Implement the following using C/C++ for the SIC Machine:
1. Develop pass-1 of two-pass assembler.
2. Develop pass-2 of two-pass assembler.
3. Develop absolute loader.
4. Develop relocating loader using bit mask.
5. Develop one-pass macroprocessor.
PART-B
LEX Exercises.
1. Develop a lex program to count the number of characters, words, spaces and lines
in a given input file.
2. Develop a lex program to count the number of comment lines in a given C program.
3. Develop a lex program to recognize a valid arithmetic expression and identify the
identifiers and operators present.
4. Develop a lex Program to recognize and count the number of identifiers in a given
input file.
43 of 69
YACC Exercises.
1. Develop a yacc program to recognize a valid arithmetic expression that uses
operators +,- ,* and /.
2. Develop a yacc program to recognize a valid variable, which starts with a letter,
followed by any number of letters or digits.
3. Develop a yacc program to evaluate an arithmetic expression involving operators +,-
,* and /.
4. Develop a yacc program to recognize the strings of the form ambn, where
m>=0,n>=0.
Note:
In SEE, student has to execute one program from PART-A and one LEX / one YACC program
from PART-B.
Course outcomes:
The student will be able to
CO1: Describe the architecture of SIC, SIC/XE machine and to design the assembler
programs accordingly.(PO-a,b)
CO2: Understand the working of two pass assemblers, the machine code generation.(PO-
c,d,e,g)
CO3: Design and implement various programs using lex and yacc tools.(PO-c,d,e,g)
CO4: Design and implement loader.(PO-c,d,e,g)
CO5: Design and implement macroprocessors.(PO-a,e)
44 of 69
OPERATING SYSTEMS and UNIX
Course Code : IS632 Credits : 4:0:0
Prerequisites: NIL Contact Hours : 56
Course coordinator: Dr.Megha. P. Arakeri
Course objectives:
Introduce various concepts of operating system
Understand Process synchronization and deadlock by the operating systems
Explore he memory management function of operating system
Realize the role of operating system in file management.
Understand system protection and acquire knowledge on modern operating system.
Course Contents:
UNIT -1
Introduction: Operating System Structure, Operating System Operations. Process Concept:
Process Scheduling, Operations on Processes, Interprocess Communication; Process
Scheduling: Scheduling Criteria, Scheduling Algorithms.UNIX Architecture, Unix Commands-
Directory, file, Protection and Security, Communication, Information, Process management,
I/O redirection & Piping and Filter Commands.
UNIT -2
Synchronization: The Critical Section Problem, Peterson’s Solution, Synchronization
Hardware, Semaphores, Classical Problems of Synchronization, Monitors, Synchronization
Examples; Dead locks: System Model, Deadlock Characterization, Methods for handling
Deadlocks, Deadlock Prevention, Deadlock Avoidance and detection, Recovery from
Deadlock.
UNIT -3
Memory Management Strategies: Background, Swapping, Contiguous Memory Allocation,
Paging, Structure of Page Table, Segmentation; Virtual Memory Management: Background,
Demand Paging, Copy on Write, Page Replacement, Allocation of frames, Allocating Kernel
Memory.
UNIT -4
File System: File Concept, Access Methods, Directory Structure, Protection; Implementing
File Systems: File System Structure, File System Implementation, Directory
Implementation, Allocation Methods, Free Space Management, Efficiency and Performance,
Recovery; Secondary-Storage Structure: Disk structure, Disk Attachment, Disk Scheduling
Methods. Disk management. Swap-Space Management.
45 of 69
UNIT -5
System Protection: Goals of Protection, Principle of Protection, Access Matrix, Domain of
Protection, Access Matrix and its implementation. Case Studies: The Linux System: Design
Principles, Kernel Modules, Process Management, Scheduling, Memory Management, File
Systems, Interprocess Communication.
Text Books:
1. Silberschatz, Galvin, Gagne, Operating System Concepts, 7/e, John Wiley and sons,
2007.
Reference Books:
1. Dhamdhere D. M., Operating Systems, A Concept Based Approach, 2/e, Tata McGraw
Hill, 2006.
2. Tanenbaum A. S., Modern Operating Systems, 3/e, Pearson Education, 2008.
Course Outcomes:
The students will be able to
CO1: Discuss operating system concepts and analyze CPU scheduling algorithms. (PO-
a,b,d)
CO2: Describe the various methods for accessing shared data and handling deadlocks.(PO-
a,b,d)
CO3: Employ the techniques for memory management during process execution.
(PO-a,b,d)
CO4: Describe the file system and secondary storage structure.(PO-a,b,c,d)
CO5: Articulate the need for information protection mechanisms in OS and illustrate the
working of modern operating system.(PO –a,b,c,l)
46 of 69
OPERATING SYSTEMS and UNIX LAB
Course Code : IS632L Credits : 0:0:1
Prerequisites: NIL Contact Hours : 28
Course coordinator: T. Tamilarasi
Course Objective:
1) Implement Unix system calls
2) Implement the scheduling algorithms and analyze their performance.
3) Implement the strategies used for concurrency management.
4) Implement the various schemes used for memory management.
5) Implement the different methods used for handling files.
Course Contents:
Implement the following:
1) Simulate all file related, protection and security commands
2) Simulate Process, I/O Redirection and piping and filters commands.
(The above two programs will not be included for Final exam.
3) Write a shell programs using Command line arguments, command Substitution and
Positional Parameters
4) Write a Shell program using set, shift, Control structures and Looping structures
5) Write a C program using Process system call(fork, exit) and executing another program
using exec system call
6) Write a C Program using File System call
7) Demonstrate directory system call
8) Write a C program implement Orphan and Zombie process, security related calls
9) Process scheduling using FCFS and RR
10) Process handling using deadlock mechanisms
11) Process Synchronization using semaphores
12) Memory management using page replacement
Text Books:
2. Silberschatz, Galvin, Gagne, Operating System Concepts, 7/e, John Wiley and sons,
2007.
Reference Books:
3. Dhamdhere D. M., Operating Systems, A Concept Based Approach, 2/e, Tata McGraw
Hill, 2006.
4. Tanenbaum A. S., Modern Operating Systems, 3/e, Pearson Education, 2008.
47 of 69
Course Outcome: At the end of the course, the students will be able to
CO1: Develop simple command level program for file, process, redirection, piping,
protection and security. (PO a, PO b, PO c. PO k)
CO2: Demonstrate the usage of shell using shell positional parameters and
command substitution.(PO a, PO e, PO g, PO k)
CO3:Create a Child process using fork system call and execute other programs.
(PO a, PO b, PO e, PO k)
CO4 :Apply scheduling, synchronization and deadlock mechanisms on processes.
(PO-a,d,l)
CO5: Manage main memory through the paging schemes.(PO-a,d,l)
48 of 69
PROJECT BASED LEARNING (Web Programming)
Course Code : IS633L
Credits : 0:1:1
Prerequisites: NIL Contact Hours: 28+28
Course coordinator(s): T.Tamilarasi
Course objectives:
Create a simple web pages using xhtml& style sheets
Design and develop interactive, client-side, executable websites usingJavascript.
Build an XML document
Application development using PHP
Use PERL for CGI programming to create a server side application
Course Contents:
UNIT I
Fundamentals of Web, XHTML and CSS: Internet, WWW, Web Browsers, and Web
Servers; URLs; MIME; HTTP; The Web Programmers Toolbox.
XHTML: Basic syntax; Standard structure; Basic text markup; Images; Hypertext Links;
Lists, tables, Forms, Frames
CSS: Introduction; Levels of style sheets; Selector forms; Property value forms; Font
properties; List properties; Color; Alignment of text; The box model; Background images;
The <span> and <div> tags.
UNIT II
Javascript and HTML Documents
Overview of Javascript; Syntactic characteristics; Primitives, operations, and expressions;
Screen output and keyboard input; Control statements; Object creation and modification;
Arrays; Functions; Constructor; Pattern matching using regular expressions; Errors in
scripts; Examples. The Javascript execution environment.
The Document Object Model; Element access in Javascript; Events and event handling;
Handling events from the Body elements, Button elements, Text box and Password
elements;
UNIT III
DOM Model and XML:DOM : The DOM 2 event model; The navigator object
XML: Introduction to XML – Syntax – XML document structure – Document Type definition
– Name spaces – XML Schemas – Displaying Raw XML documents – Displaying XML
documents with CSS – XSLT style sheets – XML processors
49 of 69
UNIT IV
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.
MySQL; Database access with PHP and MySQL.
UNIT V
PERL:The Basics of PERL : Origin and uses – Scalar and their operations - Assignment
statements and simple input and output – Control statements – Arrays – Hashes –
References – Functions – Pattern Matching – File input and Output.
Using PERL for CGI Programming: The Common Gateway Interface – CGI Linkage –
Query String Format – The CGI.pm Module – A survey Example – Cookies – Database
Access with Perl and MYSQL.
Text Book:
Robert W. Sabesta: Programming the World Wide web, 3rd edition, Pearson education,
2006.
Reference Books:
1. M. Deitel, P.J. Deitel, A. B. Goldberg: Internet & World Wide Web How toprogram, 3rd
Edition, Pearson education, 2004.
2. Chris Bates: WebProgrammingBuilding Internet Applications, 3rd Edition, Wiley
India,2006.
3. Xue Bai et al: The Web Warrior Guide to Web Programming, Thomson, 2003.
Course outcomes:
Students will be able to
CO1. Understand the different terms used in web technologies, the syntactic structure of
XHTML, different tags, and levels of styles used to create a simple web page.(PO-a,b)
CO2.The purpose of javascript and how it is used to simple validations and event
handling(PO-d).
CO3.Describe the Document Object Model, and create web site using XML and the Schema
definition.(PO-b,d)
CO4.Illustrate the different data types, operators and expression and control statements in
PHP and design a web page which can access MySQL database.(PO-d,e)
CO5.Develop server side program in PERL and Use PERL for CGI programming.(PO-d,e)
50 of 69
PROJECT BASED LEARNING (Cloud Computing)
Course Code : IS633L Credits : 0:1:1
Prerequisites: NIL Contact Hours : 28+28
Course coordinator: Koushik S
Course objectives:
Introduce different aspects of cloud computing like; service models, challenges &
infrastructure.
Explore the various cloud computing applications & paradigms.
Analyze different cloud virtualization, resource management, data storage and
security issues with case studies.
Study the literature and exercise a project.
Apply features of cloud platforms in programming and software environments.
Course Contents:
UNIT I
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 II
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, cloud for biological
research, Social computing, digital content, and cloud computing.
UNIT III
Cloud Resource Virtualization: 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
51 of 69
virtual machines, Virtual machine security, The darker side of virtualization, Software fault
isolation.
UNIT IV
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 utility-based model for
cloud-based web services, Resource bundling, combinatorial auctions for cloud resources,
Scheduling algorithms for computing clouds, fair queuing, Start time fair queuing, Cloud
scheduling subject to deadlines, Scheduling mapreduce applications subject to deadlines.
UNIT V
Storage systems: Storage models, file systems, databases, DFS, General parallel File
system, GFS, Apache Hadoop, Locks & Chubby, TPS & NOSQL databases, Bigdata, Mega
store. Cloud security: Risks, Security, privacy and privacy impacts assessments, Trust, VM
Security, Security risks in shared images.
Text Book:
1. Dan Marinescu, Cloud Computing: Theory and Practice, 1st edition, MK Publishers, 2013.
2. Anthony T. Velte, Toby J. Velete, Robert Elsenpeter, Cloud Computing: A Practical
Approach, Tata McGraw Hill, 2010.
References:
1. Kai Hwang, Jack Dongarra, Geoffrey Fox, Distributed and Cloud Computing, From
Parallel Processing to the Internet of Things, 1st edition, MK Publishers, 2012.
Course outcomes:
CO1: Introduce different aspects of cloud computing like; service models, challenges &
infrastructure.(PO-a,b)
CO2: Explore thevarious cloud computing applications & paradigms.(PO-a,b)
CO3: Analyze different cloud virtualization, resource management, data storage and security
issues with case studies.(PO-a,b,e)
CO4: Study the literature and exercise a project.(PO-a,b,d,e)
CO5: Apply features of cloud platforms in programming and software environments.(PO-
a,b,e)
52 of 69
JAVA and J2EE
Course Code : IS624 Credits : 4:0:0
Prerequisites:IS315(OOPS) Contact Hours : 56
Course coordinator(s): MrKoushik S
Course objectives:
Enable the students to revise certain fundamental object oriented concepts of Java
such as inheritance, packages, interfaces, exception handling etc learnt in semester
3, as well as familiarize the students with advanced concepts such as classes and
interfaces in the Collections Framework.
Make the students appreciate the need for JFC Swing Classes in-order to develop
simple GUI interfaces as well as apply the concepts of Collection Framework to write
programs.
Introduce the students with the concepts related to Java Applets, JSP and enable
them to write simple GUI programs in JSP as well as enable them to do event
handling in Swing programs.
Introduce the concept of JDBC drivers to interact with database from java program
as well as enable the students to write programs with multiple GUI interfaces and
parameter passing between the pages.
Introduce the students to the concepts of RMI and Threads and enable them to write
simple programs based on these.
Course Contents:
Unit-I
Overview of Java covering Inheritance, Packages, Interfaces and Exception Handling.
java.utilPart1:TheCollectionsFramework:CollectionsOverview,TheCollectionInterfaces,
TheCollectionClasses: The ArrayList Class, LinkedList Class, HashSet Class.
Unit-II
java.utilPart1:TheCollectionsFramework:AccessingaCollectionviaIterator,StoringUser-
DefinedClassesinCollections,WorkingwithMaps,Arrays,WhyGenericCollections?
SWING:TheJavaFoundationClasses,JFCTechnologies,Swingfeatures,SwingComponents,Work
ingwithSWING,SWINGbasiccontainers,Buttons,Labels,TextFields,TextAreas,CheckBoxes.
Unit-III
SWING: JApplet,ComboBox,EventHandling,ProgressBars.
IntroductiontoJavaServerPages:JSPv/sServlets,LifecycleofaJSPPage.
GettingstartedwithJSP:JSPElements,ASampleJSPPage.
53 of 69
JavaServerPagesDocument:Directives,ScriptingElements,ASampleJSPDocument.
Unit-IV
ActionelementsofJSP:Includingotherfiles,forwardingJSPpagetoanotherpage,passingparame
tersforotheractions. WorkingwithDatabases: JDBC, Advantages of JDBC,JDBC
Architecture,Types of JDBC Drivers, how to access database, Using Databases, Connecting
to Database, Performing Database Operations.
Unit-V
Java Threads: What is multi-threading, The Thread Control methods, The thread lifecycle,
The main Thread,Creating the thread, Extending the threadclass.
RemoteMethodInvocation:WhatisadistributedOperatingSystem?,DistributedObjectTechnol
ogies,RMIforDistributedComputing,RMIArchitecture,RMIRegistryService,CreatingRMIApplicati
ons,StepsinvolvedinrunningtheRMIApplicationincasetheserverapplicationandtheclientapplicati
onisruninthesamemachine,RemovingObjectsfromaregistry.
Textbooks
1. HerbertSchildt,‘TheCompleteReferenceJava(J2SE5Edition)’,TATAMcGRAW-
HILLEdition2005.
2. IvanBayross,SharanamShah,CyntihaBayrossandVishaliShah,
‘JavaEE5forBeginners’,SPD(SharoffPublishers&
DistributorsPvt.Ltd.),2ndeditionAugust2008.
References
1. JimKeogh, ‘TheCompleteReferenceJ2EE’,TATAMcGRAW-HILLEdition2002.
2. BVKumar,SSangeetha,SVSubrahmanya,J2EEArchitecture,TATAMcGRAW-
HILLEdition2007.
Course outcomes:
The students will be able to
CO1: Demonstrate certain fundamental Java concepts such as packages, inheritance,
interfaces, exception handling as well as the write programs applying the advanced
Java concepts such as the classes and interfaces in the Collections Framework.(PO a,
PO b)
CO2: Apply the concepts of Collections Framework and JFC Swing classes and interfaces in
creating simple GUI programs. (PO a, PO b)
CO3: Demonstrate event handling in Swing programs and create GUI interfaces using Java
Applets and JSP.(PO a, PO b)
CO4: Demonstrate working with JDBC as well as advanced concepts of JSP such as passing
parameters, including other files etc.(PO a, PO b)
CO5: Illustrate the Thread Life Cycle. and apply the principle of RMI in writing simple
programs.(PO a, PO b)
54 of 69
JAVA and J2EE LAB
Course Code : IS624L Credits : 0:0:1
Prerequisites: IS315 (OOPS) Contact Hours : 28 hrs
Course coordinator(s): Sumana M
Course Objectives:
Design java applications and be able to implement them.
Understand the importance of java concepts and their use in real world applications.
Ability to choose appropriate java concepts for problem solving.
Syllabus
1. Create a class called account with the data members(Accno – integer, name String,
Phone_No: integer, balance_amt:float), and following methods :
a. getinput() to get input from the user
b. Deposit() method which takes the amount to be deposited in to his/her account
and do the calculation.
c. Withdraw() method which gets the amount to be withdrawn from his/her account.
Print the appropriate results.
2. Write a Java Program that does the following related to Inheritance:
a. Create an abstract class called Vehicle which contains the ‘year_of_manufacture’
data member and two abstract methods ‘getData()’ and ‘putData()’ with a
constructor.
b. Create two derived classes “TwoWheeler” and “FourWheeler” and implement the
abstract methods. Make “FourWheeler” as final class.
c. Create class ‘MyTwoWheeler’ which is a sub-class of “TwoWheeler” and
demonstrate the use of super keyword to initialize data members of
“MyTwoWheeler”.
3. Write a Java Program that does the following related to Packages and Interfaces , Exception
Handling:
a. Create an interface Student which gets the name and branch of a student.
b. Create a package called ‘StudentPackage’ which has a user-defined class
RegisterStudent.
c. If a student registers above 30 credits for the semester, the method should throw a
user-defined exception called ‘CreditLimit’ and display an appropriate message.
d. Create another package called ‘ResultPackage’ which displays the grade for the
subject registered for particular semester and if the CGPA is in invalid format
55 of 69
throw NumberFormatException also if CGPA is above 10 then throws an
InvalidCGPA user-defined exception.
e. Collect the marks of all the semesters and display the SGPA with minimum
calculation of 4 semesters.
StudentPackage:
4. Write a Program that simulates a telephone that records missed incoming calls. For each
missed call, store the time of call, telephone number of origin, and name of the called if the name
is available. For unlisted numbers, set the name to “private caller”. Choose or extend the most
appropriate collection class and provide the following features.
a) Numbers are recalled in the order they arrive
b) Up to 10 numbers are recorded. When the eleventh call comes in, it is stored and the
oldest call is deleted so that no more than 10 numbers are ever recorded.
c) After each number display, the user can select
a. to delete the call
b. to go on to the next missed call, or
c. to display the call details (number, caller name and time).
d) Delete the number if user specifies a number to delete.
Write a helper class to represent an incoming call with fields to hold the number, name of the
caller, and time of the call. Write a tester call that stores the several numbers, simulate the
user pressing the missed-calls button, and finally prints the entire collection of stored calls.
5. Write a program that uses Java Swing and JDBC to create a stand-alone application:
a. Create two tables namely, Representative (RepNo, RepName, State,
Comission, Rate) and Customer (CustNo, CustName, State, Credit_Limit,
RepNo) in MySQL database.
b. Use appropriate Swing components to insert values in a form.
c. Use another form to display Representative’s information whose Credit_Limit
is above 15,000.
6. Write a Java program to create a progress bar GUI which displays the copy status of writing
contents of one file to another file. Terminate the progress bar on click of STOP button and
display the contents of the file.
7. Create a Servlet to file IT returns that accepts personal information, salary information and
Tax deduction details from the user and write the information into a file. Also accept the name of
the person and display in on the page.
8. Write a JSP and Servlet Program to do the following to buy a T-Shirt online:
a. A set of checkboxes to select your T-Shirt accessories such as ‘belt’, ‘cap’, ‘hair-
band’ etc.
b. A text area / text field to enter your T-Shirt tag-line
56 of 69
c. A Radio-button that allows the user to choose between T-Shirt with chest pocket
and without.
d. A Combo Box to choose your T-Shirt color
e. Appropriate labels for these GUI Components
f. A Button called “Click Me” which when pressed will
g. Insert the details entered into a table called ‘TShirts’.
h. An OrderNo is generated by adding ‘1’ to the existing ‘OrderNo’
i. If ‘TShirts’ table is empty the initial value of ‘OrderNo’ is 100.
j. This ‘OrderNo’ is also inserted into the ‘TShirts’ table
k. Display all the records of the ‘TShirts’ table in tabular form
PS: Frontend display should be in JSP and the business logic should be written in Servlet
Class.
9. Create a Telephone Directory Application using Servlet that searches the database based on
phone number or name. Also show database table creation with inserting 2-3 values to the table.
a. Database Name: OnlineDirectory
b. Table Design:
i. Table Name: Telephone_Directory
ii. Attributes: Phone_Number, Name, Address, Company, Pin_Code.
10. Write a Java Program that creates two threads object of Thread class. Where one thread asks
the user to enter a number not less than four digits. Split the digits of the number and display in
words the value of the number. Ex: 1 – One. Second thread finding the number of vowels in a
word. Ex: JAVA – Vowel - A, Count – 2.
11. Write a program using JSP that helps a student to calculate the income tax on various annual
incomes that he will be earning when he gets a job.
Login.html will call dataCapture.jspthat should do the following:
Use Java Collections to make a list of valid users and facilitate user login functionality.
Give a personalized Welcome message and display today’s date.
Have a Text Entry with label ‘Name’ to enter the name of the user.
Give a List of Organizations to choose ‘Place of Work’
Provide a Male or Female option to choose the ‘Gender’
Have a Text Entry with label ‘Annual Income’
Give a Submit button reading ‘Calculate Tax’
CalculateTax.jspmust calculate the interest based on the following business rules:
Salary below 1,00,000 shall no have income-tax.
Calculate 15% of tax on 1,00,001 – 5,00,000.
Calculate 20% on 5,00,001 onwards.
57 of 69
The final income tax along with the details of how it is calculated must be put in a session
object and displayed to the user in dataCapture.jsp. All the income taxes calculated so far by
the user, must be taken out of the session object and displayed, each time in
dataCapture.jspwhich has a link called ‘Logout’ that destroys the session.
12. a. Create two tables Flight(Flight_Number, Airline_Name, Weekdays) and
SeatReservation(Flight_Number, Date, Seat_Number, Customer_Name, Customer_Phone) in
MySQL database.
b. Create JSP page ReserveOnline.jsp to reserve an airline seat and insert the values into the table
SeatReservation. OnClick of Submit in ViewDetails.jsp display information about reservation.
Validate the Flight_Number from already existing Flight database and generate random number
for Seat_Number within the range 1-500.
c. Also create a link to display information of all the flights running on a particular day.
Text books
3. Herbert Schildt, ‘The Complete Reference Java (J2SE 5 Edition)’, TATA McGRAW-
HILL Edition 2005.
4. Ivan Bayross, Sharanam Shah, CyntihaBayross and Vishali Shah, ‘Java EE 5 for
Beginners’, SPD (Sharoff Publishers & Distributors Pvt. Ltd.), 2nd edition August 2008.
COURSE OUTCOMES
The students will be able to
CO1: Design and Develop Java programs using the Java concepts such as packages,
inheritance, interfaces, exception handling, collection frameworks, Swings, Servlets, JSP,
JDBC and Multithreading.(PO- b,d)
CO2: Apply java concepts in various domains. (PO-d)
CO3. Produce a substantial written documentation. (PO-j)
58 of 69
FILE STRUCTURES
SubCode:IS62B1 Credit:4:0:0
Prerequisite:NIL
Course Coordinator: Sumana M
Contact Hours : 56
Course Objectives:
1. Explain the concepts of file structures and operations on files.
2. Manage files of records and organization of files.
3. Indexing for files, perform cosequential processing and sorting large files.
4. Perform indexing at multiple levels and maintain data in B-trees.
5. Create perform operations on B+ trees.
UNIT-1
INTRODUCTION: File Structures: The Heart of the file structure Design, A Short History of
File Structure Design, A Conceptual Toolkit; Fundamental File Operations: Physical Files and
Logical Files, Opening Files, Closing Files, Reading and Writing, Seeking, Special Characters,
The Unix Directory Structure, Physical devices and Logical Files, File-related Header Files,
UNIX file System Commands; Secondary Storage and System Software: Disks, Magnetic
Tape, Disk versus Tape; CD-ROM: Introduction, Physical Organization, Strengths and
Weaknesses; Storage as Hierarchy, A journey of a Byte, Buffer Management, Input /Output
in UNIX.
FUNDAMENTAL FILE STRUCTURE CONCEPTS: Field and Record Organization, Using
Classes to Manipulate Buffers, Using Inheritance for Record Buffer Classes, Managing Fixed
Length, Fixed Field Buffers, An Object-Oriented Class for Record Files
UNIT-II
MANAGING FILES OF RECORDSRecord Access, More about Record Structures,
Encapsulating Record Operations in a Single Class, File Access and File Organization.
ORGANIZATION OF FILES FOR PERFORMANCE: Data Compression, Reclaiming Space
in files, Internal Sorting and Binary Searching, Keysorting;
UNIT -III
INDEXING What is an Index? A Simple Index for Entry-Sequenced File, Using Template
Classes in C++ for Object I/O, Object-Oriented support for Indexed, Entry-Sequenced Files
of Data Objects, Indexes that are too large to hold in Memory, Indexing to provide access
by Multiple keys, Retrieval Using Combinations of Secondary Keys, Improving the
Secondary Index structure: Inverted Lists, Selective indexes, Binding.
COSEQUENTIAL PROCESSING AND THE SORTING OF LARGE FILES: A Model for
Implementing Cosequential Processes, Application of the Model to a General Ledger
Program, Extension of the Model to include Mutiway Merging, A Second Look at Sorting in
Memory, Merging as a Way of Sorting Large Files on Disk.
59 of 69
UNIT-IV
MULTI-LEVEL INDEXING AND B-TREES: The invention of B-Tree, Statement of the
problem, Indexing with Binary Search Trees; Multi-Level Indexing, B-Trees, Example of
Creating a B-Tree, An Object-Oriented Representation of B-Trees, B-Tree Methods;
Nomenclature, Formal Definition of B-Tree Properties, Worst-case Search Depth, Deletion,
Merging and Redistribution, Redistribution during insertion; B* Trees, Buffering of pages;
Virtual B-Trees; Variable-length Records and keys.
Unit-V
INDEXED SEQUENTIAL FILE ACCESS AND PREFIX B + TREES: Indexed Sequential
Access, Maintaining a Sequence Set, Adding a Simple Index to the Sequence Set, The
Content of the Index: Separators Instead of Keys, The Simple Prefix B+ Tree and its
maintenance, Index Set Block Size, Internal Structure of Index Set Blocks: A Variable-order
B- Tree, Loading a Simple Prefix B+ Trees, B-Trees, B+ Trees and Simple Prefix B+ Trees in
Perspective.
HASHING: Introduction, A Simple Hashing Algorithm, Hashing Functions and Record
Distribution, How much Extra Memory should be used?, Collision resolution by progressive
overflow, Buckets, Making deletions, Other collision resolution techniques, Patterns of
record access.
TextBooks:
1. File Structures-An Object Oriented Approach with C++ - Michael J. Folk, Bill
Zoellick, Greg Riccardi, 3rdEdition, Addison-Wesley, 1998.
2. File Structures Using C++ - K.R. Venugopal, K.G. Srinivas, P.M. Krishnaraj, Tata
McGraw-Hill, 2008.
ReferenceBooks:
1. C++ Components and Algorithms - Scot Robert Ladd, BPB Publications, 1993.
Course outcomes:
The students will be able to
CO1: Describe the basic concepts of files and file operations. (PO a, PO b, PO d, PO i)
CO2: Design simple file management and analyze the performance of file organization. (PO
a, PO b, PO d, PO i, PO l)
CO3: Perform indexing, consequential processing and sorting of large files. (PO a, PO b, PO
d, PO i, PO l)
CO4: Design B-Trees and perform multilevel indexing. (PO a, PO b, PO d, PO i, PO l)
CO5: Perform hashing and design operation on B+ Trees. (PO a, PO b, PO d, PO i, PO l)
60 of 69
DISTRIBUTED STORAGE TECHNOLOGIES
Course Code : IS62B2 Credits : 4:0:0
Prerequisites: Data Communications Contact Hours : 56
Course coordinator(s): George Philip C
Course Objectives:
1. Provide a comprehensive view of storage architectures, and the logical and
physical components of storage infrastructure including storage subsystems
2. Discuss RAID and intelligent storage systems
3. Discuss storage networking technologies such as FC SAN, IP SAN, and FCoE
4. Discuss NAS, object-based and unified storage
5. Discuss business continuity, cloud computing, storage security, storage
monitoring and management activities
Course Contents:
UNIT I
Introduction: Information Storage, Evolution of Storage Architecture, Data Centre
Infrastructure, Virtualization and Cloud Computing.
Data Centre Environment: Application, DBMS, Host, Connectivity, Storage, Disk Drive
Components, Disk Drive Performance, Host Access to Data, Direct-Attached Storage,
Storage Design Based on Application, Disk Native Command Queuing, Introduction to Flash
Drives.
UNIT II
Data Protection: RAID Implementation Methods, Array Components, Techniques, Levels,
Impact on Disk Performance, Comparison, Hot Spares.
Intelligent Storage System: Components, Storage Provisioning, Types.
UNIT III
Fibre Channel Storage Area Networks: FC Overview, Evolution, Components, FC
Connectivity, Ports, FC Architecture, Fabric Services, Login Types, Zoning, FC Topologies,
Virtualization in SAN.
IP SAN and FCoE: iSCSI, FCIP, FCoE.
UNIT IV
Network-Attached Storage: Benefits, Components, NAS I/O Operation, Implementations,
File Sharing Protocols, Factors Affecting NAS Performance, File-Level Virtualization.
Object Based and Unified Storage: Object Based Storage Devices, Content Addressed
Storage, CAS Use Cases, Unified Storage.
UNIT V
Business Continuity: Information Availability, Terminology, Planning Lifecycle, Failure
Analysis, Impact Analysis, Solutions.
Cloud Computing: Cloud Enabling Technologies, Characteristics, Benefits, Service Models,
Deployment Models, Infrastructure, Challenges, Adoption Considerations.
Securing the Storage Infrastructure: Framework, Risk Triad, Domains
Managing the Storage Infrastructure: Monitoring, Management Activities, Management
Challenges, Information Lifecycle Management, Storage Tiering.
61 of 69
Text Book:
1. Somasundaram G., AlokShrivastava, (EMC Education Services); Information Storage and
Management, 2e, Wiley India, 2012, ISBN 9788126537501.
Reference Books:
1. Robert Spalding; Storage Networks: The Complete Reference, Tata McGraw Hill, 2003.
Course Outcomes:
The students will be able to
CO1: The ability to describe storage architectures, and the logical and physical components
of storage infrastructure including storage subsystems. (PO a, PO b, PO e, PO i, PO j, PO l)
CO2: The ability to describe RAID and intelligent storage systems. (PO a, PO b)
CO3: The ability to illustrate storage networking technologies such as FC SAN, IP SAN, and
FCoE. (PO- a)
CO4: The ability to describe NAS, object-based and unified storage. (PO a)
CO5: The ability to explain business continuity, storage security, storage monitoring and
management activities. (PO a, PO c, PO f, PO g)
62 of 69
COMPILER DESIGN
Course Code : IS62B3 Credits : 4:0:0
Prerequisites: NIL Contact Hours : 56
Course coordinator(s): Myna AN
Course Objectives:
1. Provide an insight of fundamental principles of designing compilers
2. Discuss the various phases of compiler design
3. Provide the skills needed for building compilers
Course Contents:
UNIT 1
Overview of compilation The Structure of a Compiler and Applications of Compiler
Technology Lexical Analysis The Role of a Lexical Analyzer, Specification of Tokens,
Recognition of Tokens, Hand-Written Lexical Analyzers, LEX, Examples of LEX
Programs.
UNIT II
Introduction to Syntax Analysis Role of a Parser, Use of Context-Free Grammars
(CFG) in the Specification of the Syntax of Programming Languages, Techniques for
Writing Grammars for Programming Languages (Removal Left Recursion), Non-Context-Free
Constructs In Programming Languages, Parse Trees and Ambiguity, Examples of
Programming Language Grammars. Top‐down parsing FIRST and FOLLOW sets, LL(1)
Conditions, Predictive Parsing, Recursive-Descent Parsing, Error Recovery.
UNIT III
LR-Parsing Handle pruning, Shift-Reduce Parsing, Viable Prefixes, Valid Items, LR(0)
Automaton, LR-Parsing Algorithm, SLR(1), LR(1), and LALR(1) Parsing. YACC, Error
Recovery with YACC and Examples of YACC specifications. Syntax-directed
definitions (Attribute Grammars) Synthesized and Inherited Attributes, Examples of
SDDs, Evaluation Orders for Attributes of an SDD, Dependency Graphs, S-Attributed
and L-attributed SDDs and their Implementation using LR-parsers and Recursive-
Descent Parsers respectively.
UNIT IV
Semantic Analysis Symbol Tables and their Data Structures. Representation Of
“Scope”. Semantic Analysis of Expressions, Assignment and Control-flow Statements,
Declarations of Variables and Functions, Function Calls using S-and L-attributed SDDs
(treatment Of arrays and structures included). Semantic Error Recovery.
Intermediate code generation Different Intermediate Representations – Quadruples,
Triples, Trees, Flow Graphs, SSA Forms and their uses. Translation of Expressions
63 of 69
(including array references with subscripts) and Assignment Statements. Translation of
Control-Flow Statements–if-then-else, while-do, and switch. Short-circuit code and
control-flow translation of Boolean Expressions. Backpatching. Examples to illustrate
Intermediate Code Generation for all constructs.
UNIT V
Run‐time environments Stack Allocation of Space and Activation Records. Access
to Non‐Local Data on the Stack in the Case of Procedures with and without nesting
of procedures Introduction to Machine Code Generation and Optimization Simple
Machine Code Generation, Examples of Machine-Independent Code Optimizations.
Text Book:
1. A.V. Aho, Monica Lam, Ravi Sethi, and J.D. Ullman, Compilers: Principles, Techniques,
and Tools (2nd ed.), Addison-Wesley, 2007
2. K.D. Cooper, and Linda Torczon, Engineering a Compiler, Morgan Kaufmann, 2004.
Reference Books:
1. K.C. Louden, Compiler Construction: Principles and Practice, Cengage Learning, 1997.
2. D. Brown, J. Levine, and T. Mason, LEX and YACC, O’Reilly Media, 1992.
Course Outcomes:
The students will be able to
CO1: Implement lexical analysis phase of the compiler. (PO a, PO b)
CO2: Understand the syntax analysis phase. (PO b)
CO3: Implement Parsing using YACC. (PO d)
CO4: Understand Semantic Analysis and Intermediate code generation phase. (PO b)
CO5: Gain knowledge on Machine code generation phase. (PO b)
64 of 69
BIOINFORMATICS
Course Code : IS62C3 Credits : 4:0:0
Prerequisites: NIL Contact Hours : 56
Course coordinator(s): Shashidhara H S
Course objectives:
1. Study computational techniques for biological data analysis
2. Apply and improve those computational techniques on biological data
3. Study the different ways/techniques of analyzing biological data
4. Study the different ways of storing, retrieving and updating biological data
Course Contents:
Unit I
The genetic material, gene structure and information content, protein structure andfunction,
chemical bonds, molecular biology tools
Unit II
Dot plots, simple alignments, gaps, scoring matrices, the Needleman and Wunschalgorithm,
semiglobal alignments, the Smith and Waterman algorithm, databasesearches – BLAST and
FASTA
Unit III
Patterns of substitutions within genes, estimating substitution numbers, molecular
clocksMolecular phylogenetics, phylogenetic trees, distance matrix methods,
maximumlikelihood approaches
Unit IV
Parsimony, Inferred Ancestral Sequences, strategies for fast searches – branch andbound
and heuristic searches, consensus trees, tree confidence, molecular phylogeniesGenomics –
1: Prokaryotic genomes, prokaryotic gene structure, GC content andprokaryotic genomes,
prokaryotic gene density, eukaryotic genomes
Unit V
Genomics – 2: Eukaryotic gene structure Open reading frames, GC contents ineukaryotic
genomes, gene expression, transposition, repetitive elementsAmino acids, polypeptide
composition, secondary structure, tertiary and quaternarystructures, algorithms for
modeling protein folding
References:
· Dan E. Krane, Michael L. Raymer, Fundamental Concepts of Bioinformatics, Pearson
Education, 2008
· T K Attwood, D J Parry Smith, Introduction to Bioinformatics, Pearson Education,
2004
· Gary B. Fogel, David W. Corne, Evolutionary Computation in Bioinformatics, Morgan
Kaufmann Publishers.
65 of 69
Course outcomes:
Students will be able to:
CO1: Explain all the available molecular biology tools. (PO d)
CO2: Solve sequence alignment problems with/without gap penalty. (PO d, PO e)
CO3: Explain the pattern of substitution within genes. (PO b)
CO4: Distinguish between character based and distance based phylogeny. (PO a)
CO5: Identify different parts of prokaryotic and Eukaryotic Genes. (POa, PO b)
66 of 69
SOFTWARE TESTING
Course Code: IS62C4 Credits : 4:0:0
Prerequisites: NIL Contact Hours : 56
Course coordinator(s): Naresh. E
Course objectives:
Understand the basic definitions/concepts of software testing.
Analyze the concepts like verification and its techniques like Reviews, Walkthroughs,
and Inspections in the development of software.
Apply the concepts like validation and its techniques like black box testing and white
box testing.
Understand the different types of System testing like Performance testing, Security
testing, Load testing, Reliability testing, etc.
Design and Execution of Test Scenarios and Test Cases with the reports to track and
monitor the defects.
Course Contents:
Unit-I
A Perspective on Testing: Basic definitions, Test Scenarios, Test cases, Insights from a
Venn diagram, Identifying test cases, Error, fault and Failure taxonomies, Levels of testing,
Activities of Test engineer, Test/Debug life cycle, Testing principles, Testing throughout the
SDLC. Examples: Generalized pseudocode, the triangle problem, The NextDate function, the
commission problem, The SATM (Simple Automatic Teller Machine) problem, the currency
converter.
Unit-II
Static Testing: Reviews, Types of reviews, Inspections, Inspection process, Inspection
roles, benefits of inspection, Walkthroughs, Checklists. Structural Testing: Statement
coverage testing, Condition coverage testing, Path coverage, computing cyclomatic
complexity, exploratory testing.
Unit-III
Functional Testing: Boundary value analysis, Robustness testing, Worst-case testing,
Special value testing, Examples, Random testing, Equivalence classes, Equivalence test
cases for the triangle problem, NextDate function, and the commission problem, Guidelines
and observations. Decision tables, Test cases for the triangle problem, NextDate function,
and the commission problem, Guidelines and observations.
Unit-IV
Test Management and Automation: Introduction, Test Planning, Test Management, Test
Process, Test Reporting, Best Practices, Test Planning checklists, Test Plan template, Test
67 of 69
management activities for the triangle problem and SATM problem. What is Test
Automation? Terms used in Automation, Skills needed for automation, what to automate,
scope of automation, design and Architecture for automation, Process model for automation.
Unit-V
Test Metrics and Measurements: What are metrics and measurements? Why metrics in
Testing? Types of metrics: Product metrics, progress metrics, productivity metrics and
Release metrics, Case studies.
Text Books:
1. Paul C. Jorgensen, Software Testing, A Craftsman‟s Approach, 3rd Edition, Auerbach
Publications, 2008.
2. SrinivasanDesikan, Gopalaswamy Ramesh: Software testing Principles and Practices, 2nd
Edition, Pearson, 2007.
Reference Books:
1. Andreas Spillner, Tilo Linz, Hans Schaefer: Software Testing Foundations, 2nd Edition,
Shroff Publishers & Distributers Pvt ltd.
2. Rahul Shende, Testing in 30+ Open Source Tools, Shroff Publishers & Distributers Pvt ltd.
2010.
3. Aditya P Mathur,Foundations of Software Testing, Pearson, 2008.
Course Outcomes:
The students will be able to
CO1: Gain the knowledge of the basic definitions/concepts of software testing.(PO-a,b)
CO2: Analyze the concepts like verification and its techniques like Reviews, Walkthroughs,
and Inspections in the development of software.(PO-b,c)
CO3: Apply the concepts like validation and its techniques like black box testing and white
box testing.(PO-a,c)
CO4: Gain the knowledge Understand the different types of System testing like Performance
testing, Security testing, Load testing, Reliability testing, etc.(po-e)
CO5: Design and Execute Test Scenarios and Test Cases with the reports to track and
monitor the defects.(Po-c,d)
68 of 69
COMPUTER GRAPHICS
Course Code : IS62C5 Credits : 4:0:0
Prerequisites: NIL Contact Hours : 56
Course coordinator(s): Dr. Lingaraju G M
Course objectives:
This course provides principles & practices of computer graphics.
It helps in understanding graphics standards which helps in building graphics
packages and applications such as Animation, Virtual Reality & GUI.
To understand the fundamentals of computer graphics, such as architecture,
transformations. Viewing, rendering & Modeling.
To solve the real world complex problems such as Scientific Visualization through
mini projects.
To understand the Input & output devices to create new technology through project
based learning system.
Course Contents:
UNIT-I
Introduction: Applications of computer graphics, Elements of pictures created in computer
graphics, Graphics display devices, Device-independent programming and OpenGL.
UNIT-II
Basic raster graphics algorithms for drawing 2D primitives: Midpoint line & circle algorithm,
Scan-line polygon filling algorithm. Antialiasing. 2D geometric transformations and 2D
viewing: Basic transformations, Matrix representations and homogeneous coordinates,
Composite transformations, The viewing pipeline, window-to-viewport coordinate
transformation, clipping operations – Cohen-Sutherland line clipping, Liang-Barsky line
clipping & Sutherland-Hodgeman polygon clipping.
UNIT-III
3D concepts & 3D object representations: Polygon surfaces, Curved lines and surfaces,
quadric surfaces, Spline representations, Bezier curves and surfaces, B-spline curves and
surfaces.3D geometric transformations and 3D viewing: Translation, Rotation, Scaling,
Viewing pipeline, Viewing coordinates, Parallel projections & Perspective projections.
69 of 69
UNIT-IV
Solid Modeling, Achromatic and Colored light: Representing solids, Regularized Boolean set
operations, primitive instancing, Sweep representations, Boundary representations, Spatial-
partitioning representations, Constructive solid geometry, Comparison of representations,
User Interfaces for solid modeling. Achromatic light, Chromatic color, Color models for
raster graphics, Reproducing color, using color in computer graphics.
UNIT-V
Visible-surface detection methods: Classification, Back-face detection, Depth-buffer method,
Scan-line method, Depth-sorting method, BSP-tree method & Area-subdivision method,
Visible-surface ray tracing. Illumination and shading: Illumination models, Shading models
for polygons, Surface details, Shadows, Transparency.
Text Books:
1. Computer Graphics with OPENGL, Third Edition, Donald Hearn & M. Pauline Baker,
Pearson Education.
2. Principles of Interactive computer graphics, second edition, William M Newman &Robert
F. Sproull, McGraw-Hill International student edition.
Reference Books:
1. Computer Graphics, second Edition in C, James. D Foley, Andries Van Dam,Steven K
Feiner, John F Hughes, Kindle edition.
2. Computer Graphics: A Programming Approach by Steven Harrington, McGraw Hill
publications.
Course outcomes:
The students will be able to
CO1: Understand the conceptual model of Computer Graphics, and relate to applications of
CG to the real world problem.(PO-a,b)
CO2: Implement the existing algorithm to understand how computer graphics system
works.(PO-a,b,c)
CO3: Understand concepts of and techniques used in 3D computer graphics, including
viewing transformations, hierarchical modeling, color, lighting and texture
mapping.(PO-a,b,c)
CO4: Create GUI for software development. (PO- c)
CO5: Create and design innovative applications under project Based learning system.(PO-
a,b,c)