1
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:
The 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. The department started with UG programme with an annual sanctioned intake of 30 students and the intake was enhanced to 60 seats in the year 1991, to 90 seats in the year 2001 and then to 120 seats in the year 2008. The department started M.Tech in Software
Engineering in the year 2004. The department has been recognized as R&D center by VTU. The department has well equipped laboratories. Some of the laboratories have also been set up in collaboration with industries such as Intel, Apple, Honeywell, EMC 2 , Nokia Siemens and IBM. The 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. The department has been accredited by the NBA in 2001, 2004 & reaccredited in 2010. The department has successfully conducted seminars & workshops for students and academicians in the emerging technology.
2
Faculty List
Sl.No. Name of Faculty
1 Dr. Vijaya Kumar B P
2 Dr. Lingaraju G M
Qualification
M.Tech (IITR), Ph.D
(IISc.)
Ph.D
3 N Ramesh
4 Rajaram M Gowda
MTech
MTech. (Ph.D)
M.Tech, Ph.D (Anna
University) 5 Dr.Mydhili K Nair
6 Shashidhara H S
7 George Philip C
M.Tech. (Ph.D)
M.Tech.
8 Dr. Megha.P.Arakeri M.Tech, Ph.D (NITK)
9 Dr. Siddesh G M
10 T Tamilarasi
M.Tech., Ph.D
M.E (Ph.D)
11 Savita K Shetty
12 Myna A N
M.Tech.
M.Sc(Engg) , (Ph.D)
13 Deepthi K M.Tech.
14 Lincy Meera Mathews M.Tech (Ph.D)
15 P M Krishna Raj M.Sc(Engg), (Ph.D)
16 Rajeshwari S B
17 Prathima M N
18 Pushpalatha M N
19 Mohan Kumar S
20 Sumana M
B.E (M.Tech.)
M.E.
M.Tech (Ph.D)
M.Tech (Ph.D)
M.Tech (Ph.D)
M.Sc, (MSc(Engg.) by
Research) 21 Prashanth Kambli
22 Naresh E
23 Jagadeesh Sai D
24 Mani Sekhar S R
25 Suresh Kumar K R
26 Sunitha R S
27 Sandeep B L
28 Dayananda P
29 Koushik S
M.Tech, (Ph.D)
M.Tech.
M.Tech. (Ph.D)
M.Tech. (Ph.D)
M.Tech.
M.Tech. (Ph.D)
M.Tech, (Ph.D)
M.Tech. (Ph.D)
3
Designation
Professor & Head
Professor
Associate Professor
Associate Professor
Associate Professor
Associate Professor
Associate Professor
Associate Professor
Associate Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Assistant Professor
Vision and Mission of the Institute and the Department
The Vision of MSRIT : To evolve into an autonomous institution of international standing for imparting quality technical education
The Mission of the institute in pursuance of its Vision: 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”.
The 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
The 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
Institute Vision & Mission
Management
Parents
Industry
Vision &
Mission of the
Department
Alumni
Department
Faculty Periodic
Review 4
Students
Process of Deriving the PEOs of the programme
Institute Vision &
Mission
Department Vision &
Mission
Data Collection
Process
Student s
Parents Alumni Industry
PG faculty
Collect data
(Department Committee)
Deliberate, Analyze and summarize the data
(Board of Studies)
Academic Council &
Governing Council
Accept & Approve
PEOs
Programme Educational Objectives (PEOs) of the programme
PEO1: To build competent engineers with continuous professional advancement and learning in
Information Technology
PEO2: To make them design and develop computing systems using modern technologies that cater to societal and environmental needs
PEO3: To foster them to function effectively as professionals having good communication skills, leadership qualities with ethical and social commitment
5
Process of deriving the Programme Outcomes
POs describe 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 faulty, alumni and industry as shown in the figure below.
Input
Review
Review
Input
Process Employed to Define the POs.
PO’s of the program offered
PO1 Apply the knowledge of mathematics, science, engineering fundamentals and computing to solve information science and engineering related problems.
PO2 Identify, specify, formulate and analyze the computing problems using engineering knowledge reaching substantiated conclusions.
PO3 Design and develop solutions for computing problems considering the environmental and societal needs.
PO4 Design and conduct experiments, analyze the data and interpret the information and provide valid conclusion.
PO5 Develop and apply appropriate techniques, resources and modern software tools to solve real world information technology related problems within constraints applicable.
PO6 Apply reasoning along with the contextual knowledge to assess and provide computing solutions for societal issues.
PO7 Understand the impact of the information technology solutions in environmental context for sustainable development.
PO8 Ability to acquire, apply and commit to professional ethics.
PO9 Work individually and as a team member and/or as a leader in multidisciplinary environment.
PO10 Communicate effectively with respect to documentation and presentation with engineering community and society.
PO11 Apply the knowledge of the information science and engineering and management principles for cost effective management of projects in multidisciplinary areas.
PO12 Enhance the knowledge and upgrade the skills independently in the ever changing information technology environment.
6
Mapping of PEO’s and PO’s
The correlation between the Programme outcomes and Program Educational objectives are mapped in the Table shown below:
PEO
Correlation between the POs and the PEOs
PO
1
PO
2
PO
3
PO
4
Programme Outcomes
PO PO PO PO PO
5 6 7 8 9
To build competent engineers with continuous professional advancement and learning in
Information Technology
X
X X X X X X X
PO
10
PO
11
X
PO
12
To make them design and develop computing systems using modern technologies that cater to societal and environmental needs
X X X X X X X
To foster them to function effectively as professionals having good communication skills, leadership qualities with ethical and social commitment
X X X X X
Curriculum breakdown structure:
The curriculum of Information Science and Engineeering programme 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.
7
Breakup of Credits for BE Degree Curriculum. ( I to VIII Semester)
HSS BS ES PCS Profess Other Electives Project /
Semester ional
Electiv es
Seminar/
Internship
Total
Credits
I & II
III
IV
V
VI
06
02
02
20
4
4
0
0
24
19 0
23 0
19 4
15 8
0
0
0
0
0
0
0
0
50
23
27
25
25
VII
VIII
Total 10
0
0
14
0
4
4
28 24 90 20
3
01
04
4
20
24
25
25
200
HSS
BS
ES
PCS
Humanities and Social Sciences
Basic Sciences (Mathematics, Physics, Chemistry)
Professional Core Subjects
11
28
Engineering Sciences (Materials, Workshop, Drawing, Computers). 24
97
Prof. Ele Professional Electives, relevant to the chosen specialization branch 16
Other Ele Elective Subjects, from other technical and / or emerging subject Areas. 03
21 Project /
Seminar
Project Work, Seminar and / or Internship in industry or elsewhere.
Board of Studies
S.
Category Name of the Person with Official Address
No.
Status
Dr. Vijaya Kumar B P
Head of the Department
1
Head of the Department
Concerned
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,
Member
8
3
Experts in the subject from outside the
College, to be nominated by the
Academic Council
MSR Post, Bangalore – 560 054.
Dr. Siddesh G M
Associate Professor,
Dept. of Information Science & Engineering,
M.S. Ramaiah Institute of Technology,
MSR Post, Bangalore – 560 054.
P. M Krishna Raj
Asst. Professor
Dept. of Information Science & Engineering,
M.S. Ramaiah Institute of Technology,
MSR Post, Bangalore – 560 054.
Dr. Satish Babu
Professor & Head,
Dept. of Computer Science & Engineering
Siddaganga Institute of Technology
NH 206,B.H.Road, Tumkur,
Karnataka 572103.
Dr. Dilip Kumar
Professor & Head
University Visvesvaraya College of
Engineering (UVCE),
K R Circle, Dr Ambedkar Veedhi,
Bangalore
Karnataka 560001
Dr.Y.N. SRIKANT
Professor, Department of Computer Science and Automation,
Indian Institute of Science
Bangalore 560 012.
Madhu N. Belur
Department of Electrical Engineering
Indian Institute of Technology Bombay
Powai, Mumbai 400 076 India
Dr. Chetan Kumar S
Manager Software Development
CISCO System
Cessna Business Park,
Kadubeesanahalli Village,
Varthur Hobli, Sarjapur Marathalli,
Bangalore – 560 087
Member
Member
Autonomous
Institute
Member
Government
University
Member
VTU Member from IISc
Special
Invitee
Expert
Member from
Industry
9
Mr.Niranjan Salimath
Beaglesloft , 37/5, Ulsoor Rd, Yellappa
Chetty Layout, Sivanchetti Gardens,
Bengaluru, Karnataka 560042
Alumni
Member
10
Sl. No
1
2
3
4
5
6
7
8
9
Subject Code
IS511
IS512
IS512L
IS523
IS514
IS514L
IS515
IS515L
M S Ramaiah Institute of Technology,
(Autonomous Institute, Affiliated to VTU)
Department of Information Science & Engineering
Scheme of Teaching for Academic Year 2015-16 (2013-17 batch)
V Semester Bachelor of Engineering in Information Science and Engineering
Credits*
Subject
L T P
Data Communications
Microprocessors
Microprocessors Lab
Intellectual Property Rights
Operating System
Operating System Lab
Software Engineering
Software Engineering Lab
Elective A
4
0
4
Total 22
4
4
0
2
4
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
3
* L : Lecture
Elective A
IS52A1
IS52A2
IS52A3
T : Tutorial P
Digital Image Processing
Embedded Systems
System Software
: Practical
11
Total
04
04
01
02
04
01
04
01
04
25
Sl. No
1
2
3
4
5
6
7
8
9
Subject Code
IS611
IS611L
IS622
IS622L
IS623
IS624
IS624L
M S Ramaiah Institute of Technology,
(Autonomous Institute, Affiliated to VTU)
Department of Information Science & Engineering
Scheme of Teaching for Academic Year 2015-16 (2013-17 batch)
VI Semester Bachelor of Engineering in Information Science and Engineering
Subject
L T
Credits*
P
Computer Networks
4 0
0
Computer Networks Lab
0 0
1
Unix Programming
4 0
0
Unix Programming Lab
0 0
1
Management & Entrepreneurship
2 0
0
File Structures
4 0
0
File Structures Lab
0 0
1
Elective B
4 0
0
Elective C 0
Total
4
22
0
0 3
* L : Lecture
Elective B
IS62B1
T : Tutorial
Java and J2EE
P : Practical
Elective C
IS62C1 Web Technologies
IS62B2
IS62B3
Distributed Storage Technologies
Compiler Design
IS62C2
IS62C3
Internet of Things
Bioinformatics
04
01
04
04
25
Total
04
01
04
01
02
12
DATA COMMUNICATIONS
Credits : 4:0:0 Course Code : IS511
Prerequisite s: NIL
Course coordinator(s): Suresh Kumar K R
Course objectives:
Contact Hours : 56
1.
Introduce the students to the concept of Protocol Stacks (OSI & TCP/IP) and basic concepts related to data communication.
2.
Create awareness about the different techniques to digital data transmission.
3.
Familiarize the students to different strategies for error detection and correction.
4.
Make the students appreciate the need for multiple access and different techniques to achieve the same.
5.
Give conceptual understanding of different types of networks and connecting devices.
Course Contents:
UNIT I
Introduction : Data communications, Networks, The Internet, Protocols & standards, Network
Models: Layered tasks, The OSI model, Layers in the OSI model, TCP/IP Protocol suite,
Addressing, Data & Signals : Analog & Digital, Periodic Analog signals, Digital signals.
UNIT II
Transmission impairments, Data rate limits, Performance, Digital Transmission: Digital-to-Digital conversion - Line coding, Line coding schemes (unipolar, polar, bipolar), Analog-to-Digital conversion: PCM, Error detection & correction: Introduction, Block coding, Linear Block codes.
UNIT III
Cyclic codes – CRC, Polynomials, Checksum, Data link control: Framing, Flow & error control,
Protocols, Noiseless channels (Simplest Protocol, Stop-and-wait protocol), Noisy channels (Stopand-wait ARQ, Go-Back-N ARQ, Selective Repeat ARQ, Piggybacking).
UNIT IV
Multiple Access: Random Access, Controlled Access, Channelization, Wired LANs : IEEE standards, Standard Ethernet, Wireless LANs: IEEE 802.11 - Architecture, MAC sublayer,
Addressing mechanism.
UNIT V
Bluetooth -architecture, Bluetooth layers, Connecting LANs, Backbone Networks, & Virtual
LANs: Connecting devices, Backbone networks, Virtual LAN, Wireless WANS: Cellular telephony, Satellite Networks.
Text Books:
1.
Behrouz A. Forouzan, Data Communications and Networking, Fourth Edition, Tata McGraw-
Hill, 2006.
13
Reference Books:
1.
Alberto Leon-Garcia and Indra Widjaja, Communication Networks –Fundamental Concepts and
Key architectures, Second Edition, Tata McGraw-Hill, 2004.
2.
Wayne Tomasi, Introduction to Data Communications and Networking, Pearson Education,
2005.
Course Outcomes:
The students will be able to-
CO1: Distinguish different communication models / protocol stacks (OSI & TCP/IP) and solve problems on data transmission by measuring the performance parameters.
(POa)
CO2: Handle the problems associated with digital data and signals. (POa, POb)
CO3: Apply different error detection & correction strategies to solve errors induced during data communication. (POb, POc)
CO4: Use the different strategies of multiple access and achieve better network efficiency.
(POb, POd)
CO5: Illustrate the architecture and working of different types of network as well as identify the connecting devices to be used for different types of networks. (POa, POe)
14
Course Code: IS512
Prerequisites: NIL
MICROPROCESSORS
Credits: 4:0:0
Contact Hours: 56
Course coordinator(s): Mohan Kumar S
Course Objectives
1.
Learn how the software and hardware and components of a microprocessor-based system work
2.
Learn both hardware and software devices (such as memory and I/O interfaces) into microprocessor-based system.
3.
Introduce the concepts of ARM processor Architecture.
Course Contents:
UNIT I
The Architecture of 8086- Internal Block Diagram of 8086, The Execution Unit, Bus Interface Unit,
Addressing Modes,Programming Concepts 1 – The Assembly Process, Assembly for x86, Memory
Models, Instruction design.
UNIT II
Programming Concepts 2 – Approaches to Programming, Data Transfer Instructions, Branch instructions, Arithmetic Instructions, Logical Instructions, Shift and Rotate Instructions,
Programming Concepts 3 – String Instructions, Procedures and Macros, Number Format
Conversions, ASCII operations, Conversions for computations and Display/Entry, Signed Number
Arithmetic, Programming using High Level Language Constructs.
UNIT III
Programming Concepts 4 – Input/Output Programming, I/O Instructions, Modular Programming,
Programming in C with Assembly Modules, The Hardware Structure of 8086 – Pin configuration,
Clock, Other Processor Activities, maximum Mode, Instruction Cycle including Delay Loops
UNIT IV
Memory and I/O Decoding – Memory Device Pins, Memory Address Decoding, Memory Banks,
I/O Address Decoding, The Interrupt Structure of 8086 – Interrupts of 8086, Dedicated Interrupts of
8086, Software and Hardware Interrupts, Priority of Interrupts, BIOS 10H interrupts, Peripheral
Interfacing – Programmable Peripheral Interface – 8255A, modes of operation, Mode 0, Mode 1,
Mode 2, Interfacing Digital to Analog Converter, Stepper Motor, Logical Interface, Keypad, Seven
Segment Display and Elevator.
UNIT V
Introduction to Embedded Systems - The RISC Design Philosophy, ARM Design Philosophy,
Embedded System Hardware, Embedded System Software, ARM Processor Fundamentals –
Registers, Current Program Status Register, Pipeline, Exceptions, Interrupts, and the Vector Table,
Core Extensions, Architecture Revisions, Logical and Compare instruction set and Simple ARM
Programs. Development Process in Embedded Systems, The world of ARM.
15
Text Books
1.
Lyla B. Das, “The x86 Microprocessors – Architecture, Programming and Interfacing”, Pearson
Education, 2013
2.
Andrew Sloss, Dominic Symes, Chris Wright, “ARM System Developer's Guide -
Designing and Optimizing System Software”, Elsevier Publication 2012.
3.
Rob Toulson and Tim Wilmshurst “Fast and Effective embedded Systems Design” Elsevier publication 2012.
Reference Books
1.
Douglas V.Hall, “Microprocessors and Interfacing Programming and Hardware”, Tata McGraw
Hill, 2003.
2.
Barry B. Brey, “The Intel Microprocessors 8086/8088, 80186/80188, 80286, 80386 and 80486,
Pentium, Pentium Pro Processor, Pentium II, Pentium III Pentium 4 – Architecture,Programming and Interfacing, 7th Edition, PHI, 2008
Course outcomes
Students will be able to
CO1: Apply knowledge of mathematics, probability, and engineering in microprocessor based system design. (POa, POb)
CO2: Design and conduct experiments related to microprocessor based system design and to analyze their outcomes. (POa, POc, POd)
CO3: Design, debug and test microprocessor system. (POa, POc)
CO4: Formulate and test ARM processor system. (POb, POc)
CO5: Ability to engage in self-learning. (POa, POk, POm)
16
MICROPROCESSORS LAB
Course Code: IS512L
Prerequisites: NIL
Course coordinator(s): Mohan Kumar S
Credits: 0:0:1
Contact Hours: 28
Course Objectives
1.
Familiarize the architecture of 8086 processor, assembling language programming. Software programming using MASM tool or TASM tool.
2.
Implement 8086 interfacing with various modules.
3.
Design of ARM embedded systems, industrial and real time applications by knowing the concepts of microprocessor and embedded systems.
Course Contents:
Part A
1a. Write an ALP to search for a key in an array of bytes/words using Binary Search technique.
1b. Write an ALP to count and display number of 1’s in the input given using switches of a logical controller interface.
2a. Write an ALP to sort the given array of bytes/words using Bubble Sort technique.
2b. Write an ALP to implement i) Ring Counter ii) BCD up-down Counter using logic controller interface.
3a. Write an ALP to check if the input string matches the password stored earlier. After three attempts the system should stop responding to any further transactions.
3b. Write an ALP to rotate the stepper motor clockwise/anticlockwise or in both directions by x degrees [x will be specified at the time of experiment].
4a. Write an ALP to reverse a given string and check if it is palindrome with/without using string instructions.
4b. Write an ALP to generate half rectified/full rectified wave using DAC interface.
5a. Write an ALP to find the factorial of a number using recursive procedure.
5b. Write an ALP to generate sine wave using DAC interface.
6a. Write an ALP to display ‘X’ at the center of the screen with the specific attributes
[Attributes will be specified at the time of experiment].
6b. Write an ALP to store row number, column number and scan code of key pressed in
Keypad interface.
7a. Write an ALP to generate first n Fibonacci numbers.
7b. Write an ALP to implement a simple calculator for add/subtract operations using Keypad interface.
8a. Write an ALP to display system time.
17
8b. Write an ALP to display FIRE and HELP alternatively n number of times on seven segment display interface.
9a. Write an ALP to display decimal counter to count from 00-99 at the center of the screen.
9b. Write an ALP to display n character message on seven segment display in a rolling fashion.
10a. Write an ALP to open, read and close a file. Display the contents of the file on screen.
10b. Write an ALP to move the elevator to the first request floor and bring it back to ground floor.
The elevator need not respond to the intermediate requests in both directions.
Part B using ARMSIm1.9.1 Tool
1.
Write a ARM program to Add two 16 bit numbers
2.
Write a ARM program to search for a key in an array using any search technique.
3.
Write a ARM program to display character from 0-9
4.
Design and develop basic calculator using ARMSim191 Tool
Course Outcomes
Students will be able to
C01: Analyze and apply working of 8086. (POb, POd)
CO2: Compare the various interface techniques. Analyze and apply the working of 8255, 8279, ICs and design and develop the programs. Various interfacing models. (POa, POb, POd)
C03: Learning the Communication Standards ARM embedded programming using ARMsim Tool and Cortex Board.
(POa, POl)
18
INTELLECTUAL PROPERTY RIGHTS
Subject Code: IS523
Prerequisite: NIL
Credits: 2:0:0
Contact Hours : 28
Course Coordinator: Lincy Mathews
Course Objectives
1. To introduce the role and importance of Intellectual properly rights in the field of information
technology
2. To understand the concepts of patents, trademarks and copyrights.
3. To introduce the procedure for obtaining patents, trademarks and copyright.
Course Contents:
UNIT-1
History of IPR-GATT,WTO,WIPO & TRIPs, Role of IPR in Research & Development &
Knowledge era, Legislations Covering IPRS in INDIA, Different forms of IPR – copyright, trade mark, Industrial Designs, Layout designs of Integrated circuits, Patents, Geographical Indications,
Traditional Knowledge, Plant varieties, Trade secrets.
UNIT -2
Introduction : Patent – A form of property, principles underlying the Patent Law in India.
Protectable Subject matter : Inventions which are not patentable under the act, Patent addition,
Term of patents of addition. Procedure for obtaining Patent . Provisional and complete
Specification : Specification, Kinds of specification. Rights Conferred to Patentee .
UNIT-3
Introduction : Meaning of Trademark, the Functions of a Trademark, Essentials of a Trademark,
Trademark Law in India.
Principles of Registration of Trademark. Rights conferred by registration of Trademark.
UNIT-4
Introduction : Meaning of copyright, Characteristics of copyrights, Indian Copyright Law. Main features of Copyright Act 1957. Requirements of copyrights, Copyright is protection in form and not in idea. Works in which copyright subsists. Authorship and ownership of copyright. Rights conferred by copyright. Term of copyright.
UNIT-5
IPR in the Field of Information Technology
Introduction, Justification, 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 .
19
Text Books:
1.
Dr. B. L. Wadhera, Law Relating to Intellectual Property, Universal law Publishing Co. Ltd.
2009.
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:
C01: Identify the principle of intellectual property Rights and its importance in the field of
information technology ( po-h)
C02: Analyze the important of patentee trademarks and copyright (po-h)
C03: Describe the procedure for obtaining patent, registering a trademarks and owning copyrights
(po-h)
20
OPERATING SYSTEMS
Course Code : IS514
Prerequisites: NIL
Credits : 4:0:0
Contact Hours : 56
Course coordinator: Dr. Megha P Arakeri
Course objectives:
1.
Introduce various concepts of operating system
2.
Understand Process synchronization and deadlock by the operating systems
3.
Explore he memory management function of operating system
4.
Realize the role of operating system in file management.
5.
Understand system protection and acquire knowledge on modern operating system.
Course Contents:
UNIT -1
Introduction: Operating System Structure, Operating System Operations, Process Management,
Memory Management, Storage Management, Protection and Security; Process Concept: Process
Scheduling, Operations on Processes, Interprocess Communication; Process Scheduling:
Scheduling Criteria, Scheduling Algorithms, Multiple-Processor Scheduling.
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.
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.
21
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, PO b, PO d)
CO2: Describe the various methods for accessing shared data and handling deadlocks.
(PO a, PO b, PO d)
CO3: Employ the techniques for memory management during process execution.
(PO a, PO b, PO d)
CO4: Describe the file system and secondary storage structure. (PO a, PO b, PO c, PO d)
CO5: Articulate the need for information protection mechanisms in OS and illustrate the working of modern operating system. (PO a, PO b, PO c, PO l)
22
OPERATING SYSTEMS LABORATORY
Course Code : IS514L
Prerequisites: NIL
Credits : 0:0:1
Contact Hours : 28
Course Coordinator: Sunitha R S
Course Objective:
1.
Implement the scheduling algorithms and analyze their performance.
2.
Implement the strategies used for concurrency management.
3.
Implement the various schemes used for memory management.
4.
Implement the different methods used for handling files.
5.
Implement the disk scheduling algorithms and assess their performance.
Course Contents:
Implement the following on UNIX/LINUX platform using any programming language:
1.
Write a program to illustrate the concept of Inter-Process communication using shared memory.
2.
Write a program to illustrate the process creation and termination.
3.
Implement First Come First Serve and Shortest Job First CPU Scheduling algorithms. Compare
their performance metrics in terms of average turnaround time and average waiting time.
4.
Implement the Priority and Round Robin CPU Scheduling algorithms.
5.
Implement producer-consumer problem using semaphores.
6.
Implement the Banker’s algorithm for multiple resources.
7.
Implement Paging and Segmentation schemes used for managing memory.
8.
Implement the FIRST FIT, BEST FIT & WORST FIT Memory management schemes.
9.
Implement the First in First Out and Least Recently Used page replacement algorithm.
Compare the algorithms based on the number of page faults.
10.
Write a program to implement the Linked File Allocation method.
11.
Write a program to illustrate Bit Vector Method of Free Space Allocation.
12.
Implement the First Come First Serve and Shortest Seek Time First disk scheduling algorithms.
Compare the disk scheduling algorithms based on the total head movement for a given cylinder numbers.
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.
23
Course Outcome:
Students will be able to:
CO1: Analyze the scheduling algorithms based on their performance metrics (PO a, PO d, PO l)
CO2: Manage concurrency with the tools like semaphores.
(PO a, PO d, PO l)
CO3: Manage main memory through the paging and segmentation schemes. (PO a, PO d, PO l)
CO4: Allocate files to the corresponding directories. (PO a, PO d, PO l)
CO5: Assess the performance of the disk scheduling algorithms. (PO a, PO d, PO l)
24
SOFTWARE ENGINEERING
Course Code : IS515
Prerequisites: NIL
Course coordinator(s): Naresh E
Credits : 4:0:0
Contact Hours :56
Course Objectives :
1.
Introduce basic concepts of software engineering and process models.
2.
Identify and analyze the software requirements for various problems.
3.
Explore various design concepts using UML.
4.
Apply the software testing concepts and design the test cases using validation techniques like black box testing and white box testing.
5.
Understand the project management and test management concepts.
Course Contents :
Unit – I
Introduction : Professional software development, Software engineering ethics, Case studies.
Software processes : Software process models, Process activities, coping with change, the rational unified process.
Agile software development : Agile methods, Plan-driven and agile development,
Extreme programming, Agile project management, Scaling agile methods.
Unit – II
Requirements engineering : Functional and non-functional requirements, The software requirements document, Requirements specification, Requirements engineering processes,
Requirements elicitation and analysis, Requirements validation, Requirements management and
Case studies.
Unit – III
Design and implementation : Object-oriented design using the UML (Including Class diagrams,
Use case diagrams, sequence diagrams, collaboration diagrams and activity diagrams),
Implementation issues, and open source development. Architectural design : Architectural design decisions, Architectural views, Architectural patterns, Application architectures. Case studies.
Unit – IV
Software testing : Basic definitions, Error, fault and Failure taxonomies, Levels of testing,
Activities of Test engineer, Test/Debug life cycle, testing principles. Structural Testing : Statement coverage testing, Condition coverage testing, Path coverage, computing cyclomatic complexity.
Functional Testing : Boundary value analysis, Robustness testing, Worst-case testing, Equivalence class testing, Decision table testing, Test cases for the Case studies : Triangle problem, NextDate function, Currency convertor problem and the commission problem.
Unit – V
Project management: Risk management, Managing people and Teamwork. Project planning :
Software pricing, Plan-driven development, Project scheduling, Agile planning, CPM/PERT. Test
Management and Automation : Introduction, Test Planning, Test Management, Test Reporting,
Best Practices, Test Planning checklists, Test Plan template. What is Test Automation? Terms used in Automation, Skills needed for automation and what to automate.Automation Tools.
Text Books :
1.
Ian Sommerville, Software Engineering, Ninth Edition, Person Education, 2007. (Unit-1,2,3 and part of unit-5).
25
2.
Paul C. Jorgensen, Software Testing, A Craftsman‟s Approach, 3rd Edition, Auerbach
Publications, 2008. (Unit-4).
3.
SrinivasanDesikan, Gopalaswamy Ramesh: Software testing Principles and Practices, 2nd
Edition, Pearson, 2007. (part of unit-5).
Reference Books :
1.
Roger.S.Pressman, Software Engineering-A Practitioners approach, 7e,McGraw-Hill, 2007.
2.
James Rumbaugh, Ivar Jacobson, and Grady Booch, “The Unifies Modeling Language
Reference manual”, 2e, Person Education publication, 2005.
3.
Shari Lawrence Pfleeger, Joanne M. Atlee, Software Engineering Theory and Practice, Third
Edition, Pearson Education, 2006.
Course outcomes :
The students will be able to
CO1: Gain knowledge of software development life cycle processes. (PO a)
CO2: Analyze and applies the different techniques to gather client/customer requirement.
(PO b)
CO3: Design and Develop Software using Object-oriented concepts and UML.
(PO c)
CO4: Test Software using conventional and object-oriented testing techniques and providesoftware quality assurance. (PO d)
CO5: Explain Project management and test management concepts. (PO e)
26
SOFTWARE ENGINEERING
Course Code: IS515L
Prerequisites: NIL
Course coordinator(s): Pushpalatha M N
Credits: 0: 0: 1
Contact Hours: 28
Course objectives:
1.
To identify, formulate, analyze, and solve problems, as well as identify the computing requirements appropriate to their solutions.
2.
Learn StarUML tool and draw different UML diagram for the real time application
3.
Design and Execution of Test cases and test Suites using Selenium
4.
Estimation of Test Coverage Metrics and Structural Complexity using automation tools
5.
Develop Time-line chart and project table using PERT or CPM project scheduling methods
Course Contents:
Laboratory: The Software Engineering Lab has been designed for students to be exposed to the following:
To Understand and realize the concepts of Software Engineering using the tools and case studies.
The students would be exposed to experiment with the following concepts:
1) Identifying and preparing the SRS document from Problem Statements.
2) Modeling using UML diagrams for the case studies. (Tool: StarUML)
Use Case Diagram
Sequence diagram
3) Modeling using UML diagrams for the case studies
Collaboration diagram
Class diagram
4) Estimation of Test Coverage Metrics and Structural Complexity using automation tools
5) Understand The Automation Testing Approach (Theory Concept)
6) Introduction and installation of Selenium IDE
7) Using Selenium IDE, Write a test suite containing minimum 4 test cases
8) Conduct a test suite for any two web sites
9) Design and Execution of Test cases and test Suites using Selenium
10) Install Selenium server and demonstrate it using a script in Java/PHP
11) Write and test a program to login a specific web page
12) Write and test a program to update 10 student records into table into Excel file
13) Develop Time-line chart and project table using PERT or CPM project scheduling methods
14) Reporting and Management of detected bugs through Bugzilla tool
27
Course Outcomes
Students will be able to:
CO1: To identify, formulate, analyze, and solve problems, as well as identify the computing requirements appropriate to their solutions. (PO b)
CO2: Designing the software for given requirement using StarUML (Use case, Sequence and
Collaboration diagram etc) (PO c, PO e)
CO3: Estimation Test Coverage Metrics and Structural Complexity using automation tools.
(PO a, PO e)
CO4: Design and Execution of Test cases and test Suites using Selenium IDE. (PO a, PO e)
CO5: Develop Time-line chart and project table using PERT or CPM project scheduling methods and Learning Bugzilla Bug repository tool. (PO a, PO e)
28
Course Code : IS52A1
Prerequisite s: NIL
Digital Image Processing
Course coordinator(s): Dr.Megha P Arakeri
Credits : 4:0:0
Contact Hours : 56
Course objectives:
1.
Introduce the principles of digital image processing.
2.
Explore the various image filtering techniques.
3.
Develop a theoretical foundation of Image segmentation and description.
4.
Understand object recognition and image compression methods.
5.
Explore color image processing and morphological operations.
Course Contents:
UNIT I
Introduction: Digital image processing, Imaging modalities, Fundamental steps in image processing, Applications of image processing. Digital Image Fundamentals: Visual perception,
Image sensing and acquisition, Sampling and quantization, Relationships between pixels.
UNIT II
Spatial Filtering: Intensity transformations, Histogram processing, Fundamentals of spatial filtering, Smoothing and sharpening spatial filters. Filtering in the Frequency Domain: DFT, FFT,
Image smoothing and sharpening in frequency domain filters.
UNIT III
Image Segmentation: Fundamentals, Edge detection, Thresholding, Region-based segmentation.
Representation and Description: Representation, Boundary descriptors, Region descriptors.
UNIT IV
Object Recognition: Patterns and pattern classes, Decision-theoretic methods, Structural methods.
Image Compression: Fundamentals, Compression methods.
UNIT V
Color Image Processing: Color models, Pseudo color image processing, Color transformations,
Smoothing and sharpening. 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.
29
Course Outcomes:
Students will be able to:
CO1: Acquire the fundamental concepts of a digital image processing. (PO a)
CO2: Employ the filtering, segmentation, description and compression techniques in processing the image. (PO a, PO b)
CO3: Understand the concept and need of color image processing and morphological operations.
(PO a, PO b)
CO4: Analyze a wide range of problems and provide solutions related to the design of image processing systems through suitable algorithms. (PO a, PO b, PO c)
CO5: Exhibit teamwork and communication skills through course projects. (PO c, PO i, PO j)
30
EMBEDDED COMPUTING SYSTEMS
Course Code : IS52A2
Prerequisites: NIL
Credits : 4:0:0
Contact Hours : 56
Course coordinator(s): N Ramesh
Course Objectives:
1.
1.
up a modern Embedded Computing System
2.
2.
applications
3.
3.
4.
4.
5.
5.
Course Contents:
UNIT I
Introduction to Embedded Systems:– Model of an Embedded System, Microprocessor vs.
Microcontroller, Example: A simple temperature monitor, Classification of MCUs, Current Trends.
MCU:- The processor, The Harvard Architecture, GPIO, Power on Reset, Brown Out Reset, Watch
Dog Timer, Real Time Clock, Memory Types, Low Power Design.
UNIT II
Elementary ideas of Sensors, ADCs, Actuators.
Buses and Protocols:- Elementary ideas of Parallel, I2C, SPI, USB, IEEE 1394, RS-232, RS-
422/RS-485, Ethernet, CAN, WLAN, ZigBee, Bluetooth.
UNIT III
Program Design and Analysis:- Components for Embedded Programs, Models of programs,
Compiler Optimizations, Program-level Performance Analysis, Software Performance
Optimization, Program-level Energy and Power Analysis and Optimization, Analysis and
Optimization of Program Size.
UNIT IV
Processes and Operating Systems:- Multiple Tasks and Processes, Multirate Systems, Preemptive
RTOS, Priority-Based Scheduling – Rate Monotonic Scheduling, Earliest Deadline First
Scheduling, Evaluating OS Performance, Power Management and Optimization for Processes.
UNIT V
Embedded Program Development, Integrated Development Environment, Compiler, Assembler,
Builder, Disassembly, Linker, Simulator, Downloading the Hex file, Hardware Simulator.
Hardware Software Co-Design, Embedded Product Development Lifecycle Management, Testing.
Embedded System Examples:- Mobile Phone, Automotive Electronics, RFID, WISENET, Robotics,
Biomedical Applications, BMI.
31
Text Books:
1.
Lyla B Das; Embedded Systems: An Integrated Approach, Pearson Education, 2013, ISBN:
9788131787663. (Unit I, II, V)
2.
Marilyn Wolf; Computers as Components: Principles of Embedded Computing System Design,
3e, Morgan Kaufmann, 2012, ISBN: 9780123884367 (Unit III, IV)
Reference Books:
1.
Peter Barry, Patrick Crowley; Modern Embedded Computing, 1e, Morgan Kaufmann, 2012,
ISBN: 9780123914903
2.
Lori M. Matassa, Max Domeika; Break Away with Intel Atom Processors – A Guide to
Architecture Migration, 1e, Intel Press, 2010, ISBN: 9781934053379
3.
Shibu K V; Introduction To Embedded Systems, 1e, MGH, 2009, ISBN: 978-0-07-014589-4
Course Outcomes:
Students will be able to:
CO1: Illustrate the model of an Embedded System and identify the components that make up a modern Embedded Computing System. (PO a)
CO2: Interpret the function of Sensors, ADCs, and Actuators; identify buses and protocols for specific applications. (PO a)
CO3: Analyze embedded system programs for performance issues; identify and apply optimization techniques. (PO a, PO b, PO g)
CO4: Identify real-time embedded system requirements and its implications in the design of
RTOS. (PO a, PO b, PO c, PO d, PO g, PO j)
CO5: Explain the Embedded System Development process and identify example embedded systems. (PO a, PO e)
32
SYSTEM SOFTWARE
Sub Code: IS52A3
Prerequisite: NIL
Course Coordinator: Rajeshwari S B
Course Objectives
Credits: 4:0:0
Total Hours: 56
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 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.
33
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, 3 rd
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)
34
COMPUTER NETWORKS
Course Code : IS611
Prerequisite s: NIL
Credits : 4:0:0
Contact Hours : 56
Course coordinator(s): Suresh Kumar K R
Course objectives:
1.
Make the students appreciate the need and techniques for transitioning from IPV4 to IPV6.
2.
Give conceptual understanding of Address Mapping, Error Reporting & unicast routing.
3.
Introduce the students to different transport layer protocols and multicast routing.
4.
Make the students analyze different techniques to improve QOS and introduce them to the concept of domain name system.
5.
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 - Address mapping, 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, SCTPservices, 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.
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.
Text Books:
1.
Behrouz A. Forouzan, Data Communications and Networking, Fourth Edition, Tata McGraw-
Hill, 2006.
35
Reference Books:
1.
Alberto Leon-Garcia and Indra Widjaja, 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 able to:
CO1: Identify and solve the problems associated with transition from IPV4 to IPV6.
(PO a, PO b, PO c)
CO2: Use different protocols to achieve Address mapping, Error reporting & unicast routing.
(PO a, PO b, PO c)
CO3: Paraphrase multicast routing and distinguish between different transport layer protocols.
(PO a, PO c, PO f)
CO4: Analyze different techniques to improve QoS and illustrate domain namespace resolution.
(PO a, PO b, PO c, PO d, PO f, PO g)
CO5: Describe the working of various application layer services like Remote login, E-mail, FTP,
SNMP and simple network management protocol. (PO c, PO j)
36
COMPUTER NETWORKS LAB
Course Code: IS611L
Prerequisites: NIL
Course coordinator(s): Suresh Kumar K R
Credits: 0:0:1
Contact Hours: 28
Course objectives:
1.
Design program for file transfer by introducing 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 techniques.
5.
Construct sample networks with different topologies and configurations.
6.
Analysis of the network behavior with respect to different parameters and conditions.
Course Contents:
PART A: Implement the following using C/C++:
1. Write a program to transfer the contents of a requested file from server to the client using TCP/IP
Sockets (using TCP/IP Socket programming).
2. Write a program to archive Traffic management at Flow level by implementing Leaky Bucket
Algorithm.
3. Write a program to implement dynamic routing strategy in finding optimal path for data transmission. (Bellman ford algorithm).
4. Write a program to implement Link State Routing (Dijkstra Algorithm).
5. Write a program for implementing the error detection technique while 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. Write a program to implement priority queuing as a technique to improve QoS.
PART B: Simulation Programs using NS-2
1. Simulate a 3 node point to point network with duplex links between them. Set the Queue size and vary the bandwidth and find the number of packets dropped.
2. Simulate a four-node point-to-point network, and connect the links as follows: n0->n2, n1->n2 and n2->n3. Apply TCP agent between n0-n3 and UDP between n1-n3. Apply relevant applications over TCP and UDP agents changing the parameter and determine the number of packets sent by
TCP/UDP
3. Simulate the different types of internet traffic such as FTP and TELNET over network and analyze the throughput.
37
Course outcomes:
The students will be able to
CO1: Demonstrate the file transfer using sockets (PO a, PO c, PO d)
CO2: Implement congestion control techniques and create an optimal routing table for a given network. (PO a, PO c, PO d)
CO3: Demonstrate error detection techniques and strategies to improve QoS. (PO a, PO c, PO d)
CO4: Simulate a sample network on a virtual screen. (PO a, PO b, PO c, PO d, PO e)
CO5: Analyze the network behavior against various parameters through simulation. (PO a, PO c,
PO d, PO e)
38
UNIX PROGRAMMING
Course Code : IS622
Prerequisite s: NIL
Credits :
Course Coordinator: N Ramesh
Course objectives:
Understand basics of unix and use unix commands
Develop and test unix shell scripts
Use and test unix system calls for file access and control, directory maintenance and process control
Understand, design and test stream editor SED instructions and use AWK filtering.
Develop and test PYTHON programs.
4:0:0
Contact Hours : 56
Course Contents:
UNIT I
History of UNIX, UNIX Architecture, Unix Commands- Directory, file, Protection and Security,
Communication, Information, Process management, I/O redirection & Piping and Filter Commands.
UNIT II
Shell scripts - A peek into shell activities and shell programming, shell working, echo command, special files, command substitution, shell variables, read statement, quoting, positional parameters and command line arguments, arithmetic in shell, exit status of a command, decision control structure, loop controls structures, set statement, shift statement, command grouping, dot (.) command.
UNIT III
File and Directories Maintenance - File Access Functions- open, creat, write, read, close functions, File controls- fcntl, lseek, stat, lstat, fstat, dup, ioctl Functions, Directory Maintenancechmod, chown, link, unlink, symlink, mkdir, rmdir, chdir, getcwd, access Functions. Process-
Process structure – exit () and _exit() , fork(), Wait(), vfork(), exec(),waitpid(), wait3() and wait4(), system() Function, Orphan Process, Zombies
UNIT IV
SED and AWK: sed: The stream editor, line addressing, using multiple instructions (-E and –F), context addressing, Writing selected lines to a file (w), text editing, substitution, Basic regular expressions revisited. AWK: simple awk filtering- splitting line into fields- printf- variaqbles and expressions- comparision operators- number processing - -f options – the BEGIN and END sections – built in variables- arrays – functions – control flow- looping
UNIT V
Python :
Welcome to python- Getting started – pythons- basics – objects – Numbers- sequences – Mapping and set typs – conditional and loops – files and input output – errors and exceptions – functions and functional programming – modules – object oriented progrramming
Text Books
39
1.Kumar Saurabh, UNIX Programming, The First Drive, Wiley-India Edition, 2008.
2.Sumitabha das, Unix Concepts and Applications, Fourth edition Tata McGraw Hill 2006
3.Wesley Chun, Core Python Programming (2nd Edition), PHI
Reference:
1 Behrouz A. Forouzan & Richard F.Gilberg, UNIX &Shell Programming, Fifth
Indian reprint 2008
Course Outcomes:
Student will be able to
CO1: Explain unix history and use unix commands. (PO a, PO b, PO l)
CO2: Design and test shell scripts. (PO a, PO b, PO i, PO k)
CO3: Understand and use unix system calls. (PO a, PO b, PO l)
CO4: Use stream editor and filter using awk. (PO a, PO c, PO d, PO e)
CO5: Develop and test PYTHON programs. (PO a, PO b, PO d, PO e, PO f)
40
Course Code : IS622L
Prerequisite s: NIL
UNIX PROGRAMMING LAB
Course Coordinator: T Tamilarasi
Credits : 0:0:1
Contact Hours : 28
Course Objectives:
1.
Understand and simulate the different types of unix command related to file, protection and security
2.
Develop shell programs using control structures, command substitution
3.
Explain the system calls used for different operating system task.
4.
Implementation of SED and AWK
5.
Develop programs using python programming
Course Contents:
1) Simulate all file related commands.
2) Simulate Protection and Security commands.
3) Simulate Process commands.
4) Simulate I/O Redirection and Piping related commands
5) Simulate the grep command
6) Write a shell programs using Command Substitution
7) Write a Shell Programs using Positional Parameters
8) Write a Shell program using Control structures and Looping structures
9) Write a Shell script using command line arguments
10) Write a Shell script using set and shift commands
11) Write a C program using Process system call(fork, exit)
12) Write a C program create a process and execute another program using exec system call
13) Write a C Program using File System call
14) Write a C program implement Orphan and Zombie process
15) Write a C Program using link system call
16) Using sed implement line addressing
17) Using sed implement context addressing
18) Using sed implement text editing and substitution
19) Using awk implement filtering commands
20) Implement array concept using awk
21) Implement function concepts using awk
22) Demonstrate the usage of looping concept in awk
23) Demonstrate the usage of string concept in python
24) Demonstrate control structures in python
25) Demonstrate file concept in python
26) Demonstrate Exception Handling in python
41
Course Outcomes:
The student 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: Demonstrate different types of SED addressing and AWK filtering. (PO a, PO C, PO e)
CO5: Develop python programs for string usage, file concept and exception handling.
(PO a, PO j, PO k)
42
MANAGEMENT AND ENTREPRENEURSHIP
Course Code : IS623
Prerequisite s: NIL
Credits : 2:0:0
Contact Hours : 28
Course coordinator(s): Myna A N
Course Objectives
1.
Provide an insight into management and various approaches used
2.
Describe the various functionalities of management
3.
Provide the knowledge and skills required to become an entrepreneur
4.
Discuss the process of setting up a small business
UNIT I
MANAGEMENT: Nature and Functions of Management-Importance, Definition, Functions,
Levels, Organizational or Business Functions, Roles of a Senior Manager, Managerial Skills,
Managerial Effectiveness, Management and Administration, Development of Management Thought
– Early Classical approaches, Neo Classical Approaches, Modern Approaches, PLANNING:
Nature, Importance, Types of plans (Definitions and Meaning only), Steps, Strategic Planning
Process, Limitations, Making Planning Effective, Planning Skills
UNIT II
DECISION MAKING : Meaning, Types, Steps, ORGANISATION: Meaning, Characteristics,
Typology, Process, Principles, COORDINATION: Distinction Between Coordination and
Cooperation, Distinction Between Coordination and Control, Need for Coordination, Requisites for
Excellent Coordination, Types of Coordination, Techniques, DIRECTION AND SUPERVISION:
Requirements of Effective Direction, Giving Orders, Motivation-Meaning, Nature, Motivation
UNIT III
COMMUNICATION: Importance, Purposes, Formal Communication, Forms of Communication,
Informal, Communication Process, Barriers to Communication, LEADERSHIP: Difference between a Leader and a Manager, Characteristics of Leadership, Functions of a Leader, Traditional
Approaches to Leadership, MANAGERIAL CONTROL: Steps in a Control Process, Need for
Control System, Benefits of Control, Essentials of Effective Control System
UNIT-IV
ENTREPRENEURSHIP: Importance, Concepts, Characteristics of a Successful Entrepreneur,
Classification of Entrepreneurs-Based on Functional Characteristics, Based on the Developmental
Angle, Based on types of Entrepreneurial Business, Entrepreneural Development Models
UNIT-V
SETTING UP A SMALL BUSINESS: Business Opportunities in Various Sectors, Formalities of
Setting a Small Business Enterprise - Flowchart, Selection of Project, Product of Service Selection,
Project Feasibility Study, Business Plan Preparation. Registration, Project Report Preparation,
Implement the Project and obtain Final Clearances. Strategic Management in Small Business:
Organization Life Cycle, Essence of Business Ethics, Case Studies
43
Text Books:
1. P.C. Tripathi, P.N.Reddy, Principles of Management, 5 th
Edition, Tata McGraw-Hill, 2012
2. Poornima M Charanthimath, Entrepreneurship Development Small business enterprises, Pearson
Education, 2008
Reference Books:
1.
2.
Ramesh B Rudani, Principles of Management, Tata McGrawHill, 2013
Robert Lusier, Management Fundamentals – Concepts, Application, Skill Development, 5 th
3.
Edition, Cengage Learning, 2012
S.S. Khanka, Entrepreneurial Development, S. Chand & Company Limited, 2012, ISBN
10: 8121918014 / ISBN 13: 9788121918015
Course Outcomes:
The students will be able to
CO1: Analyze the various approaches of management. (PO h, PO i, PO j)
CO2: Describe the techniques of decision making, coordinating and directing. (PO h, PO i, PO j)
CO3: Explain effective communication and leadership skills. (PO h, PO i, PO j)
CO4: Identify the skills required to become a successful entrepreneur. (PO h, PO i, PO j)
CO5: Demonstrate the formalities of setting up a small business. (PO h, PO i, PO j)
44
FILE STRUCTURES
Sub Code : IS624 Credit : 4:0:0
Prerequisite: NIL
Course Coordinator: Sumana M
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 I
Contact Hours : 56
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 RECORDS Record 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.
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
45
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.
Text Books:
1.
File Structures-An Object Oriented Approach with C++ Michael J. Folk, Bill Zoellick, Greg
Riccardi, 3 rd Edition, Addison-Wesley, 1998.
2. File Structures Using C++ K.R. Venugopal, K.G. Srinivas, P.M. Krishnaraj, Tata McGraw-
Hill, 2008.
Reference Books:
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)
46
FILE STRUCTURES LAB
Course code: IS624L Credits: 0:0:1
Pre-requisites: NIL Contact hours: 28
Course coordinator(s): Megha P Arakeri
Course objectives:
Students will apply the knowledge and develop skills required to work in the following areas:
1.
Operations on files and I/O redirection.
2.
Organizing fixed and variable length records in a file.
3.
Create an index for accessing large files.
4.
Reclaiming free space in files.
5.
Organizing files using B-tree, B
+
-tree and hashing.
1.
Course contents
Write a C++ program to read series of names, one per line, from standard input and write these names spelled in reverse order to the standard output using I/O redirection and pipes. Repeat the exercise using an input file specified by the user instead of the standard input and using an output file specified by the user instead of the standard output.
2.
Write a C++ program to read and write student objects with fixed-length records and the fields delimited by “|”. Implement pack ( ), unpack ( ), modify ( ) and search ( ) methods.
3.
Write a C++ program to read and write student objects with Variable - Length records using any suitable record structure. Implement pack ( ), unpack ( ), modify ( ) and search ( ) methods.
4.
Write a C++ program to write student objects with Variable - Length records using any suitable record structure and to read from this file a student record using RRN.
5.
Write a C++ program to implement simple index on primary key for a file of student objects.
Implement add ( ), search ( ), delete ( ) using the index.
6.
Write a C++ program to implement index on secondary key, the name, for a file of student objects. Implement add ( ), search ( ), delete ( ) using the secondary index.
7.
Write a C++ program to read two lists of names and then match the names in the two lists using
Cosequential Match based on a single loop. Output the names common to both the lists.
8.
Write a C++ program to read k Lists of names and merge them using k-way merge algorithm with k = 8.
9.
Write a C++ program to implement B-Tree for a given set of integers and its operations insert
( ) and search ( ). Display the tree.
10.
Write a C++ program to implement B+ tree for a given set of integers and its operations insert
( ), and search ( ). Display the tree.
47
11.
Write a C++ program to store and retrieve student data from file using hashing. Use any collision resolution technique.
12.
Write a C++ program to reclaim the free space resulting from the deletion of records using linked lists.
Text Book:
1.
File Structures-An Object Oriented Approach with C++ Michael J. Folk, Bill Zoellick, Greg
Riccardi, 3 rd
Edition, Addison-Wesley, 1998.
2. File Structures Using C++ K.R. Venugopal, K.G. Srinivas, P.M. Krishnaraj, Tata McGraw-
Hill, 2008.
Course outcomes:
Students will be able to:
CO1: Implementing different operations on a file. (PO a, PO d, PO e)
CO2: Designing fixed and variable length records. (PO a, PO d, PO e)
CO3: Implementing Index for a file based on primary and secondary key. (PO a, PO d, PO e)
CO4: Improving the performance by reclaiming the free space in files. (PO a, PO d, PO e)
CO5: Developing B-tree,B
+ tree and hashing to reduce the file access time.
(PO a, PO d, PO e)
48
JAVA and J2EE
Course Code
Prerequisite
: s:
IS62B1
NIL
Course coordinator(s): Mr Koushik S
Credits : 4:0:0
Contact Hours : 56
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.util Part 1: The Collections Framework: Collections Overview, The Collection Interfaces,
The Collection Classes: The ArrayList Class, LinkedList Class, HashSet Class.
Unit II java.util Part 1: The Collections Framework: Accessing a Collection via Iterator, Storing User-
Defined Classes in Collections, Working with Maps, Arrays, Why Generic Collections?
SWING: The Java Foundation Classes, JFC Technologies, Swing features, Swing Components,
Working with SWING, SWING basic containers, Buttons, Labels, Text Fields, Text Areas, Check
Boxes.
Unit III
SWING: JApplet, Combo Box, Event Handling, Progress Bars.
Introduction to Java Server Pages: JSP v/s Servlets, Life cycle of a JSP Page.
Getting started with JSP: JSP Elements, A Sample JSP Page.
Java Server Pages Document: Directives, Scripting Elements, A Sample JSP Document.
Unit IV
Action elements of JSP: Including other files, forwarding JSP page to another page, passing parameters for other actions .
49
Working with Databases: 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 life cycle, The main Thread, Creating the thread, Extending the thread class.
Remote Method Invocation: What is a distributed Operating System?, Distributed Object
Technologies, RMI for Distributed Computing, RMI Architecture, RMI Registry Service, Creating
RMI Applications, Steps involved in running the RMI Application incase the server application and the client application is run in the same machine, Removing Objects from a registry.
Text books
1.
Herbert Schildt, ‘The Complete Reference Java (J2SE 5 Edition)’, TATA McGRAW-HILL
Edition 2005.
2.
Ivan Bayross, Sharanam Shah, Cyntiha Bayross and Vishali Shah, ‘Java EE 5 for Beginners’,
SPD (Sharoff Publishers & Distributors Pvt. Ltd.), 2 nd
edition August 2008.
References
Jim Keogh, ‘The Complete Reference J2EE’, TATA McGRAW-HILL Edition 2002.
B V Kumar, S Sangeetha, S V Subrahmanya, J2EE Architecture, TATA McGRAW-HILL Edition
2007.
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)
50
Distributed Storage Technologies
Course Code : IS62B2
Prerequisites: NIL
Credits : 4:0:0
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.
51
Text Book:
1.
Somasundaram G., Alok Shrivastava, (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)
52
COMPILER DESIGN
Course Code : IS62B3
Prerequisites: NIL
Credits : 4:0:0
Contact Hours : 56
Course coordinator(s): Myna A N
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 I
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 (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.
53
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)
54
Course code: IS62C1
Pre requisites: Nil
WEB TECHNOLOGIES
credits: 4:0:0
contact hours: 56
Subject Coordinator: Jagadeesh Sai D
Course objectives:
1.
Identify a valid standards-conformant HTML document involving a variety of element types, including hyperlinks, images, lists, tables, and forms using CSS.
2.
Analyze how Jquery used to create interactive web pages with different scripting languages by using its features.
3.
Implement on the ruby environment to handle the process the structural data.
4.
Design simple web applications using rails framework.
5.
Create simple AJAX web applications using the Rails framework
Course contents:
UNIT I
HTML5: HTML5 Basics, HTML5 Syntax ,New HTML5 Elements, Times and Dates, Browser
Support, Semantic Formatting , New Input Types and Attributes, New Form Elements and
Attributes, Playing Audio, Playing Video, The Canvas, Other HTML5 Technologies.
Unit 2
JQuery: Introduction, What JQuery Does, Functions, Selecting Elements, Useful predefine Jquery functions, Formatting Elements, Add Page Elements, Adding Events.
Unit 3
Ruby: Introduction, identifiers, and comments, strings, array, hashes, rangers, classes, methods, proc and blocks, control structures and iterations, exception handling, modules.
Unit 4
Rails: introduction to rails, active record, action controller, action view, commands, rails routes, style sheets, helpers, layouts, partials.
Unit 5
AXAX on Rails: introduction, overview of ajax, support for ajax in rails, creating database table, processing a request, processing a response.
Text Books:
1.
Deepak vohra:Ruby on Rails for PHP and Java developers springer 2012.
Reference Books:
1.
M. Deitel, P.J. Deitel, A. B. Goldberg: Internet & World Wide Web How to H program, 4th
Edition, Pearson education, 2011.
2.
Joyce Farrell, Xue Bai, Michael Ekedahl: The Web Warrior Guide to Web Programming, First edition, Thomson, 2010.
55
Course outcomes:
Students will be able to:
CO1: Demonstrate the ability to use the World Wide Web and understand how Web pages are designed and created using XHTML and CSS. (PO a, PO b)
CO2: Design and develop JQuery features for efficient data handling in Web. (PO a, PO b, PO c,
PO e, PO l)
CO3: Implement and apply ruby programming to process structural data. (PO a, PO c)
CO4: Apply MVC design pattern to write database-backed Web Applications using the Ruby on
Rails Framework. (PO a, PO b, POc)
CO5: Design a simple Ajax application with rails framework. (PO d, POf)
56
INTERNET OF THINGS
Course Code : IS62C2
Prerequisite s: NIL
Course coordinator(s): Siddesh G M
Course objectives:
1.
Study physical and logical design issues of IoT
2.
Identify different domains of IoT
3.
Analyze different design methodology and devices specific to IoT
4.
Understand different cloud offering of IoT
5.
Illustration of different case studies of IoT
6.
Understand data analytical techniques for IoT
Course Contents:
UNIT I
Credits : 4:0:0
Contact Hours : 56L
Introduction to Internet of Things: Definition & Characteristics of IoT, Physical Design of IoT,
Logical Design of IoT, IoT Enabling Technologies, IoT Levels & Deployment Templates. Domain
Specific IoTs: Home Automation, Cities, Environment, Energy, retail, Logistics, Agriculture,
Industry, Health & Lifestyle.
UNIT II
IoT Platforms Design Methodology: IoT Design Methodology, Case Study on IoT System for
Weather Monitoring. IoT Physical Devices & Endpoints: What is an IoT Device, Exemplary
Device: Raspberry Pi, Programming Raspberry Pi with Python, Other IoT Devices.
UNIT III
IoT Physical Servers & Cloud Offerings: Python Web Application Framework – Django,
Designing a RESTful Web API, Amazon Web Services for IoT,
UNIT IV
Case Studies Illustrating IoT Design: Home Automation, Cities, Environment, Agriculture
UNIT V
Data Analytics for IoT: Using Hadoop MapReduce for Batch Data Analysis, Apache Oozie,
Apache Spark, Apache Storm, Using Apache Storm for Real-time Data Analysis, Structural Health
Monitoring Case Study.
References:
Bahga, Arshdeep, and Vijay Madisetti. Internet of Things: A Hands-on Approach . VPT, 2014.
Internet Resources
Course outcomes:
Students will be able to:
CO1 : Explain different design issues and domains of IoT. (PO a, PO b)
CO2 : Identify different design methodologies and end point devices of IoT. (PO a, PO b)
CO3 : Distinguish different cloud based solution for IoT. (PO a, PO b, PO d)
CO4 : Understand different case studies related to IoT framework. (PO a, PO b, PO g)
CO5: Solve data analytical problems on IoT. (PO b, PO e)
57
BIOINFORMATICS
Course Code : IS62C3
Prerequisite s: NIL
Course coordinator(s): Shashidhara H S
Credits : 4:0:0
Contact Hours : 56
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 and function, chemical bonds, molecular biology tools
Unit II
Dot plots, simple alignments, gaps, scoring matrices, the Needleman and Wunsch algorithm, semiglobal alignments, the Smith and Waterman algorithm, database searches – BLAST and
FASTA
Unit III
Patterns of substitutions within genes, estimating substitution numbers, molecular clocks Molecular phylogenetics, phylogenetic trees, distance matrix methods, maximum likelihood approaches
Unit IV
Parsimony, Inferred Ancestral Sequences, strategies for fast searches – branch and bound and heuristic searches, consensus trees, tree confidence, molecular phylogenies Genomics – 1:
Prokaryotic genomes, prokaryotic gene structure, GC content and prokaryotic genomes, prokaryotic gene density, eukaryotic genomes
Unit V
Genomics – 2: Eukaryotic gene structure Open reading frames, GC contents in eukaryotic genomes, gene expression, transposition, repetitive elements Amino acids, polypeptide composition, secondary structure, tertiary and quaternary structures, 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
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. (PO a, PO b)
58
Graduate Exit Survey Form
Sl
No
Item
1 Are you placed through placement department of MSRIT
Choose one of the following
2 Are you Planning to pursue
Higher Education after graduating from MSRIT? Choose
One answer
3 Are you a member of any professional associations/society/organization?
4
No Yes If Yes, Where?
Sl
No
Item
1 Did you appear for gate exam?
No, I have qualified other exams
No answer Yes (please specify Gate
Name and Rank)
Sl
No
No, Yes If yes, please specify the university and specialization
1 Did you get any admission from foreign university?
My stay at MSRIT prepared me in the following areas: (Select appropriate Rating)
Sl.
No.
Item Strongly
Agree
Agree No
Opinion
Disagree Strongly
Disagree
1. An ability to apply knowledge of mathematics, science fundamentals. and Engg
2. An ability to design systems, components, or processes to meet specified objectives within all the realistic constraints such as economic, environmental, social, political, ethical, health, safety and sustainability in
Information Science &
Engineering
3. An ability to identify,
No
Answer
59
formulate, and solve complex
IT problems
4. An ability to use techniques, skills and modern engineering tools and software necessary for engineering profession
5. An ability to understand the professional societal and ethical responsibility
6. An ability to work as a member of multidisciplinary teams, and have an understanding of team leadership
7. To have good written and oral communication skills.
8. An ability to understand the impact of engineering solution in a global, economic and societal context.
9. An ability to have motivation and engage in lifelong learning
10. An ability have knowledge of recent happenings/contemporary issues
11. To have the knowledge of project management and finance requirements for the project and able to write project proposals.
12 I am satisfied with my overall learning experience and preparation from MSRIT
Choose one of the following answers
13 I have a good foundation in the Information Science and
Engineering Fundamentals
14 My fundamentals in basic sciences (Mathematics and physics) are strong
15 I have done specialized courses in Information
Science And allied engg
60
branches based on my career choice
16 I feel comfortable Working with multidisciplinary teams
17 I have good written and oral communication skills
18 I comprehend professional and ethical behavior
19 I have an understanding of the humanities and social sciences
20 I engage in lifelong learning
Sl
No
Item No No answer
1 Were there any activities, programs, or courses that you think that they were not offered when you attended
MSRIT that would have better prepared you for the placement, higher studies etc.
Do you have any specific suggestions for any relevant Academic courses?
If Yes, mention the courses
61