SYLLABUS FOR VI SEMESTER Department of Computer...
Transcript of SYLLABUS FOR VI SEMESTER Department of Computer...
1
MALNAD COLLEGE OF ENGINEERING, HASSAN (An Autonomous Institution Affiliated to VTU, Belagavi)
SYLLABUS FOR
VI SEMESTER
Department of Computer Science and Engineering
BATCH 2015-2019
2
Department Vision To become a prominent department of Computer Science & Engineering producing competent
professionals with research and innovation skills, inculcating moral values and societal concerns.
Department Mission 1. Provide learning ambience to generate innovative and problem solving skills with professionalism
2. To create facilities and expertise in advanced computer technology thereby promote research
3. Enhance Industry Institute Interaction programme to get acquainted with corporate culture
4. To induce ethical values and spirit of social commitment
Program Educational Objectives (PEOs)
PEO 1 Graduates will be an efficient software developer in diverse fields and will be a successful
professional and/or pursue higher studies
PEO 2 Graduates will be capable to adapt to new computing technology for professional excellence and
Research and be a lifelong learner.
PEO 3 Graduates will work productively exhibiting ethical qualities for the betterment of society.
PEO 4 Graduates will possess leadership qualities, work harmoniously as a team member with
effective communication skills
Programme Outcomes (POs)
Engineering Graduates will be able to:
1. Engineering knowledge: Apply the knowledge of mathematics, science, engineering
fundamentals, and an engineering specialization to the solution of complex engineering
problems.
2. Problem analysis: Identify, formulate, review research literature, and analyze
complex engineering problems reaching substantiated conclusions using first principles of
mathematics, natural sciences, and engineering sciences.
3. Design/development of solutions: Design solutions for complex engineering problems and
design system components or processes that meet the specified needs with
appropriate consideration for the public health and safety, and the cultural, societal, and
environmental considerations.
4. Conduct investigations of complex problems: Use research-based knowledge and research
methods including design of experiments, analysis and interpretation of data, and synthesis of the
information to provide valid conclusions.
5. Modern tool usage: Create, select, and apply appropriate techniques, resources, and modern
engineering and IT tools including prediction and modeling to complex engineering activities with
an understanding of the limitations.
6. The engineer and society: Apply reasoning informed by the contextual knowledge to assess
societal, health, safety, legal and cultural issues and the consequent responsibilities relevant to the
professional engineering practice.
7. Environment and sustainability: Understand the impact of the professional engineering
solutions in societal and environmental contexts, and demonstrate the knowledge of,
and need for sustainable development.
3
8. Ethics: Apply ethical principles and commit to professional ethics and responsibilities and
norms of the engineering practice.
9. Individual and team work: Function effectively as an individual, and as a member or leader in
diverse teams, and in multidisciplinary settings.
10. Communication: Communicate effectively on complex engineering activities with the
engineering community and with society at large, such as, being able to comprehend and write
effective reports and design documentation, make effective presentations, and give and receive
clear instructions.
11. Project management and finance: Demonstrate knowledge and understanding of
the engineering and management principles and apply these to one‟s own work, as a member
and leader in a team, to manage projects and in multidisciplinary environments.
12. Life-long learning: Recognize the need for, and have the preparation and ability to
engage in independent and life-long learning in the broadest context of technological change.
Program Specific Outcomes (PSOs)
PSO1. An ability to use current techniques, skills and tools necessary for carrying out
multidisciplinary projects.
PSO2. An ability to build a computer based system, process or a component that meets the desired
needs.
Scheme of Teaching and Credits: 2017-2018
SCHEME: VI Semester
Sub. Code
Subject Name L T P C
CS601 Software Engineering 3 0 0 3 CS602 Data Mining and Data Warehousing 3 1 0 4 CS603 Computer Networks 4 0 0 4 CS604 Web Programming 3 1 0 4 CS605 System Software Laboratory 0 0 3 1.5 CS606 Web Programming Laboratory 0 0 3 1.5 HS004 Communication Skills-II (Summer term Course) 1 0 2 1 HS006 Environmental Science (Audit Course) 2 0 0 0 CS65X Elective – I 3 0 0 3 CS66Y Elective - II 3 0 0 3
Total Credits 25
Elective-I Elective-II
CS651 C# Programming and .NET CS652 Python Application and
Programming CS653 Operation Research CS654 Advanced Algorithms CS655 System Simulation and
Modeling
CS661 Multimedia Computing CS662 Graph Theory and
Combinatorics CS663 Advanced UNIX Programming CS664 Artificial Intelligence CS665 Principles of Programming
Languages
4
CS601 SOFTWARE ENGINEERING (3-0-0) 3 Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40 Course Objective: at the end of the course students will be able to use the principles of software engineering for developing a software product. Course Outcomes (COs): At the end of the course the students will be able to:
1. Apply software process models for a given software project PO1,PO2
2. Exercise the role of software project management including planning, scheduling &
risk management
PO1,PO11
3. Create software requirements and the SRS document PO1,PO2
4. Explore different software architectural styles PO3,PO5
5. Exercise approaches to verification and validation of a software product PO3,PO5
6. Practice software testing approaches like unit, integration, release and acceptance PO2,PO5
PART-A
1. Introduction: Professional software development, Software engineering ethics, Case studies.
Software processes: Software process models Process activities 5 Hrs.
2. Coping with change. The RU process. Agile software development: Agile methods, Plan-driven
and agile development, Extreme programming, Agile project management, Scaling agile
methods. 5 Hrs. PART-B
3. Requirements Engineering: Functional and non-functional requirements, the software requirements document, Requirements specification , Requirements engineering processes, Requirements elicitation and analysis, Requirements validation. 5 Hrs.
4. Requirements management. System modeling : Context models, Interaction models, Structural
models, Behavioral models Model-driven engineering 5 Hrs.
PART-C 5. Software testing: Development testing, Test-driven development, Release testing, User testing.
Software evolution: Evolution processes, Program evolution dynamics. Software maintenance,
Legacy system management. 5 Hrs
6. Dependability and security Risk-driven requirements specification, Safety specification,
Reliability specification, Security specification, Formal specification, Component-based software
engineering, Components and component models CBSE processes, Component composition . 5 Hrs
PART-D 7. Project management: Risk management, Managing people, Teamwork, Quality management:
Software quality, Software standards, Reviews and inspections. 5 Hrs
8. Software measurement and metrics, Configuration management, Change management, Version
management, System building, Release management. 5 Hrs
Text Book: Ian Sommerville, “Software Engineering”, Person Education Ltd., 9th Edition, 2013.
Reference Books:
5
1. Roger.S.Pressman, “Software Engineering-A Practitioners approach”, McGraw-Hill, 7th
Edition, 2007.
2. http://nptel.ac.in/courses/106101061/
CS602 DATA MINING AND DATA WAREHOUSING (3-1-0)4
Exam. Hours: 3 Hrs / week: 4
SEE: 50 Total hrs: 52 Course Outcomes (COs): Carryout data mining project. At the end of the course the students will be able to:
1) Describe the design of Data Warehousing. PO1,PO2
2) Compare and contrast between different data mining tasks and the algorithms most appropriate for addressing these tasks enabling the student to independently carry out data mining projects.
PO2,PO3, PO4PO11
3) Creatively deal with data related issues that need to be addressed for successful data mining to be carried out.
PO1,PO2
4) Systematically evaluate models/algorithms with respect to their accuracy PO1,PO3,PO4
5) Critique emerging standards for data mining and apply them to practical scenarios
PO1,PO2,PO3
PART-A
1. Data Warehousing: Introduction, Operational Data Stores (ODS), Extraction Transformation
Loading (ETL), Data Warehouses, Design issues, Guidelines for Data Warehouse
Implementation, Data Warehouse metadata.
7Hrs
2. Online Analytical Processing (OLAP): Introduction, Characteristics of OLAP systems,
Multidimensional view and Data cube, Data cube implementations, Data cube operations,
Implementation of OLAP.
6Hrs
PART-B
3. Introduction to Data Mining: What is Data Mining? Motivating Challenges, The origins of
data mining, Data Mining Tasks, Types of Data. 7Hrs
4. Data-2: Data Pre-processing, Measures of Similarity and Dissimilarity: Basics, Similarity and
Dissimilarity between Simple Attributes, Dissimilarities between Data Objects, Similarities
between Data Objects. 6 Hrs
PART-C
5. Classification: Preliminaries; General approach to solving a classification problem; Decision
tree induction; Rule-based classifier; Nearest-neighbor classifier. 7Hrs
6. Association Analysis – 1 : Problem Definition; Frequent Item set generation; Rule Generation;
Compact representation of frequent item sets; Alternative methods for generating frequent item
sets. 6Hrs
PART-D
7. Association Analysis – 2: FP-Growth algorithm, Evaluation of association patterns; Effect of
skewed support distribution; Sequential patterns. 7 Hrs
8. Cluster Analysis: Overview, K-means, Agglomerative hierarchical clustering, DBSCAN. 6hrs
Text Books:
1. G. K. Gupta: Introduction to Data Mining with Case Studies, 3rd Edition, PHI, New Delhi, 2009.
2. Pang-Ning Tan, Michael Steinbach, Vipin Kumar, “Introduction to Data Mining”, 1st Edition
(Reprint) Pearson Education, 2014.
3. Jiawei Han and Micheline Kamber, “Data Mining – Concepts and Techniques”, Morgan
Kaufmann, 3rd
Edition, 2012.
6
Reference Book:
1. K.P.Soman, Shyam Diwakar, V.Ajay, “Insight into Data Mining – Theory and Practice”, PHI,
2006
2. http://nptel.ac.in/courses/110106064/
3. http://nptel.ac.in/courses/106106093/
CS603 COMPUTER NETWORKS (4-0-0) 4 Exam. Hours: 3 Hrs / week: 4
SEE: 50 Total hrs: 52
Course Objective: Students able to Acquire knowledge of working mechanism of Network and Transport
Layer Protocols and multimedia.
Course Outcomes (COs): At the end of the course the students will be able to:
1. Know of Network Layer Services and Network layer Performance PO1,PO3
2. Differentiate the different Versions of Internet Protocols and IP Addresses PO2,PO4
2. Describe and Analyse Uncast and Multicast routing algorithms and their uses PO2,PO4
3. Analyze the Transport Layer Protocols, UDP/TCP Services, Features and their Segment formats
PO2,PO4
4. Design Flow Control, Error Control an Congestion Control mechanisms at Transport Layer PO1,PO3 5. Know the use of different QoS models and their applications PO3,PO4 6. Implement different types of Compression methods for multimedia networks PO2,PO3
PART-A
1. Network Layer: Network Layer Services, Packet Switching: Datagram Approach and Virtual
Circuit Approach; Net work-Layer Performance: Delay, Throughput, Packet Loss, Congestion
Control; IPv4 Addresses: Address Space, Classful Addressing, Classless Addressing, DHCP, NAT
7Hrs
2. Network Layer Protocols: Internetwork Protocol: Datagram format, Fragmentation, Options,
Security of IPV4 Datagrams; ICMPv4: Messages, Mobile IP: Addressing, Agents, Three Phases,
Inefficiency in Mobile IP 6Hrs PART-B
3. Unicast Routing: Introduction: General Idea, Least Cost Routing; Routing Algorithms: Distance Vector, Link-State Routing , Path-Vector Routing; Unicast Routing Protocols: Internet Structure, Routing Information Protocol (RIP), Open Shortest Path First (OSPF), Border Gateway Protocol Version 4 (BGP4) 7Hrs
4. Multicast Routing: Introduction: Unicasting, Multicasting, Broadcasting; MULTICASTING
BASICS: Multicast Addresses, Delivery at Data-Link Layer, Collecting Information about Groups, Multicast Forwarding, Two Approaches to Multicasting; INTRADOMAIN MULTICAST PROTOCOLS: Multicast Distance Vector (DVMRP), Multicast Link State (MOSPF) Protocol Independent Multicast (PIM); INTERDOMAIN MULTICAST PROTOCOLS: IGMP: Messages, Propagation of Membership Information, Encapsulation; Next Generation IP: IPV6 Addressing ,The IPV6 Protocol and Extension Header 6Hrs
PART-C
5. Transport Layer protocols: Introduction: Services, Port Numbers, User Datagram
Protocol(UDP): User Datagram, UDP Services, UDP Applications; Transmission Control
Protocol(TCP): TCP Services, TCP Features , Segment, A TCP Connection, Windows in TCP
7Hrs
7
6. Transmission Control Protocol: Flow Control, Error Control, TCP Congestion Control; TCP
Timers and Options. 6 Hrs PART-D
7. Stream Control Transmission Protocol (SCTP): Services, Features, Packet Format and Association;
Quality of Service: QoS: Data Flow Characteristics; Flow Control to Improve QoS:
Scheduling, Traffic Shaping or Policing, Resource Reservation, Admission Control; INTEGRATED
SERVICES (INTSERV): Flow Specification, Admission, Service Classes, Resource Reservation
Protocol (RSVP), Problems with Integrated Services; DIFFERENTIATED SERVICES (DFFSERV).
7 Hrs
8. Multimedia: Compression of Digital Voice and Video: Overview of data compression, Digital voice
and compression, Still Images and JPEG compression, Moving images and MPEG compression,
Limits of compression with loss and Compression methods without loss. 6 Hrs Text Books:
1. Behrouz A. Forouzan, Data Communications and Networking, Tata McGraw-Hill, 5th Edition,
2016
2. Nader F. Mir, Computer and Communication Networks, Pearson Education, 2014.
Reference Books:
1. Alberto Leon-Garcia and Indra Widjaja, “Communication Networks–Fundamental Concepts
and Key architectures”, Tata McGraw- Hill, 2nd
Edition 2016.
2. William Stallings, “Data and Computer Communication”, Pearson Education, 8th
Edition
2016.
3. http://nptel.ac.in/courses/106105081/
CS604 WEB PROGRAMMING (3-1-0) 4 Exam. Hours: 3 Hrs / week: 4
SEE: 50 Total hrs: 52
Course objective: Create web pages and web applications using client side and server side
programming. Course Outcomes (COs): At the end of the course the students will be able to:
1. Develop Webpages using HTML/XHTML markup languages by applying CSS for Real World Scenarios.
PO1,PO3
2. Illustrate the use of Java Scripts in dynamic WebPages. PO2,PO3
3. Create XML schema to define the declaration rules for web pages and Develop web program using Perl and MySQL database.
PO1,PO2, PO3.
4. Implement PHP and Ruby and Rails programs to create web based application. PO3,PO5 5. Design and develop a web based project. PO3,PO5
PART A
1. Fundamentals of Web, XHTML - 1:
Internet, WWW, Web Browsers, and Web Servers; URLs; MIME; HTTP; The Web, Programmers
Toolbox. XHTML: Basic syntax; Standard structure; Basic text markup; Images; Hypertext Links;
Lists. 6 Hrs
2. XHTML – 2, CSS
XHTML (continued): Tables; Forms; Frames. The <marquee> tag. CSS: Introduction; Levels of style
sheets; Selector forms; Property value forms; Font properties; List properties; Color; Alignment of
text; The box model; Background images; The <span> and <div> tags; Conflict resolution. 7 Hrs
8
PART B
3. Javascript
Overview of Javascript; Syntactic characteristics; Primitives, operations, and expressions; Screen
output and keyboard input; Control statements; Object creation, and modification; Arrays; Functions;
Pattern matching using regular expressions; Errors in scripts. 6 Hrs
4. Javascript and HTML Documents, Dynamic Documents with Javascript
The Javascript execution environment; Element access in Javascript; Events and event handling;
Handling events from the Body elements, Button elements, Text box and Password elements; The
navigator object. Introduction to dynamic documents; Element positioning; 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. 7 Hrs
PART C
5. XML:
Introduction; Syntax; Document structure; Document Type definitions; Namespaces; XML schemas;
Displaying raw XML documents; Displaying XML documents with CSS; XSLT style sheets; XML
processors; Web services 6 Hrs
6. Perl, CGI Programming:
Origins and uses of Perl; Scalars and their operations; Assignment statements and simple input and
output; Control statements; Fundamentals of arrays; Hashes; References; Functions; Pattern
matching; file input and output; The Common Gateway Interface; CGI linkage; Query string format;
CGI.pm module; Cookies. Database Access with Perl and MySQL 7 Hrs
PART D
7. PHP:
Origins and uses of PHP; Overview of PHP; General syntactic characteristics; Primitives, operations
and expressions; Output; Control statements; Arrays; Functions; Pattern matching; Form handling;
Files; Cookies; Session tracking. Database Access with PHP and MySQL. 7 Hrs
8. Ruby, Rails:
Origins and uses of Ruby, Scalar types and their operations, Simple input and output, Control
statements, Arrays, Hashes, Methods, Classes, Pattern matching. Overview of Rails, Document
requests, Processing forms, Rails applications with Databases, Layouts . 6 Hrs
Text Book:
Robert W. Sebesta: Programming the World Wide Web, 4th
Edition, Pearson Education, 2011.
Reference Books:
1. Deitel H.M. and Deitel P.J., “Internet and World Wide Web How to program”, Pearson
International, 2012, 4th Edition.
2. Randy Connolly, Ricardo Hoar, “Fundamentals of Web Development”, Pearson, 2015.
3. ISRD Group: Internet Technology and Web Design, Tata McGraw Hill Publishing Ltd, 2011
4. http://www.w3c.org.
CS605 SYSTEM SOFTWARE LAB (0-0-3) 1.5 Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40 Course Objective: Implement shell script, scheduling, page replacement, memory management algorithm and make use of LEX and YACC to generate the grammar. Course Outcomes (COs): At the end of the course the students will be able to:
1. Execute various programs using Unix system calls and shell script PO2,PO3,PO10 2. Implement programs using grammar driven tools such as LEX and YACC PO1,PO2,PO10 3. Design and develop scheduling, page replacement and memory management PO2, PO3
9
algorithms in c. 4. Generate tokens and parser using regular expressions and grammar. PO1,PO2,PO3
PRACTICE PROGRAMS (SELF STUDY COMPONENT)
Following set of programs are given for execution in lab, which will be helpful in understanding the
basics of programming and serves as base for execution of Exercise Programs. These programs are not
considered for CIE and SEE and carry 10 marks that will be included with record marks.
Practices the following Programs before executing the corresponding programs of Exercise programs Part.
1. Write and Execute LEX program to count the no of a‟s in the given string.
2. Write and Execute LEX program to count the no. of vowels and consonants in a given string.
3. Write and Execute LEX Program to recognize whether a given sentence is simple or compound.
4. Write and Execute LEX Program to count the no. of scanf and printf statements in a C program.
Replace them with readf and writef statements respectively.
5. Write and Execute LEX program to find the number of i) Positive and negative integers ii)
Positive and negative fractions.
6. Write and Execute LEX program to convert uppercase to lowercase and vice versa.
7. Write and Execute YACC Program to recognize strings „aaab‟, „abbb‟, „ab‟ and „a‟ using
grammar (anb
n, n>=0)
8. Write and Execute YACC Program to recognize a valid variable, which starts with a letter,
followed by any number of letters or digits.
9. a)A shell script to find the sum of two numbers.
b)A shell script to find biggest of three numbers.
10. a)Write shell script to check whether the number is palindrome or not.
b) Write a shell script to find factorial of a number.
EXERCISE PROGRAMS
Following set of programs are included in CIE and SEE, Students have to pick a program from lot
of 14 programs in CIE and SEE.
1. a) Write and execute a LEX program to count the number of characters, words, spaces & no. of
lines in a given input file.
b) Write and Execute LEX program to count the number of comment lines in a given C program.
Also eliminate them and copy that program into separate file.
2. Write and Execute LEX program to recognize a valid arithmetic expression and to recognize the
identifiers and operators present and to print them separately.
3. a) Write and Execute LEX program to recognize and count the number of identifiers in a given
input file.
b) Write and Execute LEX program to find & replace String.
4. a) Write and Execute LEX program to check the validity of a Date.
b) Write and Execute LEX program will read an input file and copy the content with line number
to another file.
5. Write and Execute YACC program to recognize a valid arithmetic expression that uses operators
+, -,* & /.
6. Write and Execute YACC program to evaluate an arithmetic expression involving operators +, -,
* and /.
7. Write and Execute YACC program to recognize nested IF control statements and display the
levels of nesting.
8. Write and Execute YACC program to convert infix to postfix.
9. a) Write and Execute YACC program to recognize the grammar (anb, n >= 10).
10
b) Write and Execute YACC Program to recognize the grammar (anb
mc
k, m,n,k >=0 and m=n+k).
10. a) Write and Execute Non-recursive shell script that accepts any number of arguments and
prints them in the Reverse order, (For example, if the script is named rargs,then executing rargs
A B C should produce C B A on the standard output).
b) Write and Execute C program that creates a child process to read commands from the standard
input and execute them (a minimal implementation of a shell – like program). You can assume
that no arguments will be passed to the commands to be executed.
11. a) Write and Execute Shell script that accepts file names specified as arguments and creates a
shell script that contains this file as well as the code to recreate these files. Thus if the script
generated by your script is executed, it would recreate the original files.
b) Write and Execute C program to do the following: Using fork( ) create a child process. The
child process prints its own process-id and id of its parent and then exits. The parent process
waits for its child to finish (by executing the wait( )) and prints its own process-id and the id of
its child process and then exits.
12. Design, develop and execute a program in C / C++ to simulate the working of First come first
Served (FCFS) Algorithm. Determine the average turn-around time and average waiting time.
13. Design, develop and execute a program in C/C++ to simulate FIFO Page Replacement
Algorithm.
14. Develop and execute a program in C/C++ to simulate the working of First fit memory
management Algorithm.
CS606 WEB PROGRAMMING LAB (0-0-3) 1.5 Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40 Course objective: To design and implement static and dynamic website and web application.
Course Outcomes (COs): At the end of the course the students will be able to:
1. Create web pages using HTML/XHTML and cascading style sheet(CSS) PO1,PO3
2. Apply the skills to create JavaScript within web pages for dynamic client side
programming and Build XML documents.
PO2,PO5,PO3
3. Design web applications on server side using PHP, Perl, Ruby and Rails and
MySQL database.
PO1,PO2,PO3
PRACTICE PROGRAMS (SELF STUDY COMPONENT)
Following set of programs are given for execution in lab, which will be helpful in understanding the
basics of programming and serves as base for execution of Exercise Programs. These programs are not
considered for CIE and SEE and carries 15 marks that will be included with record marks.
Practices the following Programs before executing the corresponding programs of Exercise
programs Part.
1. Develop a web page illustrating the use of all basic tags.
2. Develop and demonstrate the three levels of Cascading Style Sheet.
3. Write a JavaScript code to demonstrate its syntax with basic programs.
4. Create an XML documents to display the information about 3 Employee.
5. Write and execute 5 programs to illustrate Perl script
6. Illustrate PHP script with 5 programs.
EXERCISE PROGRAMS
Following set of programs are included in CIE and SEE, Students have to pick and execute one
program in CIE and SEE
1. Write a (X)HTML program to create web page with forms, frames, links, image, marquee
11
2. Develop and demonstrate a XHTML document that illustrates the use external style sheet (CSS),
ordered list, table, borders, padding, color and the <span> tag.
3. Create a JavaScript that prompts the user for a number and then counts from 1 to that number
displaying only the odd numbers using alert window.
4. Write a java script to validate the following fields in a registration page
Name (should contains alphabets and the length should not be less than 6 characters)
Password(should not be less than 6 characters)
E-mail(should not contain invalid addresses)
5. Develop and demonstrate, using JavaScript script, a XHTML 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 two upper-case characters followed by three digits; no embedded spaces
allowed) of the user. Event handler must be included for the form element that collects this
information to validate the input. Messages in the alert windows must be produced when errors
are detected.
6. Develop and demonstrate, using JavaScript, a XHTML document that contains three short
paragraphs of text, stacked on top of each other, with only enough of each showing so that the
mouse cursor can be placed over some part of them. When the cursor is placed over the exposed
part of any paragraph, it should rise to the top to become completely visible.
7. Write an XML file which displays the book details that includes the following:
Title of book
Author name
Edition
Price
Write a DTD to validate the above XML file and display the details in a table (to do this use
XSL).
8. Write a Perl program to keep track of the number of visitors visiting the web page and to display
this count of visitors, with proper headings.
9. Write a Perl 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.
10. 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.
11. Create a XHTML form with Name, Address Line 1, Address Line 2, and E-mail text fields. On
submitting, use PHP program to store the values in MySQL table. Retrieve and display the data
based on Name.
12. Build a Rails application to accept book information viz. Accession number, title, authors,
edition and publisher from a web page and store the information in a database and to search for
a book with the title specified by the user and to display the search results with proper headings.
12
Mini Project Work: Design any web application using suitable script/Program. (Note: Generate a
report of about more than 15 pages on the application developed & duly certified by the Lab in-charge).
This application will not be evaluated in SEE and carries 10 marks in the CIE.
HS004 Communication Skills – II (1-0-2) 1 (Summer term Course)
Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 39 Course Outcomes (COs): At the end of the course the students will be able to:
1) Understand and acquire ability to manage the change from college to corporate culture and the professional etiquettes and behaviour PO9,PO10
2) Demonstrate ability to read and interpret advertisements and construct resumes PO9,PO10
3) Participate in group discussions and face interviews with emphasis on narrating and describing situations to develop oral communication skills including fluency, idea sequencing, accuracy, vocabulary and pronunciation
PO10
Session No. Topics
Session 1 College to Corporate - Change management
Session 2 Etiquettes and behavior - General Professional Power of Dressing and Grooming
Session 3 Meetings & Report writing
Session 4 Stress Management
Session 5 Aptitude and Analytical Skills/ practice papers
Session 6 Reading and interpreting advertisements
Session 7 Resume writing & writing covering letters
Session 8 Understanding types of Interviews
Session 9 The essence of Group Discussion in Interviews
Session 10 Mock Interviews – GD
Session 11 Mock Interviews - Panel Interviews
Session 12 Mock Interviews - Screening/Individual Interviews
Session 13 Recap and Feedback
Intellectual property & Proprietary of 1-Excel Consultancy Services.
Note: IE–1 & 2 (20 marks each); Assignment–1 (10 marks) and SEE (50 Marks)
CS651 C# PROGRAMMING AND .NET (3-0-0) 3
Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40
Course Objective: Students will be able to develop various console and windows applications.
13
Course Outcomes: At the end of the course the students will be able to:
1. Develop programs that use reusability properties and namespaces. PO3
2. Design applications using classes, methods, interfaces and inheritance techniques. PO1, PO3
3. Write programs to create Delegates, packages and exceptions. PO3, PO8
4. Demonstrate windows application system and building their own applications PO3
PART- A
UNIT- 1: Overview of C#:Introduction , A Simple C# Program, Namespaces , Adding Comments,
Main Returning a Value, Using Aliases for Namespace Classes, Passing String Objects to WriteLine
Method, Command Line Arguments, Main with a Class, Providing Interactive Input, Using
Mathematical Functions, Multiple Main Methods, Compile Time Errors, Programming Exercises.
Literals, Variables and Data Types: Introduction, Literals , Variables , Data Types , Value Types
Reference Types, Declaration of Variables , Initialization of Variables , Default Values ,Constant
Variables , Scope of Variables , Boxing and Unboxing, Programming Exercises. Operators and
Expressions : Introduction, Arithmetic Operators, Relational Operators, Logical Operators, Assignment
Operators, Increment and Decrement Operators, Conditional Operator, Bitwise Operators , Special
Operators ,Arithmetic Expressions, Evaluation of Expressions ,Precedence of Arithmetic Operators,
Type Conversions ,Operator Precedence and Associatively. Mathematical Functions, Programming
Exercises. Decision Making and Branching: Introduction, Decision Making with if Statement, Simple
if Statement, The if... else Statement, Nesting of if... else Statements, The else if Ladder, The Switch
Statement The? : Operator Programming Exercises. Decision Making and Looping: Introduction, The
while Statement The do Statement, The for Statement, The foreach Statement , Jumps in Loops
,Programming Exercises 5 Hrs
UNIT- 2:
Methods in C#: Introduction, Declaring Methods, The Main Method, Invoking Methods, Nesting of
Methods, Method Parameters, Pass by Value, Pass by Reference, The Output Parameters, Variable
Argument Lists, Methods Overloading. Handling Arrays: One-Dimensional Arrays, Creating an Array,
Two- Dimensional Arrays, Variable- Size Arrays, the System.Array Class. Manipulating Strings :
Creating Strings, String Methods, Inserting Strings, Comparing Strings, Finding Substrings, Mutable
Strings, Arrays of Strings, Regular Expressions 5 Hrs
PART-B
UNIT- 3
Classes and Objects : Introduction, Basic principles of OOP, Defining a Class, Adding Variables and
Methods, Member Access Modifiers, Creating Objects, Accessing Class members, Constructors,
Overloaded Constructors, Static Members, Static Constructors, Private Constructors, Copy Constructors,
Destructors, Member Initialization. Inheritance and Polymorphism: Introduction, Classical
Inheritance, Containment Inheritance, Defining a Subclass, Visibility Control, Defining Subclass
Constructors, Multilevel Inheritance, Hierarchical Inheritance, Overriding Methods, Hiding Methods,
Abstract Classes, Abstract Methods, Sealed Classes: Preventing Inheritance, Sealed Methods, The this
reference, Nesting of Classes, Constant Members, Read-only Members, Properties, Indexers.
Polymorphism, Interface: Multiple Inheritance, Multiple Inheritance: Introduction, Defining an
Interface, Extending an Interface, Implementing Interfaces, Interfaces and Inheritance, Explicit Interface
Implementation, Abstract Class and Interfaces. 5 Hrs
UNIT- 4
Operator Overloading: Introduction, Over loadable Operators, Need for Operator Overloading,
Overloading Unary Operators, Overloading Binary Operators, Overloading Comparison Operators
Delegates and Events: Introduction, Delegates, Delegate Declaration, Delegate Methods, Delegate
Instantiation, Delegate Invocation, Using Delegates, Multicast Delegates, Events. Managing Errors
and Exceptions: Introduction, What is Debugging? Types of Errors, Exceptions, Syntax of Exception
Handling Code, Multiple Catch statements, The Exception Hierarchy, General Catch Handler, Using
14
Finally statement, Nested Try Blocks, Throwing our Own Exceptions, Checked and Unchecked
Operators, Using Exceptions for Debugging. 5 Hrs
PART-C
UNIT- 5
Understanding . NET: The C# Environment: Building a Better Window (Introducing Windows
Forms): Overview of the System.Windows.Forms Namespace, Working with the Windows Forms
Types, The Role of the Application Class ,The Anatomy of a Form, The Functionality of the Control
Class, The Functionality of the Form Class, Building Windows Applications with Visual Studio 2005,
Working with Menu Strips and Context Menu Strips, Working with Status Strips. 5 Hrs
UNIT- 6
Programming with Windows Forms Controls: The World of Windows Forms Controls, Adding
Controls to Forms by and, Adding Controls to Forms Using Visual Studio 2005, Working with the Basic
Controls, Configuring the Tab Order, Setting the Form‟s Default Input Button, Working with More
Exotic Controls, Building Custom Windows Forms Controls, Testing the Car Control Type, Building a
Custom Car Control Form Host. 5 Hrs
PART-D
UNIT- 7
Data Access with ADO.NET: A High-Level Definition of ADO.NET, Understanding ,DO.NET Data
Providers, Additional ADO.NET Namespaces, The System. Data Types, Abstracting Data Providers
Using Interfaces, Increasing Flexibility Using Application ,Configuration Files, The .NET 2.0 Provider
Factory Model, The <connectionStrings> Element Installing the Cars Database, Understanding the
Connected Layer of ADO.NET, Working with Data Readers, Modifying Tables Using Command
Objects, Working with Parameterized Command Objects, Executing a Stored Procedure Using
DbCommand, Asynchronous Data Access Under .NET 2.0,Understanding the Disconnected Layer of
ADO.NET. 5 Hrs
UNIT- 8
ASP. NET Web Pages and Web Controls: The Role of HTTP, Understanding Web Applications and
Web Servers, The Role of HTML, The Role of Client-Side Scripting, Submitting the Form Data (GET
and POST), Building a Classic ASP Page, Problems with Classic ASP, The ASP.NET 2.0 Namespaces,
The ASP.NET Web Page Code Model, Details of an ASP.NET Website Directory Structure, The
ASP.NET 2.0 Page Compilation Cycle, The Inheritance Chain of the Page Type, Interacting with the
Incoming HTTP Request, Interacting with the Outgoing HTTP Response, The Life Cycle of an
ASP.NET Web Page, Understanding the Nature of Web Controls . 5 Hrs
Text Books:
1. Andrew Troelsen , “Pro C# and the .NET 3, Special edition, A Press, 2012 (Unit 5 to 8)
2. E. Balgurusamy," Programming in C# A Primer", 3rd edition, TMH, 2010. (Unit 1 to 4)
Reference Book:
1. Tom Archer: Inside C#, WP Publishers, 2001.
CS652 PYTHON APPLICATION and PROGRAMMING (3-0-0) 3
Exam. Hours: 3 Hrs/week: 3
SEE: 50 Total hrs: 40 Course Objective: Design and implement python application related to network programming, web services and databases.
Course Outcomes (COs): At the end of the course the students will be able to:
1. Demonstrate Syntax and Semantics and create Functions in Python. PO1,PO2
2. Handle Strings and Files in Python. PO1,PO3
3. Depict Lists, Dictionaries and Regular expressions in Python. PO1,PO2
15
4. Implement Object Oriented Programming concepts in Python PO2, PO3,
PO4
5. Build Web Services and introduction to Network and Database Programming in
Python
PO2, PO3, PO4
1. Regular expressions: Introduction/motivation, Special symbols and combination, Regexes and
Python and Examples. 5 Hrs
2. Text Processing: Comma-Separated values, Java Script object notation, Extensible Markup
Language (EML). 5 Hrs
PART-B
3. Internet Programming: Introduction, What is client /server architecture?, Sockets:
Communication Endpoints, Network Programming in Python, The socket server Model,
Transferring files. 5 Hrs
4. Multithreaded programming: introduction/motivation, threads and process, threads and
pythons, the thread module, the threading module, comparing single and multithreaded
execution. 5 Hrs
PART-C
5. GUI Programming: Tkinter, Introduction, Tkinter and python programming, Tkinter examples,
A Brief Tour of other GUIs, Related modules and Other GUIs. 5 Hrs
6. Web clients and server:Introduction, python wedclient‟s tool, Web(HTTP Server),Related
modules. 5 Hrs
PART-D
7. Web Application Programming: Introduction, helping Web servers process client data,
building GI Application, using Unicode with CGI . 5 Hrs
8. Web Frame Works: Django-Introduction Web Frame works, Introduction to Django, Project
and apps, your “Hallo World Application”(A blog), creating a module to add data base service,
A Python application shell. 5 Hrs
Text Book:
Core Python Application Programming, Wesley J Chun, 3rd
Edition ,Pearson Publication, 2016.
References:
1. Beginning Python: Using python 2.6 and Python 3.1, James Paynelives, Wiley Private
limited, 2014.
2. Learning Python, Fabrizio Romano, Packt publishing, 2nd
Edition, 2014
CS653 OPERATIONS RESEARCH (3-0-0) 3
Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40
Course Objective: Solve Optimization problems using various methods Course Outcomes (COs): At the end of the course the students will be able to:
1. Give a strong emphasis for model formulation. 2. Apply the fundamental techniques of Operations Research
3. Describe several established techniques for prediction and estimation
4. Analyse and plan for assignment of jobs and transportation at a minimal cost 5. Expose to the significance of various scientific tools and models
16
PART-A
1. Introduction
Introduction: The origin, nature and impact of OR; Overview of the Operations Research Modeling
Approach: Defining the Problem and Gathering Data; Formulating a Mathematical Model; Deriving
Solutions from the Model; Testing the Model; Preparing to Apply the Model; Implementation. 5 Hrs
2. Linear Programming – 1
Prototype example; The Linear Programming (LP) Model, Assumptions of LP, Additional Examples
5 Hrs
PART-B
3.Simplex Method - 1
The Essence of the Simplex Method; Setting up the Simplex Method; The Algebra of the Simplex
Method; The Simplex Method in Tabular Form; Tie Breaking in the Simplex Method 5 Hrs
4. Simplex Method – 2
Adapting to other Model Forms; Post Optimality Analysis, Computer implementation 5 Hrs
PART-C
5.Revised Simplex Methods :
Foundations of the Simplex Method, The revised simplex method, A Fundamental Insight 5 Hrs
6.Duality Theory
The Esence of Duality Theory; Economic Interpretation of Duality. Primal-Dual Relationships,
Adapting to other primal forms, The role of duality in sensitive analysis; The essence of sensitivity
analysis; Applying sensitivity analysis, The dual simplex method ; Parametric linear programming; The
upper bound technique. 5 Hrs
PART-D
7.Transportation Model :
Definition of the Transportation Model, Nontraditional Transportation Models, The Transportation
Algorithm. 5 Hrs
8.Assignment Model and Network Models :
The Assignment Model, CPM and PERT 5 Hrs
Text Books:
1. Frederick S. Hillier and Gerald J. Lieberman, “Introduction to Operations Research”, Tata McGraw
Hill, 9th Edition, 2012. (Chapters: 1.1 to 1.3, 2, 3.1 to 3.3, 4.1 to 4.7, 5, 6.1 to 6.7, 7.1)
2. Hamdy A Taha, “Operations Research: An Introduction”, Prentice Hall India, 8th Edition, 2005.
(Chapters: 5, 6.4)
Reference Book:
1. Wayne L. Winston, “Operations Research Applications and Algorithms”, Thomson Course
Technology, 4th Edition 2003
CS654 ADVANCED ALGORITHMS (3-0-0) 3 Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40
Course Objective: Compare and contrast various strategies for algorithm analysis. Course Outcomes (COs): At the end of the course the students will be able to:
1. Identify the different notions of asymptotic complexity and determine the asymptotic complexity of algorithms.
PO1,PO2
17
2. Use of advanced data structures including heaps, trees, etc. PO2,PO3
3. Apply the dynamic programming concept and a greedy approach for advanced problem solving.
PO1,PO3
4. Use basic and advanced graph algorithms including DFS, BFS, and Bellman-Ford. PO2,PO3
5. Interpret various algorithms with practical applications and the resource requirements of each.
PO3,PO4
PART-A
1. Growth Functions:
Asymptotic notations, standard notations and common functions, Summations: summations formulas
and properties, bounding summations, recurrences: the substitution method, iteration method, master
method. 5 Hrs
1. Hash tables: Direct- address tables, hash tables, hash functions, open addressing. Amortized
analysis: The aggregate method, the accounting method, the potential method, dynamic tables
5 Hrs
PART-B
3. B-trees:
Definitions of B-trees, basic operations on B-trees, deleting a key from B-tree, Binomial heaps:
binomial trees and binomial heaps, operations on binomial heaps, 5 Hrs
4. B-trees (cont..)
Fibonacci heaps: structure of Fibonacci heaps, mergeble-heap operations, decreasing a key and
deleting a node, bounding the maximum degree. 5 Hrs
PART-C
5. Sorting Networks
Comparison networks, the zero-one principle, a Bitonic sorting network, a merging network, a
sorting network, Arithmetic circuits: combinational circuits, addition circuits, multiplication circuits.
5 Hrs
6. String matching
The naïve-string algorithm, the rabin-karp algorithm, string matching with finite automata, the
Knuth morris-Pratt algorithm. 5 Hrs
PART-D
7. NP-Completeness
Polynomial time, polynomial-time verification, NP-Completeness and reducibility 5 Hrs
8. Approximation Algorithm
The vertex-cover algorithm, the travelling salesman problem, the set-covering problem, the subnet-
sum problem. 5 Hrs
Text Book:
Thomas H Coreman, Charles E Leiseron, Ronald Rivest, “Introduction to Algorithms”, PHI India 2000,
Chapters( 2,3,4,12,18,19,20,21,28,29.1 to 29.3,34.1 to 34.4,36,37)
CS655 SYSTEM SIMULATION AND MODELING (3-0-0) 3
Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40
Course Objective: Examine a variety of computer simulation and modeling techniques. Course Outcomes (COs): At the end of the course the students will be able to:
1. Identify system environment and simulation models to solve the problems. PO1,PO2
18
2. Solve and generate random numbers, random varieties and perform some tests PO2,PO3
3. Analyze output data produced by a model and test validity of the model PO2,PO3 4. Develop the performance model for simple real world system. PO3,PO4 5. Perform verification and validation of simulation model PO2,PO3
PART-A
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; Models of a system, Discrete-Event System Simulation; Steps in a
Simulation Study 5 Hrs
2. Simulation Examples in Spread Sheet: The basics of spread sheet simulation. Simulation of
Queuing Systems; Simulation of Inventory Systems. 5 Hrs
PART-B
3. General Principles, Simulation Software
Concepts in Discrete-Event Simulation: The Event-Scheduling / Time-Advance Algorithm, World
Views, Manual simulation Using Event Scheduling; Selection of Simulation Software; Simulation in
Java 5 Hrs
4. Statistical Models in Simulation
Review of terminology and concepts; Useful Statistical Models; Discrete Distributions, Continuous
Distribution, Poisson process 5 Hrs
PART- C
5. Queueing Models: Queuing Models: Characteristics of queuing systems; Queuing notation.
Random- Number Geneartion1:Properties of Random Numbers; Generation of pseudo-random
numbers. 5 Hrs
6. Random-Number Geneartion2, Random-Variate Generation:Techniques for generating random
numbers; Tests for Random Random-Variate Generation: Inverse Transform Technique;
Acceptance- Rejection Technique; Special Properties. 5 Hrs
PART –D
7. Input Modeling: Data Collection; Identifying the distribution with data; Parameter estimation;
Goodness of Fit Tests; Fitting a non-stationary Poisson process; Selecting input models without
data. 5 Hrs
8. Verification and Validation of Simulation Models
Output analysis for steady-state simulations. Model Building; Verification and Validation;
Verification of Simulation Models; Calibration and Validation of Models. 5 Hrs
Text Book:
1. Jerry Banks, John S. Carson II, Barry L. Nelson, David M. Nicol, “Discrete-Event System
Simulation”, 5th
Edition, Pearson Education, 2013.
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.
CS661 MULTIMEDIA COMPUTING (3-0-0) 3 Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40 Course Objective: Course Outcomes (COs): At the end of the course the students will be able to:
19
1. Differentiate the different types of media and data streams PO1,PO2 2. Identify various video technologies, graphics and images PO2,PO3 3. Implement different types of Data compression techniques PO3,PO4 4. Compare the different data and file formats PO1,PO2 5. Design multimedia application PO3,PO4
PART-A
1. Introduction, Media and Data Streams, Audio Technology
Multimedia Elements; Multimedia Applications; Multimedia Systems Architecture; 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 Computer. 5 Hrs
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. 5 Hrs
PART-B
3. Data Compression - 1
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. 5 Hrs
4.Data Compression - 2
H.261 (Px64) and H.263: Image Preparation, Coding Algorithms, Data Stream; MPEG: Video
Encoding, Audio Coding, Data Stream. 5 Hrs
PART-C
5.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; 5 Hrs
6.Content Analysis
Simple Vs. Complex Features; Analysis of Individual Images; Analysis of Image Sequences; 5 Hrs
PART-D
7. Data and File Format Standards
Rich-Text Format; TIFF File Format; Resource Interchange File Format (RIFF); MIDI File Format;
JPEG DIB File Format for Still and Motion Images; 5 Hrs
8. Multimedia Application Design
Multimedia Application Classes; Types of Multimedia Systems; Virtual Reality Design; Components
of Multimedia Systems; Organizing Multimedia Databases; 5 Hrs
Text Books:
20
1. Ralf Steinmetz, Klara Narstedt, “Multimedia Fundamentals: Vol 1-Media Coding and Content
Processing”, Pearson Education / PHI, 2012.
2. Prabhat K. Andleigh, Kiran Thakrar, “Multimedia Systems Design”, PHI, 2013.
Reference Books:
1. K.R Rao, Zoran S. Bojkovic and Dragorad A. Milovanovic, “Multimedia Communication
Systems: Techniques, Standards and Networks”, Pearson Education, 2012.
2. Nalin K Sharad, “Multimedia information Networking”, PHI, 2012.
CS662 GRAPH THEORY AND COMBINOTORICS (3-0-0) 3
Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40
Course Objective To design and perform abstract concepts of graph theory in modeling and solving non-trivial
problems
Course Outcomes (COs): At the end of the course the students will be able to:
1 To apply the concept of graph theory, theorems, and derivations. PO1,PO2,PO3 2 To use the planar graphs, colouring problems and their uses in computer science. PO1,PO2,PO3
3 To describe the properties of trees and their applications in computer science PO1
4 To applythe distance algorithm and their applications in computer networks. PO1,PO2,PO3
PART-A
1. Fundamentals of Graph theory: Definitions and examples, Sub graphs, Complements, and Graph
Isomorphism, Vertex degree, Euler Circuits and Trails.
5 hrs
2. Planar Graphs & Graph coloring: Hamilton cycles and paths Planar Graphs, Dual graphs, and
properties of a dual graph with respect to a planar graph. 5 hrs
PART-B
3. Graph coloring (contd...) & Trees: Chromatic number and Chromatic polynomial of a graph.
Definition, properties, and examples. 5 hrs
4. Trees(contd...): Rooted trees and binary trees, Trees and sorting, Weighed Trees and Prefix codes.
5 hrs
PART-C
5. Optimization: Disjkstra‟s shortest path algorithm, Minimal spanning trees – the algorithms and
Kruskal and Prim. 5 hrs
6. Matching Transport networks & Generating functions - the Max-Flow Min-cut theorem,
matching theory. Generating functions: Introductory examples, Definition and examples; 5 hrs
PART-D
6. Generating function (contd...): Introductory examples, Definition and examples; Calculational
techniques, Partitions of Integers, The exponential generating function, the summation Operator.
5 hrs
8. Recurrence relations: First-order and second order linear recurrence relations, with constant
coefficients, the non-homogeneous recurrence relation, Solution of difference equations by using
generating functions. 5 hrs
Text Book:
Ralph P. Grimaldi: Discrete and Combinatorial Mathematics, , 5th Edition, Pearson Education. 2004.
(Sections: 9.1 to 9.5, 10.1 to 10.2, 10.4, 11.1 to 11.6, 12.1 to 12.5, 13.1 to 13.4)
Reference Books:
21
1. Narsing Deo, Graph Theory with applications to Engineering and Computer Science, PHI
Publications
2. V Balakrishnan, Combinatorics, Schaum Series, Tata-McGraw Hill Publications
CS663 ADVANCED UNIX PROGRAMMING (3-0-0) 3
Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40
Course Objective: To study how to design the UNIX operating system kernel.
Course Outcomes (COs): At the end of the course the students will be able to:
1. Design the UNIX kernel with the help of a well defined set of System Calls (APIs). PO1,PO3 2. Introduced to various UNIX/POSIX standards. PO1
3. Building File subsystem and Process control subsystem with the help of File APIs and Process APIs.
PO1,PO2,PO3
4. Outline files, processes, signals and daemon processes. PO1, PO2,PO3
5. Introduced to various IPC techniques like Pipes, FIFOs, Message Queues, Semaphores and Socket Programming.
PO2,PO3
PART-A
1. Introduction
UNIX and ANSI Standards: The ANSI C Standard, The ANSI/ISO C++ Standards, Difference
between ANSI C and C++, The POSIX Standards. UNIX and POSIX APIs: The POSIX APIs, The
UNIX and POSIX Development Environment, API Common Characteristics. 5 Hrs
2. UNIX Files
File Types, The UNIX and POSIX File System, The UNIX and POSIX File Attributes, Inodes in
UNIX System V, Application Program Interface to Files, UNIX Kernel Support for Files, Directory
Files. 5 Hrs
PART-B
3. UNIX File APIs
General File APIs, File and Record Locking, Directory File APIs, Device File APIs, FIFO File APIs,
Symbolic Link File APIs, General File Class. 5 Hrs
4. UNIX Processes
The Environment of a UNIX Process: Introduction, main function, Process Termination, Command-
Line Arguments, Environment List, Memory Layout of a C Program, Memory Allocation,
Environment Variables, getrlimit, setrlimit Functions, UNIX Kernel Support for Processes. 5 Hrs
PART-C
5. Process Control
Introduction, Process Identifiers, fork, vfork, exit, wait, waitpid, waited, wait3, wait4 Functions,
Race Conditions, exec Functions, Changing User IDs and Group IDs, System Function. 5 Hrs
6. Process Control (Contd.)
Process Accounting, User Identification, Process Times. Process Relationships: Introduction,
Terminal Logins, Network Logins, Process Groups, Sessions, Controlling Terminal, tcgetpgrp,
tcsetpgrp, and tcgetsid Functions, Job Control, Shell Execution of Programs. 5 Hrs
PART-D
7. Signals and Daemon Processes
22
Signals: The UNIX Kernel Support for Signals, signal, Signal Mask, sigaction, The SIGCHLD
Signal and the waitpid Function, Kill, Alarm, Interval Timers, POSIX.lb Timers. Daemon
Processes: Introduction, Daemon Characteristics, Coding Rules. 5 Hrs
8. Interprocess Communication
Introduction; Pipes, popen, pclose Functions, FIFOs, Message Queues, Semaphores, Shared
Memory, Client-Server Properties. 5 Hrs
Text Books:
1 Terrence Chan: UNIX System Programming Using C++, First Edition, Prentice Hall India, 2011.
(Chapters 1, 5, 6, 7, 8, 9)
2 W.Richard Stevens, Stephen A. Rago: Advanced Programming in the UNIX Environment, 2nd
Edition, Pearson Education , 2011.
(Chapters 7, 8, 9, 13, 15)
Reference Books:
1. Marc J. Rochkind: Advanced Unix Programming, 2nd
Edition, Pearson Education, 2005.
2. Maurice.J.Bach: The Design of the UNIX Operating System, Pearson Education / PHI, 1987.
3. Uresh Vahalia: Unix Internals, Pearson Education, 2001.
CS664 ARTIFICIAL INTELLIGENCE (3-0-0) 3
Exam. Hours: 3 Hrs/week: 3
SEE: 50 Total hrs: 40 Course Objective: Identify the Problems where AI is required Course Outcomes (COs): At the end of the course the students will be able to:
1. Know the field of Artificial Intelligence (AI) which is the study of how to make computers do things which, at the moment, people do better.
PO1,PO2
2. Compare various uninformed and informed search techniques. PO2,PO6
3. Gain the knowledge of Logic, reasoning patterns in Propositional logic, First-Order-Logic, inference in First-Order-Logic.
PO1
4. Know various knowledge representation techniques. PO2
5. Know various sub-fields of AI, like Machine Learning, Automated reasoning, Planning, Probabilistic reasoning
PO1
PART A
1. Introduction
What is AI? Intelligent Agents: Agents and environment; Rationality; the nature of environment; the
structure of agents. Problem-solving: Problem-solving agents; Example problems; Searching for
solution; Uninformed search strategies. 5 Hrs
2. Informed Search, Exploration, Constraint Satisfaction, Adversial Search
Informed search strategies; Heuristic functions; On-line search agents and unknown environment.
Constraint satisfaction problems; Backtracking search for CSPs. Adversial search: Games; Optimal
decisions in games; Alpha-Beta pruning. 5 Hrs
PART B
3. Logical Agents
Knowledge-based agents; The wumpus world as an example world; Logic; propositional logic
Reasoning patterns in propositional logic; Effective propositional inference; Agents based on
propositional logic. 5 Hrs
4. First-Order Logic, Inference in First-Order Logic – 1
23
Representation revisited; Syntax and semantics of first-order logic; Using first-order logic;
Knowledge engineering in first-order logic. Propositional versus first-order inference; Unification and
lifting. 5 Hrs
PART C
5. Inference in First-Order Logic – 2 : Forward chaining; Backward chaining; Resolution. 5 Hrs
6. Knowledge Representation
Ontological engineering; Categories and objects; Actions, situations, and events; Mental events and
mental objects; The Internet shopping world; Reasoning systems for categories; Reasoning with
default information; Truth maintenance systems. 5 Hrs
PART D
7. Planning, Uncertainty, Probabilistic Reasoning
Planning: The problem; Planning with state-space approach; Planning graphs; Planning with
propositional logic. Uncertainty: Acting under certainty; Inference using full joint distributions;
Independence; Bayes‟ rule and its use. Probabilistic Reasoning: Representing knowledge in an
uncertain domain; The semantics of Bayesian networks; Efficient representation of conditional
distributions; Exact inference in Bayesian networks. 5 Hrs
8. Learning, AI: Present and Future
Learning: Forms of Learning; Inductive learning; Learning decision trees; Ensemble learning;
Computational learning theory.AI: Present and Future: Agent components; Agent architectures; Are
we going in the right direction? What if AI does succeed? 5 Hrs
Text Book:
Stuart Russel, Peter Norvig: Artificial Intelligence A Modern Approach, 3rd
Edition, Pearson Education,
2009.
Reference Books:
1. Elaine Rich, Kevin Knight: Artificial Intelligence(SIE), Tata McGraw Hill, 2008.
2. Nils J. Nilsson: Principles of Artificial Intelligence, Elsevier, 1980
CS665 PRINCIPLES OF PROGRAMMING LANGUAGES (3-0-0) 3
Exam. Hours: 3 Hrs / week: 3
SEE: 50 Total hrs: 40
Course Objective:
To make the students analyze constructs of programming languages and apply in programming.
Course Outcomes (COs): At the end of the course the students will be able to:
1. Analyze the preliminary concepts of principles of programming languages PO1
2. Compare the concepts of data types, syntax and semantics, expressions of different
programming languages
PO1, PO2
3. Apply the concept of structured programming and procedures to develop programs PO1,PO2
4. Apply the concept of OOP and exceptions handling in programming. PO1,PO2,PO3
5. Develop simple programs using functional and logical programming languages. PO1,PO2,PO3
24
PART-A
1. Preliminary Concepts: Reasons for studying, concepts of programming languages,
Programming domains, Language Evaluation Criteria, influences on Language design, Language
categories, Programming Paradigms – Imperative, Object Oriented, functional Programming ,
Logic Programming. Programming Language Implementation – Compilation and Virtual
Machines, programming environments. 5 Hrs
2. Syntax and Semantics: Expression notations, Abstract syntax trees, lexical syntax, context-free
grammars, Grammars for expressions, Attribute grammars, denotational semantics. 5 Hrs
PART-B
3. Data types: Introduction, primitive, character, user defined, arrays, record, union, pointers.
Names, Variable, concept of binding, type checking, strong typing, type equivalence. 5 Hrs
4. Structured programming: The need for structured programming: static programs, dynamic
computations, design principles for imperative languages, example, syntax-directed control flow:
composition of statements, selection, looping constructs, design considerations: syntax, Handling
special cases in loops. 5 Hrs
PART-C
5. Procedure Activations: Introduction to procedures, parameter passing methods, scope rules for
names, nested scopes, activation records, Procedures as in C 5 Hrs
6. Object-oriented programming and Concurrency: What is an object?, Inheritance, OOP in
C++, Derived classes and information hiding. Concurrency: Subprogram level concurrency,
semaphores, monitors, massage passing. 5 Hrs
PART-D
7. Exception handling: Exceptions, exception Propagation, Exception handler in C++. Logic
Programming Language: The basic elements of Prolog, applications of logic programming.
5 Hrs
8. Functional Programming with Lists: Scheme, A dialect of LISP, The structure of lists, List
manipulation. 5 Hrs
TEXT BOOKS:
1. Concepts of Programming Languages, Robert .W. Sebesta 11/e, Pearson
Education,2014.(Chapters 1.1 to 1.5, 1.7, 1.8, 3.4.1 to 3.4.6, 3.5.2, 3.5.2.1, 5.2 to 5.4, 6.1 to 6.5,
6.12 to 6.14, 13.2 to 13.5, 14.1, 14.3, 16.6, 16.8)
2. Programming Languages concepts & constructs, Ravi Sethi, Pearson, 2nd
edition.
(Chapters 2, 3.1 to 3.4, 4.4, 4.5, 4.7, 5, 7.1, 7.3 to 7.5, 10.1 to 10.3)
Reference Books:
1. Programming Languages, 2nd Edition, A.B. Tucker, R.E. Noonan, TMH.
2. Programming Languages, K. C.Louden, 2nd Edition, Thomson,2003.
3. LISP, Patric Henry Winston and Paul Horn, Pearson Education.
4. Programming in Prolog, W.F. Clocksin,& C.S.Mellish, 5th Edition, Springer.
5. http://nptel.ac.in/courses/106102067/