Overview 1. Enlarge or scroll the window to note that it consists of 4 frames: - Actions: the action bar containing 4 buttons (across the top of the window) - Decisions: a list of Decisions (down the left of the window) - Graph: the Graph display, covering most of the window - Info: a blank area (across the bottom of the window) in which informational text is displayed (as noted below) 2. The actions in the Action frame have two purposes: - the "Edit Family" and the "Generate Instance" buttons trigger changes in MGP mode - the "Add Node" and "Add/Remove Link" buttons modify graph structural content 3. The "Edit Family" button is enabled only when MGP is in Application Engineering mode for creating and viewing instance graphs. Clicking on that button will take the tool into Domain Engineering mode. 4. The "Generate Instance" button is always enabled. In Domain Engineering mode, clicking this button transitions the tool into Application Engineering mode, initially displaying a blank Graph frame. The user then sets decision values and, by clicking this button, creates an instance product that is displayed in the Graph frame. 5. The "Add Node" and "Add/Remove Link" buttons are enabled only when MGP is in Domain Engineering mode. Domain Engineering mode DE-1. The Actions and Graph frames are initialized with content defined as Java applet parameters in the html file which activated this window. Decisions can be added or renamed and the content of the Graph can be changed or extended in a variety of ways. DE-2. To modify a decision name, click on the current name in the Decisions frame, type over that name in the box that pops up and hit return to make the change or click the window close button to leave the name unchanged. DE-3. To add a decision, click the Add button in the Decisions frame. Type its name into the box that pops up and hit return (or click the window close button to abort the add). If a decision is a selection among a set of fixed values, these values are associated with the decision by appending them in parentheses as a comma separated list after the name (with no spaces). DE-4. "Add Node" causes a new node to be created, at the "root" level if no node or link is currently selected, as child node if a node is selected, or as a child node link as a sibling if a link is selected. "Add/Remove Link" has no effect is no node or link is selected, removes the selected link, or adds a link from the selected node to whatever node is then selected. DE-5. Nodes and links optionally have names. Clicking twice on a node or link (or once on the current focus node or link) will pop up a box for entering or modifying its name. DE-6. Clicking once on a node or link will select it as the current focus of Actions frame buttons. Clicking on the background will deselect any current focus (equivalent to selecting an implicit "root" node of the graph as the current focus). A link is a directional association between two nodes, from a "parent" node to a "child" node. The "Add Node" button will create a new link from the current node to a new child node (or as a child of the "from" node of the link if the focus is a link). Application Engineering mode AE-1. The Decisions frame displays the decisions that have been defined during domain engineering as characterizing product family variability. Each of these decisions is named with a following checkbox or "*". Each decision may also have a value - clicking on the name displays a popup window in which its value is shown and can be set/selected or changed. AE-2. The Graph frame is initially blank. This frame's content is constructed, once decisions have been specified sufficiently to describe a specific product, by clicking "Generate Instance" again. Alternatively, "Edit Family" can be clicked to return into domain engineering mode whenever the set of decisions or product family content need to be corrected or extended to have more content. AE-3. The content of a customized instance product depends on what information is associated with each of these decisions: product generation involves evaluating the product in light of this information and how decisions have been associated with the elements of the product family (during domain engineering).