Screenshot 2023-07-05 at 6.57.53 PM
Screenshot 2023-07-05 at 6.57.53 PM
Screenshot 2023-07-05 at 6.57.53 PM
Contact
Evaluation Scheme
Course Course Hours
Course Title Credits
Category Code Course
L T P CIA ESE
Total
Theory
Design & Analysis of
C MCA4201 3 1 0 40 60 100 4
Algorithms
Data Communication and
C MCA4202 3 1 0 40 60 100 4
Networks
C MCA4203 Programming in PYTHON 3 1 0 40 60 100 4
Web Technologies and
C MCA4204 3 1 0 40 60 100 4
Application Development
Software Project
C MCA4205 3 1 0 40 60 100 4
Management
C Generic Elective I 3 1 0 40 60 100 4
Practical
Programming in
C MCA4251 0 0 4 40 60 100 2
PYTHON Lab
Web Technologies and
C MCA4252 Application Development 0 0 4 40 60 100 2
Lab
GP4201 General Proficiency - - - 100 - 100 1
Total 18 6 8 900 29
II Semester
Course Objective:
1. To know the importance of studying the complexity of a given algorithm.
2. To study various algorithmic design techniques.
3. To utilize data structures and/or algorithmic design techniques in solving new problems.
4. To know and understand basic computability concepts and the complexity classes P, NP, and NP-
Complete.
5. To study some techniques for solving hard problems.
Learning Outcome: Upon successful completion of the course the student will be able to:
1. Prove the correctness and analyze the running time of the basic algorithms for those classic
problems in various domains.
2. Apply the algorithms and design techniques to solve problems.
3. Analyze the complexities of various problems in different domains.
Course Contents:
Module Course Topics Hours Credits
Basic Concepts of Algorithms: Definitions; Explanation
& Scope, Time and Space Complexity; Asymptotic
15 Hours
I Notations (Growth of Functions); Pseudo Codes & Time 1
Complexity of Basic Control Structures, Recursive
Algorithms Complexity
Analysis of Data Structures: Elementary Data Structure;
Dictionaries & Hash Tables; Binary Search Tree; AVL
15 Hours
II Trees; Red Black tree; B-Trees; Binomial Heaps; 1
Fibonacci Heaps; Data Structures for Disjoint Sets;
Augmenting Data Structures
Advanced Design & Analysis Techniques
Dynamic Programming: Assembly Line Scheduling,
Matrix Chain Multiplications, Longest Common
Subsequence, Optimal Binary Search Tree, Activity
Selection Problem, Knapsack Problem; Greedy
Algorithms: Knapsack Problem, Huffman Codes, An 15 Hours
III 1
Activity Selection Problem, Task Scheduling Problem;
Back Tracking: Hamiltonian Circuit Problem; Subset-
Sum Problem: N-Queens Problem; Branch & Bound:
FIFO Branch-and-Bound Algorithm, Knapsack Problem,
Assignment Problem, Traveling Salesman Problem;
Amortized Analysis.
Analysis of Graph Algorithms: BFS & DFS; Minimum
Spanning Trees: Kruskal & Prim; Single Source Shortest
Path: The Bellman-Ford Algorithm, Dijkstra’s Algorithm;
All Pairs Shortest Path: The Floyd Warshall Algorithm; 15 Hours
IV 1
Maximum Flow: Ford-Fulkerson Method; NP
Completeness: Polynomial Time, NP-completeness,
NP- complete problems; String Matching; Approximation
Algorithms; Randomized Algorithms.
MCA4202: Data Communication and Networks
Course Objective:
1. To study the different aspects of data communication service integrated over the IP networks,
focusing on protocol design, implementation and performance issues.
2. To debate the current trends and leading research in the computer networking area.
Learning Outcome: Upon successful completion of the course the student will be able to:
1. Understand concepts data communication and signal transmission.
2. Different networking elements and protocols in each layer of references models gain the
knowledge of network deployment.
3. Select the transport protocol appropriate for a given application.
Course Contents:
Module Course Topics Hours Credits
Data Communication and Network Models: Data and
Signals: Analog and Digital, Transmission Digital Signals,
Noisy and Noiseless channel, Bandwidth and Throughput,
Attenuation and Noise; Digital and Analog Transmission:
Transmission modes, PCM, DM, AM, FM, PM; Multiplexing
and Spread Spectrum; Guided and Unguided Media; Switching;
I Modem; ISDN and PSTN; Introduction to Computer Network: 15 Hours 1
Introduction, Application of Network, Types of Network,
Network Protocols and Standards, Switched and Broadcast
Network; Topology; References Models: OSI Model, TCP/IP
Protocol Suite, Example of Networks
Suggested Readings:
1. Andrew S Tanenbaum, David. J. Wetherall, “Computer Networks”, Pearson Education,
5th Edition,
2. Behrouz A. Forouzan, "Data Communications and Networking", Tata McGraw-Hill,
Fourth Edition
3. Ying-Dar Lin, Ren-Hung Hwang, Fred Baker, “Computer Networks: An Open Source
Approach”, Mc Graw Hill Publisher, 2011
4. Dayanand Ambawade, Dr. Deven shah, Prof. Mahendra Mehra, “Advance Computer
Network”, Wiley India.
5. Todd Lammle, “CCNA Intro – Study Guide”, Sybex.
MCA4203: Programming in PYTHON
Course Objectives:
1. Appreciate the basic and advanced features of core language built-ins.
2. Handle and control system/OS level features.
3. Communicate using sockets, write client and server side scripts.
4. Design and implement basic applications with database connectivity.
Learning Outcome: Upon successful completion of the course the student will be able to:
1. Acquire programming skills in core Python.
2. Acquire Object Oriented Skills in Python.
3. Develop the skill of designing Graphical user Interfaces in Python
4. Develop the ability to write database applications in Python
Course Contents:
Module
Course Topics Hours Credits
Introduction to Python: Introduction to python ,History of
python, Installing python, Executing python programs,
Comments in python, Internal working of python, Python
Implementations, Difference between Python2 and
Python3, Indentation
Python character set, Tokens, Core Data Types: Integer,
Floating Point Number, Complex Number, Boolean Type,
String Type; print(), Assigning values to a variable, Multiple
I Assignments, input(), eval(), Formatting Number & String, 15 Hours 1
Python inbuilt mathematical function, ord and chr
Functions;
Python Operators & Expression: Types of operators;
Operator Precedence & Associativity;
Decision Statement: if, if-else, nested if, multiway if-elif-
else statement, conditional expression;
Loop Control Statement: while Loop, for loop, range(),
Nested Loops, break, continue, pass.
Functions: Syntax, use of function, return statement,
parameters & arguments: Required argument, Default
argument, Keyword Arguments, Variable length argument;
Scope of a variable, Recursive function, Lambda function,
Python Modules, Built-in Modules in Python: math,
II random, time & date module; 15 Hours 1
String: str class, index[] operator, Traversing: for & while
loop, Immutable strings, string operators: slicing, +, *;
String operations: comparison, format(), split(), Built-in
method: Testing string, search a substring, convert string
from one to another, stripping string, Formatting string;
Array: Creation, array(data_type, value), Adding elements,
Accessing elements, Removing elements, Slicing,
Searching element, Updating Array;
List: Creation, list(), Accessing Elements in List, Negative
List Indices , List Slicing[start:end], Built-in list class
Methods, List operators, List Comprehension, List &
Strings, Passing list to a function and returning from a
function, Difference between list & array;
List/Array Processing: Searching: Linear, Binary; Sorting:
Selection, Bubble, Insertion, Merge, Quick;
Tuple: Creation, tuple(), Built-in tuple class methods,
III 15 Hours 1
Indexing & slicing, Operations on tuple, Variable length
tuple to functions, List & Tuple, Sort, Traverse, zip(),
Inverse zip(*);
Set: Creation, set(), set operator, Built-in set class methods,
Set operations: union(), intersection(), difference(),
symmetric_difference();
Dictionary: Creation, dict(), Adding values, Replacing
values, Retrieving Values, Formatting, Deleting items,
Comparing, Built-in dict class methods, Traversing, Nested
Dictionary, Traversing Nested Dictionary, polynomial
Dictionary.
File Handling: Need, Text Files: Open, Read, Write,
Append, Close, modes, seek(); Binary Files: Reading, Built-
in Functions to to access files and directories; Object
Oriented Programming: Defining Classes: Adding
Attributes, Assigning values to an attribute; Self parameters
and adding methods to a class, Displaying class attributes
and methods, special class attributes, Accessibility,
IV 15 Hours 1
_init_()(Constructor), _del_()(Destructor), Passing object as
a parameter to a method, Class Membership Test, Method
overloading, Operator Overloading: Special Methods:
Arithmetic Operations, comparing types; Reference
Equality and Object Equality, Inbuilt Overloading
Methods; Inheritance: Introduction, Types of Inheritance,
Object Class, Using super(); Method Overriding.
Suggested Readings:
1. Ashok N. Kamthane & Amit A. Kamthane, “Programming and Problem Solving with
Python”, McGraw Hill Educations
2. Kenneth A. Lambert, “The Fundamentals of Python: First Programs”, Cengage
Learning, ISBN: 978- 1111822705.
3. Jake VanderPlas “Python Data Science Handbook” O’Reilly Publications
4. David Beazley, “Python Essential Reference (4th Edition) “ Addison Wesley
MCA4204: Web Technologies and Application Development
Course Objective:
1. To focus on the process of Web Development.
2. To build sound concepts of several languages used in Web Technology.
3. To create a dynamic, interactive website quickly, confidently and successfully.
Learning Outcome: Students who have successfully completed this course will have
understanding of the following concepts:
1. Gradually build a static website using HTML, DHTML and CSS.
2. Move this skill upward by creating some degree of user interactivity using
Javascript,AJAX, Django.
3. Server side data processing by creating PHP scripts and JSP technologies.
Course Contents:
Suggested Readings:
1. Burdman Jessica, “Collaborative Web Development”, Addison Wesley. 2002.
2. Bayross Ivan,”HTML, DHTML. JavaScript, and PHP”, BPB Publications, 4th
Edition,2001.
3. Xavier, C,”Web Technology and Design”, New Age International, 2000.
4. Teodoru Gugoiu,”HTML, XHTML, CSS and XML by EXAMPLE” Firewall
Media,2009.
5. Achyut S Godbole and Atul Kahate, “Web Technologies”, Tata McGraw Hill.
6. James L Mohler and Jon Duff, “Designing interactive web sites”, Delmar
ThomsonLearning.
7. Nicholas C. Zakas, Jeremy McPeak, Joe Fawcett, “Professional Ajax, 2nd
Edition”,Wrox.
8. Lynn Beighley & Michael Morrison, “Head First PHP & MySQL, First Edition”,
O’Reilly.
MCA4205: Software Project Management
Course Objective:
1. To presents a comprehensive introduction to the system analysis and design skill in
information management.
2. To provide the students with the skills to identify business problems which may be
solved by technology based solutions and develop design which form the basis for
implementing systems as well as a strong foundation in systems analysis and design
concepts, methodologies, techniques and tools.
3. The Process, presents a variety of different views of software process, considering all
important process models and addressing the debate between prescriptive and agile
process philosophies
4. Presents analysis and design methods with an emphasis on object-oriented
techniques and UML modeling
5. Presents topics that are relevant to those who plan, manage, and control a software
development project and consider software process improvement and software
engineering trends.
Learning Outcomes On completion of this course students will be able to:
1. Describe the different phases of systems development life cycle.
2. Describe the different fact-finding techniques in system analysis and design.
3. Explain different methodologies of analysis and design of information systems.
4. Manage implementation and maintenance of information systems.
5. Understand and adhere to professional ethical standards in the system development
and modification process, especially by accepting responsibility for the
consequences of design decisions and design implementations.
6. Have demand for knowledgeable experts in software engineering is steadily
increasing, which makes students very competitive nationally as well as
internationally, both in industry and in academic research.
Course Contents:
Suggested Readings:
1. Whitten, L. Bentley and K. Dittman, ―Systems Analysis & Design Methods, Fifth
Edition, TMH Publications.
2. Elias M. Awad ― Systems Analysis and Design, Galgotia Publications.
3. V. Raja Raman ―Analysis & Design of Information System, PHI Publications.
4. Hussain & Hussain― Information Systems Analysis, Design and Implementation,
McGraw Hill Publications
5. Roger S. Pressman, “Software Engineering – A Practitioner’s Approach”,
McGraw Hill Publications.
6. Ian Sommerville, “Software Engineering”, Pearson Education Publications.
7. Shari LawarencePfleeger, “Software Engineering Theory and Practices”.
MCA4213: Cloud Computing
Course Objectives:
1. Current cloud computing technologies, including technologies for different cloud
services.
2. Large data processing in the cloud
3. Resource management in the cloud
4. Analyze the components of cloud computing showing how business agility in an
organization can be created
Learning Outcome
1. Understand the concepts of IAAS, SASS, PAAS
2. Understand the fundamental principles and importance of Virtualization in
Distributed Computing
3. Understand the business models that underlie Cloud Computing.
Course Contents:
Module Course Topics Hours Credits
Introduction to Cloud Computing & Principles of Parallel
and Distributed Computing: The vision of Cloud
Computing; Cloud Computing Reference Model;
Characteristics and benefits; Challenges ahead; Historical
developments: Distributed Systems, Virtualization; Building
I Cloud Computing Environments: Application Development, 15 Hours 1
Infrastructure and System Development; Computing
Platforms and Technologies; Parallel vs. Distributed
computing: Elements of Parallel Computing, Hardware
architectures for Parallel Processing, Approaches to Parallel
Programming, Laws of caution.
Cloud Computing Architecture & Virtualization:
Introduction: The Cloud Reference Model; Types of Clouds;
Economics of the Cloud; Virtualization: Characteristics of
II Virtualized environments, Taxonomy of Virtualization 15 Hours 1
Techniques; Virtualization and Cloud Computing; Pros and
Cons of Virtualization; Technology example: VMware: full
Virtualization, Microsoft Hyper-V.
Cloud platforms, Technologies and Data in the Cloud:
Cloud Computing Economics: Cloud Infrastructure;
Economics of private clouds, Software productivity in the
Cloud, Economies of scale: public vs. private clouds; Multi-
III software: Multi-entity support, Multi-schema approach, 15 Hours 1
Multi-tenancy using cloud data stores, Data access control for
enterprise applications; Data in the cloud: Relational
databases, Cloud file systems: GFS and HDFS, BigTable,
HBase, Cloud data stores: Datastore and SimpleDB.
Cloud Platforms in Industry & Cloud Applications:
Amazon web services: Compute services, Storage services -
Communication services, Additional services; Google
AppEngine: Architecture and Core Concepts, Application life
cycle, Cost model, Observations; Microsoft Azure: Azure
15 Hours 1
IV Core Concepts, SQL Azure, Windows Azure Platform
Appliance; Cloud Applications: Healthcare: ECG Analysis in
the Cloud, Biology: Protein Structure Prediction, Gene
Expression Data Analysis for Cancer Diagnosis, Geoscience:
Satellite Image Processing.
Suggested Readings:
1. Rajkumar Buyya, Christian Vecchiola and S. Thamarai Selvi, “Mastering Cloud
Computing”, Tata McGraw Hill Education Publication (TMH Publication)
2. Gautam Shroff, “Enterprise Cloud Computing: Technology, Architecture, Applications”,
Cambridge University Press, 2010.
3. Anthony T.Velte, Toby J.Velte, Robert Elsenpeter “Cloud Computing, A Practical
Approach”, Tata McGraw Hill Education Publication (TMH Publication), 2009
4. Michael J.Kavis, “Architecting the Cloud: Design Decisions for Cloud Computing Service
Models (SaaS, PaaS, and IaaS)”, John Wiley & Sons Inc., Jan 2014.
MCA4251: Programming in PYTHON Lab