[go: up one dir, main page]

0% found this document useful (0 votes)
241 views195 pages

Syllabus Mca All Semester

This document outlines the syllabus for undergraduate, postgraduate and PhD programs in computer science at a university. It provides details on course structure, prerequisites, objectives and outcomes for programs like BCA, MCA and PhD. The syllabus is designed to impart both theoretical knowledge and practical skills to students.

Uploaded by

rk751499
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
241 views195 pages

Syllabus Mca All Semester

This document outlines the syllabus for undergraduate, postgraduate and PhD programs in computer science at a university. It provides details on course structure, prerequisites, objectives and outcomes for programs like BCA, MCA and PhD. The syllabus is designed to impart both theoretical knowledge and practical skills to students.

Uploaded by

rk751499
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 195

A Handbook of

Curriculum and Syllabus

For

UG, PG and Ph.D Programme

Department of Computer Science

Faculty of Computer Science

Indira Gandhi National Tribal University,

(A Central University)

Amarkantak, Anuppur, (M.P.) – 484 887, India.


Table of Contents

Chapter-1 : Bachelor of Computer Applications


1. Introduction

2. Program Educational Objectives


3. Pedagogical Teaching and Learning Methods
4. Program Outcomes

5. Structure of the Curriculum


5.1. BCA Course Pre-requisites and Period
5.2. Details of Curriculum

Chapter-2 : Master of Computer Applications


6. Introduction
7. Program Educational Objectives
8. Program Outcomes
9. Structure of the Curriculum
9.1. MCA Course Pre-requisites and Period
9.2. Details of Curriculum
10. AWARD OF GRADES
10.1. Examination
11. Syllabus of Core Subjects
12. Syllabus of Discipline Specific Electives
13. Project Work Guidelines

Chapter-3: Doctor of Philosophy


14. Introduction
15. Structure of the Curriculum
16. Foundation Courses
17. Elective Course

2
Chapter-1 : Bachelor of Computer Applications
1. Introduction
This syllabus is the extension of the existing syllabus which is currently being taught to
B. C. A. of IGNTU for the last few years, but modified as per need of IT and R & D
Industry and to be implemented in academia from the academic year 2020 onwards.
However, there are few changes incorporated in the existing syllabus. It is believed that
the proposed changes qualitative change in the way B.C.A. is taught, which will offer a
more enriched learning experience. It aims to provide technology-oriented students with
the knowledge and ability to develop creative solutions, and better understand the
effects of future developments of computer systems and technology on people and
society. The syllabus is about developing skills to learn new technology, grasping the
concepts and issues behind its use and the use of computers.

2. Program Educational Objectives

● To train the graduates to acquire in depth knowledge of fundamental concepts and


programming skills for holistic development of the pupils.
● To prepare the graduates for productive careers in the software industry, corporate
sector, Government Organizations, and R & D.
● To prepare graduates to acquire excellent computing ability so that they can analyze,
design and create Solutions for real time problems.
● To apply the current tools and techniques to create systems for solving Industry
oriented problems.
● To prepare graduates to gain multidisciplinary knowledge through real time case
studies, projects and industry internships to meet the industry needs.

3. Pedagogical Teaching and Learning Methods

● At the start of course, the course delivery pattern, prerequisite of the subject will be
discussed

3
● Lectures will be conducted with the aid of multimedia projector, white board, online
mode etc.

● Two internal tests (10 for each) will be conducted as a part of internal theory
evaluation.
● Attendance is compulsory in lecture which carries 05 marks in overall evaluation.

● Assignments/Surprise tests/Quizzes/Seminar/tutorial will be conducted having a


share of 15 marks in the overall internal evaluation.
● Experiments shall be performed in the laboratory related to course .

4. Program Outcomes

● Apply knowledge of computing fundamentals, computing specialisation,


Programming Skills, and domain knowledge to conceptualise computing models.

● Problem Analysis Identify, formulate, research literature, and solve complex


computing problems reaching substantiated conclusions using fundamental
principles of computing sciences, and relevant domain disciplines.

● The Design/Development of Solutions Design and evaluate solutions for complex


computing problems, and design and evaluate systems, components, or processes
that meet specified needs with appropriate consideration for public health and
safety, cultural, societal, and environmental considerations.

● Innovation and Entrepreneurship identify a timely opportunity and use innovation


to pursue that opportunity to create value and wealth for the betterment of the
individual and society at large.

5. Structure of the Curriculum

5.1. BCA Course Pre-requisites and Period

5.2. Details of Curriculum

4
SEMESTER WISE PLAN

SEMESTER-I

Subject Subject Name Credit Internal External Tot


Code Marks Marks al
Mar
ks
BCA-101 Computer Fundamentals 4 40 60 10
0

BCA-102 Digital Electronics 4 40 60 10


0

BCA-103 Programming in C 4 40 60 10
0
BCA-104 Information Technology 4 40 60 10
Skills 0
BCA-105 English Communication 4 40 60

BCAL- C Programming Lab 2 50 50


106
BCAL- IT Skill Development Lab 2 50 50
107
Total 2 200 400 50
4 0

5
SEMESTER-II

Subject Subject Name Credi Intern External Marks Tot


Code t al End al
Marks SemesterExaminatio Mar
n ks

BCA-201 Discrete 4 40 60 10
Mathematics 0

BCA- Programming in 4 40 60 10
202 C++ 0

BCA- Data Structures 4 40 60 10


203 0

BCA- Internet 4 40 60 10
204 Technologies 0
BCA- Environment 4 40 60
205 Science
BCAL- C++ Programming 2 50 50
206 Lab

BCAL- Data Structures 2 50 50


207 Lab
Total 20 400 50
24 0 0

6
SEMEST
ER III
Subject Subject Credi Internal External Marks Tot
Code Name t Marks End al
SemesterExaminatio Mar
n ks

BCA-301 Computer 4 40 60 10
Networks 0

BCA- Database 4 40 60 10
302 Management 0
System

BCA- Programming 4 40 60 10
303 in JAVA 0

BCA- Operating 4 40 60 10
304 System 0

BCAL- Java 2 50 50
305 Programming
Lab
BCAL- Database 2 50 50
306 Language Lab
Total 1 340 50
20 6 0
0

7
SEMESTER
IV
Subje Subject Name Credit Internal External Marks Tot
ct Marks End al
Cod SemesterExaminatio Mar
e n ks

BCA- Software 4 40 60 10
401 Engineering 0

BCA- Multimedia 4 40 60 10
402 Technology 0

BCA- .NET 4 40 60 10
403 Technology and 0
C#
BCA- Entrepreneurshi 4 40 60 10
404 p Development 0

BCAL- 2 50 50
406 .NET
Programming Lab
BCAL- Multimedia Lab 2 50 50
407
Total 20 1 340 50
6 0
0

8
SEMESTER-V

Subje Subject Credit Internal External Marks Tot


ct Name Marks End al
Code T+P+T* SemesterExaminatio Mar
n ks

BCA- Artificial 4 40 60 10
501 Intelligence 0
and Expert
System

BCA- Programming 4 40 60 10
502 in Python 0

BCA- Web Design 4 40 60 10


503 using PHP 0

BCA- Discipline 5+0+1 40 60 10


504 Specific 0
Elective (DSE)
-1

BCAL- Python 2 50 50
505 Programming
Lab
BCAL- Web 2 50 50
506 Development
Lab
Total 22 16 340 50
0 0

9
Discipline Specific Elective Papers: (Credit 04 each) – DSE -1

DSE-1 (Any One)

1. Introduction to wireless network


2. Linux Programming
3. Computer Architecture and Parallel Computing

Note: Department may include more options or delete some from this list

SEMESTER
VI
Subjec Subject Name Credit Internal External Marks Tot
t Marks End Semester al
Code Examination Mar
ks

BCA- 4 40 60 10
Information and
601 0
Cyber Security

BCA- Cloud Computing 4 40 60 10


602 Tools and 0
Techniques

BCA- IoT Techniques & 4 40 60 10


603 Applications 0
BCA- Discipline Specific 5+0+1 40 60 10
604 Elective (DSE) -2 0

BCA- Project Work / 6 100 10


605 Dissertation 0
Total 24 120 380 50
0

Discipline Specific Elective Papers: (Credit 06) – DSE-2


DSE -2(Any One)

10
1. Data Mining
2. Digital Image Processing
3. Android Programming
4. Fundamental of Cyber Forensics and IT Security

Note: Department may include more options or delete some from this list

BCA-101
Name of Course: COMPUTER FUNDAMENTALS

Course Code: BCA-101 Course Credits: 4

Course objective:
● To introduce Basics Concepts of Computer.
Prerequisite: None
Course Outcome:
● Familiar with fundamental of Computer Concepts and DOS Commands
Contents
Unit -I
Introduction to Computer System
Definition of Computer, Computer Science, Historical milestone of Computer, Block
Diagram of Computer, Types of Computers, Definitions and use of Microcontroller and
Microprocessor in Computer System, Advantages and Disadvantages of Computer,
Applications of Computers. Data representation in computers. Computer Viruses. Disk
Operating System (DOS), Introduction, History & Versions of DOS. DOS basics, booting
process, DOS system files. Basic DOS Commands.
Unit -II
Components of the System Unit

Introduction to Computer Hardware, Components of Mother-boards & its types, Ports,


Slots, Connectors, add on cards, Power supply units, and cabinet types. Storage
devices: Primary & Secondary storage medium. Optical Discs: CDs, DVDs and Blu-ray
Discs.

Unit –III
Memory and Storage Devices

11
Bytes and Addressable Memory, Memory Sizes, Types of Memory: RAM, Cache, ROM,
Flash Memory, CMOS, Removable Flash Memory. Buses, Storage: Characteristics of a
Hard Disk, RAID, NAS, External and Removable Hard Disks, Miniature Hard Disks,Hard
Disk Controllers, Maintaining Data Stored on a Hard Disk, Flash Memory Storage: Solid
State Drives, Memory Cards, USB Flash Drives, Express Card Modules, Cloud Storage,

Unit -IV
Fundamental of Softwares used in Computer

Art of Programming constructs using Algorithm and flowchart, Introduction and Types of
Operating Systems, Boot Loader, Diagnostic programs, BIOS, Utility Programs, Trends
in PC software, Types of Application Software, Difference between Program and
Packages. Programming languages – Machine, Assembly, High Level, 4 GL.
Definitions Language Processors: Assembler, Interpreter, Compiler, Linker and Loader.

Unit –V

Overview of Emerging Technologies in Computing

Overview of Emerging Technologies: systems WWW, E-mails, Search Engines, Social


Networking. Insights new era computing – Cloud Computing, Optical Computing, High
Performance computing etc., Introduction Indian PARAM Computing. Basics of Internet
and Intranet:, Introduction to servers a Types of servers: Files servers, Email Servers,
Proxy servers etc Network security.

Text books:
1. Computers Fundamentals and Architecture by B. Ram
2. Microsoft Windows XP Step by Step , PHI
3. William Stallings, Operating System, Pearson Education
4. Norton, Introduction to Computers, McGraw Hill
5. Ron Mansdield, Microsoft Office, BPB Publication
6. Fundamentals of Computers: P. K. Sinha
7. System Analysis and Design by Elias M Awad.
References Books:
1. Computers Today: Suresh K.Basandra
2. Operating System: Achyut S. Godbole
3. Management Information systems by Gerald V. Post & David L. Anderson.
4. Understanding Computer Fundamentals & Dos By G.K. Iyer
*****

BCA-102
DIGITAL ELECTRONICS

12
Course objective:
● To acquire the basic knowledge of digital logic levels and application of
knowledge to understand digital electronics circuits.
● To prepare students to perform the analysis and design of various digital
electronic circuits.

Unit – I
Background of Digital Electronics
Digital Signals and Systems: Non-Digital Signals, Digital Signals, Conversion Systems,
Representation of Digital Signals, Types of Digital Signals, Edges, Pulses, Non-Periodic
Pulse Trains, Periodic Pulse Trains, Pulse-Width Modulation, Different Type of
Numbering Systems: Decimal, Octal, Binary, Hexadecimal, Conversation from one
number system to another number system, Sampling Theory, Binary Math: Binary
Addition, Binary Subtraction, Binary Complements, One's Complement, Two's
Complement, Binary Subtraction using Two's Complement, Signed Magnitude, Floating
Point Binary, IEEE Standard 754 Floating-Point Formats, Logic Gate Basics: NOT Gate,
AND Gate, OR Gate, Exclusive-OR (XOR) Gate , Truth Tables for Logic Gates, Truth
Tables for Combinational Logic.

Unit – II
Boolean Algebra and Karnaugh Maps
Need for Boolean Expressions, Symbols of Boolean Algebra, Boolean Expressions of
Combinational Logic, Laws of Boolean Algebra, Rules of Boolean Algebra: NOT Rule,
OR Rules, AND Rules, XOR Rules, Derivation of Other Rules, Simplification,
DeMorgan's Theorem, Standard Boolean Expression Formats: Sum-of-Products,
Converting an SOP Expression to a Truth Table, Converting a Truth Table to an SOP
Expression, Product -of-Sums, Converting POS to Truth Table, Converting a Truth
Table to a POS Expression, NAND-NAND Logic, Karnaugh Maps, Simplification Using
Karnaugh Maps, Minimum Sum of Product Expressions Using the Karnaugh Map,
"Don't Care" Conditions, Five- and Six-Variable Maps, Multiple Output Problems.

Unit – III
Logic Families
Introduction to Semiconductor, Fundamentals of Electronics Devices, Overview of
Semi-Conductors Physics, Working of Semiconductor Devices, Diode and Transistor
Characteristics, Diode And Transistor As A Switch, Evolution of Logic Gates, , Logic
Families – Significance and Types, Types of Logic Family : Circuit of RTL and Working
Function as a Gate, Circuit of DTL and Working as a Gate, Transistor- Transistor Logic
(TTL), Circuit of TTL and Working as a Gate, Emitter Coupled Logic (ECL), CMOS
Logic Family, NMOS and PMOS Logic, Comparison of Different Logic Families.

Unit – IV
Combinational Applications and State Machines

13
Creation of Different Combinational Circuits using K-Map: Adders, Seven-Segment
Displays Circuits, Design of BCD to Gray code Convertor using K- Map, BCD to Ex-3
code Convertor, Digital Comparator, Carry Propagation–Look-Ahead Carry Generator,
Decoders, Multiplexers, De-multiplexers, Binary Operation Applications: Bitwise
Operations, Comparing Bits with XOR, Parity, Checksum, Cyclic Redundancy Check,
CRC Process, CRC Implementation, Hamming Code. State Machines: Introduction to
State Machines, States, State Diagrams, Errors in State Diagrams, Basic Circuit
Organization, State Machine Design Process, Another State Machine Design: Pattern
Detection, Mealy Versus Moore State Machines.

Unit – V
Sequential Systems
New Truth Table Symbols, Edges/Transitions, Previously Stored Values, Undefined
Values, S-R Latch/ Flip-Flop, D Latch, J-K Flip-Flop, Divide-By-Two Circuit, Registers,
Counter: Ripple (Asynchronous) Counter, Synchronous Counter, UP/DOWN Counters,
Parallel Data Output, Timing Circuits and Converters: 555 Timer, Digital To Analog
Converter, Analog To Digital Converter, Design of Sequential Circuit using K-Map.
Memory Organization: Early Memory, Organization of Memory Device, Interfacing
Memory to a Processor, Buses, Memory Maps, Address Decoding, Asynchronous vs
Synchronous Memory.

Text Books:
1. R.P. Jain, Modern Digital Electronics, Tata McGraw Hill
2. M. Morris Mano, "Digital Logic and Computer Design", PHI, 1996
3. Louis Neshelsky, "INTRODUCTION TO DIGITAL TECHNOLOGY", John Wiley &
Sons, Third Edition, 1983.
4. Digital Logic Design - Ployd.

BCA-103
PROGRAMMING in C
Need of the subject and justification:
C is the core programming language of the computer science field. The main features of
C language include low-level access to memory, simple set of keywords, and clean
style. These features make C language suitable for system programming like operating
system or compiler development.
Course objective:
● To understand the fundamentals of programming languages.

● To learn how to write functions for efficiency and performance.


● To learn the syntax and semantics of the C programming language.

14
Unit-I
Introduction to programming concepts
History of languages, high-level, low level, assembly languages etc., definition and
properties of algorithm, principles of flowcharting, converting algorithms to flowcharts.
Introduction to c: character set, constants, variables and keywords, types of constants,
data types, operators: arithmetic, unary, relational and logical, assignment, bitwise, size
of and conditional operators, precedence of operators, library functions: getchar (),
putchar (), printf (), scanf (), puts (), gets ().
Unit-II
Control Statement in C
Control Statements: if, if-else, nested if statement, if else if ladder, switch case, loop
control: while, do-while, for, nested looping, control flow structures: break and continue,
go to statements.
Arrays declaration and initialization, 1-dimensional array, 2-dimensional array, multi-
dimensional array, string processing: in built string handling functions (strlen, strcpy,
strcat and strcmp, puts, gets) linear search program, bubble sort program, simple
programs covering arrays and strings.
Unit-III
Functions
Definition, prototypes, formal parameters, actual parameters, return type in function,
user defined function, predefined function, pass by value, pass by reference, recursion
function, Arrays as function.
Storage Classes: Automatic, External, Static, Register, Scope and lifetime of variables,
simple programs using functions
Unit-IV
Structures and unions
User defined data types - passing structures to functions - self-referential structures,
nested Structure, array of structure, structure to function, Union, typedef, and #define in
C.
Basics of pointer: declaring pointers, accessing data though pointers, types of pointer:
null pointer, dangling pointer, generic pointer, near, far and huge pointer, pointer as
array, string as pointers, passing pointers to functions. Pointers and structures.
Unit-V
File Input/Output
Introduction, defining and opening a file, Study of file I/O Operations: fopen (), fclose( ),
fputs ( ), fgets ( ), fread ( ), fwrite(),simple programs covering pointers and files.
Introduction to dynamic memory allocation, calloc(), malloc(), free() functions,
applications of C language. Introduction to dynamic memory allocation, calloc(),
malloc(), relloc(), and free() functions.

Text books:

15
1. Let us C- by Yashwant Kanetkar – BPB publications
2. The Complete Reference C, Herbert Schildt, TataMcGraw HILL
3. Programming in ANSI C - by E. Balgurusamy – TataMcGraw HILL
4. Programming with C- by Byron Govtfred Second Edition- TMH
Reference Books:
1. The C programming Language by Dennis M Ritchie and Kernighan ( PHI)
2. C for all by S. Thamarai Selvin & R. Murugesan ( Anuradha Agencies)
3. Programming in C by Ghosh ( PHI)
4. Computer Programming in C by V. Rajaraman ( PHI)

******
BCA-104
Information Technology Skills

Course objective:
● Provide hands-on use of Microsoft Office applications Word, Excel, Access and
PowerPoint.
● Completion of the assignments will result in MS Office applications knowledge
and skills.
● Provide foundational or “computer literacy” curriculum that prepares students for
life-long learning of computer concepts and skills.

Unit-I
MS Window
Computer Basic, Creating File & Folder, Windows short cut keys, window control panel,
Icons, Desktop window, GUI components in window OS, Window Installation, device
driver installation, Window Applications.

Unit-II
MS-Word
Text Basics, Text formatting and Saving files, Working with Objects like picture, charts,
Word Art & Symbols, Header & Footers, Buttels, Tables, Style & Content, Merging
Document, Proofing the document & Printing

Unit-III
MS-Excel

16
Introduction to Excel, Formatting Excel Workbook, Excel Formulas, Sorting and filtering
data, Charts for presenting data, PivotTables, Macros to automate task, Proofing and
printing.

Unit-IV
MS-Powerpoint
Setting up PowerPoint environment, creating slide and applying themes, working with
buttet and numbering, Working with objects like text, wordart, chart and symbols,
Hyperlink and action button, working with movies and sound, Animation, Slide show
option

Unit-V
IT Technologies
Microsoft Paint, Microsoft one-drive, Google-drive, drop box, Skype, Google meet,
Google calendar, Google earth, WebEx, Zoom, Google Classroom and others mobile
apps

Text books:
1. MICROSOFT EXCEL 2019: DATA ANALYSIS & BUSINESS MODEL, L
Winstone Wayne, Paperback
2. Microsoft Office 2019, Dummies, Wallencewang, Paperback

BCAL -106
Information Technology Skill Lab

List of Assignment
1. Create a Visiting Card of your college using page size as follows: Page
width=”3.2” Page height=”2.2” and use different font styles, sizes, alignments.
2. Write a leave letter to the Principal by using different alignments, correct formats
in MS Word.
3. Click on the Mailings tab, then the Start Mail Merge button, and then Step by
Step Mail Merge Wizard…
4. Create an electronic spreadsheet which shows the sales of different products for
5 years.
5. Create a suitable examination database and find the sum of the marks(total) of
each Student and respective class secured by the student Rules
Pass if marks in each subject < = 35,
Distinction if average >=70,
First class if average >60 but <70,

17
Second class if average >=50 but <60,
Third class if average > =35 and but <50 ,
Fail if marks in any subject is >35 .
Display average marks of the class, subject wise and pass percentage

6. Make a Powerpoint presentation of all the details of the books that you had
studied in BCA. First Year.
7. Make a Powerpoint presentation of all the details of the Students and their
Profiles.

BCAL -107
C PROGRAMMING LAB
List of C Programs

1. Program to display your name.


2. Program to find to print sum of two numbers.
3. Program to find area and circumference of circle.
4. Program to find the simple interest.
5. Program to convert temperature from degree centigrade to Fahrenheit.
6. Program to calculate sum of 5 subjects &amp; find percentage.
7. Program to show swap of two no’s without using a third variable.
8. Program to reverse a given number.
9. Program to find gross salary.
10. Program to print a table of any number.
11. Program to find greatest in 3 numbers.
12. Program to show the use of conditional operators.
13. Program to find that entered year is leap year or not.
14. Program to find whether given no is even or odd.

18
15. Program to shift inputted data by two bits to the left.
16. Program to use switch statement for display Monday to Sunday.
17. Program to display arithmetic operators using switch case.
18. Program to display first 10 natural no &amp; their sum.
19. Program to find ASCII value of any input character.
20. Program to print Fibonacci series up to 100.
21. Program to find GCD of given Numbers using Recursion.
22. Program to find HCF of a given Number using Recursion.
23. Program to find whether given no is a prime no or not.
24. Program to check whether given character is a vowel or consonant.
25. Program to find factorial of a number.
26. Program to convert upper case to lower case for given alphabet.
27. Program to display characters from A to Z using loop.
28. Program to count number of digits in an integer.
29. Program to check given number is armstrong number or not.
30. Program to display factors of a number.
31. Program to to make a simple calculator using switch...case.
32. Program to display sum of series 1+1/2+1/3+……….+1/n.
33. Program to display series and find sum of 1+3+5+……..+n.
34. Program to use bitwise AND operator between the two integers.
35. Program to add two number using pointer.
36. Program to show sum of 10 elements of array and show the average.
37. Program to find the maximum no in an array.
38. Program to display matrix.
39. Program to find sum of two matrices.
40. Program to find subtraction of two matrices.
41. Program to find multiplication of two matrices.

19
42. Program to find transpose of a matrix.
43. Program to find the maximum number in array using pointer.
44. Program to reverse a number using pointer.
45. Program to show input and output of a string.
46. Program to find square of a number using functions.
47. Program to swap two numbers using functions.
48. Program to find factorial of a number using functions.
49. Program to show call by value.
50. Program to show call by reference.
51. Program to find largest of two numbers using functions.
52. Program to find factorial of a number using recursion.
53. Program to find whether a string is palindrome or not.
54. Program to search an element from array using liner search.
55. Program to sort array element using bubble sort.
56. Program to find concatenation of two strings.
57. Program to find concatenation of two strings.
58. Program to copy string.
59. Program to reverse string.
60. Program to compare two strings.

BCA 2nd Semester

BCA-201
DISCRETE MATHEMATICS

Need of the subject and justification:


Discrete Mathematics will impart a student with the art of reading, understanding and
analyzing a problem before coming up with a solution. All these skills are vital when it
comes to programming and computer science in general.

20
Course objective:
● To understand the fundamentals of Set theory, relation and functions.

● To learn how to understand the group theory, propositions and lattice.


● To learn the basics of automata theory.

Unit-I
Set theory, Relations, Function & Mathematical Induction- Introduction- sets, Venn
Euler diagrams, Operation on sets-Properties of set operations- verification of basic
laws of algebra. Relation: Type and composition of relations, pictorial representation of
relations, Closures of relations, Equivalence relations, Partial ordering relation, partition
and equivalence classes. . Function: Types, Composition of function, Recursively
defined function, Techniques of proofs: Principle of mathematical induction.
Unit –II
Algebraic Structures: Binary Operations Revisited Semi Groups, Group, Monoid,
Abelian group, Properties of group, Subgroup, Cyclic group, Cosets, Permutation
groups, Homomorphism, Isomorphism and Automorphism of groups.
Unit –III
Propositional Logic: Proposition, Tautologies, Contradictions, Algebra of Proposition,
Logical implication, Logical equivalence, Normal forms, Predicates and quantifiers.
Counting: basics of Permutation and Combination.
Unit -IV
Lattices: Introduction, Ordered set, Posets, Hasse Diagram, Hasse diagram of partially
ordered set, Consistent enumeration, Isomorphic ordered set, Well ordered set,
Properties of lattices, Bounded lattices, Distributive lattices, and Complemented
lattices.
Unit –V
Automata theory: Introduction to defining language, Kleene Closure, Arithmetic
expressions, Regular expressions, Generalized Transition graph, Conversion of regular
expression to Finite Automata, NFA, DFA, statement about equivalence of NFA to
DFA, Optimizing DFA, FA with output: Moore machine, Mealy machine.
Text Book:
1. Liptschutz, Seymour, “Discrete Mathematics”, TMH
2. Trembley, J.P & R. Manohar, “Discrete Mathematical Structure with Application to
Computer Science”, TMH

21
3. Bernard Kolman, Robert C. Busby and Sharon Ross, “Discrete Mathematical
Structure”, PHI, ISBN- 978-81-203-3689-6
Reference Book:
1. E. Goodaire , “Discrete Mathematics with Graph theory”, PHI,. ISBN--10:
0131679953
2. J. K. Sharma, “Discrete Mathematics”, McMillan, ISBN-9780230322301

BCA-202
PROGRAMMING IN C++

Course objective:
● To understand how C++ improves C with object-oriented features.
● To learn the syntax and semantics of the C++ programming language.
● To learn how to design C++ classes for code reuse.

Unit-I
Introduction to C++
How C++ evolved from C?, Features of C++, OOP vs. procedure-oriented
programming, Basic anatomy of a C++ program, Compiling, linking and running a C++
program, Object-Oriented Programming Concepts: Abstraction, Inheritance,
Polymorphism, Data Binding, Encapsulation, Classes, subclasses and Objects; Basics
of C++: Base Data Types and sizes, User-defined Data Types, Variable Declarations,
Variable Names, Dynamic initialization of variables, Constants and its types:-Character
Constants, String Constants, Standard input and standard output: cin, cout, Use of <<
and >> operators, Operators and Expressions: Operators:-Arithmetic Operators,
Relational Operators, Assignment Operator, Logical Operators, Increment and
Decrement Operators (++ and --), 'Operate-Assign' Operators (+=, *=, ...); Expressions:-
What are Expressions?, Operator Precedence, Precedence and Order of Evaluation,
Conditional Expression, Casting and type conversion.

Unit-II
Controlling the Program Flow
Decision control: if, if – else, if - else if, Loop Control: while, do – while, for, break,
continue, Case Control: switch, goto; Functions/Procedures: Why Functions?, Anatomy
of a Function, Returning values from functions, Arguments Passed by Value, Passing
Addresses of Arguments, Concept of variable scope and scope rules, Static and
automatic variables, Global variables, Pointers and Arrays: Pointers: What is a Pointer?,
Pointer Initialization, Pointer Operators, The & Operator, Pointer Arithmetic, Functions
and pointers, Understanding Arrays: Arrays, Initializing Arrays, Passing Arrays to
Functions, Pointers and Arrays, Pointer to an Array, Array of pointers, Strings: String

22
I/O, cin and cout member functions, Standard C String functions, Arrays of Strings,
Structures, Arrays of Structures, Sequential Files, Random-Access Files.

Unit-III

Binding data and functions


Concept of a class, Defining a class, Creating an object, Object Scope, Data
Abstraction, Enforcing Data Encapsulation, ‘this’ Pointer, Dynamic creation of objects,
Constructors and Destructors: Default Constructor, Destructor, Parameterized
Constructors, Copy constructor, Defining member functions & Methods and access
modifiers, Accessing class data and methods, Friend class and friendly functions,
Returning objects, Arrays of Objects.

Unit-IV
Function and Operator Overloading
Function Overloading:- overloaded functions, Rules for overloading, Operator
overloading and its uses: Overloading unary and binary operators, Overloading the
assignment operator, Overloading the << Operator, Overloading the increment and
decrement operator, Dealing with strings using operators, Converting data types: Basic
to class type, Class to basic type, Class to another class type.

Unit-V
Reusing classes
Inheritance-Base and Derived classes, Inheritance types, Scope Resolution operator,
Access Modifiers, Access and Inheritance, Constructors and Inheritance, Multiple &
Multilevel Inheritance, Calling base class constructor, Overriding base class members,
Virtual functions and Polymorphism: Virtual & non- virtual Overriding, Virtual functions,
Rules for virtual functions, Pure virtual functions, Static and Dynamic Binding, Virtual
base classes, Templates, Templates, Function templates, Class templates, Exception
Handling: Benefits of exception handling, Throwing an exception, The try block,
Catching an exception, Exception objects, Exception specifications, Stack unwinding,
re-throwing an exception, Catching all exceptions.

TEXT BOOKS:
1. C++, The Complete Reference, 4th Edition, Herbert Schildt, TMH.
2. Object Oriented Programming in C++, 4th Edition, R.Lafore, SAMS, Pearson
Education

REFERENCE BOOKS:
1. An Introduction to OOP, 3rd Edition, T. Budd, Pearson Education,2008.

23
2. Programming Principles and Practice Using C++, B.Stroutstrup, Addison-
Wesley, Pearson Education.
3. Problem solving with C++, 6th Edition, Walter Savitch, Pearson Education,2007..
4. The Art, Philosophy and Science of OOP with C++, R.Miller,SPD.
5. OOP in C++, 3rd Edition, T.Gaddis, J.Walters and G.Muganda, Wiley
DreamTech Press.
6. An Introduction to OOP in C++ with applications in Computer Graphics, 2nd
Edition, G.M.Seed, Springer.

*****

BCA-203
Name of Course: DATA STRUCTURES

Course Objective:

● To study the various structures or methods of organizing data in a computer's


memory and efficiently implement them.

Content
Unit-I
Introduction to data structures
Data type and data object, Abstract Data Type (ADT),Type of data structure, Algorithm
analysis, Space and Time complexity, Asymptotic notation - Big O, OmegaΩ ,Simple
algorithms and its complexity as examples.

Unit-II
Array as a data structure
Array representation- Row and column major, Sorting techniques with time complexity:
Bubble sort, Insertion sort, Merge sort, Quick sort, Searching techniques with time
Complexity: Linear search, Binary search.

Unit-III
Linked List
Introduction, Representation -Static and Dynamic, Types of linked lists- singly, doubly,
circular, Operations-create, display, insert, delete, reverse, search, sort, concat, merge,
Applications -single variable polynomial manipulation.

24
Unit-IV
Stack and Queue
Introduction, Representation -Static and Dynamic, Operations– push, pop Applications
- Recursion, Infix to postfix, Infix to prefix, postfix, evaluation. Queue: Introduction,
Representation -Static and Dynamic, Operations– insert, delete, Circular queue Priority
queue, Applications. Introduction to Trees and Hash Tables.

Unit-V
Tree and Graph
Introduction, Tree terminologies- all definitions, root, leaf, level, height, depth, Binary
tree: Types,Types of Traversal– Preorder, Inorder, Postorder, Representation – Static &
Dynamic, Binary Search Tree (BST), Operations– Create, Insert, Delete, Counting leaf
and non-leaf nodes. Graph: Introduction, Graph terminologies, Representation –
Adjacency matrix, Adjacency list, Adjacency multilist, Traversal– DFS, BFS,
Applications, AOV network – Topological sort, AOE network – Critical path.

Test Books:
1. Data structures and Algorithm Analysis in C++, Mark Allen Weiss, Pearson Edu.
2. Data structures and Algorithms in C++, Michael T.Goodrich, R.Tamassia and
D.Mount, John Wiley and Sons.
3. Data structures , Algorithms and Applications in C++,S.Sahani, Universities Press.

Reference Books:
1. Fundamentals of Data Structures-Horowitz Sahani (Galgotia)
2. Data structures and algorithms in C++, 3rd Edition, Adam Drozdek, Cengage
Learning.
3. Data structures using C and C++, Langsam, Augenstein and Tanenbaum, PHI.
4. Data structures,algorithms and OOP,G.L.Heileman,TMH edition.
5. Data Structures using C++, D.S. Malik, Cengage Learning, India Edition.

******

BCA-204
Internet Technologies
Course objective:
This course is intended to teach the basics of the Internet and publishing content on the
World Wide Web.

Unit-I
Introduction to Internet

25
Internet, Growth of Internet, Owners of the Internet, Anatomy of Internet, ARPANET and
Internet history of the World Wide Web, basic Internet Terminology, Net
etiquette.Internet Applications – Commerce on the Internet, Governance on the Internet,
Impact of Internet on Society – Crime on/through the Internet

Unit-II
Internet Technology and Protocol
TCP/IP – Internet Technology and Protocol, Packet switching technology, Internet
Protocols: TCP/IP, Router, Internet Addressing Scheme: Machine Addressing (IP
address), E-mail Addresses, Resources Addresses, Connectivity types, Setting up a
connection: hardware requirement, selection of a modem, software requirement,
modem configuration, Internet accounts by ISP, Protocol options – Shell, PPP, Service
options – E-mail, WWW, News Firewall

Unit-III
Service on Internet
E-mail, WWW, Telnet, FTP, IRC and Search Engine, Email Networks and Servers,
Email protocols –SMTP, POP3, IMAp4, MIME6, Structureof an Email – Email Address,
Email Header, Body and Attachments, Email Clients:Netscape mail Clients, Outlook
Express, Web based E-mail. Email encryption- AddressBook, Signature File.

Unit-IV
Current Trends on Internet
Languages, Internet Phone, Internet Video, collaborative computing, e-commerce,
social media sites, online tools, e-shopping, e-business, mobile applications, social
media marketing, content marketing, search engine optimization

Unit-V
Introduction to HTML
HTML, HTML tags, commonly used HTML commands, text formatting, text style, lists,
adding graphics to HTML documents, tables, linking documents, frames, Forms, Image
Maps, CSS: Types of Style sheets, Different elements of Style sheets, Filter effects,
IFrame, DIV and Layer Tags. Understanding XML: SGML, XML, XML and HTML,
modeling XML data.

TEXT BOOKS:
1. Web Technology: A Developer's Perspective, N.P. Gopalan and J.
Akilandeswari, PHI Learning, Delhi, 2013.
2. Internetworking Technologies, An Engineering Perspective, Rahul Banerjee, PHI
Learning, Delhi, 2011.

26
******

BCAL -206
C++ PROGRAMMING LAB

List of Sample Problems/Experiments:

1. Write a C++ program to find the sum of individual digits of a positive integer.
2.
A Fibonacci sequence is defined as follows: the first and second terms in the
sequence are 0 and 1.Subsequent terms are found by adding the preceding two
terms in the sequence. Write a C++ program to generate the first n terms of the
sequence.
3. Write a C++ program to generate all the prime numbers between 1 and n ,
4. where n is a value supplied by the user.
5. Write C++ programs that use both recursive and non-recursive functions
a. To find the factorial of a given integer.
b. To find the GCD of two given integers.
c. To find the nth Fibonacci number.
6. Write a C++ program that uses a recursive function for solving Towers of Hanoi
problem.
7. Write a C++ program that uses functions
a. To swap two integers.
b. b. To swap two characters.
c. To swap two reals. Note: Use overloaded functions.
8. Write a C++ program to find both the largest and smallest number in a list of
integers.
9. Write a C++ program to sort a list of numbers in ascending order.
10. Write a C++ program that uses function templates to solve problems-7&8.
11. Write a C++ program to sort a list of names in ascending order.
12. Write a C++ program to implement the matrix ADT using a class. The
operations supported by this ADT are:

a. Reading a matrix.
b. Addition of matrices.
c. Printing a matrix.
d. Subtraction of matrices.
e. Multiplication of matrices.

13. Implement the matrix ADT presented in the problem-11 using overloaded
operators (<<, >>, +, -, *) and templates.

27
14. Implement the complex number ADT in C++ using a class. The complex
ADT is used to represent complex numbers of the form c=a+ib, where a
and b are real numbers. The operations supported by this ADT are:
a. Reading a complex number. d) Subtraction of complex
numbers.
b. Writing a complex number. e) Multiplication of complex
numbers.
c. Addition of Complex numbers. f) Division of complex
numbers.
15. Write a C++ program that overloads the + operator and relational operators
(suitable) to perform the following operations:
a. Concatenation of two strings.
b. Comparison of two strings.
16. Implement the complex number ADT in C++ using a class. The complex ADT is
used to represent complex numbers of the form c=a+ib, where a and b are real
numbers. The operations supported by this ADT are:
a. Reading a complex number.
b. Subtraction of complex numbers.
c. Writing a complex number.
d. Multiplication of complex numbers.
e. Addition of Complex numbers.
f. Division of complex numbers.
g. Note: 1. overload << and >> operators in part a and part b.
h. overload +, - , * , / operators in parts c, d, e and f.
17. Write a template based C++ program that determines if a particular value occurs
in an array of values.
18. Write a C++ program that uses functions to perform the following operations:
a. Insert a sub-string into the given main string from a given position.
b. Delete n characters from a given position in a given string.
19. Write a C++ program that uses a function to reverse the given character string in
place, without any duplication of characters.
20. Write a C++ program to make the frequency count of letters in a given text.
21. Write a C++ program to count the lines, words and characters in a given text.
22. Write a C++ program to determine if the given string is a palindrome or not.
23. Write a C++ program to make frequency count of words in a given text.
24. Write a C++ program that displays the position or index in the string S where the
string t begins , or –1 if S doesn’t contain t.
25. 2’s complement of a number is obtained by scanning it from right to left and
complementing all the bits after the first appearance of a 1. Thus 2’s complement
of 11100 is 00100. Write a C++ program to find the 2’s complement of a binary
number.
26. Write a C++ program that counts the number of 1 bit in a given integer.
27. Write a C++ program to generate Pascal’s triangle.
28. Write a C++ program to construct of pyramid of numbers.
29. Write a C++ program to compute the Sine series.
30. Write a C++ program that converts Roman numeral into an Arabic integer.

28
31. Write a C++ program which converts a positive Arabic integer into
its corresponding Roman Numeral.
32. Write a C++ program to display the contents of a text file.
33. Write a C++ program which copies one file to another.
34. Write a C++ program to that counts the characters, lines and words in the text
file.
35. Write a C++ program to change a specific character in a file.
36. Note: Filename , number of the byte in the file to be changed and the new
character are specified on the command line.
37. Write a C++ program to reverse the first n characters in a file.
38. Write a C++ program that uses a function to delete all duplicate
characters in the given string.
39. Write a C++ program that uses a function to convert a number to a character
string.
40. Write a C++ program that uses a recursive function to find the binary equivalent
of a given non-negative integer n.
41. Write a C++ program to generate prime numbers up to n using Sieve of
Eratosthenes method.
42. Write a C++ program
a. To write an object to a file.
b. To read an object from the file.
43. Write C++ programs that illustrate how the following forms of inheritance are
supported:
a. Single inheritance
b. Multiple inheritance
c. Multi level inheritance
d. Hierarchical inheritance
44. Write a C++ program that illustrates the order of execution of constructors and
destructors when a new class is derived from more than one base class.
45. Write a C++ program that illustrates how run time polymorphism is achieved
using virtual functions.
46. Write a C++ program that illustrates the role of virtual base class in building class
hierarchy.
47. Write a C++ program that illustrates the role of abstract class in building class
hierarchy.

TEXT BOOKS:
1. Mastering C++, K.R.VenuGopal, Raj Kumar and T.Ravi Shankar, TMH.
2. C++ Programming, D.S.Malik, Cengage Learning.
3. Practical C++ Programming,S.Qualline,SPD.

BCAL-207

29
DATA STRUCTURES LAB

List of Exercises:
Implement the following exercises using C/C++:
1. Design an algorithm and write a C/ C++ Program for addition two numbers by
using function.
2. Array implementation of List Abstract Data Type (ADT)
3. Linked list implementation of List ADT
4. Array implementations of Stack ADT
5. Design an algorithm and write a C/ C++ Program to print integers.
6. Design an algorithm and write a C/ C++ program finding maximum and minimum
elements of an array.
7. Design an algorithm and write a C/ C++ Program finding the maximum element of
an integer array and float array.
8. Design an algorithm and write a C/ C++ program to implement the Stack ADT
using an array.
9. Design an algorithm and write a C/ C++ program to implement the Queue ADT
using an array.

10. Design an algorithm and write a C/ C++ program of Linked Lists for the Inserting
in the beginning of the list.

11. Design an algorithm and write a C/ C++ program for linear Search.
12. Design an algorithm and write a C/ C++ program for Binary Search.
13. Design an algorithm and write a C/ C++ program for bubble sort.
14. Design an algorithm and write a C/ C++ program for the insertion sort.
15. Queues ADT
16. Search Tree ADT - Binary Search Tree
17. Stack
1. Static Stack Implementation
. 2.Dynamic Stack Implementation
18, Queue
1. Static Queue Implementation
2. Dynamic Queue Implementation
19. Binary Search tree (Dynamic)
20. Graph
1. Adjacency Matrix Representation
2. Adjacency List Representation

[Note: 1-4; 15-20: Practical Problem will given for implementation]

*****
30
***************Second Semester**************

BCA-301
COMPUTER NETWORKS
Course objective:
● The course objectives include learning about computer network organization and
implementation, obtaining a theoretical understanding of data communication
and computer networks.

Unit – I
Introduction to Computer Network and Physical Layer
Introductory Concepts: Goals and Applications of Networks, Network Structure and
Architecture, OSI Reference Model, Network Topology, Physical Layer: Transmission,
Switching Methods, Multiplexing, Integrated Services Digital Networks (ISDN).

Unit –II
Medium Access Sublayer
Channel Allocations, LAN Protocols, ALOHA Protocols, Carrier Sense, Multiple Access
Protocols, CSMA with Collision Detection, Collision Free Protocols, IEEE Standards
(802.3, 802.4, 802.5, and 802.6), FDDI.
Data Link Layer: Elementary Data Link Control Protocols, Sliding Window Protocols,
Error Handling (Error-Correction and Detection), HDLC.

Unit –III
Network Layer
Network Layer: Point to Point Networks, Routing Algorithms, Congestion Control
Algorithms, Leaky Bucket Algorithm. Internetworking: Overview, TCP/IP Model, Network
Layer: IP Protocol, IP Addresses, IPv4, IPv6.
Unit –IV
Transport Layer
Duties of Transport Layer, Connection Management, TCP Window Management, User
Datagram Protocol, Transmission Control Protocol. Session Layer: Session and
Transport Interaction, Synchronization Points, Session Protocol Data Unit. Presentation
Unit: Translation, Encryption/ Decryption, Authentication, Data Compression.

Unit –V

Application Layer

31
Network Security, DES, RSA Algorithms, Domain Name System, Simple Network
Management Protocol, Electronic Mail, File Transfer Protocol, Hyper Text Transfer
Protocol, Cryptography and Compression Techniques.

Text Books:
1. Computer Networks, Andrew S. Tanenbaum, PHI / Pearson Education Inc.,
2. Computer Networking: A Top-Down Approach Featuring the Internet, James F.
Kurose, Keith W. Ross, Pearson Education Inc., New Delhi.
3. Introduction to Data Communications and Networking, Wayne Tomasi, Pearson
Education Inc., New Delhi.
4. Data Communication and Networking, Behrouz A. Forouzan, Tata McGraw-Hill.

Reference Books:
1. Data and Computer Communication, William Stallings, Pearson Education.
2. Computer and Communication Networks, Nader F. Mir, Pearson Education,
2007.
3. Data & Computer Communication, Black, PHI.
4. Communication Networks, Walrand, TMH.
5. Internetworking with TCP/IP, Douglas E. Comer, Prentice Hall India.
6. Computer Networks: Principles, Technologies and Protocols, Wiley India Pvt.
Ltd., New Delhi.
******

BCA-302
Name of the Course: DATABASE MANAGEMENT SYSTEM

Course Objectives:

● To teach fundamental concepts


● To teach principles of databases
● To teach database management operation

Course Outcome:

● After completion of this course students should be able to make use of DBMS
knowledge to deal with Backend SQL and PL-SQL Programming in their
academic and industry related application development of the project works.

Unit-I
Introduction of DBMS Overview

32
Introduction of File Organization and Indexed File Organization, File system Vs DBMS,
Architecture of DBMS, Data and information, Database, Describing & storing data (Data
models (relational, hierarchical, network)), Levels of abstraction, data independence,
What is Query? Need of Query in DBMS, Definition and SQL, Structure of DBMS,
People who deal in DBMS, Data Dictionary, Advantages and Limitation of DBMS.

Unit-II
Conceptual Design (E-R model)

Overview of DB design, ER data model ( entities, attributes, entity sets, relations,


relationship sets) , Additional constraints ( key constraints, participation constraints,
weak entities, aggregation / generalization,conceptual design using ER ( entities VS
attributes, Entity Vs relationship, binary Vs ternary, constraints beyond ER), Conceptual
design for small to large enterprises, Case studies.

Unit-III
Relational data model

Relations (concepts, definition), Conversion of ER to Relational model , integrity


constraints(key, referential integrity, general constraints), Relational algebra
Preliminaries, Relational algebra (selection, projection, set operations, renaming, joins,
division).

Unit-IV
Data dependency and Normalization

Introduction, Anomalies of un normalized database, Normalization, Data dependency,


Armstrong’s Axioms, Functional dependencies, Normalization forms ( 1NF, 2NF, 3NF,
BCNF), Introduction to Relational data model concepts, Codd’s 12 rules.

Unit-V
Database Language:
What is SQL?, SQL Programming Techniques: (SQL: DDL, DML, DCL, TCL) query
statements, Constraints and Triggers, Views and Indexes, Introduction to PL SQL.
Transaction, ACID Properties of Transactions, Concurrency control, Serializability and
Recoverability, Granularity, Database Security, Deadlock: Detection, Avoidance and
Recovery.

Text Books:
1. Fundamentals of Database Systems,RElmasri& S B. Navathe, Pearson
Education.
2. Database Systems Concepts, ASilberschatz, H F. Korth& S. Sudarshan,
McGraw-Hill.
3. Fundamentals of Database Management Systems, Mark L. Gillenson, Wiley India
Pvt.

33
4. Introduction To Database Systems,C.J.Date, Longman, Pearson Education

Reference Books:
1. Database systems , By KORTH
2. Database systems By Nawathe
3. Postgresql , O’Reilly publications
4. Database systems , by Raghuramakrishnan
*****

BCA-303
Programming in JAVA

Course Objectives:

1. Understand fundamentals of programming such as variables, conditional and


iterative execution, methods, etc.

2. Understand fundamentals of object-oriented programming in Java, including


defining classes, invoking methods, using class libraries, etc.

UNIT–I
An overview of Java
Difference between C++ and Java, Features of Java, JDK and JRE, Java SE and EE,
Life Cycle of a Java Program Overview of OOPs, Abstraction, Class, Object,
Encapsulation, Inheritance, Polymorphism, Variables, Constants, and Data Types,
Keywords, Constants, Primitive Data Types, Variable Scope, Wrappers, Auto-boxing,
and Un-boxing, Program Comments, Control Statements, Array, String, String Buffer
Class

UNIT–II
Classes and Objects
Creating Classes and objects, Memory allocation for objects, Constructor,
Implementation of Inheritance - Simple, Multilevel, Interfaces, Abstract Classes, method
overloading and method overriding, Java Build in class such as math, random & date
Collection Framework
Collection Interfaces – Collection, List, Set, StoredSet, Iterator, Collection Classes-
LinkedList, ArrayList, Vector, HashSet, TreeSet, HashTable. Working with map-
Hashmap, Treemap

UNIT–III
Input/Output Operation in Java: java.io Package,Streams and the new I/O
Capabilities ,Understanding Streams, The Classes for Input and Output, The Standard

34
Streams, Working with File Object, File I/O Basics, Reading and Writing to Files, Buffer
and Buffer Management
File and Exception Handling
java.io Package, Streams, ByteStream and CharacterStream classes, File I/O and File
operation- creating, reading and writing a file, Exception handling, try, catch, multiple
catch, nested try, throw, throws and finally, Creating user define exception

UNIT–IV
GUI using Swing
Introduction to swing component and container classes, Creating a Frame; Displaying
Information in a Component; Working with 2D Shapes; Using Color; Using Special
Fonts for Text; Displaying Images; Event Handling: Event Handling Basics, Event
Classes, Event Listeners and Adapter Classes; Swing and the MVC Design Pattern;
Layout Management; Basic Swing Components.
UNIT–V
Databases Using JDBC
Java.sql package, JDBC Driver Types, JDBC configuration, Mechanism for connecting
to backend database, Loading JDBC driver, MVC Paradigm, Annotations and
Reflection, CURD operation Using JDBC, SQL Queries.

Text Books:
1. The Complete Reference – Java, Herbert Schildt, Tata McGraw Hill.
2. Introduction to Programming with JAVA – A Problem Solving Approach , John
Dean, Raymond Dean, Tata McGraw Hill
3. Java Programming, Joyce Farrell, Cengage Learning.
4. Java Programming: A Practical Approach, C. Xavier, Tata McGraw Hill,

Reference Books:
1. Java Programming, PoornachandraSarang, McGraw Hill Professional.
2. Gateway to Java Programmer Sun Certification, Keyur shah, Tata McGraw Hill
3. Java Fundamentals – A Comprehensive Introduction, Herbert Schildt, Dale
Skrien, Tata McGraw Hill.

*****

BCA - 304
OPERATING SYSTEM

Course Objectives:

● Recognize the concepts and principles of operating systems.

Unit – I

35
Introduction to Operating System
What is an Operating System, Operating Systems Architecture, Operating Systems as
an Extended Machine & Resource Manager, Process Model, Process States and
Transitions, Types of System Calls, System Boot, Multi- Programming, Multi-Tasking,
Multi-Threading; Operating Systems Classification: Simple Batch Systems,
Multiprogrammed Batches systems, Time-Sharing Systems, Parallel & Distributed
Operating Systems.

Unit – II
Process Management
Processes: Process Scheduling, Cooperating Processes, Inter-process
Communication,Threads, CPU Scheduling: Basic Concepts, Scheduling Criteria,
Scheduling Algorithms, Multiple-Processor Scheduling, Process Synchronization:
Background, Critical-Section Problem, Synchronization Hardware, Semaphores,
Classical Problems of Synchronization, Critical Regions, Monitors,Deadlocks:Deadlock
Characterization, Methods for Handling Deadlocks, Deadlock Prevention,Deadlock
Avoidance, Recovery from Deadlock, Combined Approach to Deadlock Handling.

Unit –III
Memory Management
Main Memory Management: Background, Logical versus Physical Address space,
swapping, Contiguous allocation, Paging, Segmentation, Segmentation with Paging,
Virtual Memory: Demand Paging, Page Replacement, Page replacement Algorithms,
Performance of Demand Paging, Allocation of Frames, Thrashing, Demand
Segmentation.

Unit –IV
Device and Storage Management
File-System Interface, Mass-Storage Structure, Device Management: Techniques for
Device Management, Dedicated Devices, Shared Devices, Buffering, Multiple Paths,
Secondary-Storage Structure: Disk Structure, Disk Scheduling, Disk Management.

Unit –V
File-System Implementation
A Simple File System, Logical & Physical File System, File-System Interface: Access
Methods, Directory Structure, Protection, Free-Space Management, Directory
Implementation.

Text Books:
1. Operating System Concepts, Silbersachatzand Galvin, Pearson Education
2. Operating Systems, Madnick E., DonovanJ.,Tata McGraw Hill,
3. Operating Systems, A. S. Tannenbaum, PHI

36
Reference Books:
1. Operating Systems Internals and Design Principle, William Stallings, Prentice
Hall Publishers
2. Operating Systems- A Concept-Based Approach, Dhananjay M. Dhamdhere,
McGraw-Hill

******

BCAL-305
JAVA PROGRAMMING LAB

1. WAP to find the largest of n natural numbers.


2. WAP to find whether a given number is prime or not.
3. Write a menu driven program for following:
a. Display a Fibonacci series
b. Compute Factorial of a number
c. WAP to check whether a given number is odd or even.
d. WAP to check whether a given string is palindrome or not.
4. WAP to print the sum and product of digits of an Integer and reverse the Integer.
5. Write a program to create an array of 10 integers. Accept values from the user in that
array. Input another number from the user and find out how many numbers are equal to
the number passed, how many are greater and how many are less than the number
passed.
6. Write a program that will prompt the user for a list of 5 prices. Compute the average
of the prices and find out all the prices that are higher than the calculated average.
7. Write a program in java to input N numbers in an array and print out the Armstrong
numbers from the set.
8. Write java program for the following matrix operations:
a. Addition of two matrices
b. Summation of two matrices
c. Transpose of a matrix
d. Input the elements of matrices from the user.

37
9. Write a java program that computes the area of a circle, rectangle and a Cylinder
using function overloading.
10. Write a Java for the implementation of Multiple inheritance using interfaces to
calculate the area of a rectangle and triangle.
11. Write a java program to create a frame window in an Applet. Display your name,
address and qualification in the frame window.
12. Write a java program to draw a line between two coordinates in a window.
13. Write a java program to display the following graphics in an applet window.
a. Rectangles
b. Circles
c. Ellipses
d. Arcs
e. Polygons
14. Write a program that reads two integer numbers for the variables a and b. If any
other character except number (0-9) is entered then the error is caught by
NumberFormatException object. After that ex.getMessage() prints the information about
the error occurring causes.
15. Write a program for the following string operations:
a. Compare two strings
b. Concatenate two strings
c. Compute length of a string
16. Create a class called Fraction that can be used to represent the ratio of two
integers. Include appropriate constructors and methods. If the denominator becomes
zero, throw and handle an exception.
*****

BCAL-306
Database Language Lab

List of Exercises:

1. Assignment to create simple tables , with only the primary key constraint ( as a table
level constraint & as a field level constraint) (include all data types)

38
2. Assignment to create more than one table, with referential integrity constraint, PK
constraint.
3. Assignment to create one or more tables with following constraints, in addition to the
first two constraints (PK & FK)
a. Check constraint b. Unique constraint c. Not null constraint
4. Assignment to drop a table from the database, to alter the schema of a table in the
Database.
5. Assignment to insert / update / delete records using tables created in previous
Assignments. ( use simple forms of insert / update / delete statements)
6. Assignment to query the tables using simple form of select statement Select <field-
list> from table [where <condition> order by <field list>] Select <field-list, aggregate
functions > from table [where <condition> group by <> having <> order by <>]
7. Assignment to query table, using set operations (union, intersect)
8. Assignments to query tables using nested queries NB : 1. ‘Where’ clause condition
will be compound demonstrating joins between tables. 2. ‘Where’ clause condition can
be demonstrating joins can be written as nested query
9. Assignment to query tables , using nested queries ( use of ‘Except’, exists, not exists
clauses
10. Assignment related to small case studies ( Each case study will involve creating
tables with specified constraints, inserting records to it & writing queries for extracting
records from these tables).

11. Consider the following Entity

Employee (empno, empname, salary)

Create a RDB & write queries in 10g/11g for following.

1. Create a table of Employees.


2. Describe the structure of Database or schema.
3. Modify the data types of empname.
4. Insert 10 records in the employee table.
5. Display all details of the employees table.
6. Add designation domain in employee table.
7. Update designation as “Lecturer” to all records.
8. Rename of your current table name to one new table.

12. Consider the following Entity

student (rollno,sname, surname, city,age)

Create a RDB & write queries in Oracle 10g/11g/ 19 C (online) for following.

1. Create a table of Students.


2. Describe the structure of Student Database.
3. Insert 10 records in the Student table.
4. Display all details of the Student table.

39
5. Add gender attribute in Student table.
6. Update gender as M or F to all records.
7. Delete the second number record from the student table.
8. Delete all records from student tables.
9. Drop age column from student relation.

13. Hands on PL-SQL with Lab exercises: 3 Programs will be given at the lab.

****************Third Semester**************

BCA 4th Semester

BCA 401
SOFTWARE ENGINEERING

Unit-I
Software Engineering Fundamentals: Introduction, Software Perspective, Nature of
Software, Types of Software, Software Dependability, Software Characteristics, Product
Characteristics, Software Engineering Perspective, Achievements and Challenges,
Purpose of Software Engineering, A Generic View, Need and Significance, Criticism,
Principle of Software Engineering, Software Engineering Approach, Process
Development, Development Life Cycle, Project Management, Project Planning, Project
Organizing and Staffing, Project Directing, Project Controlling, Quality Management,
Configuration Management

Unit-II
Software Process: Introduction, Software Process Characteristics, Process
Improvement, Process Modeling, Process Modeling Objectives, Software Life Cycle,
Software Life Cycle Models: Waterfall Model, Build-And-Fix Model, The Spiral Model,
Incremental Model, Prototyping Model, RAD Model, Win-Win Spiral Model, Formal
System Development Model, V-Model, Agile Model

Unit-III
Software Requirement: Introduction, Specifying Software Requirement, Need and
Importance, Goals and Objectives, Requirement Analysis, Requirement Analysis
Process, Software Requirement Elicitation, Elicitation Techniques, SMART
Requirement, Requirement Specification Checklist, Types of Requirements,
Requirement Testing, Quality Software Requirement

40
Unit-IV
Software Design and Architecture: Introduction, Software Design Viewpoint, Design
Characteristics, Good Design, Design Principles, Ben Shneiderman’s Design Principle,
Deborah J. Mayhew’s Design Principle, IBM’s Design Principles for Tomorrow, Design
Checklist, Software Design Process, Preliminary Design, Detailed System Design,
Program Design, Software Design Methods, Software Design Methodologies,
Architectural Design, Detailed Design

Unit-V
Software Coding, Testing and Maintenance: Software Coding: Programming
Practice, Programming Style, Software Testing: Introduction, Software Testing
Approaches, Testing Fundamentals, Testing Types: Black Box and White Box Testing,
Black Box vs. White Box Testing, Testing Strategy, Unit Testing, Integration Testing,
Validation Testing, System Testing, Testing Models: V-Model, W-Model, B-Model, Test
Planning, Object Oriented Testing, Security Testing.
Software Maintenance: Software as an Evolutionary Entity, Need for Maintenance,
Categories of Maintenance, Cost of Maintenance, Software Re- Engineering, Reverse
Engineering

TEXT BOOK:
1. Pankaj Jalote, “Software Engineering”, Narosa Publications.
2. Rajib Mall, “Fundamentals of Software Engineering”, PHI.
3. R A Khan, A Agrawal, Software Engineering: A Practitioner's Approach, Narosa
Publication
4.Roger S. Pressman, “Software Engineering: A practitioner’s Approach”, McGraw Hill
International Edition.
5. Sommerville, “Software Engineering”, 7th edition, Pearson education.
6. K.K. Agarwal and Yogesh Singh, “Software Engineering”, New Age International
Publishers.

REFERENCE BOOK:
1. James F. Peters, Witold Pedrycz, “Software Engineering, an Engineering
approach”, John Wiley.
2. Shelly Cashman Rosenblatt, “Systems Analysis and Design”, Thomson
Publications.
3. Waman S Jawadekar, “Software Engineering principles and practice”, TMH

BCA- 403
MULTIMEDIA TECHNOLOGY

Course Objectives:

41
Learn the various desktop publishing design and photo editing features and
demonstrate proficiency in developing the multimedia presentations.

Unit - 1
Introduction
Objectives – History of Multimedia – Its market – Content copyright – Resources for
multimedia developers – Types of produces – Evaluation – Hardware Architecture – OS
and Software – Multimedia Architecture – Software library – Drivers.

Unit - 2
Text and Graphics
Elements of Text – Text Data files – Using text in Multimedia Application – Hypertext –
Elements of Graphics – Images and color – Graphics files and Application formats –
Creating images for multimedia use –Using graphics in Application.

Unit - 3
Digital Audio and Video
Characteristics of sound and Digital audio – Digital Audio systems – MIDI – Audio file
formats – Using Audio in Multimedia Applications – Audio for content – Background as
video – Characteristics of digital video – digital video data sizing 0 Video capture and
playback systems –computer animation.

Unit - 4
Product design and Authoring tools
Building blocks – classes of products – Content organizational strategies – story
boarding – Multimedia tool selection – Tool feature – categories of Authoring tools –
selecting the right authoring paradigm.

Unit - 5
Multimedia and Internet

Internet – HTML and web authoring – Multimedia considerations for Internet – Design
considerations for web pages.

TEXT BOOK :

1. Multimedia Technology and Applications – David Hillman-Galgotia Publications


pvt. Ltd, 1998.

REFERENCE BOOK :

1. Multimedia making it work by Tay Vaughan TMH, 1997

42
******

BCA- 403

.NET TECHNOLOGY AND C#

Unit-I
The .Net framework
Introduction, The Origin of .Net Technology, .NET Features, Common Language
Runtime (CLR), Common Type System (CTS), Common Language Specification (CLS),
Microsoft Intermediate Language (MSIL), Just-In –Time Compilation, Framework Base
Classes, OOPs Concepts.

Unit-II
C # Language
Introduction, Data Types, Identifiers, Variables, Constants, Literals, Array and Strings,
Object and Classes, Inheritance and Polymorphism, Operator Overloading,
Namespace, Interfaces, Delegates and Events, Type conversion, Control Statements
and Exception Handling

Unit-III
C# Using Libraries
Introduction of Framework, Collection Framework, Input-Output Streams, Reflection,
Managing Console I/O Operations, Windows Forms, Menu, Dialog, Form Inheritence,
Error Handling.

Unit-IV
ADO.NET Using C#
ADO.NET, Overview of database & Database Server, Introduction to SQL Server, SQL
Query, ADO.NET API, ODBC, OLEDB, Oracle Client, Connectivity with Oracle, MS-
Access, Excel and Mysql.

Unit-V
ASP.NET using C#
Web Application Architecture, Static Web Page, Page Life Cycle and Event Method,
State Management, URL Rewriting, Hidden form field, Page Directives, Validation,
Navigation control, Menu, SiteMapPath, TreeView, Login Control and AJAX, XML Web
Services - RESTful, SOAP, DISCO, and UDDI

Text Books:

43
1. Professional Visual Studio 2013, Bruce Johnson, Wrox Publication
2. Beginning ASP.NET 4.5.1: in C# and VB, ImarSpaanjaars, Wrox Publication
3. Professional C# 5.0 and .NET 4, C. Nagel, J Glynn, Morgan Skinner,
WroxPublication
4. Pro ASP.NET MVC 3 Framework, Adam Freeman; Steven Sanderson, Apress

Reference Books:
1. Pro ASP.NET 4 in C# 2010, Matthew MacDonald; Adam Freeman; Mario S,
Apress
2. Microsoft® ASP.NET 4 Step by Step, George Shepherd, Microsoft Press
******

BCA 404
Entrepreneurship Development

Objectives:

● To provide students with concepts, theories, techniques, models, and methods of


entrepreneurship.
● To promote entrepreneurial thinking and innovative thinking within the field of
software.
● Present the techniques and process of identifying new software business
opportunities. To study the approach taken in analyzing and managing risk.
● To introduce various types of entrepreneurship.

● To present the concepts, techniques and theories of marketing, accounting,


financial analysis, and planning as related to software.
COURSE OUTCOMES:
Upon completion of the Software Entrepreneurship course, students will be able to:

● Understand the concepts and techniques of entrepreneurship.


● Identify a vital software business opportunity.
● Prepare business, marketing, financial, and risk management plans for a
software firm.
● Think entrepreneurially.

● Secure funds for their software business


● Forecast the demand for their new technology or product.
● Think innovatively.

44
Unit-I
Software entrepreneurial process, Leadership characteristics and styles, Principles of
software business ownership, Entrepreneurial software marketing, Software business
communication and negotiation techniques

Unit-II
Feasibility analysis, Accounting Management for software business, Small software
business management, Funding approaches technique, Entrepreneurial financing

Unit-III
Software market opportunity identification, Software business law, Demand forecasting,
Software product discovery, Software business plan development, Software
entrepreneurship risk management, Rules and regulations

Unit-IV
Computational and entrepreneurial thinking, Software Innovation, Software product
development, Social entrepreneurship, Commercial entrepreneurship

Unit-V
Public entrepreneurship, corporate entrepreneurship, Software entrepreneurship case
studies and project

REFERENCE BOOK
1. A Handbook of Entrepreneurship, Edited by BS Rathore and Dr JS Saini; Aapga
Publications, Panchkula (Haryana)
2. Entrepreneurship Development by CB Gupta and P Srinivasan, Sultan Chand
and Sons, New Delhi
3. Handbook of Small Scale Industry by PM Bhandari.

BCAL -405
Multimedia LAB
List of Exercises:

Using suitable Photo Editing Software, perform the following exercises:

1. Design a Visiting Card containing at least one graphic and text information.
2. You are given a picture of a garden as background. Extract the image of a butterfly
from another picture and organize it on the background.

45
3. Given a picture, make three copies of this picture. On one of these pictures, adjust
the brightness and contrast, so that it gives an elegant look. On the second picture,
change it to grayscale and the third is the original one.
4. Convert the given image to a pencil sketch.
5. Mask the background image given through your name.
6. Import two pictures, one that of sea and another of clouds. Morph, Merge and
Overlap the images.

BCAL - 406
.NET PROGRAMMING LAB

List of Exercises:

1. Write a c# program to print fibonacci series without using recursion and using
recursion.
2. Write a c# program to check prime number.
3. Write a c# program to print factorial of a number.
4. Write a c# program to print sum of digits.
5. Write a c# program to swap two numbers without using third variable.
6. Write a c# program to convert decimal number to binary.
7. Write a c# program to print number triangle.
8. Write a c# program to convert number in characters.
9. C# program to demonstrate the class and object creation
10. 'this' reference in C#.Net with Example
11. Explain Cascaded Method call in C# with an Example
12. C# program for Default Arguments
13. How to call non-trailing arguments as default argument in C#?
14. How to pass object as argument into method in C#?
15. Method returning object in C#
16. C# program to demonstrate the example of a sealed class
17. C# program to demonstrate the example of unboxing
18. C# program to demonstrate the example of single inheritance
19. C# program to demonstrate the example of multilevel inheritance
20. C# program to demonstrate the example of hierarchical inheritance
21. C# program to demonstrate the example of multilevel inheritance with method
overriding
22. C# program to demonstrate the simple interface
23. C# program to demonstrate the structure within a structure
24. C# program to demonstrate method overloading based on the number of
arguments
25. C# program to demonstrate method overloading based on types of arguments
26. C# program to demonstrate method overloading based on the order of
arguments
27. C# program to demonstrate the constructor overloading

46
*****************Fourth Semester**************

BCA-501
ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEM

Unit – I
Overview of Artificial Intelligence

Definition & Importance of AI, Intelligent Agents: Agents & Environments, Emergence of
Intelligent Agents, PEAS Representation for an Agent, Types of Agents; Knowledge:
General Concepts: Introduction, Definition and Importance of Knowledge, Knowledge-
Based Systems and Representation of Knowledge, Knowledge Organization,
Knowledge Manipulation and Acquisition of Knowledge.

Unit –II
Problem Solving and Search Strategies
Solving Problems by Searching, Examples of Search Problems, Problem Formulation,
Uninformed Search Techniques- DFS, BFS, Hill Climbing, A*, Searching And-Or
Graphs, Constrained Satisfaction Problems, Adversarial Search: Games, Minimax
Algorithm, Alpha Beta pruning.

Unit –III
Knowledge Representation, Reasoning and Structured Knowledge
Syntax and Semantics for Propositional logic, Syntax and Semantics for FOPL,
Properties of Wffs, Unification, Forward and backward chaining, Conversion to Clausal
Form,

Unit –IV
Inference Rules, Resolution Principle, No deductive Inference Methods,
Representations Using Rules, Example of Structured Knowledge: Graphs, Semantic
Net, Associative Networks, Frames, Frame Structures, Conceptual Dependencies and
Scripts.

Unit –V
Expert Systems Architectures
Introduction, Rule Based System Architecture, Non-Production System Architecture,
Dealing with uncertainty, Knowledge Acquisition and Validation, Knowledge System
Building Tools.

47
Text Book:
1. MCSE-003: Artificial Intelligence and Knowledge Management by Manohar Lal
2. Principles of Artificial Intelligence, Nils J. Nilsson, Narosa Publication.
3. Introduction to Artificial Intelligence and Expert System, Dan W. Patterson,PHI.
4. Artificial Intelligence, Elaine Rich, Kevin Knight, Tata McGraw Hill.

Reference Books:

AI-Structures & Strategies for Complex Problem Solving, G Lugar, Pearson


Educations.

1. Artificial Intelligence: an Engineering approach, Robert J. Schalkolf, McGraw Hill.


2. Artificial Intelligence, Patrick H. Winston, 3rd edition, Pearson Educations.
3. Decision Support Systems and Intelligent Systems, Efraim Turban Jay
E.Aronson, PHI.
4. Artificial Intelligence–A System Approach, M.Tim Jones, Infinity Science Press
*****

BCA-502
PROGRAMMING IN PYTHON
Course Objective
This course is designed to introduce the student to the basics of programming using
Python. The course covers the topics essential for developing well documented modular
programs using different instructions and built-in data structures available in Python.
Course Learning Outcomes
On successful completion of the course, students will be able to:
1. Develop, document, and debug modular python programs to solve computational
problems.
2. Select a suitable programming construct and data structure for a situation.
3. Use built-in strings, lists, sets, tuples and dictionaries in applications.
4. Define classes and use them in applications.
5. Use files for I/O operations.

Unit-I
Introduction to Programming using Python: Structure of a Python Program, Functions,
Interpreter shell, Indentation. Identifiers and keywords, Literals, Strings, Basic operators
(Arithmetic operator, Relational operator, Logical or Boolean operator, Assignment
Operator, Bit wise operator).
Unit-II
Building blocks of Python: Standard libraries in Python, notion of class, object and
method.

48
Unit-III
Creating Python Programs: Input and Output Statements, Control statements:-
branching, looping, Exit function, break, continue and pass, mutable and immutable
structures. Testing and debugging a program
Unit-IV
Built-in data structures: Strings, lists, Sets, Tuples and Dictionary and associated
operations. Basic searching and sorting methods using iteration and recursion.
Unit-V
Visualization using 2D and 3D graphics: Visualization using graphical objects like Point,
Line, Histogram, Sine and Cosine Curve, 3D objects ,Exception Handling and File
Handling: Reading and writing text and structured files, Errors and Exceptions.
References :
1. T. Budd, Exploring Python, TMH, 1st Ed, 2011
2. Allen Downey, Jeffrey Elkner, Chris Meyers. How to think like a computer scientist
learning with Python / 1st Edition,2012

BCA-503
WEB DESIGN USING PHP

Objectives: The purpose of this course is to enable the students to learn the basics of
PHP, MySQL, and AJAX for creating dynamic websites.
Pre-requisites: Familiarity with web designing using HTML, CSS and JAVAScript.

Course outcomes: On completion of this course, the student will be able to:

● Write PHP scripts to handle HTML forms.


● Write regular expressions including modifiers, operators, and meta-characters.
● Write PHP programs that use various PHP library functions, and that manipulate
files and directories.
● Understood the concepts of using MySQL and AJAX with PHP

● Create dynamic Website/ Web based Applications, using PHP, MySQL database

UNIT I

49
Introduction
Introduction to PHP, installation, testing an installation, setting time zone, running PHP
with other web servers, embedding PHP within HTML, using comments. PHP Language
Basics: Variables, data types, type casting, operators and expressions, Operator Types,
operator precedence, constants. If statement, switch statement, ternary operator,
looping, while Statement, do-while loop, for statement, break statement, continue
statement, nested loops.

UNIT II
Array and String
Arrays, indexed arrays - associative, multidimensional arrays, count (), loop through an
indexed array, loop through an associative array using foreach loop, two dimensional
array, looping in two dimensional array, sort () function, rsort(), asort(), ksort(), arsort(),
krsort(), PHP Functions with Parameters, String creating and accessing, String
Searching & Replacing String, Formatting String, String Related Library function

UNIT III
Form Management with PHP
Capturing Form, Data Dealing with Multi-value field, and Generating File uploaded form,
redirecting a form after submission, working with file and Directories: Understanding
file& directory, Opening and closing, a file, Coping, renaming and deleting a file, working
with directories, Creating and deleting folder, File Uploading & Downloading.

UNIT IV
PHP and AJAX
AJAX Introduction, History of AJAX, How does AJAX work?, IE memory leaks, XML
HTTP Request - GET or POST, XML Http Request in IE Firefox, callback URL and URL
rewriters, Problems and Challenges, Benefits of AJAX, How and when to use AJAX,
Selecting the right tools and framework for AJAX.

UNIT V
Database Connectivity with MySQL
MySQL introduction, creating a database, creating a database table, populating a
MySQL database, performing basic database operation (DML): Insert, Delete, Update,
Select, Database APIs in PHP, connecting to MySQL with PHP, retrieving data from
MySQL, working with retrieved data, creating records with PHP, Updating and deleting
records with PHP

Text books:
1. Rasmus Lerdorf and Levin Tatroe, Programming PHP – ‘O‘Reilly
2. Professional LAMP Linux, Apache, MySQL and PHPs Web Development,
Wileydream Tech

50
3. Beginning Ajax with PHP from Noviceto Professional, Apress

Reference Books:
1. Vikram Vaswani, MySQL: The Complete Reference - Tata McGraw-Hill
2. Steve Holzner, PHP: The Complete Reference Tata McGraw-Hill
3. Learning PHP, MySQL, ‘O’ riley Press
4. PHP Ajax Cookbook, Packt Publishing, 2011.
5. W Jason Gilmore, “Beginning PHP and MySQL From Novice to Professional”

BCA-504
(DSE-1)
INTRODUCTION TO WIRELESS NETWORK

Objectives: The course addresses the fundamentals of wireless communications and


provides an overview of existing and emerging wireless communication Technology and
networks.
Pre-requisites: It is desirable that students are familiar with the following domains:
Digital and analog Communication, Signals & Systems, Electromagnetic Theory,
Probability & Random Processes.
Course outcomes: On completion of this course, the student will be able to:
● Understand the basics of propagation of radio signals

● Understand the basic concepts of basic Cellular System and the design
requirements
● Have an understanding of the basic principles behind radio resource
management techniques such as power control, channel allocation and handoffs.
● Gain insights into various mobile radio propagation models and how the diversity
can be exploited to improve performance
● Gain knowledge and awareness of the technologies for how to effectively share
spectrum through multiple access techniques i.e. TDMA, CDMA, FDMA

UNIT I
Introduction to Wireless Communication System
Evolution of mobile communications, Mobile Radio System around the world, Types of
Wireless communication System, Comparison of Common wireless system, Signals for
Conveying Information, Analog and Digital Data Transmission, Channel Capacity,
Transmission Media, Multiplexing Communication Networks LANs, MANs, and WANs,
Switching Techniques, Circuit Switching, Packet Switching, The Need for a Protocol
Architecture, The TCP/IP Protocol Architecture, The OSI Model

UNIT II

51
Cellular wireless Networks
Principles of Cellular Networks, First Generation Analog Second-Generation TDMA
Second-Generation CDMA, Third-Generation and & Forth Generation (4G) Wireless
Networks, Concept of Frequency reuse, Cell cluster concept, Channel Assignment
Strategies, Distance to frequency reuse ratio, Channel & co-channel interference,
Handoff Strategies, Improving Coverage & Capacity in Cellular System, cell splitting,
Cell sectorization, Repeaters, Micro cell zone concept, Channel antenna system design
considerations.

Unit-III
Multiple access in Wireless System
Frequency Division Multiple Access, Time Division Multiple Access, Code Division
Multiple Access, Space Division Multiple Access, Wavelength Division Multiple Access,
duplexing techniques- Time Division Duplexing, Frequency Division Duplexing.

UNIT IV
Wireless Systems
Global system for mobile communication, GSM architecture, GSM entities, call routing
in GSM, PLMN interface, GSM addresses and identifiers, network aspects in GSM,
GSM frequency allocation, authentication and security General packet radio service
(GPRS) - GPRS and packet data network, GPRS network architecture, GPRS network
operation, data services in GPRS, Applications of GPRS, Billing and charging in GPRS

UNIT V
Recent Trends
Introduction to Wi-Fi, WiMAX, ZigBee Networks, Software Defined Radio, UWB Radio,
Wireless Ad Hoc Network and Mobile Portability, Security issues and challenges in a
Wireless network.

Text books:
1. Wireless Communications & Networks, William Stallings, Pearson Education
2. Wireless Communication, Theodore S. Rappaport, Prentice hall
3. Ad Hoc Mobile Wireless network, C.K.Toh, Pearson.

Reference Books:
1. Wireless digital communication, Kamilo Feher, PHI
2. Mobile Communications Engineering, William C. Y. Lee, Mc Graw Hill
Publications
3. Mobile and personal Communication system and services by Rajpandya, IEEE
press (PHI).
4. Wireless Communications-T.L.Singh-TMH

52
BCA-504
(DSE-1)

Linux Programming
Objectives: The main objective of this course is to provide comprehensive overview
of the Linux operating system along with Shell commands and shell scripting

Pre-requisites: Familiarity with Operating system, Computer Network and C /C++


Programming.

Course outcomes: On completion of this course, the student will be able to:

● Understood the overview of open-source software.


● Understood the Linux operating system along with Shell commands and shell
scripting
● Understood the Implementation of Linux System programmes through GCC
compiler.
● Learnt the basic concept of Socket programming (TCP and UDP)

Syllabus Content
UNIT I Introduction to Linux: Linux history, Linux features, Linux distributions, Linux’s
relationship to Unix, Overview of Linux architecture, Installation, Startup scripts, system
processes (an overview), Linux Security, The Ext2 and Ext3 File systems: General
Characteristics of, The Ext3 File system, file permissions. User Management: Types of
users, the powers of Root, managing users (adding and deleting): using the command
line & GUI tools.

UNIT II File Handling: Creating files using > symbol, Redirection using >> symbol,
Redirecting Input using < symbol, Displaying Files using cat and more, Piping using |
symbol, Word Count, sorting a file Removing duplicates, Using Head and Tail command
in files, Files Handling: Creating directory, moving files to directories, copying files to
directories, changing directory, removing files and directories, FIND command, handling
ZIP and TAR files

UNIT III Processes in Linux: Process fundamentals, connecting processes with pipes,
tee, redirecting input output, manual help, Background processing, managing multiple
processes, changing process priority with nice, scheduling of processes at command,
cron, batch commands, kill, ps, who, sleep, Mathematical commands: bc, expr, factor,
units, grep and egrep, system calls for processes, Memory Management, library and
system calls for memory

53
UNIT IV Shell Programming: Available shells under Linux (viz. Bash, TCSH, Korn or
so on), different Shell features, editors, shell commands, shell scripts: shell variables,
environmental variables, purpose of shell scripts, writing, storing and executing scripts,
Filters- The grep family, advanced filters-sed and awk.

UNIT V Networking in LINUX: Socket Introduction, Elementary TCP Sockets (Socket


Function, Connect Function, Bind, Listen, Accept, Fork and Exec), TCP Client server
Example, Elementary UDP Sockets.

Text books:

1. Arnold Robbins, “Linux Programming by Examples The Fundamentals”, Pearson


Education
2. Cox K, “Red Hat Linux Administrator’s Guide”, PHI

Reference Books:

1. Ellen Siever, Stephen Figgins, Robert Love, Arnold Robbins, “Linux in a


Nutshell”, O'Reilly Media, 6th Ed., 2009.
2. Neil Matthew, Richard Stones, Alan Cox, “Beginning Linux Programming”, 3rd
Ed., 2004.
3. Robert Love, “Linux System Programming”, O'Reilly Media, 2nd Ed., 2007.
4. Yashwant Kanetkar, “Unix Shell Programming”, BPB, 7th Ed., 2007.

BCA-504
(DSE -1)
COMPUTER ARCHITECTURE AND PARALLEL COMPUTING

UNIT–I
Fundamental Concepts of Computer Architecture

Instruction set, Instruction Format, Addressing modes: Definition, Need, Type and
Implementation of Addressing Mode, Execution of Instruction, Instruction Cycle, Type of
Classification of Parallel Computing: Flynn's classifications, Handler's classifications
and other classifications with example; Parallelism Approaches: Data Parallelism,
Control Parallelism,Paradigms of parallel computing: Synchronous - vector/array, SIMD,
Systolic; Asynchronous -MIMD, reduction paradigm; Interconnection Networks: Static
and Dynamic Networks.

UNIT–II
Computational Models and Pipelining

54
PRAM models, Performance Metrices: speedups, efficiency, utilization, communication
overheads, single/multiple program performances, bench marks, Amdahl.s law,
Gustafson-Barsis.s law, Karf -Flatt metric, Isoefficiency metric.Pipelining: Basic and
Intermediate Concepts, Type of Pipeline, Pipeline Hazards, How Is Pipelining
Implemented?, What Makes Pipelining Hard to Implement?, Instruction-Level
Parallelism Concepts and Challenges, Static and Dynamic Scheduling, Numerical
Problems on Dynamic Scheduling.

UNIT–III
Instruction level parallelism

Classification of ILP Processor: Pipeline Processor, Superscalar Processor and VLIW


Processor, Comparisons and examples of all ILP Processor Architecture, Overcoming
Data Hazards with Dynamic Scheduling, Dynamic Scheduling, Limitation of ILP;
Hardware-Based Speculation, VLIW approach- H.W support for more ILP at compile
time- H.W vs S.W solutions,Thread-Level Parallelism.

UNIT–IV
Multiprocessors Architecture

Shared Memory Architecture , Classification of Shared Memory Systems, Bus-Based


Symmetric Multiprocessors, Basic Cache Coherency Methods, Snooping Protocols,
Directory Based Protocols, Symmetric Shared -Memory Architectures, Distributed
Shared Memory and Directory-Based Coherence, Shared Memory Programming,
Message Passing Architecture, Introduction to Message Passing, Routing in Message
Passing Networks, Switching Mechanisms in Message Passing, Message Passing
Versus Shared Memory Architectures.

UNIT–V
Multicomputer Architecture & Parallel Programming
Client/Server Systems, Clusters and Grid Computing, PVM Environment and
Application Structure, Message Passing Interface, Distributed Computing, Shared
memory programming, distributed memory programming, object oriented programming,
data parallel programming, functional and dataflow programming. Scheduling and
Parallelization: Scheduling parallel programs, Loop scheduling, Parallelization of
sequential programs. Parallel programming support environments.

Text Books:
1. Computer Architecture and parallel Processing, Kai Hwang and A. Briggs,
McGraw-Hill.
2. Advanced Computer Architectures, Dezso Sima, Terence Fountain, Peter
Kacsuk, Pearson Education.
3. Parallel Computing: Theory and Practice, M.J. Quinn,TMH
4. Introduction to Parallel Computing,T. G. Lewis and H. El-Rewini., Prentice Hall.

55
Reference Books
1. Parallel Computer Architecture, D. E. Culler, J.P. Singh, A. Gupta, Morgan
Kaufman
2. Parallel Programming: A Machine-Independent Approach, T. G. Lewis., IEEE
Computer Society Press, Los Alamitos.

BCA-505
PYTHON PROGRAMMING LAB

1. Using for loop, print a table of Celsius/Fahrenheit equivalences. Let c be the Celsius
temperatures ranging from 0 to 100, for each value of c, print the corresponding
Fahrenheit temperature.
2. Using a while loop, produce a table of sins, cosines and tangents. Make a variable x
in range from 0 to 10 in steps of 0.2. For each value of x, print the value of sin(x), cos(x)
and tan(x).
3. Write a program that reads an integer value and prints “leap year” or “not a leap
year”.
4. Write a program that takes a positive integer n and then produces n lines of output
shown asfollows.
For example enter a size: 5
*
**
***
****
*****
5. Write a function that takes an integer ‘n’ as input and calculates the value of
1 + 1/1! + 1/2! + 1/3! + … + 1/n
6. Write a function that takes an integer input and calculates the factorial of that number.
7. Write a function that takes a string input and checks if it’s a palindrome or not.
8. Write a list function to convert a string into a list, as in list (‘abc’) gives [a, b, c].
9. Write a program to generate Fibonacci series.
10. Write a program to check whether the input number is even or odd.

56
11. Write a program to compare three numbers and print the largest one.
12. Write a program to print factors of a given number.
13. Write a method to calculate GCD of two numbers.
14. Write a program to create Stack Class and implement all its methods. (Use Lists).
15. Write a program to create Queue Class and implement all its methods. (Use Lists)
16. Write a program to implement linear and binary search on lists.
17. Write a program to sort a list using insertion sort and bubble sort and selection sort.
18. Write a Python function that takes a number as an input from the user and
computes its factorial.
19. Write a Python function to return nth terms of Fibonacci sequence
20. Write a function that takes a number with two or more digits as an input and finds its
reverse and computes the sum of its digits.
21. Write a function that takes two numbers as input parameters and returns their least
common multiple and highest common factor.
22. Write a function that takes a number as an input and determine whether it is prime
or not.
BCA-506
WEB DEVELOPMENT LAB

Objectives: The purpose of this course is to enable the students to develop interactive
web-based applications using PHP and MySQL.
Pre-requisites: Familiarity with web designing using HTML, CSS and JAVAScript.
Course outcomes: On completion of this course, the student will be able to:

● Create small programs using basic PHP concepts.


● Apply In-Built and Create User defined functions in PHP programming.
● Design and develop a Web site using form controls for presenting web-based
content.
● Debug the Programmes by applying concepts and error handling techniques of
PHP.
● Create dynamic Website/ Web based Applications, using PHP, MySQL database

Lab Content

57
1. Write a PHP script to display Welcome message.
2. Write a PHP script to demonstrate arithmetic operators, comparison operator,
and logical operator.
3. Write PHP Script to print Fibonacci series.
4. Write PHP Script to generate results and display grades.
5. Write PHP Script to find the maximum number out of three given numbers.
6. Write PHP Script for addition of two 2x2 matrices.
7. Write PHP script to demonstrate Variable function.
8. Write PHP script to obtain 5! Using function
9. Write PHP script to demonstrate string function.
10. Write PHP script to demonstrate Date functions.
11. Write PHP script to demonstrate Math functions.
12. Write PHP script to demonstrate Array functions.
13. Write PHP script to demonstrate File functions.
14. Create a student registration form using text box, check box, radio button, select,
submit button. And display user inserted values in the new PHP page.
15. Create Website Registration Form using text box, check box, radio button, select,
submit button. And display user inserted values in the new PHP page.
16. Write two different PHP scripts to demonstrate passing variables through a URL.
17. Write two different PHP scripts to demonstrate passing variables with sessions.
18. Write PHP script to demonstrate passing variables with cookies.
19. Write a program to keep track of how many times a visitor has loaded the page.
20. Write an example of Error-handling using exceptions.
21. Write a PHP script to connect MySQL server from your website.
22. Write a program to read customer information like cust_no,cust_name,
Item_purchase, and mob_no, from the customer table and display all these
information in table format on the output screen.
23. Write a program to edit the name of a customer to “Bob” with cust_no =1, and to
delete records with cust_no=3.
24. Write a program to read employee information like emp_no, emp_name,
designation and salary from EMP table and display all this information using table
format.
25. Create a dynamic web site using PHP and MySQL

Text books:
1. Rasmus Lerdorf and Levin Tatroe, Programming PHP – ‘O‘Reilly
2. Professional LAMP Linux, Apache, MySQL and PHPs Web Development, Wiley
Tech
3. Beginning Ajax with PHP from Noviceto Professional, Apress

Reference Books:
1. Vikram Vaswani, MySQL: The Complete Reference - Tata McGraw-Hill
2. Steve Holzner, PHP: The Complete Reference Tata McGraw-Hill
3. Learning PHP, MySQL, ‘O’ riley Press
4. PHP Ajax Cookbook, Packt Publishing, 2011.

58
5. W Jason Gilmore, “Beginning PHP and MySQL From Novice to Professional”

*****************Fifth Semester****************

BCA -601
INFORMATION AND CYBER SECURITY

Course Objective: The goal of this course is for students to maintain an appropriate
level of awareness, knowledge and skill on the disciplines of technology, business and
law to allow them to minimize the occurrence and severity of information and cyber
security incidents.

Unit – I
Fundamentals of Information and Cyber Security
Principle of Information and Cyber Security, Threats, Vulnerabilities, and
Consequences, Security Attacks, Security Services, and Mechanisms, A model for
Internetwork Security, Cybersecurity models

Unit-II:
Information Security
Terminologies used in Cryptography; Substitution Techniques, Transposition
Techniques, Types of Encryption Systems, Symmetric Key Encryption -DES, AES,
Public Key Encryption-RSA,Key Distribution Approaches of Message Authentication, -
Diffie Hellman Key Exchange method, Cryptanalysis, Hashing, digital signatures.

Unit –III
Cyber Security
Cyber Security Vulnerabilities-Overview, Cyber Security Safeguards- Overview, Access
control, Audit, Authentication, Biometrics, Denial of Service Filters, Ethical Hacking,
Firewalls, Intrusion Detection Systems, Botnet.

Unit –IV
Essentials IT Security
Overview of Firewalls- Types of Firewalls, User Management, VPN Security Security
Protocols: - security at the Application Layer- PGP and S/MIME, Security at Transport
Layer- SSL and TLS, Security at Network Layer-IPSec, Spyware, Virus and Warms,
Trojan and backdoors, DOS and DDOS attack, SQL injection, Buffer Overflow.

Unit –V
IT Act and Policy

59
Introduction of Computer, Accessories & Operating Systems, Collection and Handling of
Digital Evidences, Detection of Origin of e-Mails (IP Address), Software for Protection of
Data & Security, Software used in Detection of Various Types of Cyber Crime. Overview
of IT Act, 2000, National Cyber Security Policy 2013.

Reference Books:
1. Network Security and Cryptography: Bernard Menezes, CENGAGE Learning.
2. Cryptography and network Security, Third edition, Stallings, PHI/Pearson
3. Principles of Information Security, Whitman, Cengage Learning.
4. IT and Indian Legal System, Kamlesh N. &MuraliD.Tiwari(Ed), Macmillan India
Ltd, New Delhi
5. Network Security Essentials (Applications and Standards), William Stallings
Pearson Education.
6. Computer Contract & IT Laws (in 2 Volumes), S.V.JogaRao, 2005 Prolific Law
Publications, New Delhi

BCA 602
CLOUD COMPUTING TOOLS AND TECHNIQUES

UNIT-I
Overview of Computing Paradigm: Grid Computing, Cluster Computing, Distributed
Computing, Utility Computing and Cloud Computing, Evaluation to Cloud Computing.
Introduction to Cloud Computing: Defining Cloud Computing. Cloud Types: The NIST
Model, Cloud Cube Model, Deployment Models and Service Models. Characteristics of
Cloud Computing: Paradigm Shift, Benefits of Cloud Computing, Disadvantages of
Cloud Computing, Assessing the Role of Open Standards.

UNIT-II
Cloud Computing Architecture: Comparison with Traditional Computing Architecture
(Client/Server), Cloud Computing Stack, Connecting to the Cloud. Introduction to
Service Models: Infrastructure as a Service (IaaS), Platform as a Service (PaaS),
Software as a Service (SaaS), Defining Identity as a Service (IDaaS) and Defining
Compliance as a Service (CaaS).

UNIT-III
Abstraction and Virtualization: Virtualization and Cloud Computing, Types of
Hardware Virtualization: Full, Partial and Para. Virtualization: Software Virtualization,
Memory Virtualization, Storage Virtualization, Data Virtualization and Network
Virtualization, Load Balancing, Abstraction Technique using Hypervisors, Machine
Imaging. Capacity Planning: Defining Baseline and Metrics, Network Capacity, Scaling.

UNIT-IV

60
Cloud Security: Cloud Security Fundamentals, Security Boundary, Security Service
Boundary and Security Mapping. Securing Data: Brokered Cloud Storage Access,
Storage Location and Tenancy, Encryption, Auditing and Compliance. Service
Oriented Architecture (SOA): Introduction to SOA, Defining SOA Communications,
Managing and Monitoring SOA, Relating SOA and Cloud Computing.

UNIT-V
Cloud Simulators- CloudSim and GreenCloud Introduction to Simulator, understanding
CloudSim simulator, CloudSim Architecture(User code, CloudSim, GridSim, SimJava)
Understanding Working platform for CloudSim, Introduction to GreenCloud,
Introduction to VMWare Simulator: Basics of VMWare, advantages of VMware
virtualization, using Vmware workstation, creating virtual machines-understanding
virtual machines, create a new virtual machine on local host, cloning virtual machines,
virtualize a physical machine, starting and stopping a virtual machine.

TEXT BOOK:
1. Cloud computing a practical approach - Anthony T.Velte , Toby J. Velte Robert
Elsenpeter, TATA McGraw- Hill , New Delhi – 2010
2. Cloud Computing: Web-Based Applications That Change the Way You Work and
Collaborate∙ Online - Michael Miller - Que 2008

REFERENCE BOOK
1. Barrie Sosinsky, “Cloud Computing Bible”, Wiley India, 2010.
2. Rajkumar Buyya, James Broberg, Andrzej M. Goscinski, “Cloud
Computing: Principles and Paradigms”, Wiley, 2011.
3. Nikos Antonopoulos, Lee Gillam, “Cloud Computing: Principles, Systems and
Applications”, Springer, 2012.
4. Ronald L. Krutz, Russell Dean Vines, “Cloud Security: A Comprehensive Guide
to Secure Cloud Computing”, Wiley-India, 2010.
5. Cloud computing for dummies- Judith Hurwitz , Robin Bloor , Marcia Kaufman
Fern Halper, Wiley Publishing, Inc, 2010

BCA-604
Discipline Specific Electives -2
DATA MINING

Unit – I
Introduction to Data Warehouse
Data Warehousing: Overview, Definition, Data Warehousing Components, Building a
Data Warehouse, Warehouse Database, Mapping the Data Warehouse to a
Multiprocessor Architecture, Difference between Database System and Data

61
Warehouse, Multidimensional Data Model, Data Cubes, Stars, SnowFlakes, Fact
Constellations, Concept hierarchy, Process Architecture, 3 Tier Architecture, Data
Marting. Warehouse Schema Design, Data Extraction, Cleanup & Transformation Tools,
Warehouse Metadata

Unit –II
Data Mining
Overview, Motivation, Definition & Functionalities, Data Processing, Form of Data
Preprocessing, Data Cleaning: Missing Values, Noisy Data,(Binning, Clustering,
Regression, Computer and Human inspection),Inconsistent Data, Data Integration and
Transformation. Data Reduction:-Data Cube Aggregation, Dimensionality reduction,
Data Compression, Numerosity Reduction, Discretization and Concept hierarchy
generation, Decision Tree.

Unit –III
Associations and Classification
Mining Frequent Patterns, Associations and Correlations: Basic Concepts, Efficient and
Scalable Frequent Itemset Mining Methods, Mining various kinds of Association Rules,
From Association Mining to Correlation Analysis, Constraint-Based Association Mining,
Classification and Prediction: Issues Regarding Classification and Prediction, Support
Vector Machines, Associative Classification, Lazy Learners, Other Classification
Methods, Prediction, Accuracy and Error measures, Evaluating the accuracy of a
Classifier or a Predictor, Ensemble Methods.

Unit –IV
Cluster Analysis and Sequence
Cluster Analysis Introduction :Types of Data in Cluster Analysis, A Categorization of
Major Clustering Methods, Partitioning Methods, Hierarchical Methods, Density-Based
Methods, Grid-Based Methods, Model-Based Clustering Methods, Constraint-Based
Cluster Analysis, Outlier Analysis. Mining Streams, Time Series and Sequence Data:
Mining Data Streams, Social Network Analysis and Multi-relational Data Mining.

Unit –V
Application Areas
Mining Object, Spatial, Multimedia, Text and Web Data: Multidimensional Analysis and
Descriptive Mining of Complex Data Objects, Spatial Data Mining, Multimedia Data
Mining, Text Mining, Mining the World Wide Web, Applications and Trends in Data
Mining: Data Mining Applications, Data Mining System Products and Research
Prototypes, Additional Themes on Data Mining and Social Impacts of Data Mining.

Text Books:

62
1. Data Mining–Concepts & Techniques, J. Han & M.Kamber, Morgan Kaufmann
Pub.
2. Introduction to Data Mining, P. N. Tan, M. Steinbach &Vipin Kumar, Pearson
education.
3. Data Mining Techniques – Arun K Pujari,2nd edition, Universities Press.
4. Data Warehousing in the Real World – Sam Aanhory& Dennis Murray Pearson
Edn.
Reference Books:
1. Insight into Data Mining,K.P.Soman,S.Diwakar,V.Ajay,PHI,2008.
2. Data Warehousing Fundamentals – Paulraj Ponnaiah Wiley student Edition
3. Data Mining: Introductory and Advanced Topics, Margaret H.Dunham, Pearson
Education 2004.

4. Principles of Data Mining, David Hand, Heikki Manila, Padhraic Symth, PHI
2004.
5. Building the Data Warehouse, W.H.Inmon, Wiley, 2003.

BCA-604
Discipline Specific Electives -2
DIGITAL IMAGE PROCESSING

UNIT –I
Digital Image Introduction
Motivation and Perspective, Scenes and Images, Application: Components of Image
Processing System. Digitization: Sampling, Quantization, Visual Detail in the Digital
Image, Digital Image, Elements of Digital Geometry.

UNIT-II
Image Processing Image Enhancement
Contrast Intensification, Smoothing, Image Averaging, Mean Filter, Ordered Statistic
Filter, Edge Preserving Smoothing Low Pass Filtering. Image Sharpening, High,
PassFiltering, Homomorphic Filtering.

UNIT-III
Image Compression Error Criterion
Lossy Compression methods, loss –less compression, Huffman coding, Run length
coding- Block coding, QuadTree coding- contour coding.

Segmentation: Region Extraction-Pixel based Approach, Feature Thresholding,


Optimum Threshold, Threshold Selection Methods, Multi-level Thresholding, Local
Thresholding, Region based Approached.

UNIT-IV
Image Analysis and Feature Extraction, Edge and Line Detection

63
Edge Detection, Derivation operators, Pattern Filling Approach, Morphologic Edge
Detection, Edge Linking and Edge Following, Edge elements Extraction by
Thresholding, Edge Detector Performance, Line Detection, Corner Detection.

UNIT-V
Representation
Topological Attributes, Geometrical Attributes, Some other Properties, Description, -
Boundary based Description-Region based Description-Relationship. Recognition:
Deterministic Methods, Clustering, Statistical Classification,Fuzzy Mathematical
Recognition,Syntactic Recognition, Grammar, Recognition Strategy, Tree search,
Graph Matching.

Books:

1. B. Chand and D. DuttaMajumder ,Digital Image Processing and analysis,


PHI(2001), ISBN81-203-1618-5
2. Milan Sonka, ”Image Processing Analysis and Machine Vision”, PWS Pub.2nd
EdISBN-81- 315-0300-3

References:

1. Adrian Low, Computer vision and Image Processing, McGraw Hill (1991)
2. Kenneth R. Castle man, Digital Image Processing , PHI

BCA-604
(Discipline Specific Electives -2)
ANDROID PROGRAMMING

Course Objectives:
1. Describe the platforms upon which the Android operating system will run.
2. Create a simple application that runs under the Android operating system.
3. Access and work with the Android file system.
4. Create an application that uses multimedia under the Android operating system.
5. Access and work with databases under the Android operating system.

Course Outcomes
After completion of this course students should make Android apps for Android
devices.Students will be able to write simple GUI applications, use built-in widgets and
components, work with the database to store data locally, and much more.

Unit- I
Introduction to Android Programming

64
What is Android First Android app How to run and debug applications (Emulator vs.
Real device) Android project structure, Dalvik Virtual Machine & .apk file extension,
Basic Building blocks - Activities, Services, Broadcast Receivers & Content providers UI
Components - Views & notifications • Components for communication -Intents & Intent
Filters • Android API levels (versions & version names)

Unit- II
Emulator-Android Virtual Device
Launching emulator, Editing emulator settings, Emulator shortcuts, Logcat usage,
Introduction to DDMS, Hello World App, Creating your first project The manifest file
Layout resource Running your app on Emulator, Second App:- (switching between
activities), Develop an app for demonstrating the communication between Intent

Unit- III
Basic UI Design
UI Design: Form widgets, Text Fields, Layouts, [dip, dp, sip, sp] versus px, Menu:Option
menu, Context menu, Sub menu, menu from xml, menu via code, Explicit and Implicit
Intents

Unit- IV
Style and Themes
styles.xml, drawable resources for shapes, gradients (selectors), style attribute in layout
file, Applying themes via code and manifest file

Unit- V
Content Providers
SQLite Programming, SQLiteOpenHelper, SQLiteDatabase, Cursor, Reading and
updating Contacts, Android Debug Bridge (adb) tool, Adapters and Widgets, Threads

Reference Books:
1. Android Programming: The Big Nerd Ranch Guide (Big Nerd Ranch Guides) By:
Bill Phillips & Brian Hardy
2. Android Design Patterns: Interaction design solutions for developers by Greg
Nudelman
3. Android User Interface Design: Turning Ideas and Sketches into Beautifully
Designed Apps By: Ian G. Clifton
4. Android Recipes: A Problem-Solution Approach By: Dave Smith & Jeff Friesen
*****

65
BCA-604
Discipline Specific Electives -2
FUNDAMENTAL OF CYBER FORENSICS AND IT SECURITY

Course Objectives:
● To introduce Concepts, Principles and Process of Cyber Forensics Investigation.

● To spread aware about the Cyber Crimes and Digitals Hygiene.

Prerequisite: Basic knowledge of Computer Fundamental, Internet Technology and


Web Programming is sufficient.

Course Outcome:
● After Learning this course students become familiar with the e-Cyber Crimes
related information with law enforcements.
Contents

Unit – I
Fundamentals of Cyber Forensics

What is Cyber? Concepts of Cyber Forensics, Need and Application, Role of Cyber
Forensics Experts, Cyber Analysis, The Standard Method of true Cyber Forensics,
Concept of Chain of custody, SoP of Cyber Forensics process, Incident Response and
Handling, Where to look evidence, determining what data to collect and analyze.

Unit-II
Cyber Crime and Need of Investigation

Definition, Crimes on Internet, Hacking, Virus, Worms, Cookies, Obscenity and


Pornography, Program Manipulation, Software Piracy and Intellectual Property, Concept
of Network Security and Cyber-Crime Investigation.Digital Audits, Open Sauces tools
and techniques for Cyber Forensic investigation, E-Mail header and Email Investigation
by using online mode.
Unit –III
Secure in Computing

What is Security, Introduction of Security Attacks, Services and Mechanisms, modes of


operations, Concept of Cryptography and Steganography, Introduction of Conventional
Cryptography, Hash Functions, IP- Security-SSL,TLS and SET, Introduction to Public
key cryptography principles.
Unit –IV
Essentials IT Security

66
IT –Security, Attacks, Threats, Vulnerability, Introduction to Hacking: Ethical Hacking,
Cyber Crimes, Types of Cybercrime,Hacking, Attack vectors, Cyberspace and Criminal
Behavior, Clarification of Terms,Traditional Problems Associated with Computer Crime.
Spyware, Virus and Warms, Trojan and backdoors, DOS and DDOS attack, SQL
injection, Buffer Overflow, Attack on wireless Networks.
Unit –V
Understanding of Cyber Forensics Approaches and IT Act, 2000: Law

Introduction of Computer, Accessories & Operating Systems, Collection and Handling of


Digital Evidences, Detection of Origin of e-Mails (IP Address) etc, Software for
Protection of Data & Security, Software used in Detection of Various Types of Cyber
Crime. Overview of IT Act, 2000, Regulation of Certifying authorities Offences. Cyber
Crimes and Digitals Hygiene.

Reference Books:

1. Albert J. M. & Guillossou F. (2012), Cyber Forensics: From Data to Digital


Evidence. New Jersey, Wiley Corporate F&A.
2. Casey E. (2009). Handbook of Digital Forensics and Investigation. USA,
Academic Press.
3. Marcella A. & Menendez D. (2007). Cyber Forensics: A Field Manual for
Collecting, Examining, and Preserving Evidence of Computer Crimes. NY, CRC
Press.
4. 4.Network Security Essentials (Applications and Standards), William Stallings
Pearson Education.
5. IT and Indian Legal System, Kamlesh N. &MuraliD.Tiwari(Ed), Macmillan India
Ltd, New Delhi
6. Computer Contract & IT Laws (in 2 Volumes), S.V.JogaRao, 2005 Prolific Law
Publications, New Delhi

******
BCA-604
Project Work/Dissertation

This option is to be offered only in the 6th Semester.

1. The students will be allowed to work on any project based on the concepts
studied in core/elective or skill based elective courses.
2. The group size should be maximum of three (03) students.
3. Each group will be assigned a teacher as a supervisor who will handle both their
theory as well lab classes.
4. A maximum of Four (04) projects would be assigned to one teacher.
5. Theory classes will cover project management techniques.

67
Chapter-2 : Master of Computer Applications

6. Introduction
This syllabus is the extension of the existing syllabus which is currently being taught
to M.C. A. of IGNTU for the last few years, but modified as per need of IT and R & D
Industry and to be implemented in academia from the academic year 2020 onwards.
However, there are few changes incorporated in the existing syllabus. It is believed
that the proposed changes qualitative change in the way M.C.A. is taught, which will
offer a more enriched learning experience. It aims to provide technology-oriented
students with the knowledge and ability to develop creative solutions, and better
understand the effects of future developments of computer systems and technology
on people and society. The syllabus is about developing skills to learn new
technology, grasping the concepts and issues behind its use and the use of
computers.
In the fastest growing era of Information Technology, almost every year new
technology, techniques, programming languages are coming on the market. To be
at par with vibrant changes, this MCA two years duration degree program
curriculum has been designed. This is a very challenging task to design curriculum
with absorbing rapid changes in technologies, and accordingly identify the core and
elective subjects. In designing this curriculum , we have accommodated a total 13
core courses and 3 elective courses covering vast domains of Information
technologies. This curriculum also has a strong laboratory and project orientation in
which the use of new tools is used. Most courses will have an associated laboratory
and it is expected that they will be equipped with the latest software tools.

7. Program Educational Objectives


● To train the Post graduates to acquire in depth knowledge of fundamental
concepts and programming skills for holistic development of the pupils.
● To prepare the graduates for productive careers in the software industry,
corporate sector, Government Organizations, and R & D.
● To prepare Post graduates to acquire excellent computing ability so that they
can analyze, design and create Solutions for real time problems.
● To apply the current tools and techniques to create systems for solving Industry
oriented problems.
● To prepare Post graduates to gain multidisciplinary knowledge through real time
case studies, projects and industry internships to meet the industry needs.

8. Program Outcomes

68
● Apply knowledge of computing fundamentals, computing specialization,
Programming Skills, and domain knowledge to conceptualize computing models.
● Problem Analysis Identify, formulate, research literature, and solve complex
computing problems reaching substantiated conclusions using fundamental
principles of computing sciences, and relevant domain disciplines.
● The Design/Development of Solutions Design and evaluate solutions for
complex computing problems, and design and evaluate systems, components,
or processes that meet specified needs with appropriate consideration for public
health and safety, cultural, societal, and environmental considerations.
● Innovation and Entrepreneurship identify a timely opportunity and use innovation
to pursue that opportunity to create value and wealth for the betterment of the
individual and society at large.

9. Structure of the Curriculum


The MCA programme is designed based on more emphasis on the application part
of computer science. The primary emphasis in MCA is on designing information
systems for various organizations. There is high demand for MCA candidates in the
development of application software, since the inception of the MCA courses in
India, this is observed in industries, banking, insurance sectors etc., having high
demand for MCA graduates. In the era of digital India, abundant domains come up
with a huge demand of MCA graduates. So, major thrust is on giving the students a
sound background in computing, business functioning and mathematics relevant to
cutting edge information technologies such as refers to technological devices,
techniques or achievements that employ the most current and high-level IT
developments. A strong laboratory component is added as part of the curriculum.
The laboratories, besides supplementing the theory course should also expose the
student to the use of the latest software tools. Most of the courses are designed
based on the Industry demands with all latest programming languages which are in
high demand across the globe.

9.1. MCA Course Pre-requisites and Period


Minimum Qualification for admission

MCA is a Two year (4 semester) course. Candidates having B.C.A/B.Sc./B.A.


degree with Mathematics (along with Mathematics as one of the subject at 10+2
level) from a recognized Indian or foreign university (as per the AIU foreign
equivalence list) having secured a minimum of 50% in aggregate in case of General

69
and OBC categories and 45% in case of candidates belonging to SC/ST/PWD
categories are eligible to apply.

9.2. Details of Curriculum


This new proposed curriculum has been designed for a 2 years MCA programme.

● Total 16 theory subjects and 06 laboratory subjects. Total 13 subjects are


considered as core subjects and 3 subjects as Discipline Specific Elective offered
in the fourth semester.

● One subject taken as a Major Project of 4 Credits.

● Around 81 % of the proposed curriculum has compulsory subjects and 19% having
elective subjects.

● 1 Credit = 1 hour of lecture per week

● 1 Credit course = 15 hours of lectures per semester

● 3 credits = 3 hours of instruction per week and Total 45 hours of lectures per
semester

● Each laboratory should be of at least 2 hour duration and weekly total 4 hours. So,
weekly total 8 hours laboratory work.

● All theory courses in the curriculum are of 4 credit courses. Total 4 lectures per
week.

● Each Theory course will be given a total 60 lectures.

Semester-Wise Course Structure of the MCA Curriculum

Semester -I

Subject Subject Name Credit Internal External Total


Code Marks Marks Marks
[Sessiona [End
l] Semester
Examination]

70
4 40 60
MCA-101 Digital Theory and Computronics 100

Programming in C and C++ 4 40 60


MCA-102 100

Data Structures and Algorithms 4 40 60


MCA-103 100

4 40 60
MCA-104 Advanced Operating System 100

C & C++ Programming Lab 2 50


MCAL-105 50

2 50
MCAL-106 Data Structure and Algorithms 50
Lab
Total 20 160 340 500

Semester -II
Subject Subject Name Credit Internal External Total
Code Marks Marks Marks
[Sessional] [End
Semester
Examination]
MCA-201 Formal Languages and 4 40 60 100
Automata Theory

MCA-202 Cloud Computing and Big Data 4 40 60 100


Analytics

MCA-203 Advanced Java Programming 4 40 60 100

MCA-204 Advanced Database and 4 40 60 100


RDBMS
MCAL-205 Java Programming Lab 2 50 50

MCAL-206 Database Lab 2 50 50

71
Total 2 16 340 500
0 0

Semester -III
Subject Subject Name Credit Internal External Total
Code Marks Marks Marks
[Sessional] [End
Semester
Examination]
MCA-301 Artificial Intelligence and Machine 4 40 60 100
Learning
MCA-302 Software Engineering and Project 4 40 60 100
Management

MCA-303 Python Programming 4 40 60 100

MCA-304 Advanced Computer Network 4 40 60 100

MCAL- Python Programming Lab 2 50 50


305
MCAL- Advanced Computer Network Lab 2 50 50
306
Total 2 16 340 500
0 0

Semester -IV
Subject Subject Name Credit Internal Externa Total
Code Marks l Marks Marks
[Sessional] [End
Semester
Examinatio
n]

MCA-401 Internet of Things and Data 4 40 60 100


Science

MCA- DSE -I 4 40 60 100


402(A/B/C)

72
MCA- DSE -II 4 40 60 100
403(A/B/C)

MCA- 4 40 60 100
404(A/B/C) DSE - III

MCAL-410 Major Project work 4 -- 100 100


Total 2 160 340 500
0
*DSE- Discipline Specific Elective

DSE –I
MCA-402(A) : Data Warehouse and Data Mining
MCA-402(B) : Computer Applications and Entrepreneurship
MCA-402(C) : Android Application Development

DSE –II
MCA- 403(A) : Digital Image Processing and Pattern Recognitions
MCA- 403(B): Advanced Cyber Forensics and IT Security
MCA- 403(C): System Software and Compiler

DSE-III
MCA-404(A): Information Security and Cryptography
MCA-404(B):Wireless Communications and Mobile Computing
MCA-404(C):Trends in Soft Computing

The list of core subjects are given below


1. Digital Theory and Computronics
2. Programming in C and C++
3. Data Structures and Algorithms
4. Advanced Operating System
5. Formal Languages and Automata Theory
6. Cloud Computing and Big Data Analytics
7. Advanced Java Programming
8. Advanced Database and RDBMS
9. Artificial Intelligence and Machine Learning
10. Software Engineering and Project Management
11. Python Programming
12. Advanced Computer Network

73
13. Internet of Things and Data Science

The syllabi for the electives are given in Section-7.


Besides these core courses, a student should choose 3 elective courses. Elective
subjects to some extent, will reflect faculty interest. A list of suggested electives is given
below:
Discipline Specific Elective Subjects

1. Data Mining and Data Warehousing


2. Computer Applications and Entrepreneurship
3. Android Application Development
4. Digital Image Processing and Pattern Recognitions
5. Advanced Cyber Forensics and IT Security
6. System Software and Compiler
7. Information Security and Cryptography
8. Wireless Communications and Mobile Computing
9. Trends in Soft Computing

The syllabi for the electives are given in Section-8.

10. AWARD OF GRADES: CHOICE-BASED CREDIT SYSTEM (CBCS)


Choice-Based Credit System (CBCS), a flexible system of learning wherein one has the
liberty to take up education and courses as per one’s choice and earn credits for various
courses shall be adopted. Since it had several unique features: Enhanced learning
opportunities, ability to match students’ scholastic needs and aspirations, inter-
institutional transferability of students (following the completion of a semester), part-
completion of an academic programme in the institution of enrolment and part-
completion in a specialized (and recognized) institution, improvement in educational
quality and excellence, flexibility for working students to complete the programme over
an extended period of time, standardization, comparability of educational programmes
across the country, etc.
10.1. EXAMINATION
● The performance of a student in a semester shall be evaluated through

continuous class assessment and end semester examination. The continuous


assessment shall be based on class tests, assignments/tutorials, quizzes/viva-
voce and attendance. The marks for continuous assessment (Sessional marks)

74
shall be awarded at the end of the semester. The end semester examination
shall be comprised of written papers, practical’s and viva-voce, Record of Lab
Work, Project Work, Design Reports or by means of any combination of these
methods.

● The distribution of marks for sessional, end semester theory papers, practical’s

and other examinations, seminar, project and industrial training shall be as


prescribed by the University in prescribed Course Structure. The practical, viva-
voce, projects and reports shall be examined/evaluated through internal and
external examiners as and when required, as per University guidelines.

● The marks obtained in a subject shall consist of marks allotted in end semester

theory paper and sessional work.


11. Syllabus of Core Subjects

Name of Course: Digital Theory and Computronics


Course Code: MCA-101 Course Credits: 4

Objectives:
● To introduce Digital Theory -Computronics and shows the correlation between
Boolean expressions, Logic Gates.
● To introduce the methods for simplifying Boolean expressions.
● To outline the formal procedures for the analysis and design of combinational
circuits and sequential circuits.
● To introduce the concept of memories and programmable logic devices.
● To illustrate the concept of synchronous and asynchronous
● Sequential circuits along with memory organization.

Pre-requisites: Familiarity Digital and Fundamental of Computers related concepts.

Course outcomes: On completion of this course, the student will be able to:

● Design an algorithmic solution for a given problem and translate it into a program.

● Use the appropriate control statements.

75
Unit-I :Theory of Number System, Boolean Algebra and Logic gates
Review of Science and Technology from Mechanical Era to Digital Era w.r.t. Digital
Computation, Journey of Digital Theory, What is number System?, Data and type of
number systems: Decimal number system (Base- 10), Binary number system (Base- 2),
Octal number system (Base-8), Hexadecimal number system (Base- 16), Binary
representation, Conversion between Decimal Numbers to Hexadecimal Numbers,
Decimal Numbers to Octal Numbers, Decimal Numbers to Binary Numbers, and Binary
to Decimal, Hexadecimal, Octal Number. Binary Coded Decimal Numbers, Signed and
Unsigned Numbers, ASCII Character Encoding, Codes and their conversions: BCD,
Octal, Hexadecimal, ASCII, EBDIC, Gray, Signed binary number representation with 1’s
and 2's complement methods, Binary arithmetic: Binary addition and subtraction,
subtraction using 1's and 2's complement method, Boolean algebra and theorems,
Boolean Equations, Boolean Laws. Logic Gates: AND,OR, NOT, NAND, NOR,
Exclusive-OR and Exclusive NOR Gates, Truth Table, Boolean Equation, Symbol of all
gates, Implementations of Logic Functions using gates, NAND-NOR implementations –
Multi level gate implementations, Multi output gate implementations.

Unit-II: Minimization Techniques and Karnaugh Maps


Minimization techniques: Boolean postulates and laws: De Morgan's Theorem Principle
of Duality, Boolean expression, Minimization of Boolean expressions, Minterm and
Maxterm, Representation of Boolean Functions: Sum-of-Products (SOP), Product-of
Sum (POS); Standard/Canonical/SoP form: Minterm, S Notation, Converting SOP Form
to Standard SOP Form; PoS form: Maxterm, P Notation, Converting POS Form to
standard POS Form, Converting Boolean Expression from SoP to PoS form, Boolean
expression and truth table, KARNAUGH MAP (K-MAP): Structure of K-map, Cell
Adjacency; Plotting of K-MAP: Plotting Standard SOP on K-rnap, Plotting Standard POS
on K-map, Plotting a Truth Table on K-map; Grouping of cells for simplification:
Grouping of Two adjacent Cells (Pair), Grouping of Four Adjacent Cells (Quad),
Grouping of Eight Adjacent Cells (Octet), Redundant Group; K-mapping & Minimization
Steps, Minimization of SoP and PoS expressions, Converting SoP to PoS and Vice-
Versa, DON'T CARE Conditions: K-map Simplification With Don't Care Conditions,
Conversion of Standard SOP to Standard POS with Don't Care Conditions, K-MAPS
for MULTI-OUTPUT Functions; Minimization Examples via K-map method for two
variables, three variables, four variables and five variables.

Unit- III: Design of Combinational Circuits-I


Type of Combinational Circuits, Design procedure of Combinational Circuits using K
Map, Design of Operational Combinational Circuits: Design of Half adder and Full
Adder, Design of Half subtractor and Full subtractor, Design of Parallel binary adder and
parallel binary Subtractor, Design of Fast Adder: Carry Look Ahead adder, Design of
serial Adder/Subtractor and BCD adder, Design a combinational. circuit to perform
76
BCD addition, Design of BCD to Seven Segment Display decoder digital circuit, Design
a logic circuit that has three inputs, A, B, and C, and whose output will be HIGH only
when a majority of the inputs are HIGH,

Unit- IV: Design of Combinational Circuits-II


Design of Special 'Purpose Combinational Circuits: Design of One bit and two bits
Magnitude Comparator: One/Two/Three bit binary. Comparator, Design a -4-bit
magnitude comparator with three outputs: A>B, A=B &A, Design of Code Conversion
Combinational Circuits: Design of 8421 Code to 2421 Code Converter, Design of BCD
Code to Excess 3 Code Converter, Design of 84-2-1 Code to Excess 3- Code
Converter, Design of 8421 Code to Gray Code Converter, Design of Gray Code to 8421
Code Converter, Design of BCD Code to Gray Code Converter. Design a 3-input
majority circuit, Parity Generator And Checker, Design of encoder and
decoder type Combinational Circuits: Multiplexer/Demultiplexer, decoder, encoder.

Unit- V: Sequential Circuits and Design


Latches, Flip-flops- SR, JK, D,T, and Master-Slave Characteristic, edge triggering and
Level Triggering, Realization of one flip flop using other flip flops, Asynchronous Ripple
or serial counter, Asynchronous Up/Down, counter- Synchronous counters,
Synchronous Up/Down counters, Programmable counters, Design of Synchronous
counters: state diagram, State table, State minimization, State assignment, Excitation
table and maps, Circuit implementation, Modulo-n counter, Registers: shift
registers, Universal shift registers, Shift register counters, Ring counter, Shift counters,
Sequence generators.

Text Books:
1. Jain Modern Digital Electronics, 2/e, TMH.
2. Leach & Malvino- Digital .Principles & Application, 5/e, TMK
3. Digital Logic Design- Morries Mano, PHI.

Reference Books:
1. Digital Integrated Electronics- H.Taub & D.Shilling, McGraw Hil.
2. Givone- Digital Principles & Design,TMH.
3. Digital Technology- Virendra Kumar, New Age.
4. Digital Circuit & Design- S. Aligahanan, S.Aribazhagan, Bikas Publishing House.
5. Fundamentals of Digital Electronics & Microprocessor- Anokh Singh, A.K. Chhabra,
S.Chand.

*****

77
Name of the Course: Programming in C and C++

Course Code: MCA 102 Course Credits: 4

Need of the subject and Justification: This course presents the Programming
techniques in C, explains data types, arrays, pointers, and files.

Objectives: To enable the students to learn about advanced features of C and C++
programming languages.

Pre-requisites: Familiarity with Data Structure Concept Real Programming Experience


with C Language.

Course outcomes: On completion of this course, the student will be able to:

● Design an algorithmic solution for a given problem and translate it into a program.

● Use the appropriate control statements to solve the given problem.

● Implement different Operations on arrays and use functions to solve the given
problem.
● Understand pointers, structures and unions

● Implementing ADT with C++ classes

● Implementing OOP concepts in C++


Contents

Unit-I: C Language Fundamentals

Algorithm and its characteristics, flowchart, Algorithm involving Decisions and Loops,
Developing Algorithms and Sketching Flowcharts for various problems, Pseudo code,
top down & bottom-up approaches of program design. Introduction and Features of “C”
language, Structure of “C” program, Identifiers and Keywords, Constants, Variables,
Scope of variables, Typedef, Type Conversion, Arithmetic Operators, Statements,
Expressions, Operators, Precedence of operators, Library Functions, Input/Output
Statements, Compound statements and block, Control structures, Decision making and
Branching, Decision making & looping.

Unit-II: Function and Structured Data Types in C

Need of “C” function, User Defined and Library Functions, Prototype of Function, Call by
Value, Nesting of Functions, Recursion, Array, Multidimensional Array declaration and

78
their applications, Array as Function Argument, String, Basic functions dedicated to
String Manipulation, Pointer variable and its importance, Pointer Arithmetic, passing
parameters by reference, pointer to pointer, Declaration and Defining Structure,
Accessing Structure members, nesting of structures, Array of Structures, Structure as
Function Argument, declaration of unions, pointer to structure & unions.

Unit-III: Principal of Object-Oriented Programming

Procedural Vs. Object-Oriented Programming, OOPS paradigms, basic concept of


OOP: abstraction, encapsulation, modularity, data hierarchy through inheritance,
polymorphism and typing, Applications and Benefits of OOP, Basic components of a C+
+ Program and program structure, Compiling and Executing C++ Program, Build and
execute a C program in C++, Write equivalent programs in C++.

Unit- IV: Object and Class

Basics of Object and Class in C++, Private and Public Members, Member Functions,
Data Access Methods, Constructors and Their Types, Destructors, Inline Functions,
Passing Objects as Function Parameters, Friend Functions, Overloading of Functions,
Friend class, Dynamic allocation operator new and delete.

Unit-V: OOP Concepts in C++

Types of polymorphism, Constructor overloading, Operator overloading, Template,


Types of inheritance, Protected derivation of class, resolving ambiguity, Pointer to
object, this pointer, Virtual class, virtual function, Implementing Polymorphism in C++,
Need of Exception handling, try, catch and throws keywords, defining namespace,
benefit of namespace.

Text Books:

1. E. Balaguruswamy, Programming in ANSI C 5th Edition McGraw-Hill


2. Yashvant P. Kanetkar, Let Us C‟, BPB Publications,
3. Programming: Principles and Practice Using C++ by Bjarne Stroustrup
4. R. Venugopal, Rajkumar, and T. Ravishanker “Mastering C++”, TMH, 1997.
Reference Books:

1. The C Programming Language by Brian W. Kernighan and Dennis M.


Ritchie.
2. Encyclopedia C by Robert A. Radcliffe, BPB Publications.
3. Object Oriented Programming in C++ by Robert Lafore, Techmedia
Publication.
4. Object Oriented Programming in C++, R Rajaram, New Age International
Publishers.

79
*****

Name of the Course : Data Structures and Algorithms


Course code: MCA-103 Course credit: 4

Need of the subject and justification:

The focus of this course is on solving computational problems that involve collections of
data. We will study a core set of data abstractions, data structures, and algorithms that
provide a foundation for writing efficient programs.

Objectives:

The objective of the course is to introduce the concept of Data Structure and
Algorithms, and how these concepts are useful in problem solving. After completion of
this course student will be able to -
1. Analyze the time and space efficiency of data structures and algorithms and
apply this analysis to select the best tools for solving particular problems.
2. Implementing various data structures viz. Stacks, Queues, Linked Lists, Trees
and Graphs
3. Understanding various searching & sorting techniques

Contents

Unit-I: Fundamental of Data Structures and Arrays

Introduction to basic data Structures, type of data structure.Arrays: Arrays definition,


representing arrays in memory, various operations (traversal, insertion, deletion),
Multidimensional arrays, Sequential allocation, Address calculation, sparse arrays.

Stack: Array and Link Representation Implementation of stack, Operations on Stacks:


Push & Pop, Application of stack: Conversion of Infix to Postfix Expressions, Evaluation
of postfix expression using stack, Towers of Hanoi, Recursion.

Unit- II: Queue and Link-List

Array and linked representation and implementation of queues, Operations on Queue:


Create Add, Delete, Full and Empty, Type of Queue: Circular queues, Double-Ended
queues and Priority Queues.

80
Introduction of Link-List: Representation and Implementation of Singly Linked Lists,
Traversing and Searching of Linked List, Overflow and Underflow, Insertion and deletion
to/from Linked Lists, Insertion and deletion Algorithms, Circular Link-list, Doubly Link-list
and Application.

Unit -III : Trees and Binary Search Trees

Define the tree, 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,
Huffman algorithm. Binary Search Trees: Binary Search Tree (BST), Insertion and
Deletion in BST, m-way Search Tree, AVL Trees, B-trees. Application of Tree

Unit-IV: Graphs, Searching and Sorting

Definition of Graph, Terminology & Representations, Graphs & Multi-graphs, Directed


Graphs, Memory Representations of Graphs, Traversal graph BFS and DFS,
Connected Component and Spanning Trees, Minimum Cost Spanning Trees: Kruskal &
Prims algorithm; Single-Source Shortest Path, All-Pairs Shortest Paths. Application of
Graph

Searching: Linear Search, Binary Search, Hashing-Introduction Hash function, Address


calculation techniques, collision resolution methods, Linear probing, Quadratic, Double
hashing, and rehashing.
Sorting: Internal Sorting: Bubble Sort, Insertion Sort, Selection Sort, Quick Sort, Heap
Sort, Radix Sort, External Sorting: Merge Sort.

Unit: V: Fundamental of Algorithms

Asymptotic Notations: Big Oh, Omegra, Theta notations, Time and space complexity of
algorithms, Characteristics of Algorithm, Design Statergeries: Introduction to Divide and
Conquer: Merge Sort, Quick Sort, Greedy Algorithms Knapsack Problem, Introduction
of Dynamic Programming with any examples. Backtracking:N-Queens Problem,
Introduction to P & NP problems, NP-hard problems.

Text Book:

1. A. S. Tenenbaum, “Data Structures using C & C++”, Prentice-Hall of India Pvt. Ltd.,
New Delhi.
2. S. Lipschutz, Data Structures Mc-Graw Hill International Editions, 1986.
3. Leiserson, Charles E, et al. Introduction To Algorithms. India, MIT Press, 2001.

Reference Books:

1. R. Kruse et. al, “Data Structures and Program Design in C”, Pearson Education
Asia, Delhi-2002

81
2. Horowitz and Sahani, “Fundamentals of data Structures”, Galgotia Publication
Pvt. Ltd.,New Delhi.
3. An Introduction to Data Structures with Application by Tremblay & Sorenson
(Tata Mc)
4. Classic Data Structure by D Samanata, Prentice-Hall of India.

*****

Name of the Course: Advanced Operating System

Course Code: MCA 104 Course Credits: 4

Need of the subject and Justification:

This course presents advanced concepts about operating systems, process


management, CPU scheduling, memory management, secondary storage
management. This course will Help students become familiar with the fundamental
concepts of operating systems, competent in recognizing operating systems features
and issues, provide students with sufficient understanding of operating system
design and how it impacts application systems design and performance.

Objective:

● To enable the students to learn the advanced functions, principles and concepts
of operating systems.

Pre-requisites: Familiarity with basics of Computer System Architecture and C/C++


Programming Skills

Course outcomes: On completion of this course, the student will be able to:

● develop skill to write new kernel routines or modify the existing ones for
performance tuning.
● write their own file systems by using the file management routines and port it in
the open system as an application process.
● gather different run time statistics of the operating systems and adapt the system
parameters for optimizing the performance.
● derive benefit of application execution from the network or distributed operating
over the stand-alone operating system.

82
Unit-I: Introduction

Operating System Objectives and Functions, The Evolution of Operating Systems,


Operating System Structure, Types of Operating System: Serial Processing, Batch
Processing, Multiprogramming, Time-Sharing, Real Time OS, Parallel & Distributed
Operating Systems

Unit-II : Processes Management Techniques

Process States, Process Description, Process Control Block, Process Scheduling,


Scheduling Criteria types of scheduling, scheduling algorithms, Multiprocessor
Scheduling, Real-Time Scheduling, Threads, Multithreading, Thread Functionality,
Principles of Concurrency, Mutual Exclusion: Hardware Support, Semaphores,
Monitors, Message Passing, Principles of Deadlock, Deadlock Prevention, Deadlock
Avoidance, Deadlock Detection, Deadlock Recovery Strategy, Dining Philosophers
Problem,

Unit–III Memory Management

Real storage, Contiguous Vs. Non-Contiguous storage allocation, Static and


Dynamic Partitioned memory allocation; Virtual memory, management of virtual
memory, Paging, Segmentations, Segmentation with Paging.

Unit–IV I/O Management:

I/O Devices, Organization of the I/O Function, I/O Buffering, Operating System
Design Issues, Disk Organization, disk space management, Disk Scheduling, File
storage Management: File Organization and Access, File Sharing, Directories, File
System Security

Unit–V Network and distributed operating systems

Network operating systems and applications, client server applications, advantages


of network operating over standalone PC operating systems, distributed operating
systems and distributed applications, advantages of distributed operating systems
over centralized operating systems, remote procedure call, distributed file system.
distributed clock synchronization, mutual exclusions.

Text books:

1. Silberschatz A, Galvin P: Operating system concepts, Wiley


2. Distributed Operating systems, A S Tanenbaum, Maarten Van Steen,
Pearson.
Reference Books:

83
1. Operating System Concepts, Silbersachatzand Galvin, Pearson Education
Pub.
2. Operating Systems, Madnick E., Donovan J., Tata McGraw Hill,
3. Operating Systems Internals and Design Principle, William Stallings, Prentice
Hall Publishers
*****

Name of the Course: C & C++ Programming Lab


Course Code: MCAL 105 Course Credits: 2

Need of the subject and Justification:

The programming for small devices like mobile phones, networking devices like routers, coding
for graphics and multimedia, requires efficient coding as well as object-oriented programming.
The C++ language fits perfectly as a tool for this type of work. How this important language is to
be mastered and how to use this knowledge in building efficient and flexible code is one of the
prime requirements today. The course presented here is targeting to enable the student to
master such skills.

Objective:

The purpose of this lab is enabling students to differentiate between procedural and object-
oriented programming, learn C/C++ as a language and various features of it and learn Object
Oriented principles and their application using C++.

Pre-requisites: Knowledge of C language and programming concepts including algorithm


building and logic.

Course outcomes: On completion of this course, the student will be able to:

● understand and appreciate the Object-Oriented approach of programming

● aware of the working and architectural model of C++.

● solve problems given to him/her using C/C++ with keeping balance between
efficiency and flexibility
Contents

List of Experiments:

1. Write a C program to find the largest of three integers.


2. Write a C program to check whether the given string is palindrome or not.

84
3. Write a C program to find whether the given integer is
(i) a prime number
(ii) an Armstrong number.
4. Write C program for Pascal triangle.
5. Write a C program to find the sum and average of n integers using a linear array.
6. Write a C program to perform addition, multiplication, transpose on matrices.
7. Write a C program to find a Fibonacci series of iterative methods using user-
defined functions.
8. Write a C program to find factorial of n by recursion using user-defined functions.
9. Write a C program to perform following operations by using user defined
functions:
(i) Concatenation
(ii) Reverse
(iii) String Matching
10. Write a C program to find sum of n terms of series: n –n*2/2! + n*3/3! - n*4/4!
+ ...............
11. Write a C program to interchange two values using
(i). Call by value.
(ii). Call by reference.
12. Write a C program to sort the list of integers using dynamic memory allocation.
13. Write a C program to display the mark sheet of a student using structure.
14. Write a C program that uses functions to insert a sub-string into a given main
string from a given position.
15. Write a program to print the elements of a structure using pointers.
16. Write a C program to perform the following:
(i) Concatenation of two strings
(ii) Compare two strings.
17. Write a C++ program that declares and initializes three variables of type double.
The program should display the sum, average, and product of the numbers in the
command window.
18. Write a C++ program to find the largest of three numbers using inline function.
19. Write a C++ program to implement function overloading in order to compute
power (m, n) where,
i) m is double and n is int
ii) m and n are int.
20. Given that an EMPLOYEE class contains following members: data members:
Employee number, Employee name, Basic, DA, IT, Net Salary and print data
members. Write a C++ program to read the data of N employees and compute

85
Net salary of each employee (DA=52% of Basic and Income Tax (IT) =30% of
the gross salary).
21. Write a C++ program to use scope resolution operator. Display the various
values of the same variables declared at different scope levels.
22. write a c ++ program to implement the dynamic memory allocation, destructor,
and copy constructor.
23. Write a program to find the sum of two numbers declared in a class and display
the numbers and sum using friend class.
24. Create a 'MATRIX' class of size m X n. Overload the ‘+’ operator to add two
MATRIX objects. Write a main function to implement it.
25. Write a C++ program to illustrate ‘this’ pointer and pointers to derived classes.
26. write a c ++ program to implement the inheritance and the run-time
polymorphism
27. 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 retrieve.
28. Write a C++ program to raise an exception if any attempt is made to refer to an
element whose index is beyond the array size.
29. Write a program to illustrate how to define and declare a class template for
reading two data items from the keyboard and to find their sum
30. Write a C++ program to define the function template for calculating the square of
given numbers with different data types.

Text/ Reference books:

1. Object Oriented programming with C++ by E. Balagurusamy, TMH


2. Complete Reference C++ by Herbert Schildt McGraw Hill Publications
3. Computer Science- A Structured approach using C++ by Forouzan ,Gilburg, THOMSON
Books
4. Object Oriented programming in C++ by Robert Lafore, Pearson Education

Software/Learning Websites:

1. https://www.cprogramming.com/tutorial/c++-tutorial.html
2. https://www.mycplus.com/
3. http://www.learncpp.com/
4. https://www.tutorialspoint.com/cplusplus/index.htm
5. http://www.cplusplus.com/
******

Course Title: Data Structure and Algorithms Lab


Course code: MCAL-106 Course credit: 2

86
Need of the subject and Justification: Data structure is a subject of primary
importance in the Computer Science area. Organizing or structuring data is
important for implementation of efficient algorithms and program development.
Efficient problem solving needs the application of appropriate data structure during
program development.Obtaining efficient algorithms is very important in modern
computer engineering as the world wants applications to be time and space and
energy efficient. This course enables students to understand, analyze and
implement efficient algorithms in C or C++ programming for various applications.

Objectives: Understanding of data structures and algorithms are essential and they
facilitate the understanding of the language. The practice and assimilation of data
structure techniques is essential for programming. The knowledge of “C/C++”
language and data structures will be reinforced by practical exercises during the
course of study. The course will help students to develop the capability of:
● Selecting a particular data structure.
● Write sorting programs using Divide-and-Conquer techniques.
● Implement to find the minimum cost spanning tree and shortest path using
different Greedy techniques.
● Construct DFS, BFS programs and topological ordering using Decrease-and-
Conquer technique.

Pre-requisites: Familiarity with Programming (C or C++), Data and file structure


Course outcomes: After learning the course the students should be able to:
● Analyze the asymptotic performance of algorithms.
● Derive and solve recurrences describing the performance of divide-and-
conquer algorithms.
● Find an optimal solution by applying various methods.
● Apply pattern matching algorithms to find particular patterns.
● Differentiate polynomial and nonpolynomial problems.
● Explain the major graph algorithms and their analyses.
Contents

List of Experiments

Complete the entire program with the help of ‘C’ language

1. Write a program to initialize the element into array and display.

2. Write a program to swap the first element with last, second to second last and so on
(reversing elements) by using an array.

3. Write a program to display the sum of all the elements of the array.

4. Write a program to search an element into an array by using Linear Search.

5. Write a program to search an element into an array by using Binary Search.

87
6. Write a program to implement bubble sort.

7. Write a program to implement selection sort.

8. Write a program to implement quick sort.

9. Write a program to implement insertion sort.

10. Write a program to search an element in the 2-dimensional array by using linear
search.

11. Write a program to merge two sorted arrays into one sorted array.

12. Write a program to perform the following operation in matrix.

a. Addition b. Subtraction c. Transpose

13. Write a program to find multiplication of two matrices.

14. Write a program to print following matrix

a. Upper diagonal b. Lower diagonal

15. Write a program to print sum of diagonal elements.

16. Write a program to implement stack using array to perform:

a. PUSH b. POP c. Display

17. Write a program to convert infix to postfix by using stack.

18. Write a program to implement factorial by using a recursion function.

19. Write a program to print reverses of a given number by using stack.

20. Write a program to implement a queue using an array.

a. Insert b. Delete c. Display

21. Write a program to implement a circular queue using an array.

22. Write a program to implement link list with following operations:

a. Insert b. Display c. Delete

23. Write a program to implement stack using a link list.

24. Write a program to implement a queue using a link list.

88
25. Write a program to implement a circular queue using a link list.

26. Write a program to concatenate two link lists.

27. Write a program to add two polynomials with the help of a link list.

28. Write a program to implement a circular queue using a link list.

29. Write a program to reverse the link list.

30. Write a program to sort elements of the link list.

*****

Name of the Course: Formal Language and Automata Theory


Course code: MCA-201 Course credits: 4

Need of the subject and justification:

Formal language and automata theory is an exciting, theoretical branch of computer


science. Through automata, computer scientists are able to understand how machines
compute functions and solve problems and more importantly, what it means for a
function to be defined as computable or for a question to be described as decidable.

Objectives:

The course deals with the concept of computability and mathematical models, such as
finite automata, grammars and Turing machines, and the relations between these
models.

● Students understand how finite automata, stacking machines, context-free


grammars and Turing machines work as well as solve problems.
● To understand the conversion of a non-deterministic finite automaton to a
deterministic one, conversion of a finite automaton into a regular expression and
vice versa, and minimization of a deterministic finite automaton;
● To understand the use of Chomsky's language hierarchy including the terms
regular language, context-free language, Turing decidable language and Turing
acceptable language.

Unit- I: Introduction and Finite Automata

89
Motivation for studying theory of computation, Alphabets, Strings, Languages, Finite
Automata (FA). Acceptance of strings, and languages, Deterministic Finite Automata
(DFA) and Non Deterministic Finite Automata (NFA), Transition diagrams and
Language recognizers. Conversions and Equivalence: Equivalence between NFA with
and without ε- transitions, NFA to DFA conversion. Equivalence between two FSMs.
Minimization of Automata; Finite Automata with output – Moore and Mealy machines.

Unit- II: Formal Language

Definitions of a gran mar, derivations and the language generated by a grammar,


Chomsky classification of language. Regular Expressions &amp; Regular Languages:
Definition of Regular Expressions, FA and Regular Expressions, Regular Languages,
Conversion from RE to FA and FA to RE. Pumping lemma for regular languages,
Pumping Lemma for regular set, Closure properties of regular languages

Unit- III: Grammar

Chomsky classification of grammar. Context Free Grammars and Languages (CFG),


Language generated by a CFG, Leftmost. Rightmost derivations, Derivation trees.
Ambiguity in grammars and languages, Simplification o: Context Free Grammars.
Chomsky normal form (CNF), Greibach normal form (GNF), Pumping Lemma for
Context Free Languages.

Unit- IV: Push Down Automata

Definition and languages acceptable by PDA. Instantaneous description, PDA


computation, Equivalence & conversion of CFG and PDA, Deterministic PDA.

Unit- V:Turing Theory

Turing Machines, definition. Model. Language acceptability by Turing Machine,


instantaneous description, design of TM, Variations of TM: Multi-tape TMs, Non
Deterministic TM, The Church-Turing thesis. Undesirability Definitions of recursively
enumerable and recursive languages, Universal Turing machine.

Text Books:
1. J. Hop croft, J. D. Ullman, R Introduction to Automata Theory. Languages and
Computation, 3rd Ed., Pearson
2. Daniel I.A. Cohen, &quot;Introduction, to Computer Theory &quot;, John Wiley &amp;
Sons.
3.N. Chandrasekhar &amp; K.L.P. Mishra. &quot;Theory of Computer Science.
Automata Languages

90
&amp; Computations &quot;, PHI publications.

Reference Books:
1. M. Sipser, Introduction to the Theory of Computation, 2nd Ed., Thomson, 2005.
2. M. Sipser, Theory of Computation, Brooks-Cole, 2008.

*****

Name of the Course: Cloud Computing and Big Data Analytics

Course Code: MCA-202 Course Credits: 4

Need of the subject and Justification:


Cloud computing and big data go hand in hand. While big data deals with storage of huge data
in the cloud system, cloud computing makes use of huge computation and storage resources.
Big data mainly involves collecting a large amount of unstructured data and converting it into
data useful to an organisation. Cloud computing allows the end users to process data easily in
real time. It allows an end user to store and access data over the internet, which got
synchronized with other web information.

Objectives:
With this course the student should be able to get an idea of
● Basics of cloud computing and different Cloud Computing services.

● Key concepts of virtualization.

● Overview of the field of big data.

● To explore the fundamental concepts of big data analytics


● To learn to analyze the big data using intelligent techniques

Pre-requisites: Data Structure & Algorithms, Computer Architecture, Operating System,


Database Management Systems, Networking.

Course outcomes:
At the end of the course, the students should be able to
● Understand Cloud Computing and different cloud computing services.

● Understand the importance of virtualization along with its types.

91
● Understand the issues in big data management and its associated applications
in scientific computing.
● Work with a big data platform and Understand the fundamentals of various
big data analysis techniques .
● Analyze the big data analytic techniques for useful business applications.

● Design efficient algorithms for mining the data from large volumes.

● Analyze the HADOOP and Map Reduce technologies associated with big
data analytics.
● Explore the applications of Big Data
Contents

Unit-I: Cloud Architecture and Model

Introduction:Cloud-definition, benefits, usage scenarios, History of Cloud Computing -


Cloud Architecture- Types of Clouds - issues in Clouds - Eucalyptus - Nimbus - Open
Nebula, Cloud Sim. Technologies for Network-Based System – System Models for
Distributed and Cloud Computing – NIST Cloud Computing Reference Architecture.
Cloud Models:- Characteristics– Cloud Services – Cloud models (IaaS, PaaS, SaaS) –
Public vs Private Cloud –Cloud Solutions - Cloud ecosystem – Service management –
Computing on demand.

Unit- II : Virtualization

Basics of Virtualization - Types of Virtualization - Implementation Levels of Virtualization


- Virtualization Structures - Tools and Mechanisms - Virtualization of CPU, Memory, I/O
Devices - Virtual Clusters and Resource management – Virtualization for Data-center
Automation. Cloud Infrastructure and IoT: Architectural Design of Compute and
Storage Clouds – Layered Cloud Architecture Development – Design Challenges - Inter
Cloud Resource Management– Resource Provisioning and Platform Deployment

Unit-III: Programming Model

Parallel and Distributed Programming Paradigms – MapReduce, Twister and Iterative


MapReduce – Hadoop Library from Apache – Mapping Applications - Programming
Support - Google App Engine, Amazon AWS - Cloud Software Environments -
Eucalyptus, Open Nebula, OpenStack, Aneka, CloudSim.

92
Security In The Cloud: Security Overview – Cloud Security Challenges and Risks –
Software-as-a-Service Security – Security Governance – Risk Management – Security
Monitoring – Security Architecture Design – DataSecurity – Application Security.

Unit -IV: Introduction to Big Data

Introduction to BigData Platform – Understanding Big Data:What is big data,why big


data,convergence of key trends, unstructured data, industry examples of big data,
Enabling technologies of big data, Big data platforms, Big data applications,Challenges
of Conventional Systems - Intelligent data analysis – Nature of Data - Analytic
Processes and Tools - Analysis vs Reporting - Modern Data Analytic Tools - Statistical
Concepts: Sampling Distributions - Re-Sampling - Statistical Inference - Prediction
Error.

Unit -V: Hadoop Environment : History of Hadoop- The Hadoop Distributed File
System – Components of HadoopAnalyzing the Data with Hadoop- Scaling Out-
Hadoop Streaming- Design of HDFS-Hadoop filesystems-Java interfaces to HDFS-
Basics-Developing a Map Reduce Application-How Map Reduce Works-Anatomy of a
Map Reduce Job run-Failures-Job Scheduling-Shuffle and Sort – Task execution - Map
Reduce Types and Formats- Map Reduce Features - Setting up a Hadoop Cluster -
Cluster specification - Cluster Setup and Installation – Hadoop Configuration-Security in
Hadoop.Frameworks and Applications: IBM for Big Data –Framework - Hive – Sharding
– NoSQL Databases –Mango DB-CasandraHbase – Impala – Analyzing big data with
twitter – Big data for Ecommerce – Big data for blogs.
Text books:
1. Zikopoulos, Paul, Chris Eaton, Understanding Big Data: Analytics for Enterprise
Class
2. John Rittinghouse & James Ransome, Cloud Computing, Implementation,
Management and Strategy, CRC Press, 2010.
3. Michael Miller, Cloud Computing: Web-Based Applications That Change the
Way You Work and Collaborate Que Publishing, August 2008.
4. Michael Minelli, Michelle Chambers, and Ambiga Dhiraj, "Big Data, Big Analytics:
Emerging Business Intelligence and Analytic Trends for Today's Businesses",
Wiley, 2013.
5. P. J. Sadalage and M. Fowler, "NoSQL Distilled: A Brief Guide to the Emerging
World of Polyglot Persistence", Addison-Wesley Professional, 2012.

Reference Books:
1. George Reese, “Cloud Application Architectures: Building Applications and
Infrastructure in theCloud” O'Reilly.
2. GautamShroff,Enterprise Cloud Computing,Cambridge University Press,2011.
3. James E. Smith, Ravi Nair, “Virtual Machines: Versatile Platforms for Systems
and
Processes”, Elsevier/Morgan Kaufmann, 2005

93
4. John W.Rittinghouse and James F.Ransome, “Cloud Computing:
Implementation,
Management, and Security”, CRC Press, 2010

5. Kai Hwang, Geoffrey C Fox, Jack G Dongarra, “Distributed and Cloud


Computing,
From ParallelProcessing to the Internet of Things”, Morgan Kaufmann
Publishers,
2012
6. Kumar Saurabh, “Cloud Computing – insights into New-Era Infrastructure”, Wiley
India,2011.
7. Katarina Stanoevska-Slabeva, Thomas Wozniak, Santi Ristol, “Grid and Cloud
Computing – ABusiness Perspective on Technology and Applications”, Springer
8. Nick Antonopoulos, Cloud computing,Springer Publications,2010
9. Chris Eaton, Dirk DeRoos, Tom Deutsch, George Lapis, Paul Zikopoulos,
10. “Understanding BigData: Analytics for Enterprise Class Hadoop and Streaming
Data”, McGrawHill Publishing, 2012

*****
Name of the Course: Advanced Java Programming
Course Code: MCA-202 Course Credits: 04

Need of the subject and Justification:


Objectives: This course is designed to give you exposure to basic concepts of object-
oriented technology. This course will help in learning to write programs in Java using an
object-oriented paradigm. Approach in this course is to take Java as a language that is
used as a primary tool in many different areas of programming work.
Pre-requisites: C/C++ basic concept may help to understand JAVA concepts

Course outcomes:

Content
Unit–I :Basics of Java and OOPs Concept
Life Cycle of a Java Program, JDK and JRE, Java SE and EE, CLASSPATH Setting,
Variables, Constants, Data Types, Operators, Control Statements, Program Structure,
Java Built in packages, Object-Oriented Programming: Class and Object, Data
Abstraction, Encapsulation, Inheritance, Method Overriding, Polymorphism, Method
Overloading, Constructors, super keyword, this, final, static Passing by value or by
Reference, Variable Scopes, Interfaces, Error Handling, Java Exceptions.

Unit–II: String handling, Collection Framework and File Handling

94
String Handling – String, Immutable String, Methods of String Class, toString method,
string tokenizer class, Collections framework- HashSet Class, ArrayList class,
LinkedList, Listiterator interface, Queue, Sequence, Map, Understanding Hashing,
Comparable and Comparator, File Handling: Byte Stream Classes, Character Stream
Classes, File Input /Output, File Operations, PrintStream and PrintWriter class,
StreamTokenizer class.

Unit–III: AWT, Swing and JDBC

AWT and event handling, AWT controls, Event class and Listener interface, adaptor
class, Basics of swing, swing controls, layout managers and Applet, Databases Using
JDBC: JDBC Driver & Architecture, DriverManager, Connection, Statement and
ResultSet interface, Connectivity with Oracle/MySQL/MS-Access, MVC Paradigm,
Writing Applets Using Swing.

Unit–IV:Basics of Servlet and JSP

Programming with Servlet, Servlet life cycle, How to Write a Servlet, How to Deploy a
Servlet, Installing Eclipse, How to create a Servlet with Eclipse, Browser-Servlet Data
Flow, HTTP Get and Post Requests, Cookies, URL Rewriting, Session Tracking using
cookies, hidden field, URL rewriting and Http Session, Servlet Input Stream and Servlet
Output Stream, Basics of JSP, Life cycle of JSP, scripting elements, Implicit objects,
directive elements, action elements, exception handling, MVC in JSP, Sending email
through JSP

Unit–V :J2EE

The need of Java enterprise edition, architecture, JavaEE key standards, EJB model,
EJB Type, Developing session beans, entity beans, message driven beans, importance
of EJB, EJB-web service, Introduction to java frameworks – Overview of Spring, Spring
Architecture, XML Configuration on Spring, Managing Database, Managing Transaction

Text Books
1. H. Schildt, 2002, Java 2 Complete Reference, 5th Edition, Tata McGraw Hill, New
Delhi
2. J. McGovern R. Adatia Y. Fain, 2003, J2EE 1.4 Bible, Wiley-dreamtech India Pvt.
Ltd. New Delhi

Reference Books:

95
1. Core Java, Volume II: Advanced Features by Cay Horstmann and Gary Cornell
Pearson Publication.
2. K. Moss, 1999, Java Servlets, Second edition, Tata McGraw Hill, New Delhi.
3. D. R.Callaway,1999, Inside Servlets, Addison Wesley, Boston.
4. Joseph O’Neil, 1998, Java Beans from the Ground Up, Tata McGraw Hill, New
Delhi.
5. Black Book “ Java server programming” J2EE, 1st ed., Dream Tech Publishers,
2008.
6. Kathy walrath , Complete Reference J2EE by James Keogh mcgraw publication
7. Professional Java Server Programming by Subrahmanyam Allamaraju, Cedric
Buest Wiley Publication

*****

Name of the Course: Advanced Database and RDBMS

Course Code: MCA 204 Course Credits: 4

Need of the subject and Justification:


This subject is associated with the designing of databases for business, scientific and
engineering application. By the end of this course the students will be able to write
simple and advanced PL/SQL code blocks, use advanced features such as ref cursors
and bulk fetches and database designing with normalization. Hence students will be
able to design relational databases which will help them in designing phase of projects
in forthcoming semesters.
Objectives:
● The purpose of this course is to enable the students to know about the
fundamental concepts necessary for designing, using and implementing
database systems and applications.
● It also covers advanced techniques and technologies.
Pre-requisites: Familiarity with elementary math (sets, relations) and Basic Data
Structure Concepts

Course outcomes: On completion of this course, the student will be able to:
● Understand and Develop Entity Relationship (ER) and Relational Models for a
given application.
● Develop and manipulate relational databases using Structured Query Language
and relational languages.
● Develop a normalized database for a given application by incorporating various
constraints like integrity and value constraints.
● Understand and apply transaction processing concepts and convert schedules to
serializable schedules.

96
● Illustrate different concurrency control mechanisms to preserve data consistency
in a multiuser environment.
Contents
Unit I: Basic concepts of DBMS
An overview of database management system, database system Vs file system,
Database system concepts and architecture, data models schema and instances,
data independence and database language and interfaces, Data definitions
language, DML, Overall Database Structure. Data Modeling using the Entity
Relationship Model: ER model concepts, notation for ER diagram, mapping
constraints, keys, Concepts of Super Key, candidate key, primary key,
Generalization, aggregation, reduction of an ER diagrams to tables, extended ER
model, relationships of higher degree

Unit II: Relational Data Model and Language


Relational data model concepts, integrity constraints: entity integrity, referential
integrity, Keys constraints, Domain constraints, relational algebra, relational
calculus, tuple and domain calculus, Introduction to SQL: Characteristics of SQL,
Advantage of SQL.SQL data types and literals, Types of SQL commands, SQL
operators and their procedure, Tables, views and indexes. Queries and
subqueries, Aggregate functions. Insert, update and delete operations, Joins,
Unions, Intersection, Minus, Cursors in SQL.

Unit III: Relational Database Design


Features of good relational designs, need for Normalization, Functional
dependencies, Join dependencies, Normal forms, First, Second, Third Normal
Form. Boyce Codd Normal form, lossless join Decomposition, Multivalued
Dependencies, 4NF, 5NF, Domain key normal form, alternative approaches to
database design. Denormalization

Unit IV: Database Transaction Processing


Introduction to Transaction Processing, Transaction & System Concepts,
Transaction State, ACID Properties of Transaction, Testing of Serializability,
Serializability of schedules, conflict & view serializable schedule, recoverability,
Kinds of failures, Failure controlling methods, Database errors, Recovery from
transaction failures, log-based recovery, checkpoints, deadlock handling.

Unit V: Concurrency Control Techniques


Concurrency control, locking Techniques for concurrency control, Time stamping
protocols for concurrency control, validation-based protocol, multiple
granularities, Multi version schemes, Recovery with concurrent transaction.

Text books:

1. Abraham Silberchatz, Henry K.Forth, Sudharshan, “Database System


Concepts” , McGraw Hill, 2010.

97
2. Ramez Elmasri and Shamkant B. Navathe, “Fundamentals of Database
Systems”, Addison Wesley, New Delhi
3. Elmsari and Navathe, “Fundamentals of Database Systems”, Pearson Education

Reference Books:

1. C.J. Date,”An Introduction to Database Systems” , Addison Wesley, New Delhi


2. Ivan Bayross,” SQL, PL/SQL- The Program Language of ORACLE”, BPB
Publication.
3. Bipin C. Desai, “An introduction to Database Systems”, Galgotia Publication.

******
Name of the Course: Java Programming Lab

Course Code: MCAL-205 Course Credits: 2

Need of the subject and Justification:. [To be Write]


Objectives:
Pre-requisites:
Pedagogical Teaching and Learning Methods:

Course outcomes:

List of Exercises:

1. WAP to find the largest of n natural numbers.

2. WAP to find whether a given number is prime or not.

3. Write a menu driven program for following:

a. Display a Fibonacci series

b. Compute Factorial of a number

c. WAP to check whether a given number is odd or even.

d. WAP to check whether a given string is palindrome or not.

4. WAP to print the sum and product of digits of an Integer and reverse the Integer.

5. Write a program to create an array of 10 integers. Accept values from the user in that
array. Input another number from the user and find out how many numbers are equal to

98
the number passed, how many are greater and how many are less than the number
passed.

6. Write a program that will prompt the user for a list of 5 prices. Compute the average
of the prices and find out all the prices that are higher than the calculated average.

7. Write a program in java to input N numbers in an array and print out the Armstrong
numbers from the set.

8. Write java program for the following matrix operations:

a. Addition of two matrices

b. Summation of two matrices

c. Transpose of a matrix

d. Input the elements of matrices from the user.

9. Write a java program that computes the area of a circle, rectangle and a Cylinder
using function overloading.

10. Write a Java for the implementation of Multiple inheritance using interfaces to
calculate the area of a rectangle and triangle.

11. Write a java program to create a frame window in an Applet. Display your name,
address and qualification in the frame window.

12. Write a java program to draw a line between two coordinates in a window.

13. Write a java program to display the following graphics in an applet window.

a. Rectangles

b. Circles

c. Ellipses

d. Arcs

e. Polygons

14. Write a program that reads two integer numbers for the variables a and b. If any
other character except number (0-9) is entered then the error is caught by
NumberFormatException object. After that ex.getMessage() prints the information about
the error occurring causes.

15. Write a program for the following string operations:

99
a. Compare two strings

b. Concatenate two strings

c. Compute length of a string

16. Create a class called Fraction that can be used to represent the ratio of two integers.
Include appropriate constructors and methods. If the denominator becomes zero, throw
and handle an exception.

******

Name of the Course: Database Lab


Course Code: MCAL 206 Course Credits: 2

Need of the subject and Justification:


This Lab is associated with the designing of databases for business, scientific and
engineering application. Students will be able to design relational databases which
will help them in designing phase of projects in forthcoming semesters.
Objectives:
The purpose of this course is to design a relational database system with
appropriate functionality to process the data and with constraints to maintain data
integrity and avoid data redundancy.
Pre-requisites: Familiarity with SQL.
Pedagogical Teaching and Learning Methods:

100
● At the start of course, the course delivery pattern, prerequisite of the subject will
be discussed
● Lectures will be conducted with the aid of multimedia projector, white board,
online mode etc.
● Experiments shall be performed in the laboratory related to course .

Course outcomes: On completion of this course, the student will be able to:
● Execute various advanced SQL queries related to Transaction Processing &
Locking using concept of Concurrency control.
● Demonstrate use of Database Object.
● Perform PL/SQL programming using concept of Cursor Management, Error
Handling, Package and Triggers.
● Understand Functional Dependency and Functional Decomposition.
● Apply various Normalization techniques.

List of Experiments

1. Write the queries for Data Definition and Data Manipulation language.
2. Write SQL queries using Logical operators (=, <,>, etc.).
3. Write SQL queries using SQL operators (Between…. AND, IN(List), Like,
ISNULL and with negating expressions).
4. Write SQL query using character, number, date and group functions.
5. Write SQL queries for Relational Algebra (UNION, INTERSECT, and MINUS,
etc.).
6. Write SQL queries for extracting data from more than one table (Equi-Join,
Non-Equi Join, Outer Join)
7. Write SQL queries for subqueries, nested queries.
8. Implement PL/SQL programmes using control structures
9. Implement PL/SQL programmes using Cursors
10. Implement PL/SQL programmes using exception handling
11. Implement user defined procedures and functions using PL/SQL blocks
12. Perform various operations on packages.
13. Implement various triggers
14. Practice on functional dependencies
15. Practice on Normalization – using any database performs various normal
forms.
16. Practice on transaction processing
17. Create FORMS and REPORTS.

101
*Students are advised to use Oracle-10i version or other latest version for above
listed experiments. However, depending upon the availability of software, students
may use Power Builder /SQL SERVER. Students may also work on a Mini Project to
understand the important concepts of Database.

Text/ Reference Books:

1. Database Systems Concepts, design and Applications, S. K. Singh, Pearson


Education, New Delhi
2. Sql/ Pl/SQL, Bayross, Ivan BPB

Software/Learning Websites:
1. Software: Oracle 10e/11g express edition
2. DBMS:http://nptel.iitm.ac.in/video.php?subjectId=106106093
3. SQL Plus Tutorial: http://holowczak.com/oracle-sqlplus-tutorial/
4. DatabaseTutorials:http://www.roseindia.net/programming-tutorial/
DatabaseTutorials

*****

Name of the Course: Artificial Intelligence and Machine Learning


Course Code: MCA 301 Course Credits: 04

Pre-requisites: Basic computer science background.

Objectives:

● First course introducing various techniques of AI / ML.

● Acquire advanced Data Analysis skills.

● Stay Industry relevant and grow in your career.

● Apply AI/ML methods, techniques and tools immediately.

102
Need of the subject and Justification: The subject is an intensive application
oriented, real-world scenario based program in AI & ML.

Course outcomes:

● Understand the basic concepts of AI and ML technology.

● To alien with Industry 4.0 and acquire the Skills to develop automated industry
related applications.

Unit–I : Introduction of Artificial Intelligence


Intelligence, Introduction and Intelligent system, What is AI, Introduction to AI,
Introduction to Agents & Environments, Definition of Knowledge and Knowledge
Representation, Examples of Search Problems, State Space Search, Uninformed
Search Techniques- DFS, BFS, Informed search methods – heuristic Functions, Hill
Climbing, Simulated Annealing, Best-First Search, A* AO*Algorithm, Constraint
Satisfaction Problems,Coloring, Crypt Arithmetic, Adversarial Search: Games, Minimax
Algorithm, Alpha Beta pruning.

Unit–II: Symbolic and Structured Representations of Knowledge

Knowledge Representation: Procedural Vs Declarative Knowledge, Representations &


Approaches to Knowledge Representation, Forward Vs Backward Reasoning. Symbolic
Logic: Propositional Logic, First Order Predicate Logic.
Introduction to Handling Uncertainty
Reasoning under Uncertainty Certainty Factors and Rule-Based Systems, Dempster-
Shafer Theory, Fuzzy Logic: Crisp Sets ,Fuzzy Sets, Fuzzy Logic Control, Fuzzy
Inferences & Fuzzy Systems.
Unit–III: Convolution Neural Networks
Introduction to Convolution Neural Networks, Image classification. Text classification,
Image classification and hyper-parameter tuning, Emerging NN architectures. Recurrent
Neural Networks, Building recurrent NN, Deep Learning, Auto-encoders and
unsupervised learning, semi-supervised learning. Regularization - Dropout and Batch
normalization.

Unit–IV: Introduction to Machine Learning


Foundations for ML,ML Techniques overview , Validation Techniques (Cross-
Validations) , Feature Reduction/Dimensionality reduction , Principal components
analysis (Eigen values, Eigen vectors, Orthogonality) Clustering , Distance measures,
ML- methods (Distance, Density, Hierarchical) Iterative distance-based clustering;
Dealing with continuous, categorical values in K-Means, Constructing a hierarchical

103
cluster,K-Medoids, k-Mode and density-based clustering, Measures of quality of
clustering.

Unit–V: Tools and Methods of Machine Learning


Review Basic Tasks, Methods and underlying problems of Machine Learning. Learning
methods such as role, analogical, EBG, EBL, Chunking. Learning by examples -
Version space algorithm and ID3 algorithm. Important systems and applications to the
problem of knowledge acquisition for expert systems.

Text Book:
1. Artificial Intelligence, Elaine Rich, Kevin Knight, Tata McGraw Hill.
2. Introduction to Artificial Intelligence and Expert System, Dan W. Patterson,PHI.
w.e.f.academicsession2013-14
3. Artificial Intelligence: A Modern Approach, Stuart Russell and Peter Norvig, Pearson
Publication.
4. Principles of Artificial Intelligence, Nils J. Nilsson, Narosa Publication.
5. Artificial Intelligence, George F Luger, Pearson Education Publications.
6. Multi Agent systems- a modern approach to Distributed Artificial intelligence,
Weiss.G,
MIT Press.
7. Artificial Intelligence And Intelligent Systems, N.P. Padhy, Oxford Publications.
Reference Books:
1. AI-Structures and Strategies for Complex Problem Solving, George Lugar, Pearson
Educations.
2. Artificial Intelligence: an Engineering approach, Robert J. Schalkolf, McGraw Hill.
3. Artificial Intelligence, Patrick H. Winston, 3rd edition, Pearson Educations.
4. Decision Support Systems and Intelligent Systems, Efraim Turban Jay E.Aronson,
PHI.
5. Artificial Intelligence – A System Approach, M. Tim Jones, Infinity Science Press -
Firewall Media.
6. Artificial Intelligence – Strategies, Applications, and Models through Search,
Christopher Thornton and Benedict du Boulay, New Age International Publications.
7.Michalsky, T. Mitchell, J.Carbonell, Machine Learning Springer-Verlag.
8. T. M. Mitchell. Machine Learning, McGraw-Hill, 1997.
******
Name of Course: Software Engineering and Project Management
Course Code: MCA-302 Course Credits: 04

Need of the subject and justification:

This course provides an understanding of both theoretical and methodological


issues involved in modern software engineering project management and
focuses strongly on practical techniques. As a student of creative computing, you

104
need to develop the transferable skills in logical analysis, communication and
project management necessary for working within team-based, professional
environments.
Objectives:

● This course introduces the concepts and methods required for the construction of
large software intensive systems. It aims to set these techniques in an appropriate
engineering and management context.
● The course aims to develop a broad understanding of the discipline of software
engineering and management of software systems.
● This will provide the detailed knowledge regarding the concepts of OOPS, various
testing techniques, cost analysis and software reliability and quality assurance.

Pre-requisites : None

Course outcomes:

● Basic knowledge of various processes to be followed in the software development


life-cycle models.
● Implement communication, modeling, construction and deployment practices in
software development.
● Analyze & design the software models using the concepts of OOPs.

● Explain the concepts of various software testing methods & be able to apply
appropriate testing approaches for development of software.
● Explain the project management & different types of metrics used in software
development and risk and cost benefit analysis is implemented.
● Apply the concepts of project management & planning.

● Apply the concept of software reliability and quality assurance is implemented.

Syllabus
Unit-I : Fundamental Concept on Software Engineering
Introduction to Software Engineering, Software Crisis, Software Problems, Software-
Engineering Problems, Characteristics of Software, Software Evaluation, Software
Applications, Requirement Analysis and Requirement Specification Documents,
Software Design, Coding, Testing, Maintenance, Validation and Verification, Monitoring
and Control, Metrics and Measurement. Software Development Models: Waterfall

105
Model, Prototyping Model, Interactive Enhancement Model, Spiral Model, Iterative
Models, Evolutionary Process Models, Agile Model, Role of Management in Software
Development and Problem Analysis.

Unit –II: Software Design


Design Process, Design Concepts, Design Model, Problem Partitioning and Hierarchy,
Abstraction, Modularity, Top-Down and Bottom-Up Approach, Structure Design
Methodology, Functional Approach, Object Oriented Approach, Coupling and Cohesion,
Cyclomatic Complexity. Object Oriented Design: OO Analysis and OO Design,
Classes and Objects, Relationship among Objects, Inheritance and Polymorphism,
Design Concepts, Design Notation and Specification, Design Methodology, Dynamic
Modeling, Functional Modeling.

Unit-III: Software Coding


Programming Practice, Top Down and Bottom Up Structured Programming, Information
Hiding, Programming Style, Internal Documentation, Size measures, Complexity
Metrics, Style Metrics, Software Testing: Testing Fundamentals, Purpose of Software
Testing, Top Down and Bottom Up Approaches, Functional Testing, Structural Testing,
Test Cases and Test Criteria, Software Testing Strategies, Unit Testing, Integration
Testing and System Testing, Alpha and Beta Testing, Security Testing, Test Plan, Test
Case Specification, Test Case Execution and Analysis.

Unit-IV : Software Maintenance and Software Project Management


Software as an Evolutionary Entity, Need for Maintenance, Categories of Maintenance,
Cost of Maintenance, Software Re- Engineering, Reverse Engineering, Software
Configuration Management Activities, Change Control Process, Software Version
Control, Estimation of various Parameters, Project Scheduling Staffing and Personal
Planning, Constructive Cost Models (COCOMO), Resource Allocation Models, Software
Risk Analysis and Management. Introduction to software Project Management, Project
managers roles and responsibilities, Project planning.

Unit-V: Software Reliability and Quality Assurance


Software Reliability, Reliability Issues, Musa's Model, Reliability Measurement Process,
Software Quality, Software Quality Assurance, Software Quality Standards, SEI
Capability Maturity Model, Comparison between ISO and CMM Model, CASE
(Computer Aided Software Engineering): Various CASE Tools and their Usefulness,
Role of Data Dictionary in CASE Tools, Architecture of CASE Environment, CASE
support in Software life cycle.

Text Books:

1. Pankaj Jalote, “Software Engineering”, Narosa Publications.


2. Rajib Mall, “Fundamental of Software Engineering”, PHI.
3.Roger S. Pressman, “Software Engineering: A practitioner’s Approach”, 7 Edition,
McGraw Hill International Edition.
4. Sommerville, “Software Engineering”, 7th edition, Pearson education.

106
5. K.K. Agarwal and Yogesh Singh, “Software Engineering”, New Age International
Publishers.
Reference Books:
6. James F. Peters, Witold Pedrycz, “Software Engineering, an Engineering approach”,
John Wiley.
7. Shely Cashman Rosenblatt, “Systems Analysis and Design”, Thomson Publications.
8. Waman S Jawadekar, “Software Engineering principles and practice”, TMH.

*****

Name of the Course: Python Programming

Course Code: MCA-303 Course Credits: 4

Need of the subject and Justification:

Python is easier to read, write, and learn than most other major programming languages
and high demand in industries.

Objectives:

● Upon Completion of the course students able to learn

● Learn basic programming constructs –data types, decision structures, control


structures in python.
● Know how to use libraries for string manipulation and File handling.

● Learn to use in-built data structures in python – Lists, Tuples, Dictionary.

● Learn the fundamental principles of Object-Oriented Programming.

● Solve problems through application of OO concepts and using Files/database

Pre-requisites: NIL

Pedagogical Teaching and Learning Methods:

Lecture-4 Tutorial-0 Practical-0

Multiple teaching approaches: lecture, discussion, group work, demonstrations,


presentations.

107
Course outcomes:

● Understand the knowledge of Basic Programming with Python.

● Familiarize with python string and File handling techniques.

● Understand and use data structures like Lists, tuples and dictionaries.

● Understand concept of object oriented programming and data structure


techniques
● Understanding integration of databases with python and developing applications
using databases.

Syllabus

Unit-I: Introduction to Python3

Features of Python3, Environmental setup, --Installation of Pycharm and tools required


for running python --Python 3.x vs Python2.x--Basic Types— Variable types and
operators : Assigning values to variables --Multiple Assignments.

Unit-II: Data, Expressions, Statements

Python interpreter and interactive mode; values and types: int, float, boolean, string, and
list; variables, expressions, statements, tuple assignment, precedence of operators,
comments; modules and functions, function definition and use, flow of execution,
parameters and arguments; Illustrative programs: exchange the values of two variables,
circulate the values of n variables, distance between two points.

Unit -III : Control Flow, Functions

Conditionals: Boolean values and operators, conditional (if), alternative (if-else), chained
conditional (if-elif-else); Iteration: state, while, for, break, continue, pass; Fruitful
functions: return values, parameters, local and global scope, function composition,
recursion; Strings: string slices, immutability, string functions and methods, string
module; Lists as arrays. Illustrative programs: square root, gcd, exponentiation, sum an
array of numbers, linear search, binary search.

Unit -IV :Lists, Tuples and Directories

Lists: list operations, list slices, list methods, list loop, mutability, aliasing, cloning lists,
list parameters; Tuples: tuple assignment, tuple as return value; Dictionaries: operations

108
and methods; advanced list processing – list comprehension; Illustrative programs:
selection sort, insertion sort, mergesort, histogram.

Unit-V : Files, Modules, Packages

Files and exceptions: text files, reading and writing files, format operator; command line
arguments, errors and exceptions, handling exceptions, modules, packages; Illustrative
programs: word count, copy file.

Text Books:

1. Tony Gaddis, Starting Out with Python, 3rd edition, Pearson


2. Draper, Brian. Python Programming: A Complete Guide for Beginners to Master
and Become an Expert in Python Programming Language. United
Kingdom, CreateSpace Independent Publishing Platform, 2016.
3. Lutz, Mark. Learning Python: Powerful Object-Oriented Programming. United
States, O'Reilly Media, 2013.

Reference Books:

1. S, Gowrishankar, and A, Veena. Introduction to Python Programming. United


Kingdom, CRC Press, 2018.
2. Summerfield, Mark. Programming In Python 3: A Complete Introduction To The
Python Language. India, Pearson Education, 2009.

*****

Name of the Course: Advanced Computer Network

Course Code: MCA-304 Course Credits: 4

Need of the subject and Justification:


This course is designed to introduce advanced topics in computer networks. The
protocols of different layers as well as experimentation will be covered. The
coursework gives students the opportunity to get hands-on experience with
advanced networking.

Objectives:
● To develop an understanding of advanced computer networking basics.

● To develop an understanding of different components of computer networks,


various protocols, modern technologies and their applications.

109
● The course builds its by considering a mixed approach involving theory and
practical.
● The course introduces advanced topics that are basis blocks of networking
and covers fundamentals that are used to develop few of the advanced
technologies, including routing protocols, wireless & mobile networks etc.
● To provide information so that at the end of the course, the students find
themselves comfortable in taking either of the direction- industrial job or
further research in networking.

Pre-requisites:
Undergraduate introductory class of Basic computer networks is required. Students
should have basic knowledge of statistics and probability, and system programming.
Course outcomes:
● Compare and contrast the OSI and TCP/IP models.

● Given a network problem, create appropriate topology and draw wiring


diagrams.
● Configure servers, switches and routers.

● Analyze wireless LAN technologies

● Understand internet traffic and plan traffic engineering including IP over ATM
and multimedia over internet.
● Create subnets, super nets, and routing tables.

Contents
Unit-I: Overview of Data Communication
Introduction to Computer Networks: Reference Models, Data Communication
Services & Network Examples, Internet Based Applications, Data Communications:
Transmission Media, Wireless Transmission, Multiplexing, Switching.
Communication System, Baseband and Carrier Communication, transmission
modes, Baud rate, bit rate, SNR, Introduction to analog modulation techniques (AM,
FM, PM, QAM) Digital Continuous Wave Modulation techniques: Modems, ASK,
FSK, PSK, BPSK, QPSK, Multiplexing techniques: TDM, FDM, WDM, CDMA, Pulse
amplitude modulation techniques, sampling theorem, PCM, PCM Encoder and
Decoder, DPCM, ADPCM, Delta modulation, Line Coding techniques: Bipolar,
Unipolar, RZ, NRZ, Manchester, AMI, B8ZS, Block coding techniques.

Unit-II: Computer Networks and Physical layer

Protocols and Standards, OSI Model, TCP/IP Model, Network topology (Physical &
logical), Transmission media: Guided transmission media - Twisted Pair, Coaxial

110
and Fiber-optic cables, Wireless transmission: Electromagnetic spectrum, Radio and
Micro Waves, Infrared, Lightwave, Spread Spectrum Systems, Digital hierarchy–
Signaling system, DS lines, T lines, E lines, Cable modem Switching techniques:
Circuit switching, Packet switching and message switching, Network Devices:
Repeaters, Connectors, Transceivers and Media Converters, Bridges, Routers,
Gateways, Multiprotocol Routers, Brouters, Hubs, Switches, Modems, Wireless
Access Points.

Unit–III : Data Link Layer

Data link layer design issues: Framing, Error and flow control, Stop-and-Wait
protocol, Sliding Window protocol, HDLC, Channel allocation: Static and Dynamic
allocation, Multiple Access Protocols: ALOHA, CSMA, Collision-free and limited-
contention protocols, Virtual LANs, LANs & MANs: IEEE Standards for LANs &
MANs-IEEE Standards 802.2, 802.3, 802.4, 802.5, 802.6, High Speed LANs,
SONET, Video on Demand, Bluetooth, Cellular telephony, Broadband wireless
technologies, LAN standards, Ethernet, Wireless LAN, Virtual LAN, Frame relay,
Transmission in ISDN, Broad Band ISDN , ATM Networks, Data link layer in Internet.

Unit–IV : Upper Layers

Design Issues in Networks: Routing Algorithms, Congestion Control Algorithms,


Network Layer in the Internet, IP Protocol, IP Address, Subnets, and
Internetworking, Internet Transport Protocols: TRANSPORT Service, TCP and UDP
Protocols, Quality of Service Model, Best Effort Model, Network Performance Issues,
Overview of DNS, SNMP, Electronic Mail, FTP, TFTP, BOOTP, HTTP Protocols,
World Wide Web.

Unit-V: Advanced Theory in Computer Networks

Overview of Cellular Networks, Ad-Hoc Networks, Mobile Adhoc Networks, Wireless


Medium Access Control, Properties of a MANET, Sensor Networks, Virtual Private
Networks, Delay Tolerant Networks DTN, SDMA, FDMA, TDMA, CDMA.

Text books:

1. Kurose and Ross, ``Computer Networking: A Top-Down Approach,'' Addison-


Wesley, 2000.
2. Peterson and Davie, ``Computer Networks: A Systems Approach,'' 2nd ed.,
Morgan Kaufmann, 2000.
3. Tanenbaum, A., Computer Networks, 3rd ed., Prentice-Hall, 1996. Wright and
Stevens, TCP/IP Illustrated v.2, Addison-Wesley.
4. Comer, Douglas E., Computer Networks and Internets, 5th Edition, Prentice
Hall, 2009. ISBN-0-13-606127-3 (ISBN 13: 978-0-13-606127-4)

111
Reference Books:
1. Behrouz A. Forouzan, TCP/IP Protocol Suite, 4th Ed., McGraw Hill, 2010.
ISBN 978-0-07-337604-2
2. Tanenbaum, A. S., 2002, Computer Networks, 4th Ed., Prentice Hall, Upper
Saddle River, New Jersey.
3. Data and Computer Communications 7th edition, by William Stallings,
Prentice Hall, 12004
4. UNIX Network Programming by W. Richard Stevens, Prentice Hall, 1990
5. Computer Networking, 5/e, James F. Kurose and Keith W. Ross, ISBN: 0-13
607967-9
6. An Engineering Approach to Computer Networking, Srinivasan Keshav, 1st
Edition, Addison-Wesley Pub Co; ISBN: 0201634422.

*****

Name of the Course: Python Programming Lab

Course Code: MCAL-305 Course Credits: 2

Need of the subject and Justification: To implement real implementation of


theoretical concepts.

Objectives: Upon Completion of the course students able to learn

● Basic programming constructs –data types, decision structures, control


structures in python.
● Handle String libraries and Files in Python.

● Understand the concepts of Lists, Tuples, Dictionary, Regular


expressions.
● Learn the fundamental principles of Object-Oriented Programming.

● Network and Database Programming in Python.

Pre-requisites: NIL

Course outcomes:

● Illustrate various python syntax and use of Python flow control and functions.

112
● Create, run and manipulate Python Programs using core data structures.

● Illustrate the handling Strings and File Systems.

● Describe the need for Object-oriented programming and data structure


concepts in Python.
● Implement applications to Network and database Programming for Web.

List of Experiments

1. Write a program to demonstrate basic data type in python.


2. program to compute distance between two points taking input from the user
Write a program add.py that takes 2 numbers as command line arguments
and prints its sum.
3. Write a Program for checking whether the given number is an even number or
not. Using a for loop.
4. Write a Program to demonstrate list and tuple in python.
5. Write a program using a for loop that loops over a sequence.
6. Write a program using a while loop that asks the user for a number, and prints
a countdown from that number to zero.
7. Write a Python Program to find the maximum from a list of numbers.
8. Write a program to count the numbers of characters in the string and store
them in a dictionary data structure Write a program to use split and join
methods in the string and trace a birthday of a person with a dictionary data
structure.
9. Write a Python program to construct a linked list. Prompt the user for input.
Remove any duplicate numbers from the linked list.
10. Write a Python program to multiply matrices.
11. Write a Python Program to perform Linear Search.
12. Write a Python Program to perform Binary Search.
13. Write a Python Program to perform selection sort.
14. Write a Python Program to perform insertion sort.
15. Write a Python program to demonstrate working of classes and objects.
16. Write a Python program to create a small GUI application for insert, update
and delete in a table using Oracle as backend and front end for creating form.

Text books:

1. Tony Gaddis, Starting Out with Python, 3rd edition, Pearson


2. Y. Daniel Liang, Introduction to Programming Using Python, Pearson
3. Budd T A, Exploring Python , 2011, Tata McGraw Hill Education

113
4. Learning Python, Fourth Edition, Mark Lutz, O’Reilly publication.

Reference Books:

1. Romano, Fabrizio. Learning Python. United Kingdom, Packt Publishing, 2015.


2. Jones, Brian K., and Beazley, David. Python Cookbook: Recipes for Mastering
Python 3. United States, O'Reilly Media, 2013.

*****
Name of the Course: Advanced Computer Network Lab

Course Code: MCAL-306 Course Credits: 2

Need of the subject and Justification:


This course provides students with hands-on training regarding the design,
troubleshooting, modeling and evaluation of computer networks. In this course, students
are going to experiment in a real test-bed networking environment, and learn about
network design and troubleshooting topics and tools.

Objectives:
● Students will also be introduced to network modeling and simulation.
● Students have the opportUnity to build some simple networking models using the
tool and perform simulations.
● Students can evaluate their design approaches and expected network
performance.
● To understand the working principle of various communication protocols.
● To analyze the various routing algorithms.
● To know the concept of data transfer between nodes.

Pre-requisites:
Students have studied topics related to experiments.

Course outcomes:

● Understand fundamental underlying principles of computer networking.


● Understand the structure and organization of computer networks.
● Understand details and functionality of layered network architecture.
● Apply mathematical foundations to solve computational problems in computer
networking.
● Analyze performance of various communication protocols.
● Practice packet /file transmission between nodes.

114
Contents
List of Experiments:

Study different types of Network cables and practically implement the cross-wired cable
and straight through cable using a crimping tool.
Discuss and study the various network devices in detail.
1. To study the working of Basic Networking Commands.
2. To assign an IP address to the PC connected to the internet.
3. To connect the computers in Local Area Network.
4. Creating a Network topology using CISCO packet tracer software.
5. Configure a Network topology using packet tracer software.
6. Basic Router Configuration, Static Routing Implementation.
7. Implementation of Dynamic/interior/exterior routing (RIP, OSPF, BGP)
8. Implement bit stuffing and de-stuffing.
9. Write a program for hamming code generation for error detection and correction.
10. Implement cyclic redundancy check (CRC).
11. Write a program for congestion control using the leaky bucket algorithm.
12. Write a C program to determine if the IP address is in the class A, Class B, Class C,
Class D or Class E.
13. Packet capture and header analysis by wire-shark (TCP,UDP,IP)

References:
1. User Manual Cisco Tracer.
2. User Manual Wire Shark.
3. Computer Networks, Andrew S. Tanenbaum, PHI / Pearson Education Inc.,
4. Fred Halsall, "Data Communications, Computer networking on OSI", Second
Edition, Addison Wesley, 2002.
5. Behrouz A. Forouzan, "Data Communications and Networks", Third Edition, Tata
McGraw Hill.

*****
Name of the Course: Artificial Intelligence and Machine Learning
Course Code: MCA 301 Course Credits: 04

Pre-requisites: Basic computer science background.

Objectives:

● First course introducing various techniques of AI / ML.

● Acquire advanced Data Analysis skills.

● Stay Industry relevant and grow in your career.

115
● Apply AI/ML methods, techniques and tools immediately.

Need of the subject and Justification: The subject is an intensive application


oriented, real-world scenario based program in AI & ML.

Course outcomes:

● Understand the basic concepts of AI and ML technology.

● To alien with Industry 4.0 and acquire the Skills to develop automated industry
related applications.

Unit–I : Introduction of Artificial Intelligence


Intelligence, Introduction and Intelligent system, What is AI, Introduction to AI,
Introduction to Agents & Environments, Definition of Knowledge and Knowledge
Representation, Examples of Search Problems, State Space Search, Uninformed
Search Techniques- DFS, BFS, Informed search methods – heuristic Functions, Hill
Climbing, Simulated Annealing, Best-First Search, A* AO*Algorithm, Constraint
Satisfaction Problems,Coloring, Crypt Arithmetic, Adversarial Search: Games, Minimax
Algorithm, Alpha Beta pruning.

Unit–II: Symbolic and Structured Representations of Knowledge

Knowledge Representation: Procedural Vs Declarative Knowledge, Representations &


Approaches to Knowledge Representation, Forward Vs Backward Reasoning. Symbolic
Logic: Propositional Logic, First Order Predicate Logic.
Introduction to Handling Uncertainty
Reasoning under Uncertainty Certainty Factors and Rule-Based Systems, Dempster-
Shafer Theory, Fuzzy Logic: Crisp Sets ,Fuzzy Sets, Fuzzy Logic Control, Fuzzy
Inferences & Fuzzy Systems.
Unit–III: Convolution Neural Networks
Introduction to Convolution Neural Networks, Image classification. Text classification,
Image classification and hyper-parameter tuning, Emerging NN architectures. Recurrent
Neural Networks, Building recurrent NN, Deep Learning, Auto-encoders and
unsupervised learning, semi-supervised learning. Regularization - Dropout and Batch
normalization.

Unit–IV: Introduction to Machine Learning


Foundations for ML,ML Techniques overview , Validation Techniques (Cross-
Validations) , Feature Reduction/Dimensionality reduction , Principal components
analysis (Eigen values, Eigen vectors, Orthogonality) Clustering , Distance measures,

116
ML- methods (Distance, Density, Hierarchical) Iterative distance-based clustering;
Dealing with continuous, categorical values in K-Means, Constructing a hierarchical
cluster,K-Medoids, k-Mode and density-based clustering, Measures of quality of
clustering.

Unit–V: Tools and Methods of Machine Learning


Review Basic Tasks, Methods and underlying problems of Machine Learning. Learning
methods such as role, analogical, EBG, EBL, Chunking. Learning by examples -
Version space algorithm and ID3 algorithm. Important systems and applications to the
problem of knowledge acquisition for expert systems.

Text Book:
1. Artificial Intelligence, Elaine Rich, Kevin Knight, Tata McGraw Hill.
2. Introduction to Artificial Intelligence and Expert System, Dan W. Patterson,PHI.
w.e.f.academicsession2013-14
3. Artificial Intelligence: A Modern Approach, Stuart Russell and Peter Norvig, Pearson
Publication.
4. Principles of Artificial Intelligence, Nils J. Nilsson, Narosa Publication.
5. Artificial Intelligence, George F Luger, Pearson Education Publications.
6. Multi Agent systems- a modern approach to Distributed Artificial intelligence,
Weiss.G,
MIT Press.
7. Artificial Intelligence And Intelligent Systems, N.P. Padhy, Oxford Publications.
Reference Books:
1. AI-Structures and Strategies for Complex Problem Solving, George Lugar, Pearson
Educations.
2. Artificial Intelligence: an Engineering approach, Robert J. Schalkolf, McGraw Hill.
3. Artificial Intelligence, Patrick H. Winston, 3rd edition, Pearson Educations.
4. Decision Support Systems and Intelligent Systems, Efraim Turban Jay E.Aronson,
PHI.
5. Artificial Intelligence – A System Approach, M. Tim Jones, Infinity Science Press -
Firewall Media.
6. Artificial Intelligence – Strategies, Applications, and Models through Search,
Christopher Thornton and Benedict du Boulay, New Age International Publications.
7.Michalsky, T. Mitchell, J.Carbonell, Machine Learning Springer-Verlag.
8. T. M. Mitchell. Machine Learning, McGraw-Hill, 1997.
******
Name of Course: Software Engineering and Project Management
Course Code: MCA-302 Course Credits: 04

Need of the subject and justification:

117
This course provides an understanding of both theoretical and methodological
issues involved in modern software engineering project management and
focuses strongly on practical techniques. As a student of creative computing, you
need to develop the transferable skills in logical analysis, communication and
project management necessary for working within team-based, professional
environments.
Objectives:

● This course introduces the concepts and methods required for the construction of
large software intensive systems. It aims to set these techniques in an appropriate
engineering and management context.
● The course aims to develop a broad understanding of the discipline of software
engineering and management of software systems.
● This will provide the detailed knowledge regarding the concepts of OOPS, various
testing techniques, cost analysis and software reliability and quality assurance.

Pre-requisites : None

Course outcomes:

● Basic knowledge of various processes to be followed in the software development


life-cycle models.
● Implement communication, modeling, construction and deployment practices in
software development.
● Analyze & design the software models using the concepts of OOPs.

● Explain the concepts of various software testing methods & be able to apply
appropriate testing approaches for development of software.
● Explain the project management & different types of metrics used in software
development and risk and cost benefit analysis is implemented.
● Apply the concepts of project management & planning.

● Apply the concept of software reliability and quality assurance is implemented.

Syllabus
Unit-I : Fundamental Concept on Software Engineering
Introduction to Software Engineering, Software Crisis, Software Problems, Software-
Engineering Problems, Characteristics of Software, Software Evaluation, Software

118
Applications, Requirement Analysis and Requirement Specification Documents,
Software Design, Coding, Testing, Maintenance, Validation and Verification, Monitoring
and Control, Metrics and Measurement. Software Development Models: Waterfall
Model, Prototyping Model, Interactive Enhancement Model, Spiral Model, Iterative
Models, Evolutionary Process Models, Agile Model, Role of Management in Software
Development and Problem Analysis.

Unit –II: Software Design


Design Process, Design Concepts, Design Model, Problem Partitioning and Hierarchy,
Abstraction, Modularity, Top-Down and Bottom-Up Approach, Structure Design
Methodology, Functional Approach, Object Oriented Approach, Coupling and Cohesion,
Cyclomatic Complexity. Object Oriented Design: OO Analysis and OO Design,
Classes and Objects, Relationship among Objects, Inheritance and Polymorphism,
Design Concepts, Design Notation and Specification, Design Methodology, Dynamic
Modeling, Functional Modeling.

Unit-III: Software Coding


Programming Practice, Top Down and Bottom Up Structured Programming, Information
Hiding, Programming Style, Internal Documentation, Size measures, Complexity
Metrics, Style Metrics, Software Testing: Testing Fundamentals, Purpose of Software
Testing, Top Down and Bottom Up Approaches, Functional Testing, Structural Testing,
Test Cases and Test Criteria, Software Testing Strategies, Unit Testing, Integration
Testing and System Testing, Alpha and Beta Testing, Security Testing, Test Plan, Test
Case Specification, Test Case Execution and Analysis.

Unit-IV : Software Maintenance and Software Project Management


Software as an Evolutionary Entity, Need for Maintenance, Categories of Maintenance,
Cost of Maintenance, Software Re- Engineering, Reverse Engineering, Software
Configuration Management Activities, Change Control Process, Software Version
Control, Estimation of various Parameters, Project Scheduling Staffing and Personal
Planning, Constructive Cost Models (COCOMO), Resource Allocation Models, Software
Risk Analysis and Management. Introduction to software Project Management, Project
managers roles and responsibilities, Project planning.

Unit-V: Software Reliability and Quality Assurance


Software Reliability, Reliability Issues, Musa's Model, Reliability Measurement Process,
Software Quality, Software Quality Assurance, Software Quality Standards, SEI
Capability Maturity Model, Comparison between ISO and CMM Model, CASE
(Computer Aided Software Engineering): Various CASE Tools and their Usefulness,
Role of Data Dictionary in CASE Tools, Architecture of CASE Environment, CASE
support in Software life cycle.

Text Books:

1. Pankaj Jalote, “Software Engineering”, Narosa Publications.


2. Rajib Mall, “Fundamental of Software Engineering”, PHI.

119
3.Roger S. Pressman, “Software Engineering: A practitioner’s Approach”, 7 Edition,
McGraw Hill International Edition.
4. Sommerville, “Software Engineering”, 7th edition, Pearson education.
5. K.K. Agarwal and Yogesh Singh, “Software Engineering”, New Age International
Publishers.
Reference Books:
6. James F. Peters, Witold Pedrycz, “Software Engineering, an Engineering approach”,
John Wiley.
7. Shely Cashman Rosenblatt, “Systems Analysis and Design”, Thomson Publications.
8. Waman S Jawadekar, “Software Engineering principles and practice”, TMH.

*****

Name of the Course: Python Programming

Course Code: MCA-303 Course Credits: 4

Need of the subject and Justification:

Python is easier to read, write, and learn than most other major programming languages
and high demand in industries.

Objectives:

● Upon Completion of the course students able to learn

● Learn basic programming constructs –data types, decision structures, control


structures in python.
● Know how to use libraries for string manipulation and File handling.

● Learn to use in-built data structures in python – Lists, Tuples, Dictionary.

● Learn the fundamental principles of Object-Oriented Programming.

● Solve problems through application of OO concepts and using Files/database

Pre-requisites: NIL

Pedagogical Teaching and Learning Methods:

Lecture-4 Tutorial-0 Practical-0

120
Multiple teaching approaches: lecture, discussion, group work, demonstrations,
presentations.

Course outcomes:

● Understand the knowledge of Basic Programming with Python.

● Familiarize with python string and File handling techniques.

● Understand and use data structures like Lists, tuples and dictionaries.

● Understand concept of object oriented programming and data structure


techniques
● Understanding integration of databases with python and developing applications
using databases.

Syllabus

Unit-I: Introduction to Python3

Features of Python3, Environmental setup, --Installation of Pycharm and tools required


for running python --Python 3.x vs Python2.x--Basic Types— Variable types and
operators : Assigning values to variables --Multiple Assignments.

Unit-II: Data, Expressions, Statements

Python interpreter and interactive mode; values and types: int, float, boolean, string, and
list; variables, expressions, statements, tuple assignment, precedence of operators,
comments; modules and functions, function definition and use, flow of execution,
parameters and arguments; Illustrative programs: exchange the values of two variables,
circulate the values of n variables, distance between two points.

Unit -III : Control Flow, Functions

Conditionals: Boolean values and operators, conditional (if), alternative (if-else), chained
conditional (if-elif-else); Iteration: state, while, for, break, continue, pass; Fruitful
functions: return values, parameters, local and global scope, function composition,
recursion; Strings: string slices, immutability, string functions and methods, string
module; Lists as arrays. Illustrative programs: square root, gcd, exponentiation, sum an
array of numbers, linear search, binary search.

Unit -IV :Lists, Tuples and Directories

121
Lists: list operations, list slices, list methods, list loop, mutability, aliasing, cloning lists,
list parameters; Tuples: tuple assignment, tuple as return value; Dictionaries: operations
and methods; advanced list processing – list comprehension; Illustrative programs:
selection sort, insertion sort, mergesort, histogram.

Unit-V : Files, Modules, Packages

Files and exceptions: text files, reading and writing files, format operator; command line
arguments, errors and exceptions, handling exceptions, modules, packages; Illustrative
programs: word count, copy file.

Text Books:

4. Tony Gaddis, Starting Out with Python, 3rd edition, Pearson


5. Draper, Brian. Python Programming: A Complete Guide for Beginners to Master
and Become an Expert in Python Programming Language. United
Kingdom, CreateSpace Independent Publishing Platform, 2016.
6. Lutz, Mark. Learning Python: Powerful Object-Oriented Programming. United
States, O'Reilly Media, 2013.

Reference Books:

3. S, Gowrishankar, and A, Veena. Introduction to Python Programming. United


Kingdom, CRC Press, 2018.
4. Summerfield, Mark. Programming In Python 3: A Complete Introduction To The
Python Language. India, Pearson Education, 2009.

*****

Name of the Course: Advanced Computer Network

Course Code: MCA-304 Course Credits: 4

Need of the subject and Justification:


This course is designed to introduce advanced topics in computer networks. The
protocols of different layers as well as experimentation will be covered. The
coursework gives students the opportunity to get hands-on experience with
advanced networking.

Objectives:
● To develop an understanding of advanced computer networking basics.

122
● To develop an understanding of different components of computer networks,
various protocols, modern technologies and their applications.
● The course builds its by considering a mixed approach involving theory and
practical.
● The course introduces advanced topics that are basis blocks of networking
and covers fundamentals that are used to develop few of the advanced
technologies, including routing protocols, wireless & mobile networks etc.
● To provide information so that at the end of the course, the students find
themselves comfortable in taking either of the direction- industrial job or
further research in networking.

Pre-requisites:
Undergraduate introductory class of Basic computer networks is required. Students
should have basic knowledge of statistics and probability, and system programming.
Course outcomes:
● Compare and contrast the OSI and TCP/IP models.

● Given a network problem, create appropriate topology and draw wiring


diagrams.
● Configure servers, switches and routers.

● Analyze wireless LAN technologies

● Understand internet traffic and plan traffic engineering including IP over ATM
and multimedia over internet.
● Create subnets, super nets, and routing tables.

Contents
Unit-I: Overview of Data Communication
Introduction to Computer Networks: Reference Models, Data Communication
Services & Network Examples, Internet Based Applications, Data Communications:
Transmission Media, Wireless Transmission, Multiplexing, Switching.
Communication System, Baseband and Carrier Communication, transmission
modes, Baud rate, bit rate, SNR, Introduction to analog modulation techniques (AM,
FM, PM, QAM) Digital Continuous Wave Modulation techniques: Modems, ASK,
FSK, PSK, BPSK, QPSK, Multiplexing techniques: TDM, FDM, WDM, CDMA, Pulse
amplitude modulation techniques, sampling theorem, PCM, PCM Encoder and
Decoder, DPCM, ADPCM, Delta modulation, Line Coding techniques: Bipolar,
Unipolar, RZ, NRZ, Manchester, AMI, B8ZS, Block coding techniques.

123
Unit-II: Computer Networks and Physical layer

Protocols and Standards, OSI Model, TCP/IP Model, Network topology (Physical &
logical), Transmission media: Guided transmission media - Twisted Pair, Coaxial
and Fiber-optic cables, Wireless transmission: Electromagnetic spectrum, Radio and
Micro Waves, Infrared, Lightwave, Spread Spectrum Systems, Digital hierarchy–
Signaling system, DS lines, T lines, E lines, Cable modem Switching techniques:
Circuit switching, Packet switching and message switching, Network Devices:
Repeaters, Connectors, Transceivers and Media Converters, Bridges, Routers,
Gateways, Multiprotocol Routers, Brouters, Hubs, Switches, Modems, Wireless
Access Points.

Unit–III : Data Link Layer

Data link layer design issues: Framing, Error and flow control, Stop-and-Wait
protocol, Sliding Window protocol, HDLC, Channel allocation: Static and Dynamic
allocation, Multiple Access Protocols: ALOHA, CSMA, Collision-free and limited-
contention protocols, Virtual LANs, LANs & MANs: IEEE Standards for LANs &
MANs-IEEE Standards 802.2, 802.3, 802.4, 802.5, 802.6, High Speed LANs,
SONET, Video on Demand, Bluetooth, Cellular telephony, Broadband wireless
technologies, LAN standards, Ethernet, Wireless LAN, Virtual LAN, Frame relay,
Transmission in ISDN, Broad Band ISDN , ATM Networks, Data link layer in Internet.

Unit–IV : Upper Layers

Design Issues in Networks: Routing Algorithms, Congestion Control Algorithms,


Network Layer in the Internet, IP Protocol, IP Address, Subnets, and
Internetworking, Internet Transport Protocols: TRANSPORT Service, TCP and UDP
Protocols, Quality of Service Model, Best Effort Model, Network Performance Issues,
Overview of DNS, SNMP, Electronic Mail, FTP, TFTP, BOOTP, HTTP Protocols,
World Wide Web.

Unit-V: Advanced Theory in Computer Networks

Overview of Cellular Networks, Ad-Hoc Networks, Mobile Adhoc Networks, Wireless


Medium Access Control, Properties of a MANET, Sensor Networks, Virtual Private
Networks, Delay Tolerant Networks DTN, SDMA, FDMA, TDMA, CDMA.

Text books:

5. Kurose and Ross, ``Computer Networking: A Top-Down Approach,'' Addison-


Wesley, 2000.
6. Peterson and Davie, ``Computer Networks: A Systems Approach,'' 2nd ed.,
Morgan Kaufmann, 2000.
7. Tanenbaum, A., Computer Networks, 3rd ed., Prentice-Hall, 1996. Wright and
Stevens, TCP/IP Illustrated v.2, Addison-Wesley.

124
8. Comer, Douglas E., Computer Networks and Internets, 5th Edition, Prentice
Hall, 2009. ISBN-0-13-606127-3 (ISBN 13: 978-0-13-606127-4)

Reference Books:
7. Behrouz A. Forouzan, TCP/IP Protocol Suite, 4th Ed., McGraw Hill, 2010.
ISBN 978-0-07-337604-2
8. Tanenbaum, A. S., 2002, Computer Networks, 4th Ed., Prentice Hall, Upper
Saddle River, New Jersey.
9. Data and Computer Communications 7th edition, by William Stallings,
Prentice Hall, 12004
10. UNIX Network Programming by W. Richard Stevens, Prentice Hall, 1990
11. Computer Networking, 5/e, James F. Kurose and Keith W. Ross, ISBN: 0-13
607967-9
12. An Engineering Approach to Computer Networking, Srinivasan Keshav, 1st
Edition, Addison-Wesley Pub Co; ISBN: 0201634422.

*****

Name of the Course: Python Programming Lab

Course Code: MCAL-305 Course Credits: 2

Need of the subject and Justification: To implement real implementation of


theoretical concepts.

Objectives: Upon Completion of the course students able to learn

● Basic programming constructs –data types, decision structures, control


structures in python.
● Handle String libraries and Files in Python.

● Understand the concepts of Lists, Tuples, Dictionary, Regular


expressions.
● Learn the fundamental principles of Object-Oriented Programming.

● Network and Database Programming in Python.

Pre-requisites: NIL

125
Course outcomes:

● Illustrate various python syntax and use of Python flow control and functions.

● Create, run and manipulate Python Programs using core data structures.

● Illustrate the handling Strings and File Systems.

● Describe the need for Object-oriented programming and data structure


concepts in Python.
● Implement applications to Network and database Programming for Web.

List of Experiments

17. Write a program to demonstrate basic data type in python.


18. program to compute distance between two points taking input from the user
Write a program add.py that takes 2 numbers as command line arguments
and prints its sum.
19. Write a Program for checking whether the given number is an even number or
not. Using a for loop.
20. Write a Program to demonstrate list and tuple in python.
21. Write a program using a for loop that loops over a sequence.
22. Write a program using a while loop that asks the user for a number, and prints
a countdown from that number to zero.
23. Write a Python Program to find the maximum from a list of numbers.
24. Write a program to count the numbers of characters in the string and store
them in a dictionary data structure Write a program to use split and join
methods in the string and trace a birthday of a person with a dictionary data
structure.
25. Write a Python program to construct a linked list. Prompt the user for input.
Remove any duplicate numbers from the linked list.
26. Write a Python program to multiply matrices.
27. Write a Python Program to perform Linear Search.
28. Write a Python Program to perform Binary Search.
29. Write a Python Program to perform selection sort.
30. Write a Python Program to perform insertion sort.
31. Write a Python program to demonstrate working of classes and objects.
32. Write a Python program to create a small GUI application for insert, update
and delete in a table using Oracle as backend and front end for creating form.

Text books:

126
5. Tony Gaddis, Starting Out with Python, 3rd edition, Pearson
6. Y. Daniel Liang, Introduction to Programming Using Python, Pearson
7. Budd T A, Exploring Python , 2011, Tata McGraw Hill Education
8. Learning Python, Fourth Edition, Mark Lutz, O’Reilly publication.

Reference Books:

3. Romano, Fabrizio. Learning Python. United Kingdom, Packt Publishing, 2015.


4. Jones, Brian K., and Beazley, David. Python Cookbook: Recipes for Mastering
Python 3. United States, O'Reilly Media, 2013.

*****
Name of the Course: Advanced Computer Network Lab

Course Code: MCAL-306 Course Credits: 2

Need of the subject and Justification:


This course provides students with hands-on training regarding the design,
troubleshooting, modeling and evaluation of computer networks. In this course, students
are going to experiment in a real test-bed networking environment, and learn about
network design and troubleshooting topics and tools.

Objectives:
● Students will also be introduced to network modeling and simulation.
● Students have the opportUnity to build some simple networking models using the
tool and perform simulations.
● Students can evaluate their design approaches and expected network
performance.
● To understand the working principle of various communication protocols.
● To analyze the various routing algorithms.
● To know the concept of data transfer between nodes.

Pre-requisites:
Students have studied topics related to experiments.

Course outcomes:

● Understand fundamental underlying principles of computer networking.


● Understand the structure and organization of computer networks.
● Understand details and functionality of layered network architecture.

127
● Apply mathematical foundations to solve computational problems in computer
networking.
● Analyze performance of various communication protocols.
● Practice packet /file transmission between nodes.

Contents
List of Experiments:

Study different types of Network cables and practically implement the cross-wired cable
and straight through cable using a crimping tool.
Discuss and study the various network devices in detail.
14. To study the working of Basic Networking Commands.
15. To assign an IP address to the PC connected to the internet.
16. To connect the computers in Local Area Network.
17. Creating a Network topology using CISCO packet tracer software.
18. Configure a Network topology using packet tracer software.
19. Basic Router Configuration, Static Routing Implementation.
20. Implementation of Dynamic/interior/exterior routing (RIP, OSPF, BGP)
21. Implement bit stuffing and de-stuffing.
22. Write a program for hamming code generation for error detection and correction.
23. Implement cyclic redundancy check (CRC).
24. Write a program for congestion control using the leaky bucket algorithm.
25. Write a C program to determine if the IP address is in the class A, Class B, Class C,
Class D or Class E.
26. Packet capture and header analysis by wire-shark (TCP,UDP,IP)

References:
6. User Manual Cisco Tracer.
7. User Manual Wire Shark.
8. Computer Networks, Andrew S. Tanenbaum, PHI / Pearson Education Inc.,
9. Fred Halsall, "Data Communications, Computer networking on OSI", Second
Edition, Addison Wesley, 2002.
10. Behrouz A. Forouzan, "Data Communications and Networks", Third Edition, Tata
McGraw Hill.

Name of the Course: Artificial Intelligence and Machine Learning


Course Code: MCA 301 Course Credits: 04

Pre-requisites: Basic computer science background.

Objectives:

● First course introducing various techniques of AI / ML.

● Acquire advanced Data Analysis skills.

128
● Stay Industry relevant and grow in your career.

● Apply AI/ML methods, techniques and tools immediately.

Need of the subject and Justification: The subject is an intensive application


oriented, real-world scenario based program in AI & ML.

Course outcomes:

● Understand the basic concepts of AI and ML technology.

● To alien with Industry 4.0 and acquire the Skills to develop automated industry
related applications.

Unit–I : Introduction of Artificial Intelligence


Intelligence, Introduction and Intelligent system, What is AI, Introduction to AI,
Introduction to Agents & Environments, Definition of Knowledge and Knowledge
Representation, Examples of Search Problems, State Space Search, Uninformed
Search Techniques- DFS, BFS, Informed search methods – heuristic Functions, Hill
Climbing, Simulated Annealing, Best-First Search, A* AO*Algorithm, Constraint
Satisfaction Problems,Coloring, Crypt Arithmetic, Adversarial Search: Games, Minimax
Algorithm, Alpha Beta pruning.

Unit–II: Symbolic and Structured Representations of Knowledge

Knowledge Representation: Procedural Vs Declarative Knowledge, Representations &


Approaches to Knowledge Representation, Forward Vs Backward Reasoning. Symbolic
Logic: Propositional Logic, First Order Predicate Logic.
Introduction to Handling Uncertainty
Reasoning under Uncertainty Certainty Factors and Rule-Based Systems, Dempster-
Shafer Theory, Fuzzy Logic: Crisp Sets ,Fuzzy Sets, Fuzzy Logic Control, Fuzzy
Inferences & Fuzzy Systems.
Unit–III: Convolution Neural Networks
Introduction to Convolution Neural Networks, Image classification. Text classification,
Image classification and hyper-parameter tuning, Emerging NN architectures. Recurrent
Neural Networks, Building recurrent NN, Deep Learning, Auto-encoders and
unsupervised learning, semi-supervised learning. Regularization - Dropout and Batch
normalization.

Unit–IV: Introduction to Machine Learning

129
Foundations for ML,ML Techniques overview , Validation Techniques (Cross-
Validations) , Feature Reduction/Dimensionality reduction , Principal components
analysis (Eigen values, Eigen vectors, Orthogonality) Clustering , Distance measures,
ML- methods (Distance, Density, Hierarchical) Iterative distance-based clustering;
Dealing with continuous, categorical values in K-Means, Constructing a hierarchical
cluster,K-Medoids, k-Mode and density-based clustering, Measures of quality of
clustering.

Unit–V: Tools and Methods of Machine Learning


Review Basic Tasks, Methods and underlying problems of Machine Learning. Learning
methods such as role, analogical, EBG, EBL, Chunking. Learning by examples -
Version space algorithm and ID3 algorithm. Important systems and applications to the
problem of knowledge acquisition for expert systems.

Text Book:
1. Artificial Intelligence, Elaine Rich, Kevin Knight, Tata McGraw Hill.
2. Introduction to Artificial Intelligence and Expert System, Dan W. Patterson,PHI.
w.e.f.academicsession2013-14
3. Artificial Intelligence: A Modern Approach, Stuart Russell and Peter Norvig, Pearson
Publication.
4. Principles of Artificial Intelligence, Nils J. Nilsson, Narosa Publication.
5. Artificial Intelligence, George F Luger, Pearson Education Publications.
6. Multi Agent systems- a modern approach to Distributed Artificial intelligence,
Weiss.G,
MIT Press.
7. Artificial Intelligence And Intelligent Systems, N.P. Padhy, Oxford Publications.
Reference Books:
1. AI-Structures and Strategies for Complex Problem Solving, George Lugar, Pearson
Educations.
2. Artificial Intelligence: an Engineering approach, Robert J. Schalkolf, McGraw Hill.
3. Artificial Intelligence, Patrick H. Winston, 3rd edition, Pearson Educations.
4. Decision Support Systems and Intelligent Systems, Efraim Turban Jay E.Aronson,
PHI.
5. Artificial Intelligence – A System Approach, M. Tim Jones, Infinity Science Press -
Firewall Media.
6. Artificial Intelligence – Strategies, Applications, and Models through Search,
Christopher Thornton and Benedict du Boulay, New Age International Publications.
7.Michalsky, T. Mitchell, J.Carbonell, Machine Learning Springer-Verlag.
8. T. M. Mitchell. Machine Learning, McGraw-Hill, 1997.
******
Name of Course: Software Engineering and Project Management
Course Code: MCA-302 Course Credits: 04

130
Need of the subject and justification:

This course provides an understanding of both theoretical and methodological


issues involved in modern software engineering project management and
focuses strongly on practical techniques. As a student of creative computing, you
need to develop the transferable skills in logical analysis, communication and
project management necessary for working within team-based, professional
environments.
Objectives:

● This course introduces the concepts and methods required for the construction of
large software intensive systems. It aims to set these techniques in an appropriate
engineering and management context.
● The course aims to develop a broad understanding of the discipline of software
engineering and management of software systems.
● This will provide the detailed knowledge regarding the concepts of OOPS, various
testing techniques, cost analysis and software reliability and quality assurance.

Pre-requisites : None

Course outcomes:

● Basic knowledge of various processes to be followed in the software development


life-cycle models.
● Implement communication, modeling, construction and deployment practices in
software development.
● Analyze & design the software models using the concepts of OOPs.

● Explain the concepts of various software testing methods & be able to apply
appropriate testing approaches for development of software.
● Explain the project management & different types of metrics used in software
development and risk and cost benefit analysis is implemented.
● Apply the concepts of project management & planning.

● Apply the concept of software reliability and quality assurance is implemented.

Syllabus
Unit-I : Fundamental Concept on Software Engineering

131
Introduction to Software Engineering, Software Crisis, Software Problems, Software-
Engineering Problems, Characteristics of Software, Software Evaluation, Software
Applications, Requirement Analysis and Requirement Specification Documents,
Software Design, Coding, Testing, Maintenance, Validation and Verification, Monitoring
and Control, Metrics and Measurement. Software Development Models: Waterfall
Model, Prototyping Model, Interactive Enhancement Model, Spiral Model, Iterative
Models, Evolutionary Process Models, Agile Model, Role of Management in Software
Development and Problem Analysis.

Unit –II: Software Design


Design Process, Design Concepts, Design Model, Problem Partitioning and Hierarchy,
Abstraction, Modularity, Top-Down and Bottom-Up Approach, Structure Design
Methodology, Functional Approach, Object Oriented Approach, Coupling and Cohesion,
Cyclomatic Complexity. Object Oriented Design: OO Analysis and OO Design,
Classes and Objects, Relationship among Objects, Inheritance and Polymorphism,
Design Concepts, Design Notation and Specification, Design Methodology, Dynamic
Modeling, Functional Modeling.

Unit-III: Software Coding


Programming Practice, Top Down and Bottom Up Structured Programming, Information
Hiding, Programming Style, Internal Documentation, Size measures, Complexity
Metrics, Style Metrics, Software Testing: Testing Fundamentals, Purpose of Software
Testing, Top Down and Bottom Up Approaches, Functional Testing, Structural Testing,
Test Cases and Test Criteria, Software Testing Strategies, Unit Testing, Integration
Testing and System Testing, Alpha and Beta Testing, Security Testing, Test Plan, Test
Case Specification, Test Case Execution and Analysis.

Unit-IV : Software Maintenance and Software Project Management


Software as an Evolutionary Entity, Need for Maintenance, Categories of Maintenance,
Cost of Maintenance, Software Re- Engineering, Reverse Engineering, Software
Configuration Management Activities, Change Control Process, Software Version
Control, Estimation of various Parameters, Project Scheduling Staffing and Personal
Planning, Constructive Cost Models (COCOMO), Resource Allocation Models, Software
Risk Analysis and Management. Introduction to software Project Management, Project
managers roles and responsibilities, Project planning.

Unit-V: Software Reliability and Quality Assurance


Software Reliability, Reliability Issues, Musa's Model, Reliability Measurement Process,
Software Quality, Software Quality Assurance, Software Quality Standards, SEI
Capability Maturity Model, Comparison between ISO and CMM Model, CASE
(Computer Aided Software Engineering): Various CASE Tools and their Usefulness,
Role of Data Dictionary in CASE Tools, Architecture of CASE Environment, CASE
support in Software life cycle.

Text Books:

132
1. Pankaj Jalote, “Software Engineering”, Narosa Publications.
2. Rajib Mall, “Fundamental of Software Engineering”, PHI.
3.Roger S. Pressman, “Software Engineering: A practitioner’s Approach”, 7 Edition,
McGraw Hill International Edition.
4. Sommerville, “Software Engineering”, 7th edition, Pearson education.
5. K.K. Agarwal and Yogesh Singh, “Software Engineering”, New Age International
Publishers.
Reference Books:
6. James F. Peters, Witold Pedrycz, “Software Engineering, an Engineering approach”,
John Wiley.
7. Shely Cashman Rosenblatt, “Systems Analysis and Design”, Thomson Publications.
8. Waman S Jawadekar, “Software Engineering principles and practice”, TMH.

*****

Name of the Course: Python Programming

Course Code: MCA-303 Course Credits: 4

Need of the subject and Justification:

Python is easier to read, write, and learn than most other major programming languages
and high demand in industries.

Objectives:

● Upon Completion of the course students able to learn

● Learn basic programming constructs –data types, decision structures, control


structures in python.
● Know how to use libraries for string manipulation and File handling.

● Learn to use in-built data structures in python – Lists, Tuples, Dictionary.

● Learn the fundamental principles of Object-Oriented Programming.

● Solve problems through application of OO concepts and using Files/database

Pre-requisites: NIL

Pedagogical Teaching and Learning Methods:

133
Lecture-4 Tutorial-0 Practical-0

Multiple teaching approaches: lecture, discussion, group work, demonstrations,


presentations.

Course outcomes:

● Understand the knowledge of Basic Programming with Python.

● Familiarize with python string and File handling techniques.

● Understand and use data structures like Lists, tuples and dictionaries.

● Understand concept of object oriented programming and data structure


techniques
● Understanding integration of databases with python and developing applications
using databases.

Syllabus

Unit-I: Introduction to Python3

Features of Python3, Environmental setup, --Installation of Pycharm and tools required


for running python --Python 3.x vs Python2.x--Basic Types— Variable types and
operators : Assigning values to variables --Multiple Assignments.

Unit-II: Data, Expressions, Statements

Python interpreter and interactive mode; values and types: int, float, boolean, string, and
list; variables, expressions, statements, tuple assignment, precedence of operators,
comments; modules and functions, function definition and use, flow of execution,
parameters and arguments; Illustrative programs: exchange the values of two variables,
circulate the values of n variables, distance between two points.

Unit -III : Control Flow, Functions

Conditionals: Boolean values and operators, conditional (if), alternative (if-else), chained
conditional (if-elif-else); Iteration: state, while, for, break, continue, pass; Fruitful
functions: return values, parameters, local and global scope, function composition,
recursion; Strings: string slices, immutability, string functions and methods, string
module; Lists as arrays. Illustrative programs: square root, gcd, exponentiation, sum an
array of numbers, linear search, binary search.

Unit -IV :Lists, Tuples and Directories

134
Lists: list operations, list slices, list methods, list loop, mutability, aliasing, cloning lists,
list parameters; Tuples: tuple assignment, tuple as return value; Dictionaries: operations
and methods; advanced list processing – list comprehension; Illustrative programs:
selection sort, insertion sort, mergesort, histogram.

Unit-V : Files, Modules, Packages

Files and exceptions: text files, reading and writing files, format operator; command line
arguments, errors and exceptions, handling exceptions, modules, packages; Illustrative
programs: word count, copy file.

Text Books:

7. Tony Gaddis, Starting Out with Python, 3rd edition, Pearson


8. Draper, Brian. Python Programming: A Complete Guide for Beginners to Master
and Become an Expert in Python Programming Language. United
Kingdom, CreateSpace Independent Publishing Platform, 2016.
9. Lutz, Mark. Learning Python: Powerful Object-Oriented Programming. United
States, O'Reilly Media, 2013.

Reference Books:

5. S, Gowrishankar, and A, Veena. Introduction to Python Programming. United


Kingdom, CRC Press, 2018.
6. Summerfield, Mark. Programming In Python 3: A Complete Introduction To The
Python Language. India, Pearson Education, 2009.

*****

Name of the Course: Advanced Computer Network

Course Code: MCA-304 Course Credits: 4

Need of the subject and Justification:


This course is designed to introduce advanced topics in computer networks. The
protocols of different layers as well as experimentation will be covered. The
coursework gives students the opportunity to get hands-on experience with
advanced networking.

Objectives:
● To develop an understanding of advanced computer networking basics.

135
● To develop an understanding of different components of computer networks,
various protocols, modern technologies and their applications.
● The course builds its by considering a mixed approach involving theory and
practical.
● The course introduces advanced topics that are basis blocks of networking
and covers fundamentals that are used to develop few of the advanced
technologies, including routing protocols, wireless & mobile networks etc.
● To provide information so that at the end of the course, the students find
themselves comfortable in taking either of the direction- industrial job or
further research in networking.

Pre-requisites:
Undergraduate introductory class of Basic computer networks is required. Students
should have basic knowledge of statistics and probability, and system programming.
Course outcomes:
● Compare and contrast the OSI and TCP/IP models.

● Given a network problem, create appropriate topology and draw wiring


diagrams.
● Configure servers, switches and routers.

● Analyze wireless LAN technologies

● Understand internet traffic and plan traffic engineering including IP over ATM
and multimedia over internet.
● Create subnets, super nets, and routing tables.

Contents
Unit-I: Overview of Data Communication
Introduction to Computer Networks: Reference Models, Data Communication
Services & Network Examples, Internet Based Applications, Data Communications:
Transmission Media, Wireless Transmission, Multiplexing, Switching.
Communication System, Baseband and Carrier Communication, transmission
modes, Baud rate, bit rate, SNR, Introduction to analog modulation techniques (AM,
FM, PM, QAM) Digital Continuous Wave Modulation techniques: Modems, ASK,
FSK, PSK, BPSK, QPSK, Multiplexing techniques: TDM, FDM, WDM, CDMA, Pulse
amplitude modulation techniques, sampling theorem, PCM, PCM Encoder and
Decoder, DPCM, ADPCM, Delta modulation, Line Coding techniques: Bipolar,
Unipolar, RZ, NRZ, Manchester, AMI, B8ZS, Block coding techniques.

136
Unit-II: Computer Networks and Physical layer

Protocols and Standards, OSI Model, TCP/IP Model, Network topology (Physical &
logical), Transmission media: Guided transmission media - Twisted Pair, Coaxial
and Fiber-optic cables, Wireless transmission: Electromagnetic spectrum, Radio and
Micro Waves, Infrared, Lightwave, Spread Spectrum Systems, Digital hierarchy–
Signaling system, DS lines, T lines, E lines, Cable modem Switching techniques:
Circuit switching, Packet switching and message switching, Network Devices:
Repeaters, Connectors, Transceivers and Media Converters, Bridges, Routers,
Gateways, Multiprotocol Routers, Brouters, Hubs, Switches, Modems, Wireless
Access Points.

Unit–III : Data Link Layer

Data link layer design issues: Framing, Error and flow control, Stop-and-Wait
protocol, Sliding Window protocol, HDLC, Channel allocation: Static and Dynamic
allocation, Multiple Access Protocols: ALOHA, CSMA, Collision-free and limited-
contention protocols, Virtual LANs, LANs & MANs: IEEE Standards for LANs &
MANs-IEEE Standards 802.2, 802.3, 802.4, 802.5, 802.6, High Speed LANs,
SONET, Video on Demand, Bluetooth, Cellular telephony, Broadband wireless
technologies, LAN standards, Ethernet, Wireless LAN, Virtual LAN, Frame relay,
Transmission in ISDN, Broad Band ISDN , ATM Networks, Data link layer in Internet.

Unit–IV : Upper Layers

Design Issues in Networks: Routing Algorithms, Congestion Control Algorithms,


Network Layer in the Internet, IP Protocol, IP Address, Subnets, and
Internetworking, Internet Transport Protocols: TRANSPORT Service, TCP and UDP
Protocols, Quality of Service Model, Best Effort Model, Network Performance Issues,
Overview of DNS, SNMP, Electronic Mail, FTP, TFTP, BOOTP, HTTP Protocols,
World Wide Web.

Unit-V: Advanced Theory in Computer Networks

Overview of Cellular Networks, Ad-Hoc Networks, Mobile Adhoc Networks, Wireless


Medium Access Control, Properties of a MANET, Sensor Networks, Virtual Private
Networks, Delay Tolerant Networks DTN, SDMA, FDMA, TDMA, CDMA.

Text books:

9. Kurose and Ross, ``Computer Networking: A Top-Down Approach,'' Addison-


Wesley, 2000.
10. Peterson and Davie, ``Computer Networks: A Systems Approach,'' 2nd ed.,
Morgan Kaufmann, 2000.
11. Tanenbaum, A., Computer Networks, 3rd ed., Prentice-Hall, 1996. Wright and
Stevens, TCP/IP Illustrated v.2, Addison-Wesley.

137
12. Comer, Douglas E., Computer Networks and Internets, 5th Edition, Prentice
Hall, 2009. ISBN-0-13-606127-3 (ISBN 13: 978-0-13-606127-4)

Reference Books:
13. Behrouz A. Forouzan, TCP/IP Protocol Suite, 4th Ed., McGraw Hill, 2010.
ISBN 978-0-07-337604-2
14. Tanenbaum, A. S., 2002, Computer Networks, 4th Ed., Prentice Hall, Upper
Saddle River, New Jersey.
15. Data and Computer Communications 7th edition, by William Stallings,
Prentice Hall, 12004
16. UNIX Network Programming by W. Richard Stevens, Prentice Hall, 1990
17. Computer Networking, 5/e, James F. Kurose and Keith W. Ross, ISBN: 0-13
607967-9
18. An Engineering Approach to Computer Networking, Srinivasan Keshav, 1st
Edition, Addison-Wesley Pub Co; ISBN: 0201634422.

*****

Name of the Course: Python Programming Lab

Course Code: MCAL-305 Course Credits: 2

Need of the subject and Justification: To implement real implementation of


theoretical concepts.

Objectives: Upon Completion of the course students able to learn

● Basic programming constructs –data types, decision structures, control


structures in python.
● Handle String libraries and Files in Python.

● Understand the concepts of Lists, Tuples, Dictionary, Regular


expressions.
● Learn the fundamental principles of Object-Oriented Programming.

● Network and Database Programming in Python.

Pre-requisites: NIL

138
Course outcomes:

● Illustrate various python syntax and use of Python flow control and functions.

● Create, run and manipulate Python Programs using core data structures.

● Illustrate the handling Strings and File Systems.

● Describe the need for Object-oriented programming and data structure


concepts in Python.
● Implement applications to Network and database Programming for Web.

List of Experiments

33. Write a program to demonstrate basic data type in python.


34. program to compute distance between two points taking input from the user
Write a program add.py that takes 2 numbers as command line arguments
and prints its sum.
35. Write a Program for checking whether the given number is an even number or
not. Using a for loop.
36. Write a Program to demonstrate list and tuple in python.
37. Write a program using a for loop that loops over a sequence.
38. Write a program using a while loop that asks the user for a number, and prints
a countdown from that number to zero.
39. Write a Python Program to find the maximum from a list of numbers.
40. Write a program to count the numbers of characters in the string and store
them in a dictionary data structure Write a program to use split and join
methods in the string and trace a birthday of a person with a dictionary data
structure.
41. Write a Python program to construct a linked list. Prompt the user for input.
Remove any duplicate numbers from the linked list.
42. Write a Python program to multiply matrices.
43. Write a Python Program to perform Linear Search.
44. Write a Python Program to perform Binary Search.
45. Write a Python Program to perform selection sort.
46. Write a Python Program to perform insertion sort.
47. Write a Python program to demonstrate working of classes and objects.
48. Write a Python program to create a small GUI application for insert, update
and delete in a table using Oracle as backend and front end for creating form.

Text books:

139
9. Tony Gaddis, Starting Out with Python, 3rd edition, Pearson
10. Y. Daniel Liang, Introduction to Programming Using Python, Pearson
11. Budd T A, Exploring Python , 2011, Tata McGraw Hill Education
12. Learning Python, Fourth Edition, Mark Lutz, O’Reilly publication.

Reference Books:

5. Romano, Fabrizio. Learning Python. United Kingdom, Packt Publishing, 2015.


6. Jones, Brian K., and Beazley, David. Python Cookbook: Recipes for Mastering
Python 3. United States, O'Reilly Media, 2013.

*****
Name of the Course: Advanced Computer Network Lab

Course Code: MCAL-306 Course Credits: 2

Need of the subject and Justification:


This course provides students with hands-on training regarding the design,
troubleshooting, modeling and evaluation of computer networks. In this course, students
are going to experiment in a real test-bed networking environment, and learn about
network design and troubleshooting topics and tools.

Objectives:
● Students will also be introduced to network modeling and simulation.
● Students have the opportUnity to build some simple networking models using the
tool and perform simulations.
● Students can evaluate their design approaches and expected network
performance.
● To understand the working principle of various communication protocols.
● To analyze the various routing algorithms.
● To know the concept of data transfer between nodes.

Pre-requisites:
Students have studied topics related to experiments.

Course outcomes:

● Understand fundamental underlying principles of computer networking.


● Understand the structure and organization of computer networks.
● Understand details and functionality of layered network architecture.

140
● Apply mathematical foundations to solve computational problems in computer
networking.
● Analyze performance of various communication protocols.
● Practice packet /file transmission between nodes.

Contents
List of Experiments:

Study different types of Network cables and practically implement the cross-wired cable
and straight through cable using a crimping tool.
Discuss and study the various network devices in detail.
27. To study the working of Basic Networking Commands.
28. To assign an IP address to the PC connected to the internet.
29. To connect the computers in Local Area Network.
30. Creating a Network topology using CISCO packet tracer software.
31. Configure a Network topology using packet tracer software.
32. Basic Router Configuration, Static Routing Implementation.
33. Implementation of Dynamic/interior/exterior routing (RIP, OSPF, BGP)
34. Implement bit stuffing and de-stuffing.
35. Write a program for hamming code generation for error detection and correction.
36. Implement cyclic redundancy check (CRC).
37. Write a program for congestion control using the leaky bucket algorithm.
38. Write a C program to determine if the IP address is in the class A, Class B, Class C,
Class D or Class E.
39. Packet capture and header analysis by wire-shark (TCP,UDP,IP)

References:
11. User Manual Cisco Tracer.
12. User Manual Wire Shark.
13. Computer Networks, Andrew S. Tanenbaum, PHI / Pearson Education Inc.,
14. Fred Halsall, "Data Communications, Computer networking on OSI", Second
Edition, Addison Wesley, 2002.
15. Behrouz A. Forouzan, "Data Communications and Networks", Third Edition, Tata
McGraw Hill.

Name of the Course: Internet of Things and Data Science


Course Code: MCA-401 Course Credits: 4

Need of the subject and Justification: The primary need of the course is to update
the most recent advancement of the computing environment to the students. Because,
Data science and IoT business growing day by day and most of the organization
moving to IoT platform to improve efficiency of system.

141
Objectives:

● A concise introduction to Internet of Things concepts and how it works.

● Real life applications of IoTs

● Different technologies required for the Internet of Things.

● To find innovative applications of combinations of such technologies in real-life


scenarios.
Pre-requisites: Basic Knowledge of Statistics and Computer Networks

Pedagogical Teaching and Learning Methods:

Lecture-4 Tutorial-0 Practical-0

Multiple teaching approaches: lecture, discussion, group work, demonstrations,


presentations.

Course outcomes:

● Describe terminology, technology and applications of IOT, protocol standards.

● Illustrate the need of IoT, deployment challenges and characteristics of the IoT.

● Phases data science, data acquisition steps and analysis.

● Manage, summarize, and visualize data.

● Real Applications of IoT and Data Science.

Contents

Unit-I : Introduction to Internet of Things


Internet of Things Concepts, Characteristics of IoT ,Physical and Logical design of IoT,
Functional blocks of IoT, Communication models, Smart Object and Smart
Environments

Unit-II Technologies and Application domains of IoT

Internet of Things Framework, Communication technology infrastructure, Architecture


and reference models, Application Domains: Energy, Agriculture, Health Care,
Manufacturing, Smart cities.

Unit -III Basics of Data Science

142
Introduction to Data Science and Statistical Analytics, Data and its structures,
Introduction to Data Science, Data Science Applications and Use cases, Data science
need for Business Analytics, Data Science Life Cycle, Different tools available for Data
Science, Big data and data science

Unit -IV Introduction to Statistics using R/Python

Basic Terminologies of Statistics, Mean, Median and Mode, Linear Regression, Multiple
Regression, Logistic Regression, Normal Distribution, Binomial Distribution, poisson
regression, Analysis of covariance, Nonlinear least square, and Chi-Square Test

Unit-V Sentiment Analysis & Time Series

Introduction to Text Mining, Introduction to Sentiment, Setting up API Bridge, between R


and Twitter Account, Extracting Tweet from Twitter Acc, Scoring the tweet, Time Series
data, Time Series variables, Different components of Time Series data, Visualize the
data to identify Time Series Components, Implement ARIMA model for forecasting,
Decision Tree.

Text Books:

1. Cathy O’Neil, Rachel Schutt, Doing Data Science, Straight Talk from The
Frontline. O’Reilly, 2013.
2. Internet of Things (A Hands-on-Approach) , Vijay Madisetti , Arshdeep Bahga,
University Press, First Edition, 2014.
3. Hassan, Qusay F., ed. Internet of things A to Z: technologies and applications.
John Wiley & Sons, 2018.

Reference Books:

1. Buyya, Rajkumar, and Amir Vahid Dastjerdi, eds. Internet of Things: Principles
and paradigms. Elsevier, 2016.
2. Avesand, S., Karnouskos, S., Boyle, D., Mulligan, C., Tsiatsis, V., Holler, J. (2014
). Internet of Things. Netherlands: Elsevier Science.
3. Irizarry, Rafael A.. Introduction to Data Science: Data Analysis and Prediction
Algorithms with R. United States: CRC Press, 2019.

*****

12. Syllabus of Discipline Specific Electives

143
Course : Data Warehouse and Data Mining
Course Code : MCA-402(A) Course Credits : 04

Need of the subject and justification:


A data warehouse is a system that stores data from a company’s operational
databases as well as external sources. Many global corporations have turned to
data warehousing to organize data that streams in from corporate branches and
operations centers around the world. It’s essential for IT students to understand
how data warehousing helps businesses remain competitive in a quickly evolving
global marketplace.

Objectives:
● To understand data warehouse concepts, architecture, business analysis and
tools.
● To understand data pre-processing and data visualization techniques.
● To study algorithms for finding hidden and interesting patterns in data.
● To understand and apply various classification and clustering techniques
using tools.

Pre-requisites: Database
Pedagogical teaching and learning methods:

● At the start of course, the course delivery pattern, prerequisite of the subject
will be discussed
● Lectures will be conducted with the aid of multimedia projector, white board,
online mode etc.
● Two internal tests (10 for each) will be conducted as a part of internal theory
evaluation.
● Attendance is compulsory in lecture which carries 05 marks in overall
evaluation.
● Assignments/Surprise tests/Quizzes/Seminar/tutorial will be conducted having
a share of 15 marks in the overall internal evaluation.
● Experiments shall be performed in the laboratory related to course .

Course outcomes:
Upon completion of the course, the students should be able to:

144
● Design a Data warehouse system and perform business analysis with OLAP
tools.
● Apply suitable pre-processing and visualization techniques for data analysis

● Apply frequent pattern and association rule mining techniques for data
analysis
● Apply appropriate classification and clustering techniques for data analysis

Unit I : Data Warehousing, Business Analysis and On-Line Analytical Processing


(OLAP)
Basic Concepts – Data Warehousing Components – Building a Data Warehouse –
Database Architectures for Parallel Processing – Parallel DBMS Vendors –
Multidimensional Data Model – Data Warehouse Schemas for Decision Support,
Concept Hierarchies -Characteristics of OLAP Systems – Typical OLAP Operations,
OLAP and OLTP.

Unit II: Introduction to Data Mining Systems


Knowledge Discovery Process – Data Mining Techniques – Issues – applications- Data
Objects and attribute types, Statistical description of data, Data Preprocessing –
Cleaning, Integration, Reduction, Transformation and discretization, Data Visualization,
Data similarity and dissimilarity measures.

Unit III : Frequent Pattern Analysis


Mining Frequent Patterns, Associations and Correlations – Mining Methods- Pattern
Evaluation Method – Pattern Mining in Multilevel, Multi Dimensional Space – Constraint
Based Frequent Pattern Mining, Classification using Frequent Patterns.

Unit IV: Classification and Clustering


Decision Tree Induction – Bayesian Classification – Rule Based Classification –
Classification by Back propagation – Support Vector Machines –– Lazy Learners –
Model Evaluation and Selection-Techniques to improve Classification Accuracy.
Clustering Techniques – Cluster analysis-Partitioning Methods – Hierarchical Methods –
Density Based Methods – Grid Based Methods – Evaluation of clustering – Clustering
high dimensional data- Clustering with constraints, Outlier analysis-outlier detection
methods.

Unit V: Weka Tool

145
Datasets – Introduction, Iris plants database, Breast cancer database, Auto imports
database – Introduction to WEKA, The Explorer – Getting started, Exploring the
explorer, Learning algorithms, Clustering algorithms, Association–rule learners. Web
Data Mining, Data Visualization, Applications of Data Mining

Text Books:
1. Jiawei Han and Micheline Kamber, ―Data Mining Concepts and Techniques,
Third Edition, Elsevier, 2012.
2. Arun K. Pujari, “Data Mining Techniques” Universities Press
3. Mark Humphries, Michael W. Hawkins, Michelle C. Dy, “ Data Warehousing:
Architecture and Implementation”, Pearson

Reference Book:
4. Alex Berson and Stephen J.Smith, ―Data Warehousing, Data Mining & OLAP‖,
Tata McGraw – Hill Edition, 35th Reprint 2016.
5. K.P. Soman, Shyam Diwakar and V. Ajay, ―Insight into Data Mining Theory and
Practice, Eastern Economy Edition, Prentice Hall of India, 2006.
6. Ian H.Witten and Eibe Frank, ―Data Mining: Practical Machine Learning Tools
and Techniques, Elsevier, Second Edition.

*****

Course Code: Computer Applications and Entrepreneurship


Course Code: MCA-402(B) Course Credits: 4

Need of the subject and Justification:.

This course will provide an introduction of different applications of the computer and its
entrepreneurship. It makes students familiar with the usability of Computer knowledge in
business.

Objectives:

● Demonstrate understanding of the basics of computer applications.


● Explain the principles of operations for computers used in a particular application.
● Use computer terminology correctly in the context of a particular application.
● Use computer applications software to solve problems of entrepreneurship
● Understanding basic concepts in the area of entrepreneurship.

Pre-requisites:
Student must have studied basic course of Computer Application and also familiar with
the subject Entrepreneurship Development

146
Course outcomes:

● Explore various basic concepts of computer applications that can be used for
entrepreneurship.
● To understand the basics of the Internet.
● Create business documents with word processing software.
● Create business multimedia presentations with presentation software.
● Develop entrepreneurship skills to students.

Unit I: Basic Concepts

Characteristics of a Computer, Advantages of Computers, Limitation of Computers,


Types of Computers, Applications of computers, Hardware, Firmware, Liveware,
Software, System Software: Operating system, Translators, interpreter, compiler,
Overview of operating system, function of operating system, Application software:
General Purpose Packaged Software and tailor made software.

Unit II: Internet

Meaning of Internet, Growth of internet, Owner of Internet, Anatomy of Internet, Net


Etiquette, World Wide Web, Internet Protocols, Usage of Internet to society, Search
Engines.

Unit III: Word Processing

Introduction to word Processing; Word processing concepts, Working with word


document, Opening an existing document/creating a new document; Saving,
Selecting text, Editing text, Finding and replacing text, Formatting text, Bullets
and numbering, Tabs, Paragraph Formatting, Page Setup

Unit IV: Spreadsheet and its Business Applications

Spreadsheet concepts; Creating a workbook, saving a workbook, editing a


workbook, inserting, deleting worksheets, entering data in a cell, formula Copying,
Moving data from selected cells, Handling operators in formulae: Inserting Charts-
LINE, PIE, BAR, Mathematical ROUND ALL, SUM, SUMIF, COUNT, COUNTIF ;
Statistical – AVERAGE, MAX, MIN, STDEV, FREQUENCY, INTERCEPT, SLOPE.;
Financial - PMT, PPMT, IPMT; Logical - IF, AND, OR

Unit V: Presentation Software and its Business Applications

147
Creating a presentation; Editing, Sorting, Layout, Set-up row, Rehears timing Loan
& Lease statement; Ratio Analysis, Graphical representation of data Payroll
statements: Frequency distribution. Cumulative and calculation of Means, Mode and
Median; Regression

Text Book

1. Sanjay Saxena, A First Course in Computers, Vikas Publishing House, New Delhi
2. Pradeep K. Sinha and Preeti Sinha, Foundation of Computing, , BPB, Publication.
3. Deepak Bharihoka, Fundamentals of Information Technology, Excel Book,New Delhi

Reference Book
1. V. Rajaraman, Introduction to Information Technology, PHI. New Delhi
2. R. Hunt, J. Shelley, Computers and Commonsense, Prentice Hall of India New Delhi
3. Leon, M. Leon, Fundamentals of Information Technology, Leon Vikas, (4) Software

*****

Name of the Course: Android Application Development


Course Code: MCA 402(C) Course Credits: 4

Need of the subject and Justification:


Android is the most popular mobile operating system of today. Android application
development course is therefore designed to enable the diploma information
technology students to build mobile applications on this platform. This course covers
the basics of Android along with required programming codes for developing
necessary programming skills for mobile applications. Thus, this course is an
important course for IT students with possibilities of self-employment.
Objectives:
To enable the students to learn recent development in smart gadgets and practice in
Android Mobile Application Development and publishing into the Android
Marketplace.
Pre-requisites: Familiarity with java programming.

Course outcomes:
● On completion of this course, the student will be able to:
● Understand the concept of open-source mobile development
● Describe Android architecture framework.
● Design Android UI Layout
● Develop event driven programs.
● Develop applications using menus and dialog boxes

148
Syllabus
Unit-I: Mobile Computing
Advances in Hardware and Software,Web and Native Applications, Wearable gadgets,
IoT, Mobile operating Systems, Types of Mobile Application, Android: History of
Android, Different types of Android devices, OSS, OS licenses, OHA, Android Versions
and Handset Compatibility, Prerequisites to learn Android, Android Features, Android
Architecture: Android Stack, Linux Kernel, Android Runtime Application Framework,
Dalvik VM, Android emulator

Unit-II: Android Programming


Java language basics, Object Oriented Concepts in Java, packages in Android, Android
development setup: Java, Android Studio, Eclipse, ADT, Android SDK, Apache, tomcat
server, integration and configuration, AVD Creation, APIs, android application structure,
A Simple program, executing on emulator and mobile phone,.apk file, splash screen,
toast, uses permissions, R.java, Resources, Android Manifest.xml

Unit- III: Android Components


Activity, activity lifecycle, intents, fragment, service API, BroadcastReceivers, Content
Providers, Intents. Threads, AsyncTask, Widgets. Android User Interface: Types of
Views and Layouts, Units of measurement [px, dp, dip,sp and px],handling Images. UI
and InputControls: Buttons, Text Fields, Checkboxes, alert dialogs, Spinners, rating bar,
progress bar, SQLite, Example Database applications, data analysis and creating
interactive reports.
Unit-IV: Input Events
Event Listeners, Event Handlers, Touch Mode, Handling Focus. Information sharing and
security, Example Applications: Camera, Wi-Fi, Bluetooth, Gallery, GPS, Web view and
web services. Menus: Options Menu, Context Menu, Popup Menu, Menu Groups.
Action Bar: Action Items, Navigating, Action View, Action Provider, Navigation Tabs,
Dropdown Navigation, Styling the Action Bar. Settings and preferences, Dialogs,
Notifications, Alarms, Using Search feature Drag and Drop, Accessibility, Custom
Components. Advanced UI and Complex UI.

Unit V Advanced Android Programming


XML, JSON, CRUD. GPS, Maps, Location based services Telephony API. Using NDK
and ADK. Web Services, SOAP, REST. Example applications for Client Server
architecture, GPRS, HTTP, Android P2P Communication, instant messaging, Using
Internal and external storage. Multimedia: Handling Audio and Video files, Animation,
Games. Applications for Google Services

Text books:

149
1. Professional Android 2 Application Development Reto Meier Wiley India Pvt Ltd
2. Beginning Android Mark L Murphy Wiley India Pvt Ltd
3. Professional Android Sayed Y Hashimi and Satya Komatineni Wiley India Pvt Ltd

Reference Books:

1. Android Studio Development Essentials by Neil Smyth


2. The Definitive Guide to SQL Lite by Michael Owens
*****

Name of the Course: Digital Image Processing and Pattern Recognitions

Course Code: MCA-403(A) Course Credits: 04

Pre-requisites: None. This is an introduction to the subject of digital image processing


and pattern recognitions, and should be approachable by most Post graduates.

Objectives:

● To introduce the concepts of digital image processing.


● To make them aware above

Need of the subject and Justification:

The Subject will cover techniques for digital image processing, and finally also introduce
image analysis techniques in the form of image segmentation, etc.

Course outcomes:

● The students would be encouraged to develop the image processing tools from
scratch, rather than using any image processing library functions.
● It is helpful to carry out research.

Unit-I: Introduction to Digital Image and Image Restoration

Introduction – Origin – Steps in Digital Image Processing – Components – Elements of


Visual Perception – Image Sensing and Acquisition – Image Sampling and Quantization
– Relationships Between Pixels, Elements of Digital Image Processing, Digital Image,
File formats, Raster and Vector Form.

150
Image Restoration, Importance, Basic Framework, Interactive Restoration, Image
deformation and geometric transformations, image morphing, Restoration techniques,
Noise models.

Unit –II: Fundamental of the Image Enhancement

Introduction to Spatial Domain: Gray Level Transformations – Introduction to Histogram


Processing, Smoothing and Sharpening Spatial Filtering.

Fundamental of Frequency Domain: Introduction to Fourier Transform –with Basics


Filters – Ideal, Butterworth And Gaussian Filters.

Unit-III : Basics of the Image Compression, Redundancies, Image compression


models, Error free Compression, lossy compression, Image compression standards.

Morphological Image Processing and Image Segmentation: Basics, Structuring E,


Erosion, Dilation, Opening, Closing, Hit-or-Miss Transform, Boundary
Detection,thinning,Image Segmentation: Boundary detection based techniques

Trends in DIP: Introduction to Biometric System and Recognition, Biomedical and


Geospatial image processing.

Unit- IV: Essential of Pattern Recognitions

Introduction to pattern recognition, features and feature vectors, concepts of learning:


supervised, unsupervised and reinforced. Basic concepts of clustering and
classification, classifiers: based on Bayesian decision theory, perceptron model, artificial
neural networks, support vector machine, nearest neighbours. Principal component
analysis and Linear Discriminant analysis, Expectation Maximization (EM), Hidden
Markov Models.

Unit-V: Fundamentals of the Non-Parametric

Density Estimation, Parzen window method, Probabilistic Neural Network (PNN), K-


Nearest Neighbor, Estimation and rules, Nearest Neighbor and Fuzzy Classification,
Linear Discriminant function-based Classifiers: Perception, Support Vector Machines
(SVM).

Text Books:
1. Rafael C. Gonzales, Richard E. Woods, “Digital Image Processing”, Third
Edition, Pearson Education, 2010.
2. R.O.Duda, P.E.Hart and D.G.Stork, “Pattern Classification 2nd Edition”, John
Wiley, 2007

151
3. Christopher M. Bishop, “Neural Network for Pattern Recognition”, Oxford Ohio
Press.
References:
1. Rafael C. Gonzalez, Richard E. Woods, Steven L. Eddins, “Digital Image
Processing Using MATLAB”, Third Edition Tata Mc Graw Hill Pvt. Ltd., 2011.
2. Anil Jain K. “Fundamentals Of Digital Image Processing”, PHI Learning Pvt. Ltd.,
2011.
3. Willliam K Pratt, “Digital Image Processing”, John Willey, 2002.
4. Malay K. Pakhira, “Digital Image Processing And Pattern Recognition”, First
Edition, PHI Learning Pvt. Ltd., 2011.
5. E. Gose, R. Johansonbargh, “Pattern Recognition and Image Analysis”, PHI
4. EthenAlpaydin, “Introduction to Machine Learning”, PHI
5. SatishKumar,“Neural Network‐ A Classroom Approach”, McGraw Hill.
6. Dr. Rao&Rao,Neural Network & Fuzzy Logic
7. S.Theodoridis and K.Koutroumbas, “Pattern Recognition”, 4th Ed., Academic
Press.
8. C.M.Bishop, “Pattern Recognition and Machine Learning”, Springer, 2006
*****

Name of the Course: Advanced Cyber Forensics and IT Security

Course Code: MCA-403(B) Course Credits: 04

Pre-requisites: Basic knowledge of Internet and Programming Skills.

Objectives:

● To introduce the Concepts of Cyber Forensics Process and make them aware of the
domain.
● To make aware of the land of Cyber -crimes, Online Frauds and law enforcements in
the era of 21st Century.

Need of the subject and Justification:

152
The advancement in the digital era, increasing the rate of Cyber Crimes and hacking
events in all types of digital assets are happening around the globe so that this subject
will address the Cyber forensics standards and it helps students to understand latest
threats and Vulnerabilities.

Course outcomes:

● After learning this course students should be aware of all Cyber Forensic domains
and insights of cybercrimes and IT law enforcements.
● To prepare them to pursue advanced study and International Certification
programmes. Also, setting their minds to contribute to make safe cyberspace as well
as give the best in e-cyber Crime free world mission.

Syllabus

Unit-I: Essentials of Cyber Forensics

Introduction to Traditional Cyber Crime, Traditional problems associated with Cyber


Crime. Introduction to Identity Theft & Identity Fraud. Types of CF techniques -
Preparation for IR: Creating response tool kit and IR team. - Forensics Technology and
Systems - Understanding Computer Investigation – Data Acquisition tools.

Unit-II : Methodology: Advancement in Cyber Forensics Tools

Evidence Collection, Processing Crime and Incident Scenes, Working with Windows
and DOS Systems. Current Computer Forensics Tools: Software/ Hardware Tools.
Comparative Study on Advanced Cyber forensics tools.

Analysis and Validation: Validating Forensics Data, Data Hiding Techniques Performing
Remote Acquisition, Network Forensics, Email Investigations, Cell Phone and Mobile
Devices.

Unit –III: Skills an SoP of Incident Handling

What is Incident, Handling: digital crime scene, CoC (Chain of Custody), Computer
Security Incident, Types of incidents, Why necessary, Goals, Purpose, Organizational
Roles. Incident Response Methodology, Establishing Appropriate Policies &
Procedures, Creating Response, Toolkit, Establishing an Incident Response Team.

After detection of Incident, Initial Response and Forensic Image Analysis and Care:
Preparation of forensic image, Use of Tools, Care Evidence in view of admissible at

153
Court, Duplicate of a Hard Drive and Other digital gadgets. Facts and technical
testimony on any e-Crime as Cyber Experts and Analysts.

Unit –IV : IT Security

What is security, Attacks & Exploitation: Web Server, Router, Wireless Network
Testing, Buffer Overflows, Man in the Middle Attacks, Capturing of passwords on the
network. Internal Intrusion Techniques, External Intrusion Techniques, Scanning IP pool
and Discovering Devices, Verifying the Network & Security Devices.

Unit-V: Mobile forensics and IT Act, 2012

Mobile Forensic, Cell phone and mobile device forensics, Understanding Mobile device
forensics, Understanding acquisition procedure, Cell phone Crimes, SIM Architecture,
Data Storage, Data Extraction, Files Stored on SIM, Mobile Operating System, Cyber
law: Introduction to IT Act, 2012, awareness on cyber security with safety measures.

Text books:

1.Norbert Zaenglein, “Disk Detective: Secret You Must Know to Recover Information
From a Computer”, Paladin Press, 2000.
2. Bill Nelson,Amelia Philips and Christopher Steuart, “Guide to computer forensics and
investigations”, course technology, Cengage Learning; 4thedition, ISBN: 1-435-49883-
6, 2009.

Reference Books:

1. Kevin Mandia, Chris Prosise, “Incident Response and computer forensics”,Tata


McGrawHill, 2006.
2. Peter Stephenson, “Investigating Computer Crime: A Handbook for Corporate
Investigations”, Sept 1999.
3. Eoghan Casey, "Handbook Computer Crime Investigation's Forensic Tools and
Technology", academic Press, 1st Edition, 2001.
4. Skoudis. E., Perlman. R. Counter Hack: “A Step-by-Step Guide to Computer Attacks
and Effective Defenses”, .Prentice Hall Professional Technical Reference. 2001.

*****

Name of the Course: System software and compilers


Course code: MCA- MCA-403(C) Course credit: 4

Need of the subject and justification:

154
Learning Compilers gives both theoretical and practical knowledge that is crucial in
order to implement a programming language. It gives a level of understanding of a
language in order to make better use of the language (optimization is just one example).

Objectives:

The course deals with the system software and understanding about how to design the
compilers.

● Students understand the basic concepts of system software and how to work
with assembly language.
● To understand all phases of compiler and in-depth understanding about the
different parsing techniques.
● To understand the use of optimization techniques and some concepts related to
DAG representation of basic blocks.

Unit-I: Introduction to Systems Programming

Assembly language fundamentals. Assemblers-2-pass and single-pass. Macros and


macro processors. Loading, linking, relocation, program relocatability. Linkage editing.
Text editors. Programming Environments. Debuggers and program generators.
Introduction to Compilers, Compilation and Interpretation, Bootstrap compilers, phases
of compilation process, Lexical analysis, Syntax analysis, Intermediate code generation,
Code Optimization, Code Generation, Book keeping, Error handling.

Unit-II: Finite Automata and lexical analysis

Role of the lexical analyzer, A simple approach to the design of lexical analyzers,
Lexical errors, Input Buffering – Specification of Tokens, regular expressions, Finite
Automata, Form regular expressions to finite automata, Minimizing the number of state
of a DFA.

Unit-III: Syntactic specification of Programming Language

Context-free grammars, Derivations and parse trees, Capabilities of context free


grammars. Basic Parsing Techniques, Parsers, Shift-reduce parsing, Operator
precedence parsing, Top-Down parsing, Predictive parsers, Automatic Construction of
Efficient Parsers, LR parsers, canonical collection of LR(0) items, Constructing SLR
parsing tables, Constructing canonical LR parsing tables, Constructing LALR parsing
tables, Using Ambiguous grammars, An automatic parser generator, implementation of
LR parsing tables, Constructing LALR sets of items.
155
Unit-IV: Syntax-directed Translation

Syntax-directed translation schemes implementation of syntax directed translators,


Intermediate code, Postfix notation, Parse tree, Three address code: Addresses and
Instructions, quadruples, and triples, Brief discussion on symbol tables and of a Symbol
Table, Run-time storage administration: Static Versus Dynamic Storage Allocation,
Stack Allocation of Space.

Unit-V: Fundamental of optimizations

Introduction to code optimization Principle sources of optimization, Loop optimization,


Command Sub Expression Removal, Loop Invariant Code Motion, Strength Reduction,
local optimization, frequency reduction etc. DAG representation of basic blocks, A
simple code generator register allocation and assignment, Code generation from DAG,
peephole optimization.

Text Books:

1. Principles of Compiler Design By Alfred V. Aho, Jeffrey D. Ullman


2. Compilers-Principles, Techniques and Tools-A.V. Aho, R. Shethi and J.D.
3. Introduction to system software By D.M. Dhamdhe

Reference Book:

1. Compiler Design in C, Holub, Prentice-Hall, 1990.


2. Advanced Compiler Design and Implementation, Muchnick, Morgan and
Kaufmann, 1998.

*****

Name of the Course: Information Security and Cryptography


Course code: MCA-404(A) Course credit: 4

Need of the subject and Justification:.


Objectives:
Pre-requisites:
Pedagogical Teaching and Learning Methods:

Course outcomes:

Syllabus
Unit-I: Information Security

156
Understand the meaning of information security, Security models, security attacks,
security services and mechanisms, Understand security threats: Social Engineering
(Phishing), firewalls, buffer overflow, spoofing, Network Sniffing, Denial of services,
Botnet, Phishing in Online Social Media(OSM) & Identifying fraudulent entities in OSM

Unit-II: Symmetric Key Cryptography

Classical Encryption and Decryption Techniques, Stream Cipher, RC4, Block Ciphers,
Data Encryption Standard (DES), Triple DES, Modes of DES (ECB, CBC, CFB, OFB),
Advanced Encryption Standard, Confidentiality using symmetric encryption

Unit- III: Public key cryptography


Symmetric and asymmetric techniques (Diffie-Hellman, Needham-Schroeder), Key
distribution, RSA, Elliptic Curve Cryptography, Message Authentication and Hash
Function, Cryptographic hash function, Non Cryptographic Hash function, Birthday
problem, birthday attack, HMAC, CMAC

Unit-IV: Digital Signature

Digital signature schemes: RSA and DSS (Digital Signature Standard), Cryptanalysis,
Message integrity and authentication protocols: definition and applications, Collision
resistant hashing, authenticated encryption: security against active attacks.

Unit-V: Information Hiding

Principles of Steganography and Watermarking, basics of information hiding, data


hiding in raw (BMP) images - color representation (RGB, YUV, HSV), LSB (least
significant bit) embedding, attacking LSB embedding (Sample Pairs Analysis), Data
hiding in JPEG images, Steganalysis.

Recommended Books:

1. William Stallings, Cryptography and network security, Pearson Education.


2. Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone , Handbook of
Applied Cryptography, CRC Press.
3. Stefan Katzenbeisser and Fabien Petitcolas, “Information Hiding, Techniques for
Steganography and Digital Watermarking,” Artech House, 2000.

Name of the Course: Wireless Communications and Mobile Computing

Course Code: MCA-404(B) Course Credits: 4

Need of the subject and Justification:

157
This course will provide an introduction of Wireless communication. It makes students
familiar to students to understand about the contribution of Wireless Communication to
overall technological growth. It enables students to compare and contrast multiple
division techniques, mobile communication systems, and existing wireless networks

Objectives:

● Introduce the wireless communication and mobile communication standards.


● To provide an overview of Wireless Communication and its applications in
communication engineering.
● To understand the fundamentals of wireless sensor networks and its application
to critical real time scenarios.
● To study the various protocols at various layers and its differences with traditional
protocols.
● To Know the Network, Transport Functionalities of Mobile communication.

Pre-requisites:

Student must have studied one course in Network Communications

Course outcomes:

● Technical knowledge in building a WSN network.


● Analysis of various critical parameters in deploying a WSN
● Identify and discuss the fundamental operational and design problems of
wireless communication systems.
● Apply basic techniques to design radio links and basic communication systems.

● Develop abilities to setup experiments and analyse system performance using


wireless systems, hardware and software.
● Realize the role of Wireless Protocols in shaping the future Internet.

Syllabus

Unit I: Wireless Communication Fundamentals, and Architecture

Fundamentals of wireless communication technology, Electromagnetic spectrum radio


propagation, Frequency Spectrum, Multiplexing, Spread spectrum, Comparison of 2G,
3G, 4G; GSM Architecture, GSM Protocol architecture, Mobility Management,
158
Frequency Allocation, characteristics of wireless channels, modulation techniques,
multiple access techniques, wireless LANs, PANs, WANs, and MANs, Wireless Internet.

Unit II: MAC and Routing Protocols

MAC Protocols: Issues in designing MAC protocols for adhoc wireless networks,
classification of MAC protocols, MAC protocols for sensor network, location discovery,
S-MAC, IEEE 802.15.4.

Routing Protocols: Issues in designing a routing protocol, classification of routing


protocols, table-driven, on-demand, hybrid, flooding, hierarchical, and power aware
routing protocol.

Unit III: QoS

QoS and Energy Management: Issues and Challenges in providing QoS, classifications,
network layer solutions, QoS frameworks, need for energy management, classification,
transmission power, and system power management schemes

Unit IV: Introduction to Adhoc/sensor networks

Introduction to adhoc/sensor networks: Key definitions of adhoc/ sensor networks,


constraints and challenges, advantages of ad-hoc/sensor network, driving applications,
issues in adhoc wireless networks, issues in design of sensor network, sensor network
architecture, data dissemination and gathering, MANET, VANET

Unit V: Mobile IP, Network Layer, Transport Layer

IP and Mobile IP, Network Layer, Packet delivery and Handover Management, Location
Management, Tunneling and Encapsulation, Route Optimization, Mobile Transport Layer,
Conventional TCP/IP, Transport Layer Protocol, Snooping, Mobile TCP.

Text Books:

1. C. Siva Ram Murthy, and B. S. Manoj, "AdHoc Wireless networks ", Pearson
Education - 2008.
2. A.Goldsmith, Wireless Communications, Cambridge University Press, 2005.
3. T S Rappaport, "Wireless Communications: Principles & Practice", 2/E,
Pearson Education, 2002

159
Reference Books:

1. Feng Zhao and LeonidesGuibas, "Wireless sensor networks ", Elsevier


publication - 2004.
2. Jochen Schiller, "Mobile Communications", Pearson Education, 2nd Edition, 2003.
3. William Stallings, "Wireless Communications and Networks ", Pearson Education
– 2004
4. Asoke K Talukder, Hasan Ahmed,Roopa R Yavagal “Mobile Computing”, Tata
McGraw Hill Pub ,2nd Edition Aug – 2010.
5. JochenSchillar “Mobile Communications” Pearson Education second Edition.
6. Raj Kamal “Mobile Computing” Oxford Higher Education, Second Edition, 2012.

*****

Name of the Course: Trends in Soft Computing


Course Code: MCA-404(C) Course Credits: 4

Need of the subject and Justification:


Soft computing has vast applications in day to day life such as handwriting
recognition, data compression, engineering applications and so on.Soft
computing is used in calculating approximate solutions, whose results are inexact
but are usable.It is the only solution to problems which doesn’t have a
mathematical model. Soft computing forms the role model of the human brain as
it has the ability to learn and argue in an environment with impartial truth,
uncertainty and approximation.

Objectives:
With this course the student should be able to get an idea of
● Soft computing techniques and their applications

● Neural Networks, architecture, functions and various training and learning


algorithms
● Crisp set, fuzzy set and operations, Fuzzy Logic, Various fuzzy systems
and their functions.
● Genetic algorithms, its principle and applications, advances.

Pre-requisites:Set Theory, Logic, Mathematics

Course outcomes:
At the end of the course the student should be able to
160
● Learn about soft computing techniques and their applications

● Understand neural networks and its resemblance to biological neuron,


algorithms of ANN
● Identify the uses and applications of crisp and fuzzy systems, neuro fuzzy
systems
● Understand the genetic algorithms and their applications.

● Effectively use modern software tools to solve real problems using a soft
computing approach and evaluate various soft computing approaches for
a given problem.

Syllabus

Unit-I: Fundamentals of the Soft Computing and Neural Network

Introduction to soft computing, soft computing vs.hard computing, Various types of soft
computing techniques, applications of soft computing. Introduction to Neural Network:
Structure and Function of a single neuron: Biological neuron, artificial neuron, definition
of ANN, Difference b/w ANN and human brain, characteristic and applications of ANN,
single layer network, ANN architecture.

Unit- II:Learning and Training in ANN

Activation functions, Learning rules, Learning Paradigms- Supervised, Unsupervised


and reinforcement Learning, ANN training Algorithms-perceptrons, Training rules, Delta,
Back Propagation Algorithm, Multilayer Perceptron Model, Hopfield Networks,
Applications of Artificial Neural Networks.

Unit- III : Crisp sets and fuzzy sets

Basic concepts of crisp sets and fuzzy sets,Basic types of fuzzy sets, Fuzzy sets versus
crisp sets, Representation and extension, Principle for fuzzy sets, Operations on Fuzzy
sets, Classical logic and multivalued logics, Fuzzy propositions and reasoning

Unit-IV:Fuzzy systems and neuro fuzzy systems

Relevance of integration between fuzzy sets and neural networks – pros and cons,
Fuzzy neurons, Fuzzy neural networks, Neuro fuzzy systems, Fuzzy associative
memories

Unit- V:Genetic algorithm

161
Fundamental, basic concepts, working principle,encoding, fitness function, reproduction,
Genetic modeling: Inheritance operator, cross over, inversion & deletion, mutation
operator, Bitwise operator ,Generational Cycle, Convergence of GA, Applications &
advances in GA, Differences & similarities between GA & other traditional methods.

Text books:

1. S.N. Sivanandam & S.N. Deepa, Principles of Soft ComputingWiley Publications,


2nd Edition, 2011.
2. S, Rajasekaran & G.A. Vijayalakshmi Pai, Neural NetworksFuzzy Logic &
Genetic Algorithms, Synthesis & applications, PHPublication, 1st Edition, 2009.
3. J.S.R.Jang, C.T.Sun and E.Mizutani, “Neuro-Fuzzy and Soft Computing”, PHI,
2004, Pearson Education 2004.

Reference Books:

1. Timothy J.Ross, “Fuzzy Logic with Engineering Applications”, McGraw-Hill, 1997.


2. Davis E.Goldberg, “Genetic Algorithms: Search, Optimization and Machine
Learning”, Addison Wesley, N.Y.,1989.
3. S. Rajasekaran and G.A.V.Pai, “Neural Networks, Fuzzy Logic and Genetic
Algorithms”, PHI, 2003.

*****

13. Project Work Guidelines

Name of Course: - Major Project Work


Course Code: MCAL-411 Course Credits: 04

MCA PROJECT GUIDELINES

● Every Student has to do project work as a part of the curriculum in their 4th
semester.
● Every student is required to carry out Project work under the supervision of a
project Guide allotted to them.

162
● The student should be under continuous assessment of the project guide.
● The student is required to present the progress of the Project work during the
semester as per the schedule provided by the department.
● The students who are willing to do their project in any Company/Industry, are
required to submit the letter given by the concerned Company/Industry and
should be under continuous assessment of the guide allotted to them in the
Company/Industry and also the internal guide allotted to them in the department.
● All the students are encouraged to publish/present at least 1 paper on their work
in the UGC approved or any peer reviewed journal or any national or
international level conferences.
● All the students should strictly follow the attendance maintained by their
respective guides.
● All the students should follow the schedule given by the department and should
compulsory attend the reviews without fail.
● In case of any misconduct or irregularity observed, then supervisor and HOD’s
decision is final whether to allow the student for final viva or not.

OBJECTIVE

A Project Report is a documentation of a student's project work—a record of the


original work done by the student. It provides information on the student’s research work
to the future researchers. Department is committed to preserve a proper copy of the
student’s report for archiving and cataloguing it in the departmental Library, making it
available to others for academic purpose. Standardization, readability, conformance to
ethical norms, and durability are the four overriding criteria for an acceptable form of a
report. The objective of this document is to provide a set of guidelines that help a
computer science student to prepare the report to satisfy the above-mentioned criteria.

FEATURES

● The final copy of the report has to contain all the modifications/corrections made
by the internal guide and is to be submitted before the student successfully
defends the project in the viva voce examination.
● The report has to contain an appropriate copyright notice.
● The report has to include a declaration by the student to the effect that he/she
has not resorted to any unethical practice while carrying out the research work
and preparing the report.
● The contribution of the student must be explicit in the Introduction chapter of the
report.

163
PROJECT REPORT ORGANIZATION FORMAT

1. ARRANGEMENT OF :

The sequence in which the project progress report material should be arranged
and bound should be as follows:

1. Cover Page & Title Page


2. Certificates : a. Certificate from Project Coordinator

b. Certificate from Head of the Department

3. Declaration by the group members

4. Certificate by the Company

5. Acknowledgments

6. Table of

7. Abstract

. 8 Chapters

8.1 Introduction and H/W & S/W Requirements

8.2 Problem Identification & Feasibility Study

8.3 Requirement Analysis

8.4 Review of Previous work

8.5 Project Description

8.6 Design

i. Context Diagram

ii. Data Flow Diagrams

iii. Entity Relationship Diagrams

164
iv. Flowchart

v. Snapshots of the Project

vi. Database & Tables

8.7 Conclusion & Future work

9. References & Appendices

10. Bio data of each group member

2. PAGE DIMENSION AND BINDING SPECIFICATIONS:

The dimension of the project report should be in A4 size.

● Binding & Color code of the report: Hard Bound Report


● Background color of the cover page : Black Color
● Color of Text on the cover page: Golden/Any available
● The swipe of the report should contain the Title of the project and session.
(If possible)
● No of Copies to submitted: 1 per student
● No of Pages : 60 - 80 Pages

3. PREPARATION FORMAT:

3.1 Cover Page & Title Page – A specimen copy of the Cover page & Title page of
the project report are given .

3.2 Certificate – The Certificate shall be in double line spacing using Font Style
Times New Roman and Font Size 14, as per the given format.

165
3.3 Abstract – Abstract should be one page synopsis of the project report typed
double line spacing, Font Style Times New Roman and Font Size 14.

3.4 Table of – The table should list all material following it as well as any material
which precedes it. The title page and Certificate will not find a place among the items
listed in the Table of but the page numbers of which are in lower case Roman
letters. One and a half spacing should be adopted for typing the matter under this
head. (Specimen is given)

3.5 List of Tables – The list should use exactly the same captions as they appear
above the tables in the text. One and a half spacing should be adopted for typing the
matter under this head.

3.6 List of Figures – The list should use exactly the same captions as they appear
below the figures in the text. One and a half spacing should be adopted for typing
the matter under this head.

3.7 List of Symbols, Abbreviations and Nomenclature – One and a half spacing
should be adopted for typing the matter under this head. Standard symbols,
abbreviations etc. should be used.

3.8 Chapters –

i) Each chapter should be given an appropriate title.

ii) Tables and figures in a chapter should be placed in the immediate vicinity of the
reference where they are cited.

iii) Footnotes should be used sparingly. They should be typed single space and
placed directly underneath in the very same page, which refers to the material
they annotate.

166
3.9 Appendices – Appendices are provided to give supplementary information,
which is included in the main text may serve as a distraction and cloud the central
theme.

• Appendices should be numbered using Arabic numerals, e.g. Appendix 1,


Appendix 2, etc.

• Appendices, Tables and References appearing in appendices should be numbered


and referred to at appropriate places just as in the case of chapters.

• Appendices shall carry the title of the work reported and the same title shall be
made in the page also.

3.10 List of References –The listing of references should be typed 4 spaces below
the heading “REFERENCES” in alphabetical order in single spacing left – justified.
The reference material should be listed in the alphabetical order of the first author.
The name of the author/authors should be immediately followed by the year and
other details.

A typical illustrative list given below relates to the citation example quoted above.

REFERENCES

1. Ariponnammal, S. and Natarajan, S. (1994) ‘Transport Phonomena of Sm Sel –


X Asx’, Pramana – Journal of Physics Vol.42, No.1, pp.421-425.
2. Barnard, R.W. and Kellogg, C. (1980) ‘Applications of Convolution Operators to
Problems in Univalent Function Theory’, Michigan Mach, J., Vol.27, pp.81–94.
3. Shin, K.G. and Mckay, N.D. (1984) ‘Open Loop Minimum Time Control of
Mechanical Manipulations and its Applications’, Proc.Amer.Contr. Conf., San
Diego, CA, pp. 1231-1236.

167
3.10.1 Table and figures - By the word Table, is meant tabulated numerical data in the
body of the project report as well as in the appendices. All other non-verbal materials
used in the body of the project work and appendices such as charts, graphs, maps,
photographs and diagrams may be designated as figures.

******

168
Chapter-3: Doctor of Philosophy

PhD Course Work


Department of Computer Science
14.Introduction

The Ph.D programme in Computer Science imparts the knowledge, skills and attitude to
do world class research in the area of computer science. Doctorate students are
expected to publish their work in leading international journals and conferences
pertaining to their area of research. Research programmes leading to Ph.D. degrees
are the main thrust in the University. These programmes attract students from all
corners of the country, in addition to some international students.

The research programmes have a limited amount of course work, essentially to prepare
the student to carry out research, and to develop adequate breadth in the subject area.
The main emphasis is on the research work leading to a thesis. This involves delving in
depth into a research topic and includes grasping, evaluating and refining ideas,
mathematical rigor, problem formulation, literature survey, implementation
(programming) and performance evaluation. Typically students decide on their research
area and faculty advisor within the first year while doing course work. Thereafter, the
steps involved are finishing course work (to build research background and breadth),
thesis proposal defense, and thesis defense. Upon clearing the requirements and the
acceptance of their thesis proposal, the student works on the thesis, and its successful
defense leads to the degree.

Course Duration
Flexible (6 semesters minimum; 14 semesters maximum). Typical duration varies
between 4-6 years.

Eligibility
Master degree in Computer Science as MCA/M.Sc./MTech

15. Structure of the Curriculum

15.1. Foundation Courses


1. Research Methodology

169
2. Research and Publication Ethics
3. Foundation of Computer Science

15.2. Elective Courses

Select any two Electives from the following.

1. Advance Software Engineering


2. Software Reliability
3. Software Testing and Quality Assurance
4. Wireless Sensor Network
5. Fuzzy Logic and Artificial Neural Network
6. Ad-Hoc and Wireless Network
7. Wireless Technologies for IoT
8. Software Architecture and Project Management
9. Information Security
10. Information Hiding
11. Image Processing Techniques
12. Machine Learning
13. Trends in Digital Image Processing and Pattern Learning
14. Advanced Research in Cyber Security
15. Research in Computer Forensics
16. Security in computing
17. Advance Topic in Artificial Intelligence
18. Advanced Theory of Comuteronics
19. Advanced Cloud Computing and IoT
20. Advanced Computer Networks

More Elective Papers may be added from time to time depending upon the availability of
the Expertise in the Department and its suitability for the prospective researchers.

Structure of the Courses

SEMESTER-I

Subje Subject Name Credit Intern Exter Tota

170
ct al nal l
Code L+P+T Marks Mark Mark
s s

RCS- Research Methodology 4 40 60 10


101 0

RCS- Research and Publication Ethics 2 40 60 10


102 0

RCS- Foundation of Computer Science 4 40 60 10


103 0
RCS- Discipline Specific Elective (DSE) 3 40 60 10
104 Paper -I 0
RCS- Discipline Specific Elective (DSE) 3 40 60 10
105 Paper -II 0
Total 1 1 240 40
6 6 0
0

RCS- 101
RESEARCH METHODOLOGY

Unit-I
The literature review:
Importance of the literature review, Planning a literature search, Locating relevant
literature, Reliability of a source, Note making, Writing a survey and identifying the
problem. Planning and writing a research proposal: Research projects, Finding a
research problem, and Analysis of research ideas.

Unit-II
Planning a proposal:
Some general considerations, Proposal outline, Presentation and evaluation of
proposals, Students' outline of research work, Major funding agencies.
Presentations and lectures: Scientific meetings, General features of a Scientific
conference, Planning and delivering a presentation, Preparing good presentation slides,
Poster presentation in meeting, Students' seminar, Group and panel discussion,
Academic lectures.

Unit III
Collection and analysis of data:

171
Designing experiments for the purpose of testing research hypotheses, and evaluating
the results of those experiments, Analysis of data, Descriptive statistics, Inferential
Statistics, Some common statistical tests, Monitoring research, Records to be
maintained by researchers, hypothesis testing and inferences. Tables and illustrations:
Making of a table, Arrangement of data in tables, Illustrations, Graphs and visualization.

Unit IV
Information sources:
Tools for identifying literature, Types of publications, Indexing and abstracting services,
online library, Search engines, Citation indexes, Citations analysis, online searching
methods, initiatives for knowledge management.
References: How to cite and list correctly, Why citation of source materials is important,
Citation and listing system of documents, Common documentation styles, Citation of
sources in the text, Examples of writing references, Electronic and online Sources,
Some worked out examples for the prominent styles, Reference management
softwares, Selecting a journal, conference, Impact Factor of journal as per Journal
Citation Report, SNIP, SJR, IPP, Cite Score, Metrics: h-index, g index, i10 index,
altmetrics

Unit V
Scientific writing: Use of paragraphs and sentence checking. Abbreviations: Care with
numerals, SI unit rules and style conventions. Titles, Verbs, Tenses, The active or
passive voice,'articles', Prepositions, Relative pronouns, Transitional words and
phrases, Economy in words, Singular and plural words, Commonly confused words,
Choosing correct words and phrases, Punctuation. Preparation of thesis and research
papers: Structure of a thesis/research article/ review article, including title, introduction,
literature review, methods and materials, referencing. Editing and proofreading, use of
abbreviations.

References:
1. C. R. Kothari, Research Methodology: Methods and Techniques, New Age
International, 2004, ISBN 8122415229, 978812241522
2. Kumar R. Research Methodology: A Step by Step Guide for Beginners (2010)
3rd ed., Pearson Education. (ISBN-13: 978-1849203012)
3. Relevant study material from ACM, IEEE, Elsevier, Springer

RCS- 102
RESEARCH AND PUBLICATION ETHICS

● Syllabus will be as per the UGC Guideline.

172
RCS- 103

FOUNDATION OF COMPUTER SCIENCE

Unit 1
Fundamental of Computer
Characteristics of Computers, Evolution of computers, computer memory, computer
generations, Basic computer organization; System software, Application software,
introduction to operating system and characteristics, Windows, Linux. Computer
Network, Internet.

Unit 2
Basics Software
Microsoft office, Word and Excel, Uses of Word in research, Editor and Researcher
tools uses. Data Analysis using Ms-Excel. Research publishing tool- MS-Word, Adobe
acrobat, Grammarly, Graphics tool- MSExcel, MS-Power Point: Creating presentations
and adding effects.

Unit 3
Uses of Internet in Research
Internet, Characteristics, internet services, electronic mail, www, downloading, basic
security and safety measures. Article searching. Advanced Search in Google Scholar,
Google scholar, Shodhganga, ShodhGangotri, ResearchGate, SWAYAM, NPTEL,
UGC-CARE

Unit 4
Data Analysis
Data analysis software-SPSS, Definition, objectives and features, data analysis using
SPSS: Data entry creating variables, switching to data labels, data analysis:
Frequencies, recording into different variables, cross tabulations and layers. Core
calculation software, developing utility programs for research.

Unit 5
Understanding of Various Research Tools
Latex,- introduction and various features, Mendeley referencing manager characteristics
and uses, What is IPR? Characteristics and applications, Patent and filling procedure.

173
Communications and collaboration: Basics of electronic mail; Getting an email
account; Sending and receiving emails; Accessing sent emails; Using Emails;
Document collaboration; Instant Messaging; Netiquettes

Text Books

1. Grotenhuis, Manfred te, and Matthijssen, Anneke. Basic SPSS Tutorial. United
States, SAGE Publications, 2015.

2. Raubenheimer, Jacques. Mendeley: Crowd-sourced Reference and Citation


Management in the Information Era. United Kingdom, True Insight Publishing, 2014.

3. Goel, Anita. Computer Fundamentals. India, Pearson Education, 2010.

4. Maidasani, Dinesh. Learning Computer Fundamentals, Ms Office and Internet &


Web Tech.. India, Laxmi Publications, 2005.

Reference Books

1. Wishnietsky, Dan H.. Internet Basics: An Educator's Guide to Traveling the


Information Highway. United States, Phi Delta Kappa Educational Foundation, 1997.

2. McCormick, Keith, and Salcedo, Jesus. SPSS Statistics for Data Analysis and
Visualization. Germany, Wiley, 2017.

174
RCS- 104
ELECTIVE PAPER
ADVANCED SOFTWARE ENGINEERING

UNIT-I
Software Engineering: Review of software engineering, Key concepts, Classical SDLC
model of software engineering, COTS, RUP, Rapid Application Development, Agile
methods, Extreme programming. Advanced concepts of software engineering:
Component based software engineering, Aspect oriented software engineering, Service
oriented software engineering, Object oriented software engineering. Software project
management: Introduction to software project management, Project managers roles and
responsibilities, Project planning.

UNIT -II
Requirement Engineering: Introduction to requirement engineering, Importance and
challenges in requirement engineering, Success factors of requirement engineering,
Requirement engineering framework, Characteristics of requirements, Issues and
problems in requirement elicitation, Trends and challenges of requirement elicitation,
Techniques and approaches of requirement elicitation, Role of soft skills in requirement
analysis, Requirement reuse, Requirement verification & validation. Specification of
requirement models: Characteristics of SRS, Components of SRS, Specification
language, Structure of requirement document, Guidelines for writing SRS. Requirement
Prioritization: Aspects of prioritization, Prioritization techniques, Requirement
negotiation, Ambiguity in requirement engineering.

UNIT-III
Software Design: Design principles, Software design process, Design qualities, Design
patterns. Design practices: Incremental design, Structured analysis and structured
design, Jacksons structured programming, Introduction to object oriented design.
Software visualization: Introduction and challenges, Static visualization, Dynamic
program visualization, Evaluating visualizations, Data visualization.

UNIT –IV
Software Testing: Terminology, Life cycle, Methodology, Types of testing, Test
planning, Static testing, Black box testing, White box testing and their types, Model for
software testing, Unit testing, Integration testing, System and Acceptance Testing.
Object oriented testing: Object oriented testing model, Object oriented software test
strategy. Software security and risk management: Fundamentals of software security
and risk management, Reactive vs. proactive risk strategies, Software risks, Risk
identification, Risk projection, Risk refinement, RMMM and RMMM Plan.

UNIT- V
Introduction to Software Quality: Concepts of quality, perspectives and expectations,
Quality Framework. Quality assurance: Classification, Quality assurance activities and
techniques. Quality models: McCall’s model, Bohem’s model, Dromey’s model, FURPS
Model, ISO9126 model, Cost of quality, Software quality factors, Quality control, CMMI

175
framework. Reengineering: Business process reengineering, Software reengineering,
Reverse engineering, Restructuring, Forward reengineering.

REFERENCES:
1. ‘Software Engineering - A practitioner’s Approach’, Roger S. Pressman, 7 editions,
McGraw-Hill International Edition.
2. ‘Software Engineering’, Sommerville, 9th edition, Addison-Wesley Publication.
3. ‘Software Engineering’ K.K. Agarwal & Yogesh Singh, New Age International
Publication.
4. ‘Software Engineering: An Engineering approach’, James F. Peters, Witold Pedrycz,
Wiley Publication. 5. ‘Software Engineering Principles and Practice’, Waman S
Jawadekar, The McGraw -Hill Publishing Co. Ltd.
6. ‘Software Engineering: Theory and Practices’, S. L. Pfleeger, Atlee, Pearson
Education.
7. ‘Interaction Design beyond Human-Computer Interaction’, Preece J., Rogers Y., and
Sharp H., 2nd Edition, Wiley Publication.

RCS- 104

ELECTIVE PAPER
SOFTWARE RELIABILITY

UNIT-I
Reliability Fundamentals: Need for Reliability Engineering, Definition, Causes of
Failures, Catastrophic Failures and Degradation Failures, Characteristic Types of
Failures, Useful Life of Components, Exponential Case of Chance Failures, Reliability
Measures, Failure Data Analysis.
Reliability Mathematics: Probability Theory, Random Variables, Discrete Distributions,
Continuous Distributions, Stochastic Processes, Markov Chains.

UNIT-II
Reliability Analysis of Series Parallel Systems: Reliability Block Diagrams, Series
Systems, Parallel Systems, Series Parallel Systems, Open and Short Circuit Failures,
Standby Systems.
Reliability Analysis of Non-Series Parallel Systems: Path Determination, Boolean
Algebra Methods, A Particular Method, Cut Set Approach, Delta Star Method, Logical
Signal Relations Method, Bayes Theorem Method.

UNIT-III
Reliability Prediction: Purpose, Classification, General Requirements, Prediction
Methodologies, Software Prediction, Packages, Role and Limitation of Reliability
Prediction.

176
Reliability Allocation: Subsystems Reliability Improvement, Apportionment for New
Units, Criticality, Redundancy, Techniques for Reliability Optimization, Signal
Redundancy, Time Redundancy, Hardware Redundancy.
Maintainability and Availability: Forms of Maintenance, Measures of Maintainability
and Availability, Maintainability Function, Availability Function, Two Unit Parallel System
with Repair, Preventive Maintenance, Provisioning of Spares.

UNIT-IV
Reliability Testing: Types of Testing, Component Reliability Measurements,
Parametric Methods, Confidence Limits, Accelerated Testing, Equipment Acceptance
Testing, Reliability Growth Testing.
Software Reliability: Software Reliability and Hardware Reliability, Failures and Faults,
Software Reliability, Software Reliability Models, Execution Time Component, Calendar
Time Component.
Reliability Analysis of Special Systems: Phased Mission Systems, Common Cause
Failures, Reliability and Capacity Integration.

UNIT-V
Economics of Reliability Engineering: Effect of Reliability on Cost, Reliability
Achievement Cost Models, Reliability Utility Cost Models, Availability Cost Models for
Parallel Systems, Cost Effective Choice of Subsystems, Replacement Policies.
Reliability Management: Management Objectives, Top Managements Role in
Reliability and Quality Control Programs, Cost Effectiveness Considerations,
Management Matrix, Reliability and Quality Control Facilities and Equipment, Reliability
Data.

REFERENCES:

1. K.K. Aggarwal, “Reliability Engineering”, Springer Science & Business Media.


2. E Balaguruswami, “Reliability Engineering”, TMH.

RCS- 104

ELECTIVE PAPER
SOFTWARE TESTING AND QUALITY ASSURANCE

UNIT-I
Software Testing Fundamentals: Software Testing, Purpose, Goal and Objectives,
Effective Software Testing, Types of Testing, Principles of Software Testing, Testing
and Debugging, Psychology and Economics of Software Testing.
Software Testability: Testability Artifacts, Testability Facilitators, Estimation and
Analysis. Testing: Program Inspection, Walkthrough and Reviews. Principles of Static

177
Testing: General Methodology and Automated Techniques, Dynamic Testing

UNIT-II
Black Box Testing: Equivalence Partitioning, Boundary Value Analysis, Robustness
Testing, Syntax Testing, Finite State Testing. White Box Testing: White Box
Technique, Modeling, Basic Path Testing, Control Structure Testing, Mutation Testing,
Gray Box Testing.
Software Testing Strategies: Strategic Issues and Premises, Unit Testing, Integration
Testing, Validation Testing, Syntax Testing, Regression Testing, Software Component
Testing, Testing Real Time Systems, Models for Software Testing.

UNIT-III
System Testing: Recovery Testing, Security Testing, Stress Testing, Performance
Testing, Planning for Software Testing: Test Plan Specification, Leveled Test Plan,
Development of Test Plan, Master Test Plan, Phase wise Test Plan. Building Test
Cases: White Box Test Cases and Test Procedures, Test Data Selection and Outputs,
Black-Box Test Cases and Test Procedures, Testing Specialized Systems, Object
Oriented Testing: Pertinent Issues, Object Oriented Testing Model and Test Strategy.

UNIT-IV
Testing in Agile Environment: Features of Agile Development, Agile Testing, Extreme
Programming and Testing. Software Fault Tolerance: Objective and Need, Software
Failure, Principles and Techniques of Software Fault Tolerance, Fault based Testing
Methods.
Testing Measurements and Tools: Test Standards, Product Defects, Process
Measures. Test Tools: Test Planning and Management Tools.

UNIT-V
Quality Assurance and Standards: Quality Concepts, Quality Control, Quality
Assurance, Cost of Quality. Software Quality Assurance: Background Issues and
SQA Activities, Software Reviews, Formal Technical Reviews, Formal Approaches to
SQA. Software Reliab
ility: Measures of Software Reliability and Availability, Software Safety, ISO 9000
Quality Standards: ISO Approach to Quality Assurance System, ISO 9001 Standards,
SQA Planning Assurance, SQA Plan, Software Testing and QA, Configuration
Management.

REFERENCES:

1. Glenford J. Myers, Tom Badgett, Corey Sandler, “The Art of Software Testing”, John
Wiley & Sons, Inc.

178
2. K. Mustafa, R. A. Khan, “Software Testing: Concepts and Practices”, Alpha Science,
Oxford, UK.
3. R. A. Khan, “Software Quality: Concepts and Practice”, Alpha Science, Oxford, UK.
4. W.M Perry, “Effective Methods for Software Testing”, Wiley Publication.

RCS- 104
ELECTIVE PAPER
Ad-hoc and Wireless Network

Unit-I
INTRODUCTION
Fundamentals of Wireless Communication Technology -The Electromagnetic Spectrum
- Radio propagation Mechanisms - Characteristics of the Wireless channel mobile ad
hoc networks (MANETs), concepts and architecture of MANETs - Applications of Ad
Hoc network - Design Challenges in Ad hoc Networks.

Unit-II
MAC PROTOCOLS FOR AD HOC WIRELESS NETWORKS
Issues in designing a MAC Protocol - Issues in Designing a MAC Protocol for Ad Hoc
Wireless Networks - Design Goals of a MAC Protocol for Ad Hoc Wireless Networks -
Classification of MAC Protocols -Contention based protocols - Contention based
protocols with Reservation Mechanisms - Contention based protocols with Scheduling
Mechanisms - Multi channel MAC - IEEE 802.11.

Unit-III
ROUTING PROTOCOLS FOR AD-HOC WIRELESS NETWORKS
Introduction, Issues in Designing a Routing Protocol for Ad-hoc Wireless Networks;
Classification of Routing Protocols; Table Driven Routing Protocols; On-Demand
Routing Protocols, Hybrid Routing Protocols, Hierarchical Routing Protocols and Power-
Aware Routing Protocols. Transport Layer protocol for Ad hoc networks, Network
Security - Security in Ad Hoc Wireless Networks

QUALITY OF SERVICE AND ENERGY MANAGEMENT IN AD-HOC WIRELESS


NETWORKS: Introduction, Issues and Challenges in Providing QoS in Ad-hoc Wireless
Networks, Classification of QoS Solutions, MAC Layer Solutions, Network Layer
Solutions; Energy Management in Ad-hoc Wireless Networks.

Unit-IV
INTRODUCTION TO VEHICULAR AD HOC NETWORKS (VANETS): characteristics,
architecture of VANETs, Applications, Challenges, Applicability of MANET Routing to

179
Vehicular Environment, Routing protocols for VANET. Use of Infrastructure in VANETs,
Vehicular Network Simulators, Vehicular Mobility Models.

Unit-V
INTRODUCTION TO FLYING AD HOC NETWORKS (FANETS)
Characteristics, architecture of FANETs, Applications, Challenges, Applicability of
MANETs as well as VANETs routing in FANETs. Comparison FANETs with existing ad-
hoc networks such as MANETs, and VANETs. Recent advancements in FANETs with
simulation tools.

Text Books
1. C.Siva ram murthy,B.S. Manoj, “Ad hoc wireless networks-Architectures and
protocols” Pearson Education, 2005
2. Stefano Basagni, Marco Conti, “Mobile ad hoc networking”, Wiely interscience 2004
3. Charles E.Perkins ,”Ad hoc networking”, Addison Wesley,2001 References Books

Reference Books

1. Xiuzhen Cheng, Xiao Huang ,Ding Zhu DU ,”Ad hoc wireless networking”, Kluwer
Academic Publishers,2004
2. George Aggelou,”Mobile ad hoc networks-From wireless LANs to 4G networks,
McGraw Hill publishers, 2005
3. Research article related to VANETs and FANETs.

RCS- 104
ELECTIVE PAPER
Fuzzy Logic and Artificial Neural Network

UNIT I
Introduction
crisp sets an overview, the notion of fuzzy sets, Basic concepts of fuzzy sets, classical
logic an overview, Fuzzy logic. Applications of fuzzy logic: Washing Machine, Train
braking system, Sugar mill control, Industrial applications

UNIT II
Operations
Operations on fuzzy sets, fuzzy complement, fuzzy union, fuzzy intersection,
combinations of operations, general aggregation operations Crisp and fuzzy relations,
binary relations, binary relations on a single set, equivalence and similarity relations.

UNIT III
Compatibility
Compatibility or tolerance relations, orderings, Membership functions, methods of
generation, defuzzification methods. General discussion, belief and plausibility

180
measures, probability measures, possibility and necessity measures, relationship
among classes of fuzzy measures.

UNIT IV
Classical logic
An overview, fuzzy logic, fuzzy rule-based systems, fuzzy decision making, fuzzy logic
in database and information systems, fuzzy pattern recognition, fuzzy control systems.

UNIT V
Artificial Neural Networks
Fundamentals of neural networks, model of an artificial neuron, neural network
architectures, Learning methods, Taxonomy of Neural network architectures, Standard
back propagation algorithms, selection of various parameters, variations Applications of
back propagation algorithms.

TEXT BOOKS:
1. George J Klir and Tina A Folger, “Fuzzy Sets, Uncertainty and Information”, Prentice
Hall of India, 1998.
2. H.J. Zimmerman, “Fuzzy Set Theory and its Applications”, 4/e, Kluwer Academic
Publishers, 2001.
3. George Klir and Bo Yuan, “Fuzzy Sets and Fuzzy Logic: Theory and Applications”,
Prentice Hall of India, 1997.

REFERENCES BOOKS:
1. Timothy J Ross, “Fuzzy Logic with Engineering Applications”, McGraw Hill
International Editions, 1997.
2. Hung Nguyen and Elbert Walker, “A First Course in Fuzzy Logic, 2/e,, Chapman and
Hall/CRC,1999.
3. Jerry M Mendel, “Uncertain Rule-based Fuzzy Logic Systems: Introduction and New
Directions, PH PTR, 2000.
4. John Yen and Reza Lengari, “Fuzzy Logic: Intelligence, Control and Information”,
Pearson Education, 1999.

RCS- 104
ELECTIVE PAPER
Wireless Sensor Network

Unit-I
MAC & ROUTING IN AD HOC NETWORKS
Introduction, Issues and challenges in ad hoc networks, MAC Layer Protocols for
wireless ad hoc networks, Contention-Based MAC protocols, MAC Protocols Using
Directional Antennas, Multiple-Channel MAC Protocols, Power-Aware MAC Protocols,
Routing in Ad hoc Networks, Design Issues, Proactive, Reactive and Hybrid Routing
Protocols

Unit-II

181
TRANSPORT & QOS IN AD HOC NETWORKS
TCP‟s challenges and Design Issues in Ad Hoc Networks, Transport protocols for ad
hoc networks, Issues and Challenges in providing QoS, MAC Layer QoS solutions,
Network Layer QoS solutions, QoS Model

Unit-III
MAC & ROUTING IN WIRELESS SENSOR NETWORKS
Introduction, Applications, Challenges, Sensor network architecture, MAC Protocols for
wireless sensor networks, Low duty cycle protocols and wakeup concepts, Contention-
Based protocols, Schedule-Based protocols, IEEE 802.15.4 Zigbee, Topology Control,
Routing Protocols

Unit-IV
TRANSPORT & QOS IN WIRELESS SENSOR NETWORKS
Data-Centric and Contention-Based Networking, Transport Layer and QoS in Wireless
Sensor Networks, Congestion Control in network processing, Operating systems for
wireless sensor networks, Examples

UNIT -V
SECURITY IN AD HOC AND SENSOR NETWORKS
Security Attacks, Key Distribution and Management, Intrusion Detection, Software
based Anti-tamper techniques, Watermarking techniques, Defence against routing
attacks, Secure Ad
hoc routing protocols, Broadcast authentication WSN protocols, TESLA, Biba, Sensor
Network Security Protocols, SPINS

Text Books
1. C. Siva Ram Murthy and B.S. Manoj, Ad Hoc Wireless Networks – Architectures and
Protocols, Pearson Education
2. Holger Karl, Andreas Willing, Protocols and Architectures for Wireless Sensor
Networks, John Wiley &amp; Sons, Inc.,
3. Zhao and L. Guibas, &quot;Wireless Sensor Networks&quot;, Morgan Kaufmann,
San Francisco, 2004
4. C. S. Raghavendra, K.M.Shivalingam and T.Znati, &quot;Wireless Sensor
Networks&quot;, Springer, New York

References Books
1. Subir Kumar Sarkar, T G Basavaraju, C Puttamadappa, ―Ad Hoc Mobile Wireless
Networks, Auerbach Publications, 2008.
2. Carlos De Morais Cordeiro, Dharma Prakash Agrawal, ―Ad Hoc and Sensor
Networks: Theory and Applications (2nd Edition), World Scientific Publishing, 2011.
3. Waltenegus Dargie, Christian Poellabauer, ―Fundamentals of Wireless Sensor
Networks Theory and Practice, John Wiley and Sons, 2010
4. Xiang-Yang Li, “Wireless Ad Hoc and Sensor Networks: Theory and Applications,
1227 th edition, Cambridge university Press,2008.

182
RCS- 104
ELECTIVE PAPER
Wireless Technologies for IoT

UNIT-I
RF Basics
Radio Frequency (RF) Fundamentals: Introduction to RF &amp; Wireless
Communications Systems, RF and Microwave Spectral Analysis, Communication
Standards, Understanding RF &amp; Microwave Specifications. Spectrum Analysis of
RF Environment, Protocol Analysis of RF Environment, Units of RF measurements,
Factors affecting network range and speed, Environment, Line-of-sight, Interference,
Defining differences between physical layers- OFDM.

UNIT-II
Cellular Standards
Cellular carriers and Frequencies, Channel allocation, Cell coverage, Cell Splitting,
Microcells, Picocells, Handoff, 1st, 2nd, 3rd and 4 th Generation Cellular Systems
(GSM, CDMA, GPRS, EDGE, UMTS), Mobile IP, WCDMA

UNIT-III
WLAN
Wi-Fi Organizations and Standards: IEEE, Wi-Fi Alliance, WLAN Connectivity, WLAN
QoS &amp; Power-Save, IEEE 802.11 Standards,802.11- 2007,802.11a/b/g,
802.11e/h/I,802.11n

UNIT-IV
Wi-Fi
Hardware &amp; Software: Access Points, WLAN Routers, WLAN Bridges, WLAN
Repeaters, Direct-connect Aps, distributed connect Aps, PoE Infrastructure, Endpoint,
Client hardware and software, Wi-Fi Applications

UNIT-V
WSN & WPN
Wireless Personal Area Networks, Bluetooth, Bluetooth Standards, Bluetooth Protocol
Architecture, UWB, IEEE 802.15 standards, ZigBee, Sub1GHz, Sensor Networks,
coexistence strategies in Sensor Networks, Routing protocols in Wireless Sensor
Networks.

TEXT BOOKS:
1. Wireless Communications – Principles and Practice; by Theodore S Rappaport,
Pearson Education Pte. Ltd., Delhi
2. Wireless Communications and Networking; By: Stallings, William; Pearson Education
Pte. Ltd., Delhi
3. Bluetooth Revealed; By: Miller, Brent A, Bisdikian, Chatschik; Addison Wesley
Longman Pte Ltd., Delhi

183
4. Wilson, “Sensor Technology hand book,” Elsevier publications.
5. Andrea Goldsmith, “Wireless Communications,” Cambridge University Press

REFERENCE BOOKS:
1. Mobile and Personal Communications Services and Systems; 1st Edition; By: Raj
Pandya; PHI, New Delhi
2. Fundamentals of Wireless Communication by Tse David and Viswanath Pramod,
Cambridge University press, Cambridge
3. Mobile Communications; By: Schiller, Jochen H; Addison Wesley Longman Pte Ltd.,
Delhi
4. 3G Networks: Architecture, protocols and procedures based on 3GPP specifications
for UMTS WCDMA networks, By Kasera, Sumit, Narang, andNishit, TATA MGH, New
Delhi
5. Wireless Sensor Networks: information processing by approach, ZHAO,FENG,
GUIBAS and LEONIDAS J, ELSEVIER, New Delhi
6. Holger Karl and Andreas Wiilig, “Protocols and Architectures for WirelessSensor
Networks” John Wiley &amp; Sons Limited 2008.

RCS- 104
ELECTIVE PAPER
SOFTWARE ARCHITECTURE AND PROJECT MANAGEMENT

UNIT-I
Software Architecture: Introduction, Evolution of Software Development,
Fundamentals of Software Engineering, Elements of Software Architecture,
Architectural Description, Types of Architecture, The Software Product Life Cycle,
Management View, Software Engineering View, Engineering Design View, Architectural
View, Synthesize the View: CASE study of Architectures.

UNIT-II
The Architecture Design Process: Identifying Design Elements and their
Relationships, Evaluating the Architecture, Transforming the Architecture, Software
Design, Problems in Software Architectural Design, The Scope of Design, The
Psychology and Philosophy of Design, General Methodology of Design

UNIT-III
The Architecture Representation and Quality: Goals of Architecture Representation,
Foundations of Software Architecture Representation, Architecture Description
Languages, Architectural Level of Design, Architecting with Design Operators,
Functional Design Strategies, Importance of Assessing Software Architecture, How to
Improve Quality, Architecture Evaluation, Assessing Performance

UNIT-IV

184
Project Concepts and its Management: Project Life Cycle Models, ISO 9001 Model,
Capability Maturity Model Project, Software Management Process Framework: Phases,
Artifacts, Workflows, Checkpoints, Software Management Disciplines: Planning /
Project Organization and Responsibilities / Automation / Project Control, Modern Project
Profiles, Classification of Levels, Work Break Down Structure, Assessing Duration, Line
of Balance Technique.

UNIT-V
Project Evaluation and Emerging Trends: Strategic Assessment, Technical
Assessment, Cost Benefit Analysis, Cash Flow Forecasting, Cost Benefit Evaluation
Technique, Risk Evaluation, Software Effort Estimation, Emerging Trends: Import of the
Internet on Project Management, People Focused Process Models.

REFERENCES:
1. Stephen T. Albin, “The Art of Software Architecture: Design Methods and
Techniques”, John Wiley & Sons, 2003
2. Len Bass, Paul Clements, Rick Kazman, “Software Architecture in Practice”, Third
Edition, Addison-Wesley, 2003.
3. Richard N.Taylor, Nenad Medvidovic and Eric M.Dashofy, “Software Architecture,
Foundations, Theory and Practice”, Wiley 2010.
4. Bob Hughes and Mike Cotterell, “Software Project Management”, Second Edition,
1999.
5. Royce, W., “Software Project Management: A Unified Framework”, Addison-Wesley,
1998.

RCS- 104
ELECTIVE PAPER
INFORMATION SECURITY

Unit-I
Information Security

Understand the meaning of information security, Security models, security attacks,


security services and mechanisms, Understand security threats: Social Engineering
(Phishing), firewalls, buffer overflow, spoofing, Network Sniffing, Denial of services,
Botnet, Phishing in Online Social Media(OSM) & Identifying fraudulent entities in
OSM,Principles of Cryptography, Steganography and Watermarking

Unit –II
Symmetric Key Cryptography

Classical Encryption and Decryption Techniques, Stream Cipher, RC4, Block Ciphers,
Data Encryption Standard (DES), Triple DES, Modes of DES (ECB, CBC, CFB, OFB),
Advanced Encryption Standard, Confidentiality using symmetric encryption

185
Unit- III
Public key cryptography
Symmetric and asymmetric techniques (Diffie-Hellman, Needham-Schroeder), Key
distribution, RSA, Elliptic Curve Cryptography, Message Authentication and Hash
Function, Cryptographic hash function, Non Cryptographic Hash function, Birthday
problem, birthday attack, HMAC, CMAC

Unit-IV
Digital Signature

Digital signature schemes: RSA and DSS (Digital Signature Standard),Message


integrity and authentication protocols: definition and applications, Collision resistant
hashing, authenticated encryption: security against active attacks.

Unit-V
Cryptanalysis & Security Protocol
Cryptanalysis-Enigma, RC4 as used in WEP, Linear and Differential Cryptanalysis
attacks on RSA, Security protocol: Security Protocols-SSH, SSL, IPSec, Kerberos,
WEP, GSM

Recommended Books:

1. William Stallings, Cryptography and network security, Pearson Education.


2. Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone , Handbook of
Applied Cryptography, CRC Press.
3. Stefan Katzenbeisser and Fabien Petitcolas, “Information Hiding, Techniques for
Steganography and Digital Watermarking,” Artech House, 2000.

RCS- 104
ELECTIVE PAPER
INFORMATION HIDING
Unit-I
Information Hiding

Introduction, Background, and Applications of Information hiding: Data hiding,


applications of data hiding.Difference between Cryptography, Steganography and
Watermarking

Unit-II
Steganography

Frameworks of secret communication, Security of steganography systems, Information


hiding in noisy data, Adaptive & non-adaptive algorithms, Active and malicious
attackers, Information hiding in written text, Invisible communication.

186
Unit- III
Data hiding in still images

LSB encoding, BPCS steganography, Lossless data hiding, Data hiding by


quantification, Patchwork, Transform domain methods, Robust data hiding in JPEG
images, frequency domain watermarking Detecting malicious tampering, Robust
wavelet based watermarking, Kundur-Hatzinakos watermarking,

Unit IV
Data hiding in binary images & Steganalysis

Different Method for hiding in binary images: Zhao-kochmethod, Wu-Lee method, CPT
method, TP method, Data hiding in fax images

Steganalysis - Steganalysis introduction and terminology, Detecting hiding information,


Extracting hiding information, Disabling hidden information.

Unit-V
Watermarking

Introduction, Watermarking principals, Applications, Requirements and algorithmic


design issues, Evaluation and standards of watermarking. Fingerprinting: Introduction,
Terminology and requirements, Classifications, Research history, fingerprinting
schemes, Statistical fingerprinting, and Collusion-secure fingerprinting.

REFERENCES:

1. I.J.Cox, M.L.Miller, J.A.Bloom, J.Fridrich, T.Kalker, Digital Watermarking and


Stegonagraphy, Morgan Kaufman 2008.
2. F.Y.Shih, Digital Watermarking and Stegonagraphy Fundamentals and
Techniques, CRC press 2008.
3. Stefon Katzeubeisser, F.A.Petitolos, Information Hiding Techniques for
Stegonagraphy and Digital Watermarking, Aatech House London 2008.

RCS- 104
ELECTIVE PAPER
IMAGE PROCESSING TECHNIQUES

Unit-I
Digital Image Fundamentals
Introduction – Origin – Steps in Digital Image Processing – Components – Elements of
Visual Perception – Image Sensing and Acquisition – Image Sampling and Quantization
– Relationships Between Pixels, Elements of Digital Image Processing, Digital Image,
File formats, Raster and Vector Form.

187
Introduction to Image Restoration, Importance, Basic Framework, Interactive
Restoration, Image deformation and geometric transformations, image morphing,
Restoration techniques. Noise models.
Unit –II
Fundamental of the Image Enhancement
Introduction to Spatial Domain: Gray Level Transformations – Introduction to Histogram
Processing, Smoothing and Sharpening Spatial Filtering.
Frequency Domain: Introduction to Fourier Transform –with Basics Filters – Ideal,
Butterworth And Gaussian Filters.
Unit- III
Image Compression
Image Compression Fundamentals, Redundancies, Image compression models, Error
free Compression, lossy compression, Image compression standards.

Unit-IV
Morphological Image Processing and Image Segmentation
Basics, SE, Erosion, Dilation, Opening, Closing, Hit-or-Miss Transform, Boundary
Detection, Hole filling, Connected components, convex hull, thinning,Image
Segmentation: Boundary detection based techniques, Point, line detection, Edge
detection, Edge linking, local processing, regional processing, Introduction to wavelets.
Applications of Wavelet Transform.
Unit- V
Fundamentals of Pattern Recognition
Introduction to pattern recognition, features and feature vectors, concepts of learning:
supervised, unsupervised and reinforced. Basic concepts of clustering and
classification, classifiers: based on Bayesian decision theory, perceptron model, artificial
neural networks, support vector machine, nearest neighbours.
Text Books:
1. Rafael C. Gonzales, Richard E. Woods, “Digital Image Processing”, Third
Edition, Pearson Education, 2010.
2. R.O.Duda, P.E.Hart and D.G.Stork, “Pattern Classification 2nd Edition”, John
Wiley, 2007
3. Christopher M. Bishop, “Neural Network for Pattern Recognition”, Oxford Ohio
Press.
References:
1. Rafael C. Gonzalez, Richard E. Woods, Steven L. Eddins, “Digital Image
Processing Using MATLAB”, Third Edition Tata Mc Graw Hill Pvt. Ltd., 2011.
2. Anil Jain K. “Fundamentals Of Digital Image Processing”, PHI Learning Pvt. Ltd.,
2011.
3. Willliam K Pratt, “Digital Image Processing”, John Willey, 2002.
4. Malay K. Pakhira, “Digital Image Processing And Pattern Recognition”, First
Edition, PHI Learning Pvt. Ltd., 2011.

188
RCS- 104
ELECTIVE PAPER
MACHINE LEARNING
Unit- I
Introduction To Machine Learning

Concept of Machine Learning, Applications of Machine Learning, Key elements of


Machine Learning, Supervised vs. Unsupervised Learning, Statistical Learning:
Bayesian Method, The Naive Bayes Classifier, Decision Trees.

Unit-II
Regression

Linear Regression: Prediction using Linear Regression, Gradient Descent, Linear


Regression with one variable, Linear Regression with multiple variables, Polynomial
Regression, Feature Scaling/Selection. Logistic Regression: Classification using
Logistic Regression, Logistic Regression vs. Linear Regression, Logistic Regression
with one variable and with multiple variables, Optimization, Decision Trees vs Logistic
Regression

Unit-III
Neural Networks
Introduction, Model Representation, Gradient Descent vs. Perceptron Training,
Stochastic Gradient Descent, Multilayer Perceptrons, Multiclass Representation, Back-
propagation Algorithm and related Issues.

Unit-IV
Support Vector Machines

Knowing SVMs, SVM as Large Margin Classifier, Kernels, Using SVMs in Learning
complex nonlinear functions, Constrained Optimization, SVM utilization.

Unit-V
Introduction to Clustering
K-Means Algorithm, Random Initialization, Choosing the number of Clusters, Mixture
Models, Dimensionality Reduction and its application, Principal Component Analysis
(PCA). Error Analysis and Anomaly Detection: Utility of Error Analysis, Precision/Recall,
Error Metrics for Skewed Classes, Introduction of Anomaly Detection, Gaussian
Distribution, Anomaly Detection vs. Supervised Learning.

References:
1. Ethem Alpaydin, "Introduction to Machine Learning", 3rd Edition, The MIT Press.
2. Simon O. Haykin, "Neural Networks and Learning Machines", Pearson Education,
2016.
3. C. M. Bishop, "Pattern Recognition and Machine Learning", Springer, 2010.

189
4. Smola and Vishwanathan, "Introduction to Machine Learning", Cambridge University
Press, 2010.
5. T.M. Mitchell, "Machine Learning", McGraw Hill Education, 2017.
6. Andrew NG, "Machine Learning Yearning", Amazon.com Services LLC, Kindle
Edition, 2019.
7. The Nature of Statistical Learning Theory by V.N. Vapnik.

RCS- 104

ELECTIVE PAPER

TRENDS IN DIGITAL IMAGE PROCESSING AND PATTERN LEARNING

Unit-I: Essential of Digital Image Processing

Introduction to Image processing, Basics Steps of Fundamentals of Imaging, Imaging


systems, radiometric models, geometric models, sampling and quantization,
tessellation, image models; Image File Formats, Colour Maps and Tables. Image
Transforms: Fourier, Walsh, Haar.

Unit-II: Image Enhancements Approaches

Spatial Operations including point Processes (histogram equalization, specification),


windowing.Frequency Domain Operations for Noise removal, contrast enhancements
etc, Image Restorations: model estimation,Noise Modeling, Motion blur, iener, inverse
filter.Image compression: Lossless, lossy etc. Mathematical Morphology, Basic
Algorithms, Advanced Topics and Applications. Color Image Processing:
Fundamentals.

Unit-III: Geo-Special Image Processing

Introduction to Remote Sensing, Fundamentals of aerial photos and satellite image


interpretation; Types of imaging, elements of interpretation; Techniques of Visual
interpretation; Generations of Thematic maps.

Noises, Study of satellite image annotation, Demarcation of contours & watershed using
toposheets, Drainage Morphometric Analysis, Remote sensing applications: features
extractions from remote sensing data, Understanding of spectral response pattern of
different landforms. Image Interpretation and Analysis.Semantic Feature Extraction: An
Intro.

Unit-IV: Medical Image Processing

190
Introduction Medical imaging, Overview on Research Domains: Bio-Medical Image
processing tools, methodology, Data sets. Overview of Research working methodology.
Thresholding and Segmentation: Detection methods, optimal thresholding, multi-
spectral thresholding. Edge based segmentation, Region based segmentation,
Matching, Advanced optimal border and surface detection approaches.

Unit-V: Essential of Pattern Learning Recognitions

Define pattern recognition, Introduction, Gaussian model, discriminant functions,


Introduction to Parametric and Nonparametric techniques. Classifiers, classifier
performance, risk and errors; Supervised learning using parametric and nonparametric
approaches: ML estimation, clustering: the clustering concept, c-means.

Reference Book:

1. Digital Image Processing by Gonzalez and Woods, 3rd Edition, Addison-Wesley,


2008
2. Duda R O and P E Hart, Pattern classification and scene analysis, John Wiley &
Sons, NY 1973
3. Andrew R. Webb, Statistical Pattern Recognition, Second Edition, 2002, John
Wiley and Sons Ltd.
4. K.S.Fu, Syntactic pattern recognition and applications, Prentice Hall, NJ, 1982
5. T.Pavlidis, Structural pattern recognition, Springer-Verlag, NY, 1977

RCS- 104
ELECTIVE PAPER
ADVANCED RESEARCH IN CYBER SECURITY

Course Objective:

● To correctly define and cite appropriate instances for the application of computer
forensics correctly.
● To collect and analyze Cyber forensic evidence, concepts, algorithms, protocols,
tools, and methodology of Cyber Forensic Identify the essential and up-to-date.

Unit 1
Systems Vulnerability Scanning
Overview of vulnerability scanning, Open Port / Service Identification, Banner / Version
Check, Traffic Probe, Vulnerability Probe, Vulnerability Examples, OpenVAS,
Metasploit. Networks Vulnerability Scanning - Netcat, Socat, understanding Port and
Services tools - Datapipe, Fpipe, WinRelay, Network Reconnaissance – Nmap, THC-
Amap and System tools. Network Sniffers and Injection tools – Tcpdump and Windump,
Wireshark, Ettercap, Hping Kismet.

191
Unit 2
Network Defense tools:
Firewalls and Packet Filters: Firewall Basics, Packet Filter Vs Firewall, How a Firewall
Protects a Network, Packet Characteristic to Filter, Stateless Vs Stateful Firewalls,
Network Address Translation (NAT) and Port Forwarding, the basic of Virtual Private
Networks, Linux Firewall, Windows Firewall, Snort: Introduction Detection System.

Unit 3
Web Application Tools
Scanning for web vulnerabilities tools: Nikto, W3af, HTTP utilities - Curl, OpenSSL and
Stunnel, Application Inspection tools – Zed Attack Proxy, Sqlmap. DVWA, Webgoat,
Password Cracking and Brute-Force Tools – John the Ripper, L0htcrack, Pwdump,
HTC-Hydra.

Unit 4 :
Advanced Research Orientation

Foundations : Security Models, Formal Methods, Cryptography, Application Centric:


Secure information Sharing, Social Computing, Health Care, Data
Provenance,Technology Centric: Cloud Computing, Smart Grid, Trusted Computing,
Attack Centric Related works.

Unit 5
Introduction to Cyber Crime Investigation

Firewalls and Packet Filters,Password Cracking, Keyloggers and Spyware, Virus and
Warms, Trojan and backdoors,Steganography, DOS and DDOS attack, SQL injection,
Buffer Overflow, Attack on wireless Networks.

Reference Books:

1. Anti-Hacker Tool Kit (Indian Edition) by Mike Shema, Publication Mc Graw Hill.

2. Cyber Security Understanding Cyber Crimes, Computer Forensics and Legal

Perspectives by Nina Godbole and Sunit Belpure, Publication Wiley.

RCS- 104

ELECTIVE PAPER

SECURITY IN COMPUTING
Unit-I

Security Models and Assessment

192
Data Versus Information,Identification and Authentication Essentials, Access Control
and Access Control Structures, Security Policies Security Models and Confidentiality,
Organization Security Architecture, Risk Analysis, Vulnerability Analysis, Security Audits
and Risk Management, Security Assurance and Evaluation Criteria.

Unit-II
Network Security TCP/IP Security

PPP, ECP. TLS EAP, DESE-bis, Firewall, IP Sec Architecture and Protocols, Dial in
Operations, RAS PAP, CHAP, RADIUS, DIAMETER, Key distribution, IKE, Certification
and Management, Intrusion Detection Systems, VLANs and VPNs, Email security,
Network Attacks and DNS protection, DMZ , Proxy services.

Unit-III
Operating System and Application Security

PGP, Authentication, Processes, Files, Users, Buffer Overflow Attacks, Kernel Flaws,
Logging, Backups, Access Control Systems using Swipe Cards, RFID, Biometrics.

Unit-IV
Techniques Encryption Cryptography Techniques

Block ciphers & Data encryption standards, Public key encryption and hash functions,
Authentication applications.

Unit V
Security Evaluation

Practices and Incident Response Security Audit, Network Audit, Security Policy, Risk
Mitigation, Computer Forensics

Text Books :

1. William Stallings, Cryptography and network security principles and practices,


Pearson Education, Fourth Edition , 2007

2. Douglas R.Stinson, Cryptography Theory and Practice, CRC Press, Second Edition,
2005.

References:

1. Matt Bishop, Computer Security Art & Science, Pearson Education, second Indian
reprint 2005.

2. Charlie Kauffman, Radia Perlman, Mike Speciner Network Security Priavte


Communication in Public World, Pearson Education, 2005

193
3. IEEE Transactions on Information Forensics & Security ( IEEE Journal ACM
Transactions on Information and System Security (TISSEC)), International Journal of
Information Security: By Springer.

RCS- 104

ELECTIVE PAPER

Research in Computer Forensics

Unit-1 Computer forensics analysis

Determining what data to collect and analyze. Addressing data hiding techniques,
Hiding partitions, Marking bad clusters, Bit –shifting, using steganography to hide data,
Examining Encrypted files, Recovering Passwords, Performing Remote Acquisitions,
RemoteAcquisitions with Runtime Software.

Unit-2 Recovering graphics files

Understanding vector Graphics, Understanding graphics file formats .Lossless and


lossy compression. Identifying graphics file fragments, Repairing Damaged Headers,
Searching For and carving data from unallocated space. Understanding steganography
in graphics files. Using steganalysis tools. Understanding copyright issues with
graphics.

Unit-3 Virtual Machines, Network forensics, and Live Acquit ions

Performing live acquisitions, Performing a live acquisition in windows, Developing


standard procedures for network forensics, Reviewing network logs. Using network
tools, usingUnix/Linux tools. Using packet sniffers, examining the honey net projects.

Unit-4 E-Mail Investigation

Exploring the role of email investigation, Exploring the role of client and server in email,
Investigating E-mail crimes and violations, Examining E-mail Messages, Viewing E-mail
headers, Examing E-mail headers, Examining additional E-mail files. Tracing an e-mail
message.

Unit-5 Cell phone and mobile device forensics

Understanding mobile device forensics, Mobile phone basics, inside mobile devices,
insidePDAs, Understanding acquisition procedures for cell phones and mobile devices,
Mobileforensics equipment.

References:

1. Bill Nelson,Amelia Phillips,Christopher Steuart,”Guide to Computer Forensics


and Investigations”, Fourth Edition,Course Technology.

194
2. Angus M.Marshall, “Digital forensics: Digital evidence in criminal investigation”,
John –Wiley and Sons, 2008.

****************

195

You might also like