CS-489 Lab 2: Application Frameworks & OO CASE Tool

by Dr. Durant
This lab is based on a lab developed by Dr. Welch.

Overview

The purpose of this lab is to become familiar with a GUI application framework and an object-oriented CASE tool, Enterprise Architect.

Activities

In this lab, your team will

Detailed instructions

Work with your assigned team on this group lab project. You may wish to work in subgroups and integrate the results.

If you have difficulties with any part of the lab, consult the instructor for assistance. The basic sequence is:

  1. Create a new Enterprise Architect (EA) domain model (complete or partial) for one of the class exercises:
    • Restaurant
    • Mass transit system
    • Role-playing game
    • ...any other example approved by the instructor
    Don't worry if it is not very robust. The goal here is EA, not the model itself. Information on how to use EA can be found [no longer online].
  2. Build a simple GUI application that takes user input and provides output (it may be as simple as computing the sum of two numbers). The specifics will vary depending upon your chosen language and application framework. The recommended frameworks are:
    • C++/MFC: Follow the step-by-step instructions to build a simple MFC application if you have never done so before. You may add enhancements, but this is not required.
    • Java/Swing: See this tutorial at SwingWiki [no longer online] or this tutorial from Java Examples. For a more detailed introduction, you may wish to see Chapters 7 through 9 of Core Java 2 Volume I - Fundamentals, Seventh Edition by Cay Horstmann (via Safari)
    • C#/Windows Forms: Follow the tutorial in Chapter 13 of Programming C#. MSOE subscribes to this book via O'Reilly's Safari service
  3. Submit the lab report (details below).

You do not need to use the code generation features in Enterprise Architect this week, but you may try them if you wish. See the help file for details.

Lab report

Each team will submit a single Zip file containing the following:

Submit this report to the instructor via email, zipping all your files into a single archive. Be sure to keep copies of all your files, in case something gets lost; it may also be wise to keep a backup (e.g., ssh the files to another system, such as bashful or people).