第 3 章

职场人士项目

适合需要提升工作效率的职场人士,通过企业级开发流程和遗留系统重构,掌握AI工具在企业环境中的实际应用,理解团队协作和知识管理的重要性。

项目1:内部工具开发

项目概述

1
项目目标:开发一个内部数据看板工具,帮助团队快速查看和分析业务数据,提升决策效率
2
工具栈:Spec驱动 + Cursor(开发)+ Skill(知识复用)
3
时间估算:20-30小时(包含需求澄清、设计、开发、测试)
4
难度等级:中高级(需要企业级开发经验)

技术选型分析:为什么选择Spec驱动 + Cursor + Skill?

Spec驱动:需求到代码的桥梁

  • 需求澄清:通过Reverse Interview和用户故事,确保理解真实需求
  • PRD编写:明确目标用户、功能需求、非功能需求
  • API Spec:使用OpenAPI规范,AI可以直接生成代码
  • UI Spec:详细描述界面和交互,减少返工
  • WBS分解:将大任务拆分为可执行的小任务
  • DoD定义:明确完成标准,确保质量

Cursor:AI辅助开发

  • Spec到代码:根据Spec自动生成代码结构
  • 功能实现:使用Agent模式实现复杂功能
  • 代码优化:应用最佳实践和设计模式
  • 错误修复:快速定位和修复问题

Skill:知识复用和团队协作

  • 知识沉淀:将最佳实践封装为Skill,团队共享
  • 快速复用:使用Skill快速实现常见功能
  • 一致性保证:使用Skill确保代码风格和模式一致
  • 团队协作:Skill库成为团队的知识资产

工具协同效应:Spec驱动确保需求清晰、开发方向正确,Cursor负责高效实现,Skill负责知识复用和团队协作。这个组合实现了从需求到交付的完整企业级开发流程,既保证了开发效率,又确保了代码质量和团队协作。

完整开发流程

Phase 1: 需求澄清(3-4小时)

Reverse Interview技巧

  • • 问"为什么"而不是"是什么":了解真实需求背后的原因
  • • 问"什么时候":了解使用场景和频率
  • • 问"谁":了解目标用户和使用者
  • • 问"如果...会怎样":探索边界情况和异常处理

用户故事编写

"作为产品经理,
我希望能够快速查看销售数据,
以便及时了解业务状况并做出决策。

验收标准:
- 能够查看今日/本周/本月的销售额
- 能够按产品类别筛选数据
- 数据更新延迟不超过5分钟"

Phase 2: Spec编写(4-6小时)

PRD编写

  • • 目标用户:产品经理、业务分析师
  • • 功能需求:数据展示、筛选、导出
  • • 非功能需求:性能(加载时间<2秒)、可用性(99.9%)、安全性

API Spec(OpenAPI)

GET /api/dashboard/sales Query Parameters: - startDate: string (ISO date) - endDate: string (ISO date) - category: string (optional) Response: { totalSales: number, salesByCategory: Array, trend: Array }

UI Spec:详细描述界面布局、交互流程、状态变化

Phase 3: WBS分解(2-3小时)

任务拆分原则

  • 粒度控制:每个任务2-4小时完成
  • 依赖关系:明确任务之间的依赖
  • 可测试性:每个任务都有明确的验收标准

WBS示例

1. 数据库设计(2小时)
1.1 设计数据模型
1.2 创建数据库表
2. 后端API开发(8小时)
2.1 实现数据查询API(依赖1)
2.2 实现数据筛选API
3. 前端UI开发(6小时)
3.1 创建仪表板组件(依赖2.1)
3.2 实现筛选功能

Phase 4: DoD定义(1小时)

质量标准

  • • 代码质量:通过ESLint检查,无严重警告
  • • 测试覆盖:单元测试覆盖率>80%
  • • 文档完整:API文档、用户手册完整

验收标准

  • • 功能验收:所有功能按Spec实现,测试通过
  • • 性能验收:页面加载时间<2秒,API响应时间<500ms
  • • 安全验收:通过安全扫描,无高危漏洞

Phase 5: 开发实施(8-12小时)

1. 使用Cursor Agent根据Spec生成项目结构

2. 使用Skill快速实现常见功能:

  • • 使用"数据查询Skill"实现API查询逻辑
  • • 使用"图表组件Skill"创建可视化组件
  • • 使用"错误处理Skill"统一错误处理

3. 使用Cursor Agent实现复杂业务逻辑

4. 代码审查和优化

5. 编写测试用例

Phase 6: 测试与交付(2-3小时)

1. 执行测试用例,修复bug

2. 用户验收测试(UAT)

3. 部署到生产环境

4. 编写用户手册和操作指南

5. 团队培训和知识分享

团队协作与知识管理

Skill库建设

  • 创建Skill:将常用功能封装为Skill,如"数据查询Skill"、"图表组件Skill"
  • Skill文档:为每个Skill编写使用说明和示例
  • Skill版本管理:使用Git管理Skill版本,支持版本回退
  • Skill分享:团队共享Skill库,提高复用率

知识沉淀

  • 最佳实践文档:记录开发过程中的最佳实践
  • 问题解决方案:记录常见问题和解决方案
  • 代码审查记录:记录代码审查中发现的问题和改进建议
  • 项目复盘:项目结束后进行复盘,总结经验教训

项目检查清单

需求澄清完成,用户故事和验收标准明确
PRD、API Spec、UI Spec完整,团队评审通过
WBS分解完成,任务粒度合理,依赖关系清晰
DoD定义完成,质量标准和验收标准明确
开发完成,代码符合Spec要求,通过代码审查
测试通过,覆盖率达标,UAT通过
Skill库更新,新增的Skill已文档化
项目文档完整,用户手册和操作指南已编写

项目2:遗留系统重构

项目概述

1
项目目标:重构老旧PHP系统为现代Node.js系统,提升性能、可维护性和扩展性
2
工具栈:Windsurf(代码库分析)+ Cursor Agent(架构设计)+ Fabric(代码优化)
3
时间估算:40-60小时(包含分析、设计、重构、测试)
4
难度等级:高级(需要系统架构和重构经验)

技术选型分析:为什么选择Windsurf + Cursor Agent + Fabric?

Windsurf:大型代码库分析

  • Fast Context技术:快速理解大型代码库的结构和逻辑
  • 代码库问答:通过问答方式理解代码功能和依赖关系
  • 架构分析:识别系统架构模式和设计问题
  • 依赖分析:分析模块之间的依赖关系

Cursor Agent:架构设计和重构

  • 架构设计:根据分析结果设计新架构
  • 代码迁移:将旧代码迁移到新架构
  • 功能实现:实现新功能或改进现有功能
  • 测试生成:生成测试用例确保功能正确

Fabric:代码质量优化

  • 代码审查:审查重构后的代码质量
  • 性能优化:优化代码性能,提升系统效率
  • 最佳实践:应用现代开发最佳实践
  • 安全审计:检查安全漏洞和风险

工具协同效应:Windsurf负责理解旧系统,Cursor Agent负责设计和实现新系统,Fabric负责优化代码质量。这个组合实现了从分析到重构再到优化的完整重构流程,既保证了重构的正确性,又确保了新系统的质量。

重构策略

策略1: 代码库分析(使用Windsurf Fast Context)

1. 使用Windsurf分析旧代码库:

  • • 理解系统整体架构和模块划分
  • • 识别核心业务逻辑和数据流
  • • 分析数据库结构和数据模型
  • • 识别技术债务和设计问题

2. 生成系统分析报告:

  • • 架构图:系统模块和依赖关系
  • • 功能清单:所有功能模块列表
  • • 数据模型:数据库表结构和关系
  • • 问题清单:技术债务和风险点

策略2: 架构设计(使用Cursor Agent)

1. 使用Cursor Agent设计新架构:

"基于旧PHP系统的分析结果,设计新的Node.js架构:
- 采用微服务架构,按业务模块拆分
- 使用Express.js作为Web框架
- 使用Prisma作为ORM
- 使用PostgreSQL作为数据库
- 实现RESTful API设计
- 添加API文档(Swagger)
- 实现认证和授权(JWT)"

2. 设计数据迁移方案:

  • • 数据模型映射:PHP模型到Node.js模型
  • • 数据迁移脚本:迁移历史数据
  • • 数据验证:确保数据完整性

策略3: 渐进式重构(使用Fabric Patterns)

1. 采用Strangler Fig模式:

  • • 逐步替换旧功能,而不是一次性重写
  • • 新旧系统并行运行,逐步切换流量
  • • 降低重构风险,保证业务连续性

2. 使用Fabric Patterns优化代码:

  • • 应用设计模式Pattern
  • • 应用性能优化Pattern
  • • 应用安全最佳实践Pattern

策略4: 测试覆盖(TDD方法)

1. 先写测试,再写实现:

  • • 为每个功能编写测试用例
  • • 确保新功能与旧功能行为一致
  • • 使用测试驱动开发(TDD)

2. 测试类型:

  • • 单元测试:测试单个函数和模块
  • • 集成测试:测试模块之间的集成
  • • 端到端测试:测试完整业务流程

风险分析与应对策略

风险1:业务中断

应对策略:采用渐进式重构,新旧系统并行运行,逐步切换流量。建立回滚机制,出现问题立即回滚。

风险2:数据迁移失败

应对策略:编写详细的数据迁移脚本,进行充分测试。建立数据验证机制,确保数据完整性。保留旧数据备份。

风险3:性能下降

应对策略:进行性能测试,识别性能瓶颈。使用Fabric优化代码性能。建立性能监控,及时发现问题。

风险4:功能缺失

应对策略:详细分析旧系统功能,建立功能清单。使用Windsurf确保不遗漏功能。进行充分的功能测试。

项目检查清单

旧系统分析完成,架构图和功能清单完整
新架构设计完成,技术选型合理,团队评审通过
数据迁移方案完成,脚本测试通过
重构计划制定完成,采用渐进式重构策略
测试覆盖完成,所有功能测试通过
性能测试通过,性能指标达标
回滚方案准备完成,可以快速回滚
新系统已部署,运行稳定,业务正常

学习成果

完成本章后,你将:

  • 1掌握企业级开发的完整流程(需求澄清→Spec编写→WBS分解→DoD定义→开发→测试→交付)
  • 2理解Spec驱动开发的方法论,知道如何编写清晰的PRD、API Spec和UI Spec
  • 3掌握团队协作和知识管理方法,能够建设Skill库和沉淀最佳实践
  • 4理解遗留系统重构的策略和风险,能够制定合理的重构方案
  • 5具备企业级项目管理和质量控制能力,能够确保项目成功交付