IIT Madras BS Data Science Courses: Full List With Codes (2026)
Editorial Team
The IIT Madras BS in Data Science and Applications has 4 levels and needs 142 credits. You take 8 foundation courses, 12 diploma courses with 4 projects, and 5 core degree courses. The rest are electives you pick from a list of 36. If you stop at the BSc, you need 114 credits.
Every course name, code and credit below comes from the official academics page, checked on 25 September 2026.
Courses and credits at each level
| Level | Credits | What you take | Total so far |
|---|---|---|---|
| Foundation | 32 | 8 courses | 32 |
| Diploma in Programming | 27 | 6 courses and 2 projects | 59 |
| Diploma in Data Science | 27 | 6 courses and 2 projects | 86 |
| BSc degree level | 28 | 5 core courses and 8 elective credits | 114 |
| BS degree level | 28 | Electives, apprenticeship optional | 142 |
You must pass all 8 foundation courses before any diploma course. You must finish both diplomas, all 12 courses and 4 projects, before any degree course. For the cost of each level, see IITM BS Data Science fees. For exits and time limits, see the programme structure.
Foundation level courses (32 credits)
| Course | Code | Credits | Guide |
|---|---|---|---|
| Mathematics for Data Science I | BSMA1001 | 4 | Guide |
| Statistics for Data Science I | BSMA1002 | 4 | Guide |
| Computational Thinking | BSCS1001 | 4 | Guide |
| English I | BSHS1001 | 4 | Guide |
| Mathematics for Data Science II | BSMA1003 | 4 | Guide |
| Statistics for Data Science II | BSMA1004 | 4 | Guide |
| Programming in Python | BSCS1002 | 4 | Guide |
| English II | BSHS1002 | 4 | Guide |
The first four have no prerequisite. Maths II needs Maths I. Python needs Computational Thinking. English II needs English I. Stats II needs Stats I and Maths I, and Maths II must be taken in the same term or earlier. More in the foundation level guide.
Diploma in Programming courses (27 credits)
| Course | Code | Credits | Guide |
|---|---|---|---|
| Database Management Systems | BSCS2001 | 4 | Guide |
| Programming, Data Structures and Algorithms using Python | BSCS2002 | 4 | Guide |
| Modern Application Development I | BSCS2003 | 4 | Guide |
| Modern Application Development I Project | BSCS2003P | 2 | Guide |
| Programming Concepts using Java | BSCS2005 | 4 | Guide |
| Modern Application Development II | BSCS2006 | 4 | Guide |
| Modern Application Development II Project | BSCS2006P | 2 | Guide |
| System Commands | BSSE2001 | 3 | Guide |
All 8 are compulsory for this diploma.
Diploma in Data Science courses (27 credits)
From the September 2025 term, this diploma has a fixed part and a choice:
- Fixed, 21 credits: 5 courses worth 19 credits, plus the Machine Learning Practice project (2 credits).
- Your choice, 6 credits: Option 1 or Option 2. Each option is one theory course and one project.
| Course | Code | Credits | Guide |
|---|---|---|---|
| Machine Learning Foundations | BSCS2004 | 4 | Guide |
| Business Data Management | BSMS2001 | 4 | Guide |
| Machine Learning Techniques | BSCS2007 | 4 | Guide |
| Machine Learning Practice | BSCS2008 | 4 | Guide |
| Machine Learning Practice Project | BSCS2008P | 2 | Guide |
| Tools in Data Science | BSSE2002 | 3 | Guide |
| Business Data Management Project (Option 1) | BSMS2001P | 2 | Guide |
| Business Analytics (Option 1) | BSMS2002 | 4 | Guide |
| Introduction to Deep Learning and Generative AI (Option 2) | BSDA2001 | 4 | Guide |
| Deep Learning and Generative AI Project (Option 2) | BSDA2001P | 2 | Guide |
The handbook adds one rule. If you finish Option 1, you cannot take the Option 2 courses at the degree level. If you finish Option 2, you can still take the Option 1 courses later as degree electives. More in Diploma in Data Science.
BSc and BS degree level courses
Only 5 degree courses are compulsory. Everything else comes from the elective list.
- BSc level, 28 credits: the 5 core courses (20 credits) plus 8 elective credits.
- BS level, 28 credits: all electives. The handbook says this must include 2 programming and 2 data science courses at level 4 or higher, and 4 credits of humanities or management (HS/MG).
- NPTEL: up to 8 credits in total across the BSc and BS levels. The handbook allows at most 4 of them in the BSc level.
- Apprenticeship: optional, up to 12 credits in the BS level.
Core courses (compulsory)
| Course | Code | Credits | Guide |
|---|---|---|---|
| Software Engineering | BSCS3001 | 4 | Guide |
| Software Testing | BSCS3002 | 4 | Guide |
| AI: Search Methods for Problem Solving | BSCS3003 | 4 | Guide |
| Deep Learning | BSCS3004 | 4 | Guide |
| Strategies for Professional Growth | BSGN3001 | 4 | Guide |
The page groups these as two pairs (Software Engineering with Software Testing, and AI Search with Deep Learning) plus one mandatory course, Strategies for Professional Growth.
Electives (36 courses, 4 credits each)
The page says this list may change each term, depending on availability.
| Course | Code | Credits | Guide |
|---|---|---|---|
| Algorithmic Thinking in Bioinformatics | BSBT4001 | 4 | Guide |
| Big Data and Biological Networks | BSBT4002 | 4 | Guide |
| Data Visualization Design | BSCS4001 | 4 | Guide |
| Speech Technology | BSEE4001 | 4 | Guide |
| Design Thinking for Data-Driven App Development | BSMS4002 | 4 | Guide |
| Industry 4.0 | BSMS4001 | 4 | Guide |
| Market Research | BSMS3002 | 4 | Guide |
| Privacy & Security in Online Social Media | BSCS4003 | 4 | Guide |
| Introduction to Big Data | BSDA5001 | 4 | Guide |
| Financial Forensics | BSMS4003 | 4 | Guide |
| Linear Statistical Models | BSMA3012 | 4 | Guide |
| Advanced Algorithms | BSCS4021 | 4 | Guide |
| Statistical Computing | BSMA3014 | 4 | Guide |
| Computer Systems Design | BSCS3031 | 4 | Guide |
| Programming in C | BSCS3005 | 4 | Guide |
| Mathematical Thinking | BSMA2001 | 4 | Guide |
| Large Language Models | BSDA5004 | 4 | Guide |
| Introduction to Natural Language Processing (i-NLP) | BSDA5005 | 4 | Guide |
| Deep Learning for Computer Vision | BSDA5006 | 4 | Guide |
| Managerial Economics | BSMS3033 | 4 | Guide |
| Game Theory and Strategy | BSMS4023 | 4 | Guide |
| Corporate Finance | BSMS3034 | 4 | Guide |
| Deep Learning Practice | BSDA5013 | 4 | Guide |
| Operating Systems | BSCS4022 | 4 | Guide |
| Mathematical Foundations of Generative AI | BSDA5002 | 4 | Guide |
| Algorithms for Data Science (ADS) | BSDA5003 | 4 | Guide |
| Machine Learning Operations (MLOps) | BSDA5014 | 4 | Guide |
| Data Science and AI Lab | BSDA4001 | 4 | Guide |
| App Dev Lab | BSCS4010 | 4 | Guide |
| Computer Networks | BSCS4024 | 4 | Guide |
| Theory of Computation | BSCS3021 | 4 | Guide |
| Reinforcement Learning | BSDA5007 | 4 | Guide |
| Compiler Design | BSCS4032 | 4 | Guide |
| Discrete Mathematics | BSMA3001 | 4 | Guide |
| Sequential Decision Making | BSDA6004 | 4 | Guide |
| Linear Models with Applications | BSMA3015 | 4 | Guide |
The handbook's elective table (updated 18 March 2026) has 31 of these. The other five are only on the academics page: Theory of Computation, Compiler Design, Discrete Mathematics, Sequential Decision Making and Linear Models with Applications. The handbook also lists 2 comprehensive exam courses of 2 credits each. To see which electives count as programming, data science or HS/MG, read the electives by stream.
After the BS: PG Diploma and MTech
These two levels are optional. The PG Diploma in AI & ML adds 20 credits: 3 core courses and 2 electives from a list of 11. The core courses are ML Ops (BSDA5014), Generative AI (BSDA5002) and Algorithms for Data Science (BSDA5003). These share codes with three electives above. The MTech in AI & ML adds a 20 credit MTech Project (BSDA6901). You need a CGPA of at least 8.0 to move to the PG Diploma. See PG Diploma and MTech.
PYQs, lectures and notes for each course
Most electives have pages too. Browse previous year papers on QuizSpace (opens in a new tab), all lecture videos and student notes.
Common questions
How many subjects are in IITM BS Data Science?
For the full BS, 8 foundation courses, 12 diploma courses, 4 diploma projects and 5 core degree courses are fixed. The other 36 credits are electives. If each elective is a 4 credit programme course, that is 9 electives, so 34 courses and 4 projects in all.
Which courses are in the IITM BS foundation level?
Mathematics for Data Science I and II, Statistics for Data Science I and II, Computational Thinking, Programming in Python, and English I and II. Each is 4 credits, so the level is 32 credits. You must pass all 8 before you can start the diploma.
Can I choose my own courses?
Only in some places. The foundation courses and the Diploma in Programming are fixed. In the Diploma in Data Science you choose Option 1 or Option 2. At the degree level the 5 core courses are fixed, and you choose the electives within the stream rules.
Does every elective run every term?
No. The official page says the elective list may change each term, depending on availability. Check the list on the registration page each term before you plan.