Cross Functional Flowcharts
Hi There,
I have been playing with dot for small charts and now I spent some more effort on producing the attacched cross functional flowchart.
http://en.wikipedia.org/wiki/Cross_functional_flowchart
Once obtained the visual effect I'd like to discuss the results with expert to optimize it.
a little explaination.
I created a subgraph for each stakeholder, then hidden nodes and edges to force the group dependency.
Finally I wrote the visible edges.
Although the visual effect is the desired one, I don't think this architecture is easily maintanable as if a new step needs to be inserted (IT DOES !!!) each single group needs to be displaced.
The ideal would be to have 15 steps where only the active states are described. I did some tries with "constraint" attribute, but finally I landed on this form.
Can any better be done ? Is dot the right tool to do this ?
I like the language description because I am focused on the analysis and the graph is a consequence opposite to visio.
Any help will be welcome
benny59
code here:
digraph G {
//page="16.54,11.69";
layout=dot;
label="Change Management Process";
//node [shape=plaintext, fontsize=16];
//bgcolor=white;
//edge [arrowsize=1, color=black];
/* Nodes */
subgraph cluster_0 {
label = "Management - CEO";
//STEP 1
x0_1 [style=invis];
//STEP 2
x0_2 [style=invis];
//STEP 3
x0_3 [style=invis];
//STEP 4
x0_4 [style=invis];
//STEP 5
x0_5 [style=invis];
//STEP 6
x0_6 [style=invis];
//STEP 7
x0_7 [style=invis];
//STEP 8
x0_8 [label="8-Project\nAnalysis",shape=box];
//STEP 9
x0_9 [label="9-Project\nEvaluation",shape=diamond];
//STEP 10
x0_10 [style=invis];
//STEP 11
x0_11 [style=invis];
//STEP 12
x0_12 [style=invis];
//STEP 13
x0_13 [style=invis];
//STEP 14
x0_14 [style=invis];
//STEP 15
x0_15 [style=invis];
x0_1->x0_2->x0_3->x0_4->x0_5->x0_6->x0_7->x0_8->x0_9->x0_10->x0_11->x0_12->x0_13->x0_14->x0_15 [style=invis];
color=blue
}
subgraph cluster_1 {
label = "Technical Departement";
//STEP 1
x1_1 [style=invis];
//STEP 2
x1_2 [style=invis];
//STEP 3
x1_3 [style=invis];
//STEP 4
x1_4 [style=invis];
//STEP 5
x1_5 [label="5-Feaseability\n Analysis",shape=box];
//STEP 6
x1_6 [style=invis];
//STEP 7
x1_7 [label="7-Cost\nAnalysis",shape=box];
//STEP 8
x1_8 [style=invis];
//STEP 9
x1_9 [style=invis];
//STEP 10
x1_10 [label="10 - Request for Execution\nCreation",shape=box];
//STEP 11
x1_11[label="11-Acceptance Plan\nCreation",shape=box];
//STEP 12
x1_12 [style=invis];
//STEP 13
x1_13 [label="13-Acceptance\nTests",shape=diamond];
//STEP 14
x1_14 [style=invis];
//STEP 15
x1_15 [style=invis];
x1_1->x1_2->x1_3->x1_4->x1_5->x1_6->x1_7->x1_8->x1_9->x1_10->x1_11->x1_12->x1_13->x1_14->x1_15 [style=invis];
color=blue
}
subgraph cluster_2 {
label = "Software Factory";
center=true;
rankdir=TB;
//STEP 1
x2_1 [style=invis];
//STEP 2
x2_2 [style=invis];
//STEP 3
x2_3 [style=invis];
//STEP 4
x2_4 [style=invis];
//STEP 5
x2_5 [style=invis];
//STEP 6
x2_6 [label="6-Impact and\nCosts Analysis",shape=box];
//STEP 7
x2_7 [style=invis];
//STEP 8
x2_8 [style=invis];
//STEP 9
x2_9 [style=invis];
//STEP 10
x2_10 [style=invis];
//STEP 11
x2_11 [label="11-Implementation",shape=box];
//STEP 12
x2_12 [label="12-Change\nReleased",shape=box];
//STEP 13
x2_13 [style=invis];
//STEP 14
x2_14 [style=invis];
//STEP 15
x2_15 [style=invis];
x2_1->x2_2->x2_3->x2_4->x2_5->x2_6->x2_7->x2_8->x2_9->x2_10->x2_11->x2_12->x2_13->x2_14->x2_15 [style=invis];
color=blue
}
subgraph cluster_3 {
label = "Any Source";
rankdir=TB;
//STEP 1
x3_1 [label="1-start" shape=circle,style=filled];
//STEP 2
x3_2 [label="2-Request for change\nsubmission"];
//STEP 3
x3_3 [style=invis];
//STEP 4
x3_4 [style=invis];
//STEP 5
x3_5 [style=invis];
//STEP 6
x3_6 [style=invis];
//STEP 7
x3_7 [style=invis];
//STEP 8
x3_8 [style=invis];
//STEP 9
x3_9 [style=invis];
//STEP 10
x3_10 [style=invis];
//STEP 11
x3_11 [style=invis];
//STEP 12
x3_12 [style=invis];
//STEP 13
x3_13 [style=invis];
//STEP 14
x3_14 [style=invis];
//STEP 15
x3_15 [label="15-Receives\nAcknowledge",shape=box];
x3_1->x3_2->x3_3->x3_4->x3_5->x3_6->x3_7->x3_8->x3_9->x3_10->x3_11->x3_12->x3_14->x3_15 [style=invis];
end [shape=circle,style=filled];
color=blue
}
subgraph cluster_4 {
rankdir=TB;
center=true;
label = "Marketing\nProduct Management";
//STEP 1
x4_1 [style=invis];
//STEP 2
x4_2 [style=invis];
//STEP 3
x4_3 [label="3-Analyze\nRequest",shape=box];
//STEP 4
x4_4 [label="4-Market Fitting Evaluation",shape=diamond];
//STEP 5
x4_5 [style=invis];
//STEP 6
x4_6 [style=invis];
//STEP 7
x4_7 [style=invis];
//STEP 8
x4_8 [style=invis];
//STEP 9
x4_9 [style=invis];
//STEP 10
x4_10 [style=invis];
//STEP 11
x4_11 [style=invis];
//STEP 12
x4_12 [style=invis];
//STEP 13
x4_13 [style=invis];
//STEP 14
x4_14 [label="14-Notifies Submitter",shape=box];
//STEP 15
x4_15 [style=invis];
x4_1->x4_2->x4_3->x4_4->x4_5->x4_6->x4_7->x4_8->x4_9->x4_10->x4_11->x4_12->x4_13->x4_14->x4_15 [style=invis];
color=blue
}
/* Process Relationships */
x3_1->x3_2 ; //STEP1
x3_2->x4_3 ; //STEP2
x4_3->x4_4 ; //STEP3
x4_4->x4_14 [label="Rejected",color=red]; //STEP4
x4_4->x1_5 [label="Compliant",color=green]; //STEP4
x1_5->x2_6 ; //STEP5
x2_6->x1_7 ; //STEP6
x1_7->x0_8 ; //STEP7
x0_8->x0_9 ; //STEP8
x0_9->x4_14 [label="Rejected",color=red]; //STEP9
x0_9->x1_10 [label="Approved",color=green]; //STEP9
x1_10->x1_11 ; //STEP10
x1_10->x2_11 ; //STEP10
x2_11->x2_12 ; //STEP11
x1_11->x1_13 ; //STEP12
x2_12->x1_13 ; //STEP12
x1_13->x2_11 [label="Rejected",color=red]; //STEP13
x1_13->x4_14 [label="Accepted",color=green]; //STEP13
x4_14->x3_15 ; //STEP14
x3_15->end ; //STEP15
}
| Attachment | Size |
|---|---|
| WISSchange.dot_.jpg | 241.71 KB |

Recent comments
20 hours 35 min ago
22 hours 11 min ago
22 hours 18 min ago
22 hours 20 min ago
2 days 20 hours ago
1 week 1 day ago
1 week 1 day ago
1 week 1 day ago
1 week 1 day ago
1 week 2 days ago