5000+ students unlocked their dream job with Sunstone. Apply Now.
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
HELP
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 |
