Chair: Gail E. Harris, Instantiated Software Inc., Gail.Harris@Instantiated.CA

Back for another year, DesignFest continues to provide an opportunity for you to learn more about object oriented design by doing design. DesignFest is about sharpening your skills by rolling up your sleeves and working on a real problem with others in the field. You can expect to interact with everyone from total beginners to textbook authors!

DesignFest is a free event (for conference registrants) created to give OOPSLA attendees the opportunity to learn more about design by doing it. Participants are organized into small groups to solve a particular problem.

Each team has a moderator and a recorder. The moderator is responsible for making sure the team makes progress, without leading them in any particular direction. The recorder is responsible for recording the design the group produces and what they have learned.

The problem descriptions will be distributed at the start of each DesignFest session, along with a timetable, process hints, and a list of deliverables. Each team should produce a poster that summarizes their work. The posters will be presented at the end of the conference for all conference attendees to view.

To register, please fill out the DesignFest section of the OOPSLA registration form. Registration for DesignFest is free if you have registered for the conference. Be sure to include your e-mail address. You will be contacted by e-mail at a later point in time with regard to selecting a design problem, preference to work on an XP team, and possibly a team meeting time.

You are invited to take a tour of the previous DesignFests at

The DesignFest Committee appears in the Conference Committees section of the Program.

Note that all DesignFest sessions are separate sessions, lasting half a day or a full day.

The following problems have already been selected for this year.

  • Advanced Peer To Peer Discovery and Interaction Framework

    Peer-to-peer (P2P) architecture is a new paradigm in distributed computing technologies. Peer-to-peer computing is the sharing of computer resources and services by direct exchange between systems [1]. The desired framework based on peer-to-peer network should provide peer discovery and interaction mechanisms. The framework also allows the peer computers to share files and exchange instant messages. It can serve as a framework for distributed file sharing and messaging systems based on P2P. The framework should be generalized enough to cater to needs of any specific P2P application.

  • MRI Visual Analyzer System

    The problem is to design and implement a friendly platform for MRI visual analysis to be used by medical professionals. The application should enable doctors to see the result of MRI as three-dimensional objects. It also provides them the opportunity to access various parts of the organ and study it from different points of view. There are more features such as measurement, opacity, and coloring that make the application useful by achieving a more precise, fast, effective, and easy to understand vision of the organ's cells.

  • BifCo Panel Repair

    BifCo repairs two-dimensional structural panels using a robotic arm assembly in an environmental chamber. While there are several components to this system, your team has been hired to design the motion control subsystem (MCS) for the BifCo repair system. The MCS is responsible for managing all motion control and status requests submitted to the motion control hardware. The repair process dictates several motion constraints. First, only damaged zones of a panel require repair. Second, the repairs must be done without totally disassembling the panel - so in addition to defining the section to be repaired, exclusion zones must be observed for features that protrude from the assembled portion of the panel. Third, the robotic arms must stay within the walls of the repair chamber. These features are recorded by a separate subsystem and are inputs to MCS. You must design a system that supports all robotic motion: "Manual" moves commanded by the operator, and automatic motion that moves the tool back and forth across the repair zone a segment at a time, from the starting edge to the end of the repair zone. The MCS must support a separate graphical display subsystem by being able to draw zones of work, exclusion zones, the real-time position of the robot's arms, and the end position of robot arms on a device context provided by the graphical subsystem.

  • MultiBatt - The Outer Space Battle Game

    You are to design a massively multi-player game that takes place in a shared, 2-dimensional, virtual space. Each player is at a separate work station, and navigates one tank-like vehicle through this space. The space is made visible through a graphical window. Player vehicles appear in this window, and are updated in real time. Vehicles have the capability of shooting missiles. If enough missiles hit a vehicle, it is destroyed and the player is eliminated from play. Display is managed by the game software. The game system to be designed will manage distribution of player state among the various players. The game system must also manage player interactions such as missile hit determinations.

  • Data Collection in the Forest

    A local forest technology company, Forests 'R' Us, wants to build and sell a system for gathering and analyzing weather information to predict forest fires and help with water table management. The Arbor2000 will be sold to National Forests, Environment Canada, the U.S. Forest Service, and large private land owners. It will consist of hardware and software both locally in the owner's office building and remotely in the forests.


Sunday, 26 October – 8:30-17:00 Full day

Sunday, 26 October – 13:30-17:00 Afternoon

Tuesday, 28 October – 10:30-17:00

Tuesday, 28 October – 13:30-17:00 Afternoon