Anna University, Chennai Non-Autonomous Colleges Affiliated To Anna University Master of Computer Applications (2 Years) Regulations 2025
Anna University, Chennai Non-Autonomous Colleges Affiliated To Anna University Master of Computer Applications (2 Years) Regulations 2025
REGULATIONS 2025
PO Programme Outcomes
PO1 An ability to independently carry out research /investigation and development
work to solve practical problems
PO2 An ability to write and present a substantial technical report/document.
PO3 Students should be able to demonstrate a degree of mastery over the area as
per the specialization of the program. The mastery should be at a level higher
than the requirements in the appropriate bachelor program
PSO2: Apply modern computing technologies and frameworks, including AI, cloud, and
web platforms, to build efficient, user-friendly, and secure applications.
Page 1 of 19
ANNA UNIVERSITY, CHENNAI
Abbreviations:
Semester – I
Periods
S. Course
Course Title Type per week TCP Credits Category
No. Code
L T P
Mathematical Foundation of
1. MC25101 T 3 1 0 4 4 BS
Computer Applications
Networking and
2. MC25102 T 3 0 0 3 3 ES (PC)
Communication Systems
Software Testing and
3. MC25103 T 3 0 0 3 3 ES (PC)
Automation
Data Structures and
4. MC25104 LIT 2 0 2 4 3 ES (PC)
Algorithms using Python
Data Exploration and
5. MC25105 LIT 2 0 2 4 3 ES (PC)
Visualization
6. MC25106 Advanced Java Programming LIT 2 0 2 4 3 ES (PC)
Total Credits 24 20
Page 2 of 19
Semester – II
Periods
S. Course
Course Title Type per week TCP Credits Category
No. Code
L T P
1. UI & UX Design T 3 0 0 3 3 ES (PC)
9. Self-Learning Course - - - - - 1 -
Total Credits 28 26
Semester – III
Periods
S. Course
Course Title Type per week TCP Credits Category
No. Code
L T P
1. Programme Elective II T 3 0 0 3 3 ES (PE)
4. Open Elective T 3 0 0 3 3 -
Machine Learning
5. LIT 3 0 2 5 4 ES (PC)
Techniques
Industry-Oriented -- 1 0 0 1 1 SD
6.
Course II
Total Credits 18 17
Semester – IV
Periods
S. Course per week
Course Title Type TCP Credits Category
No. Code
L T P
1. Project Work - 0 0 20 20 10 SD
Total Credits 20 10
Total Credits for the Programme:80
Page 3 of 19
Programme Elective Courses (PEC)
Periods Total
S. Course
Course Title Per Week Contact Credits
NO. Code
L T P Periods
2. VIBE coding 3 0 0 3 3
Network Programming and
3. 3 0 0 3 3
Management
4. Software Project Management 3 0 0 3 3
5. E-Learning 3 0 0 3 3
Accounting and Financial
6. 3 0 0 3 3
Management
7. Digital and Mobile Forensics 3 0 0 3 3
Cryptocurrency and Blockchain
8. 3 0 0 3 3
Technologies
9. Game Programming 3 0 0 3 3
18. DevOps 3 0 2 5 4
Ethical Hacking and Penetration
19. 3 0 2 5 4
Testing
20. E–Commerce Technologies 3 0 2 5 4
Page 4 of 19
Semester I
Page 5 of 19
Mathematical Foundation for Computer L T P C
MC25101
Applications 3 1 0 4
Course Objectives:
• To apply fundamental concepts of discrete mathematics in the context of computer
science and software development.
• To develop the ability to model and solve computational problems using
mathematical tools such as combinatorics, matrices, graph theory, and number
theory.
• To enhance analytical and logical thinking skills necessary for designing algorithms,
analyzing complexity, and supporting various applications in computer science.
Graph Theory: Basic terminology: Different types of graphs – Directed and undirected,
Simple, Pseudo, Complete, Regular, Bipartite. Incidence and degree, Pendant and
Isolated vertex and Null graph. Isomorphism, Sub graphs, Walk, Path and Circuit,
Connected and disconnected graphs and components, operations on graphs. Euler
Graphs, Fleury’s Algorithm – Hamiltonian circuits and paths. Traveling salesman
problem. Matrix representation of graphs – Incidence and Adjacency matrices.
Assessment Methodology: Assignments (15), Quiz (10), Virtual Demo (20), Flipped
Class Room (10), Review of Gate and IES Questions (25), Project (20).
Page 6 of 19
References:
1. Trembly, J. P., & Manohar, R. (2017). Discrete mathematical structures with
applications to computer science (International ed.). Tata McGraw-Hill.
2. Rosen, K. H. (2017). Discrete mathematics and its applications (7th ed.). McGraw-
Hill.
3. Deo, N. (2016). Graph theory with applications to engineering and computer
science. Prentice Hall.
4. Hopcroft, J. E., & Ullman, J. D. (2006). Introduction to automata theory, languages,
and computation (3rd ed.). Pearson Education.
5. Sharma, J. K. (2011). Discrete mathematics (3rd ed.). Macmillan Publishers India.
E-resources:
1. https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-science-fall-2010/?
2. https://teachyourselfcs.com/?
Page 7 of 19
L T P C
MC25102 Networking and Communication Systems
3 0 0 3
Course Objectives:
• To provide a comprehensive understanding of networking principles and
communication models of modern communication systems.
• To enable students to analyze, design, and evaluate computer networks and
communication systems.
• To develop skills in applying networking and communication concepts to real-world
applications
Data Link and Network Layer Protocols: Data link layer services, design issues, error
detection and correction, Medium Access Control (MAC): Ethernet, CSMA/CD,
CSMA/CA, Network layer functions and IP routing, store and forward packet switching,
connection less and connection, oriented networks, Routing algorithms: Distance
vector, Link state, OSPF, BGP, ARP, ICMP, and DHCP operations
Activity: Simulate IP Routing in a Virtual LAN using Packet Tracer Tool.
Modern Network Trends, IoT, Cloud & Secure Networking: Cloud networking and
virtualization, IoT architecture and protocols (MQTT, CoAP), Edge and fog computing,
Network security basics: firewalls, encryption, VPNs, Network challenges in modern
computing (5G, SDN, NFV)
Page 8 of 19
Activity: Demonstration of IoT Architecture for Home Automation
References:
1. Tanenbaum, A. S., & Wetherell, D. J. (2014). Computer Networks. Pearson
Education, Elsevier Inc.
2. Gupta, P. C. (2014). Data communications and computer network. PHI Learning Pvt
Ltd.
3. Forouzan, B. A. (2013). Introduction to data communication & networking. McGraw
Hill Education Pvt Ltd.
4. Larry, P., Peterson, L., & Davis, B. S. (2014). Computer networks: A system
approach. Elsevier Inc.
5. Forouzan, B. A. (2022). Data communications and networking. McGraw-Hill.
E-RESOURCES:
1. Computer Networks by Prof. S. K. Sinha, IIT Kharagpur
https://nptel.ac.in/courses/106105183
2. Introduction to Wireless and Cellular Communications by IIT Madras
https://nptel.ac.in/courses/117106114
Description of CO PO PSO
Elaborate the fundamental concepts of data
CO1 -- --
communication, OSI, and TCP/IP models.
Apply transmission media, switching, and error
CO2 control techniques to optimize communication PO1(3) PSO1(3)
efficiency
Design and simulate routing, congestion control,
CO3 and network protocols for efficient communication PO3(2) PSO2(2)
systems.
Evaluate and justify emerging networking
technologies and security mechanisms for real- PO2(1)
CO4 PSO1(3)
world applications.
Page 9 of 19
L T P C
MC25103 Software Testing and Automation
3 0 0 3
Course Objectives:
• To impart knowledge of software testing principles and life cycle models for ensuring
software quality and reliability.
• To enable students to design effective test cases and utilize automation tools for
functional and non-functional testing.
• To develop skills in implementing automated testing frameworks for real-world
software projects.
Test Planning: The Goal of Test Planning, High Level Expectations, Intergroup
Responsibilities, Test Phases, Test Strategy, Resource Requirements, Tester
Assignments, Test Schedule, Test Cases, Bug Reporting, Metrics and Statistics.
Activities:
• Design a comprehensive test plan for a sample software project,
• Bug Reporting and Metrics Simulation.
Test Design and Execution: Test Objective, Identification, Test Design, Factors,
Requirement, identification, Testable, Requirements, Modeling a Test Design Process,
Modeling Test Results, Boundary Value Testing, Equivalence Class Testing, Path
Testing-Data Flow Testing, Test Design Preparedness Metrics, Test Case Design
Effectiveness, Model, Driven Test Design, Test Procedures, Test Case Organization
and Tracking-Bug Reporting, Bug Life Cycle.
Activities:
• Conduct load, stress, volume, fail-over, recovery, and configuration tests on a sample
application
• Test a web or mobile application for usability, compatibility, security.
Page 10 of 19
Advanced Testing Concepts: Performance Testing: Load Testing, Stress Testing,
Volume Testing, Fail-Over Testing, Recovery Testing-Configuration Testing,
Compatibility Testing, Usability Testing, Testing the Documentation, Security testing,
Testing in the Agile Environment-Testing Web and Mobile Applications.
Activities:
• Perform configuration tests on a web or mobile application using performance
testing tools
• Performing iterative testing in an Agile environment on web and mobile applications.
Test Automation and Tools: Automated Software Testing, Automate Testing of Web
Applications-Selenium: Introducing Web Driver and Web Elements, Locating Web
Elements, Actions on Web Elements, Different Web Drivers, Understanding Web Driver
Events, Testing: Understanding Testing.xml, Adding Classes, Packages, Methods to
Test-Test Reports.
Activities:
• Use Selenium WebDriver to generate test reports.
• Design automated test scripts on a sample web application
References:
1. Desikan, S., & Ramesh, G. “Software testing: Principles and practices”. Pearson
Education.
2. Westerveld, D. (2021). “API testing and development with Postman”. Packt
Publishing.
3. Gundecha, U. “Selenium Web Driver 3 practical guide”. Packt Publishing.
4. Rodrigues, A. G. “Mastering JMeter: From load testing to DevOps”. Packt
Publishing.
5. Menon, V. “TestNG beginner’s guide”. Packt Publishing.
E- Resources:
1. NPTEL: Software Testing by Prof. Yogesh Singh
2. Postman Tutorials: Postman.com
3. JMeter Documentation: https://jmeter.apache.org/
4. TestNG Documentation: https://testng.org/doc/
Page 11 of 19
Description of CO PO PSO
Explain software testing principles and defect
CO1 -- --
management to ensure software reliability.
Apply test planning strategies using black-box and
CO2 PO1(3) PSO1(3)
white-box techniques.
Page 12 of 19
L T P C
MC25104 Data Structures and Algorithms using Python
2 0 2 3
Course Objectives:
• To provide a strong understanding of fundamental data structures and their
implementation in Python.
• To enable students to design, analyze, and implement efficient algorithms for
searching, sorting, and problem-solving using Python.
• To develop skills in applying algorithmic thinking and data structure concepts to real-
world computational problems
Abstract Data Types and Linear Structures: Abstract Data Types (ADTs), ADTs and
classes, introduction to OOP, classes in Python, inheritance namespaces, shallow and
deep copying Introduction to analysis of algorithms, asymptotic notations divide &
conquer, recursion, analyzing recursive algorithms- Stack ADT, Queue ADT
Practical:
• Implement Custom Stack and Queue ADTs with Recursion and Algorithm
Analysis
• Recursive Merge Sort with Operation Count and Custom Object Sorting
Sorting and Searching: Sorting Algorithms: Bubble sort, selection sort, insertion sort,
merge sort, quick sort, analysis of sorting algorithms, Searching Techniques: linear
search, binary search, hashing, hash functions, collision handling, load factors,
rehashing, and efficiency
Practical:
• Implement sorting algorithms in Python Bubble Sort, Selection Sort
• Implement Linear Search, Binary Search, Hash Table with Collision Handling
Tree Structures: Tree ADT, Binary Tree ADT, tree traversals,binary search trees,
AVL trees, heaps, multiway search trees
Practical:
• lement Binary Tree ADT
• Implement an AVLTree class with Rotations (LL, RR, LR, RL)
Page 13 of 19
Graph Structures: Graph ADT, representations of graph, graph traversals, DAG,
topological ordering, greedy algorithms, dynamic programming, shortest paths,
minimum spanning trees, Introduction to complexity classes and intractability
Practical:
• Implement Breadth-First Search (BFS), Depth-First Search (DFS)
• Implement Dijkstra’s Algorithm for shortest path (Greedy)
Assessment Methodology: Assignments (15), Quiz (10), Virtual Demo (20), Flipped
Class Room (10), Review of Gate and IES Questions (25), Project (20)
References:
1. Agarwal, B., & Baka, B. (2018). Hands-on data structures and algorithms with
Python: Write complex and powerful code using the latest features of Python 3.7.
Packt Publishing.
2. Goodrich, M. T., Tamassia, R., & Goldwasser, M. H. (2021). Data structures &
algorithms in Python (Indian adaptation). John Wiley & Sons.
3. Lee, K. D., & Hubbard, S. (2015). Data structures and algorithms with Python.
Springer.
4. Necaise, R. D. (2011). Data structures and algorithms using Python. John Wiley &
Sons.
5. Weiss, M. A. (2014). Data structures and algorithm analysis in C++. Pearson
Education.
E-resources:
1. https://runestone.academy/ns/books/published/pythonds/index.html
2. https://www.geeksforgeeks.org/data-structures-and-algorithms-in-python/
Description of CO PO PSO
Page 14 of 19
Data Exploration and Visualization L T P C
MC25105
2 0 2 3
Course Objectives:
• To provide students with the ability to explore datasets to uncover patterns.
• To enable learners to create effective visualizations to communicate insights
clearly.
• To develop skills in presenting data-driven insights for informed decision-making.
Data Visualization and Exploration: Visualization Objectives and Key Factors, Data
Representation and Presentation, Stages of Data Visualization, Visualization Tools and
Widgets, Mapping and Geographic Data, Time Series Visualization, Correlations and
Scatterplots, Trees, Hierarchies, Networks
Practical:
• Visualization of dataset using multiple subplot.
• Generation of correlation heatmap and a map-based plot u.
Page 15 of 19
Interactive Data Visualization: Text and Document Visualization, Levels of Text
Representations, Single Document Visualizations, Document Collection Visualizations,
Interaction Concepts and Techniques, Designing Effective Visualizations, Comparing
and Evaluating Visualization Techniques.
Practical:
• Visualization of word frequencies from a small text dataset.
• Creation of chart using interactive visualization libraries.
Assessment Methodology: Assignments (15), Quiz (10), Virtual Demo (20), Flipped
Class Room (10), Review of Gate and IES Questions (25), Project (20)
References:
1. Mukhiya, S. K., & Ahmed, U. (2020). Hands-on exploratory data analysis with
Python. Packt Publishing.
2. Sharma, T. (2023). Mastering exploratory data analysis with Python: Gain a solid
understanding of exploratory data analysis and data visualization techniques using
Python. Packt Publishing.
3. Schwabish, J. (2021). Better data visualizations: A guide for scholars, researchers,
and wonks. Columbia University Press.
E-Resources:
1. https://app.datacamp.com/learn/courses/statistical-thinking-in-python-part-1
2. https://realpython.com/python-data-visualization-bokeh
Description of CO PO PSO
Page 16 of 19
L T P C
MC25106 Advanced Java Programming
2 0 2 3
Course Objectives:
• To provide in-depth knowledge of advanced Java concepts.
• To enable students to develop Java applications using object-oriented and event-
driven programming techniques.
• To develop proficiency in using Java frameworks, APIs, and libraries for building
real-world applications.
Core Java Fundamentals: Java Virtual Machine, data types, variables, keywords,
operators, expressions, control statements, classes, objects, constructors, access
control, method overloading, static members, Arrays, Strings, Inheritance: types,
constructors in inheritance, method overriding, use of super, abstract classes –
interfaces, dynamic method dispatch. Packages and exception handling
Practical:
• Write a Java program that demonstrates the use of classes, objects, constructors,
method overloading, inheritance, super, and abstract classes.
• Create a Java application that includes built–in and user–defined exception
handling using try, catch, finally, throw, and throws.
Jave Servlets: Java EE Architecture - Application Servers and Containers, Servlet API
and Lifecycle, Handling Client Requests and Responses - Working with Databases
through Servlets-Servlet Advanced Concepts: Request Dispatcher -Session
Management, Cookies and Http Session, Working with Files, Non- blocking I/O in
Servlets.
Practical:
• Implement a servlet for uploading files to the server and downloading them using
Multipart Config and File Output Stream
• Develop a servlet to handle HTTP GET and POST methods. Accept form data
(e.g., user registration) and display it.
Page 17 of 19
Java Server Pages and JSTL: JSP Architecture and Lifecycle, Action Elements,
Implicit Objects, Scripting Elements, Scope and EL (Expression Language), JSP
Standard Tag Libraries (JSTL), Developing Dynamic Web Applications with JSP.
Practical:
• Design a responsive UI form using Bootstrap and React to capture user input and
display the result
• Create a JSP application using scripting elements, EL for data display, and JSTL
for conditional and loop–based rendering.
Java Frame works: MVC Architecture, Spring Framework, Spring Modules, Spring
MVC and Spring Boot, Hibernate Framework, Other Popular Frameworks. Maven
Installation, Maven Core Concepts - Basic Structure of the POM File, Maven Build Life
Cycles, Phases and Goals - Maven Build Profiles
Practical:
• Build a Java application using Hibernate and JPA annotations to perform CRUD
operations on a Student entity.
• Mini-project integrating Spring and Hibernate framework.
E-Resources:
1. https://docs.oracle.com/javase/tutorial/
2. https://www.baeldung.com/java-thread
3. https://docs.oracle.com/javaee/7/tutorial/index.html
Page 18 of 19
Description of CO PO PSO
Page 19 of 19