Colorado State University Computer Science Department


CS314
Software Development Methods
Spring 2003


CS314 on WebCT

All CS 314 students need to have a WebCT account which is the same as the eid. Get an eid here if you don't have one.

All lecture notes, assignments, quiz solutions, projects and grades will be made available through WebCT. Announcements will be made through the bulletin board in WebCT. You can set up discussion groups and chat-rooms for the course using WebCT. You are responsible for checking WebCT regularly for new announcements, changes, and updates.


Objectives General Information Course Materials Quizzes
Assignments Projects Exams Grading


Course Objectives

Prerequisite: CS253 and all the prerequisites for CS253 including CS166 (Discrete Structures) and CS200 (Data Structures).

This course will expose students to techniques used to develop large software systems. Major topics include system and requirements engineering, object-oriented design, and systematic code testing techniques. Students will use CASE tools for many of the topics mentioned below.

The following topics will be covered in the course:

  1. Software product and process
  2. Examples of disasters related to "bad" S/W Engineering
  3. GUI-based application development using Java Swing
  4. Requirements analysis
  5. Object oriented design
  6. Software inspections and reviews
  7. Black box and white box testing
  8. Software configuration management
  9. Software metrics


General Information

Instructor:
Sudipto Ghosh
US Mail: Computer Science Department, Colorado State University, Fort Collins, CO 80523
Phone: (970) 491-4608
Fax: (970) 491-2466
Email: ghosh@cs.colostate.edu
Office Location: 224 University Services Center
Office Hours: Tuesday: 9:30-10:30am, Thursday: 9:30-10:30am

GTA:
Trung Thanh Dinh Trong
US Mail: Computer Science Department, Colorado State University, Fort Collins, CO 80523
Phone: Lab: (970) 491-7458, Cubicle: (970) 491-6454
Fax: (970) 491-2466
Email: trungdt@cs.colostate.edu
Office Hours: Thursday and Friday, 4-6pm, Lab-Op table, CS North Lab.

Lectures:
TR 12:30-1:45
Eddy 100

Policies:

No late turnins are allowed for team projects. We will allow late turnins for individual assignments with some penalty. You lose 25% of the assignment grade for one, 50% for two and 75% for three extra days. Assignments will not be accepted after 3 extra days. Extensions may be granted when permission is sought in advance for reasons that are unexpected and beyond your control.

Homework assignments are to be done individually. Projects are to be done in groups. You are responsible for any announcements made in class and on WebCT.

All written work must be typed on 8.5 by 11 paper, have at least 1 inch margins and be printed in 10, 11 or 12 point type. Work should be single-spaced. Diagrams have to be drawn with the help of Rational Rose. All work must be neat and legible.

Read the departmental policy on cheating, incompletes and class attendance.


Course Materials


Quizzes and assignments

Short quizzes may be given in class throughout the semester. All quizzes will be discussed in class. The goal is to provide opportunities for classroom assignments and also to motivate discussion on the topics to be discussed later. One quiz will be dropped from the final grade calculation.

There will be 6 homework assignments. Each assignment needs to be done individually. Assignments and quizzes are worth 35% of the final grade.

Assignment Assigned Due Topic
1 January 21 January 30 Software engineering tools
2 January 30 February 20 Java Swing based application
3 February 20 March 4 Requirements analysis
4 March 18 April 1 JUnit
5 April 01 April 22 Object oriented design
6 April 22 May 06 White box testing

 


Projects

You are expected to work in teams of three to develop a software application. You will write a requirements document, a design document and code for the project. The project is worth 20% of the final grade. Project descriptions will be made available through WebCT sometime in February. You may turn in a draft of each document before the actual due date. This is for your benefit. It gives me a chance to review the document and give you comments for improvement. You will not be awarded points for the drafts. The final project demo will be held in the last week of the semester (before finals week). For every phase of the project, each team member will do a peer evaluation.

Teams formed February 4
Project assigned February 6
Requirements document due March 20
Design document due April 15
Project demos May 8, 9

 


Exams

There are two exams: one midterm exam in class (20%) and one final exam (25%) during the final's week.

Exam Date
Midterm exam: March 6, in class
Final exam: May 12, 9:10am, Eddy 100


Grading

Assignments and quizzes: 35%
Project: 20%
Midterm exam: 20%
Final exam: 25%

Grades will be assigned according to the following table, though the actual cutoffs may be lower (not higher).

Final score Letter grade
[90-100] A-, A
[80-90) B-, B, B+
[70-80) C
[60-70) D
[0-60) F