Project 2: Semester Project (Getting Started)

It is now time to start developing an object-oriented system using the techniques we have been discussing in class.

Your team needs to identify a system that you would like to develop over the next eight weeks of the semester. The system's complexity should match the development capacity of your team. (A team of four students should target a system that is larger and more complex than a team of two students, for example.) As a lower bound, the system should be one that requires a non-command-line user-interface (such as a desktop application that uses a GUI toolkit or a web application that uses HTML/CSS/Javascript) and the system has to support at least two types of users (for example "end user and admin").

For this particular project, you need to work your way through the first three steps of our OO A&D software development life cycle, as documented on slide 4 of lecture 15 (as well as in Chapter 10 of our OO A&D textbook) and submit a document containing your project introduction, feature list, use case diagram, and module breakdown by the end of week 11 (Friday, November 9th, 11:55 PM). This assignment is worth 100 points.

After this assignment, you will be asked to perform two iterations performing requirements, design, implementation, and test. Each team member will pick one use case to develop over the course of the iteration, such that a four person team will have up to four use cases implemented by the end of the iteration. (I say "up to four" since you may not be successful in getting everything done.) Iterations will be two weeks in length and will also be worth 100 points. The first iteration will be due at the end of week 13 (Friday, November 30th, 11:55 PM) and the second iteration will be due at the end of week 15 (Friday, December 14th, 11:55 PM). More details about the individual iterations will be posted shortly.

Teams should identify a project topic as quickly as possible and send it to me via e-mail. I will review the topic and either approve it or suggest changes in scope if needed.

Kenneth M. Anderson, 2007.