Hey, guys here are the topics of the MCA (Master of Computer Application) Course that will lead to you the full post on that topic. If there is something missing or you want me to add that here please comment down in the comment section.
MCA 1st Semester
Problem-Solving Techniques (C Language)
- Introduction
- Functions
- Arrays
- Problem-Solving Strategies
- Algorithmic Approaches
- Problem-Solving Strategies
- Structure, Union, and File Handling
Discrete Mathematics
- Propositions and Logic
- Propositions and Compound Propositions
- Logical Operations
- Truth Tables
- Tautologies and Contradictions
- Logical Equivalence
- Algebra of Propositions
- Conditional and Biconditional Statements
- Arguments
- Logical Implications
- Quantifiers
- Negation of Quantified Statements
- Basic Counting Principles
- Factorial
- Binomial Coefficient
- Permutations
- Combinations
- Pigeonhole Principle
- Mathematical Induction
- Order and Inequalities
- Mathematical Induction
- Division Algorithms
- Divisibility
- Euclidean Algorithm
- Fundamental Theorem of Arithmetic
- Congruence Relation
- Congruence Equations
- Semigroups
- Groups
- Subgroups
- Normal Subgroups
- Homomorphism
- Rings
- Integral Domains
- Fields
- Polynomials Over a Field
- Recurrence Relations
- Towers of Hanoi
- Iterations
- Homogeneous Linear Equations with Constant Coefficients
- Particular Solution
- Solution of Homogenous Recurrence Relations with Particular Solutions and Total Solutions
- Difference Table
- Finite Order Differences
- Line in a Place in General Position
- Graph Theory
- Paths
- Connectivity
- Subgraphs
- Isomorphism
- Trees
- Complete Graphs
- Bipartite Graphs
- Matchings Colourability
- Planarity
- Digraphs
- Classification of Languages
- Overview of Formal Languages
- Representation of Regular Languages and Grammars
- Finite State Machine
- Overview of Formal Languages
Operating System
- Fundamental Concepts of OS
- Introduction
- Types of Operating Systems
- General System Architecture
- Linux Basics
- History of Linux
- History
- FOSS
- Current Linux Distributions
- Linux Layers
- The Linux Shell (Different Kinds of Shell)
- Process
- Files and Directories
- History of Linux
- Process Management and Shells
- Process Management
- Process Concept
- Concurrent Process Scheduling Concepts
- CPU Scheduling
- Critical Section
- Semaphores
- Interprocess Communication
- DeadLocks
- Characterizations
- Prevention
- Avoidance and Detection
- Getting Started with Shell Programming
- The Bash Shell
- Shell Commands
- The Role of Shell in the Linux Environment
- Setting Up Permissions on a Script
- Execute a Script
- Variables in Shell
- Rules for Naming Variable Names
- Display the Value of Shell Variables
- Unset Shell and Environment Variables
- Getting User Input Via Keyboard
- Commonly Used Commands and Utilities
- Process Management
- Memory Management and Basic Administration in Linux
- Storage Management
- Swapping
- Single and Partition Allocation
- Paging
- Segment
- Page Segmentation
- Virtual Memory
- Demand paging
- Page Replacement and Algorithms
- Thrashing
- Basic System Administration (Run Levels, User Accounts)
- Kernel Administration
- Linux Kernel Sources
- Rebuilding Kernel
- Installing Kernel
- Managing Users
- File System and Editing Files
- Files and Protection
- File System Organization
- File Operations
- Access Methods
- Consistency Semantics
- Directory Structure Organization
- File Protection
- Implementation Issues
- Security Encryption
- File Systems
- Linux Files
- Directories and Archives
- The VI Editor
- AWK
- SED
- The X Window System
- Desktop (Desktop environments – Gnome, KDE, XFCE)
- The X Window System
- Xorg
- Window Manager
- Display managers
- Widget Libraries or Toolkits
- Athena Widgets
- Motif Toolkit
- GTK
- QT
- LessTif
- Case study – Linux vs Windows Operating System
Database Management System
- Introduction to Database Management System
- An overview of the database management system
- Database System Vs File System
- Database System Concepts and Architecture
- Data Models
- Schema and Instances
- Data Independence and Data Base Language and Interface
- Data Definition Language
- Data Manipulation Language
- Overall Database Structure
- Entity Relationship Model
- Conceptual Modelling of a Database
- The Entity Relationship Model (ER Model)
- Entity Types
- Entity Sets
- Attributes and Keys
- Relationship Types
- Relationship Sets
- Weak Entity Types
- Generalization, Specialization, and Aggregation
- Extended Entity Relationship (EER Model)
- Relational Model and SQL Query
- Relational Data Model Concepts
- Entity Constraint
- Referential Integrity
- Keys Constraints
- Entity Integrity Constraint
- Domain Constraint
- Relational Algebra
- Relational Calculus
- Tuple and Domain Calculus
- Entity Constraint
- Introduction to SQL
- Characteristic of SQL
- Advantage of SQL
- SQL Data Type and Literals
- Types of SQL Commands
- SQL Operators and Their Procedures
- Tables, Views, and Indexes
- Queries and Subqueries
- Aggregate Functions
- Insert, Update and Delete Operations
- Joins
- Unions
- Intersections
- Minus
- Cursor
- Triggers
- Procedures in SQL/PLSQL
- Relational Data Model Concepts
- Normalization
- Functional Dependency
- Normal Forms
- First Form
- Second Form
- Third Form
- BCNF
- Inclusive Dependence
- Loss Less Join Decompositions
- Normalization using FD, MVD, and JDs
- Alternative Approaches to Database Design
- Overview of Transaction Management and Concurrency Control
- Overview of Transaction Management
- ACID Properties
- Transaction and Schedules
- Concurrent Execution of Transaction
- Lock-Based Concurrency Control
- Performance Locking
- Transaction support in SQL
- Introduction to Crash Recovery
- Concurrency Control
- Serializability and Recoverability
- Introduction to Lock management
- Lock Conversions
- Dealing with Dead Locks
- Specialized Locking Techniques
- Concurrency Without Locking
- Overview of Transaction Management
Data Communication and Networking
- Introduction to Computer Network and Data Communication
- Introduction to Computer Network
- Definition and Uses of Computer Network
- Criteria for a Data Communication Network
- Classification of Computer Network
- Network Topology
- Transmission Media
- Guided and Unguided Media
- Introduction to Computer Network
- Network Models and Protocol Suite
- Protocol and Standards
- OSI Model
- TCP/IP Protocol Suite
- Comparison of OSI and TCP/IP Model: IPv4, Physical…
- Digital Transmission and Analog Transmission
- Digital Transmission
- Digital to Digital Conversion
- Analog to Digital Conversion
- Pulse Code Modulation
- Delta Modulation
- Transmission Modes
- Analog Transmission
- Digital to Analog Conversion
- ASK, FSK, PSK
- Analog to Analog Conversion
- Modulation Techniques
- Digital Transmission
- Switching, Error Detection, and Correction
- Multiplexing
- Switching
- Circuit Switched Networks
- Data Gram Networks
- Virtual Circuit Networks
- Dial-up Modems
- DSL
- Error Detection and Correction
- Block Coding
- Cycling Codes
- Linear Block Codes
- Checksum
- Data Link Control and Internet
- Framing
- Flow and Error Control Protocols
- Noisy and Noiseless Channels
- Application Layer
- Simple Mail Transfer Protocol (SMTP)
- File Transfer Protocol(FTP)
- Telnet Protocol
- Internet and WWW
- History of Internet
- Internet Basics
- HyperText Transfer Protocol (HTTP)
- World Wide Web (WWW)
- Security of Internet
- Email Security
- Framing
Research Methodology and IPR
- Introduction to Research
- Research Definition
- Types of Research
- Descriptive
- Analytical
- Applied
- Fundamental
- Quantitative
- Qualitative
- Conceptual
- Empirical
- Concepts of Interdisciplinary Research
- Procedures in Research
- Identification of the Problem
- Literature Surveys
- Experimental Methods
- Types of Research Surveys
- Face to Face Questionnaire
- Discourse Analysis
- Biographical Data Analysis
- Data Collection for Research
- Data Collection
- Source of Data
- Primary Data
- Secondary Data
- Procedure Questionnaire
- Sampling Methods
- Merits and Demerits
- Experiemnts
- Observation Method
- Sampling Errors
- Type 1 Error
- Type 2 Error
- Sampling Analysis and Computer Application
- Primary and Secondary Data
- Collection and Validation
- Method of Sampling
- Simple Random Sampling
- Systematic Sampling
- Clustered Sampling
- Stratified Sampling
- Attitude Measurements
- Land Scale
- Scaling of Attitude
- Measurement Models
- Summative Models
- Introduction to Spread Sheet Applications
- Features and Functions
- Using Formulas and Functions
- Data Storing
- Features for Statistical Analysis
- Generating Charts/Graphs
- PowerPoint Presentation
- Research Report
- Types of Research Reports
- Contents
- Steps in Drafting
- Editing and Evaluating the Final Draft
- Styles for Figures
- Tables
- Text
- Quoting of Reference and Bibliography
- Use and Format of Appendices
- Indexing
- Structure and Presentation of Research Project
- Research Ethics
- Plagiarism
- Intellectual Properties Rights
- Intellectual Property System in India
- Scope of Patent Right
- Licensing and Transfer of Technology
- Patent Information and Database
- Geographical Indications
- Administration of Patent System
- New Developments in IPR
- IPR of Biological Systems
- Computer Software
- Research in Computer Science
- Research Topics in Computer Science
- Image Processing
- Networking
- Data Mining
- Journals and Conferences
- Web of Science and Scopus Indexed Journals
- Impact Factor
- Google Scholar
- Plagiarism Software tools
MCA 2nd Semester
Object Oriented Programming with Java
- Class Modelling and Advance Class Modelling
- Object Modelling:
- Objects and Classes
- Links and Associations
- Generalization and Inheritance
- Aggregation
- Abstract Class
- Multiple Inheritance
- Derived Data and Packages
- Object Modelling:
- State Modelling and Interaction Modelling
- Dynamic Modelling
- Events and States
- Transitions and Conditions
- State Diagram
- State Diagram Behaviour
- Advanced Dynamic Modelling Concepts
- A Simple Dynamic Model
- Interaction Modelling
- Use Case Models
- Sequence Models
- Activity Models
- Dynamic Modelling
- Java Programming Language with OOPs
- Features of Java
- Byte Code
- Java Virtual Machine
- JDK
- Java Environment
- Developing a Simple Program
- Operators
- Data Types
- Variables
- Define the Structure of a Java Class
- Create Executable Java Applications with a Main Method
- Run a Java Program from Command Line Interface including the console output
- Features of Java
- Platform Independence
- Object Orientation
- Security
- Introduction to Eclipse
- Jar Files
- Arrays
- Declare, Instantiate, Initialize and Use a One Dimensional Array
- Declare, Instantiate, Initialize, and Use of Multi-Dimensional Array
- Wrapper Class, Develop Code that uses wrapper classes such as Boolean, Double, and Integer
- String, String Buffer Class, Operations on String
- Inheritance and Exception Handling
- Inheritance and Its benefits
- Develop code that demonstrates the use of polymorphism
- Including Overriding and Object Type vs Reference Type
- Determine when casting is necessary
- Use Super and This to access objects and Constructors
- Use Abstract Classes and Interfaces
- Exception Handling
- Differentiate among checked exceptions, unchecked exceptions, and errors.
- Create a Try-Catch block and determine how exceptions alter the normal program flow
- Describe the Advantages of Exception Handling
- Create and Invoke a method that throws an Exception
- Recognize Common Exception Classes like
- NullPointerException
- ArithmeticException
- ArrayIndexOutOfBoundsException
- ClassCastException
- Manipulate Data using the StringBuilder class and its methods
- Creating and Manipulating Strings
- Create and Manipulate Calendar Data using Classes from Java.time package
- Threads, Collections, and JDBC
- MultiThreading
- Collection
- List Classes
- Map
- Set Classes
- Introduction to JDBC API
- Types of Driver Statements
- Prepared Statement and Callable Statement
- ResultSet
- Performing insert, update and delete operations
- Transaction Management – Commit and Rollback
- Lab Experiments
- Demonstration of Java Programs to implement various control structures
- If statement
- Switch Case Statement
- Do While Loop
- For Loop
- While Loop
- Demonstration of Java Programs to implement various control structures
Data Structure using C
- Arrays and Lists
- Introduction
- Basic Terminology
- Elementary Data Organization
- Data Structure Operations
- Abstract Data Type (ADT)
- Algorithm Complexity
- Time-Space trade-off
- Array
- Array Definition
- Representation and Analysis
- Single and MultiDimensional array
- Applications of Array
- Sparse Metrices
- Lists
- Applications of Lists
- Polynomial Representation and Addition
- Introduction
- Stack and Queue
- Stack
- Application of Stack
- Conversion of Infix to Prefix and PostFix Expression
- Recursion
- Queue
- Representation and Implementation of Queue
- Circular Queue
- Deque
- Priority Queue
- Tree
- Binary Tree
- Basic Terminology
- Binary Tree Representation
- Complete Binary Tree
- Extended Binary Tree
- Binary Tree Traversals
- Binary Search Trees
- Binary Search Tree
- AVL Trees
- B-Trees
- Binary Tree
- Graphs
- Graphs: Basic Terminology and Representation
- Graphs and MultiGraphs
- Directed Graphs
- Adjacency Matrices
- Graph Traversal
- Spanning Trees
- Minimum Cost Spanning Trees
- Searching, Sorting, and File Structures
- Searching
- Sorting
- File Structure
- Physical Storage Media File Organization
- Organization of Records into Blocks
- Sequential Files
- Indexing and Hashing
- Primary Indices
- Secondary Indices
- Multi-level Indexing
- Lab Experiments
- Write a Program to implement the array operations
- Write a program to implement the stack and its operations
- WAP to implement Stack application: Tower of Hanoi
- WAP to implement Queue and Its operations
- WAP to implement the circular queue and its operation
- WAP to implement the dequeue and its operation
- WAP to implement the Linked list and its operation
- WAP to implement the BST
- WAP to implement the BST insertion process
- WAP to implement the Insertion sort
- WAP to implement the Bubble sort
- WAP to implement the Quick sort
- WAP to implement the Merge sort
- WAP to implement the Heap sort
- WAP to implement the Graph
Web Technologies PBL
- Introduction to Web and HTML
- History of Internet
- Internet Basics
- Use of Protocol on the Internet
- Working of Email
- The Structure of HTTP Request
- The Structure of HTTP Response
- DNS Functionalities
- Introduction to Web Designing
- Web Development Strategies – Web Server, Web Client – Browser & Web Server
- Identify the Problems
- Develop the SRS Document of the Project
- HTML Document
- Basic Structure
- Basic Tags
- Elements
- Attributes
- Formatting
- Comments
- Marquee
- Text
- Image
- List
- Creating Link between Documents
- Creating Tables
- Creating Forms
- The Input Element
- Select Element
- TextArea Element
- Introduction to StyleSheets and Frameworks
- Introduction to DHTML
- Advantages and Disadvantages of DHTML
- Object Model – Underlying Principles of the DHTML
- Basic Components of DHTML, XHTML: Syntax and Semantics
- Introduction to Style Sheets and Frameworks Cascading Style Sheets
- Levels of Style Sheets
- Style
- Specification Format
- Selector Forms
- Property-Value
- Forms
- Font Properties
- List Properties
- Alignment of Text
- Color
- The Box Model
- Background Images
- The Span and Div Tags
- Frameworks – Overview and Basics of Responsive CSS Frameworks
- JavaScript
- Introduction
- Documents
- Forms
- Statements
- Functions
- Objects
- Events and Event Handling
- Error Handling
- Validation
- Introduction to Data Interchange Formats
- XML
- The Syntax of XML
- XML Document Structure
- Namespaces
- XML Schema
- Displaying Raw XML Documents
- Displaying XML Documents with CSS
- XSLT Applications
- JSON
- Overview
- Syntax
- DataTypes
- Objects
- Schema
- Comparison with XML
- XML:DTD
- XML Schemas
- Presenting and Using XML
- XML
- PHP
- PHP (HyperText PreProcessor) Introduction
- Syntax
- Variables
- String
- Operators
- If-else
- Loop
- Switch
- Array
- Functions
- Form
- File upload
- Session
- Error
- Exception
- Filter
- PHP-ODBC
Software Engineering and Testing
- Introduction
- Requirement Engineering Process
- Elicitation
- Analysis
- Documentation
- Review and Management of User Needs
- Feasibility Study
- Information Modeling
- Data Flow Diagram
- Entity Relationship Diagram
- Decision Table
- SRS Document
- IEEE Standards for SRS
- Software Quality Assurance (SQA)
- Verification and Validation
- SQA Plans
- Software Quality Frameworks
- ISO 9000 Models
- SEI-CMM Model
- Software Design
- Software Design
- Abstraction
- Modularity
- Software Architecture
- Effective Modular Design
- Cohesion and Coupling
- Architectural Design and Procedural Design
- Data Flow Oriented Design
- Design Structure Charts
- Pseudo Codes
- Flow Charts
- Coupling and Cohesion Measures
- Design Strategies
- Function Oriented Design
- Object Oriented Design
- Top Down Design
- Bottom Up Design
- User Interface Design
- User Interface Design
- Human Factors
- Human-Computer Interaction
- Human-Computer Interface Design
- Interface Design
- Interface Standards
- Coding and Testing
- Coding
- Language Classes
- Structured Programming
- Need for Structured Programming
- Coding Standards
- Coding Style
- Maintainability of Program
- Code documentation – Code Efficiency
- Testing
- Software Testing
- Testing Objectives
- Levels of Testing
- Unit Testing
- Integration Testing
- System Testing
- Acceptance Testing
- Path Testing
- Control Structure Testing
- Verification vs Validation and System Testing
- Regression Testing
- Testing for Functionality and Testing for Performance
- Top-Down and Bottom-Up Testing
- Incremental vs None Incremental Testing
- Strategies
- Test Drivers and Test Stubs
- Structural Testing (White Box Testing)
- Functional Testing (Black Box Testing)
- Test Data Suitable Preparation
- Alpha and Beta Testing of Products
- Static Testing Strategies
- Formal Technique Reviews (Peer Reviews)
- Walk Through
- Code Inspection
- Compliance with Design and Coding Standards
- Software Measurement and Metrics
- Various Size Oriented Measures
- Halestead’s Software Science
- Functional Point (FP) Based Measures
- Bang Metrics
- Cyclomatic Complexity Measures
- Control Flow Graph
- DD Graph
- Various Size Oriented Measures
- Coding
- Software Maintenance
- Software as an Evolutionary Entity
- Need for Maintenance
- Category of Mainenance
- Preventive
- Corrective and Perfective Maintenance
- Cost of Maintenance
- Software Re-Engineering
- Reverse Engineering
- Software Configuration Management Activities
- Change Control Process
- Software Version Control
- An Overview of CASE tools
- Estimation of Various Parameters such as
- Cost,
- Effort,
- Schedule/Duration,
- Constructive Cost Models (COCOMO)
- Resource Allocation Models
- Software Risk Analysis and Management
Programming with Python
Computer Graphics
- Computer Graphics and Its Applications
- Random Scan Display and Raster Scan Display
- DDA Line Algorithm
- Bresenham Line Drawing Algorithm
- Mid Point Line Drawing Algorithm
- Bresenham Circle Drawing Algorithm
- Frame Buffer and Video Controller
- Points and Lines
- CRT (Cathode Ray Technique) Display
- Vector vs Bitmap