SYLLABUS FOR VI SEMESTER Department of Computer...

24
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

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/