Software Engineering

Spring 2003; CMSC 435; Section 0201

Course Information
Class Schedule
Course Readings
Bug Database
Atif M. Memon's Page
Send Atif an e-mail
Send the TA an email


Welcome to the home-page for the Software Engineering Course (CMSC 435, Section 0201).

    In most of our computer science classes, we have written small programs and developed software that had few users, if any. What can we say about the design, analysis, quality, and reusability of these programs? Did we keep these issues in mind when we developed our programs? In other words, did we "engineer" the software? 

    In the real world, we will be required to team-develop large software that may be used by hundreds of people. We want to make sure that the software we develop is "engineered" well. In this course, we will learn how to engineer software by developing a detailed design, testing/debugging the design for correctness, writing the code, and testing the quality of our software. 

    More specifically, we will study techniques for:

  1. Planning and managing a software development project
  2. Capturing the requirements
  3. Designing the system
  4. Writing the code
  5. Testing each functional unit and the overall system
  6. Delivering the software
  7. Maintaining the software

Happy Software Engineering!

What's New

    Since software development is a team sport, communication and class participation is strongly encouraged. I have developed a discussion page for this class. Check it out by clicking here.


Classes Start 1/28/03 (Tuesday) 
Spring Break 3/24/03 (Monday) through 3/30/03 (Sunday) 
Last Class 5/14/03 (Wednesday) 
Study Day 5/15/03 (Thursday) 
Final Exams Start 5/16/03 (Friday) 
Final Exams End 5/22/03 (Thursday) 
Spring Commencement 5/23/03 (Friday)
Back to Top

Copyright: Dept. of Computer Science, University of Maryland.
For problems or questions regarding this web, contact Atif M. Memon.
Last updated: January 17, 2003.