18-649 Project 6
More Implementation, More Testing, Draft of Mid-Term Presentation
Due Thursday February 26, 2009, at 11:59 PM
Please submit all project-related correspondence to
Changelog:
- Dated entries will be added here if the project is modified after
it is released.
Assignment
In this project you will finish implementing your elevator, you
will do another unit test, and you will test one more sequence diagram.
After last week's project, you should be familiar enough with the code
that implementing three statecharts should be easy. So, in order to
maintain the level of difficulty, we are requiring that you be
able to pass some acceptance tests.
The procedures and requirements for this project are identical to
those of project 5; you'll just be implementing and testing different
controllers. So, all the requirements from project 5 (include group
names/test description in test files, etc) apply to this project
assignment.
- Make sure you have the latest version of the simulator code from
the download page.
- Implement (in Java) the CarPositionControl, Dispatcher, and
LanternControl objects using your statecharts. All the rules and
procedures for implementing these objects are the same as they were for
implementing the other objects in project 5. This means you shall
show traceability from your statechart to your code by commenting the
source code appropriately.
- Write unit tests to informally test every state and transition
of the CarPositionControl statechart, like the unit tests you created
for the DriveControl in project 5. Have a team member other than
the author conduct a peer review and record the results in your test
log.
- Write integration tests to informally test one of your sequence
diagrams (in addition to the one tested from Project 5). Have a
team member other than the author conduct a peer review and record the
results in your test log.
- Create an acceptance test of your own that differs noticeably
from the tests we provided you. Include in the comments field the
behavior or performance aspect of the elevator you are trying to test.
- Execute the unit, integration, and acceptance tests. You must
pass your acceptance test and the two acceptance tests that we
have
provided for you (proj6acceptance1.pass
and proj6acceptance2.pass). Record
all test results in your test logs.
- Prepare a draft of your mid-term project presentation.
Each team will prepare a draft of their mid-term project presentation
and submit it with their portfolio. We will go review your draft
during the group meeting with the TAs on Friday, February
27, 2009. The expectations for the project presentation are
outlined in
the presentation template .The presentation can be either in PDF
format or a Microsoft PowerPoint presentation. To receive full credit,
the draft of your project presentation must contain the following
content:
- Title slide with group # and member names
- Outline slide
- Content slides (8-10 total)
- Project statistics
- Complete design of one control object:
- Groups 1, 5, 6: DoorControl
- Groups 2, 7, 8: DriveControl
- Groups 3, 4, 10: Dispatcher
- Lessons learned
- Open issues
Team Design Portfolio
The portfolio you submit should contain the most up-to-date design
package for your elevator system organized into the following
directories. You are going to update your
portfolio every week, so be sure to keep an up to date working
copy.
Files that you should update for this week are:
- Portfolio Table of Contents -- add a link to the draft
presentation
- Scenarios and Sequence Diagrams
- Improvements Log
- Requirements II
- Sequence Diagrams to Requirements Traceability
- Requirements to Constraints Traceability
- Issue Log
- Statechart to Code Traceability
- Elevator Control Package (be sure to include a complete,
compilable submission in the elevatorcontrol folder)
- Unit, Integration, and Acceptance Test Logs (be sure to include
all relevant input and output files from the tests)
Ensure your design portfolio is complete and consistent.
The following is a partial list of the characteristics your
portfolio should exhibit:
- Changes requested by the TAs in previous projects have been
applied.
- All required documents are complete and up-to-date to the
extent required by the projects (you do not need to update files or
links related to future projects).
- All documents include group # and member names at the top of the
document. (This includes code, where this information should
appear in the header field)
- Individual documents have a uniform appearance (i.e., don't look
like they were written by 4 individual people and then pieced together)
- The issue log is up to date and detailed enough to track changes
to the project.
Handing In Results
Each team shall submit exactly one copy of the
assignment.
Follow the handin instructions detailed in the
Project FAQ to submit your portfolio into the afs handin directory (/afs/ece/class/ece649/Public/handin/project6/group#/ontime/).
Be sure to follow ALL the
portfolio guidelines detailed in the Portfolio Layout page.
Any submission that contains files with modification dates
after the project deadline will be considered late and subject to a
grade deduction (see course
policy page for more information).
Grading Criteria:
This assignment counts as one team grade. If you choose to divide
the work, remember that you will be graded on the whole assignment.
105 points total. Grading will be as follows:
- 30 points -10 points each for the implementations of the
CarPositionControl, Dispatcher, and LanternControl.
- 20 points -10 points each for successfully passing each
acceptance test provided above (and logging the results).
- 5 points - For creating and describing your own novel
acceptance test.
- 10 points - For a new sequence diagram test, including
test files, peer review, and test results.
- 10 points - For the unit test of your
CarPositionControl,
including test files, peer review, and test results.
- 10 points - For the complete design package. You should
include all
scenarios, sequence diagrams, requirements, statecharts, traceability,
tests, etc. that you have done up-to this point. These materials should
represent the most up-to date version of your elevator system,
including all changes you have made (which should be tracked in the
issue log).
- 15 points -For submitting a draft of your mid-term
project presentation for
review during the group meeting with your TA on February 27.
- 5 points - For an entry in the Improvements Log that tells us what
can be improved about this project. If you
encountered any minor bugs that we haven't already addressed, please
mention them so we can fix them. If you have no suggestions, say so in
your entry for this project.
NOTE: To receive full credit for the assignment the test
files you create must be formatted correctly and fully commented to
explain what they are doing.
Back to course
home page