CS 435 N / CS 740: Software Engineering

This page gives information about the courses ``CS 435 N: Software Engineering'' and "CS 740: Software Engineering" taught by the Department of Computer Science and Engineering at the Indian Institute of Technology, Delhi

General information about the course is available under the following headings:

 Overview | Objectives | Course Description | Prerequisites

The course is being taught in the Fall Semester of year 2000 by Sanjiva Prasad and Gautam M Shroff.. Information about this course offering is available under the following headings:

 Staff | Textbooks | Syllabus | Resources | Administrative Information and Grading Policy

Also available are the following (at least from within IITD):




CS 435 N: Software Engineering is an elective course in computer science.


Course Description

The (new!) Courses of Study booklet has this to say:

CS 435 N: Software Engineering

4 Credits: 3-0-2 (3 Lectures a week, two practical hours)
Concepts and techniques relevant to production of large software systems: structured programming, top-down design and development, information hiding; strength, coupling and complexity measures; procedural, data, and control abstraction; specifications; organization and management of large software design projects; chief programmer teams; program libraries; documentation, design methods and testing; S/W project management; parameter for cost estimation. Several programming projects of varying size undertaken by students working singly and in groups using software specification tools.


Data Structures.


Instructor: Dr Sanjiva Prasad
Teaching Assistants: O


I recommend the following text for this course (it is inexpensive, available and will cover about half the material in the course). That said, I will not follow any single text book in this course --- for two reasons: (1) I would like to cover the material in a different way; (2) I do not believe it is my job to parrot what appears in a text book. However, I strongly suggest you read the books I recommend to complement the material I discuss in class. I may periodically ask you to read chapters from the texts, and will not hesitate to base assignments and exam questions on that material.

Other reference material:

I will also try to distribute some reading material (but no promises).


  1. UML Modelling
  2. GUI modelling
  3. Software architecture
  4. Software project managementL Estimation, Configuration, CMM
  5. Process Architectures
  1. Requirements specification
  2. Formal relationship between specifications and implementation
  3. Modules and Interfaces
  4. Abstract State Machines.
  5. Process notations: concurrency and non-determinism
  1. Literate programming: web and noweb
  2. Beyond editing: emacs
  3. Version control: rcs
  4. Text processing: lex and yacc
  5. Scripting: perl

  6. Resources

    Administrative Information

    Schedule and Classrooms:

    E slot in the time table.

    Lectures in VI-??. A room that I detest.
    Monday 11:00-11:55
    Wednesday 11:00-11:55 
    Friday 11:00-11:55 

    Laboratory hours at your convenience

    Exam Schedule:



    Assignments and Homework
    Other Assessment

    Grading Policy:

    As per the Institute regulations, an ``A'' grade will be awarded only over 80% and no student with less than 30% will be given a passing grade.

    An ``I'' grade can only be awarded only in the case of a serious illness during the major exam. A make-up exam will be scheduled at the earliest, and the ``I'' grade will be converted as soon as possible. There will be no make-up tests for the minors.

    Grades may be drastically lowered if the student fails to comply with the attendance requirements, or is dishonest.

    Other policies:

    Sanjiva Prasad / Dept. Computer Science and Engineering / IIT Delhi / Hauz Khas/ New Delhi 110016 / sanjiva@cse.iitd.ernet.in