SOFTWARE ENGINEERING &
SOFTWARE ENGINEERING LABORATORY

VENUE
Theory - Nalanda Complex , NR313 [Odd Roll No] & NR314 [Even Roll No]
Labroratory - SW Lab ( Department of CSE ) & SW Lab ( Annex Building )

  • Course Code
    CS20202 [THEORY]
    CS29202 [LAB]
  • Term
    Spring 2022-23
  • Schedule [Theory]
    Wednesday (12:00 - 12:55)
    Thursday (11:00 - 11:55)
    Friday (9:00 - 9:55)
  • Schedule [Lab]
    Tuesday (2:00 - 4:55 pm)
  • Start Date
    03 Jan, 2023

INSTRUCTORS

Abir Das

Assistant Professor
CSE Department , IIT Kharagpur

Sourangshu Bhattacharya

Assistant Professor
CSE Department , IIT Kharagpur

COURSE OVERVIEW

  • Introduction to Software Engineering
  • Procedural Extensions over C in C++
  • Software Development Life Cycle
  • Design Pattern
  • Smart Software Engineering
  • Object-oriented Programming in C++
  • Advanced OOP
  • Software Testing
  • Software Project Management

ANNOUNCEMENTS

LECTURES

Introduction
04 Jan, 2023
Quick Recap of C
Week 1
C and C++
Constants and Inline Functions
Week 1
Reference & Pointer
Week 2
Default Parameters & Function Overloading
Week 2
Operator Overloading
Week 2
Dynamic Memory Management
Week 3
Classes and Objects
Week 3
Access Specifiers
Week 3
Constructors, Destructors & Object Lifetime
Week 4
Copy Constructor and Copy Assignment Operator
Week 4
Const-ness
Week 4
Static Members
Week 5
Friend Functions and Friend Class
Week 5
Overloading Operator for User-Defined Types: Part 1
Week 6
Overloading Operator for User-Defined Types: Part 2
Week 6
Namespaces
Week 6
Inheritence (Part 1)
Week 7
Inheritence (Part 2): Override and Overload
Week 7
Inheritence (Part 3): Constructors, Destructors & Object Lifetime
Week 8
Inheritance: Part 4: Phone Hierarchy
Week 8
Inheritance: Part 5: private & protected Inheritance
Week 8
Polymorphism: Part 1: Type Casting
Week 8
Polymorphism: Part 2: Static and Dynamic Binding
Week 9
Polymorphism: Part 3: Abstract Base Class
Week 9
Polymorphism: Part 4: Staff Salary Processing using C
Week 9
Virtual Function Table
Week 10
Type Casting & Cast Operators: Part 1
Week 10
Type Casting & Cast Operators: Part 2
Week 10
Type Casting & Cast Operators: Part 3
Week 10
Multiple Inheritence
Week 11
Exceptions (Error handling in C)
Week 11
Exceptions (Error handling in C++): Part 2
Week 11
Template (Function Template): Part 1
Week 12
Template (Function Template): Part 2
Week 12
Software Development Life Cycle (SDLC)
Analysis, Design and UML
UML - Overview
Week 13
UML - Use Case Diagrams
Week 13
UML - Class Diagrams
Week 13
Software Testing
Week 14
Design Patterns
Week 14
Functors: Function Objects
Week 14

TEACHING ASSISTANTS