[MSOE Homepage]

Dr. Taylor's MSOE Homepage

Courses

Unix is a Four
Letter Word

My Photo Album

My Personal Homepage

CS-321 Main page

CS-321 Lab 6: Button Emulation

Fall Quarter 1999



Electrical Engineering and Computer Science Department
Dr. Christopher C. Taylor

S-331, 277-7339

www.msoe.edu/~taylor/

Acknowledgment

A similar lab was originally developed by Dr. Henry L. Welch.

Purpose

The purpose of this laboratory assignment is to add a button to the drawing area.

Assignment

Implement a simple button somewhere in the drawing area. As a minimum, it should contain some type of border and include some text to identify it's purpose. You may find it useful to use XDrawString. When the user presses the button, your program should do something (you choose) that makes it obvious that the button was pressed.

Lab report (due 4:30pm, November 3, 1999)

The lab reports should be self-contained. That is, it should be possible for someone to understand what you did and why without seeing anything other than your report and any previous reports that you have submitted. Your report should include:

  • Purpose
  • Problem Statement
  • Procedure -- what approach you used to solve the problem
  • Documented source code (clearly identifying any changes made since your last submission) Note: you should include all the source code necessary to compile your project except for unmodified source code written by Dr. Welch. For example, you don't need to include shell.cpp if you didn't modify it.
    You may wish to use gensrc, a shell script which will produce one file containing all of your source code files and Makefile with the markup commands required by my electronic submission procedure.
  • Discussion including:
    • A tally of the number of new Non-commented Lines Of Code (NLOC) written for this lab assignment. You may use the CLC perl script on your code. If possible, break the NLOC down into the various features you needed to implement.
    • A summary of your activity log indicating how much time you spent on each phase of the assignment. Please report the time in the following categories:
      • Design
      • Coding
      • Debug (before you think it's working)
      • Test (after you think it's working)
      • Documentation
      • Other
    • A narrative describing any specific problems you encountered and how you solved them.
  • Conclusions (what you learned, suggestions of how the lab could be improved, things you would have done differently, etc.)
  • You will need to demonstrate your completed program to the instructor at the beginning of lab in week 9.

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 sample report before submitting your report.) Be sure to keep copies of all your files, in case something gets lost. It may be wise to keep a diskette backup as well.

If you have any questions, consult the instructor.


This page was created by Dr. Christopher C. Taylor.