dxcomplete 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +11 -0
- package/README.md +215 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +212 -0
- package/dist/http/server.d.ts +7 -0
- package/dist/http/server.js +236 -0
- package/dist/http/service.d.ts +7 -0
- package/dist/http/service.js +725 -0
- package/dist/init.d.ts +13 -0
- package/dist/init.js +128 -0
- package/dist/install-manifest.d.ts +25 -0
- package/dist/install-manifest.js +96 -0
- package/dist/mcp/docs.d.ts +98 -0
- package/dist/mcp/docs.js +438 -0
- package/dist/mcp/server.d.ts +20 -0
- package/dist/mcp/server.js +2345 -0
- package/dist/package-root.d.ts +2 -0
- package/dist/package-root.js +28 -0
- package/dist/runtime/actor.d.ts +14 -0
- package/dist/runtime/actor.js +42 -0
- package/dist/runtime/auth.d.ts +162 -0
- package/dist/runtime/auth.js +394 -0
- package/dist/runtime/check.d.ts +7 -0
- package/dist/runtime/check.js +16 -0
- package/dist/runtime/config.d.ts +17 -0
- package/dist/runtime/config.js +93 -0
- package/dist/runtime/mongo.d.ts +9 -0
- package/dist/runtime/mongo.js +56 -0
- package/dist/runtime/records.d.ts +336 -0
- package/dist/runtime/records.js +1463 -0
- package/dist/runtime/workspace.d.ts +19 -0
- package/dist/runtime/workspace.js +102 -0
- package/dist/upgrade.d.ts +20 -0
- package/dist/upgrade.js +246 -0
- package/dist/validate.d.ts +10 -0
- package/dist/validate.js +119 -0
- package/dist/version.d.ts +3 -0
- package/dist/version.js +12 -0
- package/docs/codex-integration.md +29 -0
- package/docs/cost-model.md +61 -0
- package/docs/decision-basis.md +57 -0
- package/docs/diagrams.md +31 -0
- package/docs/glossary.md +147 -0
- package/docs/index.md +60 -0
- package/docs/model.md +110 -0
- package/docs/open-questions.md +61 -0
- package/docs/roles.md +42 -0
- package/docs/taxonomy.md +96 -0
- package/docs/workflows.md +60 -0
- package/package.json +62 -0
- package/scripts/check-env-surface.mjs +136 -0
- package/scripts/check-public-copy.mjs +263 -0
- package/scripts/check-service-boundary.mjs +63 -0
- package/scripts/dogfood-work-order.mjs +506 -0
- package/scripts/smoke-mcp-http.mjs +3572 -0
- package/src/cli.ts +268 -0
- package/src/http/server.ts +314 -0
- package/src/http/service.ts +934 -0
- package/src/init.ts +227 -0
- package/src/install-manifest.ts +144 -0
- package/src/mcp/docs.ts +557 -0
- package/src/mcp/server.ts +3525 -0
- package/src/package-root.ts +31 -0
- package/src/runtime/actor.ts +61 -0
- package/src/runtime/auth.ts +673 -0
- package/src/runtime/check.ts +18 -0
- package/src/runtime/config.ts +128 -0
- package/src/runtime/mongo.ts +89 -0
- package/src/runtime/records.ts +2303 -0
- package/src/runtime/workspace.ts +155 -0
- package/src/upgrade.ts +356 -0
- package/src/validate.ts +139 -0
- package/src/version.ts +16 -0
- package/templates/github/workflows/dxcomplete.yml +16 -0
- package/templates/next/pages/api/auth/callback/google.js +12 -0
- package/templates/next/pages/api/dxcomplete/[...path].js +12 -0
- package/templates/next/pages/api/dxcomplete.js +12 -0
- package/templates/next/pages/api/mcp.js +12 -0
- package/templates/next/vercel.json +18 -0
- package/templates/process/README.md +38 -0
- package/templates/process/controls.yml +113 -0
- package/templates/process/cost-model.yml +71 -0
- package/templates/process/decision-basis.yml +53 -0
- package/templates/process/decisions/.gitkeep +1 -0
- package/templates/process/diagrams/00-decision-basis.mmd +24 -0
- package/templates/process/diagrams/00-overview.mmd +20 -0
- package/templates/process/diagrams/01-intake-triage.mmd +20 -0
- package/templates/process/diagrams/02-product-definition.mmd +14 -0
- package/templates/process/diagrams/03-engineering-execution.mmd +15 -0
- package/templates/process/diagrams/04-qa-verification.mmd +12 -0
- package/templates/process/diagrams/05-product-validation.mmd +12 -0
- package/templates/process/diagrams/06-change-release-control.mmd +16 -0
- package/templates/process/diagrams/07-deployment-operations.mmd +16 -0
- package/templates/process/diagrams/08-support-incident-management.mmd +16 -0
- package/templates/process/diagrams/09-problem-improvement.mmd +14 -0
- package/templates/process/diagrams/10-risk-control-management.mmd +14 -0
- package/templates/process/diagrams/11-audit-evidence-capture.mmd +13 -0
- package/templates/process/evidence/.gitkeep +1 -0
- package/templates/process/risks/.gitkeep +1 -0
- package/templates/process/roles.yml +96 -0
- package/templates/process/taxonomy.yml +514 -0
- package/templates/process/workflows.yml +210 -0
- package/website/.well-known/oauth-authorization-server +22 -0
- package/website/.well-known/oauth-protected-resource/api/dxcomplete/mcp +10 -0
- package/website/.well-known/oauth-protected-resource/api/mcp +10 -0
- package/website/README.md +12 -0
- package/website/app.js +36 -0
- package/website/flow.html +85 -0
- package/website/glossary.html +280 -0
- package/website/index.html +90 -0
- package/website/objects.html +287 -0
- package/website/outcomes.html +117 -0
- package/website/phase-build.html +101 -0
- package/website/phase-elicit.html +102 -0
- package/website/phase-go-live.html +103 -0
- package/website/phase-measure.html +93 -0
- package/website/phase-operate.html +102 -0
- package/website/phase-orient.html +92 -0
- package/website/phase-weigh.html +98 -0
- package/website/roles.html +52 -0
- package/website/styles.css +1169 -0
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
schema: dxcomplete.workflows.v0
|
|
2
|
+
status: draft
|
|
3
|
+
notes:
|
|
4
|
+
- These workflows are editable templates.
|
|
5
|
+
- Add, remove, merge, or split workflows as the model becomes clearer.
|
|
6
|
+
|
|
7
|
+
workflows:
|
|
8
|
+
- id: decision_basis
|
|
9
|
+
name: Decision basis
|
|
10
|
+
draft_purpose: Move from user statement to expectations and requirements with enough detail to support useful cost, benefit, risk, confidence, and Weigh outcomes.
|
|
11
|
+
likely_roles:
|
|
12
|
+
- Owner
|
|
13
|
+
- Engineer
|
|
14
|
+
- Operator
|
|
15
|
+
- End User
|
|
16
|
+
draft_steps:
|
|
17
|
+
- Capture statement in the user's own words and restate the expected result.
|
|
18
|
+
- Confirm captured wording before recording it on the user's behalf.
|
|
19
|
+
- Confirm how success will be recognized where possible.
|
|
20
|
+
- Elicit requirements, dependencies, constraints, and unknowns from expectations.
|
|
21
|
+
- Make current-state cost context visible where it is relevant and available.
|
|
22
|
+
- Generate an itemized cost Estimate from the elicited requirement set where cost reasoning is needed.
|
|
23
|
+
- Capture Benefits where benefit reasoning is needed.
|
|
24
|
+
- Prepare the decision basis from Estimate, Benefits, risks, review notes, and linked Decisions where useful.
|
|
25
|
+
- Record a Commitment or Deferral.
|
|
26
|
+
- Link any separate Decision to the records that informed it.
|
|
27
|
+
- If committing, move the requirement set into Build and Go Live planning.
|
|
28
|
+
- If deferring, record the unmet conditions.
|
|
29
|
+
- Capture useful post-launch observations after delivery where available.
|
|
30
|
+
- Use available actuals to refine estimates for future projects.
|
|
31
|
+
rules:
|
|
32
|
+
- Cost visibility is mandatory.
|
|
33
|
+
- Complete cost data is not mandatory.
|
|
34
|
+
- Current-state cost context should be attempted where relevant, but may be unavailable.
|
|
35
|
+
- Post-launch observations should be captured when useful, but must not block closure.
|
|
36
|
+
- Transformation, greenfield, and limited-disclosure modes must be supported.
|
|
37
|
+
- Approval checkpoints reduce risk but should not block progress by themselves.
|
|
38
|
+
- Moving past an open checkpoint should leave the open risk visible.
|
|
39
|
+
|
|
40
|
+
- id: intake_triage
|
|
41
|
+
name: Intake and triage
|
|
42
|
+
draft_purpose: Decide whether a signal should become feedback, feature request, requirement, incident, problem, or another lifecycle object.
|
|
43
|
+
likely_roles:
|
|
44
|
+
- Owner
|
|
45
|
+
- Support Agent
|
|
46
|
+
- Operator
|
|
47
|
+
draft_steps:
|
|
48
|
+
- Capture signal.
|
|
49
|
+
- Identify source and urgency.
|
|
50
|
+
- Route to Owner, Operator, or Support Agent.
|
|
51
|
+
- Record initial object and links.
|
|
52
|
+
- Capture open questions.
|
|
53
|
+
|
|
54
|
+
- id: product_definition
|
|
55
|
+
name: Product definition
|
|
56
|
+
draft_purpose: Translate expectations into requirements before Weigh, then refine requirement detail after Commitment where needed.
|
|
57
|
+
likely_roles:
|
|
58
|
+
- Owner
|
|
59
|
+
- End User
|
|
60
|
+
- Engineer
|
|
61
|
+
draft_steps:
|
|
62
|
+
- Review linked Statement, Estimate, Benefits, and decisions where available.
|
|
63
|
+
- Review captured statement and expectations.
|
|
64
|
+
- Draft requirement and acceptance criteria.
|
|
65
|
+
- Add Engineer review notes where delivery input should remain visible.
|
|
66
|
+
- Refine requirement detail after Commitment where needed.
|
|
67
|
+
- Link source objects.
|
|
68
|
+
- Identify risks, constraints, and decisions.
|
|
69
|
+
- Confirm readiness for engineering review.
|
|
70
|
+
|
|
71
|
+
- id: engineering_execution
|
|
72
|
+
name: Engineering execution
|
|
73
|
+
draft_purpose: Refine committed requirements into tasks and perform implementation work.
|
|
74
|
+
likely_roles:
|
|
75
|
+
- Engineer
|
|
76
|
+
draft_steps:
|
|
77
|
+
- Review requirement and acceptance criteria.
|
|
78
|
+
- Review important notes attached to expectations or requirements.
|
|
79
|
+
- Add requirement detail and decide implementation approach.
|
|
80
|
+
- Break requirement into tasks.
|
|
81
|
+
- Assign Engineer tasks and identify Codex-assisted work where useful.
|
|
82
|
+
- Implement, review, and prepare for testing.
|
|
83
|
+
|
|
84
|
+
- id: qa_verification
|
|
85
|
+
name: QA verification
|
|
86
|
+
draft_purpose: Verify completed work against requirements and acceptance criteria.
|
|
87
|
+
likely_roles:
|
|
88
|
+
- Tester
|
|
89
|
+
- Engineer
|
|
90
|
+
draft_steps:
|
|
91
|
+
- Review requirement and task output.
|
|
92
|
+
- Plan verification.
|
|
93
|
+
- Execute checks.
|
|
94
|
+
- Record evidence and defects.
|
|
95
|
+
- Recommend pass, fail, or retest.
|
|
96
|
+
|
|
97
|
+
- id: product_validation
|
|
98
|
+
name: Product validation
|
|
99
|
+
draft_purpose: Decide whether verified work achieves the intended product outcome.
|
|
100
|
+
likely_roles:
|
|
101
|
+
- Owner
|
|
102
|
+
- End User
|
|
103
|
+
draft_steps:
|
|
104
|
+
- Review QA evidence.
|
|
105
|
+
- Validate outcome against product intent.
|
|
106
|
+
- Capture approval, rejection, or follow-up requirements.
|
|
107
|
+
- Link validation evidence.
|
|
108
|
+
|
|
109
|
+
- id: change_release_control
|
|
110
|
+
name: Change and release control
|
|
111
|
+
draft_purpose: Record a discrete service change, including plan, execution, rollback, notice, veto, emergency posture, and result.
|
|
112
|
+
likely_roles:
|
|
113
|
+
- Operator
|
|
114
|
+
- Owner
|
|
115
|
+
- Engineer
|
|
116
|
+
- Tester
|
|
117
|
+
draft_steps:
|
|
118
|
+
- Record the Change baseline.
|
|
119
|
+
- Confirm required evidence and notice.
|
|
120
|
+
- Assess risk, impact, and rollback.
|
|
121
|
+
- Append notice, veto, emergency, decision, result, recovery, note, or revision events as they occur.
|
|
122
|
+
- Link release or deployment evidence where needed.
|
|
123
|
+
|
|
124
|
+
- id: deployment_operations
|
|
125
|
+
name: Deployment and operations
|
|
126
|
+
draft_purpose: Deploy and run the service safely.
|
|
127
|
+
likely_roles:
|
|
128
|
+
- Operator
|
|
129
|
+
- Engineer
|
|
130
|
+
- Support Agent
|
|
131
|
+
draft_steps:
|
|
132
|
+
- Prepare deployment.
|
|
133
|
+
- Execute deployment.
|
|
134
|
+
- Monitor service health.
|
|
135
|
+
- Update Environment and Component records when operational inventory changes.
|
|
136
|
+
- Record deployment evidence.
|
|
137
|
+
- Route issues to incident or support workflows.
|
|
138
|
+
|
|
139
|
+
- id: operational_registry
|
|
140
|
+
name: Operational Registry maintenance
|
|
141
|
+
draft_purpose: Keep the inventory of Environments and Components understandable without turning it into monitoring, diagnostics, secret storage, event history, or a runbook.
|
|
142
|
+
likely_roles:
|
|
143
|
+
- Operator
|
|
144
|
+
- Engineer
|
|
145
|
+
draft_steps:
|
|
146
|
+
- Create or update Environment records for named operating contexts.
|
|
147
|
+
- Create or update Component records for operational items in each Environment.
|
|
148
|
+
- Record locator details, non-secret identifiers, and secret pointers where useful.
|
|
149
|
+
- Keep secret pointers as store and key names only; do not store secret values.
|
|
150
|
+
- Link Components to Changes, Decisions, Risks, or Tasks when those records need the inventory context.
|
|
151
|
+
|
|
152
|
+
- id: support_incident_management
|
|
153
|
+
name: Support and incident management
|
|
154
|
+
draft_purpose: Handle user-facing issues and service-impacting events.
|
|
155
|
+
likely_roles:
|
|
156
|
+
- Support Agent
|
|
157
|
+
- Operator
|
|
158
|
+
- Owner
|
|
159
|
+
- Engineer
|
|
160
|
+
draft_steps:
|
|
161
|
+
- Capture user or monitoring signal.
|
|
162
|
+
- Classify as ticket, incident, feedback, or problem candidate.
|
|
163
|
+
- Communicate status to affected users where needed.
|
|
164
|
+
- Resolve or route.
|
|
165
|
+
- Link follow-up objects.
|
|
166
|
+
|
|
167
|
+
- id: problem_improvement
|
|
168
|
+
name: Problem and improvement management
|
|
169
|
+
draft_purpose: Convert recurring or root-cause issues into durable improvements.
|
|
170
|
+
likely_roles:
|
|
171
|
+
- Operator
|
|
172
|
+
- Engineer
|
|
173
|
+
- Owner
|
|
174
|
+
- Support Agent
|
|
175
|
+
draft_steps:
|
|
176
|
+
- Identify recurring issue or root cause.
|
|
177
|
+
- Record problem.
|
|
178
|
+
- Decide whether improvement requires a requirement or Change.
|
|
179
|
+
- Track corrective action.
|
|
180
|
+
- Capture outcome and evidence.
|
|
181
|
+
|
|
182
|
+
- id: risk_control_management
|
|
183
|
+
name: Risk and control management
|
|
184
|
+
draft_purpose: Identify risks and define controls or evidence requirements.
|
|
185
|
+
likely_roles:
|
|
186
|
+
- Owner
|
|
187
|
+
- Operator
|
|
188
|
+
- Tester
|
|
189
|
+
- Engineer
|
|
190
|
+
draft_steps:
|
|
191
|
+
- Identify risk.
|
|
192
|
+
- Decide owner and impact.
|
|
193
|
+
- Define control or mitigation.
|
|
194
|
+
- Link related lifecycle objects.
|
|
195
|
+
- Review control evidence.
|
|
196
|
+
|
|
197
|
+
- id: audit_evidence_capture
|
|
198
|
+
name: Audit and evidence capture
|
|
199
|
+
draft_purpose: Preserve evidence for decisions, verification, controls, releases, deployments, and approvals.
|
|
200
|
+
likely_roles:
|
|
201
|
+
- Operator
|
|
202
|
+
- Tester
|
|
203
|
+
- Engineer
|
|
204
|
+
- Owner
|
|
205
|
+
draft_steps:
|
|
206
|
+
- Identify required evidence.
|
|
207
|
+
- Capture or link evidence.
|
|
208
|
+
- Record responsible person and timestamp.
|
|
209
|
+
- Review completeness.
|
|
210
|
+
- Preserve for audit or retrospective use.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"issuer": "https://dxcomplete.directeddomains.com",
|
|
3
|
+
"authorization_endpoint": "https://dxcomplete.directeddomains.com/api/dxcomplete/auth/authorize",
|
|
4
|
+
"token_endpoint": "https://dxcomplete.directeddomains.com/api/dxcomplete/auth/token",
|
|
5
|
+
"registration_endpoint": "https://dxcomplete.directeddomains.com/api/dxcomplete/auth/register",
|
|
6
|
+
"response_types_supported": [
|
|
7
|
+
"code"
|
|
8
|
+
],
|
|
9
|
+
"code_challenge_methods_supported": [
|
|
10
|
+
"S256"
|
|
11
|
+
],
|
|
12
|
+
"token_endpoint_auth_methods_supported": [
|
|
13
|
+
"none"
|
|
14
|
+
],
|
|
15
|
+
"grant_types_supported": [
|
|
16
|
+
"authorization_code",
|
|
17
|
+
"refresh_token"
|
|
18
|
+
],
|
|
19
|
+
"scopes_supported": [
|
|
20
|
+
"mcp:tools"
|
|
21
|
+
]
|
|
22
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# DX Complete
|
|
2
|
+
|
|
3
|
+
DX Complete helps teams decide what is worth doing, deliver it with control, run it safely, and learn from the results.
|
|
4
|
+
|
|
5
|
+
The documentation is organized into:
|
|
6
|
+
|
|
7
|
+
- Start here: a short overview.
|
|
8
|
+
- Outcomes: why the process exists and what it is meant to improve.
|
|
9
|
+
- Flow: phase workflows from Orient through Measure.
|
|
10
|
+
- Records: information kept so decisions, work, service issues, and measurements can be followed over time.
|
|
11
|
+
- Roles: who is responsible for each kind of work.
|
|
12
|
+
- Glossary: shared terms in plain language.
|
package/website/app.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
const roleDetails = {
|
|
2
|
+
owner: "Owner sets priorities, defines outcomes and requirements, commits budget and scope, validates outcomes, and accepts risk when needed.",
|
|
3
|
+
engineer: "Engineer turns committed requirements into tasks and working changes, directly or by driving coding-capable tools.",
|
|
4
|
+
tester: "Tester checks completed work against requirements and success criteria.",
|
|
5
|
+
operator: "Operator releases, deploys, monitors, runs the service, and manages users, permissions, settings, provisioning, and run-side security.",
|
|
6
|
+
supportAgent: "Support Agent helps users, captures signals, and routes questions, feedback, and issues to the right follow-up.",
|
|
7
|
+
endUser: "End User uses the service and provides requests, feedback, corrections, and issue reports."
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const pageName = window.location.pathname.split("/").pop() || "index.html";
|
|
11
|
+
const activePage = pageName.startsWith("phase-") ? "flow.html" : pageName;
|
|
12
|
+
const links = [...document.querySelectorAll(".nav-link")];
|
|
13
|
+
|
|
14
|
+
links.forEach((link) => {
|
|
15
|
+
const href = link.getAttribute("href") || "";
|
|
16
|
+
const linkPage = href.split("/").pop() || "index.html";
|
|
17
|
+
link.classList.toggle("is-active", linkPage === activePage);
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
const detailPanel = document.querySelector("#role-detail");
|
|
21
|
+
const roleButtons = [...document.querySelectorAll("[data-detail]")];
|
|
22
|
+
|
|
23
|
+
roleButtons.forEach((button, index) => {
|
|
24
|
+
if (index === 0) {
|
|
25
|
+
button.classList.add("is-selected");
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
button.addEventListener("click", () => {
|
|
29
|
+
const detail = roleDetails[button.dataset.detail];
|
|
30
|
+
if (!detail || !detailPanel) return;
|
|
31
|
+
|
|
32
|
+
roleButtons.forEach((item) => item.classList.remove("is-selected"));
|
|
33
|
+
button.classList.add("is-selected");
|
|
34
|
+
detailPanel.textContent = detail;
|
|
35
|
+
});
|
|
36
|
+
});
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>Flow | DX Complete</title>
|
|
7
|
+
<link rel="stylesheet" href="./styles.css?v=5" />
|
|
8
|
+
</head>
|
|
9
|
+
<body>
|
|
10
|
+
<a class="skip-link" href="#content">Skip to content</a>
|
|
11
|
+
<header class="topbar">
|
|
12
|
+
<div class="topbar__brand">
|
|
13
|
+
<span class="brand-mark" aria-hidden="true">DX</span>
|
|
14
|
+
<span><strong>DX Complete</strong><small>Plan, deliver, run, measure</small></span>
|
|
15
|
+
</div>
|
|
16
|
+
</header>
|
|
17
|
+
<div class="layout">
|
|
18
|
+
<aside class="sidebar" aria-label="Documentation pages">
|
|
19
|
+
<div class="sidebar__eyebrow">Pages</div>
|
|
20
|
+
<nav>
|
|
21
|
+
<a class="nav-link" href="./index.html">Start here</a>
|
|
22
|
+
<a class="nav-link" href="./outcomes.html">Outcomes</a>
|
|
23
|
+
<a class="nav-link" href="./flow.html">Flow</a>
|
|
24
|
+
<a class="nav-link" href="./objects.html">Records</a>
|
|
25
|
+
<a class="nav-link" href="./roles.html">Roles</a>
|
|
26
|
+
<a class="nav-link" href="./glossary.html">Glossary</a>
|
|
27
|
+
</nav>
|
|
28
|
+
</aside>
|
|
29
|
+
<main id="content" class="content" tabindex="-1">
|
|
30
|
+
<section class="doc-section">
|
|
31
|
+
<p class="section-kicker">Flow</p>
|
|
32
|
+
<h1>Flow</h1>
|
|
33
|
+
<p class="lede">
|
|
34
|
+
Flow is where each phase is explained in detail. Each phase shows the main steps, the roles involved, the important choices, the records used, and the handoff to the next phase.
|
|
35
|
+
</p>
|
|
36
|
+
</section>
|
|
37
|
+
|
|
38
|
+
<section class="doc-section doc-section--last">
|
|
39
|
+
<h2 class="section-heading">Phase workflows</h2>
|
|
40
|
+
<p>
|
|
41
|
+
Open a phase to see how the work moves through the people involved. The rows read from top to bottom. The columns show who leads each step.
|
|
42
|
+
</p>
|
|
43
|
+
<div class="phase-index" aria-label="Phase workflow pages">
|
|
44
|
+
<a href="./phase-orient.html">
|
|
45
|
+
<span>01</span>
|
|
46
|
+
<strong>Orient</strong>
|
|
47
|
+
<p>Capture the desired outcome, restate expectations, and confirm how success will be recognized.</p>
|
|
48
|
+
</a>
|
|
49
|
+
<a href="./phase-elicit.html">
|
|
50
|
+
<span>02</span>
|
|
51
|
+
<strong>Elicit</strong>
|
|
52
|
+
<p>Turn expectations into requirements, dependencies, unknowns, and risk.</p>
|
|
53
|
+
</a>
|
|
54
|
+
<a href="./phase-weigh.html">
|
|
55
|
+
<span>03</span>
|
|
56
|
+
<strong>Weigh</strong>
|
|
57
|
+
<p>Compare expected cost, expected value, risks, and confidence before recording a Commitment or Deferral.</p>
|
|
58
|
+
</a>
|
|
59
|
+
<a href="./phase-build.html">
|
|
60
|
+
<span>04</span>
|
|
61
|
+
<strong>Build</strong>
|
|
62
|
+
<p>Turn committed requirements into tasks and working changes.</p>
|
|
63
|
+
</a>
|
|
64
|
+
<a href="./phase-go-live.html">
|
|
65
|
+
<span>05</span>
|
|
66
|
+
<strong>Go Live</strong>
|
|
67
|
+
<p>Prepare the change, confirm readiness, and put it into use.</p>
|
|
68
|
+
</a>
|
|
69
|
+
<a href="./phase-operate.html">
|
|
70
|
+
<span>06</span>
|
|
71
|
+
<strong>Operate</strong>
|
|
72
|
+
<p>Run the service, help users, and respond when something goes wrong.</p>
|
|
73
|
+
</a>
|
|
74
|
+
<a href="./phase-measure.html">
|
|
75
|
+
<span>07</span>
|
|
76
|
+
<strong>Measure</strong>
|
|
77
|
+
<p>Compare expected and actual cost or benefit when data is available.</p>
|
|
78
|
+
</a>
|
|
79
|
+
</div>
|
|
80
|
+
</section>
|
|
81
|
+
</main>
|
|
82
|
+
</div>
|
|
83
|
+
<script src="./app.js?v=5"></script>
|
|
84
|
+
</body>
|
|
85
|
+
</html>
|