18-649 Project 12
for due dates
Please submit all project-related correspondence to
- Dated entries will be added here if the project is modified
after it is
At this point, you have completed most of the design and testing of
elevator. In this project, you will have to make a single
and continue testing on the updated elevator.
1. High Speed Drive Modification
1.1 Update to High Speed Drive
Consider this scenario: at your most recent project meeting your
you that the marketing department has decided to change the target
your elevator product (didn't you get the memo?). Now, the elevator has to exhibit
order for you to meet your new performance requirements, your boss
approval to use new, top-of-the-line drive motors which accelerate
at the same
rate, but have a much higher maximum speed.
Modify your design to work with the new drive speed parameters:
To make the simulator run at the fast speed, you will need to add a
5.0" command to your simulator invocations. This raises the
speed in the drive control to 5 m/s. Make sure you run all
tests from this point forward using the -fs 5.0 option. Note
that you do
not need to use this option with unit and integration tests, since
DriveObject is not instantiated in those tests. However, you
may need to
change the messages that are injected in your tests to simulate the
- "Fast" speed is now 5 m/s.
- Acceleration and deceleration remains 1.0 m/s/s.
- "Slow" speed remains 0.25 m/s.
Pay special attention to how this change affects your
particular, you may want to consider:
You should add a single entry to the issue log that describes
customer's change in requirements and documents the design artifacts
change causes. If you find bugs after the initial design
complete (e.g. through testing), you should log those as separate
- how the stopping distance and commit point computations are
- how this modification will impact your network
Remember that you must obtain prior approval from the course
changing message periods.
1.2 Peer Review
Have someone other than the module author complete a
peer review of
the updated modules and update the Peer Review section of your
reviews that result in unfixed issues should be added to the
to be conducted. If you change fewer than four modules, then you
other artifacts that have not yet been previously reviewed.
2. Complete Testing
of Your Elevator Design
You must run all tests on your latest design:
We will execute these tests with an arbitrary random seed which we
divulge ahead of time. Passing these tests constitutes "having
working elevator". Note:
must pass all acceptance tests in order to receive a grade in this
- Pass all unit tests - all tests
pass with 0 failed assertions
- Pass all integration tests - all
tests must pass with 0 failed assertions.
- All acceptance tests - run the following acceptance tests. Be
sure to use
the "-b 200 -fs 5.0" options to enable the finite bandwidth and
fast speed settings. Your elevator must not reach 100% bandwidth
when running acceptance tests.
Team Design Portfolio
The portfolio you submit should contain the most up-to-date
for your elevator system organized and formatted according to the
guidelines. You are going to
portfolio every week, so be sure to keep an up to date working
Ensure your design portfolio is complete and consistent.
The following is a partial list of the characteristics your
- Changes requested by the TAs in previous projects have been
- All required documents are complete and up-to-date to the
by the projects (you do not need to update files or links
related to future
- All documents include group # and member names at the top of
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
Handing In Results
- Each team shall submit exactly one copy of the assignment.
- Follow the handin instructions detailed in the Project FAQ to
portfolio into the afs handin directory ( /afs/ece/class/ece649/Public/handin/proj12/group#/ontime/).
- Be sure you follow the
required format for
the directory structure of the portfolio and its location in
- Be sure to follow ALL
guidelines detailed in the Portfolio Layout
- Any submission that contains files with modification dates
project deadline will be considered late and subject to a
page for more information).
This project counts as one team grade. Points are assigned as
A detailed grading rubric is
This project assignment is worth 105 points:
Each team member must satisfy the minimum stated per-member
members who omit any required per-member activity will receive a
- 20 points for the 5.0
- 20 points for 4 peer
reviews of the
updated modules in the Peer
Each team member must perform at least one peer review.
- 20 points for
all unit tests
- 20 points for
all integration tests
- 20 points for running
acceptance tests and either passing the tests or logging the
- 5 points for a list of
corresponding to which tasks were primarily completed by each
(every point must be assigned to a specific team member). Also
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.
- Download the Minimum Requirements Spreadsheet here.
Back to course home page