CS 498: Software Engineering 2

Spring Semester 2008

Instructor: Chris Lüer, PhD
Office hours: We 11:00-12:00, Th 1:30-3:30, or by appointment

Teaching assistant: Jonathan Cummins, BS

Section 1: Tu, Th 9:30 - 10:45, RB 122

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

Description - Materials - Policies - Schedule - Teams and Projects


Description

Catalog description:
498 Software Engineering 2--Design and Development. (3) Studies the design and development phases of the software life cycle. Introduces the latest appropriate structured methods and applies them to a software project. This project will take a system specification and develop software from it.
Prerequisite: CS 497.


Materials

First part of the course sequence:
CS 497 Fall 2007

Required Textbooks:

Additional Readings:

Tools:
MediaWiki . A wiki server.
Argo/UML. UML tool.
JUnit. Java unit testing tool.
CPPUnit. C++ unit testing tool.
NUnit. Dotnet unit testing tool.
CVS configuration management system.

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

Assignments. Assignments are due Tuesdays at the beginning of class. Homework assignments (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. Unannounced quizzes will cover the readings. There is no make-up for missed quizzes. Each quiz is worth half as much as a homework assignment.

Grading.
Final Exam 25%
Midterm Exam 10%
Project 50%
Homework and quizzes 15%
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 number of 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 have a significant influence on your grade.

Status reports. Each team has to publish weekly status reports on their Web site.

Extra credit. Extra credit is available for additional oral presentations. Contact me if you are interested. The credit for a 15 min presentation is up to 2%.

Cheating. Consequences of cheating in this class: the course grade is lowered, possibly to F. No team work is allowed on homework assignments unless it is explicitly stated. It is not allowed to let others copy your work. 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.

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

Week Topic Readings due Assignments due
1 Intro; Design    
2 Design P9-10, Design Smells HW1: Design Review 1
3 Design; Refactoring P11 HW2: Design Review 2
4 Design   HW3: Bug Tracking
5 MS 4; Quality Assurance   MS 4
6 Quality Assurance P13-14 HW4: Refactoring and Test-Driven Development
7 Quality Assurance; Exam   Midterm Exam (Th)
8 ETS Test    
9 Human-Computer Interaction; MS 5   MS 5
10 Human-Computer Interaction P12, handouts HW5: System Test 1
11 Project Management; Résumé Review P21,22,25 HW6: Usability Test
12 Project Management handouts HW7: System Test 2
13 Code Review; Intellectual Property Law   HW8: Code Review
14 Intellectual Property Law; In-class Test handout HW9: System Test
15 Public Demonstration; Exam Review   MS 6 (finished project)

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

Final Exam Section 1: Thursday, May 1, 9:45 am - 11:45 am
Final Exam Section 2: Friday, May 2, 2:15 pm - 4: 15 pm

Sample final


Teams and Projects

Course wiki

Chris Lüer.