VTU MCA Scheme and Syllabus WEF 2018-19
VTU MCA Scheme and Syllabus WEF 2018-19
VTU MCA Scheme and Syllabus WEF 2018-19
in
VISVESVARAYA TECHNOLOGICAL UNIVERSITY, BELAGAVI
CHOICE BASED CREDIT SYSTEM (CBCS)
SCHEME OF TEACHING AND EXAMINATION 2018 – 19 Onwards
Master of Computer Applications (MCA)
I SEMESTER
II SEMESTER
Teaching Hours /Week Examination
Sl. Teaching
Course Code Title Theory Practical Tutorial Duration in SEE CIE Total Credits
No Department
(L) (P) (T) hours Marks Marks Marks
1 18MCA21 Programming using Java MCA 03 - - 03 60 40 100 03
III SEMESTER
Elective I
18MCA351 Software Testing
18MCA352 Optimization Techniques
18MCA353 Advance Computer Networks
18MCA354 Management Information Systems
VI SEMESTER
Teaching Hours /Week Examination Credits
Sl. Teaching
Course Code Title Duration in SEE CIE Total
No Department Theory Practical Tutorial
hours Marks Marks Marks
1 18MCA61 Internship MCA - - - - - 50 50 4
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Acquire knowledge on C++ programming concepts.
CO2: Analyze the different concepts of C++.
CO3: Design and Develop the solution to a problem using Object Oriented Programming
Concepts.
CO4: Apply the learning into real world problems independently.
Module -1:
Introduction to OOP with C++
Classes and Objects: The Origins of C++, What Is Object-Oriented Programming? ,Encapsulation,
Polymorphism , Inheritance. The General Form of a C++ Program, Friend Functions, Friend Classes, Inline
Functions, Constructors and Destructors, Constructors with One Parameter, When Constructors and
Destructors Are Executed, Static Class Members ,Static Data Members ,Static Member Functions, The
Scope Resolution Operator, Nested Classes, Passing Objects to Functions, Returning Objects, Object
Assignment.
Module -2:
Arrays, Pointers, References, and the Dynamic Allocation Operators
Arrays of Objects, Pointers, Pointer Expression, Pointer as function arguments, Functions returning
pointers, Pointers to functions, Creating Initialized vs, Pointers to Objects, The this Pointer, References,
Reference Parameters, Passing References to Objects, Returning References, C++'s Dynamic Allocation
Operators new and delete, Initializing Allocated Memory ,Allocating Arrays ,Allocating Objects.
Function Overloading, Copy Constructors and Default Arguments: Function Overloading, Overloading
Constructors, Copy Constructors, Default Function Arguments, Function Overloading and Ambiguity.
Operator Overloading: Creating a Member Operator Function, Creating Prefix and
Postfix Forms, of the Increment and decrement Operators, Operator Overloading Restrictions, Operator
Overloading Using a Friend Function, Using a Friend to Overload ++ or – –, Overloading [ ] , Overloading (
).
Module -3:
Inheritance: Base-Class Access Control, Inheritance and protected Members, Protected Base-Class
Inheritance, Inheriting Multiple Base Classes, Constructors, Destructors, and Inheritance, When
Constructors and Destructors Are Executed, Passing Parameters to Base-Class Constructors, Granting
Access, Virtual Base Classes.
Virtual Functions and Polymorphism: Virtual Functions, Calling a Virtual Function Through a Base Class
Reference, The Virtual Attribute Is Inherited, Virtual Functions are Hierarchical, Pure Virtual Functions,
Abstract Classes, Using Virtual Functions, Early vs. Late Binding.
Templates: Generic Functions, A Function with Two Generic Types, Explicitly Overloading a Generic
Function, Overloading a Function Template, Generic Function Restrictions ,Applying Generic Functions,
A Generic Sort, Generic Classes, Using Default Arguments with Template Classes, The typename and
export Keywords, The Power of Templates .
Module -4:
Exception Handling: Exception Handling, Fundamentals, Catching Class Types, Using Multiple catch
Statements, Handling Derived-Class Exceptions, Exception Handling Options, Catching All Exceptions,
Restricting Exceptions, Rethrowing an Exception, Understanding terminate( ) and unexpected( ),
uncaught_exception( ) Function, The exception and bad_exception Classes, Applying Exception
Handling.
Module-5:
Standard C++ I/O Classes :Old vs. Modern C++ I/O, C++ Streams, The C++ Stream Classes, C++'s
Predefined Streams, Formatted I/O, Formatting Using the ios Members, Setting the Format Flags,
Clearing Format Flags, Overloading << and >>, Creating Your Own Inserters, Creating Your Own
Extractors, Creating Your Own Manipulator Functions
C++ File I/O: fstream> and the File Classes, Opening and
Closing a File, Reading and Writing Text Files, put( ) and get( ), read( ) and write( ), More get( ) Functions,
getline( ) , Detecting EOF, peek( ), Obtaining the Current File Position.
Text Books:
1. Programming in ANSI C, Balaguruswamy, McGraw Hill Education
2. Herbert Schildt: C++ The Complete Reference, 4th Edition, Tata McGraw Hill, 2014.
3. K R Venugopal, Rajkumar Buyya,T Ravishanker: Mastering C++,Tata McGraw Hill.
Reference Books:
1. Stanley B. Lippmann, Josee Lajore: C++Primer, 4th Edition, Addison Wesley.
2. Object oriented programming with C++, E. Balaguruswamy, Tata McGraw Hill.
3. The C Programming Language, Brian W Kernighan, Dennis M Rtchie, PHI, 2nd Edition
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Understand and experience the UNIX environment, File system and hierarchy.
CO2: Understand the mechanism of process creation and process management using commands.
CO3: Explore special privileged commands of syste m admi ni st ra ti on.
CO4: Analyze the usage of different shell commands, variables and AWK filtering.
CO5: Use Unix commands and language constructs in building shell scripts.
Module-1:
Introduction, History, Architecture, Experience the Unix environment, Basiccommand sls, cat, cal, date,
calendar, who, printf, tty, sty, uname, passwd, echo, tput, bc, script, spell and ispell, Introduction to Shell
Scripting, Shell Scripts, read, Command Line Arguments, Exit Status of a Command, The Logical Operators
&& and||, exit, if, and case conditions, expr, sleep and wait, while, until, for,$,@, redirection, set and
shift, trap.
Module-2:
UNIX File System:
The file, what’s in a filename? The parent-child relationship, pwd, the Home directory, absolute path
names, using absolute pathnames for a command, cd, mkdir, rmdir, Relative path names, The UNIX file
system. Basic File Attributes: Is – l, the –d option, File Permissions, chmod, Security and File Permission,
users and groups, security level, changing permission, changing ownership and group, File Attributes,
More file attributes: hard link, symbolic link, umask, find.
Module-3:
Simple Filters:
Pr, head, tail, cut, paste, sort, uniq, tr commands, Filters using Regular Expression: grep, Regular
Expression, egrep, fgrep, sed instruction, Line Addressing, Inserting and Changing Text, Context
addressing, writing selected lines to a file, the– f option, Substitution, Properties of Regular Expressions.
Module-4:
Awk and Advanced Shell Programming:
Awk-Advanced Filters: Simple awk Filtering, Splitting a Line into Fields, printf, the Logical and Relational
Operators, Number Processing, Variables, The –f option, BEGIN and END positional Parameters, getline,
Built-invariables, Arrays, Functions, Interface with the Shell, Control Flow. The sh command, export, the
Command, Conditional Parameter Substitution, Merging Streams, Shell Functions, eval, Exec Statement
and Examples
Module-5:
Process and System Administration:
Process basics, PS, internal and external commands, running jobs in background, nice, at and batch, cron,
time commands, Essential System Administration root, administrator’s privileges, startup & shutdown,
managing disk space, cpio, tar, Customizing the Environment : System Variables, profile, sty, Aliases,
Command History, On-line Command Editing.
Text Books:
1. Your UNIX- The Ultimate Guide, Sumitabha Das, Tata Mc Graw Hill.
Reference Books:
1. “Unix Shell Programming”, Yashwant Kanetkar.
2. “Beginning Shell Scripting”, Eric Foster-Johnson, John C Welch, Micah Anderson, Wrox
publication.
3. UNIX: Concepts and Applications, Sumitabha Das, Tata Mc Graw Hill,
4. “Introduction to UNIX” by M. G. Venkatesh Murthy.
Web Technologies
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – I
Subject Code: 18MCA13
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Understand the fundamentals of web and thereby develop web applications using various
web development languages and tools.
CO2:Build the ability to select the essential technology needed to develop and implement web
Applications.
CO3: Use JavaScript and jQuery to develop dynamic and interactive web page.
CO4: Write a well formed / valid XML document.
CO5: Design XML document with presentation using CSS.
Module -1:
Web Fundamentals
Internet, WWW, Web Browsers and Web Servers, URLs, MIME, HTTP, Security, the Web Programmers
Toolbox.
Introduction to XHTML
Basic syntax, Standard structure, Basic text markup, Images, Hypertext Links. Lists, Tables, Forms,
Frames, Syntactic differences between HTML and XHTML.
Module -2:
Introduction to HTML5
New features of HTML5, HTML5 DocType, HTML5 Structure, Tags- nav, section, article, aside, header,
footer, HTML5 Form Elements- Search, tel, url, email, number and range, HTML5 Media tags- Audio and
video.
Cascading Style Sheets
Introduction, Levels of style sheets, Style specification formats, Selector forms, Property value forms,
Font properties, List properties, Color, Alignment of text, The box model, Background images, The <span>
and <div> tags, Conflict resolution.
Module -3:
The basics of JavaScript
Overview of JavaScript, Object orientation and JavaScript, general Syntactic characteristics, Primitives,
operations, and expressions, Screen output and keyboard input, Control statements, Object creation and
modification, Arrays, Functions, Constructors, Pattern matching using regular expressions, Errors in
scripts.
JavaScript and XHTML Documents
The JavaScript Execution Environment, The Document Object Model, Elements Access in Java Script,
Events and Event Handling, Handling Events from Body Elements, Handling Events from Text Box and
password Elements, The DOM2 Model, The navigator Object, Dom Tree Traversal and Modification.
Module -4:
Dynamic Documents with JavaScript
Introduction, Positioning Elements, Moving Elements, Element Visibility, Changing Colors and Fonts,
Dynamic Content, Stacking Elements, Locating the Mouse Cursor, Reacting to a Mouse Click, Slow
Movement of Elements, Dragging and Dropping Elements
Introduction to XML
Introduction, Syntax of XML, XML Document Structure, Document type definitions, Namespaces, XML
schemas, displaying raw XML documents, Displaying XML documents with CSS, Web services.
Module -5:
Introduction to jQuery
Introducing jQuery, jQuery fundamentals, Creating the wrapped element set, Bringing pages to life with
jQuery, Understanding the browser event models, The jQuery Event Model, Sprucing up with animations
and effects.
Text Books:
1. Robert W.Sebesta ,”Programming the World Wide Web”, 4thEdition, Pearson education,
2012.
2. Kogent Learning solutions Inc., “HTML 5 Black Book: Covers CSS3, JavaScript, XML, XHTML
AJAX, PHP & JQuery: Black Book”, Dreamtech Press, 2011.
3. Bear Bibeault, Yehuda Katz: jQuery in Action. 3rd Edition, DreamTech India,2008.
Reference Books:
1. Randy Connolly, Ricardo Hoar, "Fundamentals of Web Development”, 2nd Edition, Pearson,
2018.
2. Jeffrey C.Jackson: Web Technologies-A Computer Science Perspective, Pearson Education, 7th
Impression, 2012.
3. Chris Bates: Web Programming Building Internet Applications, 3rdEdition, WileyIndia, 2009.
4. Zak Ruvalcaba Anne Boehm, “Murach's HTML5 and CSS3”, 3rd Edition, Murachs/Shroff
Publishers & Distributors Pvt Ltd, 2016.
Software Engineering
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – I
Subject Code: 18MCA14
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Categorize problems based on their characteristics and practical importance.
CO2: Apply the correct process models for software development.
CO3: Apply the techniques, skills, and modern engineering tools necessary for
engineering practice.
CO4: Define, formulate and analyze a problem as per the testing techniques.
CO5: Apply new Generation of Software Engineering Technology to Meet Current and Future
Industrial Challenges of Emerging Software Trends.
Module -1:
Overview
Introduction: Professional Software Development Attributes of good software, software engineering
diversity, IEEE/ ACM code of software engineering ethics, case studies
Software Process & Agile Software Development
Software Process models: waterfall, incremental development, reuses oriented, Process activities;
Coping with change, The rational Unified process. Agile methods, Plan-driven and agile Development,
Extreme Programming, Agile project management, Scaling agile methods.
Module -2:
Requirements Engineering
Functional and non-functional requirements, The software requirements document, Requirements
specification, Requirements engineering processes, Requirement elicitation and analysis, Requirements
validation, Requirements management
Component-based software engineering
Components and component model, CBSE process, Component composition.
Module -3:
System Modeling, Architectural Design
Context models, Interaction models, Structural models, Behavioral models, Model-driven engineering,
Software architecture: the role of software architecture, architectural views, component and connector
view, Architectural styles for C&C view, Documenting architectural design
Module -4:
Design and implementation
Design: Design concepts, Function oriented design, detailed design, verification, matrix (Complexity
matrix for function oriented design)
Distributed Software engineering
Distributed system issues, Client-server computing, Architectural patterns for distributed systems,
Software as a service.
Module -5
Planning a software Project
Process planning, Effort estimation, Project scheduling and staffing, Software configuration
management plan, Quality plan, Risk Management, Project monitoring plan.
Software Testing
Testing fundamentals, Black-box testing, White-box testing, Testing process
Computer Organization
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – I
Subject Code: 18MCA15
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Understand the basic of Digital Systems
CO2: Realize the concept of Computer System Organization
CO3: Apply the concepts of Input/output Organization and Memory System
CO4: Analyze the Performance of Memory System and Memory Management
CO5: Analyze and Implementation of Stack Organization
Module 1:
Binary Systems and Combinational Logic
Digital Computers and Digital Systems, Binary Numbers, Number Base Conversion, Octal and
Hexadecimal Numbers, subtraction using r’s and r-1 complements, Binary Code, Binary Storage and
Registers, Binary Logic, Integrated Circuits. Axiomatic Definition of Boolean Algebra, Basic Theorems and
Properties of Boolean Algebra, Boolean Functions, Canonical and Standard Forms, Other Logic
Operations, Digital Logic Gates, The map Method, Two – and Three – Variable Maps, Four – Variables
Map .
Module 2:
Arithmetic Circuits and Sequential Logic
NAND and NOR Implementation, Other Two- Level Implementations, Don’t Care Conditions.
Introduction, Adders, Subtractors, Binary Parallel Adder, Decimal Adder, Magnitude Comparator,
Decoders, Multiplexers, BOOTH algorithm for signed numbers with example. Sequential Logic:
Introduction, different types of Flip – Flops, Triggering of Flip- Flops, Registers, Shift Registers, Ripple
counter and Synchronous Counter .
Module 3:
Computer Types, Functional Units, Basic Operational Concepts, Bus structure, Software, Performance,
Multiprocessing and Multi computers, Introduction to Assemblers and Compilers. Machine Instruction:
Memory Locations and Addresses, Memory Operations, Instructions and Instruction Sequencing,
Addressing Modes.
Module 4:
Assembly Language and Input /Output Organization
Basics of Assembly Language Programme, Examples from Assembly Language Programming. Accessing
I/O Devices, Interrupts, DMA , Processor Example, Buses. Case study of IA32 Intel processor.
Module 5:
The Memory System
Basic Concepts, Semiconductor RAM Memories, Read – Only Memories, Speed, Size, and Cost, Cache
Memories, Virtual Memories, Memory Management Requirements, Secondary Storage.
Text Books:
1. M.Morris Mano, “Digital Logic and Computer Design”, Pearson, 2012.
2. CarlHamacher, Zvonko Vranesic Safwat Zaky, ”Computer Organization”, 5thedition, TataMcGraw-Hill,
2011
Reference Books:
1. JohnP.Hayes, “Computer Architecture and Organization”, Tata McGraw-Hill, Edition, 2012.
2. Soumitrs Kumar Mandal,“Digital Electronics Principles and Applications”, Tata McGraw-Hill, 2010
3. Hamacher , “ Computer Organization” , McGraw-Hill Education
Course Outcome (CO): At the end of this course, the students will be able to
CO1:Apply and implement major programming and object oriented concepts like function
overloading, operator overloading, Encapsulations, and inheritance, message passing to
solve real-world problems.
CO2: Use major C++ features such as Virtual functions, Templates for data type independent
designs and File I/O to deal with large data sets.
CO3: Analyze, design and develop solutions to real-world problems applying OOP Concepts
of C++.
Laboratory Experiments:
PART-A
1. Write a C++ program to find the sum for the given variables using function with default
arguments.
2. Write a C++ program to swap the values of two variables and demonstrates a function using call
by value.
3. Write a C++ program to swap the values of two variables and demonstrates a function using Call
by reference using reference type (&).
4. Write a C++ program to swap the values of two variables and demonstrates a function using Call
by reference using pointer (*).
5. Write a C++ program to swap the values of two dynamically allocated variables and release the
memory after swapping. (use new & delete operators)
6. Write a program to find the largest, smallest & second largest of three numbers. (use inline
function MAX and MIN to find largest & smallest of 2 numbers)
7. Write a program to calculate the volume of different geometric shapes like cube, cylinder and
sphere and hence implement the concept of Function Overloading.
8. Write a C++ program to create a template function for Bubble Sort and demonstrate sorting of
integers and doubles.
PART-B
1. Define a STUDENT class with USN, Name, and Marks in 3 tests of a subject. Declare an array of
10 STUDENT objects. Using appropriate functions, find the average of the two better marks for
each student. Print the USN, Name and the average marks of all the students.
2. Write a C++ program to create a class called COMPLEX and implement the following
overloading functions ADD that return a complex number:
(i) ADD (a, s2) – where ‘a’ is an integer (real part) and s2 is a complex number
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Understand the Unix programming environment.
CO2: Be fluent in the use of Vi editor.
CO3: Be able to design and implement shell scripts to manage users with different types of
Permission and file based applications.
CO4: Be fluent to write Awk scripts.
Laboratory Experiments:
a) Explore the Unix environment.
b) Explore vi editor with vim tutor. Perform the following operations using vi editor, but not limited
to:
1. Insert character, delete character, replace character
2. Save the file and continue working
3. Save the file and exit the editor
4. Quit the editor
5. Quit without saving the file
6. Rename a file
7. Insert lines, delete lines,
8. Setline numbers
9. Search for a pattern
10. M ove forward and backward
1a. Write a shell script that takes a valid directory name as an argument and recursively descend all
the sub-directories, finds the maximum length of any file in that hierarchy and write this maximum
value to the standard output.
1b.Write a shell script that accepts a path name and creates all the components in that path name as
directories. For example, if the script is named mpc, then the command mpc a/b/c/d should create
directories a, a/b, a/b/c, a/b/c/d.
2a.Write a shell script that accepts two filenames as arguments, checks if the permissions for these files
are identical and if the permissions are identical, output common permissions and otherwise output
each filename followed by its permissions.
2b.Write a shell script which accepts valid log-in names as arguments and prints their corresponding
home directories, if no arguments are specified, print a suitable error message.
3a.Create a script file called file-properties that reads a filename entered and outputs it
Properties.
3b.Write shell script to implement terminal locking (similar to the lock command).It should prompt
the user for a password. After accepting the password entered by the user, it must prompt again for
the matching password as confirmation and If match occurs, it must lock the keyword until a
matching Password is entered again by the user, Note that the script must be written to disregard
BREAK, control-D. No time limit need be implemented for the lock duration.
4a. Write a shell script that accept one or more file names as argument and convert all of them to
uppercase, provided they exist in current directory.
4b. Write a shell script that displays all the links to a file specified as the first argument to the script.
The second argument, which is optional, can be used to specify in which the search is to begin. I f this
second argument is not present, the search is to begin in current working directory. In either case, the
starting directory as well as all its subdirectories at all levels must be searched. The script need not
include any error checking.
5a. Write a shell script that accepts as filename as argument and display its creation time if file exist
and if it does not send output error message.
5b. Write a shell script to display the calendar for current month with current date replaced by *or**
depending on whether the date has one digit or two digits.
6a. Write a shell script to find a file/s that matches a pattern given as command line argument in the
home directory, display the contents of the file and copy the file into the directory ~/mydir.
6b. Write a shell script to list all the files in a directory whose filename is atleast 10 characters.(use
expr command to check the length)
7a. Write a shell script that gets executed displays the message either “Good Morning” or “Good
Afternoon” or “Good Evening” depending upon time at which the user logs in.
7b. Write a shell script that accept a list of filenames as its argument, count and report occurrence of
e a c h word that is present in the first argument file on other argument files.
8a. Write a shell script that determine the period for which as specified use ris working on system
and display appropriate message.
8b. Write a shell script that reports the logging in of as specified user within one minute after he/she
login. The script automatically terminate if specified user does not login during as specified period of
time.
9a.Write a shell script that accept the filename, starting and ending line number as an argument and
display all the lines between the given line number.
9b. Write a shell script that folds long lines into 40 columns. Thus any line that exceeds 40 characters
th
must be broken after 40 , a “\” is to be appended as the indication of folding and the processing is to
be continued with the residue. The input is to be supplied through a text file created by the user.
10a. Write an awkscript that accepts date argument in the form of dd-mm-yy and display it in the
form month, day and year. The script should check the validity of the argument and in the case of
error, display a suitable message.
10b. Write an awkscript to delete duplicated line from a text file. The order of the original lines must
remain unchanged.
11a. Write an awkscript of find out total number of books sold in each discipline as well as total book
sold using associate array down table as given below.
Electrical 34
Mechanical 67
Electrical 80
Computer Science 43
Mechanical 65
Civil 98
Computer Science 64
11b. Write an awkscript to compute gross salary of an employee accordingly to rule given below.
Note 1: In the practical Examination each student has to pick one question from a lot of all 11
questions.
Note 2: Change of program is not permitted in the Practical Examination.
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Develop web pages using HTML and HTML5.
CO2: Demonstrate the usage of CSS in designing web pages.
CO3: Execute simple programming questions using JavaScript.
CO4: Create dynamic web pages by manipulating the DOM elements.
CO5: Design and implement user interactive dynamic web based applications using jQuery.
Laboratory Experiments:
1. Create an XHTML page that provides information about your department. Your XHTML page must
use the following tags:
a) Text Formatting tags
b) Horizontal rule
c) Meta element
d) Links
e) Images
f) Tables
(Use of additional tags encouraged).
2. Develop and demonstrate the usage of inline, external and internal style sheet using CSS. Use XHTML
page that contains at least three paragraphs of text, listed elements and a table with four rows and
four columns.
3. Develop and demonstrate a XHTML file that includes Javascript script for the following problems:
a) Input : A number n obtained using prompt Output : The first n Fibonacci numbers
b) Input : A number n obtained using prompt Output : A table of numbers from 1 to n and their squares
using alert
4. Write a JavaScript program to generate n number of random numbers and store them in an array.
Sort the generated numbers in ascending order using array sort method. Develop separate functions
to find mean and median of numbers that are in the array. Display the results with appropriate
messages.
5. Create a XHTML document that describes the form for taking orders for popcorn. Text boxes are
used at the top of the form to collect the buyer’s name and address. These are placed in a borderless
table to force the text box align vertically. A second table to collect actual order. Each row of this table
names a product, displays the price, and uses text box with size 2 to collect the quantity ordered using
<td> tag. The payment method is input by the user through one of four radio buttons. Provide
provision for submission of order and clear the order form.
6. Develop, test and validate an XHTML document that has checkboxes for apple (59 cents each),
orange (49 cents each), and banana (39 cents each) along with submit button. Each checkboxes
should have its own onclick event handler. These handlers must add the cost of their fruit to a
total cost. An event handler for the submit button must produce an alert window with the
message ‘your total cost is $xxx’, where xxx is the total cost of the chose fruit, including 5
percent sales tax. This handler must return ‘false’ (to avoid actual submission of the form data).
Modify the document to accept quantity for each item using textboxes.
7. a) Develop and demonstrate, a HTML document that collects the USN (the valid format is : A digit
from 1 to 4 followed by two upper-case characters followed by two digits followed by three
upper-case characters followed by two digits; (no embedded spaces are allowed) from the user.
Use JavaScript that validate the content of the document. Suitable messages should be display in
the alert if errors are detected in the input data. Use CSS and event handlers to make your
document appealing.
b) Modify the above program to get the current semester also(restricted to be a number from 1 to 6)
8. Develop and demonstrate a HTML file which includes JavaScript that uses functions for the
following problems:
a. Parameter: A string Output: The position in the string of the left-most vowel.
b. Parameter: A number Output: The number with its digits in the reverse order.
part of any paragraph, it should rise to the top to become completely visible.
Modify the above document so that when a text is moved from the top stacking position, it returns to its
original position rather than to the bottom.
11. Develop a simple calculator to perform arithmetic (addition, subtraction, multiplication and division)
operations on given two numbers. Use an HTML tag that allows the user to input two numbers and
to display the result of arithmetic operation. Write suitable HTML and JavaScript and CSS to your
simple calculator. The following figure show sample document display.
12. Design an XML document to store information about a student in an engineering college
affiliated to VTU. The information must include USN, Name, and Name of the College, Branch, Year of
Joining, and e-mail id. Make up sample data for 3 students. Create a CSS style sheet and use it to display
the document.
13. Develop and demonstrate using jQuery to solve the following:
a) Limit character input in the text area including count.
b) Based on check box, disable/enable the form submit button.
14. Develop and demonstrate using jQuery to solve the following:
a) Fade in and fade out all division elements.
b) Animate an element, by changing its height and width.
Note 1: In the practical Examination each student has to pick one question from a lot of all 14
Questions.
Note 2: Change of program is not permitted in the Practical Examination.
Course Outcome(CO):At the end of this course, the students will be able to
CO1: Understand the basic programming constructs of Java. Apply suitable OOP concepts to
develop Java programs for a given scenario.
CO2: Illustrate the concepts of Generalization and runtime polymorphism applications
CO3: Exemplify the usage of Packages, Interfaces, Exceptions and Multithreading
CO4: Demonstrate Enumerations, Wrappers, Auto boxing, Generics, collection framework
and I/O operations
CO5: Implement the concepts of Networking using Java network classes
Module-1:
Java Programming Fundamentals
The Java Language, The Key Attributes of Object-Oriented Programming, The Java Development Kit, A
First Simple Program, Handling Syntax Errors, The Java Keywords, Identifies in Java, The Java Class
Libraries.
Introducing Data Types and Operators
Java’sPrimitiveTypes,Literals,ACloserLookatVariables,TheScopeandLifetimeofVariables,operators,Short
handAssignments,TypeconversioninAssignments,UsingCast,OperatorPrecedence,Expressions.
Program Control Statements
Input characters from the Keyword, if statement, Nested ifs, if-else-if Ladder, Switch Statement, Nested
switch statements, for Loop, Enhanced for Loop, While Loop, do-while Loop, Use break, Use continue
,Nested Loops.
Introduction to Classes, Objects and Methods
Class Fundamentals, How Objects are Created, Reference Variables and Assignment, Methods,
Returning from a Method, Returning Value, Using Parameters, Constructors, Parameterized
Constructors, The new operator Revisited, Garbage Collection and Finalizers, The this Keyword.
More Data Types and Operators
Arrays, Multidimensional Arrays, Alternative Array Declaration Syntax, Assigning Array References, Using
the Length Member, The For-Each Style for Loop, Strings, The Bitwise operators.
Module-2:
String Handling
String Fundamentals, The String Constructors, Three String-Related Language Features, The Length()
Method, Obtaining the characters within a string, String comparison, using indexOf() and last IndexOf(),
Changing the case of characters within a string, String Buffer and String Builder.
A Closer Look at Methods and Classes
Controlling Access to Class Members, Pass Objects to Methods, How Arguments are passed, Returning
Objects, Method Overloading, Overloading Constructors, Recursion, Understanding Static, Introducing
Nested and Inner Classes, Varargs: Variable-Length Arguments.
Module-3:
Inheritance
Inheritance Basics, Member Access and Inheritance, Constructors and Inheritance, Using super to Call
Super class constructors, Using super to Access Super class Members, Creating a Multilevel Hierarchy,
When are Constructors Executed, Superclass References and Subclass Objects, Method Overriding,
Overridden Methods support polymorphism, Why Overridden Methods, Using Abstract Classes, Using
final, The Object Class.
Interfaces
Interface Fundamentals, Creating an Interface, Implementing an Interface, Using Interface References,
Implementing Multiple Interfaces, Constants in Interfaces, Interfaces can be extended, Nested
Interfaces
Packages
Package Fundamentals, Packages and Member Access, Importing Packages, Static Import
Module-4:
Exception Handling
The Exception Hierarchy, Exception Handling Fundamentals, The Consequences of an Uncaught
Exception, Exceptions Enable you to handle errors gracefully, using Multiple catch clauses, Catching
subclass Exceptions, try blocks can be nested, Throwing an Exception, A Closer look at Throwable, using
finally, using throws, Java’s Built-in Exceptions, New Exception features added by JDK8,Creating
Exception Subclasses.
Multithreaded Programming
Multithreading fundamentals, The Thread Class and Runnable Interface, Creating Thread, Creating
Multiple Threads, Determining When a Thread Ends, Thread Priorities, Synchronization, using
Synchronization Methods, The Synchronized Statement , Thread Communication using notify(), wait()
and notifyAll(), suspending, Resuming and stopping Threads.
Module-5:
Enumerations, Auto boxing and Annotations
Enumerations, Java Enumeration are class types, TheValues() and Valueof() Methods, Constructors,
methods, instance variables and enumerations, Autoboxing, Annotations(metadata)
Networking with Java.net
Networking fundamentals, The Networking classes and Interfaces, The Inet Address class, The Socket
Class, The URL class, The URL Connection Class, The Http URL Connection Class.
Exploring Collection Framework
Collections Overview, The Collection Interfaces, The collection Classes. The Arrays Class.
Text Books:
1. Java Fundamentals, A comprehensive Introduction by Herbert Schildt, Dale Skrien. Tata McGraw
Hill Edition 2013. (Chapters:1,2,3,4,5,6,7,8,9,10,11,12,13,15,22,23,24,25,26)
Reference Books:
1. Java Programming by Hari Mohan Pandey, Pearson Education, 2012.
2. Java 6 Programming, Black Book, KoGenT, Dreamtech Press, 2012.
3. Java 2 Essentials, Cay Hortsmann, second edition, Wiley
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Acquire knowledge of
- Various types of data structures, operations and algorithms
- Sorting and searching operations
CO2: Analyze the performance of
- Stack, Queue, Lists, Trees, Hashing, Searching and Sorting techniques
CO3: Implement all the applications of Data structures in a high-level language
CO4: Design and apply appropriate data structures for solving computing problems
Module-1:
Classification of Data Structures: Primitive and Non- Primitive, Linear and Nonlinear; Data structure
Operations, ADT, Array as ADT, Operations - Insert, Delete, Search, Sort, String Definition,
Representation, String as ADT, Operations – Insert, Delete, Concatenate, Comparing, Substring.
Stack: Definition, Representation, Stack as ADT, Operations and Applications: Polish and reverse polish
expressions, Infix to postfix conversion, evaluation of postfix expression, infix to prefix, postfix to infix
conversion;
Module-2:
Recursion - Recursive definition and processes, Properties of recursive definition or Algorithm,
Recursive algorithms: Factorial, GCD, Fibonacci Sequence, Tower of Hanoi.
Queue: Definition, Representation, Queue as ADT, Operations, Queue Variants: Circular Queue, Priority
Queue, Double Ended Queue; Applications of Queues. Programming Examples.
Module-3:
Linked List: Limitations of array implementation, Memory Management: Static (Stack) and Dynamic
(Heap) Memory Allocation, Memory management functions. Definition, Representation, Operations:
getnode() and Freenode() operations, Types: Singly Linked List. Linked list as a data Structure, Inserting
and removing nodes from a list, Linked implementations of stacks, Example of list operations such as
insert and delete an element before a key element, Header nodes, Array implementation of lists.:
Circular Linked List: Inserting, deleting and searching elements in a lists, Double Linked List: Inserting
and Deleting Nodes, Queue as doubly linked lists, such as insert into position, Delete an specified
element. Application of Linked Lists: Stacks, Queues, Double-ended Queues, Priority Queues, Sparse
Matrix and Polynomials using Lists, Trees, BST.
Module-4:
Trees: Definitions, Terminologies, Array and linked Representation of Binary Trees, Types-
Complete/full, Almost Complete, Strictly, Skewed; Traversal methods - Inorder, postorder, preorder;
Binary Search Trees - Creation, Insertion, Deletion, Traversal, Searching.
Module-5:
Sorting & Searching: Bubble sort, Insertion Sort, Selection sort, Quick sort, Linear Search, Binary
Search and BST.
Hashing: The Hash Table organizations, Hashing Functions, Static and Dynamic Hashing, Collision-
Resolution Techniques, Programming Examples.
Text Books:
Reference Books:
1. Principles of Data Structures using C & C++ by Vinu V. Das, New Age International, 2006
2. Data Structures Using C , Balaguruswamy:, McGraw Hill Education
Module-1:
Fundamentals of Logic
Basic connectives and truth tables, logical equivalence, laws of logic, logical implication rules of
inference. Quantifiers Propositional logic, equivalences, predicates and quantifiers, rules of inference,
introduction to proofs, proof methods.
Module-2:
Sets Theory and Probability
Sets and subsets, set operations, laws of set theory, counting and venn diagrams. A first word on
probability, axioms of probability, conditional probability, Bayes’ theorem.
Module-3:
Fundamentals of Counting and Properties of Integers
The rules of Sum and Product, Permutations and Combinations, The Binomial theorem, Mathematical
Induction, Recursive definitions: Fibonacci and Lucas numbers
Module-4:
Random variables and Probability Distributions
Concept of a random variable Discrete probability distributions, Continuous probability distributions,
Mean, Variance and Covariance of random variables. Binomial and Poisson distributions, Exponential
and Normal distributions with mean, variables and problems.
Module-5:
Statistical methods and Curve Fitting
Text Books:
1. Discrete and Combinatorial Mathematics by Ralph P. Grimaldi and B V Ramana, 5th edition,
Pearson, 2011.
(Chapters: 1.1 to 1.3 4.1, 4.2,2.1 to 2.5, 3.1 to 3.6)
2. Probability and Statistics for Engineers and Scientists by Walpole Myers Ye Pearson Education,
Eighth edition.
(Chapters: 3.1–3.3, 4.1 to 4.4, 5.3, 5.6, 6.2 to 6.4, 6.6, 6.7)
3. Higher Engineering Mathematics by Dr. B. S. Grewal, Khanna publishers, 40th edition
(Chapters: 25.12 to 25.16, 24.1 to 24.6)
Reference Books:
1. Discrete Mathematics and its Applications by Kenneth H Rosen, 7th edition, (Indian adaptation
by Kamala Krithivasan), Tata McGraw Hill, 2011.
2. Discrete Mathematical Structures with Applications to Computer Science by J.P. Tremblay and
R.Manohar, McGrawHill.
3. Probability and Statistics for Engineers by Richard A. Johnson and C. B. Gupta, Pearson
Education.
4. Discrete Mathematics by J. K. Sharma, Macmillan Publishers India Ltd. 3rd edition 2011.
Computer Networks
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – II
Subject Code: 18MCA24
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Module -1:
Introduction: Applications , Requirements ,Network Architecture, Implementing Network Software ,
Performance.
Module -2:
Getting Connected: Perspectives on Connecting, Encoding (NRZ, NRZI, Manchester, 4B/5B) , Framing,
Error Detection, Reliable Transmission, Ethernet and Multiple Access Networks (802.3), Wireless.
Module -3:
Internetworking and Advanced Internetworking : Switching and Bridging, Basic Internetworking (IP),
Routing, The Global Internet, Routing among Mobile Devices
Module -4:
End-to-End Protocols and Congestion Control: Simple Demultiplexer (UDP) , Reliable Byte Stream (TCP),
Queuing Disciplines, TCP Congestion Control, Congestion-Avoidance Mechanisms.
Module -5:
Network Security and Applications: Cryptographic Building Blocks, Key Predistribution, Firewalls,
Traditional Applications, Infrastructure Services.
Text Book:
1. “ Computer Networks A Systems Approach” by Larry L Peterson and Bruce S Davie, 5th Edition,
MKP – 2012 – (1, 2 ,3.1,3.2,3.3, 3.4,4.1, 5.1,5.2 , 6.2,6.36.4, 8.1,8.2,8.5, 9.1,9.3)
Reference Books:
1. James F. Kurose, Keith W. Ross, “Computer Networking – A Top-Down Approach Featuring The
Internet”, Fifth Edition, Pearson Education, 2009.
2. Nader. F. Mir, “Computer And Communication Networks”, Pearson Prentice Hall Publishers,
2010.
3. Ying-Dar Lin, Ren-Hung Hwang, Fred Baker, “Computer Networks: An Open Source Approach”,
Mc Graw Hill Publisher, 2011.
4. Behrouz A. Forouzan, “Data Communication And Networking”, Fourth Edition, Tata McGraw –
Hill, 2011.
Operating Systems
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – II
Subject Code: 18MCA25
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Module -1:
Computer and Operating Systems Structure
Basic Elements, Processor Registers, Instruction Execution, The Memory hierarchy, Cache Memory, I/O
Communication Techniques, Introduction to Operating System, Mainframe Systems, Desktop Systems,
Multiprocessor Systems, Distributed Systems, Clustered Systems, Real - Time Systems, Handheld
Systems, Feature Migration, Computing Environments. System Structures: System Components,
Operating – System Services, System Calls, System Programs, System Structure, Virtual Machines,
System Design and Implementation, System Generation
Module -2:
Process Management and Mutual Execution
Process, Process States, Process Description, Process Control, Execution of the Operating System,
Security Issues, Processes and Threads, Symmetric Multiprocessing(SMP), Micro kernels, CPU Scheduler
and Scheduling. Principles of Concurrency, Mutual Exclusion: Hardware Support, Semaphores , Monitors
, Message Passing, Readers/Writes Problem.
Module -3:
Deadlock and Memory Management
Principles of Deadlock, Deadlock Prevention, Deadlock Avoidance, Deadlock Detection, An Integrated
Deadlock Strategy, Dining Philosophers Problem. Memory Management: Swapping, Contiguous Memory
Allocation, Paging, Segmentation, Segmentation with Paging, Demand Paging, Process Creation, Page
Replacement, Allocation of Frames, Thrashing
Module -4
File System and Secondary Storage
File Concept, Access Methods, Directory Structure, File System Mounting, File Sharing, Protection, File –
System Structure, File – System Implementation, Directory Implementation, Allocation Methods, Free–
Space Management, Disk Structure, Disk Scheduling, Disk Management.
Module -5:
Computer Security and Case study of Linux Operating system
The Security Problem, User Authentication, Program Threats, System Threats. Linux System Linux history
, Design Principles, Kernel modules, Process , management, scheduling, Memory management, File
systems, Input and output, Inter-process communications
Text Books:
1. Silberschatz, Galvin, Gagne, “Operating System Concepts” John Wiley, Sixth Edition, 2004.
2. William Stallings, “Operating System Internals and Design Principles” Pearson, 6thedition, 2012
Reference Books:
1. Chakraborty , “Operating Systems” Jaico Publishing House, 2011.
2. Dhananjay M. Dhamdhere, “Operating Systems – A Concept – Based Approach”, Tata McGraw – Hill,
3rd Edition, 2012.
CO1: Understand Java programming language fundamentals and run time environment.
CO2: Acquire knowledge and skill necessary to write java programs.
CO3: Learn the object oriented concepts and its implementation in Java
CO4: Implement the multithreading and client side programming.
PART A
1. a) Write a JAVA program to demonstrate Constructor Overloading and Method Overloading.
b) Write a JAVA program to implement Inner class and demonstrate its Access protection.
2. Write a program in Java for String handling which performs the following:
ii) Reverses the contents of a string given on console and converts the resultant string in upper case.
iii) Reads a string from console and appends it to the resultant string of (ii).
b). Simple Program on Java for the implementation of Multiple inheritance using interfaces to
calculate the area of a rectangle and triangle.
i) A Class called Account that creates account with 500Rs minimum balance, a deposit()method to
deposit amount, a withdraw() method to withdraw amount and also throws LessBalanceException if
an account holder tries to withdraw money which makes the balance become less than 500Rs.
ii) A Class called Less Balance Exception which returns the statement that says withdraw amount (
Rs) is not valid.
iii) A Class which creates 2 accounts, both account deposit money and one account tries to withdraw
more money which generates a Less Balance Exception take appropriate action for the same.
5. Write a JAVA program using Synchronized Threads, which demonstrates Producer Consumer
concept.
6. Write a JAVA program to implement a Queue using user defined Exception Handling (also make use
of throw, throws).
2. Create some classes in the package representing some common shapes like Square, Triangle, and
Circle.
8. Write a JAVA program to create an enumeration Day of Week with seven values SUNDAY through
SATURDAY. Add a method isWorkday( ) to the DayofWeek class that returns true if the value on
which it is called is MONDAY through FRIDAY. For example, the call DayOfWeek.SUNDAY.isWorkDay
( ) returns false.
ii). A Class that implements the Stack Interface and creates a fixed length Stack.
iii).A Class that implements the Stack Interface and creates a Dynamic length Stack.
iv). A Class that uses both the above Stacks through Interface reference and does the Stack
operations that demonstrates the runtime binding.
11. Write JAVA programs which demonstrate utilities of Linked List Class.
12. Write a JAVA program which uses Datagram Socket for Client Server Communication.
Note 1: In the practical Examination student has to execute one program from a lot of all the 12
questions and demonstrate Part B Mini Project.
2. Evaluate a given postfix expression and its values for the variables.
3. Simulate the working of circular queue providing the following operations–Insert,Delete and Display.
4. Demonstrate recursion
e. Display
6. Simulate the working of a circular linked list providing the following operations
a. Delete from the beginning
e. Display
9. Create a binary tree and implement the tree traversal techniques of inorder, preorder and postorder.
a. Linear Search
b. Binary Search
Note 1: In the practical Examination student has to execute one program from a lot of all the 12
questions.
Course Outcome (CO): At the end of this course, the students will be able to
PART – A
1. Write a program for distance vector algorithm to find suitable path for transmission.
2. Using TCP/IP sockets, write a client-server program to make the client send the file name and to
make the server send back the contents of the requested file if present.
3. Implement the above program using message queues or FIFOs as IPC channels.
4. Write a program for Hamming code generation for error detection and correction.
5. Write a program for congestion control using leaky bucket algorithm.
PART – B
Note: Simulate the following Computer Networks concepts using any network simulators.
1. Simulate a three nodes point — to — point network with duplex links between them. Set the queue
size and vary the bandwidth and find the number of packets dropped.
2. Simulate the network with five nodes n0, n1, n2, n3, n4, forming a star topology. The node n4 is at the
center. Node n0 is a TCP source, which transmits packets to node n3 (a TCP sink) through the node n4.
Node n1 is another traffic source, and sends UDP packets to node n2 through n4. The duration of the
simulation time is 10 seconds.
3. Simulate to study transmission of packets over Ethernet LAN and determine the number of packets
drop destination.
4. Write a TCL Script to simulate working of multicasting routing protocol and analyze the throughput
of the network.
5. Simulate the different types of internet traffic such as FTP and TELNET over a wired network and
analyze the packet drop and packet delivery ratio in the network.
6. Simulate the transmission of ping messages over a network topology consisting of 6 nodes and find
the number of packets dropped due to congestion.
7. Write a TCL script to simulate the following scenario with ns2 simulator. Consider six nodes, (as shown
in the figure below) moving within a flat topology of 700m x 700m. The initial positions of nodes are 0
(150,300),1 (300,500),2 (500,500),3 (300,100),4(500,100) and 5(650,300) respectively.
A TCP connection is initiated between node 0 (source) and node 5 (destination) through node 3 and
node 4 i.e the route is 0-3-4-5. At time t = 3 seconds the FTP application runs over it. After time t=4.0
sec, node 3 (300,100) moves towards node 1 (300,500) with a speed of 5.0m/sec and after some time
the path break, then the data transmit with a new path via node 1 and node 2 i.e the new route 0-1-2-5.
The simulation lasts for 60 secs. In the above said case both the route has equal cost. Use DSR as the
routing protocol and the IEEE 802.11 MAC protocol.
Note 1: In the practical Examination student has to execute one program from PART-A and one from
PART-B.
Mini Project
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – II
Subject Code: 18MCA29
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 02 Hours Laboratory and 02 Hour Tutorial/Instructions
CREDITS: 02
Develop an application using the languages and concepts learnt in the theory and exercises listed in I
and II semester with a good look and feel effects.
Note :
1. In the examination student has to demonstrate the project.
2. A team of maximum two students must develop the project. However during the examination, each
student must demonstrate the project individually.
3. The team must submit a brief project report (20-30 pages) that must include the following
a. Introduction
b. Requirement Analysis
c. Software Requirement Specification
d. Analysis and Design
e. Implementation
f. Testing
g. Conclusion
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Demonstrate the fundamentals of data models and conceptualize and depict a
database system and Make use of ER diagram in developing ER Model
CO2: To Summarize the SQL and relational database design.
CO3: Illustrate transaction processing, concurrency control techniques and recovery
CO4: Inference the database design in the real world entities.
Module -1:
Introduction
Characteristics of Database approach, Actors on the Scene, Workers behind the scene, Advantages of
using DBMS approach, Data models, schemas and instances, Three -schema architecture and data
independence, Database languages and interfaces, the database system environment, Centralized and
client -server architectures, Classification of Database Management systems, Entity-Relationship Model:
Conceptual Database using high level conceptual data models for Database Design, A Sample Database
Application, Entity types, Entity sets Attributes and Keys Relationship types, Relationship Sets, Roles and
Structural Constraints Weak Entity Types.
Module -2:
Relational Model
Relational Model and Relational Algebra: Relational Model Concepts, Relational Model Concepts,
Relational Model Constraints and Relational Database Schema Update Operations, Transactions and
Dealing with Constraint violations, Unary Relational operations, Relational Algebra Operations from Set
Theory, Binary Relational Operations, JOIN and DIVISION, Additional Relational Operations, Examples of
Queries in Relational Algebra Relational Database Design Using ER-to-Relational Mapping
Module -3:
Introduction to SQL
Overview of the SQL Query Language, SQL Data Definition, Basic structure of SQL Queries, Additional
Basic Operations, Null values, Aggregate Functions, nested Sub queries, Modification of the Database,
Join Expressions, Views, Transactions, Integrity Constraints, SQL Data Types and Schemas, Authorization.
Database programming issues and techniques, Embedded SQL.
Module -4:
Database Design
Informal Design Guidelines for Relation Schemas, Functional Dependencies, Normal Forms based on
Primary Keys, General Definitions of 2nd and 3rd Normal Forms, Boyce Codd Normal Forms, Stored
Procedures and functions, Triggers.
Module -5:
Transaction Management
Transaction Concept, A Simple Transaction Model, Transaction Atomicity and Durability, Serializability,
Transaction Isolation and Atomicity, Transaction Isolation Levels, Implementation of Isolation Levels.
Concurrency Control: Lock Based Protocols, Deadlock Handling. Recovery System: Failure Classification,
Storage, Recovery and Atomicity, Recovery Algorithm.
Text Books:
1. Elmasri and Navathe: Fundamentals of Database Systems, 5th Edition, Addison -Wesley, 2011.
2. Silberschatz, Korth and Sudharshan Data base System Concepts,6th
Edition, Tata McGraw Hill, 2011.
Reference Books:
2. Raghu Ramakrishnan and Johannes Gehrke: Database Management Systems, 3rd Edition,
McGraw-Hill, 2003.
Course Outcome (CO): At the end of this course, the students will be able to
Module -1:
Installing Python, Simple program using Python, Expressions and Values, Variables and Computer
Memory, error detection, Multiple line statements, Designing and using functions, functions provided by
Python, Tracing function calls in memory model, omitting return statement. Working with Text: Creating
Strings of Characters, Using Special Characters in Strings, Creating a Multiline String, Printing
Information, Getting Information from the Keyboard.
Module -2:
A Boolean Type , Choosing Statements to Execute, Nested If Statements , Remembering the Results of a
Boolean Expression Evaluation , A Modular Approach to Program Organization, Importing Modules ,
Defining Your Own Modules, Testing Code Semi automatically Grouping Functions Using Methods:
Modules, Classes, and Methods , Calling Methods the Object-Oriented Way, Exploring String Methods,
Underscores.
Module -3:
Storing Collections of Data Using Lists: Storing and Accessing Data in Lists, modifying Lists, Operations on
Lists, Slicing Lists, Aliasing, List Methods, Working with a List of Lists. Repeating Code Using Loops:
Processing Items in a List, Processing Characters in Strings, Looping Over a Range of Numbers,
Processing Lists Using Indices, Nesting Loops in Loops, Looping Until a Condition Is Reached, Repetition
Based on User Input, Controlling Loops UsingBreak and Continue Reading and Writing.
Module -4:
Files: Kinds of files, Opening a File, Techniques for Reading Files, Files over the Internet, Writing Files,
and Writing Algorithms That Use the File-Reading Techniques, Multiline Records. Storing Data Using
Other Collection Types: Storing Data Using Sets, Storing Data Using Tuples, Storing Data Using
Dictionaries, Inverting a Dictionary, Using the In Operator on Tuples, Sets, and Dictionaries, Comparing
Collections.
Module -5:
Text Books:
1. Practical Programming: An introduction to Computer Science Using Python, second edition, Paul
Gries, Jennifer Campbell, Jason Montojo, The Pragmatic Bookshelf.
2. Learning with Python: How to Think Like a Computer Scientist Paperback – Allen Downey , Jeffrey
Elkner, 2015
Reference Books:
Module -2:
Brute Force: Selection Sort and Bubble Sort, Sequential Search, Exhaustive search and String Matching.
Divide-and-Conquer
Mergesort, Quicksort, Binary Search, Binary tree Traversals and related properties, Multiplication of
large integers.
Module -3:
Decrease-and-Conquer
Insertion Sort, Depth First and Breadth First Search, Topological sorting, Algorithms for Generating
Combinatorial Objects: generating permutations.
Greedy Technique
Prim’s Algorithm, Kruskal’s Algorithm, Dijkstra’s Algorithm, Huffmann Trees.
Module -4:
Computing a binomial coefficient, Warshall’s and Floyd’s Algorithms, The Knapsack Problem and
Memory Functions
Module -5:
Text Books:
1. Anany Levitin: Introduction to the Design and Analysis of Algorithms, Pearson Education, 2nd
Edition.(Chapters 1.1-1.4, 2.1-2.4, 3.1, 3.2, 3.4, 4.1-4.5, 5.1-5.4, 7.1-7.3, 8.1, 8.2, 8.4, 9.1-9.4, 11.1-
11.3, 12.1-12.2)
Reference Books:
1. Coremen T.H., Leiserson C.E., and Rivest R.L.: Introduction to Algorithms, PHI 1998.
2. Horowitz E., Sahani S., Rajasekharan S.: Computer Algorithms, Galgotia Publication 2001.
System Software
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – III
Subject Code: 18MCA34
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Understand the introductory concepts of system software, SIC and SIC/XE machine
architecture.
CO2: Understand the design and implementation of Assemblers with implementation examples.
CO3: Design and implement the linkers and loaders, macro processors and respective
implementation examples.
CO4: Learn the basic design and working of compilers.
Module -1:
Introduction, System Software and Machine Architecture, Simplified Instructional Computer (SIC) – SIC
Machine Architecture, SIC/XE Machine Architecture, SIC Programming Examples. VAX Architecture,
UltraSPARC Architecture. Basic Assembler Function - A Simple SIC Assembler, Assembler Algorithm and
Data Structures.
Module -2:
Assemblers
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, Assembler Design Operations -
One-Pass Assembler, Multi-Pass Assembler, Implementation Examples – MASM Assembler, SPARC
Assembler
Module -3:
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, SunOS Linker, Cray MPP linker
Module -4:
Macro Processor
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., ELENA macro processor
Module -5:
Compilers
Basic Compilers Functions- Grammars, Lexical Analysis, Syntactic Analysis, Code Generation. Machine
Dependent Compiler Features- Intermediate Form of the Program, Machine dependent code
Optimization. Machine Independent Compiler Features- Structured variables, Machine Independent
code Optimization. Compiler Design Options- Division into passes, Interpreters, P-code Compilers,
Compiler-Compilers, SunOS C compiler, YACC Compiler-compiler.
Text Books:
Reference Books:
DBMS Lab
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – III
Subject Code: 18MCA36
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Laboratory and 01 Hour Tutorial
CREDITS: 02
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Understand, appreciate the underlying concepts of database technologies
CO2: Able to create database with different types of integrity constraints and use the SQL
commands such as DDL, DML, DCL, TCL to access data from database objects.
CO3: Design and implement a database schema for a given problem domain
CO4: Perform embedded and nested queries
CO5: Take up real world problems independently
Lab Experiments:
1 List the details of Students who are all Studying in 2nd sem MCA.
2 List the students who are not borrowed any books.
3 Display the USN, Student name, Branch_name, Book_name, Author_name ,
Books_Borrowed_Date of 2nd sem MCA Students who borrowed books.
4 Display the number of books written by each Author.
5 Display the student details who borrowed more than two books.
6 Display the student details who borrowed books of more than one Author.
7 Display the Book names in descending order of their names.
8 List the details of students who borrowed the books which are all published by the same
Publisher.
2 Design an ER-diagram for the following scenario, Convert the same into a relational model and
then solve the following queries.
Consider a Cricket Tournament “ABC CUP” organized by an organization. In the tournament there
are many teams are contesting each having a Teamid,Team_Name, City, a coach. Each team is
uniquely identified by using Teamid. A team can have many Players and a captain. Each player is
uniquely identified by Playerid, having a Name, and multiple phone numbers,age. A player
represents only one team. There are many Stadiums to conduct matches. Each stadium is identified
using Stadiumid, having a stadium_name,Address ( involves city,area_name,pincode).A team can
play many matches. Each match played between the two teams in the scheduled date and time in
the predefined Stadium. Each match is identified uniquely by using Matchid. Each match won by any
of the one team that also wants to record in the database. For each match man_of_the match
award given to a player.
Queries:
1 Display the youngest player (in terms of age) Name, Team name , age in which he belongs of
the tournament.
2 List the details of the stadium where the maximum number of matches were played.
3 List the details of the player who is not a captain but got the man_of _match award at least in
two matches.
4 Display the Team details who won the maximum matches.
5 Display the team name where all its won matches played in the same stadium.
3 Consider the following Scenario and design an ER-Diagram, map the designed ER-diagram into a
Relational model.
Consider an organization “ABC” having many employees. An employee works for one department.
Each employee identified by using Empid, having Name, address ( described as House_no, city,
district, state, pin code) and more than one phone numbers. Department identified by using Dno,
having Dname, Dlocation. Each Department having a manager . Each department having many
employees. There are many Projects , each project is controlled by the department. Each Project
uniquely identified by Pno, having Project_name,Project_location. An employee works on many
Projects. Number of hours per week worked on each project by an Employee also needs to be
recorded in the database . A project is worked by many employees. Each employee supervised by
the supervisor. Employee having many dependents. Dependents having the dependent_name,
gender, age, address. Dependents are identified by Empid.
Deduce the above Relation T1 into the 3NF and then solve the following queries.
Queries:
1. Display the details of the employees who are working on both the projects having project_no 5 and
10.
2. Display the details of employees having atleast two dependents.
3. Display the project name on which more number of employees are working.
4. Retrieve the employees who do not have any dependents.
5. Display the Employee details whose total number of hours per week working on various projects is
maximum than all other employees.
6. create a view to display the number of employees working in each department.
4 Design an ER-diagram for the following scenario, Convert the same into a relational model,
normalize Relations into a suitable Normal form and then solve the following queries.
A country can have many Tourist places . Each Tourist place is identified by using tourist_place_id,
having a name, belongs to a state, Number of kilometers away from the capital city of that
state,history. There are many Tourists visits tourist places every year. Each tourist is identified
uniquely by using Tourist_id, having a Name, age, Country and multiple emailids. A tourist visits
many Tourist places, it is also required to record the visted_date in the database. A tourist can visit a
Tourist place many times at different dates. A Tourist place can be visited by many tourists either in
the same date or at different dates.
Queries:
1 List the state name which is having maximum number of tourist places.
2 List details of Tourist place where maximum number of tourists visited.
3 List the details of tourists visited all tourist places of the state “KARNATAKA”.
4 Display the details of the tourists visited at least one tourist place of the state, but visited all
states tourist places.
5 Display the details of the tourist place visited by the tourists of all country.
5 Design an ER-diagram for the following scenario, Convert the same into a relational model,
normalize Relations into a suitable Normal form and then solve the following queries.
A country wants to conduct an election for the parliament. A country having many constituencies.
Each constituency is identified uniquely by Constituency_id, having the Name, belongs to a
state,Number_of_voters. A constituency can have many voters. Each voter is uniquely identified by
using Voter_id, having the Name, age, address (involves Houseno,city,state,pincode). Each voter
belongs to only one constituency. There are many candidates contesting in the election. Each
candidates are uniquely identified by using candidate_id, having Name, phone_no, age, state. A
candidate belongs to only one party.There are many parties. Each party is uniquely identified by
using Party_id, having Party_Name,Party_symbol. A candidate can contest from many
constituencies under a same party. A party can have many candidates contesting from different
constituencies. No constituency having the candidates from the same party. A constituency can have
many contesting candidates belongs to different parties. Each voter votes only one candidate of
his/her constituencty.
Queries:
1 List the details of the candidates who are contesting from more than one constituencies
which are belongs to different states.
2 Display the state name having maximum number of constituencies.
3 Create a stored procedure to insert the tuple into the voter table by checking the voter age.
If voter’s age is at least 18 years old, then insert the tuple into the voter else display the
“Not an eligible voter msg” .
4 Create a stored procedure to display the number_of_voters in the specified constituency.
Course Outcome (CO): At the end of this course, the students will be able to
Laboratory Experiments:
1. Write a program to sum all the elements from n1 to n2 where n1 and n2 are positive integers
2. Input an array of n numbers and find separately the sum of positive numbers and negative numbers.
10. Write a Python Program to check whether the given string is palindrome or not using built in string
manipulation methods.
11. Write a Python Program to read a word and prints the number of letters, vowels and percentage of
vowels in the word using dictionary
12. Write a Python Program to check a given sentence is a pangram or not using function/Module.
13.Write a Python Event driven Program for file operations Press 1: to open file in read mode 2: open
the file in write mode 3: current position of the file pointer #4: Reposition the pointer at the beginning
5: exit.
14.Write an Object oriented Python program to create two Time objects: currentTime, which contains
the current time; and breadTime, which contains the amount of time it takes for a bread maker to make
bread. Then we'll use addTime to figure out when the bread will be done. Write the printTime function
to display the time when the bread will be done by the bread maker.
Note 1: In the practical Examination each student has to pick one question from a lot of all 14
questions.
Algorithms Lab
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – III
Subject Code: 18MCA38
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Laboratory and 01 Hour Tutorial
CREDITS: 02
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Implement the concepts of time and space complexity, divide-and-conquer strategy,
dynamic programming, greedy and approximate algorithms.
CO2: Describe the methodologies of how to analyze an algorithm
CO3: Choose a better algorithm to solve the problems.
1 Implement Recursive Binary search and Linear search and determine the time required to
search an element. Repeat the experiment for different values of n, the number of elements in
the list to be searched and plot a graph of the time taken versus n.
2 Sort a given set of elements using the Insertion sort method and determine the time required to
sort the elements. Repeat the experiment for different values of n, the number of elements in
the list to be sorted and plot a graph of the time taken versus n.
3 Sort a given set of elements using Merge sort method and determine the time required to sort
the elements. Repeat the experiment for different values of n, the number of elements in the
list to be sorted and plot a graph of the time taken versus n.
4 Obtain the Topological ordering of vertices in a given graph.
5 Implement 0/1 Knapsack problem using dynamic programming.
6 From a given vertex in a weighted connected graph, find shortest paths to other vertices using
Dijkstra's algorithm.
7 Sort a given set of elements using Quick sort method and determine the time required sort the
elements. Repeat the experiment for different values of n, the number of elements in the list to
be sorted and plot a graph of the time taken versus n.
8 Find Minimum Cost Spanning Tree of a given undirected graph using Kruskal's algorithm.
9 Check whether a given graph is connected or not using DFS method.
10 Find a subset of a given set S = {s1,s2,.....,sn} of n positive integers whose sum is equal to a given
positive integer d. For example, if S= {1, 2, 5, 6, 8} and d = 9 there are two
solutions{1,2,6}and{1,8}.A suitable message is to be displayed if the given problem instance
doesn't have a solution.
11 a). Implement Horspool algorithm for String Matching.
b). Find the Binomial Co-efficient using Dynamic Programming.
12 Find Minimum Cost Spanning Tree of a given undirected graph using Prim’s algorithm.
13 a).Implement Floyd’s algorithm for the All-Pairs- Shortest-Paths Problem.
b).Compute the transitive closure of a given directed graph using Warshall's algorithm.
14 Implement N Queen's problem using Back Tracking.
Note 1: In the practical Examination student has to execute one program from a lot of all the 14
questions.
Note 2: Change of program is not permitted in the Practical Examination.
Software Testing
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – III
Subject Code:18MCA351
CIE Marks: 40 SEE Marks:60 SEE Hours: 03
Number of Lecture Hours/Week:03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Acquire knowledge of basic principles and knowledge of software testing and
Debugging and test cases.
CO2: Understand the perceptions on testing like levels of testing, generalized
pseudo code and with related examples
CO3: Study the various types of testing.
CO4: Analyze the difference between functional testing and structural testing.
CO5: Analyze the performance of fault based testing.
Module -1:
Basics of Software Testing, Basic Principles, Test case selection and Adequacy
Humans, Errors and Testing, Software Quality; Requirements, Behavior and Correctness, Correctness Vs
Reliability; Testing and Debugging; Test Metrics; Software and Hardware Testing; Testing and
Verification; Defect Management; Execution History; Test Generation Strategies; Static Testing; Test
Generation from Predicates. Sensitivity, Redundancy, Restriction, Partition, Visibility and Feedback, Test
Specification and cases, Adequacy Criteria, Comparing Criteria
Module -2:
A perspective on Testing
Basic definitions, Test cases, Insights from a Venn diagram, Identifying test cases, Error and fault
taxonomies, Level of testing, Examples: Generalized pseudo code, The triangle problem, the Next Date
function, The commission problem, The SATM (Simple Automation Teller Machine) problem, The
currency converter, Saturn windshield wiper
Module -3:
Boundary value testing, Equivalence class testing, Decision table based testing
Boundary value analysis, Robustness testing, Worst-case testing, special value testing, Examples,
Random testing, Equivalence classes, Equivalence test cases for triangle problem, Next Date function
and commission problem, Guidelines and observations, Decision tables, Test cases for triangle problem
Module -4:
DD Paths, Test coverage metrics, Basis path testing, guidelines and observations, Definition Use testing,
Slice based testing, Guidelines and observations. Traditional view of testing levels, Alternative life cycle
models, the SATM systems, separating integration and system testing, Guidelines and observations.
Module -5:
Fault Based Testing, Planning and Monitoring the Process, Documenting Analysis and Test
Assumptions in fault-based testing, Mutation Analysis, Fault-based Adequacy Criteria; Variations on
mutation Analysis; From Test case specification to Test Cases, Scaffolding, Generic vs. specific
Scaffolding, Test Oracles, Self checks as oracles, Capture and Replay. Quality and Process, Test and
Analysis strategies and plans, Risk Planning, Monitoring the Process, Improving the process, The quality
team, Organizing documents, Test strategy document, Analysis and test plan, Test design specifications
documents, Test and analysis reports.
Text Books:
Reference Books:
Optimization Techniques
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – III
Subject Code: 18MCA352
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course Outcomes (CO): At the end of this course, the students will be able to
CO1: Understand the importance of operations research & acquire skills to develop linear
programming mathematical models to real world problems
CO2: Understand the essence and foundations of the simplex algorithm and write the dual of
the given primal problems.
CO3: Recognize, formulate and giving optimal solution to a Transportation problem and
Assignment problems.
CO4: Analyse & Solve Simple Game Theory Problems.
CO5: Solve problems of job sequencing of production runs
Module-1:
Introduction
Module-2 :
Module-3:
Duality in Linear Programming, Formulation of Dual Linear Programming Problem and Examples.
Assignment Problem: Mathematical model of Assignment Problem, Hungarian method for solving
Assignment problem.
Module-4:
Transportation Problem:
Module-5 :
Theory of Games: Introduction, Two-person zero-sum game, pure strategies (Minmax and Maxmin
principles),Mixed strategies, The rules principles of Dominance, Algebraic method to solve games
without saddle point, Graphical method to solve the games.
Reference Books:
2.Operations Research – An Introduction, Taha H.A. –Low price Edition, 7th Edn,2006
3. Introduction to Operation Research, Hiller and Liberman, Mc Graw Hill. 5th edition 2001
4. Operation Research, Prem Kumar Gupta, D S Hira,S Chand pub, New Delhi, 2007.
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Understand the terminology and concepts of TCP-IP reference model and IPV6 message
format and its services.
CO2: Acquire the concepts of protocols, network interfaces, and design/performance issues in
Local Area Networks and wide area networks.
CO3: Analyze the difference between wireless networks and satellite network.
CO4: Evaluate the performance of TCP/IP over asymmetric networks
Module 1:
Introduction to Computer Networks
History of TCP/IP, TCP Applications and Services, Performance Study of TCP/IP, earning of TCP
Performance? TCP, TCP Services , Header Format, Encapsulation in IP, Acknowledgment
Mechanism, Retransmission Mechanism, Connection Establishment and Termination, Control
and Sliding Window, Congestion Control ,UDP ,UDP Services, Header Format ,Encapsulation in
IP,IP Services, Fragmentation and Reassembly , Header Format and IP Version 6, Reasons for
Network Measurement, Measurement Tasks, Classification of Measurement Tools, Popular
Measurement Tools and Their Applications, Tcpdump, Tcpstat, Ttcp & Netperf. Distributed
Benchmark System.
Module 2:
TCP/IP Network Simulation and TCP Modeling
The Role of Simulation, Steps of a Systematic Simulation Study, Types of Simulations,
Continuous versus Discrete Event, Terminating versus Steady State, Synthetic versus Trace
Driven Simulation, Simulation Validation and Verification, Confidence Level of Simulation
Results, Confidence Level Formula, Terminating Simulation, Steady-State Simulation, Common
Simulation Mistakes, Simulation with Self-Similar Traffic Network Simulators: Model
Construction and Parameter Setting Data Collection, Simulation Execution, Presentation of
Results and Examples of TCP/IP Simulation. Motivation for Mathematical. Modeling of TCP,
Essentials of TCP Modeling, Window Dynamics Packet-Loss Process, Gallery of TCP Models,
Periodic Model, Detailed Packet Loss Model, Stochastic Model with General Loss Process,
Control System Model and Network System Model.
Module 3:
TCP/IP Performance over Wireless Networks & TCP/IP Performance over Mobile Networks & Optical
Networks Layer
Wireless Networks: Generic Characteristics, Wireless Local Area Networks and Cellular Communications
Networks. TCP Performance Issues over Wireless Links, Inappropriate Reduction of Congestion Window,
Throughput Loss in WLANs and Throughput Loss in Cellular Communication Systems. Improving TCP
Performance over Wireless Links: Splitting TCP Connections, Snooping TCP at Base Stations, Notifying
the Causes of Packet Loss, Adding Selective Acknowledgments to TCP and Comparison of Enhancement
Schemes.
Wireless System Evolution and TCP/IP: Trends in Cellular Communication Systems, Trends in Wireless
LAN Systems, TCP/IP over Heterogeneous Wireless systems.
Cellular and Ad Hoc Networks: TCP Performance in Cellular Networks, Mobile IP, Impact of
Mobility on TCP Performance, Approaches to Improve TCP Performance, TCP Performance in Ad
Hoc Networks, Dynamic Source Routing, Impact of Mobility on TCP Performance, Approaches to
Improve TCP Performance. Evolution of Optical Networks, IP over DWDM, Multiprotocol Label
Switching, Multiprotocol Lambda Switching, Optical Burst Switching, Optical Packet Switching:
Optical Packet Format, Congestion Resolution in Optical Packet Switches, Performance of TCP/IP
over Optical Networks, Optical Packet Network End-to-End Performance, Mapping of TCP in
Optical Packets, Optical Packet Design in the TCP/IP Environment.
Module 4:
TCP/IP Performance over Satellite Networks & TCP/IP Performance over Asymmetric Networks
A Brief History of Data Satellites, Motivations for Using Satellites, Types of Satellites Satellite
Internet Architectures, Satellite Characteristics Affecting TCP: Long Feedback Loop, Link
Impairment, Bandwidth-Delay Product, Bandwidth Asymmetry, Variable Delays, LEO Handoff
Spectral Congestion, Security. TCP Enhancements for Satellite Networks: Path MTU Discovery,
TCP for Transactions, Window Scaling, Large Initial Window, Byte Counting, Delayed ACKs after
Slow Start, Explicit Congestion Notification, Multiple Connections, Pacing TCP Segments, TCP/IP
Header Compression, and Security Issues Conclusions for TCP Enhancements. Advanced
Enhancements and New Versions of TCP: Quick-Start TCP, High Speed TCP ,TCP Peach, Explicit
Transport Error Notification TCP Westwood and XCP .New Transport Protocols for Satellite Links:
Satellite Transport Protocol, Space Communications Protocol Specifications-Transport Protocol.
Types of Network Asymmetry: Bandwidth Asymmetry, Media-Access Asymmetry, Loss Rate.
Asymmetry Impact of Asymmetry on TCP performance: Bandwidth Asymmetry, Media Access
Asymmetry. Improving TCP Performance over Asymmetric Networks: Uplink Bandwidth
Management Handling Infrequent ACK. Experimental Evaluation Of Performance Improvement
Techniques Experiments with Bandwidth Asymmetry, Experiments with Media Access
Asymmetry
Module 5:
TCP/IP Performance over Asymmetric Networks & New TCP Standards and Flavors
Types of Network Asymmetry: Bandwidth Asymmetry, Media-Access Asymmetry, Loss Rate. Asymmetry
Impact of Asymmetry on TCP Performance: Bandwidth Asymmetry, Media Access Asymmetry. Improving
TCP Performance over Asymmetric Networks: KS: Uplink Bandwidth Management Handling Infrequent
ACK. Experimental Evaluation of Performance Improvement Techniques Experiments with Bandwidth
Asymmetry, Experiments with Media Access Asymmetry. Duplicate Acknowledgments and Fast
Retransmit, Fast Recovery and TCP Reno, TCP New Reno, TCP with Selective Acknowledgments, Forward
Acknowledgments, TCP Vegas ,Overview of Other Features and Options and Performance Comparison of
TCP Flavors.
Text Books:
1. High Performance TCP/IP: Networking Concepts, Issues, and Solutions, Mahbub Hassan and
Raj Jain, IST Edition, 2009 PHI Learning Chapters 1,2,3,4,5,6,7,8,9,10,11,12,13 ( excluding those
topics which are not in the syllabus )
Reference Books:
1. TCP/IP Illustrated (Volume I, Volume II and Volume III), W. Richard Stevens, Addison-Wesley
CO1: Recognize the roles and uses of technology in business systems, operations and describe
organizational structure .
CO2: Equip the students with preliminaries of technologies used in business information
systems.
CO3: Familiarize students with the Business applications and E-Commerce initiatives.
Module -1:
Introduction to MIS
MIS: Concept, Definition, Role of the Management Information System, Impact of the Management
Information System, MIS and User, Management as Control System, A support to the Management,
Management effectiveness and Organization Effectiveness.
The Concept of Corporate Planning, Essentiality of Strategic Planning, Development of the Business
Strategies, Types of Strategies,Tools of Planning, Balance Score Card, Score card and Dash Board.
Module -2:
Decision-Making
Module -3:
Technology of Information Systems:
Management) of Information System. Human Factors and User Interface, Evaluation and feasibility of IT
Solutions.
Module -4:
E-Business Technology
Module -5:
E-commerce
Text Books:
1. Waman S Jawadekar: Management Information System, 4th Edition, Tata McGraw Hill.
(Chapters: 1,3,6,7,16,20)
2. Henry Chan, Raymond Lee, Tharam Dillon, Elizabeth Chang, E Commerce, Fundamentals &
Applications, John Wiley & Sons, 2003. Part I & Part II. (chapters: 3 , 4, 5, 12, 13)
Reference Books:
1 Ralph M Stair and George W Reynolds: Principles of Information Systems, 7th Edition, Thomson,
2010.
2 Steven Alter: Information Systems - The Foundation of E-Business, 4th Edition, Pearson Education,
2001.
3 Rahul De, Managing Information Systems in Business, Government and Society, Wiley India, 2012.
Course Outcome (CO): At the end of this course, the students will be able to
Module 1:
Servlet
Servlet Structure, Servlet packaging, HTML building utilities, Lifecycle, SingleThreadModel interface,
Handling Client Request: Form Data, Handling Client Request: HTTP Request Headers. Generating server
Response: HTTP Status codes, Generating server Response: HTTP Response Headers, Handling Cookies,
Session Tracking.
Overview of JSP: JSP Technology, Need of JSP, Benefits of JSP, Advantages of JSP, Basic syntax,
Module 2:
Invoking java code with JSP scripting elements, creating Template Text, Invoking java code from JSP,
Limiting java code in JSP, using jsp expressions, comparing servlets and jsp, writing scriptlets. For
example Using Scriptlets to make parts of jsp conditional, using declarations, declaration example.
Controlling the Structure of generated servlets: The JSP page directive, import attribute, session
attribute, isElignore attribute, buffer and autoflush attributes, info attribute, errorPage and iserrorPage
attributes, isThreadSafe Attribute, extends attribute, language attribute, Including files and applets in jsp
Pages, using java beans components in JSP documents
Module 3:
Creating Packages, Interfaces, JAR files and Annotations. The core java API package, New java.Lang Sub
package, Built-in Annotations with examples. Working with Java Beans. Introspection, Customizers,
creating java bean, manifest file, Bean Jar file, new bean, adding controls, Bean properties, Simple
properties, Design Pattern events, creating bound properties, Bean Methods, Bean an Icon, Bean info
class, Persistence, Java Beans API.
Module 4:
Talking to Database, Immediate Solutions, Essential JDBC program, using prepared Statement Object,
Interactive SQL tool. JDBC in Action Result sets, Batch updates, Mapping, Basic JDBC data types,
Advanced JDBC data types, immediate solutions.
Introduction to EJB: The Problem domain, Breakup responsibilities, Code Smart not hard, the Enterprise
java bean specification. Components Types.
Module 5:
Server Side Component Types, Session Beans, MessageDriven Beans, Entity Beans, The Java Persistence
Model. Container services. Dependency Injection, Concurrency, Instance pooling n caching,
Transactions, security, Timers, Naming and object stores, Interoperability, Life Cycle Callbacks,
Interceptors, platform integration. Developing your first EJB. Preparation, Definitions, naming
conventions, convention for the Examples, coding the EJB, the contract, the bean Implementation class,
out of Container Testing, Integration Testing. Models: The Stateless Session Bean, the Stateful Session
Bean, the Singleton SessionBean, Message-Driven Beans. EJB and PERSISTENCE. Persistence Entity
manager Mapping Persistence objects, Entity Relationships
Text Books:
1. Marty Hall, Larry Brown. Core Servlets and Java Server Pages. Volume 1: Core Technologies. 2nd
Edition. (Chapter 3,4,5,6,7,8,9,10,11,12,13,14).
2. Java 6 Programming Black Book, Dreamtech Press. 2012 (Chapter
17,18,19,20,21,22,27,28,29,30).
3. Andrew LeeRubinger, Bill Burke. Developing Enterprise Java Components. Enterprise JavaBeans
3.1.O’reilly. (Chapter 1,2,3,4,5,6,7,8,9,10,11).
Reference Books:
1. Michael Sikora, EJB 3 Developer Guide, A practical guide for developers and architects to the
Enterprise Java Beans Standard, Shroff Publishers & Distributors PVT LTD. July 2008.
2. Herbert Schildt, Java The Complete Reference, 8th Edition. Comprehensive coverage of the Java
Language. Tata McGraw-Hill Edition – 2011.
Course Outcomes (CO):At the end of this course, the students will be able to:
CO1:Acquire knowledge of
- Build the Web Applications using JQuery, PHP, XML.
CO2:Design the Web Pages using AJAX.
CO3:Understand the terminology of Web2.0.
CO4: Acquire the knowledge of web services.
CO5: Design responsive web applications using Bootstrap.
Module 1:
Introduction to PHP
Origins and uses of PHP, Overview of PHP, General syntactic characteristics, Primitives, operations and
expressions, Output, Control statements, Arrays, Functions, Pattern matching.
Module 2:
Rich Internet Applications With Ajax: Limitations of Classic Web application model, AJAX principles,
Technologies behind AJAX, Examples of usage of AJAX; Asynchronous communication and AJAX
application model.
Module 3:
AJAX: Hidden Frames Technique, Image-based AJAX, Dynamic Script loading, XMLHttpRequest, Cross-
domain access, maintaining history in AJAX calls, fetching binary data with XHR. AJAX Patterns –
Predictive Fetch, Multi-stage download, Periodic Refresh and Fallback patterns, Submission throttling.
Module 4:
Introduction to Bootstrap.
What Is Bootstrap? Bootstrap File Structure,
Basic HTML Template, Global Styles, Default Grid System, Basic Grid HTML, Offsetting Columns, Nesting
Columns, Fluid Grid System, Container Layouts, Responsive Design. Typography, Emphasis Classes, Lists,
Code, Tables, Optional Table Classes, Table Row Classes, Forms, Buttons, Images, Icons.
Module 5:
Text Books:
Reference Books:
1. Thomas A. Powel: Ajax The Complete reference, McGraw Hill,2008.
2. Aravind Shenoy, Ulrich Sossou: Learning Bootstrap, Packt, Dec 2014.
3. Dana Moore, Raymond Budd, Edward Benson: Professional Rich Internet Applications: AJAX and
Beyond, Wiley 2012.
Course Outcomes (CO):At the end of this course, the students will be able to
CO1: Acquire knowledge of
- Basic UML Concepts and terminologies
- Life Cycle of Object oriented Development
- Modeling Concepts
CO2: Identify the basic principles of Software modeling and apply them in real world
applications
CO3: Produce conceptual models for solving operational problems in software and IT
environment using UML
CO4: Analyze the development of Object Oriented Software models in terms of
- Static behaviour
- Dynamic behaviour
CO5: Evaluate and implement various Design patterns
Module -1:
Object and class concepts; Link and associations concepts; Generalization and inheritance; A sample
class model; Navigation of class models; Practical tips. Advanced object and class concepts; Association
ends; N-array associations; Aggregation; Abstract classes; Multiple inheritance; Metadata; Reification;
Constraints; Derived data; Packages;
Module -2:
State Modeling: Events, States, Transitions and Conditions; State diagrams; State diagram behavior;
Practical tips. Advanced State Modeling: Nested state diagrams; Nested states; Signal generalization;
Concurrency; A sample state model; Relation of class and state models;
Interaction Modeling: Use case models; Sequence models; Activity models. Use case relationships;
Procedural sequence models; Special constructs for activity models
Module -3:
Overview of analysis; Domain class model; Domain state model; Domain interaction model; Iterating the
analysis. Application Analysis: Application interaction model; Application class model; Application state
model; adding operations.
Module -4:
Class Design: Overview of class design; Bridging the gap; Realizing use cases; Designing algorithms;
Recording downwards, Refactoring; Design optimization; Reification of behavior.
Module -5:
Introduction, Model View Controller, Structural decomposition: Whole-Part, Access Control: Proxy;
Management Patterns: Command processor; Communication Patterns: Forwarder-Receiver; Client-
Dispatcher-Server; Publisher-Subscriber
Text Books:
1. Michael Blaha, James Rumbaugh, “Object-Oriented Modeling and Design with UML”, 2nd
Edition, Pearson Education / PHI, 2005. (Chapters 1 to 9, 11 to 14.10,15.1 to 15.8)
2. Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal, “Pattern-
Oriented Software Architecture, A System of Patterns”, Volume 1, John Wiley and Sons, 2006.
(Chapters 1, 2.4, 3)
Reference Books:
1. Grady Booch et al, “Object-Oriented Analysis and Design with Applications”, 3rd Edition,
Pearson, 2007.
2. Mark Priestley, “Practical Object-Oriented Design with UML”, 2nd Edition, Tata McGraw-Hill,
2003.
3. K. Barclay, J. Savage, “Object-Oriented Design with UML and JAVA”, Elsevier, 2008.
4. Booch, G., Rumbaugh, J., and Jacobson, I., “The Unified Modeling Language User Guide”, 2nd
Edition, Pearson, 2005.
5. E. Gamma, R. Helm, R. Johnson, J. Vlissides, “Design Patterns-Elements of Reusable Object-
Oriented Software”, Addison-Wesley, 1995.
6. Michael R Blaha, James R Rumbaugh, “Object Oriented Modeling and Design with UML”, 2nd
Edition, Prentice Hall, 2004
Module 1:
Module 2:
Writing for Effect- Business Etiquette, conversational style, view point, positive language, and
courtesy. Basics Report Writing- Determine the Factors, Gathering the Information, Organizing the
Report, Writing The Report. Physical Presentation Of Letters, Memos, And Reports- document
preparation, Form of Business Letters. Strategies in the job search Process- Preparing application,
Resume, Cover letter, Facing an Interview.
Module 3:
Module 4:
Motivation- Motivation and Motivators, Motivation: The Carrot and the stick, The Hierarchy of needs
Theory, The Motivation – Hygiene Approach to Motivation. Leadership- Defining Leadership,
Ingredients of Leadership, Trait Approaches to Leadership, Leadership behavior and styles, Situational
or contingency, Approaches to Leadership.
Module 5:
Ethics: An overview of Ethics- What are Ethics? Ethics in the business World, Ethics in Information
Technology (IT). Ethics for IT Professionals and IT users- IT professionals, The Ethical behavior of IT
professionals, IT Users.
Text Books
Reference Books
1. Lesikar and Flatley: Communication-Basic Business Communication Skills for Empowering the
Internet Generation 9th Edition, Tata McGraw-Hill Edition, 2002
2. Harold Koonlz and Heinz Weihrich: Management-Essentials of Management, 9th Edition, McGraw-
Hill International Edition, 2012
Course Outcome (CO): At the end of this course, the students will be able to
CO 1:Designing HTML pages to demonstrate Java Servlets, JSP, Bean and EJB programs.
CO 2:Implementing Dynamic HTML using Servlet and demonstration of service methods, auto web
page refresh, Session tracking using cookie and Http Session in Servlet.
CO 3:Learn the fundamental of connecting to the database.
CO 4:Demonstrate JSP (page attributes, action tags and all basic tags) and types of EJB application.
Program Statements
1.Write a JAVA Servlet Program to implement a dynamic HTML using Servlet (user name and Password
should be accepted using HTML and displayed using a Servlet).
2.Write a JAVA Servlet Program to Auto Web Page Refresh (Consider a webpage which is displaying Date
and time or stock market status. For all such type of pages, you would need to refresh your web page
regularly; Java Servlet makes this job easy by providing refresh automatically after a given interval).
3.Write a JAVA Servlet Program to implement and demonstrate GET and POST methods (Using HTTP
Servlet Class).
5.Write a JAVA Servlet program to track HttpSession by accepting user name and password using HTML
and display the profile page on successful login.
6.Write a JSP Program which uses jsp:include and jsp:forward action to display a Webpage.
8.Write a JSP Program to get student information through a HTML and create a JAVA Bean class,
populate Bean and display the same information through another JSP
9.Write a JSP program to implement all the attributes of page directive tag.
10.Write a JAVA Program to insert data into Student DATA BASE and retrieve info based on particular
queries (For example update, delete, search etc…).
11.An EJB application that demonstrates Session Bean (with appropriate business logic).
12.An EJB application that demonstrates MDB (with appropriate business logic).
13.An EJB application that demonstrates persistence (with appropriate business logic).
Note 1: In the practical Examination student has to execute one program from a lot of all the 13
questions.
Note 2: Change of program is not permitted in the Practical Examination.
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Understand, analyze and apply the role of server side scripting languages.
CO2: Build web application using PHP, jQuery, XML and store values in MYSQL.
CO3: Build RIA web applications using Ajax.
CO4: Build responsive web pages using Bootstrap.
PART-A
1. Write a PHP program to process a file which contains English words, where each word is separated
from the next word on a line by one space. The file is specified on the command line. The output of your
program is a table in which the first column has unique words from the input file and second the second
column has the number of times the word appeared in the file; no word can appear twice in the table.
Use two arrays to store the table, one for the words and one for the frequency values.
2. A file contains lines of employee data, where each line has name:age:deparment code:salary.
Write a PHP program to generate the following output:
1. The names of all the employee whose names end with “son”
2. Percentage of employees under 40 years old
3. Average salary of employees under 40 years old
4. An alphabetical list of employees who are under 40 years old and who have salaries more than
$40,000.
3. a) Write a PHP program to store current date-time in a COOKIE and display the ‘Last visited on’ date-
time on the web page upon reopening of the same page.
b) Write a PHP program to store page views count in SESSION, to increment the count on each refresh,
and to show the count on web page.
II. MasterCard
III. Rupay
Write a PHP program that computes the total cost of the ordered light bulbs by a customer. The
program must inform the buyer of exactly what was ordered in a table.
5. Write a PHP program to insert name and age information entered by the user into a table created
using MySQL and to display the current contents of this table.
6. Create a XHTML form with Name, Address Line 1, Address Line 2, and E-mail text fields. On
submitting, store the values in MySQL table using PHP. Retrieve and display the data based on Name.
7. Write a PHP program to read student data from an XML file and store into the MySQL database.
Retrieve and display.
8. Create a XHTML form with Name, Address Line 1, Address Line 2, and E-mail text fields. On
submitting, store the values in MySQL table using PHP. Provide buttons to update and delete data for
the same.
9. Demonstrate hidden frames AJAX technique using Iframes.
10. Demonstrate Multistage download using AJAX.
11. Demonstrate Periodic refresh (with exponential back-off feature).
12. Design a web page template to show the usage of bootstrap grid.
13. Design a web page containing image gallery using bootstrap.
14. Design web page to show the usage of a) Bootstrap buttons b) Bootstrap Navigation.
PART B
Develop a web application project using the languages and concepts learnt in the theory and exercises
listed in part A with a good look and feel effects. You can use any web technologies and frameworks
and databases.
Course Outcomes (CO):At the end of this course, the students will be able to
CO1: Understand the fundamental principles of Object-Oriented analysis, design, development
and programming
CO2: Demonstrate and represent the UML model elements, to enable visual representation of
the system being developed
CO3: Implement object oriented design model with the help of modern tool, Rational software
Architect
CO4: Analyze and differentiate the static and dynamic behavior of the system for achieving the
intended functionalities of the system
CO5: Evaluate Various design patterns for applicability, reasonableness, and relation to other
design criteria
Laboratory Experiments:
The student has to draw the necessary UML diagrams using any suitable UML drawing tool and
implement a program in Java or C++ or C# to demonstrate the design pattern specified by the examiner.
For analysis and design models -, Class Diagram, Use-Case, Sequence diagrams should be drawn.
2. Command Processor: The command processor design pattern separates the request for Service
from its execution. A command processor component manages request as separate objects,
schedules their execution and provides additional service.
uniquely identified by its name and is connected to clients by the dispatcher. Client relay on the
dispatcher to locate a particular server and to establish a communication like with the server.
5. Proxy: A proxy object can act as the intermediary between the client and target object. The
proxy object has the same interface as the target object. The proxy holds a reference to the
target object and can forward requests to target as required. In effect the proxy object has the
authority the act on behalf of client to interact with the target object.
6. Polymorphism: When related alternatives or behaviors vary by type (class), assign responsibility
for the behavior using polymorphic operations to the types for which the behavior varies.This
interface will provide the behavior which varies according to the class type. All classes
implementing this interface will write the method accordingly.
7. Whole-Part: The idea of the Whole-Part pattern is to introduce a component that encapsulates
smaller objects, and prevents clients from accessing these constituent parts directly. Define an
interface for the aggregate that is the only means of access to the functionality of the
encapsulated objects, allowing the aggregate to appear as a semantic unit.
8. Controller Design Pattern: Use a controller as the initial point of contact for handling a request.
The controller manages the handling of the request, including invoking security services such as
authentication and authorization, delegating business processing, managing the choice of an
appropriate view, handling errors, and the selection of content creation strategies.
Note 1: In the practical Examination each student has to pick one question from a lot of all the 8
questions.
Note 3: In the Examination partial marks can be given for Class Diagram, Use-Case, Sequence diagrams
Course outcomes: At the end of this course, the students will be able to
Mobile Devices and Systems, Architectures Mobile phones, Digital Music Players, Handheld Pocket
Computers, Handheld Devices, Operating Systems, Smart Systems, Limitations of Mobile Devices,
Automotive Systems GSM – Services and System Architectures, Radio Interfaces, Protocols, Localization,
Calling, Handover.
Module -2:
Wireless Medium Access Control and CDMA – based Communication Medium Access Control,
Introduction to CDMA – based Systems. OFDM
Module – 3:
Packet Delivery and Handover Management, Registration, Tunneling and Encapsulation, Route
Optimization, Dynamic Host Configuration Protocol Indirect TCP, Snooping TCP, Mobile TCP, Other
Methods of TCP – layer Transmission for Mobile Networks. Databases Database Hoarding Techniques,
Data Caching, Client – Server Computing and Adaptation, Transactional Models, Query Processing, Data
Recovery Process
Module -4
Module -5:
Mobile Devices, Server and Management, Wireless LAN, Mobile Internet Connectivity and Personal Area
NetworkMobile agent, Application Server, Gateways, Portals, Service Discovery, Device Management,
Mobile File Systems. Wireless LAN (WiFi) Architecture and Protocol Layers, WAP 1.1 and WAP 2.0
Architectures, Bluetooth – enabled Devices Network, Zigbee.
Mobile Application languages – XML, Java, J2ME and JavaCard, Mobile Operating SystemsIntroduction,
XML, JAVA, Java 2 Micro Edition (J2ME), JavaCard Operating System, PalmOS, Windows CE, Symbian OS.
1. Ashok Talukdar, Roopa R Yavagal: Mobile Computing – Technology, Applications and Service
Creation, Tata McGraw Hill, 2005.
2. 2 Reza B’Far: Mobile Computing Principles – Designing and Developing Mobile Applications with
UML and XML, 5th Edition, Cambridge University press, 2006.
3. Uwe Hansmann, LothatMerk, Martin S Nicklous and Thomas Stober: Principles of Mobile
Computing, 2nd Edition, Springer International Edition, 2003.
CYBER SECURITY
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – IV
Subject Code: 18MCA442
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course outcomes (CO):At the end of this course, the students will be able to:
Introduction, Cybercrime: Definition and Origins of the word, Cybercrime andinformation Security, Who
are Cybercriminals? Classifications of Cybercrimes.How Criminals Plan Them – Introduction, How
Criminals Plan the Attacks, Cybercafeand Cybercrimes, Botnets, Attack Vector, The Indian IT ACT 2000.
Module -2:
Introduction, Proxy Server and Anonymizers, Password Cracking, Keyloggers and Spyware,Virus and
Warms, Trojan and backdoors, Steganography, DOS and DDOS attack, SQLinjection, Buffer Overflow.
Module -3:
Module -4:
Unix Command Lines, Backtrack Linux, Mac Ports, Cygwin, Windows Power Shell, NetCatCommands,
NetCat Uses, SSH, Data Pipe, Fpipe
Module -5:
1. Anti-Hacker Tool Kit (Indian Edition) by Mike Shema, Publication McGraw Hill. (Chapters: 2, 7, 8, 11)
2. Cyber Security Understanding Cyber Crimes, Computer Forensics and Legal Perspectives by Nina
Godbole and SunitBelpure, Publication Wiley. (Chapters: 1.1, 1.2, 1.3, 1.4, 1.5, 2.1, 2.2, 2.5, 2.6, 2.7, 6.4,
5.2.1, 5.2.2, 5.2.5, 5.3.1, 5.3.2, 5.3.3, 4.2,4.4, 4.5, 4.6, 4.7, 4.8, 4.9, 4.10, 4.11)
Reference Books:
2. Chwan-Hwa (John) Wu,J. David Irwin - Introduction to Computer Networks and Cyber security - CRC
Press
3. Bill Nelson, Amelia Phillips, Christopher Steuart - Guide to Computer Forensics and Investigations -
Cengage Learning
Course Outcomes (CO):At the end of this course, the students will be able to
CO1: Understand constraints and opportunities of wireless and mobile networks for Internet of
Things.
CO2: Analyze the societal impact of IoT security events.
CO3: Develop critical thinking skills.
CO4: Analyze, design or develop parts of an Internet of Things solution and map it toward
selected business model(s)
CO5: Evaluate ethical and potential security issues related to the Internet of Things.
Module -1:
M2M to IoT
Introduction: The Vision-Introduction, From M2M to IoT, M2M towards IoT-the global context, A use
case example, Differing Characteristics
Module -2:
M2M to IoT- A Market Perspective– Introduction, Some Definitions, M2M Value Chains, IoT Value
Chains, An emerging industrial structure for IoT, The international driven global value chain and global
information monopolies. M2M to IoT-An Architectural Overview– Building an architecture, Main design
principles and needed capabilities, An IoT architecture outline, standards considerations.
Module – 3:
Devices and gateways, Local and wide area networking, Data management, Business processes in IoT,
Everything as a Service(XaaS), M2M and IoT Analytics, Knowledge Management
Module -4:
Introduction, State of the art, Architecture Reference Model- Introduction, Reference Model and
architecture, IoT reference Model.
Introduction, Functional View, Information View, Deployment and Operational View, Other Relevant
architectural views.
Module-5:
1. Jan Holler, VlasiosTsiatsis, Catherine Mulligan, Stefan Avesand, Stamatis Karnouskos, David Boyle,
“From Machine-to-Machine to the Internet of Things: Introduction to a New Age of Intelligence”, 1st
Edition, Academic Press, 2014.
Reference Books:
1. Vijay Madisetti and ArshdeepBahga, “Internet of Things (A Hands-on-Approach)”, 1st Edition, VPT,
2014.
2. Francis daCosta, “Rethinking the Internet of Things: A Scalable Approach to Connecting Everything”,
1st Edition, Apress Publications, 2013
Cloud Computing
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – IV
Subject Code: 18MCA444
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course outcomes: At the end of this course, the students will be able to
CO1: Understand the cloud computing delivery model and the enabling technologies.
CO2: Understand the cloud computing platforms, key technology drivers and cloud
programming/software environments
CO3: Identify the need for cloud computing model and compare various key enabling
technologies.
CO4: Analyze and choose an appropriate programming environment for building cloud
applications.
Module -1:
Distributed System Models and Enabling Technologies
Scalable Computing Service over the Internet, System Models for Distributed and Cloud Computing
Module -2:
Software Environments for Distributed Systems and Clouds, Performance, Security and Energy Efficiency
Module -3:
Module -4:
Module -5:
Text Books:
1. “Distributed and Cloud Computing, From Parallel Processing to the Internet of Things”,Kai Hwang,
Geoffrey C. Fox. Jack J Dongarra, MK Publishers, 2012.
Reference Books:
1. “Moving to the Cloud, Developing Apps in the New World of Cloud Computing”, DinakarSitaram,
Geetha Manjunath, Elsevier Publication, 2012.
2. “Cloud Computing, A Practical Approach”, Anthony T. Volte, Toby J. Volte and Robert Elsenpeter,
McGraw Hill, 2010.
4. “Web-Based Applications that Change the Way You Work and Collaborate Online”, Michael Miller,
Pearson Publication, 2012.
Course Outcomes (CO):At the end of this course, the students will be able to
Overview, Benefits of ERP, ERP and Related Technologies, Business Process Reengineering, Data
Warehousing, Data Mining, On–line Analytical Processing, Supply Chain Management
Module -2:
ERP Implementation
Implementation of Life Cycle, Implementation Methodology, Hidden Costs, Organizing
Implementation, Vendors, Consultants and Users, Contracts, Project Management and Monitoring
Module – 3:
Business Modules
Business Modules in an ERP Package, Finance, Manufacturing, Human Resource, Plant Maintenance,
Materials Management, Quality Management, Sales and Distribution
Module -4:
ERP Market
ERP Market Place, SAP AG, PeopleSoft ,Baan Company , JD Edwards World Solutions Company, Oracle
Corporation, QAD , System Software Associates.
Module -5:
Text Books:
2. Joseph A. Brady, Ellen F. Monk, Bret J. Wangner, “Concepts in Enterprise Resource Planning”,
Thomson Learning, 2001.
Reference Books:
1. Vinod Kumar Garg and N.K .Venkata Krishnan, “Enterprise Resource Planning concepts and
Planning”, Prentice Hall, 1998.
2. Jose Antonio Fernandz, “ The SAP R /3 Hand book”, Tata McGraw Hill
Course Outcome (CO): At the end of this course, the students will be able to
Module -1:
Data Warehouse basic concepts, Data Warehouse Modeling, Data Cube and OLAP : Characteristics of
OLAP systems, Multidimensional view and Data cube, Data Cube Implementations, Data Cube
operations, Implementation of OLAP and overview on OLAP Software.
Module -2:
Introduction, What is Data Mining, Motivating Challenges, Data Mining Tasks, Which technologies are
used for data mining, Kinds of pattern that can be mined, Data Mining Applications, Data Preprocessing,
Data cleaning, data integration, data reduction and data transformation.
Module-3:
Frequent Item set Generation, Rule Generation, Compact Representation of Frequent Item sets,
Alternative methods for generating Frequent Item sets, FP Growth Algorithm, Evaluation of Association
Patterns
Module-4:
Basics, General approach to solve classification problem, Decision Trees, Rule Based Classifiers,
Module-5:
Clustering Techniques
Overview, Features of cluster analysis, Types of Data and Computing Distance, Types of Cluster Analysis
Methods, Partitional Methods, Hierarchical Methods, Density Based Methods, Quality and Validity of
Cluster Analysis
Text Books:
1. Jiawei Han and Micheline Kamber: Data Mining - Concepts and Techniques, 2nd Edition,
Morgan Kaufmann Publisher, 2006.
2. Pang-Ning Tan, Michael Steinbach, Vipin Kumar: Introduction to Data Mining, Addison- Wesley,
2005.
Reference Books:
1. Arun K Pujari: Data Mining Techniques University Press, 2nd Edition, 2009.
2. G. K. Gupta: Introduction to Data Mining with Case Studies, 3rd Edition, PHI, New Delhi, 2009.
3. Alex Berson and Stephen J.Smith: Data Warehousing, Data Mining, and OLAP Computing
McGrawHill Publisher, 1997.
Course Outcome (CO): At the end of this course, the students will be able to
CO1: Acquire knowledge on Storage and Indexing
CO2: Learn the concept of Transaction Management
CO3: Understand the concept of Query Evaluation, External Sorting, Evaluating Relational
Operators and Relational Query Optimizer
CO4: Apply the concept of query optimization into real world problem
Module-1:
Over view of Storage and Indexing, Disks and Files
Data on external storage; File organizations and indexing; Index data structures; Comparison of file
organizations; Indexes and performance tuning Memory hierarchy; RAID; Disk space management;
Buffer manager; Files of records; Page formats and record formats.
Transaction Management
Module-2:
Tree Structured Indexing
Intuition for tree indexes; Indexed sequential access method; B+trees, Search, Insert, Delete, Duplicates,
B+tress in practice
Hash-Based Indexing
Static hashing, Extendible hashing, Linear hashing, comparisons
Module-3:
Overview of Query Evaluation, External Sorting
The system catalog, Introduction to operator evaluation; Algorithm for relational operations;
Introduction to query optimization; Alternative plans; A motivating example; what a typical optimizer
does. When does a DBMS sort data? A simple two-way merge sort; External merge sort
Module-4:
A Typical Relational Query Optimizer
Translating SQL queries in to Relational Algebra; Estimating the cost of a plan; Relational algebra
equivalences; Enumeration of alternative plans; Nested sub-queries; other approaches to query
optimization.
Module-5:
Physical Database Design and Tuning
Introduction; Guidelines for index selection ,examples; Clustering and indexing; Indexes that enable
index-only plans, Tools to assist in index selection; Overview of database tuning; Choices in tuning the
conceptual schema; Choices in tuning queries and views; Impact of concurrency; DBMS benchmarking.
More Recent Applications
Mobile databases; Multimedia databases; Geographical Information Systems; Genome data
management.
Text Books:
1. Raghu Ramakrishnan and Johannes Gehrke: Database Management Systems,3 rd Edition, McGraw-
Hill,2003, (Chapters 8,9,10,11,12,13.1 to 13.3, 14,15,20)
Reference Books:
Course outcomes (CO):At the end of this course, the students will be able to:
CO1: Understand the Map Reduce technique for solving Big Data problems
CO2:Understand algorithms for Big Data by deciding on the apt Features set
CO3:Apply algorithms for handling peta bytes of datasets
CO4: Analyze main memory consumption for Big Data analytics
CO5:Understand and analyze the usage of map reduce techniques for solving big data problems
Module -1:
Example Applications, Basic Nomenclature, Analysis Process Model, Analytical Model Requirements ,
types of Data Sources, Sampling, Types of data elements, data explorations, exploratory statistical
analysis, missing values, outlier detection and Treatment, standardizing data labels, categorization
Module -2:
Module -3:
Meet Hadoop
Data, Data Storage and Analysis ,Comparison with Other Systems,RDBMS,Grid Computing Volunteer
Computing, A Brief History of Hadoop,Apache Hadoop and the Hadoop Ecosystem Hadoop Releases
Response
Module -4:
a File Write, Coherency Model, Parallel Copying with distcp Keeping an HDFS Cluster Balanced, Hadoop
Archives
Module -5:
Map Reduce
A Weather Dataset ,Data Format, Analyzing the Data with Unix Tools, Analyzing the Data with Hadoop,
Map and Reduce, Java MapReduce, Scaling Out, Data Flow, Combiner functions, Running a Distributed
MapReduce Job, Hadoop Streaming, Hadoop Pipes, Compiling and Running, Developing a MapReduce
Application, The Configuration API, Combining Resources, Variable Expansion, Configuring the
Development Environment, Managing Configuration, GenericOptionsParser, Tool and ToolRunner,
Writing a Unit Test, Mapper, Reducer, Running Locally on Test Data, Running a Job in a Local Job Runner,
Testing the Driver, Running on a Cluster, Packaging, Launching a Job, The MapReduce Web UI, Retrieving
the Results, Debugging a Job, Hadoop Logs, Remote Debugging.
Text Books:
1. Bart Baesens, “ Analytics in a Big Data World : The Essential Guide to Data Science and its
Applications” Wiley
2. Michael Minelli, Michehe Chambers, “Big Data, Big Analytics: Emerging Business Intelligence and
Analytic Trends for Today’s Businesses”, 1st Edition, Michael Minelli, Michele Chambers, Ambiga Dhiraj,
Wiley CIO Series, 2013.
3. Tom White, “Hadoop: The Definitive Guide”, 3rd Edition, O’reilly, 2012
Reference Books:
1. Boris lublinsky, Kevin t. Smith, Alexey Yakubovich, “Professional Hadoop Solutions”, Wiley, ISBN:
9788126551071, 2015.
2. Chris Eaton, Dirk deroos et al. , “Understanding Big data ”, McGraw Hill, 2012.
3. Vignesh Prajapati, “Big Data Analytics with R and Haoop”, Packet Publishing 2013.
4. Tom Plunkett, Brian Macdonald et al, “Oracle Big Data Handbook”, Oracle Press, 2014.
Course Outcomes (CO):At the end of this course, the students will be able to
CO1: Understand C# and client-server concepts using .Net Frame Work Components.
CO2: Apply delegates, event and exception handling to incorporate with ASP, Win Form,
ADO.NET.
CO3: Analyze the use of .Net Components depending on the problem statement.
CO4: Implement & develop a web based and Console based application with Database
connectivity
Module -1:
Introducing C#
Creating a Simple C# Console Application, Identifiers and Keywords. System Data Types, Variables and
Constants: Value Types, Reference Types, Understanding Type Conversions, Boxing and UnBoxing.
Namespaces, The System namespace, .NET Array Types
Module -2:
Encapsulation: Encapsulation using accessors and mutators, Encapsulation using Properties. Inheritance:
Inheritance and Constructors, Sealed Classes and Sealed Methods, Extension methods.
Polymorphism: Compile time Polymorphism/ Overloading, Runtime Polymorphism/ Overriding.
Abstraction: Abstract classes, Abstract methods. Interfaces: Syntax of Interfaces, Implementation of
Interfaces and Inheritance.
Module -3:
Data Access with ADO.NET :Understanding ADO.NET: Describing the Architecture of ADO.NET,
ADO.NET,ADO.NET Entity Framework. Creating Connection Strings: Syntax for Connection
Strings.Creating a Connection to a Database: SQL Server Database, OLEDB Database, ODBC Data Source.
Creating a Command Object. Working with DataAdapters: Creating DataSet from DataAdapter.
Module -4:
WPF: New WPF Controls, WPF Architecture: Presentation Framework, Presentation Core, WindowsBase,
MIL or Milcore, Working with WPF Windows: Using XAML in WPF 4.0 Applications : Contents of XAML
and WPF Applications: XAML Elements Namespace and XAML, XAML Property Syntax, Markup
Extensions.
Module -5:
Text Books:
1. .NET 4.0 Programming (6-in-1), Black Book, Kogent Learning Solutions Inc., Wiley- Dream Tech Press.
(Chapters: 1,10,11,12,13,14 and 19).
2. Paul Deitel and Harvey Deitel: C# 2010 for Programmers, 4th Edition, Pearson Education.
(Chapters: 14,15,19 and 27.3)
Reference Books:
1. Andrew Trolsen: Pro C# 5.0 and the .NET 4.5 Framework, 6th Edition, Wiley-Appress.
2. Bart De Smet: C# 4.0 Unleashed, Pearson Education- SAMS Series.
3. Herbert Schildt: Complete Reference C# 4.0, Tata McGraw Hill, 2010.
Mobile Applications
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA52
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory & 01 Hour Tutorial/ Instructions
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
Course Outcomes (CO):At the end of this course, the students will be able to
CO1: Illustrate effective user interfaces that leverage evolving mobile device capabilities
CO2: Develop applications using software development kits (SDKs), frameworks and toolkits
CO4: Design and develop open source software based mobile applications
Module -1:
Introduction
Module -2:
Module -3:
Views and View Groups – Basic Views – Fragments – Displaying Maps – Getting Location Data –
Publishing for Publishing – Deploying APK Files
Module -4
Module -5:
Text Books:
1. Jeff McWherter and Scott Gowell, “Professional Mobile Application Development”, 1st Edition,
2012, ISBN: 978-1-118-20390-3
2. Wei-Meng Lee, “Beginning Android Application Development”, Wiley 2011.
Reference Books:
Machine Learning
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA53
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory & 01 Hour Tutorial/ Instructions
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
CREDITS: 03
CO1: Develop an appreciation for what is involved in learning models from data.
CO2: Differentiate supervised, unsupervised and reinforcement learning.
CO3: Apply neural networks, Bayes classifier and k nearest neighbor, for real world problems.
CO4: Perform statistical analysis of machine learning techniques.
CO5: Understand theory of probability and statistics related to machine learning.
CO6: Understand a wide variety of learning algorithms.
Module – 1
Introduction: Well posed learning problems, Designing a Learning system, Perspective and Issues in
Machine Learning. Concept Learning: Concept learning task, Concept learning as search, Find-S
algorithm, Version space, Candidate Elimination algorithm, Inductive Bias.
Module – 2
Decision Tree Learning: Decision tree representation, Appropriate problems for decision tree learning,
Basic decision tree learning algorithm, hypothesis space search in decision tree learning, Inductive bias
in decision tree learning, Issues in decision tree learning.
Module – 3
Bayesian Learning: Introduction, Bayes theorem, Bayes theorem and concept learning, ML and LS error
hypothesis, ML for predicting probabilities, MDL principle, Naive Bayes classifier, Bayesian belief
networks, EM algorithm.
Module – 5
Evaluating Hypothesis: Motivation, Estimating hypothesis accuracy, Basics of sampling theorem, General
approach for deriving confidence intervals, Difference in error of two hypothesis, Comparing learning
algorithms. Instance Based Learning: Introduction, k-nearest neighbor learning, locally weighted
regression, radial basis function, cased-based reasoning, Reinforcement Learning: Introduction, Learning
Task, Q Learning.
Text Books:
1. Tom M. Mitchell, Machine Learning, India Edition 2013, McGraw Hill Education.
(Sections: 1.1 – 1.3, 2.1-2.5, 2.7 3.1-3.7, 4.1 – 4.6, 6.1 – 6.6, 6.9, 6.11, 6.12, 5.1-5.6, 8.1-8.5, 13.1-
13.3)
Reference Books:
1. Trevor Hastie, Robert Tibshirani, Jerome Friedman, h The Elements of Statistical Learning, 2nd
edition, springer series in statistics.
C# .Net Laboratory
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA56
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: Hours Laboratory and 01 Hour Tutorial
CREDITS: 02
Course Outcomes : At the end of this course, the students will be able to
CO1: Understand C# and client-server concepts using .Net Frame Work Components
CO2: Apply delegates, event and exception handling to incorporate with ASP, Win Form,
ADO.NET
CO3: Analyze the use of .Net Components depending on the problem statement
CO4: Implement & develop a web based and Console based application with Database
connectivity
PART A
1.Write a Program in C# to demonstrate Command line arguments processing for the following.
a) To find the square root of a given number.
b) To find the sum & average of three numbers.
2.Write a Program in C# to demonstrate the following
a) Boxing and Unboxing b) Invalid Unboxing.
3. Write a program in C# to add Two complex numbers using Operator overloading .
4. Write a Program in C# to find the sum of each row of given jagged array of 3 inner arrays.
5. Write a Program in C# to demonstrate Array Out of Bound Exception using Try, Catch and Finally
blocks.
6.Write a Program to Demonstrate Use of Virtual and override key words in C# with a simple program.
7. Write a Program in C# to create and implement a Delegate for any two arithmetic operations
8. Write a Program in C# to demonstrate abstract class and abstract methods in C#.
9. Write a program to Set & Get the Name & Age of a person using Properties of C# to illustrate the use
of different properties in C#.
10. Write a Program in C# Demonstrate arrays of interface types (for runtime polymorphism).
PART-B
2. Display all the Project Leaders (In a Grid) reporting to selected Project Managers (In a Combo box).
3. Display all the Engineers (In a Grid) reporting to selected Project Leader (In a Combo box).
4. Display all the Employees (In a Grid) with their reporting Manager (No Value for PM).
II. Consider the Database db_LSA (Lecturer Subject Allocation) consisting of the following tables:
tbl_Subjects(IdSubject: int, SubjectCode: string, SubjectName: string)
tbl_Lecturers(IdLecturer: int, LecturerName: string, ContactNumber: string)
tbl_LecturerSubjects(IdSubject: int, SubjectCode: string, IdLecturer: int)
III. Consider the database db_VSS (Vehicle Service Station) consisting of the following tables:
tbl_VehicleTypes(IdVehicleType: int, VehicleType: string, ServiceCharge: int)
tbl_ServiceDetails(IdService: int, VehicleNumber: string, ServiceDetails: string, IdVehicleType: int)
Develop a suitable window application using C#.NET having following options.
1. Enter new Service Details for the Selected Vehicle Type (In a Combo Box).
2. Update the Existing Service Charges to Database.
3. Total Service Charges Collected for the Selected Vehicle (In a Combo box) with total amount
displayed in a text box.
NOTE: tbl_VehicleType is a static table containing the following Rows in it.
1 Two Wheeler 500
2 Four Wheeler 1000
3 Three Wheeler 700
IV. Develop a web application using C#.NET and ASP.NET for the Postal System Management. The master
page should contain the hyper links for adding Area Details, Postman details, Letter distributions
and View Letters.
Consider the database db_PSM (Postal System Management) consisting of the following tables:
tbl_AreaDetails(IdArea: int, AreaName: string)
tbl_PostmanDetails(IdPostman: int, PostmanName: string, ContactNumber: string, IdArea: int)
tbl_AreaLetters(IdLetter: int, LetterAddress: string, IdArea: int)
Develop the suitable content pages for the above created 4 hyper links with the following details:
1. Enter New Area Details
2. Enter New Postman Details with the Area he/she is in-charge of (display Area in a Combo box)
3. Enter all the Letters distributed to the selected Area (display Area in a Combo box)
4. Display all the Letter addresses (In a Grid) to be distributed by the selected Postman
(In a Combo box)
Note 1: In the practical Examination each student has to pick one question from Part A and Part B each.
Note 3: Part A has to be evaluated for 30 marks and Part B has to be evaluated for 30 marks.
Course outcomes: At the end of this course, the students will be able to
CO1: Illustrate effective user interfaces that leverage evolving mobile device capabilities
CO2: Develop applications using software development kits (SDKs), frameworks and toolkits
CO3: Establish various methods to integrate database and server-side technologies
CO4: Design and develop open source software based mobile applications
CO5: Build and deploy competent mobile development solutions
Laboratory Experiments:
The laboratory can be carried out only using any mobile application software.
1. Design an application that contains Phone Contacts in vertical linear manner. Selected contact
appears at the top of the list with a large italicized font and a blue background.
3. Develop a standard calculator application to perform basic calculations like addition, subtraction,
multiplication and division.
4. Devise an application that draws basic graphical primitives (rectangle, circle) on the screen.
5. Build an mobile application that create, save, update and delete data in a database.
Note:
1. Students are required to execute one question from lot of all 10 Questions.
2. Change of program is not permitted in the examination.
Mini Project
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA58
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 04 Hours Laboratory and 02 Hour Tutorial/Instructions
CREDITS: 03
Develop an application using the languages and concepts learnt in the theory and exercises listed upto
V semester with a good look and feel effects.
Note :
1. In the examination student has to demonstrate the project.
2. A team of maximum two students must develop the project. However during the examination, each
student must demonstrate the project individually.
3. The team must submit a brief project report (20-30 pages) that must include the following
a. Introduction
b. Requirement Analysis
c. Software Requirement Specification
d. Analysis and Design
e. Implementation
f. Testing
g. Conclusion
Multimedia Systems
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA541
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
Credits: 03
Module 1:
Introduction, Media and Data Streams, Audio Technology
Multimedia Elements; Evolving Technologies for Multimedia Systems; Defining Objects for Multimedia
Systems; Multimedia Data Interface Standards; The need for Data Compression; Multimedia Databases.
Media: Perception Media, Representation Media, Presentation Media, Storage Media, Transmission
Media, Information Exchange Media, Presentation Spaces & Values, and Presentation Dimensions; Key
Properties of a Multimedia System: Discrete & Continuous Media, Independence Media, Computer
Controlled Systems, Integration; Characterizing Data Streams: Asynchronous Transmission Mode,
Synchronous Transmission Mode, Isochronous Transmission Mode; Characterizing Continuous Media
Data Streams. Sound: Frequency, Amplitude, Sound Perception and Psychoacoustics; Audio
Representation on Computers; Three Dimensional Sound Projection; Music and MIDI Standards; Speech
Signals; Speech Output; Speech Input; Speech Transmission.
Module 2 :
Graphics and Images, Video Technology, Computer-Based Animation
Capturing Graphics and Images Computer Assisted Graphics and Image Processing; Reconstructing
Images; Graphics and Image Output Options. Basics; Television Systems; Digitalization of Video Signals;
Digital Television; Basic Concepts; Specification of Animations; Methods of Controlling Animation;
Display of Animation; Transmission of Animation; Virtual Reality Modeling Language.
Module 3:
Data Compression
Storage Space; Coding Requirements; Source, Entropy, and Hybrid Coding; Basic Compression
Techniques; JPEG: Image Preparation, Lossy Sequential DCT-based Mode, Expanded Lossy DCT-based
Mode, Lossless Mode, Hierarchical Mode. H.261 (Px64) and H.263: Image Preparation, Coding
Algorithms, Data Stream, H.263+ and H.263L; MPEG: Video Encoding, Audio Coding, Data Stream,
MPEG-2, MPEG-4, MPEG-7; Fractal Compression.
Module 4 :
Optical Storage Media
History of Optical Storage; Basic Technology; Video Discs and Other WORMs; Compact Disc Digital
Audio; Compact Disc Read Only Memory; CD-ROM Extended Architecture; Further CD-ROM-Based
Developments; Compact Disc Recordable; Compact Disc Magneto-Optical; Compact Disc Read/Write;
Digital Versatile Disc.
Module 5:
Text Books:
1. Ralf Steinmetz, Klara Narstedt: Multimedia Fundamentals: Vol 1-Media Coding and Content
Processing, 2nd Edition, Pearson Education, 2003. (Chapters 2, 3, 4, 5, 6, 7, 8, 9) 2. Prabhat K. Andleigh,
Kiran Thakrar: Multimedia Systems Design, PHI, 2003. (Chapters 1, 3, 7)
Reference Books:
1. K.R Rao, Zoran S. Bojkovic and Dragorad A. Milovanovic: Multimedia Communication Systems:
Techniques, Standards, and Networks, Pearson Education, 2002. 2. Nalin K Sharad: Multimedia
information Networking, PHI, 2002.
Computer Graphics
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA542
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
Credits: 03
Course outcomes: The students should be able to
CO1: Design and implement algorithms for 2D graphics primitives and attributes.
CO2: Illustrate Geometric transformations on both 2D and 3D objects.
CO3: Understand the concepts of clipping and visible surface detection in 2D and 3D viewing,
and Illumination Models.
CO4: Discuss about suitable hardware and software for developing graphics packages using
OpenGL.
Module 1:
Overview: Computer Graphics and OpenGL: Computer Graphics:Basics of computer graphics, Application
of Computer Graphics, Video Display Devices: Random Scan and Raster Scan displays, color CRT
monitors, Flat panel displays. Raster-scan systems: video controller, raster scan Display processor,
graphics workstations and viewing systems, Input devices, graphics networks, graphics on the internet,
graphics software. OpenGL: Introduction to OpenGL ,coordinate reference frames, specifying two-
dimensional world coordinate reference frames in OpenGL, OpenGL point functions, OpenGL line
functions, point attributes, line attributes, curve attributes, OpenGL point attribute functions, OpenGL
line attribute functions, Line drawing algorithms(DDA, Bresenham’s), circle generation
algorithms(Bresenham’s).
Module 2:
Fill area Primitives, 2D Geometric Transformations and 2D viewing: Fill area Primitives: Polygon fill-
areas, OpenGL polygon fill area functions, fill area attributes, general scan line polygon fill algorithm,
OpenGL fill-area attribute functions. 2DGeometric Transformations: Basic 2D Geometric
Transformations, matrix representations and homogeneous coordinates. Inverse transformations,
2DComposite transformations, other 2D transformations, raster methods for geometric
transformations, OpenGL raster transformations, OpenGL geometric transformations function, 2D
viewing: 2D viewing pipeline, OpenGL 2D viewing functions.
Module 3:
Clipping,3D Geometric Transformations, Color and Illumination Models: Clipping: clipping window,
normalization and viewport transformations, clipping algorithms,2D point clipping, 2D line clipping
algorithms: cohen-sutherland line clipping only -polygon fill area clipping: Sutherland-Hodgeman
polygon clipping algorithm only.3DGeometric Transformations: 3D translation, rotation, scaling,
composite 3D transformations, other 3D transformations, affine transformations, OpenGL geometric
transformations functions. Color Models: Properties of light, color models, RGB and CMY color models.
Illumination Models: Light sources, basic illumination models-Ambient light, diffuse reflection, specular
and phong model, Corresponding openGL functions.
Module 4:
3D Viewing and Visible Surface Detection: 3DViewing:3D viewing concepts, 3D viewing pipeline, 3D
viewing coordinate parameters , Transformation from world to viewing coordinates, Projection
transformation, orthogonal projections, perspective projections, The viewport transformation and 3D
screen coordinates. OpenGL 3D viewing functions. Visible Surface Detection Methods: Classification of
visible surface Detection algorithms, back face detection, depth buffer method and OpenGL visibility
detection functions.
Module 5:
Input& interaction, Curves and Computer Animation: Input and Interaction: Input devices, clients and
servers, Display Lists, Display Lists and Modelling, Programming Event Driven Input, Menus Picking,
Building Interactive Models, Animating Interactive programs, Design of Interactive programs, Logic
operations .Curved surfaces, quadric surfaces, OpenGL Quadric-Surface and Cubic-Surface Functions,
Bezier Spline Curves, Bezier surfaces, OpenGL curve functions. Corresponding openGL functions.
Question paper pattern:
1. Donald Hearn & Pauline Baker: Computer Graphics with OpenGL Version,3rd/ 4 thEdition, Pearson
Education,2011
Chapter -1: 1-1 to 1-9,2-1 to 2-9 (Excluding 2-5),3-1 to 3-5,3-9,3-20. Chapter 3-14 to 3-16,4-9,4-10,4-
14,5-1 to 5-7,5-17,6-1,6-4. Chapter: 7-1 to 7-10(Excluding 7-7), 9-1 to 9-3, 9-14.Chapter :8-3 to 8-6
2. Edward Angel: Interactive Computer Graphics- A Top Down approach with OpenGL, 5 th edition.
Pearson Education, 2008
Reference Books:
1. James D Foley, Andries Van Dam, Steven K Feiner, John F Huges Computer graphics with OpenGL:
pearson education
2. Xiang, Plastock : Computer Graphics , sham’s outline series, 2nd edition, TMG.
3. Kelvin Sung, Peter Shirley, steven Baer : Interactive Computer Graphics, concepts and applications,
Cengage Learning
Image Processing
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA543
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
Credits: 03
Course Outcomes: At the end of the course the students should be able to:
CO1: Explain how digital images are represented and manipulated in a computer, including reading and
writing from storage, and displaying.
CO2: Be conversant with the mathematical description of image processing techniques and know how to
go from the equations to code.
CO3: Know the image enhancement, segmentation and compression techniques.
Module – 1:
Teaching Hours Introduction Fundamental Steps in Digital Image Processing, Components of an Image
Processing System, Sampling and Quantization, Representing Digital Images (Data structure), Some Basic
Relationships Between Pixels- Neighbors and Connectivity of pixels in image, Applications of Image
Processing: Medical imaging, Robot vision, Character recognition, Remote Sensing
Module – 2:
Image Enhancement In The Spatial Domain: Some Basic Gray Level Transformations, Histogram
Processing, Enhancement Using Arithmetic/Logic Operations, Basics of Spatial Filtering, Smoothing
Spatial Filters, Sharpening Spatial Filters, Combining Spatial Enhancement Methods.
Module – 3:
Image Enhancement In Frequency Domain: Introduction, Fourier Transform, Discrete Fourier Transform
(DFT), properties of DFT , Discrete Cosine Transform (DCT), Image filtering in frequency domain.
Module – 4:
Image Segmentation: Introduction, Detection of isolated points, line detection, Edge detection, Edge
linking, Region based segmentation- Region growing, split and merge technique, local processing,
regional processing, Hough transform, Segmentation using Threshold.
Module – 5:
Image Compression: Introduction, coding Redundancy , Inter-pixel redundancy, image compression
model, Lossy and Lossless compression, Huffman Coding, Arithmetic Coding, LZW coding, Transform
Coding, Sub-image size selection, blocking, DCT implementation using FFT, Run length coding.
Text Books:
1. Rafael C G., Woods R E. and Eddins S L, Digital Image Processing, Prentice Hall, 3rd edition, 2008.
Reference Books:
1. Milan Sonka,”Image Processing, analysis and Machine Vision”, Thomson Press India Ltd, Fourth
Edition.
2. Fundamentals of Digital Image Processing- Anil K. Jain, 2nd Edition, Prentice Hall of India. 3. S. Sridhar
, Digital Image Processing, Oxford University Press, 2nd Ed, 2016.
Parallel Computing
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA544
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
Credits: 03
Course Outcomes: At the end of the course the students should be able to:
CO1: Know the fundamentals of parallel processing
CO2: Analyze the hardware and software required for parallel computing
CO3: Understand the distributive memory programming with MPI and OpenMP
Module 1:
Introduction to Parallel Computing
Need of Performance, Building Parallel Systems, Why to Write Parallel Programs? How to Write Parallel
Programs? Approach: Concurrent, Parallel, Distributed.
Parallel Hardware and Parallel Software
Background, Modifications to the von Neumann Model, Parallel Hardware, Parallel Software, Input and
Output, Performance, Parallel Program Design and Writing and Running Parallel Programs
Module 2:
Distributed Memory Programming with MPI
Getting Started, The Trapezoidal Rule in MPI, Dealing with I/O, Collective Communication, MPI Derived
Data types, A Parallel Sorting Algorithm Shared Memory Programming with Pthreads
Processes, Threads and Pthreads, Hello, World program ,Matrix-Vector Multiplication, Critical Sections
Busy-Waiting, Mutexes, Producer-Consumer Synchronization and Semaphores, Barriers and Condition
Variables, Read-Write Locks, Caches, CacheCoherence, and False Sharing and Thread-Safety
Module 4:
Shared Memory Programming with
Introduction to OpenMP, The Trapezoidal Rulem Scope of Variables, The Reduction Clause, The Parallel
For Directive.
Module 5:
OpenMP, Parallel Program Development and Parallel Algorithms
More About Loops in OpenMP: Sorting, Scheduling Loops, Producers and Consumers, Caches, Cache-
Coherence, and False Sharing and Thread-Safety, Two N-Body Solvers, Tree Search.
• The students will have to answer 5 full questions, selecting one full question from each module.
Text Books:
1. An introduction to parallel programming by peter s. Pacheco. 2011.I Edition ,morgan kaufmann
publishers
Reference Books :
1. Using OpenMP: Portable Shared Memory Parallel Programming ,Gabriele Jost and Ruud van der Pas
The MIT Press (October 12, 2007)
2. Using MPI - 2nd Edition: Portable Parallel Programming with the Message Passing Interface,William
Gropp and Ewing Lusk, 1999, 2nd edition, MIT Press
3. Pthreads Programming: A Posix Standard for Better Multiprocessing,Dick Buttlar, Jacqueline Farrell &
Bradford Nichols .1996, I Edition , Oreilly
Module 1:
Introduction
When simulation is the appropriate tool and when it is not appropriate; Advantages and disadvantages
of Simulation; Areas of application; Systems and system environment; Components of a system; Discrete
and continuous systems; Model of a system; Types of Models; Discrete-Event System Simulation; Steps
in a Simulation Study. Queuing Models : Characteristics of queuing systems; Queuing notation
Simulation Examples: Queuing, Inventory System
Module 2:
General Principles and Statistical Models in Simulation :Concepts in Discrete-Event Simulation: The
Event-Scheduling / Time-Advance Algorithm, World Views, Manual simulation Using Event Scheduling;
List processing. Statistical Models in Simulation: Review of terminology and concepts; Random Variables,
Probability Distribution, Probability distribution function, Useful statistical models; discrete
distributions; Continuous distributions;
Module 3:
Module 4:
Input Modeling and Verification and Validation :Data Collection; Identifying the distribution with data;
Parameter estimation; Goodness of Fit Tests; Fitting a non-stationary Poisson process; Selecting input
models without data; Multivariate and Time-Series input models, uniformity and independence, Chi-
Square test, K-S Test. Verification and Validation :Verification, Calibration, and Validation; Optimization:
Model building, verification and validation; Verification of simulation models; Calibration and validation
of models.
Module 5:
Estimation of Absolute Performance & Computer System Simulation 6 Hours Types of simulations with
respect to output analysis; Stochastic nature of output data; Absolute measures of performance and
their estimation; Output analysis for terminating simulations; Output analysis for steady-state
simulations.
Text Books:
1. Jerry Banks, John S. Carson II, Barry L. Nelson, David M. Nicol: Discrete-Event System Simulation, 5th
Edition, Pearson, 2010. (Listed topics only from Chapters1 to 12)
Reference Books: 1. Lawrence M. Leemis, Stephen K. Park: Discrete – Event Simulation: A First Course,
Pearson / Prentice-Hall, 2006.
2. Averill M. Law: Simulation Modeling and Analysis,4th Edition, Tata McGraw-Hill, 2007. 3. Simulation
5ed Ross Elsevier 4. Theory of modeling and simulation, Zeiglar, Elsevier
Course Outcome (CO): At the end of this course, the students will be able to
CO1:use the new technologies that provide interactive devices and interfaces.
CO2: apply the process and evaluate UID.
CO3: understand Direct Manipulation and Virtual Environment
CO4: discuss the command, natural languages and issues in design for maintaining QoS.
CO5: persuade user documentations and information search.
Module 1:
Introduction
Usability of Interactive Systems: Introduction, Usability Goals and Measures, Usability Motivation,
Universal Usability, Goals for our profession. Guideline, principles, and theories: Introduction,
Guidelines, principles, Theories,
Module 2:
Managing Design Processes: Introduction, Organizational Design to support Usability, The Four Pillars of
Design, Development methodologies: Ethnographic Observation, Participatory Design, Scenario
Development, Social Impact statement for Early Design Review, Legal Issues. Introduction, Expert
Reviews, Usability Testing and Laboratories, Survey Instruments, Acceptance tests, Evaluation during
Active Use,
Module 3:
Interaction Styles
Direct Manipulation and Virtual Environments: Introduction, 3D Interfaces, Tele-operation, Virtual and
Augmented Reality Menu Selection, Form Filling and Dialog Boxes: Introduction, Task-Related Menu
Organization, Single Menus, Combination of Multiple Menus, Content Organization, Fast Movement
Through Menus, Data Entry With Menus, Form Filling, Dialog Boxes and Alternatives, Audio Menus and
Menus for Small Displays.
Module 4:
Introduction, Online versus paper documentation, Reading from paper versus Displays, Shaping the
content of the Manuals, Accessing the Documentation, Online Tutorials and animated demonstrations,
Online Communities for User Assistance, The Development Process.
Introduction, Search in Textual Documents and Database Querying, Multimedia document searches,
advanced filtering and Search Interfaces, Information Visualization: Introduction, Data tyoe by task
taxonomy, Challenges for information visualization.
1. Ben Shneiderman, Plaisant, Cohen, Jacobs: Designing the User Interface, 5th Edition, Pearson
,Education, 2010
Reference Books:
1. Alan Dix, Janet Finalay, Gregory D AbiwdmRussel Bealel: Human-Computer Interaction, III Edition,
Pearson ,Education, 2008.
3. Wilber O Galitz: The Essential Guide to User Interface Design- An Introduction to GUI Design,
Principles and Techniques, Wiley-Dreamtech India Pvt Ltd, 2011
Software Architecture
[As per Choice Based Credit System (CBCS) scheme]
SEMESTER – V
Subject Code: 18MCA553
CIE Marks: 40 SEE Marks: 60 SEE Hours: 03
Number of Lecture Hours/Week: 03 Hours Theory
Total Number of Lecture Hours: 45
Total Number of Teaching Hours/Module: 9
Credits: 03
Course Outcome (CO): At the end of this course, the students will be able to
CO1:Acquire knowledge of
- working principles, characteristics and basic applications of Architectural patterns.
- project life cycle context.
- how the architecture is influenced.
- the quality attributes of architecture.
CO2:Modeling quality attributes through
- check lists.
- experiments.
- back-of-the envelope analysis.
CO3:Understand the techniques of requirements gathering through interviewing stake holders,
etc.
CO4:Understand different types of design patterns.
Module -1:
What software architecture is and what it is not; Architectural Structures and views;
Architectural patterns; What makes a “good” architecture? Why is software important? Technical
Context; Project life-cycle context; Business context; Professional context; Stake holders; How is
Architecture influenced? What Do Architecture influence?
Module -2:
Module – 3:
Modeling Architecture to enable quality attribute analysis; Quality attribute check lists; Through
experiments and Back-of-the envelope analysis; Experiments; Simulations and prototypes; Analysis at
different stages of the life cycle. Architecture and requirements Gathering ASRs from requirements
documents; ASRs by interviewing stake holders; ASRs by understanding the business; capturing
ASRs in a utility tree; Typing the methods together.
Module – 4:
Module -5:
Architectural Patterns
Introduction to patterns; From Mud to structure; Layers; Pipes and filters; Blackboard; Distributed
systems; Brocker; Interactive systems; Model-view-control; Presentation- abstraction- control;
Adaptable systems; Microkernel
Text Books:
1. Len Bass, Paul Clements, Rick Kazman: Software Architecture in Practice, 3rd Edition,
Pearson Education, 2013(Listed Topics only from Chapters
1,2,3,4,5,6,7,8,9,10,11,14,16,17,18,19)
2. Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal: Pattern-
Oriented Software Architecture, A System of Patterns, Volume 1, John Wiley and Sons, 2012
(chapter 2).
Reference Books:
1. Richard N.Taylor, Nenad Medvidovic and Eric M. Dashofy: Software Architecture: Foundations,
Theory, and Practice, Wiley- India 2012
Module 1:
Module 2 :
Implementation of RAID, RAID Array Components, RAID Levels, RAID Comparison, RAID Impact on Disk
Performance, Hot Spares Components of an Intelligent Storage System, Intelligent Storage Array, Types
of DAS, DAS Benefits and Limitations.
Module 3 :
Disk Drive Interfaces, Introduction to Parallel SCSI, Overview of Fibre Channel, The SAN and Its Evolution,
Components of SAN, FC Connectivity, Fibre Channel Ports, Fibre Channel Architecture, Zoning, Fibre
Channel Login Types, FC Topologies. General – Purpose Service vs. NAS Devices, Benefits of NAS,
Module 4:
NAS File I / O, Components of NAS, NAS Implementations, NAS File-Sharing Protocols, NAS I/O
Operations, Factors Affecting NAS Performance and Availability. iSCSI, FCIP. Fixed Content and Archives,
Types of Archive, Features and Benefits of CAS, CAS Architecture, Object Storage and Retrieval in CAS,
CAS Examples. Forms of Virtualization, SNIA Storage Virtualization Taxonomy, Storage Virtualizations
Configurations, Storage Virtualization Challenges, Types of Storage Virtualization.
Module 5:
Source and Target, Uses of Local Replicas, Data Consistency, Local Replication Technologies, Restore and
Restart Considerations, Creating Multiple Replicas, Management Interface, Modes of Remote
Replication, Remote Replication Technologies, Network Infrastructure.
Storage Security Framework, Risk Triad, Storage Security Domains, Security Implementations in Storage
Networking Monitoring the Storage Infrastructure, Storage Management Activities, Storage
Infrastructure Management Challenges, Developing an Ideal Solution.
Text Books:
Reference Books:
1. Ulf Troppens, Rainer Erkens and Wolfgang Muller: Storage Networks Explained, Wiley India, 2003.
2. Rebert Spalding: Storage Networks, The Complete Reference, Tata McGraw Hill, 2003.
3. Richard Barker and Paul Massiglia: Storage Area Networks Essentials A Complete Guide to
Understanding and Implementing SANs, Wiley India, 2002.