Download MCA Syllabus for Sambalpur University and more Exams Computer Science in PDF only on Docsity!
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING
AND APPLICATIONS
SAMBALPUR UNIVERSITY INSTITUTE OF INFORMATION
TECHNOLOGY, JYOTI VIHAR, BURLA
Section - D
Syllabus Structure for Master in Computer Application
(Three Years Course)
Board of Study Department of CSE&A:
1) Prof. (Dr.) Amiya Kumar Rath
2) Mr. Pradyumna Kumar Ratha
3) Mr. Kalyan Das
4) Mrs. Sushree Subhaprada Pradhan
5) Dr. (Mrs.) Madhumita Panda
6) Mr. Sibarama Panigrahi
7) Mr. Debashreet Das
Semester – I
Code Course Title Categor y L P T Credits MC 511 Discrete Mathematics FC 4 0 0 4 MC 512 English for Business Communications FC 3 0 0 3 MC 513 Computer Programming with C CC 3 0 1 4 MC 514 Business Accounting FC 3 0 0 3 MC 515 Computer Organization and Architecture
CC 4 0 0 4
MC 516 Programming in C Lab. CC 0 3 0 2 MC 517 Hardware and Assembly Programming Lab.
CC 0 3 0 2
Total Credit: 22
Semester – II
Code Course Title Categor y L P T Credits MC 521 Probability and Statistics FC 4 0 0 4 MC 522 Object Oriented Programming using C++ CC 3 0 1 4 MC 523 Data Structure with C CC 3 0 1 4 MC 524 Optimization Techniques FC 4 0 0 4 MC 525 Ecology and Environment FC 4 0 0 4 MC 526 Object Oriented Programming Lab. CC 0 3 0 2 MC 527 Data Structure using C Lab. CC 0 3 0 2 MC 528 Technical Seminar – I TS 0 0 0 2 Total Credit: 26
Semester – III
Code Course Title Categor y L P T Credits MC 531 Computer Oriented Numerical Methods CC 4 0 0 4 MC 532 Programming with Java CC 3 0 1 4 MC 533 Data Communication and Computer Networks
CC 4 0 0 4
MC 534 Database Management Systems CC 3 0 0 4 Elective-I PE 3 0 1 4 MC 53E1 Human Computer Interaction MC 53E2 Computer Graphics MC 53E3 Distributed Systems MC 53E4 E-Commerce MC 535 Programming with Java Lab. CL 0 3 0 2 MC 536 Database Management Systems Lab. CL 0 3 0 2 Total Credit: 24
Semester – IV
Code Course Title Category L P T Credits MC 541 Theory of Computation CC 4 0 0 4 MC 542 Analysis and Design of Algorithms CC 4 0 0 4 MC 543 Operating System CC 4 0 0 4 MC 544 Web Technologies CC 3 0 0 4 Elective-II PE 3 0 1 4 MC 54E1 Artificial Intelligence MC 54E2 Advanced data structure MC 54E3 Information Retrieval System MC 545 Analysis and Design of Algorithms CC 0 3 0 2
resolution principle; Automatic theorem proving, Fuzzy logic: fuzzy relation,, pattern classification, fuzzy analysis, distance between fuzzy sets, area perimeter, height, width of fuzzy subsets. UNIT – II 12 hours Set theory; Paradoxes in set theory; inductive definition of sets and proof by induction; Peono postulates; Relations; representation of relations by graphs, Warshall’s algorithm; properties of relations; equivalence relations and partitions; Partial orderings; Posets; Linear and well-ordered sets; Functions; mappings; injection and surjections; composition of functions; inverse functions; special functions; pigeonhole principle. UNIT – III 12 hours Graph Theory; elements of graph theory, Graph Isomorphism, connected graph, Euler graph, Hamiltonian path, Grinberg’s theorem, trees, tree traversals, spanning trees, BFS & DFS; minimal spanning tree, Kruskal’s algorithm, Prim’s algorithm, planar graph, dual of a graph, Euler formula. UNIT – IV 12 hours Definition and elementary properties of groups, semigroups, monoids, rings, fields, vector spaces and lattices; Elementary combinatorics; counting techniques; recurrence relation; generating functions TEXT BOOKS C. L. Liu , Elements of Discrete Mathematics, McGraw-Hill. K. H. Rosen , Discrete Mathematics and applications, TataMcGraw Hill REFERENCE BOOKS: J .L. Mott, A. Kandel, T.P .Baker , Discrete Mathematics for Computer Scientists and Mathematicians, second edition 1986, Prentice Hall of India. R. Grimaldi and B V Ramana , Discrete and combinatorial mathematics: An applied introduction, Pearson education Other References: (Web ) Course Name: ENGLISH FOR BUSINESS COMMUNICATIONS Category: Foundation Course (Basic Science :English) Prerequisite: None Learning Objective: Develop skills to create a positive and long-lasting first impression. Understand the importance of maintaining clear communication as well as individual communication style confidently in front of different audiences. Develop professional skills required for brief and assertive communication. Identify skill-set to create effective presentations and present the ideas confidently while keeping the audience interested. Learning Outcome: Effectively write and communicate in different forms of business correspondence. UNIT – I: Features of Indian English – Correction of sentences-Structures-Tenses-ambiguity-Idiomatic distortions. Informal conversation vs Formal expression Verbal and non-verbal communication, barriers to effective communication–kinesics UNIT – II: Types of Communication - Oral, aural, Writing and reading - Word-Power -Vocabulary-Jargon-rate of speech, pitch, tone-Clarity of voice Technical presentations-types of presentation–video conferencing-- participation in meetings-chairing sessions. UNIT – III: Formal and informal interviews–ambiance and polemics-interviewing in different settings and for different purposes e.g., eliciting and giving information, recruiting, performance appraisal. Written communication - differences between spoken and written communication – features of effective writing such as clarity, brevity, appropriate tone clarity, balance etc.-GRE. TOEFL models. UNIT – IV:
Letter-writing-business letters–proforma culture – format – style– effectiveness, promptness-Analysis of sample letters collected from industry- email, fax. Technical Report writing- Business and Technical Reports– Types of reports-progress reports, outline reports – Annual reports – format –analysis of sample reports from industry-Synopsis and thesis writing. TEXT BOOKS
- Essentials of Business Communication, Rajendra Pal, J S KorlahaHi : Sultan Chand & Sons, New Delhi.
- Basic Communication Skills for Technology, Andrea J.Rutherford : Pearson Education Asia.
- Advanced Communication Skills, V. Prasad, Atma Ram Publications, New Delhi.
- Raymond V. Lesikav; John D. Pettit Jr., Business Communication, Theory& Application, All India Traveler Bookseller. REFERENCE BOOKS:
- Business Communication, RK Madhukar, Vikas Publishing House Pvt Ltd
- Edmond H Weiss: Writing Remedies: Practical Exercises for Technical Writing,Universities Press, Hyderabad.
- CliffsTestPreparation forGREandTOEFL:ComputerBasedTest,IDGBooks.India(P) Ltd.GRE and TOEFL; Kaplan and Baron's English in Mind, Herbert Puchta and Jeff Stranks, Cambridge. Other References: (Web ) Course Name: COMPUTER PROGRAMMING WITH C Category: Programme Core Course Prerequisite: None Learning Objective: To understand the various steps in Program development. To understand the basic concepts in C Programming Language. To learn how to write modular and readable C Programs To learn to write programs (using structured programming approach) in C to solve problems. To make the student understand simple sorting and searching methods. Learning Outcome: Demonstrate the basic knowledge of computer hardware and software. Ability to apply solving and logical skills to programming in C language and also in other languages. UNIT – I: 10 hours Computer Fundamentals and Introduction to C : Role of computer and programming languages, compiler, interpreter, loader and linker, classification of programming languages, structured programming, concepts, algorithms and flowcharts. Basics of C : Developing programs in C, a simple C program, structure of a C program, concept of a variable, data types in C, variables, program statement, declaration. All tokens, literals, operators and expressions, type conversions in C. Non-formatted input and output, formatted input and output. UNIT – II: 12 hours Control Statements : Introduction, conditional execution (if, if-else, nested if), selection (switch), unconditional types (Break, Continue, Goto). Loops: Iteration and repetitive execution (for, while, do- while) nested loops. Arrays and Strings: Introduction, definition, one dimensional array, two dimensional arrays, accessing elements and storing elements. String - Introduction, C characters and strings, character handling library, string conversion functions, standard input output library functions, comparison functions of string handling, string manipulation functions, search and memory functions of string handling library. UNIT – III: 10 hours Functions: Designing structured programs, functions, basics, parameter passing,call by value and call by reference mechanism to working with functions-example programs, storage classes- extern, auto, register, static, scope rules, block structure, user defined functions, standard library functions, recursive functions andpassing arrays to functions.Dynamic memory allocation. Pointers: Introduction, Pointer variable definition and initialization,void pointer, null pointer, use of
To understand concrete representation of data at the machine level. To understand how these functional units operate, interact and communicate. Understand the design of processors, the structure and operation of memory, pipelining, system integration and peripherals. To understand the system interconnection and the different I/O techniques. Learning Outcome: After this course students understand in a better way to design and interconnection of various modules of a system, the I/O and memory organization in depth. UNIT – I: 12 hours Digital logic Circuits : Digital Computers, Logic gates, Boolean algebra, Map Simplification, Combinational, Flip-flops and Sequential Circuits. decoders, Encoders, Multiplexers, Half and Full adders, Shift registers,Binary counter and memory unit. DataRepresentation : Data types, complements, Fixed point representation, Floating point representation, Gray code and BCD codes. UNIT – II: 12 hours Register Transfer and Micro operations: Register transfer language, register transfer, bus and memory transfers, arithmetic micro-operations, logic micro-operations, shift micro-operations, arithmetic logic and shift unit. Basic Computer Organization and Design: instruction Codes, computer registers, computer Instructions, timing and control, instruction cycle, memory-references instructions, input-output and interrupt, design of the basic computer, design of accumulator logic. UNIT – III: 12 hours Central Processing Unit: General register organization, stack organization, instruction formats, addressing modes, Data transfer and manipulation, Program control. Computer Arithmetic: Introduction, addition and subtraction, decimal arithmetic unit, booth multiplication algorithm. UNIT – IV: 12 hours Input/Output Organization: Peripheral devices,Input-Output Interface, Asynchronous data transfer, Modes of transfer, Priority Interrupt and DMA. The Memory System: Some basic concepts, Memory Hierarchy, Auxiliary memory, Associative memory, Cache memories, cache memory techniques, Virtual memories. TEXT BOOKS
- M.Morris Mano, Computer System Architecture, 3/e, Pearson education, 2008. REFERENCE BOOKS:
- Carl Hamacher, ZvonkoVranesic, SafwatZaky, Computer Organization, 5/e, McGraw Hill, 2001.
- John P. Hayes, Computer Architecture and Organization, 3/e, McGraw Hill, 1998.
- William Stallings, Computer Organization and Architecture, 6/e, Pearson, PHI, 2012. Other References: (Web ) Course Name: PROGRAMMING IN C LAB Category: Laboratory Course List of experiments
- Write a program to print the integer part and fractional part for the given number.
- Write a program that accept a character from user, and print its next and previous character.
- Write a small calculator program that does addition, subtraction, multiplication, division and modulo operation of two input numbers.
- Write a program that converts an amount (in integer, upto 999999) into words.[i/p-431104, output-4 lakh 31 thousand 1 hundred and four only]
- Write a program that takes one positive integer and shifts the whole bit pattern 4 bits to the left. Check that this operation is same as multiplying the no by 16 if no overflow occurs.
- Write a program to find that entered year is leap year or not.
- Write a program to find whether an input integer is divisible by both 2 and 3, divisible by 2 but not by 3, divisible by 3 but not by 2 or not divisible by 2 and 3.
- Print Fibonacci series: 0 , 1 , 1 , 2 , 3 , 5 , 8 , 1 3 , 2 1 ... 20 elements.
- Write a program to check whether a number is strong or not.
- Write a program that computes LCM & GCD of two given integers using while loop
- Write a function isPrime() that checks whether an integer is prime or not.
- Write a recursive function to find sum of an AP series with n numbers.
- Write a program that sorts an array of integers using bubble sort.
- Write a program to check whether a string is a palindrome or not.
- Write a C program to accept a matrix of order M x N and find the sum of each row and each column of a matrix.
- Write a program to dynamically allocate an array and reverse the array using a user defined function reverseArray( ) without using any extra space. Note: Allocate the array within the user defined function, reverse it and return the array to the calling function.
- Write a program to implement a 2D array to store multiple strings and sort them.
- Write a program to declare a structure for a complex number. Define user defined functions add(), subtract(), multiply() and display() to do their respective function.
- Write a program myCat.c that works like cat command using command line argument.
- Write a program myCalc.c using command line argument that works like a mini command line calculator. Compile the program by gccmyCalc.c –o myCalc. Run it like mycalc35 + 22 and the expected output would be 57. Course Name: HARDWARE AND ASSEMBLY PROGRAMMING LAB Category: Laboratory Course List of experiments (may be expanded)
- Write a program to swap the contents of two registers.
- Write a program to swap the contents of two memory locations.
- Write a program to perform addition of two 8-bit numbers so that the result is also 8-bit.
- Write a program to perform subtraction of two 8-bit numbers so that the result is also 8-bit.
- Write a program to perform addition of two 16-bit numbers so that the result is also 16-bits.
- Write a program to perform subtraction of two 16-bit numbers so that the result is also 16-bits.
- Write a program to find the 1’s and 2’s complement of an 8-bit number.
- Write a program to perform the AND, OR, XOR operations on an 8-bit number.
- Write a program to perform left-shift of an 8-bit number.
- Write a program to perform right-shift of an 8-bit number.
- Write a program to perform the multiplication of two 8-bit numbers.
- Write a program to perform division of two 8-bit numbers.
- Write a program to find the square of an 8-bit number.
- Write a program to find the largest among three numbers.
- Write a program to find the smallest among three numbers.
- Write a program to arrange a series of data in descending order.
- Write a program to arrange a series of data in ascending order.
- Write a program to find the factorial of an 8-bit number.
- Write a program to find the sum of a finite series.
- Write a program to find the product y = 4y^2. SEMESTER-II Course Name: PROBABILITY AND STATISTICS Category: Foundation Course (Basic Science :Mathematics) Prerequisite: Basic Mathematics Learning Objective: Apply key concepts of probability, including discrete and continuous random variables, probability distributions, conditioning, independence, expectations, and moments. Define and explain the different statistical distributions (e.g., normal, log-normal, Poisson, Weibull) and the typical phenomena that each distribution often describes. Apply the basic rules and theorems in probability including Bayes’s theorem and the Central Limit Theorem (CLT).
inheritance. Operator Overloading: Rules for overloading operators, overloading unary operators, overloading binary operators. Pointers: Introduction to Pointers, declaring and initializing pointers, arithmetic operations on pointers, pointers with arrays, arrays of pointers, pointers to objects, ‘this’ pointer. UNIT – IV: 10 hours Polymorphism and Virtual Functions: Compile-time polymorphism, run-time polymorphism, virtual functions. Managing Console I/O Operations: Unformatted I/O operations, formatted console I/O operations (width ( ), precision( ), fill( ), managing output with manipulators(setw( ), endl). Templates: Introduction, function templates, class templates. Exception Handling: Introduction, exception handling mechanism, throwing mechanism, catching mechanism. TEXT BOOKS
- Object Oriented Programming with C++ - E. Balagurusamy, McGraw-Hill Education (India)
- ANSI and Turbo C++ - Ashoke N. Kamthane, Pearson Education REFERENCE BOOKS:
- Big C++ - Wiley India
- C++: The Complete Reference- Schildt, McGraw-Hill Education (India)
- C++ and Object Oriented Programming – Jana, PHI Learning.
- Object Oriented Programming with C++ - Rajiv Sahay, Oxford Other References: (Web ) Course Name: DATA STRUCTURE WITH C Category: Programme Core Course Prerequisite: Programming in C Learning Objective: To get clear understanding about the basic data structures and their operations, the concepts of algorithms, basic search and sort algorithms. Student will also gain adequate knowledge to choose appropriate data structure and algorithm to solve a problem. Learning Outcome: Students should be able to select an appropriate data structure in the solution for a real world problem. UNIT – I: 10 hours Introduction: Basic Terminology, Elementary Data Organization, Structure operations, Algorithm Complexity and Time-Space trade-off. Arrays: Array Definition, Representation and Analysis, Single and Multidimensional Arrays, address calculation, application of arrays, Character String in C, Character string operation, Array as Parameters, Ordered List, Sparse Matrices and Vectors. Searching: Sequential search, binary search, comparison and analysis. Sorting: Insertion Sort, Bubble Sort, Selection Sort, Quick Sort, Merge Sort, Heap Sort, Radix Sort. UNIT – II: 10 hours Stacks: Array Representation and Implementation of stack, Operations on Stacks: Push& Pop, Linked Representation of Stack, Operations Associated with Stacks, Application of stack: Conversion of Infix to Prefix and Postfix Expressions, Evaluation of postfix expression using stack, Applications of recursion in problems like 'Tower of Hanoi', Queues: Array and linked representation and implementation of queues, Operations on Queue: Create, Add, Delete, Full and Empty, Circular queues, D-queues and Priority Queues. UNIT – III: 14 hours Linked list: Representation and Implementation of Singly Linked Lists, Two-way Header List, Traversing and Searching of Linked List, Overflow and Underflow, Insertion and deletion to/from Linked Lists, Insertion and deletion Algorithms, Doubly linked list, Polynomial representation and addition, Generalized linked list. Trees: Basic terminology, Binary Trees, Binary tree representation, algebraic Expressions, Complete Binary Tree, Extended Binary Trees, Array and Linked Representation of Binary trees, Traversing Binary trees, Threaded Binary trees, Traversing Threaded Binary trees, Huffman algorithm. UNIT – IV: 12 hours Binary Search Trees: Binary Search Tree (BST), Insertion and Deletion in BST, Complexity of Search
Algorithm, Path Length, AVL Trees, B-trees. Graphs: Terminology & Representations, Graphs & Multi-graphs, Directed graphs,Sequential representations of Graphs, Adjacency Matrices, Traversal, ConnectedComponent and Spanning Trees, Minimum Cost Spanning Trees. Hashing: Hash Table, Hash Functions, Collision Resolution Strategies, Hash Table Implementation. TEXT BOOKS
- Horowitz and Sahani, "Fundamentals of data Structures", Galgotia.
- Data Management and File Structures, Mary E.S. Loomis, PHI REFERENCE BOOKS:
- A. M. Tenenbaum, "Data Structures using C & C++", PHI
- Adam Drozdek, "Data Structures and Algorithms in C++", Thomson Asia pvt.Ltd. Other References: (Web ) Course Name: OPTIMIZATION TECHNIQUES Category: Programme Elective Course Prerequisite: Basic Knowledge of Linear Algebra and Matrix Theory. Learning Objective: To introduce the fundamental concepts of Optimization Techniques. To make the learners aware of the importance of optimizations in real scenarios and modern application in computer science like AI, Machine learning, sensor network and routing protocol. Optimization methods using calculus have several limitations and thus not suitable for many practical applications. Most widely used optimization method is linear programming which is the main objective of this module. To provide the concepts of various classical and modern methods of for constrained and unconstrained problems in both single and multivariable. Learning Outcome: Formulate optimization problems; Understand and apply the concept of optimality criteria for various type of optimization problems Solve various constrained and unconstrained problems in single variable as well as multivariable; Apply the methods of optimization in real life situation like Assignment and Transportation problem, Shortest path problem, Game Theory , Network Scheduling etc. UNIT – I: 10 hours Introduction to Optimization, Classification of Optimization Problem, Classical Optimization Technique, Single –Variable Optimization, Multivariable optimization, Direct Solution, Constrained variation, Lagrange multiplier, linear programming, Standard form of linear programming, Simplex Algorithm, Two Phage of simplex Method, Big M-Method. UNIT – II: 12 hours Formation of dual problems, Important Result in Duality, Dual simplex Method, Mathematical formulation of Assignment problem, Hungarian Method, The travelling Salesman Problem, Transportation Problem, North West Corner Rule, Optimality Test, Difference of Assignment and Transportation problem. UNIT – III: 12 hours Introduction, Importance of Integer Programming Problems, Application, Methods of Integer Programming Problem, Cutting, Search, Cutting Plane, Mixed Integer Programming, Unconstrained Geometric programming, Constrained Minimization, Mixed inequality. UNIT – IV: 10hours Introduction, Rules of Network Construction, Time Analysis, Critical Path Method (CPM), Programme Evaluation and Review Techniques(PERT), Cost Consideration in PERT/CPM, Payoff, Types of Game, The Maxmin – Minimax Principle TEXT BOOKS
- Engineering Optimization, Singiresu S. Rao , New Age International Publisher.
- Operation Research, KantiSwarup , S Chand & Sons Publisher REFERENCE BOOKS:
Category: Laboratory Course List of experiments
- Write a program to take name, address as character array, age as int , salary as float and contains inline functions to set the values and display it.
- Using the concept of function overloading Write function for calculating the area of triangle ,circle and rectangle.
- Create a class Student which has data members as name, branch, roll no, age ,sex ,marks in five subjects. Display the name of the student and his percentage who has more than 70%.Use array of objects.
- Create a class which keep track of number of its instances. Use static data member, constructors and destructors to maintain updated information about active objects.
- Write a program to perform addition of two complex numbers using constructor overloading. The first constructor which takes no argument is used to create objects which are not initialized, second which takes one argument is used to initialize real and imag parts to equal values and third which takes two argument is used to initialized real and imag to two different values.
- Write a Program using copy constructor to copy data of an object to another object.
- Write a program to overload unary increment (++) operator.
- Write a program to design a class representing complex numbers and having the functionality of performing addition & multiplication of two complex numbers using operator overloading.
- Write a Program illustrating how the constructors are implemented and the order in which they are called when the classes are inherited. Use three classes named alpha, beta,gamma such that alpha, beta are base class and gamma is derived class inheriting alpha & beta.
- Write a Program to design a student class representing student roll no. and a test class (derived class of student) representing the scores of the student in various subjects and sports class representing the score in sports. The sports and test class should be inherited by a result class having the functionality to add the scores and display the final result for a student.
- Write a function template that will sort an array of implicit types like int, float, char etc. it can also sort user-defined objects like strings & date. The necessary classes contains overloading of operators.
- Write a program to implement the exception handling with the functionality of testing the throw restrictions.
- Write a function template that will sort an array of implicit types like int, float, char etc. it can also sort user-defined objects like strings & date. The necessary classes contains overloading of operators.
- Create a class called LIST with two pure virtual function store() and retrieve().To store a value call store and to retrieve call retrieve function. Derive two classes stack and queue from it and override store and retieve.
- Create a base class called SHAPE. Use this class to store two double type values. Derive two specific classes called TRIANGLE and RECTANGLE from the base class. Add to the base class, a member function getdata to initialize base class datamembers and another member function display to compute and display the area of figures. Make display a virtual function and redefine this function in the derived classes to suit their requirements. Using these three classes design a program that will accept driven of a TRINGLE or RECTANGLE interactively and display the area. Course Name: DATA STRUCTURE USING C LAB Category: Laboratory Course List of experiments
1. Write a program tocreate an array dynamically, accept its members and sort the array using following
sorting algorithm. Also count the total number of swaps. a. Bubble sort b. Selection sort c. Insertion sort d. Quick sort e. Merge sort
2. Write a function search an element from the array using following searching techniques:
a. Linear search b. Recursive linear search c. Binary search
d. Recursive binary search e. Ternary search
3. Write a structure for an integer stack, implement push, pop, and peek, IsEmpty and IsFull function.
Write a main function and call the functions based on user’s choice. typedefstruct stack { int top; int data[max]; }Stack;
4. Write a structure for an integer queue, implement enqueue, dequeue, and traverse, IsEmpty and
IsFull function. Write a main function and call the functions based on user’s choice. typedefstruct queue { intfront,rear; int data[max]; }Queue;
5. Write a program to implement queue using two stacks. Include mystack.h and do the program.
6. Write a structure for an integer circular queue, implement enqueue, dequeue, and traverse, IsEmpty
and IsFull function. Write a main function and call the functions based on user’s choice. typedefstructcircularQueue { intfront,rear; int data[max]; }Queue;
7. Create a singly linked list of integers, write functions to add elements at different places (beginning,
end, at a specified position), delete a node from different positions (beginning, end, at a specified position) and traverse the linked list based on user’s choice.
8. Write a program to implement stack using linked list.
9. Write a program to implement Queue using linked list.
10. Create a singly circular linked list of integers, write functions to add elements at different places
(beginning, end, at a specified position), delete a node from different positions (beginning, end, at a specified position) and traverse the linked list based on user’s choice.
11. Create a doubly linked list of characters, write functions to add elements at different places
(beginning, end, at a specified position), delete a node from different positions (beginning, end, at a specified position) and traverse the linked list in both directions based on user’s choice.
12. Declare a binary search tree (BST) where information at each node would be a single integer. Write
recursive and non recursive (use mystack.h) functions for a. Inserting a key b. Deleting a key from the tree. c. Searching an element d. Inorder , Preorder and Postorder traversal e. Finding height of the tree f. Count number of nodes g. Display leaf nodes
13. Declare an AVL Tree where information at each node would be a single integer. Write recursive
functions for a. Inserting a key b. Deleting a key from the tree. c. Searching an element
14. Write a program to implement single threaded binary tree and perform the following functions.
a. Inserting a key b. Deletion of a key c. In-order traversal using the thread d. Maximum depth of the tree
15. Write a program for Breadth First Traversal of a graph.
16. Write a program for Depth First Traversal of a graph.
Introduction to Java Web Start, JavaFX Introduction to Networking: InetAddress class, socket class, URL class. Text Book:
- Herbert Schildt, The Java Complete References, 9/e, Tata McGraw Hill, 2014. References:
- Y.Daniel Liang, An Introduction to JAVA Programming, Tata McGraw Hill, 2009.
- Kathy Sierra, Head First java, 2/e, Shroff Publishers, 2012.
- E. Balaguruswamy, Programming with JAVA, 2/e, Tata McGraw Hill, 201 Other References: (Web ) Course Name:
DATA COMMUNICATION AND COMPUTER NETWORKS
Category: Programme Core Course Prerequisite: Basics of Computer Learning Objective: The objective of the course is to provide an overview of communication network functions and a good foundation for further studies in the subject. It involves understanding and application of design principles and methods for systems development and review of the underlying systems, and communications technologies and significant standardized systems. Learning Outcome: Understand and be able to explain the principles of layered protocol architecture; be able to identify and describe the system functions in the correct protocol layer and further describe how the layers interact. UNIT – I: 12 hours Introduction: Data Communications, Networks, The Internet, Protocols and Standards, Network Models, Layered Tasks, The OSI Model, Layers in the OSI Model, TCP/IP Protocol Suite, Addressing, Physical Layer and Media, Data and Signals, Analog and Digital, Periodic Analog Signals, Digital Signals, Transmission impairment, Data Rate Limits, Performance. Switching, Circuit-Switched Networks, Datagram Networks, Virtual-Circuit Networks. UNIT – II: 12 hours Error Detection and Correction, Introduction, Block Coding, Liner Block Codes, Cyclic Codes, Checksum, Data Link Control, Framing, Flow and Error Control, Protocols (ARQ), HDLC, Point-to-Point Protocol (PPP), Multiple Access, Random Access, Aloha, Controlled Access, Channelization, IEEE Standards, Standard Ethernet, Fast Ethernet, Gigabit Ethernet, IEEE 802.11, Bluetooth.Virtual-Circuit Networks: Frame Relay and ATM, Frame Relay. UNIT – III: 12 hours Network Layer: Logical Addressing, IPv4 Addresses, IPv6 Addresses, Network Layer: Internet Protocol, Internetworking, IPv4, IPv6, Transition from IPv4 to IPv6, Network Layer: Adress Mapping, Error Reporting and Multicasting, Address Mapping, ICMP, IGMP, Network Layer: Delivery, Forwarding and Routing, Delivery, Forwarding, Unicast Routing Protocols (RIP, OSPF), Multicast Routing Protocols (BGP).Transport Layer: Process-Process Delivery: UDP, TCP and SCTP, Process-to-Process Delivery, User Datagram Protocol (UDP), TCP, SCTP. UNIT – IV: 12 hours Congestion Control and Quality of Service, Congestion, Congestion Control, Quality Service, Techniques to improve QoS, Integrated Services, Differentiated Services, QoS in Switched Networks.Application Layer: Domain Name Systems (DNS), Remote Logging, Electronic Mail and File Transfer, Telnet.WWW and HTTP: Architecture, Web Documents, HTTP, Network Management: SNMP, RTP, RTCP, Voice over IPIntroduction to Network Security and Cryptography. TEXT BOOKS
- Data Communications and Networking, Fourth Edition by BehrouzaA.Forouzan,TMH. REFERENCE BOOKS:
- Computer Networks : A system Approach, Larry L. Peterson, Bruce S Davie
- Computer Networks, A.S.Tanenbaum,4thedition,Pearson education.
- Data and Computer Communication, W. Stallings, Prentice- Hall
- Kurose, J.F. and Ross, K.W., "Computer Networking: A Top-Down Approach Featuring the Internet", Addison Wesley. Other References: (Web )
Course Name: DATABASE MANAGEMENT SYSTEMS Category: Programme Core Course Prerequisite: Basic Knowledge of Computer Programming and data structures Learning Objective: Classify modern and futuristic database applications based on size and complexity; design a database from understanding an Universe of Discourse, using ER diagrams; map ER model into Relational model and to normalize the relations; create a physical database from a design using DDL statements with appropriate key, domain and referential integrity constraints; analyze different ways of writing a query and justify which is the effective and efficient way; and compare and contrast various indexing strategies in different database systems and list key challenges in advanced database systems and to critique how they differ from traditional database systems. Learning Outcome: To study the concepts of databases especially Relational Database design and query languages. UNIT – I: 10 hours Data - Database Applications - Evolution of DB & DBMS - Need for data management – Data models & Database Schema Architecture - components of DBMS - Key issues and challenges inDatabase Systems. E/R Model - Conceptual data modeling -E/R diagram notation, ER Diagrams - Relational Model - ER to Relational Mapping - Constraints - Keys – Dependencies examples. UNIT – II: 12 hours Introduction to Database Languages: Relational Algebra, Relational Calculus, SQL - Introduction, data definition in SQL, table, key and foreign key definitions, update behaviors. Querying in SQL, notion of aggregation, aggregation functions group by and having clauses, embedded SQL. Database Design: Introduction to Functional Dependency and Normalization – Concept of functional dependency, First, Second, Third & Fourth Normal Forms - BCNF – Join Dependencies-other Normal forms UNIT – III: 10 hours Introduction to Transactions: Transaction Systems - ACID Properties - System & Media Recovery - Two Phase Commit Protocol - Recovery with SQL - Need for Concurrency Locking Protocols
- Deadlocks & Managing Deadlocks - SQL Support for Concurrency. Storage Strategies: Indices, B-Trees, Hashing, Indexing. UNIT – IV: 10 hours Query Processing and Optimization: Query Tree, Evaluation of Relational Algebra Expressions, Query Equivalence, Join strategies, Query Optimization Algorithms. Introduction to Special Topics : Spatial & Temporal Databases – Data Mining & Warehousing - Data Visualization - Mobile Databases - OODB & XML Databases - Multimedia & Web Databases. TEXT BOOKS
- Elmaski&Navathe -Fundamentals of Database Systems, 4th Edition, Pearson Education REFERENCE BOOKS: 1. Database Systems, Thomas Connolly, Carolyn Begg 2. C.J. Date - An introduction to Database Systems, Pearson Education 3. AviSilberschatz, Henry F. Korth , S. Sudarshan,Database System Concepts 4. Bipin Desai -An introduction to Database System, Galgotia Publication. 5. Raghu Ramakrishnan, “Database Management Systems”, Third Edition, McGraw Hill,2002. Other References: (Web ) 1. http://cs.stanford.edu/people/widom/cs346/ioannidis.pdf 2. http://nptel.ac.in/courses/106106093/ Course Name: HUMAN COMPUTER INTERACTION Category: Programme Elective Course Prerequisite: Basics of Computer, Programming, WEB Learning Objective: Software process and Design rules Implementation and user support
To understand principle of clipping,basic line-clipping algorithms To learn about application of curves in computer graphics Learning Outcome: The students will demonstrate their ability to use modern 2D and 3D graphics techniques, models and algorithms to solve graphics problems. UNIT – I: 10 hours Graphics Hardware: Display devices, input devices, Raster Graphics. Line and Circle drawing algorithms: DDA, Bresenham's line drawing algorithm, midpoint circledrawing algorithm. UNIT – II: 14 hours Windowing and Clipping: Viewing and Window coordinate System, Viewport, Window, Zoom-inZoom- out, Cohen Sutherland, Cyrus beck line clipping algorithms 2D and 3D Geometrical Transformations: Homogeneous Coordinate system, Basic transformations: Translation, Scaling, Rotation and Reflection. UNIT – III: 12 hours Viewing Transformation: Parallel Projection: Orthographic, Axonometric, Cavalier and Cabinet. Perspective Projection: one point, two point, three point perspective projection, vanishing point. UNIT – IV: 12 hours Curve and Surfaces: Properties of curves, Blending functions: Cubic Bezier and B-Spline curves. Parametric Surfaces: Surface of revolution Sweep surfaces, Fractal curves and surfaces, Hidden line/surface removal: Object space and Image space methods, Inside- outside test, Back Face detection: Z-buffer, A-Buffer Methods.Introduction to computer animation. TEXT BOOKS
- Hearn D. and P. Baker, Computer Graphics C version, Prentice-Hall. (Major Reading) REFERENCE BOOKS:
- David F. Rozers, Procedural Elements for Computer Grapihics, TMH.
- David F. Rozers, Mathematical Elements for Computer graphics, TMH.
- Foley, J.D. A. Van Dam, Computer Graphics: Principles and Practice, Addison- Wesley. Other References: (Web ) Course Name: DISTRIBUTED SYSTEMS Category: Programme Elective Course Prerequisite: Knowledge on operating system and data structure Learning Objective: To understand concept of distributed systems; clock synchronisation, message passing system. To understandmutual exclusion, deadlock, resource management, system failure and fault tolerance, system protection. To recognize the inherent difficulties of designing distributed system. Learning Outcome: After successful completion of the course the students will be familiar with the design, implementation and security issues of distributed system. UNIT – I: 12 hours Overview:Concepts, architecture, issues in distributed OS, communication model: message passing, RPC, Theoretical Foundations: Physical clocks, Logical clock, vector clock, happened before relation, major property of the clocks. Applications of clock synchronization: causal ordering of messages (Birman- Schiper-protocol. Global state: consistent global state, (chandy-lamport’s global state recording algorithm), Cuts in distributed computation, Huang's termination detection algorithm. UNIT – II: 14 hours Distributed Mutual Exclusion: What is it? Mutual Exclusion in uniprocess system/shared memory system vs Distributed systems. System Model, requirements, performance metrics. Algorithms: Lamport's algorithm, Ricart-Agrawalaalgorithm,Maekawa’s Quorum based algorithm, Suzuki-Kasami Broadcast Algorithm,Raymond's Tree-Based Algorithm. Distributed Deadlock Detection: Preliminaries, handling strategies, control organizations, Algorithms : Centralized control (Completely centralized control, Ho-Ramamurthy algorithms), Distributed deadlock detection (Path pushing, Edge-chasing algorithms, diffusion computation based algorithms), Hierarchal deadlock detection (Ho-Ramamurthy algorithms). Agreement Protocols : Introduction, System model, classifications (Byzantine, consensus, and interactive
agreement protocols). Applications of agreement protocols. UNIT – III: 10 hours Distributed File Systems: Architecture, Mechanism for building Distributes file system, Design issues, Case studies (SUN NFS, SPRITE). Distributed Shared Memory: Architecture, advantages, Algorithms : Central server approach, Migration algorithm, Read replication algorithm, Full replication algorithms, Memory coherence (Introduction only). Distributed Scheduling: Introduction, motivation, Issues in load distribution, components of load distribution, Load distributing algorithms (Sender-initiated, Receiver-initiated algorithm), Task Migration, issues in task migration UNIT – IV: 12 hours Failure Recovery: Types of failure, Backward and forward error recovery, Recovery in concurrent systems (Orphan message and the Domino effect, Lost messages, Livelocks). Checkpoints : consistent, and strongly consistent state of checkpoints. Fault Tolerance : Introduction, issues, two-phase commit protocols, non-blocking commit protocols, Voting protocols. Access and Flow Control: Introduction, The access matrix model, Safety in the access matrix model, Lattice model and information flow. TEXT BOOKS
- Singhal, Mukesh& N.G. Shivaratri, Advanced Concepts in Operating Systems, TMH. REFERENCE BOOKS:
- P. K. Sinha, “Distributed Operating Systems” PHI, 1998.
- A.S. Tanenbaum, Modern Operating Systems, PHI
- G. Coluris, Distributed Systems-Concepts and Design.
- Chow, Johnson, Distributed Operating Systems, Addison-Wesley Other References: (Web ) Course Name: E-COMMERCE Category: Programme Elective Course Prerequisite: Basics of Internet Technology Learning Objective: The objectives of the course are to introduce the concept of electronic commerce, and to understand how electronic commerce is affecting business enterprises, governments, consumers and people in general. In addition, we will study the development of websites using relevant software tools. Learning Outcome: Demonstrate an understanding of the foundations and importance of E- commerce. Demonstrate an understanding of retailing in E-commerce. Analyze the impact of E-commerce on business models and strategy. Describe the infrastructure for E-commerce. Discuss legal issues and privacy in E-Commerce. Integrate theoretical frameworks with business strategies. UNIT – I: 12 hours Electronic Commerce Framework, anatomy of E-Commerce applications, E-Commerce Consumer applications, E-Commerceorganization applications. Consumer Oriented Electronic commerce MercantileProcess models. UNIT – II: 12 hours Electronic payment systems DigitalTokenBased,Smart Cards, Credit Cards, Risks in Electronic Payment systems. Inter Organizational Commerce EDI,EDI Implementation, Value added networks. UNIT – III: 12 hours Intra Organizational Commerce workFlow, Automation Customization and internal Commerce, Supplychain Management. Corporate Digital Library DocumentLibrary, digital Document types, corporate Data Warehouses. Advertising and Marketing Informationbased marketing, Advertising on Internet, onlineMarketingprocess, market research. UNIT – IV: 12 hours Consumer Search and Resource Discovery Informationsearch and Retrieval, Commerce