CS 362: Software Engineering II

Winter 2008

 

 

Class meetings: KEC 1003, MW 4:00-5:20

Instructors: Mark Van Patten & Mark Clements

Office: BEXL 100

Email: mark.vanpatten@bus.oregonstate.edu / clementsm@bus.oregonstate.edu

Phone: 737-6009 / 737-9530

Office Hours: M-F 9-5 by appointment or drop-in.

Our offices are in BSG, lower level of Bexell Hall. Please come by at any time. You might want to call or email first to be sure we're there.

Teaching Assistant: Ian Oberst [obersti@eecs.oregonstate.edu]

Phone: 303-520-6882

Office Hours: 12-2 Tuesday, 2-4 Friday - Batchellor Hall 349

 

Class website: http://classes.engr.oregonstate.edu/eecs/winter2008/cs362/

 

Course Description

This class is (in theory) the second class of the pro-program, and the second of two required Software Engineering classes you will take here. The goal of the class is to continue the hands-on introduction to what software engineering is, what software engineering processes are, and how to work effectively on a team. This is not a programming class; however, you will be required to pursue the next steps in implementing the project requirements discovered in CS361. You should be very familiar with programming concepts and practices, including Object-Oriented Programming, basic testing and debugging methodologies, and basic code documentation practices. This is a writing intensive class with a major project component.

 

Course Objectives

The purpose of this course is to teach you the basic software engineering methods, focusing especially on the first half of the software engineering lifecycle. After completion of this course you should be able to:

  1. Use automated development tools in a realistic setting (such as make and CVS, etc.).
  2. Describe the cost-benefit trade-offs inherent in the use of automated tools for building software and configuration management.
  3. Describe several techniques for validating and measuring the quality of software  .
  4. Apply testing techniques, including black-box and white-box techniques, automatic testing activities, and regression testing  .
  5. Use appropriate techniques and tools, including a debugger, to locate program faults .
  6. Describe several types of maintenance processes associated with correcting and enhancing software systems .
  7. Participate effectively in a software inspection.
  8. Participate effectively in a team environment .

 

Because this is a course in the CS pro-program, we make certain assumptions about you, and your abilities to work independently. You are expected to be responsible and keep up with the reading and complete your assigned work on time. Lectures will not necessarily cover the material assigned in the reading. Lecture time will focus on explaining material which is particularly difficult, or which is not well-explained in the book, etc. If something is explained well in the book, I may not spend time on it in class. You are still responsible for said material for exams and your work.

 

Textbook

Course Assignments and Grading

This class is meant to be writing-intensive and hands-on. This means that you will be required to work on group projects and class-work (in addition to doing readings) outside of class time. This class will also be very interactive. Participation will count towards your final grade - healthy discussion in each class session is encouraged and expected.

You will be placed in 6 person teams. Written work produced by the teams will indicate which team member wrote each section. Each team member will periodically, and anonymously, evaluate the other team members. The team assignments will receive an overall grade, which will then be distributed according to the teams internal evaluation, adjusted by the instructor. In extreme cases, a team can decide to fire a team member with just cause at week four. To do this, the team members must contact the instructor and make their case for why the team member should be fired.

 

Participation                               15%

Midterm                                    25%

Final exam                                  25 %

Project                                      35%

 

Academic Dishonesty

The rules regarding Academic Dishonesty will be strictly enforced. Note that the penalties are quite severe and that the instructor has no discretion once a case of cheating is detected. Please see the OSU web-page for more details.

 

 

Schedule

 

Mon

Wed

Fri

Week 1

1/7 & 1/9

Revisit CS 361 Projects

Requirements Review

Review Project Deliverables

Chapter 5 - Design

 

 

Week 2

1/14 & 1/16

Chapter 6 - Considering Objects

Unit Testing

Build and Configuration Management

Source Control

 

Week 3

1/21 & 1/23

No Class in Honor of Martin Luther King Day

Project Scope & Plan Presentations - 10 mins.

 

ITERATION ONE

Week 4

1/28 & 1/30

Project Process Discussion (3 Teams)

Pop Quiz

Project Process Discussion (3 Teams)

Guest Speaker: Dr. Carlos Jensen

Slides

Weekly Status Report
.pdf
.doc template

Week 5

2/4 & 2/6

Project Process Discussion (3 Teams)
Formal Testing and Practices

Guest Speaker: Carrie Kolstad, Lead Test Engineer, BSG

Slides

 

Project Process Discussion (3 Teams)
Midterm Review

 

Weekly Status Report

Updated Project Plan

ITERATION TWO

Week 6

2/11 & 2/13

Midterm

In-Class Project Work Time

Weekly Status Report

Week 7

2/18 & 2/20

Program Management Report (Project Progress Feedback)
Midterm Return/Review
Drupal Presentation

Project Process Discussion (3 Teams)
Project Reports - 5 min.

Midterm Return/Review

Weekly Status Report

Updated Project Plan & Design Docs

ITERATION THREE

Week 8

2/25 & 2/27

Guest Speaker - Chad Layman, CEO Marquam Group

Project Process Discussion (3 Teams)
Defect Tracking

Weekly Status Report

Week 9

3/3 & 3/5

Project Process Discussion (3 Teams)

Project Process Discussion (3 Teams)
Project Reports - 5 min.

Project Presentation Requirements Review

Weekly Status Report

Updated Project Plan & Design Docs

Week 10

3/10 & 3/12

Final Project Presentations

Final Project Presentations

Project Team Peer Evaluations URL:  https://surveys.bus.oregonstate.edu/BsgSurvey2_0/main.aspx?SurveyID=2425


Final Review Pt II (also see Midterm Review)

 

Final exam: March 20, 2008 - 12pm (Noon)