7. Design 1
Agenda for design activity1. Flow diagrams2. Instrumentation3. State tables4. Decision tables5. Homework
7. Design 2
1. Flow diagramsDefinitionAutomated techniquesFlowing down interfaces
1. Flow diagrams
7. Design 3
Definition (1 of 2)Flow diagrams show the flow of physical
quantities, data, and control into, out of, and through a product. Examples are• Power• Cooling air• Signals• Control
1. Flow diagrams
7. Design 4
Definition (1 of 2)Diagrams can be functional or physicalControlling the flow is one of the strongest
influences a product engineer has on the development of a product
1. Flow diagrams
7. Design 5
Automated techniquesExcel spreadsheetData bases; e.g. TeamWork
1. Flow diagrams
7. Design 6
Flowing down interfacesProduct
requirements
Lower product A requirements
Lower product B requirementsInterface
Product design
concept; e.g.,power control
Product requirements suggest a concept. Design develops this concept and creates requirements
for lower products and I/Fs. The I/F requirements become lower requirements
requirementsrequirements requirements
requirements requirements
1. Flow diagrams
7. Design 7
2. InstrumentationNeed for instrumentationExamples of instrumentationValue of embedding instrumentationCosts of instrumentation
2. Instrumentation
7. Design 8
Need for instrumentationBuild and verify activities benefit from
instrumentationCustomers are wary about depending upon the
results of simulationCustomers feel more comfortable with measured
data
2. Instrumentation
7. Design 9
Examples of instrumentationTime taggingThroughput Trouble shootingAccess to unavailable features
2. Instrumentation
7. Design 10
Value of embedding instrumentationLess expensive than adding laterCommon to leave in the system
2. Instrumentation
7. Design 11
Costs of instrumentationExpensive to collect all variables produced by the
system and then figure out what to do with the data later
Expensive without stated objectiveData reduction expensive
2. Instrumentation
7. Design 12
3. State diagrams Example 1 Logical control requirements in words Complete state diagram Simplified state diagram Number of paths in state diagram Truth table
3. State diagrams
7. Design 13
Example 1
Remote terminal (RT)
1Master
power
buscommunications
self testloading
operation
closed open
RT 1 power switch
Goal -- turn on power. Establish communications, load, and operate
3. State dagrams
7. Design 14
Logical control requirements in wordsTwo power control states
• 1. Off• 2. On
Off when power switch is open.On when power switch is closed
3. State dagrams
7. Design 15
Complete state diagram
1off
2on
RT 1 power switch open
RT 1 power switch closed
RT 1 power switch open
RT 1 power switch closed
Power-state state diagram showing state transition paths and same-state transition paths
Power-state state diagram
transition paths
same- state transition paths
3. State diagrams
7. Design 16
Simplified state diagram
1off
2on
Power switch open
Power switch closed
Power-state state diagram showing only state transition paths and not showing the same-state transition paths.
This form is used often.
Power-state state diagram
3. State diagrams
7. Design 17
Number of paths in a state diagramMaximum number of state transition paths is n2
Maximum number of same-state transition paths is n
Maximum number of state transition paths excluding the same-state transition paths is n2 - n.
Maximum number doesn’t need to be present
3. State diagrams
7. Design 18
Truth table
RT 1 power switch RT 1 power state
open offclosed on
decisions
criterion
A truth table has the same information as a state diagram, but it is less graphic
3. State diagrams
7. Design 19
4. Decision tables (1 of 2) Using decision tables Defining number of decisions Defining the number of paths Defining the number of options per path Example 1 Creating a decision table Defining number of decision tables
4. Decision tables
7. Design 20
Decision tables (2 of 2) Using canonical format Ordering criteria rows Adding results rows Ordering decision columns Checking correctness Example 2 Example 3
4. Decision tables
7. Design 21
Using decision tables (1 of 3)
A decision table is a truth table with the information rearranged to be more compact when typed
RT 1 power-state decision table
Criteria/Decisions 1 2 #Power switch on F T 2
ResultPower state 1 2
Num of decisions 1 1 2
4. Decision tables
7. Design 22
Using decision tables (2 of 3)Identifies all possibilitiesUncovers hidden pathsPromotes consistencyProvides concise documentationAllows numerical checks for quality
4. Decision tables
7. Design 23
Using decision tables (3 of 3)Decision tables don’t guarantee that
the decisions are right
4. Decision tables
7. Design 24
Defining number of decisions (1 of 2)Number of decisions equals the product of the
number of choices for each criterion. Must account for all the decisionsA “-” in a decision table means that the
decision table doesn’t care what the value of a criterion is.
4. Decision tables
7. Design 25
Defining number of decisions (2 of 2)RT 1 power-state Number of
decisions per
criterion
Number of decisions
It’s not necessary to show the number of decisions, but showing the number of decisions helps check
the quality of the table
Criteria/Decisions 1 2 #Power switch on F T 2
ResultPower state 1 2
Num of decisions 1 1 2
4. Decision tables
7. Design 26
Defining the number of pathsRT 1 power-state
It’s not necessary to show the number of paths, but showing the number of paths helps check the quality of the state diagram.
Criteria/Decisions 1 2 #Power switch on F T 2Power state - - 2
ResultPower state 1 2
Num of decisions 2 2 4
Paths from/to 1 21 1 12 1 1 4
Add current state even though not
needed in example
Show the matrix of paths
4. Decision tables
7. Design 27
Defining the number of options
1 2 31 16 2 02 14 3 13 14 2 2
2
1
3
214
1
14
23 2
matrix of options for each path (cell)
total = 54
Matrix of options shows the number of options for each path. Each cell position represents a path
4. Decision tables
7. Design 28
Example 1 (1 of 3)Two communications states
• 1. Not established (not est)• 2. Established (est)
Not established if power state is off or ability to communicate is false
Established if power state is on and ability to communicate is true
4. Decision tables
7. Design 29
Example 1 (2 of 3)
communications not established
communications established
power state = off orability to communicate = false
power state = on andability to communicate = true
4. Decision tables
7. Design 30
Example 1 (3 of 3)
Criteria/Decisions 1 2 3 #Power state = on F T T 2Comm OK - F T 2Comm state - - - 2
ResultComm state 1 1 2
Num of decisions 4 2 2 8
Paths from/to 1 21 3 12 2 2 8
Communications state
4. Decision tables
7. Design 31
Creating a decision table1. Use Excel2. Use ‘- to enter a minus into a cell3. Use calculating capabilities to check
numbers4. Use non-proportional fonts5. Use single character criteria
4. Decision tables
7. Design 32
Defining number of decision tablesUse one state diagram for each decision
or conceptUse one decision table for each diagramUse adjectives to avoid ambiguity
4. Decision tables
7. Design 33
Using canonical format
Criteria/Decisions 1 2 3 4 5 6 7 8 9 10 11 12 #A,B A A A A A A B B B B B B 2C,D,E C C D D E E C C D D E E 3F,G F G F G F G F G F G F G 2
ResultState 1 1 1 1 1 1 2 2 3 4 5 5
Num of decisions 1 1 1 1 1 1 1 1 1 1 1 1 12
Example canonical format
4. Decision tables
7. Design 34
Ordering criteria rows (1 of 3)Listed vertically Based on the author’s guess at the impact of
each criterion on stateStrongest criterion at the topWeakest at the bottom
4. Decision tables
7. Design 35
Ordering criteria rows (2 of 3)Order of the rows can be changedNumber of columns may changeNumber of decisions and the path matrix
remain the sameConfirms accuracy of rearranging rows
4. Decision tables
7. Design 36
Ordering criteria rows (3 of 3)Changing rows doesn’t leave table in
canonical formatRow-order resulting in fewest number
columns is not always obviousObtained by trial and error
4. Decision tables
7. Design 37
Adding results rows
Criteria/Decisions 1 2 3 4 # 1 2 3 #A,B A A B B 2 A A B 2C,D C D C D 2 C D - 2
ResultState 1 1 2 2 1 1 2Create error N Y N N N Y N
Num of decisions 1 1 1 1 4 1 1 1 4
Results in addition to state can be shown. However additional information may prevent merging
some columns.4. Decision tables
7. Design 38
Ordering decision columns (1 of 6)1. Listed from left to right2. Weakest criterion change fastest3. Strongest change slowest
4. Decision tables
7. Design 39
Ordering decision columns (2 of 6)
Criteria/Decisions 1 2 3 4 5 #A,B A B B B B 2C,D,E - C D D E 3F,G - - F G - 2
ResultState 1 2 3 4 5
Num of decisions 6 2 1 1 2 12
Example canonical format
4. Decision tables
7. Design 40
Ordering decision columns (3 of 6)1. Find columns in which criteria have no effect 2. Merge such columns into a single column 3. Replace the values of the criteria that have no
effect with a “-”
4. Decision tables
7. Design 41
Ordering decision columns (4 of 6)The columns must be mutually exclusive
4. Decision tables
7. Design 42
Ordering decision columns (5 of 6)
Criteria/Decisions 1 2 3 # 1 2 3 4 5 #A,B A - B 2 A A A B B 2C,D - C D 2 C D C C D 2
ResultState 1 2 3 1 1 2 2 3
Num of decisions 2 2 1 5 1 1 1 1 1 5
Columns 1 and 2 in the left hand table are not mutually exclusive. Columns 1 and 3 in right hand table are not
mutually exclusive. Results are conflicting.
Left hand Right hand
4. Decision tables
7. Design 43
Ordering decision columns (6 of 6)Not necessary to simplifyMinimizing makes printing the decision table
easier and helps definition and implementation
4. Decision tables
7. Design 44
Checking correctness1. Identify all states2. Identify all criteria3. Identify all values of each criterion4. Enter the criteria values into the table in
canonical formatGuidelines for Creating a DT (2 of 2)5. Determine state corresponding to each
column6. Simplify the decision table7. Confirm the number of decisions
4. Decision tables
7. Design 45
Example 2 (1 of 5)Three load states
• 1. Not loaded or loading• 2. Loading• 3. Loaded
Determined by • Communications state (not est, est -- [F,T])• Load state (1, 2, 3 -- [1, 2,3])• Load command (none, stop, load -- [N, S, L])• Load status (none, failure, complete -- [N, F, C])
4. Decision tables
7. Design 46
Example 2 (2 of 5)If (1) the comm state is not established or (2)
the load status is failure, then the load state is not-loaded-or-loading
If (1) the comm state is established and (2) the load status is not failure and (3) the load command is stop, then the load state is loading
If (1) the comm state is established and (2) the load status is complete and (3) the load command is none and (4) the current load state is loading, then the load state is loaded
4. Decision tables
7. Design 47
Example 2 (3 of 5)
not loadedor loading
(1)comm state = not est
or load status = failurecomm state = est
& load cmnd= load& load status = not failure
comm state = est & load status =complete
loading(2)
loaded(3)
comm state = not estor load status = failure
comm state = est& load cmnd= load
& load status = not failure4. Decision tables
7. Design 48
Example 2 (4 of 5)Criteria/Decisions 1 2 3 4 5 6 7 8 9 10 11 12Comm state F T T T T T T T T T T T 2Load status - F N N N N N C C C C C 3Load command - - N N N S L N N N S L 3Load state - - 1 2 3 - - 1 2 3 - - 3ResultLoad state 1 1 1 2 3 1 2 1 3 3 1 2Num of decisions 27 9 1 1 1 3 3 1 1 1 3 3 54Path 1 to 1 9 3 1 1 1 1 16 1 2 3Path 1 to 2 1 1 2 1 16 2 0Path 1 to 3 0 2 14 3 1Path 2 to 1 9 3 1 1 14 3 14 2 2Path 2 to 2 1 1 1 3Path 2 to 3 1 1Path 3 to 1 9 3 1 1 14Path 3 to 2 1 1 2Path 3 to 3 1 1 2
4. Decision tables
7. Design 49
Example 2 (5 of 5)
Criteria/Decisions 1 2 3 4 5 6 7 #Comm state F - T T T T T 2Load status - F N C N C C 3Load command - - S S L L N 3Load state - - - - - - 2 3
ResultLoad state 1 1 1 1 2 2 3
Num of decisions 27 27 3 3 3 3 1 67
Paths from/to 1 2 31 20 2 2 20 2 13 20 2 67
Problems with developing decision table ad hoc
67>54
4. Decision tables
7. Design 50
Example 3 (1 of 4)Two operate states
• 1. Not operating• 2. Operating
Determined by • Operate command (stop, operate -- [S,O])• Operate state (1, 2-- [1,2])• Load state (not loaded, loading, loaded [1,2,3]
4. Decision tables
7. Design 51
Example 3 (2 of 4)If (a) the operate command is stop, or (b) the
operate command is operate and the loading state is 1 or 2, then the operate state is not operating
If the operate command is operate, then the operate state is operating
4. Decision tables
7. Design 52
Example 3 (3 of 4)
not operating(1)
operating(2)
operate command = operate
operate command = stop
4. Decision tables
7. Design 53
Example 3 (4 of 4)
Criteria/Decisions 1 2 3 4 #Operate command S O O O 2Load state - 1 2 3 3Operate state - - - - 2 ResultOperate state 1 1 1 2
Num of decisions 6 2 2 2 12
Paths from/to 1 21 5 12 5 1 12
4. Decision tables
7. Design 54
5. HomeworkProblemSix statesDetermined byOff stateNot communicating stateNot loaded stateLoading stateLoaded stateOperating state
5. Homework
7. Design 55
Problem
1. Create the decision table for this problem 2. Show the number of decisions for each
column3. Create the path matrix showing the number
of paths between each state and the number of options for taking each path
Hint -- Use Excel to generate the decision table in canonical format using the criteria in the order given, and don’t be intimidated by the words defining the resulting state
5. Homework
7. Design 56
Six States1. Off2. Not communicating3. Not loaded4. Loading5. Loaded6. Operating
5. Homework
7. Design 57
Determined by Power command = on (false, true -- [F,T])Communication status = OK (false, true --
[F,T])Load status (failed, none, complete -- [F, N,
C])Load command (none, stop, load -- [N, S, L])State [1, 2, 3, 4, 5, 6]Operate command (stop, operate [S, O]
5. Homework
7. Design 58
Off StateIf the power command is off, then the state is off
5. Homework
7. Design 59
Not Communicating StateIf (1) the power command is on and (2) the
communication status is false, then the state is not communicating
5. Homework
7. Design 60
Not Loaded StateIf (1) the power command is on and (2) the
communication status is true and (3) either • (a) the load status is failed or • (b) the load status is none and the load
command is none and the state is 1-3, or• (c) the load status is complete and the load
command is none and the state is 1-3, or• (d) the load status is none or complete and
the load command is stop • then the state is not loaded
5. Homework
7. Design 61
Loading StateIf (1) the power command is on and (2) the
communication status is true and (3) either• (a) the load status is none and the load
command is none, and the state is loading or
• (b) the load status is none and the load command is load or
• (c) the load status is complete and the load command is load
• then the state is loading
5. Homework
7. Design 62
Loaded StateIf (1) the power command is on and (2) the
communication status is true and (3) either• (a) the load status is either none or
complete, and the load command is none, and the current state is either loaded or operating, and the operate command is stop
• (b) the load status is complete, and the load command is none, and the current state is loading
• then the state shall be loaded
5. Homework
7. Design 63
Operate StateIf (1) the power command is on, and (2) the
communication status is true and (3) the load status is none or complete, and (4) the load command is none, and (5) the current state is loaded or operating, and (6) the operate command is operate then the state shall be operating
5. Homework