CS 497: Software Engineering 1

Fall Semester 2006

Instructor: Chris Lüer, PhD

Teaching assistant: Tai-Lin Han, MS

Section I: Tu, Th 11:00 - 12:15, RB 122

Section II: Tu, Th 3:30 - 4:45, RB 122

Description - Materials - Policies - Schedule - Teams and Projects


Description

Catalog description:
497 Software Engineering 1--Systems Analysis. (3)
Software life cycle, software engineering concepts, systems analysis phase of life cycle. Introduces and applies structured methods to a project. The output of the project is a systems specification from which a software system can be designed and developed.
Prerequisite: CS 232.
Prerequisite or parallel: CS 436.


Materials

Required Textbooks:

Additional Readings:

Tools:
Argo/UML. Freeware UML tool.
JUnit. Freeware Java test framework.
CPPUnit. Same thing for C++.
Cocomo. Cost estimation tool.
WinCVS. Client tool for the CVS configuration management system.

Web site: http://www.cs.bsu.edu/homepages/chl/497-06F/

Mailing List: http://www.bsu.edu/archives/cs497-l.html
You can post questions and comments about this class to the mailing list. For private questions, please email the instructor or the teaching assistant directly.


Policies

Cheating. Consequences of cheating in this class: the course grade is lowered, possibly to F. No team work is allowed in this class unless explicitly stated. Material that is copied from books or Web pages needs to be quoted and the source must be given. Be aware of the Ball State University Student Academic Ethics Policy.

Assignments.

Assignments. Assignments are due Tuesdays at the beginning of class. Homeworks (HW) are to be performed individually -- no team work is allowed. Milestones (MS) and Milestone Drafts are part of the team projects. Late assignments will be subject to a deduction of 10% of the maximum credit per late day. Write your name on the top of page 1; if an assignment has more than one page, please staple them. Type your answers and include printouts of diagrams.

Readings. Readings are due on the Thursday of the week they are listed for. Occasional quizzes will cover the readings. There is no make-up for missed quizzes.

Attendance. There is no grade for attendance; however, there may be unannounced quizzes. There is no make-up for missed quizzes.

Grading.
Final exam 25%
Midterm exam 10%
Project 40%
Homeworks 20%
Quizzes 5%

If you receive 93.3% of the total course credit, you will get an A. If you receive 90.0%, you will get an A- or better. If you receive 86.7%, you will get a B+ or better, and so on. The grading scale will be shifted so that the median grade is at least a B.

Peer Evaluations. The instructor gives one grade for each project team for each milestone. It will be divided up among the team members as follows. Each team member divides up 100 percent among all members of the team, giving him- or herself 1/n, where n is the number of team members. The points each team member gets for a milestone is the instructor's grade multiplied with the sum of the team member's peer evaluations. In this way, your team members can influence your grade.

Team Web site. Each time has a Web site, where it publishes all documents related to the project. The team may choose to make the Web site password-protected.

Status reports. Each team has to publish weekly status reports on their Web site. Each status report lists what has been accomplished during the past week, and is turned in in class on Tuesday.

Extra credit. Extra credit is available for additional oral presentations. Contact me if you are interested. A 20-minute presentation is worth as much as one homework in the homework category.

Students with special needs or disabilities. If you need course adaptations or accommodations because of a disability, if you have emergency medical information to share with me, or if you need special arrangements in case the building must be evacuated, please make an appointment with me as soon as possible.


Schedule

Weeks Topic Readings due Assignments due
1 Introduction and Team Selection    
2 Introduction and Project Selection P1 HW 1: Team Web page
3 Requirements; IDE P7  
4 Requirements F9 HW 2
5 Process Models P2-3 MS 1 draft
6 MS presentations P4, F2 MS 1
7 Process Models P8  
8 Introduction to Analysis; UML; midterm exam (10/12) F1  
9 Class diagrams F3 MS 2 draft
10 Guest lectures F4, F6 HW 3
11 Break; MS presentations F10 MS 2
12 Interaction Diagrams; State Diagrams and Assertions    
13 Assertions (Tu); Introduction to Design (Th) P9, handouts HW 4
14 Design Patterns (Tu); Break    
15 Design Patterns; UML for design F5, 7, 8  
16 MS Presentations; Review   MS 3

P: chapters in Pressman; F: chapters in Fowler. Schedule is subject to change.

Final Exam Section I: Saturday, Dec. 16, 9:45 am - 11:45 am
Final Exam Section II: Saturday, Dec. 16, 2:15 pm - 4:15 pm


Teams and Projects

  1. Robust Solutions
  2. Blobs
  3. Motivity
  4. Course Scheduling Software
  5. CompNode Consulting


Chris Lüer. (C) Ball State University 2006.