Skip to content

Commit 6bbc734

Browse files
committed
bzzt
1 parent 1aa1af4 commit 6bbc734

3 files changed

Lines changed: 198 additions & 157 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Your specification-driven development framework construction toolkit, with multi
2525
But more than anything else, it's for streamlined development which lets you
2626
focus on focus your attention on what's important.
2727

28-
![workflow](./assets/process.png)
28+
![workflow](./assets/process.svg)
2929

3030
The machinery required is more complex than more naive approaches (research ->
3131
specify -> plan -> execute) - but it's a very conscious tradeoff.

assets/process.d2

Lines changed: 80 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ classes: {
99
process: {
1010
shape: parallelogram
1111
style: {
12-
fill: "#cceeff"
12+
fill: "#abefff"
1313
font: mono
1414
font-size: 16
1515
}
@@ -18,7 +18,7 @@ classes: {
1818
artifact: {
1919
shape: page
2020
style: {
21-
fill: "#ffffcc"
21+
fill: "#ffefab"
2222
}
2323
}
2424

@@ -27,26 +27,37 @@ classes: {
2727
stroke-width: 4
2828
}
2929
}
30-
31-
creates: {
30+
emits: {
31+
label: defines
3232
style: {
33-
# stroke-dash: 2
34-
# stroke: "#555555"
33+
stroke: "#777777"
3534
}
3635
}
37-
38-
relates: {
36+
updates: {
37+
label: updates
38+
style: {
39+
# stroke: "#777777"
40+
}
41+
}
42+
informs: {
43+
label: informs
3944
style: {
4045
stroke-dash: 4
4146
stroke: "#7799cc"
4247
}
4348
}
44-
45-
generates: {
46-
style: {
47-
stroke-dash: 3
48-
stroke-width: 1
49-
stroke: "#555555"
49+
}
50+
# #
51+
# #
52+
vars: {
53+
d2-legend: {
54+
d: {
55+
label: "the important part"
56+
class: important
57+
style: {
58+
fill: "#ff00ff"
59+
font-color: "#ffffff"
60+
}
5061
}
5162
}
5263
}
@@ -64,34 +75,29 @@ plan.class: process
6475
execute.class: process
6576
verify.class: process
6677

67-
legend: {
68-
legend: {
69-
label: "important bits"
70-
class: important
71-
style: {
72-
fill: "#ff00ff"
73-
font-color: "#ffffff"
74-
}
75-
}
76-
}
77-
7878
delta: {
79+
style.fill: "#ffdecd"
80+
style.stroke: "#cc7755"
7981
class: artifact
8082

8183
design_revision: {
8284
class: important
8385
shape: page
84-
label: "design revision"
86+
label: "design\nrevision"
8587
}
8688

8789
implementation_plan: {
8890
class: artifact
89-
label: "implementation plan"
91+
label: "implementation\nplan"
92+
# phases: {
93+
# style.multiple: true
94+
# class: artifact
95+
# }
9096
}
9197
}
9298

9399
research: {
94-
label: "normative truth"
100+
label: "research | truth"
95101
product_spec: {
96102
class: artifact
97103
label: "product spec"
@@ -110,43 +116,63 @@ research: {
110116
style.multiple: true
111117
class: artifact
112118
}
119+
}
113120

114-
contracts: {
115-
class: artifact
116-
label: "generated contracts"
117-
style: {
118-
fill: "#eeeeee"
119-
multiple: true
120-
}
121+
contracts: {
122+
class: artifact
123+
label: "generated\ncontracts"
124+
style: {
125+
fill: "#eeeeee"
126+
multiple: true
121127
}
122128
}
123129
}
124-
125-
research -> delta: {class: relates; label: informs}
130+
research -> design: {class: informs}
131+
research -> plan: {class: informs}
126132

127133
backlog: {
128-
issue.class: artifact
129-
improvement.class: artifact
130-
problem.class: artifact
131-
risk.class: artifact
134+
ideas: {
135+
style.multiple: true
136+
class: artifact
137+
}
138+
issues: {
139+
style.multiple: true
140+
class: artifact
141+
}
142+
problems: {
143+
style.multiple: true
144+
class: artifact
145+
}
146+
risks: {
147+
style.multiple: true
148+
class: artifact
149+
}
132150
}
133151

152+
#
153+
# workflow
154+
#
155+
134156
capture -> scope -> design -> plan -> execute -> verify: {class: critpath}
135157

136-
capture -> backlog: {class: creates}
137-
backlog -> scope: {class: relates}
138-
scope -> delta: {class: creates}
139-
design -> delta.design_revision: {class: creates}
140-
plan -> delta.implementation_plan: {class: creates}
141-
execute -> code
142-
# verify -> audit
158+
capture -> backlog: {class: emits}
159+
backlog -> scope: {class: informs}
160+
scope -> delta: {class: emits}
161+
design -> delta.design_revision: {class: emits}
162+
plan -> delta.implementation_plan: {class: emits}
163+
execute -> code: {class: updates}
143164

144-
code: {shape: hexagon}
165+
code: {
166+
label: codebase
167+
shape: hexagon
168+
}
145169

146-
code -> research.tech_spec.contracts: {
147-
class: generates
170+
code -> research.contracts: {
171+
class: emits
172+
label: emits
148173
}
149174

150-
delta -> verify: {class: relates}
151-
code -> verify: {class: relates}
152-
verify -> research: update
175+
delta -> verify: {class: informs}
176+
code -> verify: {class: informs}
177+
verify -> research: {class: updates}
178+
research.contracts -> verify: {class: informs}

0 commit comments

Comments
 (0)