BCA Subjects, BCA Syllabus and Books: The Complete Guide

  • By Kirti Yadav
  • 13 April 2022
BCA Subjects, BCA Syllabus and Books

5000+ students unlocked their dream job with Sunstone. Apply Now.

Full Name
Mobile Number

BCA is a three-year bachelor's degree program in computer applications. This course covers all the core concepts of computers and software use and teaches coding and development in various programming environments.  It has six evenly distributed semesters. In this blog, you will learn everything about BCA Subjects, the BCA syllabus and books.

Explore Job-Ready Courses from Leading Campuses

Take the first step towards your dream job.

BCA Syllabus for 1st Year

In the first year of pursuing a BCA degree, you will learn the basic concepts that will empower you to create, maintain and scale your software processes in the long run. The exact curriculum may vary depending on the institution. Besides, the first year is when the core BCA subjects are introduced to the students. The course has a mix of both theory and practical subjects. The courses in this phase of the program include the following:

Semester 1  Semester 2
Communicative English Digital Computer Fundamentals
Operating Systems Introduction To Programming Using C
Foundational Mathematics C Programming Lab
Hardware Lab  PC Software Lab
Data Structures Visual Programming Lab
Data Structures Lab Case Tools Lab
Basic Discrete Mathematics
Statistics I For BCA

BCA Syllabus for 2nd Year

In the second year of this course, you will learn more about the practical concepts in computer application. You may also get to choose your specialisation subject during this time. 

The following list contains all the BCA subjects you will learn in the second year of pursuing your BCA degree:

Semester 3 Semester 4
Professional English Introductory Computing Algebra
Computer Networks Software Engineering
Language Lab Database Management Systems
Programming In Java Financial Accounting using Computers
Java Programming Lab Object-Oriented Programming Using C++
DBMS Project Lab C++ Lab
Web Technology Lab Oracle Lab
Financial Management with Software Domain Lab 
Interpersonal Communication

You may also find a few changes in the chronology in which a few of the practical oriented subjects are taught. 

BCA Syllabus for 3rd Year

In the 3rd year of pursuing your BCA degree, your conventional classroom learning shifts focus to your chosen specialisations. You may also get to experience live projects as part of your curriculum.

Here are the BCA subjects that you will learn in your 3rd year of pursuing the BCA degree from any reputed institute in India:

Semester 5 Semester 6
Multimedia Applications Soft Computing
User Interface Design Python Programming Lab
Unix Programming Business Intelligence Lab
Unix Lab Graphics And Animation Lab
Python Programming Design And Analysis Of Algorithms
Business Intelligence Client-Server Computing
OOAD Using UML Advanced Database Management System
Graphics And Animation Cloud Computing
Computer Architecture
Web Designing Project

The BCA syllabus for specialisation courses is quite different from that of the core BCA course, especially in the 3rd year. The above table lists the syllabus for the conventional BCA degree, which is common in most reputed colleges in India.  

BCA Syllabus for Specialisation

BCA specialisation syllabus is a bit different from the standard syllabus for a BCA general degree. Although the core subjects from the general BCA degree are covered, you will learn the BCA subjects for specialization in a more comprehensive manner.

There are many specialisations offered by colleges, including data sciences, data analytics, automation, AI and ML, etc. While most of these courses are new and don’t have a set curriculum, data science and data analytics specialisations are better established and sought after today. 

The following table lists the BCA subjects you will focus on throughout your coursework if you choose to pursue the BCA with a specialisation in Data Analytics:

BCA in Data Analytics

Semester 1 Semester 2
English for Professionals Introduction to Data Science
Communication Skills Probability & Statistics - I
Computer Architecture and Organisation Excel for Data Scientists (Tool Based)
Mathematics for Data Scientists - I Object-Oriented Programming using Java
Operating System Object-Oriented Programming using Java Lab
Programming in C Data Structures and Algorithms 
Programming in C Lab Data Structures and Algorithms Lab
Operating System Lab Software Engineering
Mathematics for Data Scientists - II Reasoning and Thinking
Semester 3 Semester 4
Probability & Statistics - II Data Manipulation Using PL / SQL Programming
Scientific Programming Using R (Tool Based) Inferential Statistics Lab
Computer Networks Machine Learning Algorithms - I (Tool Based)
Database Management Systems Exploratory Data Analysis (Tool Based)
Database Management Systems Lab Business Communication and Presentation Skills / Professional Ethics
Inferential Statistics Big Data Analytics (Tool Based)
Software Engineering Lab Data Manipulation Using PL / SQL Programming Lab
Times Series Analysis
Semester 5 Semester 6
Cloud Computing Data Science Project Management
Machine Learning Algorithms - II (Tool Based) Data Science Industry Use Cases
Cloud Computing Lab Advance in Data Science
Times Series Analysis LabData Visualisation (Tool Based) Project and Viva Voce
Internet of Things Artificial Intelligence
Neural Networks

However, the exact course structure can vary depending on the institute and the nature of the course. It is usually a practical oriented field.

The following table lists the BCA subjects you will focus on throughout your coursework if you choose to pursue the BCA with a specialisation in Data Sciences:

BCA in Data Sciences

Semester 1 Semester 2
Communicative English Professional Communication
Computer Languages Statistics and Probability
Discrete Mathematics Database Management System 
Environmental Science and Sustainability Data Structure and Algorithm
Computer Essentials for Data Science Operating System
Computational Thinking and Programming in C Database Management System Lab
Computational Thinking and Programming in C Lab Data Structures Lab
Semester 3 Semester 4
Essential of Data Collection Ethics Data Modelling and Visualisation
Descriptive Statistics Python Programming
Computer Networks Introduction to Java and Web Programming
Object-Oriented Programming using C++ Python Programming Lab
Scripting Technologies Lab Java Programming Lab
Practical Exposure to Data Collection Lab Introduction to Data Mining
Software Engineering
Semester 5 Semester 6
R Programming for Data Sciences Big Data Analytics
Machine Learning Information and Data Security
Introduction to Parallel Programming and Data Optimisation Natural Language Processing
Introduction to Parallel Programming Lab Big Data Analytics Lab
Fundamentals of Machine Learning Lab Project

The exact course structure can differ from college to college so it is recommended that you stay updated on the current industry trends and college curricula when opting for a specialisation degree.

You may also pursue a BCA with a specialisation in Artificial Intelligence and Machine Learning, Cloud Computing, and Full Stack Development. These are new and emerging fields. They cover most of the core BCA subjects and have an added specialisation course in one of the mentioned subjects. These specialisation papers have a higher credit score as well.

BCA in AI & ML, Cloud, Full Stack

The following table lists the usual syllabus you will focus on throughout your coursework if you choose to pursue the BCA with a specialisation in such new fields :

Semester 1 Semester 2
Fundamentals of Computer Systems Environmental Studies 
Programming Fundamentals using C-I Operating System 
Digital Electronics Database Management System
Communication Skills  Computer Architecture
Office Automation Tools Lab Programming Fundamentals using C-II
Programming Fundamentals using C-I Lab Database Management System Lab 
Communication Skills Lab Programming Fundamentals using C-II Lab
Designing Lab (Photoshop and CorelDraw) HTML Lab
Digital Electronics Lab UNIX and Shell Programming Lab
Specialisation Subject: AI & ML, Cloud, Full Stack, et al. Specialisation Subject: AI & ML, Cloud, Full Stack, et al.
Semester 3 Semester 4
Computer Network Soft Skills
Programming in PHP  Programming in Java 
Data Structures and Algorithms using C  Programming in Python
Programming Fundamentals using C++ Data Science & Analytics
PHP Lab  Programming in Java Lab
Data Structure and Algorithm using C Lab Programming in Python Lab
Programming Fundamentals using C++ Lab Data Science & Analytics Lab
Multimedia Lab (Audio/Video editing tools, Flash, Dreamweaver) Specialisation Subject: AI & ML, Cloud, Full Stack, et al. - 1
Specialisation Subject: AI & ML, Cloud, Full Stack, etc. - 1 Specialisation Subject: AI & ML, Cloud, Full Stack, etc. - 2
Specialisation Subject: AI & ML, Cloud, Full Stack, etc. - 2
Semester 5 Semester 6
Introduction to Accounting and Economics Web Development
Android Applications Development  Agile, Design thinking and DevOps 
Information Security and Cyber Law Software Engineerimg
Advance Java  Skill Development
Android Applications Development Lab  Specialisation Subject: AI & ML, Cloud, Full Stack, et al.
Advance Java Lab  Projects
Introduction to PL/SQL Lab
Specialisation Subject: AI & ML, Cloud, Full Stack, et al.

BCA Subjects

The subjects taught when pursuing the BCA degree help you perform technological tasks at the industrial level. 

Here is a semester-wise discussion of the BCA subjects taught under the conventional BCA degree program:

Semester 1 

The first semester is the foundational period of the BCA degree. You will learn the basic maths and algorithms you need to build software and solve technical issues. These may include knowledge of operating systems, statistics for programming, hardware labs, data structures, etc. You will also learn communication skills and foundational maths during this semester. 

Semester 2

In the 2nd semester of your BCA degree, you will learn the fundamentals of a few programming languages, such as C. In the second semester of the BCA syllabus, you will also get hands-on experience of coding in C during your lab classes and learn to use case tools. You will also get introduced to Visual Programming and PC Software Labs.

Semester 3 During this semester, you will receive exposure to Java as a programming language as one of  your BCA subjects and learn the fundamentals of web technologies, DBMS and computer networks. You will also be introduced to the languages lab and learn financial management through the use of software technologies. You will also have a course on professional English during this semester.
Semester 4 The 4th semester is a technical phase in your BCA degree. The BCA subjects in semester 4 will help you learn the central concepts that govern the discipline. It includes foundational courses such as Computing Algebra, Financial management using technology, software engineering fundamentals, et al. You will also experience Oracle, C++, and Domain Labs. You will also cover DBMS systems during this phase.
Semester 5 This semester introduces Python as a programming language. The BCA syllabus in this semester will teach you about UNIX systems, graphics and animation, user interface design, UML, and perform practical classes on UNIX systems. You will also learn Business Intelligence and the use of software in the fifth semester.  You may also get to work on live projects during this time.
Semester 6 This is one of the most practical oriented semesters of the course. You will learn BCA subjects such as computer architecture, cloud computing, soft computing, and fundamentals of forming algorithms and software engineering in different languages. You will also learn multimedia applications and client servicing. You may also get to work on industry projects during this last semester of our BCA degree.

However, this list of subjects is non-exhaustive. Many reputed institutes may change a few courses depending on your specialisation and the faculty at large. 

The BCA subjects in the various specialisations under the overarching umbrella of the BCA degree are discussed in the table below:

Specialisations  About the Subjects
Data Analytics You will learn most of the fundamental BCA subjects taught in the traditional BCA courses in this course with added modules in data-related subjects. These subjects may include data analytics software, web data analytics, inferential statistics, linear data modelling, data visualisation, big data analytics, and time series analysis.
Data Sciences

This course is ideal if you’re an aspiring data scientist. It includes the core BCA courses and also has added modules in statistical methods, big data management, database management, data mining, data analytics, linear regression models, data modelling software, etc. 

Artificial Intelligence and Machine Learning Alongside learning the fundamental BCA subjects, you will also learn AI and ML subjects. These include subjects such as Predictive Analytics Modeler, Text Analytics, Data Visualisation, Rapid Development for AI, AI Services, Machine Learning Services, Python for Data Science, Machine Learning with Python, Data Visualization with Python, Deep Learning Fundamentals, Deep Learning with TensorFlow, Accelerating Deep Learning with GPU.
Cloud Computing Alongside learning the core BCA subjects, you will also learn specific clouds subjects such as Computer Networks, JSP & Servlets, Internet of Things, Cloud Computing Concepts, IBM Cloud Fundamentals, AWS, Google Cloud Services, Spring Framework, Angular JS, Web Services & REST API Development, etc.
Full Stack Development In your full-stack development specialisation course, you will focus on web app & android app development. You will learn back end coding environments and front end software as well. BCA Subjects for this course would include Node JS, Angular JS, Vanilla JS, frameworks in Java, using the Android SDK, API development, etc.

Here are a few great books for you to follow if you are planning to pursue a BCA degree:

Book Name Author/Publisher 
Computer Science: An Overview Glenn Brookshear, Dennis Brylow 
Pearson Publications
Computer Networks: A Systems Approach Bruce S. Davie, Larry L. Peterson
Let Us C: Authentic Guide To C Programming Language Yashavant Kanetkar
BP Publications
Modern Full-Stack Development: Using TypeScript, React, Node.js, Webpack, and Docker Frank W. Zammetti
Real-World Software Development: A Project-Driven Guide To Fundamentals In Java Raoul-Gabriel UrmaRichard Warbouton
O’Reilly Publications
Python Cookbook: Recipes for Mastering Python Brian K. Jones, David M. Beazley
Data Science for Business: What You Need to Know about Data Mining and Data-Analytic Thinking Tom Fawcett
O Reilly
R for Data Science Garrett Grolemund and Hadley Wickham
O Reilly
Think Stats: Probability and Statistics for Programmers Allen B. Downey
O Reilly
Cloud Computing, A text book for BCA Dr. Samiksha Suri
Web Designing and Publishing Prof. Satish Jain (Author), M. Geetha Iyer
BPB Publishers
Operating System Concepts Silberschatz (Author), Galvin (Author), Gagne
Wiley Publishers
Unix Operating System  Mukesh Kumar 
Kalyani Publishing
AI and Machine Learning for Coders: A Programmer's Guide to Artificial Intelligence Laurence Moroney
O Reilly 
AI & ML - Powering the Agents of Automation   Deepika M, Vijay Cuddapah, Amitendra Srivastava, Srinivas MahankaliBPB Publishing
Learning Web App Development: Build Quickly with Proven JavaScript Techniques Semmy Purewal
Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems Geron Aurelien
Machine Learning For Dummies John Mueller, Luca Massaron

Enter a world of


Apply for a graduate or a postgraduate program and shape your career now!

Full Name
Mobile Number