SYST 210
System Design
Kathryn Blackmond Laskey
Department of Systems Engineering and Operations Research
George Mason University
Functional Architecture Lab and Homework Assignment 6
Due November 5, 2009
Reading assignment: SysML Guide Chapters 6, 8 and 12.
This assignment will be started in the functional architecture lab
on Thursday, October 29, continued on Tuesday, November 3, and
completed as homework. Your homework
assignment is to finish what
you did
not complete in class. You will turn in a system description
document with the contents described below and a SysML model.
Students who work
together may choose to turn in a single document with
everyone's name on it, or to turn in individual documents. If you
turn in individual documents, there is no penalty for similarity to
other members of your group. If there was a group member who did not
come to class for the in-class working sessions, you may include this
person in a group
submission but only if this group member contributes actively to finishing the assignment. Otherwise, please ask the person to submit an individual assignment.
This assignment uses the QuikPay case study from the midterm preview. Use the vision statement, external systems diagram, and operational scenarios provided to you for the exercise, along with the QuikPay partial data model.
- Download the partial QuikPay database from Blackboard (under Course Content / Lab Materials).
- Make a QuikPay Behavior package under the QuikPay Universe package.
- Develop a hierarchical decomposition of the main function F.0, Provide Toll Collection Services.
Use the functions listed in the first column of the QuikPay data
model. Add the functions as activities to the SysML database. Put these acvities into the QuikPay Behavior package.
(Do this by highlighting the QuikPay Behavior package in the
containment hierarchy, right-clicking, selecting New Element /
Activity.) Use activity diagrams in MagicDraw to specify the hierarchy.
(Do this by clicking on an activity you want to decompose,
right-clicking, selecting New Diagram / SysML Diagram / SysML Activity
Diagram. This will make an activity diagram for the function you want
to decompose. Then drag the subfunctions onto the activity diagram.)
- When you are finished making your function hierarchy, use the
Activity Diagram Hierarchy Wizard (as we did in class) to make a block
definition diagram for the funciton hierarchy.
- The inputs and outputs of the main function are shown in
plain text in the data model. Make a block definition diagram
called "Main Function Inputs and Outputs." Add these inputs and
outputs as blocks to the block definition diagram. Drag these
blocks to the activity diagrams on which they should appear, and
connect them with object flows to show inputs and outputs of functions.
- You will notice that when you drag an item block to an activity
diagram, a new object block appears in the containment hierarchy, but
its name is blank. To help you keep track of which is which,
give the object a name, which can be a shortened version of the item
name. Both the name that you give it here and the name that you give it
in the block definition diagram will be shown on the activity diagram
(for example, if you give the name "ct" to the "cash toll" item, you
will see a block called ct in the containment hierarchy, and the block
on the activity diagram will say "ct: cash toll."
- Make another block definition diagram for internal items. These
are items that are needed in order to perform the system functions, but
that are internal to the system and so do not appear on the external
system diagram. Add the two items shown in italics on the partial
data model to this block definition diagram. Then add these items to
the activity diagrams where they belong and connect them to the
functions using object flows.
- Now look at each of your activity diagrams, and identify
additional internal items that are needed to make sure that the
operational scenarios can be accomplished. Add these items to the
internal items block definition diagram. Drag them to the activity
diagrams where they are needed.
- Now go to the requirements diagram inside the requirements
package. For each bottom-level requirement, identify one or more
items or functions that satisfy the requirement. Drag the
activities (for functions) or blocks (for items) to the requirements
diagram, and connect them with the "satisfies" relation. Do not
add both a funciton and a sub-function to the same requirement.
- Make a professional looking functional architecture report that
contains your activity diagrams, your block definition diagrams, and
your requirements diagram, along with an explanation of each
diagram.
- The report title should be "QuikPay Functional Architecture."
- The report should have an introduction that describes QuikPay
briefly. You do not need to include the entire partial operational
concept, but you should refer to it and give the url where it can be
found. It should have a section for the functional hierarchy, a
section for the data model, and a section for tracing requirements to
the functions that satisfy them.
- Make sure the names of all collaborators and "Homework 6"
appear on the cover page. Make sure your name (if an individual
assignment) or your group's name (if a group assignment) and "Homework 6" appears on every page.
Your goal is to develop a functional architecture that can perform the
operational scenarios, and to create a professional
looking functional architecture report. Part of
your grade will be professionalism and following instructions.
Back to the course homepage