Software Engineering (Software Methodology 1)

CIS 422/522, Fall 2006
Instructor: Michal Young [mail]
Room: 306 Deady Hall


Overview | FAQ | Project Grading | Lecture Notes | (No) Textbook
Schedule & Readings

News

Week of 4 Decemnber (Finals Week)

Please fill out a [group member evaluation] and bring it to the final exam.

The three exam times we agreed on are Monday 6-8, Tuesday 10-12, and the regular scheduled final exam time on Thursday. It looks like we can use conference rooms in Deschutes for the two alternate times. (The regular exam on Thursday will be in our classroom in Deady.)

If you have a key to the upper floors of Deschutes, you can meet near my office (room 239). I'll make a couple of forays downstairs to pick up anyone who is stuck there or outside the main front door, but don't be too late.

[Old news]

Overview

This is a project-oriented course on software engineering. You will work as teams to construct software systems, including not only programs but also end-user documentation, maintenance guides, etc. You will also be expected to think about principles and issues in software engineering, to read and respond to papers, and to participate in class discussions.

No university course can substitute for years of real-world experience, and that is not the objective of this course. Rather, the objective is to prepare you to learn from that experience. Thus our focus is first on broad principles and issues that pervade software engineering. Because these principles and issues are fundamental, they appear again and again even as popular methods and tools shift. Yesterday we had structured development, today we have object-oriented development, tomorrow we can expect something else ... but the fundamental challenges of teamwork, complexity, change and variation have been with us from the beginning and will be with us for the forseeable future.

Rough Schedule

Project 1 (4 weeks): The first project is assigned by the instructor, and teams are also assigned by the instructor. Unless someone is ready with a really compelling alternative, I will ask you to produce a system for finding good LTD bus routes from one place to another.

Note: Because Thanksgiving eats half of week 9, we are going to have to cut the schedule a bit for both projects, and instead of four full weeks, you will have only about 3.5 weeks for this first project. It will be due on Wednesday, October 18.

Project 2 (4.5 weeks): The second project is selected by each student team, and the teams are also self-chosen. Projects are due at the end of week 9, but since that is the week of Thanksgiving, projects will be due Wednesday of that week (24 November) at noon. The final week of classes is used for in-class demonstrations and discussions.

I will be out of town (at the ACM Symposium on Foundations of Software Engineering) November 5-11.

Here is a more complete schedule.

Here are a few ideas for 2nd projects:

There will be a midterm and a final exam, largely on lecture topics and readings.

Lecture Notes

Lecture notes from Fall 2006

Software Process | User Interface

The rest are lecture notes from an earlier class. They may be replaced or augmented with new versions as the term progresses.

CVS rough guide | Notes on Teamwork | Introduction to Design

User Manuals| Performance | Koala (Component Architecture)

Textbook and Readings

No textbook

I am not entirely certain this is the right decision, but this term I'm going to assign readings of papers (and some online sources) but no traditional textbook at all. If you feel uncomfortable not having a book, here are some choices that I considered assigning, with comments.

Readings

The papers we are reading are primarily in the first half of the term. The schedule, along with links to the papers, are here.


Last edit: Sat, 3 December, 2005 / Version identifier: $Id: index.html,v 1.17 2006/12/04 23:09:36 michal Exp $