18-649 Project Assignment #7
Finish Implementation; Finish Test
Due Thursday March 5, 2008 at
11:59 PM
Please submit all project-related correspondence to
ece649-staff
"at" ece.cmu.edu
Assignment:
Throughout this semester your group has designed, implemented,
and
(partially tested) a basic elevator system. Before you
proceed with
optimization, you will make sure the entire design package is 1)
organized well
and 2) consistent with your current implementation. If you have been
following
the process in the prior design stages, this project should be pretty
straightforward.
What you need to Do:
1) Organize your design
portfolio.
Your project7 directory should contain the most up-to-date
design package
for your elevator system organized into the following directories:
- project7/
- group#_portfolio.html:
A single
html file with a brief description of each of the design documents in
your
portfolio, with a link to the corresponding document:
- scenarios
& sequence diagrams
document
- document
containing the time-triggered
requirements, state charts, & requirements-state chart
traceability
- requirements-sequence
diagrams
traceability document
- requirements-constraints
traceability
document
- unit test
files
- sequence
diagram test files
- acceptance
test files
- change
& defect logs
- project7/scen_sd/
- group#_scen_sd.html:
All of the
scenarios
& sequence diagrams for
your design (including the ones we did for you) shall be easily
viewable &
printable in ONE document (plain html or pdf)
- The directory may contain picture files of individual
sequence diagrams,
but these shall be viewable/printable in the main document with
working
links.
- project7/req_sc/
- group#_req_sc.html:
All of the time-triggered requirements for your design
(including the ones we did for you, such as the environmental objects)
shall be
easily viewable & printable in ONE document (plain html or
pdf). In
addition, this document shall contain the state charts
for the 7 control objects
(DoorControl, DriveControl, LanternControl, HallButtonControl,
CarButtonControl, CarPositionControl, and Dispatcher) as well as the
state charts/requirements traceability tables.
- group#_req-sd_trace.html:
All of
the requirements/sequence diagrams
traceability tables
shall be easily viewable and printable in ONE
document (plain html or pdf, NO picture files may be used for the
tables).
- group#_req-con_trace.html: All of the requirements/constraints
traceability tables
shall be easily viewable and printable in ONE document (plain html or
pdf, NO
picture files may be used for the tables).
- The
directory may contain picture files of individual state charts
diagrams, but these shall be viewable/printable in the main document
with
working links.
- project7/tests/unit/
- group#_DriveControl.test:
The complete unit test of DriveControl for
project 5 in a single
test file.
- group#_CarPositionControl.test:
The complete unit test of
CarPositionControl for project 6 in a
single
test file.
- project7/tests/sd
- group#_SequenceDiagramXX.test:
The complete
sequence diagram test for
project 5 in a single
test file.
(XX
is the sequence digram number. e.g., 1C)
- group#_SequenceDiagramXX.test:
The complete
sequence diagram test for
project 6 in a single
test file.
(XX
is the sequence digram number. e.g., 7C)
- project7/tests/acceptance/
- all acceptance
test files we have
provided you (basicpass.pass, proj5acceptance1.pass, etc)
- all acceptance test files you have created
- project7/logs/
- group#_ChangeLog.txt:
Detailed log
of all updates to design/implementation (including
enhancements). Shall
contain Date, Description of the change, Artifacts that were
changed.
(.txt or .html are fine)
- group#_DefectLog.txt:
Detailed log
of all defects found in the design/implementation. Shall
contain Date,
Description of the defect, Origin (earliest artifact in the design
cycle where
the defect occurs) (.txt or .html are fine)
- project7/code/simulator/elevatorcontrol/
- *.java files for the 7 control objects
- Control.java file
- project7/presentations/
- group#_Midterm_Presentation.pdf: Your mid-term project presentation in PDF format or Microsoft PowerPoint.
- Note1: group#
is your group number
(group1, group2, etc.)
- Note2: Please
do not submit the entire
simulator directory & subdirectories. Only include
the .java files
that you have changed (in the proper code/simulator/* subdirectory).
- Note3: From
this project forward you
should not include the event-triggered requirements.
2) Ensure your
design portfolio is complete
and consistent. If you have been keeping up with
updates in the
previous project stages, most of this work will already be done. The
following
is a partial list of the characteristics your portfolio should exhibit:
- Implementation works for all acceptance tests for projects
5 & 6.
This includes all acceptance tests, both public(included
in project
description) and TA-provided acceptance tests below. You can include
additional test
you may have written as well.
proj6acceptance3.pass
proj6acceptance4.pass
proj6acceptance5.pass
- Changes requested by the TAs in previous projects have been
applied.
- All documents are complete and up-to-date with latest
time-triggered
implementation (i.e., code matches statecharts, requirements, sequence
diagrams, and all traceability)
- 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)
- Code is commented sufficiently and reflects code-statechart
traceability.
- Change & defect logs are up-to-date and detailed
enough to track
changes to the project.
- etc.
Handing In Results
Each team shall submit exactly one copy of the assignment.
Please include at the top of each file the assignment number, your
group
number, the names of your group members, and the file name.
Projects shall be submitted by copying all needed files into your
group's
directory in the course AFS space in the following directory:
/afs/ece/class/ece649/Public/project/group#/project#/
(group# is your group number and project# is the number of this
project.
you may need to create this directory yourself)
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).
Submission shall be electronically in the form of a web page with text
and
in-lined images. Please use "plain-vanilla" HTML so that the web page
is easily viewable and printable from Internet Explorer and Firefox.
Any
drawings shall be in non-animated GIF format. (You can use other
graphics
formats at your own risk, but we must be able to view them in the web
browsers
mentioned above). You can also submit your project in pdf format, but
make sure
it prints correctly and legibly on 8.5"x11" paper. A regular
text editor should be
sufficient for this assignment - you may want to make the traceability
tables
in Excel or Word and use the 'Save as HTML' or 'Save as Web Page'
feature in
the File menu. If you need some help with HTML please come to Office
Hours :)
Additionally, the result should be easily readable when
printed on a black-and-white laser printer. Each HTML file AND picture
shall
include the team number and names of all members of the team.
Grading (105 Points)
This assignment counts as one team grade. If you choose to
divide the work,
remember that you will be graded on the whole assignment.
- 100 points: This project grade will be
determined by how closely the
submission follows the instructions, as well as how much your portfolio
reflects adherence to the design process.
- 5 points: what can be improved about
this project? Include even
minor bugs so we know to fix them. If you found nothing, then so state.
Back to course
home page