🎉 init: 小龙的工作空间
This commit is contained in:
@@ -0,0 +1,241 @@
|
||||
# PR-37 Delivery Planning — Reference
|
||||
|
||||
> Sprint Plan / Release Plan / Batch Plan / Capacity Plan / Roadmap Alignment
|
||||
|
||||
---
|
||||
|
||||
## Sprint Plan (Part F)
|
||||
|
||||
### Input
|
||||
|
||||
```js
|
||||
generateSprintPlan({
|
||||
stories, // SF-02 user stories
|
||||
dependencies, // SF-02 dependency graph { nodes, edges }
|
||||
priorities, // SF-02 priority entries [{ itemId, category, score }]
|
||||
config, // { sprintDurationWeeks, teamVelocity, maxStoryPointsPerSprint }
|
||||
})
|
||||
```
|
||||
|
||||
### Output
|
||||
|
||||
```js
|
||||
{
|
||||
sprints: [{
|
||||
sprintNumber: 1,
|
||||
sprintGoal: "Sprint 1: 浏览用户注册列表 / 查看用户注册详情 / ...",
|
||||
startDate: "Week 1",
|
||||
endDate: "Week 2",
|
||||
storyIds: ["us-1", "us-2", ...],
|
||||
totalStoryPoints: 20,
|
||||
epicIds: ["ep-1", "ep-2"],
|
||||
featureIds: ["ft-1", "ft-2", "ft-3"],
|
||||
criticalPath: ["us-1"],
|
||||
risks: []
|
||||
}, ...],
|
||||
metrics: {
|
||||
totalSprints: 6,
|
||||
totalPoints: 138,
|
||||
avgPointsPerSprint: 23,
|
||||
estimatedDurationWeeks: 12
|
||||
},
|
||||
unplannedStories: [],
|
||||
warnings: []
|
||||
}
|
||||
```
|
||||
|
||||
### Algorithm
|
||||
|
||||
1. Filter Must Have → Should Have → Could Have stories
|
||||
2. Build dependency map from edges: `edge.from depends on edge.to`
|
||||
3. Topological sort: Kahn's algorithm, deps come first
|
||||
4. Assign to sprints by capacity (maxStoryPointsPerSprint / teamVelocity)
|
||||
5. Dependency constraint: dependent story cannot be in earlier sprint than prerequisite
|
||||
|
||||
---
|
||||
|
||||
## Release Plan (Part G)
|
||||
|
||||
### Input
|
||||
|
||||
```js
|
||||
generateReleasePlan({
|
||||
mvpScope, // SF-02 MVP scope
|
||||
priorities, // SF-02 priority entries
|
||||
dependencies, // Dependency graph
|
||||
stories, // User stories
|
||||
epics, // Epics
|
||||
features, // Features
|
||||
})
|
||||
```
|
||||
|
||||
### Output
|
||||
|
||||
```js
|
||||
{
|
||||
releases: [
|
||||
{
|
||||
version: "1.0.0",
|
||||
name: "MVP — 最小可行产品",
|
||||
features: { epicCount: 2, epicNames: [...], featureCount: 2, featureNames: [...], storyCount: 10, storyPoints: 30 },
|
||||
description: "...",
|
||||
releaseGoals: "...",
|
||||
validationGates: ["All ACs pass", "Regression test pass", "Performance benchmark meet", "Security scan pass", "UAT sign-off"],
|
||||
dependencyCheck: { unresolvedIds: [], allResolved: true },
|
||||
releaseDate: "Week 8"
|
||||
},
|
||||
{ version: "1.1.0", name: "MVP Polish", ... },
|
||||
{ version: "2.0.0", name: "V1 — 第一完整版本", ... },
|
||||
{ version: "3.0.0", name: "V2 — 功能增强版本", ... },
|
||||
{ version: "4.0.0", name: "Global — 全球化版本", ... }
|
||||
],
|
||||
warnings: []
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Batch Plan (Part H)
|
||||
|
||||
### Batch Types
|
||||
|
||||
| Batch Type | Description |
|
||||
|------------|-------------|
|
||||
| DevelopmentBatch L0 | 无依赖,可并行开发 |
|
||||
| DevelopmentBatch L1 | 依赖 L0 完成 |
|
||||
| DevelopmentBatch L2 | 依赖 L1 完成 |
|
||||
| DevelopmentBatch L3+ | 深层依赖 |
|
||||
| TestingBatch | 开发完成的进入测试 |
|
||||
| ReleaseBatch | 测试通过的进入发布队列 |
|
||||
| DeliveryBatch | 最终客户交付批次 |
|
||||
|
||||
### Output
|
||||
|
||||
```js
|
||||
{
|
||||
batches: [{
|
||||
batchId: "batch-dev-l0-1",
|
||||
batchType: "DevelopmentBatch",
|
||||
name: "Development Level 0",
|
||||
storyIds: ["us-1", "us-7", "us-13", ...],
|
||||
featureIds: [...],
|
||||
epicIds: [...],
|
||||
parallelGroups: [["us-1", "us-7", "us-13"], ["us-19", "us-25"]],
|
||||
prerequisiteBatches: []
|
||||
}, ...]
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Capacity Plan (Part I)
|
||||
|
||||
### Configuration
|
||||
|
||||
```js
|
||||
{
|
||||
teamSize: 5, // 团队人数
|
||||
velocity: 20, // 每 Sprint 完成点数
|
||||
availabilityFactor: 0.8, // 可用率(扣除会议/假期)
|
||||
complexityFactors: {
|
||||
high: 2.0, // 高复杂度工作量倍率
|
||||
medium: 1.0, // 中复杂度
|
||||
low: 0.5 // 低复杂度
|
||||
},
|
||||
riskBufferPercent: 20 // 风险缓冲百分比
|
||||
}
|
||||
```
|
||||
|
||||
### Output
|
||||
|
||||
```js
|
||||
{
|
||||
totalEffort: 60, // 复杂度调整后总工作量(pts)
|
||||
totalCapacity: 240, // 团队总容量(pts)
|
||||
capacityUtilization: "25%",
|
||||
sprintBySprint: [{
|
||||
sprintNumber: 1,
|
||||
capacity: 16,
|
||||
allocated: 20,
|
||||
utilization: "125%",
|
||||
overCapacity: true
|
||||
}, ...],
|
||||
riskAdjustedEffort: 72,
|
||||
deliveryForecast: {
|
||||
optimistic: "Week 8 from project start",
|
||||
realistic: "Week 10 from project start",
|
||||
pessimistic: "Week 12 from project start"
|
||||
},
|
||||
resourceRecommendations: [
|
||||
"Sprint 1 is over capacity. Consider adding 1 team member or splitting stories."
|
||||
],
|
||||
warnings: [...]
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Roadmap Alignment (Part J)
|
||||
|
||||
### Algorithm
|
||||
|
||||
1. **Phase Coverage**: 每个 Roadmap Phase 是否被 Release Plan 覆盖
|
||||
2. **Story Coverage**: MVP/V1 Stories 是否被 Sprint Plan 完整分配
|
||||
3. **Timeline Consistency**: Sprint 总周数是否在 Roadmap 时间范围内
|
||||
4. **Budget Alignment**: Phase 预算与实际 Story Points × $/pt 是否一致(偏差 < 20%)
|
||||
5. **Dependency Integrity**: Dev→Test→Release→Delivery 批次链是否完整
|
||||
|
||||
### Output
|
||||
|
||||
```js
|
||||
{
|
||||
overallVerdict: "aligned", // "aligned" / "partial" / "misaligned"
|
||||
alignmentScore: 85, // 0-100
|
||||
phaseCoverage: { ... },
|
||||
storyCoverage: { ... },
|
||||
timelineCheck: { ... },
|
||||
budgetCheck: { ... },
|
||||
dependencyCheck: { ... },
|
||||
warnings: [...],
|
||||
recommendations: [...],
|
||||
summary: "## Roadmap Alignment: ALIGNED (85/100) ..."
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Factory Integration (Part K)
|
||||
|
||||
### Full Pipeline
|
||||
|
||||
```
|
||||
SF-01 (Strategy) → SF-02 (Requirements) → PR-37 (Delivery Planning) → SF-03 (Design)
|
||||
│ │
|
||||
┌──────┘ ┌───────────┴────────────┐
|
||||
│ │ │
|
||||
Domain Intelligence Delivery Planning
|
||||
│ │
|
||||
┌────┴─────┐ ┌───────┼───────┬──────────┐
|
||||
Classifier Epics Sprint Release Batch Capacity → Align
|
||||
│ │ Plan Plan Plan Plan Report
|
||||
│ Features
|
||||
Validation Validation
|
||||
```
|
||||
|
||||
### API
|
||||
|
||||
```js
|
||||
// Domain Intelligence
|
||||
const di = createDomainIntelligenceFactory(
|
||||
{ productName: "ERP系统" },
|
||||
{ domainOverride: null, includeValidation: true }
|
||||
);
|
||||
// → { classification, epics, features, validation }
|
||||
|
||||
// Delivery Planning
|
||||
const dp = createDeliveryPlanningFactory(
|
||||
sf02Output, // upstreamArtifacts from SF-02
|
||||
{ sprint: { teamVelocity: 20 }, capacity: { teamSize: 5 } }
|
||||
);
|
||||
// → { sprintPlan, releasePlan, batchPlan, capacityPlan, alignmentReport }
|
||||
```
|
||||
Reference in New Issue
Block a user