Skip to content
September 2026 qualifier: applications close Sun 27 Sep · Week 1 starts Fri 2 Oct
Qualifier Hub

IITM BS Software Engineering (BSCS3001): Syllabus and Tips

By Editorial TeamLast reviewed

5 min readData Science
On this page

Software Engineering (BSCS3001) is a 4 credit core course at the BSc level of the IITM BS in Data Science. It teaches how real software gets built: finding out what users need, designing, reading and reviewing code, testing and deploying. The course page lists no prerequisite. You can take it as soon as you enter the degree level, which itself needs both diplomas.

Software Engineering at a glance

CodeCreditsLevelPrerequisites
BSCS30014Degree (level 3)None

The course page lists Dr. Sridhar Iyer and Dr. Prajish Prasad as instructors. It calls the course type "Core Option I". The handbook's course table tags it "Core_BP" and gives the same 4 credits and no prerequisite. The labels differ, but the handbook is clear that every student entering the BSc level must take it.

What you learn in Software Engineering

The course runs for 12 weeks. Here is the flow in plain words.

  • Weeks 1 to 3: before any code. You break the development process into its stages. You learn to separate functional requirements (what the software does) from non-functional ones (speed, security, ease of use). Then you turn requirements into a first conceptual design.
  • Weeks 4 to 6: design. Usability comes first. Then you model the system, choose an architecture and learn how to judge whether a design is good.
  • Weeks 7 to 9: working with code. You practise understanding code someone else wrote, debugging it, reviewing it and documenting it.
  • Weeks 10 to 12: shipping. One week on testing, one on deployment and monitoring, and a last week on communication, productivity and how software teams work inside organisations.

The suggested books are by Pankaj Jalote, by Amy Ko, and by Armando Fox with David Patterson.

How Software Engineering is assessed

The course page lists weekly online assignments, 2 in-person invigilated quizzes and 1 in-person invigilated end term exam. It does not mention an OPPE or a project. To see how these parts work, read about Quiz 1 and Quiz 2 and the end term exam.

Where it counts

Software Engineering is one of the five mandatory courses of the BSc degree level. The others are Software Testing, AI: Search Methods for Problem Solving, Deep Learning and Strategies for Professional Growth. Together they give 20 of the 28 BSc level credits. It is not part of any minor. The handbook table (updated 18 March 2026) marks it as offered in May 2026, September 2026 and January 2027.

Who finds it hard and how to prepare

If you expect a coding course, this one can feel strange. Only a few weeks touch code directly. Most of the syllabus is about process, design and teamwork. That rewards clear thinking and good notes more than typing speed.

  • Use your MAD apps as examples. When a lecture talks about requirements or architecture, map it onto the app you built in Modern Application Development. Abstract terms become concrete.
  • Keep a one-line glossary. Many terms sound alike. A short list in your own words helps a lot before each quiz.
  • Read code you did not write. Pick a small open source project and try to explain one file. Weeks 7 to 9 ask for exactly this skill.
  • Write one requirement list for a real app. Take an app you use daily and list five functional and five non-functional requirements. It is quick practice for weeks 2 and 3.
  • Finish the weekly assignments on time. They follow the lectures closely and are your main practice.

What to take before and after

The natural partner is Software Testing (BSCS3002). Software Engineering spends one week on testing, and Software Testing spends twelve. Both are mandatory and neither has a prerequisite, so you can take them in the same term, within the limit of 4 courses per term. For a hands-on follow-up, the Application Development Lab (BSCS4010) has you build a full-stack app from start to end.

Common questions

Can I skip Software Engineering and take an elective instead?

No. The handbook says students entering the BSc level must select Software Engineering, Software Testing, AI, Deep Learning and Strategies for Professional Growth. Electives can be added alongside these or after them.

Is there any programming in this course?

You will read, debug and review code in weeks 7 to 9. But the course page does not list a programming exam or an OPPE. The assessment is weekly assignments, two quizzes and an end term exam.

Do I need to buy the suggested books?

The course page calls them suggested books, not required ones. The lectures and weekly assignments are your main material. Use a book when a lecture topic feels thin.

If I exit with the BSc and rejoin later, will I face this subject again?

Yes. The handbook's re-entry rules say a student who exited with the BSc and wants to join the BS level must take final exams in Deep Learning, AI, Software Engineering and Software Testing. See re-entry after exit.

14 Software Engineering handwritten and PDF notes by students

Official sources

All posts in Course guides

Was this page helpful?

Share with your study group:WhatsAppTelegram