-
Notifications
You must be signed in to change notification settings - Fork 25
Expand file tree
/
Copy pathroles.yml
More file actions
399 lines (340 loc) · 12 KB
/
roles.yml
File metadata and controls
399 lines (340 loc) · 12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
# Role Mapping for Semantic Anchors
#
# This file maps each semantic anchor to relevant professional roles.
# Each anchor must have at least one role assigned.
#
# Role IDs:
# - software-developer: Software Developer / Engineer
# - software-architect: Software Architect
# - qa-engineer: QA Engineer / Tester
# - devops-engineer: DevOps Engineer
# - product-owner: Product Owner / Product Manager
# - business-analyst: Business Analyst / Requirements Engineer
# - technical-writer: Technical Writer / Documentation Specialist
# - ux-designer: UX Designer / Researcher
# - data-scientist: Data Scientist / Statistician
# - consultant: Consultant / Coach
# - team-lead: Team Lead / Engineering Manager
# - educator: Educator / Trainer
#
# Mapping rationale:
# - Roles are assigned based on "When to Use" sections and core concepts
# - Multiple roles indicate broad applicability
# - Focus on primary users, not all possible users
---
# CATEGORY: Testing & Quality Practices
tdd-london-school:
roles:
- software-developer
- qa-engineer
- software-architect
rationale: "Outside-in TDD for complex systems; developers write tests, QA adopts methodology, architects design testable systems"
tdd-chicago-school:
roles:
- software-developer
- qa-engineer
rationale: "Inside-out TDD for domain logic; developers and QA use for test-driven workflows"
property-based-testing:
roles:
- software-developer
- qa-engineer
rationale: "Advanced testing technique; developers implement, QA designs property specifications"
testing-pyramid:
roles:
- software-developer
- qa-engineer
- team-lead
- devops-engineer
rationale: "Test strategy framework; developers/QA implement, team leads guide strategy, DevOps automates"
mutation-testing:
roles:
- software-developer
- qa-engineer
rationale: "Test quality assessment; developers improve tests, QA measures test effectiveness"
# CATEGORY: Architecture & Design
arc42:
roles:
- software-architect
- technical-writer
- team-lead
rationale: "Architecture documentation template; architects document, tech writers format, team leads review"
adr-nygard:
roles:
- software-architect
- software-developer
- team-lead
rationale: "Architectural decisions; architects make decisions, developers document, team leads review"
madr:
roles:
- software-architect
- software-developer
- team-lead
rationale: "Structured ADR format; architects/developers document decisions, team leads approve"
c4-diagrams:
roles:
- software-architect
- technical-writer
- team-lead
- consultant
rationale: "Architecture visualization; architects create, tech writers document, consultants teach, team leads review"
hexagonal-architecture:
roles:
- software-architect
- software-developer
rationale: "Architectural pattern; architects design, developers implement ports/adapters"
clean-architecture:
roles:
- software-architect
- software-developer
rationale: "Layered architecture pattern; architects design layers, developers enforce dependency rules"
# CATEGORY: Design Principles & Patterns
solid-principles:
roles:
- software-developer
- software-architect
- educator
- consultant
rationale: "Foundational OO principles; developers apply, architects review, educators teach, consultants coach"
dry:
roles:
- software-developer
- software-architect
rationale: "Avoid duplication principle; developers apply during coding, architects enforce in design"
spot:
roles:
- software-developer
- software-architect
rationale: "Single Point of Truth pattern; developers implement, architects design data flow"
ssot:
roles:
- software-architect
- data-scientist
- business-analyst
rationale: "Single Source of Truth principle; architects design, data scientists implement for data, BAs define authoritative sources"
domain-driven-design:
roles:
- software-architect
- software-developer
- business-analyst
- team-lead
rationale: "Domain modeling approach; architects design bounded contexts, developers implement, BAs provide domain expertise, team leads facilitate ubiquitous language"
# CATEGORY: Requirements Engineering
problem-space-nvc:
roles:
- business-analyst
- product-owner
- consultant
- ux-designer
rationale: "Empathic requirements elicitation; BAs facilitate, POs gather needs, consultants coach, UX researchers interview"
ears-requirements:
roles:
- business-analyst
- qa-engineer
- technical-writer
rationale: "Structured requirements syntax; BAs write, QA verifies testability, tech writers document"
user-story-mapping:
roles:
- product-owner
- business-analyst
- team-lead
- ux-designer
rationale: "Visual requirements planning; POs prioritize, BAs facilitate, team leads plan, UX designers map user journeys"
impact-mapping:
roles:
- product-owner
- business-analyst
- team-lead
- consultant
rationale: "Strategic requirements framework; POs set goals, BAs map impacts, team leads plan deliverables, consultants facilitate"
jobs-to-be-done:
roles:
- product-owner
- ux-designer
- business-analyst
rationale: "Customer-centric framework; POs define product direction, UX researchers interview users, BAs analyze context"
# CATEGORY: Documentation
docs-as-code:
roles:
- technical-writer
- software-developer
- devops-engineer
rationale: "Documentation workflow; tech writers author, developers review/contribute, DevOps automates builds"
diataxis:
roles:
- technical-writer
- educator
rationale: "Documentation structure framework; tech writers organize content, educators apply pedagogical structure"
# CATEGORY: Communication & Presentation
pyramid-principle:
roles:
- business-analyst
- consultant
- team-lead
- technical-writer
rationale: "Structured communication; BAs present analysis, consultants deliver recommendations, team leads communicate upward, tech writers structure docs"
mece-principle:
roles:
- business-analyst
- consultant
- software-architect
- data-scientist
rationale: "Organizational principle; BAs structure requirements, consultants organize analysis, architects categorize components, data scientists classify data"
# CATEGORY: Decision Making & Strategy
pugh-matrix:
roles:
- software-architect
- team-lead
- product-owner
rationale: "Comparative decision tool; architects evaluate tech choices, team leads facilitate team decisions, POs prioritize features"
cynefin-framework:
roles:
- team-lead
- consultant
- product-owner
- software-architect
rationale: "Context-based strategy; team leads assess situations, consultants guide approach, POs adapt planning, architects choose methodologies"
wardley-mapping:
roles:
- product-owner
- software-architect
- consultant
- team-lead
rationale: "Strategic landscape analysis; POs plan product strategy, architects assess technology evolution, consultants advise, team leads plan capability building"
# CATEGORY: Development Practices
mental-model-naur:
roles:
- software-developer
- team-lead
- educator
- consultant
rationale: "Theory of programming; developers understand knowledge building, team leads manage knowledge transfer, educators/consultants teach philosophy"
conventional-commits:
roles:
- software-developer
- devops-engineer
rationale: "Commit message standard; developers write commits, DevOps automates releases based on commit types"
semantic-versioning:
roles:
- software-developer
- devops-engineer
- product-owner
rationale: "Versioning scheme; developers bump versions, DevOps automates, POs communicate breaking changes"
bem-methodology:
roles:
- software-developer
- ux-designer
rationale: "CSS naming convention; developers implement, UX designers understand component naming"
todo-txt-markdown:
roles:
- software-developer
- team-lead
- technical-writer
rationale: "Task management format; developers track TODOs, team leads organize work, tech writers track documentation tasks"
sota:
roles:
- software-developer
- data-scientist
- consultant
rationale: "State-of-the-art research; developers explore cutting edge, data scientists benchmark methods, consultants advise on best practices"
timtowtdi:
roles:
- software-developer
- software-architect
- consultant
- educator
rationale: "Flexibility philosophy; developers appreciate multiple solutions, architects evaluate trade-offs, consultants/educators teach pragmatism"
regulated-environment:
roles:
- software-developer
- software-architect
- qa-engineer
- devops-engineer
- team-lead
- consultant
- business-analyst
rationale: "Development context with regulatory constraints; developers implement traceability, architects design audit-ready systems, QA validates, DevOps enforces controlled pipelines, team leads manage compliance, consultants advise on standards, BAs capture regulatory requirements"
# CATEGORY: Statistical Methods & Process Monitoring
spc:
roles:
- data-scientist
- devops-engineer
- team-lead
- qa-engineer
rationale: "Process control framework; data scientists implement, DevOps monitors pipelines, team leads track metrics, QA monitors defects"
control-chart-shewhart:
roles:
- data-scientist
- devops-engineer
- team-lead
rationale: "Visual monitoring tool; data scientists create charts, DevOps tracks deployment metrics, team leads monitor velocity"
nelson-rules:
roles:
- data-scientist
- devops-engineer
rationale: "Pattern detection rules; data scientists apply to data analysis, DevOps uses for anomaly detection"
# CATEGORY: Interaction & Reasoning Patterns
socratic-method:
roles:
- educator
- consultant
- team-lead
rationale: "Dialogue technique; educators teach through questions, consultants coach, team leads facilitate learning"
bluf:
roles:
- business-analyst
- team-lead
- technical-writer
- consultant
rationale: "Communication format; BAs present findings, team leads communicate upward, tech writers structure docs, consultants deliver recommendations"
rubber-duck-debugging:
roles:
- software-developer
- qa-engineer
rationale: "Debugging technique; developers explain code to find bugs, QA uses for test case design"
chain-of-thought:
roles:
- software-developer
- data-scientist
- business-analyst
rationale: "LLM prompting technique; developers prompt for code, data scientists for analysis, BAs for requirement refinement"
devils-advocate:
roles:
- software-architect
- team-lead
- consultant
- qa-engineer
rationale: "Critical evaluation; architects stress-test designs, team leads challenge assumptions, consultants probe decisions, QA finds edge cases"
five-whys:
roles:
- software-developer
- qa-engineer
- devops-engineer
- team-lead
rationale: "Root cause analysis; developers debug issues, QA investigates defects, DevOps troubleshoots incidents, team leads facilitate retrospectives"
feynman-technique:
roles:
- software-developer
- educator
- consultant
- team-lead
rationale: "Learning method; developers master concepts, educators teach, consultants explain complex topics, team leads facilitate knowledge sharing"
# SUMMARY STATISTICS
# Total anchors mapped: 50
#
# Roles by frequency:
# - software-developer: 25 anchors (50%)
# - team-lead: 21 anchors (42%)
# - software-architect: 18 anchors (36%)
# - consultant: 16 anchors (32%)
# - qa-engineer: 14 anchors (28%)
# - business-analyst: 13 anchors (26%)
# - devops-engineer: 10 anchors (20%)
# - technical-writer: 9 anchors (18%)
# - product-owner: 8 anchors (16%)
# - data-scientist: 7 anchors (14%)
# - educator: 7 anchors (14%)
# - ux-designer: 5 anchors (10%)
#
# Average roles per anchor: 2.7
# Min roles per anchor: 1 (Diataxis)
# Max roles per anchor: 7 (Regulated Environment)