Skip to main content.
Skip to main content.

News

Course news and announcements are at http://uo-cis422.blogspot.com/

CIS 422/522 Introduction

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.

The project

We will select the first project (which may also be the second project) on the first day of class. See the sketches of three candidate projects, or prepare a sketch to propose a new one, but do it quickly.

Overall Project Organization

We use the first 9 weeks of the term for design and construction of projects. Week 10 is reserved for final presentations. A more complete schedule is available here.

We will choose a common project on the first day of class. All teams will work on that project, which will be due at the end of week 4. That's a very tight schedule, and I will encourage you to scope it appropriately and approach it incrementally, to minimize the risk of not having something good to turn in at the deadline. Project scoping and risk control are among the things I hope you will learn in this class.

You will have the option of switching to another project of your own choosing (with my approval) in week 5. I know that that some students come to CIS 422/522 with a project in mind, and this will be your opportunity to do that ... but I encourage you to at least strongly consider making a second iteration of of the same project.

I will ask you to indicate in week 1 whether you intend to change projects at the mid-term point, so that I can form teams that are as stable as possible. This means that I will try to form teams in which either everyone or no one is continuing the initial project to the end of the term. Failing that, I will try to at least spread people who will be changing teams evenly, so that one team does not suffer excessive turnover. I will also allow a second round of trades in week 5.