]>
Commit | Line | Data |
---|---|---|
5e8ff485 RBR |
1 | struct Stage { |
2 | let i: String | |
3 | let ii: String | |
4 | let iii: String | |
5 | let iv: String | |
6 | ||
7 | static func stages(_ type: StageType) -> Stage { | |
8 | switch type { | |
9 | case .general: | |
10 | return Stage( | |
11 | i: "Genesis", ii: "Custom Built", iii: "Product (+rental)", iv: "Commodity (+utility)") | |
12 | case .practice: | |
13 | return Stage( | |
14 | i: "Novel", ii: "Emerging", iii: "Good", iv: "Best") | |
15 | case .data: | |
16 | return Stage( | |
17 | i: "Unmodelled", ii: "Divergent", iii: "Convergent", iv: "Modelled") | |
18 | case .knowledge: | |
19 | return Stage( | |
20 | i: "Concept", ii: "Hypothesis", iii: "Theory", iv: "Accepted") | |
21 | case .ubiquity: | |
22 | return Stage( | |
23 | i: "Rare", ii: "Slowly Increasing Consumption", iii: "Rapidly Increasing Consumption", | |
24 | iv: "Widespread and stabilising") | |
25 | case .certainty: | |
26 | return Stage( | |
27 | i: "Poorly Understood", ii: "Rapid Increase In Learning", | |
28 | iii: "Rapid Increase in Use / fit for purpose", iv: "Commonly understood (in terms of use)") | |
29 | case .publicationTypes: | |
30 | return Stage( | |
31 | i: "Normally describing the wonder of the thing", | |
32 | ii: "Build / construct / awareness and learning", | |
33 | iii: "Maintenance / operations / installation / feature", iv: "Focused on use") | |
34 | case .market: | |
35 | return Stage( | |
36 | i: "Undefined Market", ii: "Forming Market", iii: "Growing Market", iv: "Mature Market") | |
37 | case .knowledgeManagement: | |
38 | return Stage( | |
39 | i: "Uncertain", ii: "Learning on use", iii: "Learning on operation", iv: "Known / accepted") | |
40 | case .marketPerception: | |
41 | return Stage( | |
42 | i: "Chaotic (non-linear)", ii: "Domain of experts", iii: "Increasing expectation of use", | |
43 | iv: "Ordered (appearance of being trivial) / trivial") | |
44 | case .userPerception: | |
45 | return Stage( | |
46 | i: "Different / confusing / exciting / surprising", ii: "Leading edge / emerging", | |
47 | iii: "Increasingly common / disappointed if not used", iv: "Standard / expected") | |
48 | case .perceptionInIndustry: | |
49 | return Stage( | |
50 | i: "Competitive advantage / unpredictable / unknown", | |
51 | ii: "Competitive advantage / ROI / case examples", | |
52 | iii: "Advantage through implementation / features", iv: "Cost of doing business") | |
53 | case .focusOfValue: | |
54 | return Stage( | |
55 | i: "High future worth", ii: "Seeking profit / ROI", iii: "High profitability", | |
56 | iv: "High volume / reducing margin") | |
57 | case .understanding: | |
58 | return Stage( | |
59 | i: "Poorly Understood / unpredictable", | |
60 | ii: "Increasing understanding / development of measures", | |
61 | iii: "Increasing education / constant refinement of needs / measures", | |
62 | iv: "Believed to be well defined / stable / measurable") | |
63 | case .comparison: | |
64 | return Stage( | |
65 | i: "Constantly changing / a differential / unstable", | |
66 | ii: "Learning from others / testing the water / some evidential support", | |
67 | iii: "Feature difference", iv: "Essential / operational advantage") | |
68 | case .failure: | |
69 | return Stage( | |
70 | i: "High / tolerated / assumed", ii: "Moderate / unsurprising but disappointed", | |
71 | iii: "Not tolerated, focus on constant improvement", | |
72 | iv: "Operational efficiency and surprised by failure") | |
73 | case .marketAction: | |
74 | return Stage( | |
75 | i: "Gambling / driven by gut", ii: "Exploring a \"found\" value", | |
76 | iii: "Market analysis / listening to customers", iv: "Metric driven / build what is needed") | |
77 | case .efficiency: | |
78 | return Stage( | |
79 | i: "Reducing the cost of change (experimentation)", ii: "Reducing cost of waste (Learning)", | |
80 | iii: "Reducing cost of waste (Learning)", iv: "Reducing cost of deviation (Volume)") | |
81 | case .decisionDrivers: | |
82 | return Stage( | |
83 | i: "Heritage / culture", ii: "Analyses & synthesis", iii: "Analyses & synthesis", | |
84 | iv: "Previous Experience") | |
85 | case .behavior: | |
86 | return Stage( | |
87 | i: "Uncertain when to use", ii: "Learning when to use", iii: "Learning through use", | |
88 | iv: "Known / common usage") | |
89 | } | |
90 | } | |
91 | ||
92 | static func title(_ type: StageType) -> String { | |
93 | switch type { | |
94 | case .general: | |
95 | return "Activities" | |
96 | case .practice: | |
97 | return "Practice" | |
98 | case .data: | |
99 | return "Data" | |
100 | case .knowledge: | |
101 | return "Knowledge" | |
102 | case .ubiquity: | |
103 | return "Ubiquity" | |
104 | case .certainty: | |
105 | return "Certainty" | |
106 | case .publicationTypes: | |
107 | return "Publication Types" | |
108 | case .market: | |
109 | return "Market" | |
110 | case .knowledgeManagement: | |
111 | return "Knowledge Management" | |
112 | case .marketPerception: | |
113 | return "Market Perception" | |
114 | case .userPerception: | |
115 | return "User Perception" | |
116 | case .perceptionInIndustry: | |
117 | return "Perception In Industry" | |
118 | case .focusOfValue: | |
119 | return "Focus Of Value" | |
120 | case .understanding: | |
121 | return "Understanding" | |
122 | case .comparison: | |
123 | return "Comparison" | |
124 | case .failure: | |
125 | return "Failure" | |
126 | case .marketAction: | |
127 | return "Market Action" | |
128 | case .efficiency: | |
129 | return "Efficiency" | |
130 | case .decisionDrivers: | |
131 | return "Decision Drivers" | |
132 | case .behavior: | |
133 | return "Behavior" | |
134 | } | |
135 | } | |
136 | } | |
137 | ||
138 | enum StageType: String, CaseIterable, Identifiable { | |
139 | case general | |
140 | case practice | |
141 | case data | |
142 | case knowledge | |
143 | case ubiquity | |
144 | case certainty | |
145 | case publicationTypes | |
146 | case market | |
147 | case knowledgeManagement | |
148 | case marketPerception | |
149 | case userPerception | |
150 | case perceptionInIndustry | |
151 | case focusOfValue | |
152 | case understanding | |
153 | case comparison | |
154 | case failure | |
155 | case marketAction | |
156 | case efficiency | |
157 | case decisionDrivers | |
158 | case behavior | |
159 | ||
160 | var id: String { self.rawValue } | |
161 | } |