Home > Teaching > CS 253: Software Development and Operations

CS 253: Software Development and Operations

Credits: 3-0-3-12

Dr. Sandeep K. Shukla / Dr. T. V. Prabhakar /Dr. Indranil Saha/Dr. Biswabandan Panda/Dr. Debadatta Mishra/Dr. Preeti Malakar/Dr. Amey Karkare

Major, Measurable Learning Objectives

Having successfully completed this course, the student will be able to:

Prerequisites and Co-requisites: ESC 101, ESO 207
Texts and Special Teaching Aids

Course notes, lecture slides, man pages, and other documentations will be provided to students by the instructor. Self-study would be an important component of this course.


The students will be exposed to the following topics:

  1. Regular Expression Tools (e.g Awk)
  2. Lex and Yacc
  3. Bash Scripting
  4. Basic Perl, Python or Ruby Scripting
  5. Make File Details and Autoconfiguration tools, gdb
  6. Object Oriented Programming (C++ or Java)
  7. Unit Testing Tools and Techniques
  8. Integration and System Level Testing Techniques
  9. Software Requirements Analysis, Requirements Generation, Documentation
  10. Software Architecture, Functional, Performance and Security Specification
  11. Software Design with Object Oriented Design Techniques, Design Documentation
  12. Implementation techniques with defensive programming and secure programming techniques
  13. Unit testing
  14. Development and Integration and System Testing, Test Automation
  15. Deployment Issues and Maintenance issues
  16. Software Quality Metrics and measurements

The course will consist of 3 hours of lectures per week, projects and homework, and a course project.