->Homepage
->Schedule
->Courses
-->CS183
-->SE281
-->Tentative Schedule
-->Objectives
-->Quiz 1
-->Lab 1
-->Lab 2
-->Lab 3
-->Lab 4
-->Lab 5
->Course Policies
->Electronic Submission
->Documentation Standards
->Old Exams
->C++ Examples
->MSVC++ Info
->Software
->Support Forum
->Unix Info
->Nature Photos

[Home]
[Rich][Home][Rich]
[Author]
SE281 -- Lab 5: Pattern of Your Choosing

Spring 2004

Objectives Addressed
  • understand and apply object-oriented design patterns
  • understand the use of UML in the design process
  • be able to design and implement small software components and systems
  • be able to use computer-aided software engineering (CASE) tools in the design process
  • be able to work effectively as a member of a small team
  • be able to do independent research on software design
  • be able to document software design concepts in a written report
  • be able to communicate software design concepts in a brief oral presentation
Overview

The purpose of this lab is to work in a team to research and apply a chosen design pattern. Each team will also prepare a written report and make an oral presentation on the design pattern and its application.

Problem Statement

Study and research the selected design pattern, using both the textbook and other sources (books, journals, online resources, etc.). Using Rose, design and implement an application that effectively demonstrates the use and benefits of the selected design pattern.

Prepare a written project report explaining the selected pattern and your application demonstrating its use. This report should stand on its own and present the pattern and application clearly and completely. No specific length is required, but the report should represent a level of effort appropriate for a team research and development project.

Your application may also incorporate other design patterns (not required). These additional patterns should be highlighted in your report's discussion of the application, but need not be explained in the same level of detail as the primary pattern.

You should use Rational Rose to design your application.

Proposal (due 2:00pm, Wednesday of week 8)

Each team should prepare a brief proposal with primary and backup choices of design pattern and the application used to demonstrate the pattern. The description of the application need not be very specific.

Interim Activity Log (due 11:00pm, the day prior to week 8 and 9 labs)

You should submit an activity log to indicate your activity and progress on this assignment during the first week (one log file for the entire team).

Presentation (at scheduled time during week 10)

Each team will have one lecture period to teach the class the pattern and demonstrate their application. The first twenty minutes of the presentation should not make specific reference to the application implemented. All team members must actively participate in the presentation.

Report (due 11:00pm, the day prior to week 10 lab)

Here is a template file to use as a starting point for this report.

Your written project report should explain the selected pattern and your application demonstrating its use. This report should stand on its own and present the pattern and application clearly and completely. No specific length is required, but the report should represent a level of effort appropriate for a team research and development project.

In addition, the lab report should include:

  • A link to your Rational Rose model file and one or more .png image(s) containing the class diagram(s) for your application.
  • A description of how you worked (or didn't work) as a team.
  • An activity log indicating how much time you spent on each phase of the assignment. You should use the format found in the template XML file and report the time in the following categories:
    • Modeling
    • Design
    • Coding
    • Debug (before you think it's working)
    • Test (after you think it's working)
    • Writing Report
    • Other
  • The documented source code for your program.

As with any report you submit, correct spelling and grammar are required. In addition, your report should be submitted electronically following the Electronic submission guidelines. (You may wish to consult the XML help video and/or sample report before submitting your report.) Be sure to keep copies of all your files, in case something gets lost.

Acknowledgment

This laboratory was developed by Dr. Chris Taylor.

Last Updated: Friday, 23-Apr-2004 14:54:15 CDT