Changelog:
This semester, your group will specify, design and build an elevator control system and use it to control a simulated elevator. You will learn of and deal with many of the details of building a distributed, real-time, embedded system.
For this part of the project you will begin to write your requirements for an Event-based System. In project 3, you will construct your full requirements and traceability. Project 2 requires you to create scenarios for the elevator system and draw out sequence diagrams. Follow the format of the "formula for behavioral requirements" you'll see in multiple lectures. A particularly important concern is that only one message can be used as the trigger for an action. If you need two messages to trigger an action, you will generally need to use multiple behavioral requirements and intermediate variables to do this. That having been said, the pre-written behaviors are already in time-triggered format so they can remain unchanged for later project phases. If you are wondering why this is all such a big deal, come to office hours and ask us.
We've done a lot of the work for you already!
First, download the
portfolio template from the portfolio page.
You will fill in the template as you go through the projects.
Make sure you read in detail the requirements for formatting and
portfolio structure. You will be expected to follow these
requirements throughout the semester, and you will lose points if you
do not follow them.
Once you have
unpacked the portfolio template, you should check out the
following documents that we've provided (each file is listed along with
its path in the portfolio template):
From that use case diagram we've given you a Scenario and Sequence diagram template (scen_sd/scen_sd.html). There are a few examples given in the template to get you started; you will be responsible for filling in the rest.
We want you to use UML (Unified Modeling Language) to develop your behavioral requirements. Here is the procedure for developing your behavioral requirements by first creating sequence diagrams:
We've provided a couple examples to get you started. Feel free to leverage work done from Project 1 - realize, though, the Pre-Conditions are a little different and you are concerned with the behavior or the entire elevator system, not just the doors. Feel free to change the examples, as well - the examples given aren't very 'smart' and are sub-optimal in terms of performance.
There are 12 sections total - we want each team member to complete at least three sections. Please have the author team member record his/her name in the section that he or she wrote. The project will be graded on a team basis, and collaboration is encouraged, but we want everyone to get a shot at it. Turn in the completed template with each section signed by the author. You are welcome and encouraged to complete additional scenarios and sequence diagrams that you think are relevant. You will almost certainly have to create more of them in later project phases to specify complete behavior for the elevator, so it won't hurt to get an early start.
Each team shall maintain a design portfolio to
organize all materials for the design package of its elevator system. 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:
The following is a partial list of the characteristics your portfolio should exhibit:
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/project2/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).
If you don't already have an ECE account send e-mail to
gripe@ece.cmu.edu and Cc to
requesting a course
account for 18-649.
This assignment counts as one team grade.
Points will be assessed as follows:
We want you to go through the process of developing the scenarios and sequence diagrams, and in project 3 use them to generate the behavioral requirements. Project 3 will require that you show traceability between them. Consistency and coherence are the two criteria we're looking for. Your UML diagrams do not have to be perfect. You should make your best effort to completely specify all behaviors for the software control objects. However, be warned that if you slack off here, you'll have a much harder time with later project phases because you'll have to do all the work eventually to create a completed system. If you chose to create additional scenarios and sequence diagrams you should follow through with them as with the mandatory assignment. But we won't take off points for mistakes made that solely involve optional material.
Back to course home page