规格驱动开发MCP初探
规格驱动开发
规范驱动开发,简而言之,是一种软件开发过程,在整个开发工作流程中,清晰、详细的规范作为核心驱动力。这些规范涵盖了软件系统的各个层面,包括功能需求、性能指标、接口定义和数据格式,如同建筑中的蓝图,明确地勾勒出最终软件应该呈现的样子,供开发者参考。
规范驱动开发的核心是通过标准化的规范文档,将模糊的需求转化为可执行、可追溯、可验证的开发过程。实质上,它将传统软件工程的严谨性融入到AI编程中,将开发从“感觉编码”(依赖直觉)转变为可控的工程过程。
规范驱动开发的关键在于“Spec文件夹”——每个功能模块对应一个Spec文件夹,其中包含3个核心文件,将需求、设计和任务“具体化”:
- requirements.md(需求文档)——使用EARS语法(Easy Approach to Requirements Syntax)编写用户故事和验收标准,避免模糊表述。
- design.md(技术方案)——包括架构设计、流程逻辑、技术选型和潜在风险等细节。
- tasks.md(任务清单)——将技术方案分解为可执行的具体任务(待办事项列表)。

spec-coding-mcp 项目介绍
将功能想法系统地转化为生产就绪的代码,通过规范驱动的开发方法。

项目地址:https://github.com/feiyun0112/spec-coding-mcp
把项目拉下来之后,如果没有.NET10也可以换成.NET8,在成功运行之后,就可以到MCP客户端中配置。
这里我选择的是Roo Code,是直接通过exe的方式配置的。
{
"mcpServers": {
"SpecCodingMcpServer": {
"disabled": false,
"timeout": 60,
"type": "stdio",
"command": "...\\bin\\Debug\\net8.0\\SpecCodingMcpServer.exe",
"args": []
}
}
}
配置成功如下所示:

输入 Start Spec Coding即可开始进行规格驱动开发。

理解需求:


编写需求文档:




就大概截这些图,会生成一个文件夹,文件夹下面有下面几个内容。

需求文档:

任务列表:

测试文档:

还有设计文档,但是这个我的变没了,补上另一次使用的:

最后还会生成一个README:

整体体验下来的感觉就是如果一个功能要实现成什么样子你本身并不是很清楚,并且在使用AI很多次了还没成功实现,不妨试试规格驱动开发,还是有一定帮助的。当然现在的AI已经很强了,一般的需求好像直接也能做,不需要都要使用规格驱动开发。
下次来探索一下规格驱动开发MCP的提示词,这应该是这个项目的核心内容了。
规格驱动开发MCP初探的更多相关文章
- 【翻译稿】Behavior Driven Development (BDD)行为驱动开发
这是一篇翻译稿,方便给不知道BDD的同学扫盲.原文链接:What is BDD (Behavior Driven Development)? | Agile Alliance Definition定义 ...
- 使用IdleTest进行TDD单元测试驱动开发演练(3) 之 ASP.NET MVC
一.[前言] (1)本文将用到IOC框架Unity,可参照<Unity V3 初步使用 —— 为我的.NET项目从简单三层架构转到IOC做准备>(2)本文的解决方案是基于前述<使用I ...
- 使用IdleTest进行TDD单元测试驱动开发演练(2)
[前言] 1. 有关上篇请参见<使用IdleTest进行TDD单元测试驱动开发演练(1)>,有关本篇用到Entity Framework Code First请参见<使用NuGet助 ...
- 使用IdleTest进行TDD单元测试驱动开发演练(1)
[前言] 开发工具:Visual Studio 2012 测试库:Visual Studio 2012自带的MSTest DI框架:Unity 数据持久层:Entity Framework 前端UI: ...
- 行为驱动开发iOS <收藏>
前段时间在design+code购买了一个学习iOS设计和编码在线课程,使用Sketch设计App,然后使用Swift语言实现Designer News客户端.作者Meng To已经开源到Github ...
- TDD测试驱动开发
TDD测试驱动开发 一.概念 TDD故名思意就是用测试的方法驱动开发,简单说就是先写测试代码,再写开发代码.传统的方式是先写代码,再测试,它的开发方式与之正好相反. TDD是极限编程的一个最重要的设计 ...
- Linux驱动开发概述
原文出处:http://www.cnblogs.com/jacklu/p/4722563.html Linux设备分类 设备的驱动程序也要像裸机程序那样进行一些硬件操作,不同的是驱动程序需要" ...
- Android驱动开发5-8章读书笔记
Android驱动开发读书笔记 第五章 S5PV210是一款32位处理器,具有 ...
- 【OpenWRT】【RT5350】【三】MakeFile文件编写规则和OpenWRT驱动开发步骤
一.Makefile文件编写 http://www.cnblogs.com/majiangjiang/articles/3218002.html 可以看下上面的博客,总结的比较全了,在此不再复述 二. ...
- Android驱动开发前的准备
最近看了一些Android驱动开发前需要知道的资料,收获很多,接下来就谈谈我自己的一些心得体会. Android在近几年时间发展迅速,已经成为智能手机操作系统的老大.不过,因为Android原生的代码 ...
随机推荐
- SuperSocket 2.0 的发布标志着.NET Socket 服务器框架迈入了一个全新的时代
2025 年 4 月 20 日 - SuperSocket 团队自豪地宣布正式发布 SuperSocket 2.0,这是这款适用于 .NET 的高性能.可扩展套接字服务器应用程序框架的一个重要里程碑. ...
- 参加 Hugging Face 组织的 Gradio & MCP 智能体主题黑客松
欢迎参加 Gradio & MCP 智能体主题黑客松! 准备好了吗?一场以智能体(Agent)和模型上下文协议(Model Context Protocol,简称 MCP)为核心的全球在线黑客 ...
- Step-by-step FTP to ABAP Proxy
引自:https://wiki.scn.sap.com/wiki/display/XI/Step-by-step+FTP+to+ABAP+Proxy ABAP Server Proxy Area: S ...
- 玩转集群配置中心,一文带你了解 Taier 控制台
原文地址:玩转集群配置中心,一文带你了解Taier控制台丨DTMO 03期直播回顾(内含视频+课件) 课程视频回顾:Taier基础教程(二):Taier1.1新功能详解&控制台介绍_哔哩哔 ...
- 首个离散元仿真软件EDEM好学吗?有什么学习技巧?
EDEM是一款首个离散元仿真软件,它被广泛应用于工程领域,特别是在颗粒材料的模拟和分析方面.对于初学者来说,EDEM可能会有一定的学习曲线,但是只要掌握了一些学习技巧,就能够很快上手并熟练运用这款软件 ...
- UFT 获取linux log
- Django数据库配置避坑指南:从初始化到生产环境的实战优化
一.数据库配置 介绍 Django 4.2 支持多种数据库后端 数据库类型 推荐版本 官方支持 驱动 / 后端 默认端口 适用场景 备注 PostgreSQL 12+ psycopg2-binary ...
- C++ pair对组 学习总结
----------------------------------------------pair对组 对组(pair)将一对值组合成一个值,这一对值可以具有不同的数据类型两个值可以分别用pair的 ...
- C# .Net 5 中 Serialize 已过时 BinaryFormatter.Serialize(Stream, object)”已过时
https://www.cnblogs.com/wangbg/p/14020022.html https://docs.microsoft.com/zh-cn/dotnet/api/system.ru ...
- Uniapp 实现新手引导访问功能组件
最近有个需求需要在小程序中实现一个新手引导组件,通过遮罩.高亮区域和提示框的组合,为应用提供流畅的用户引导体验. 组件功能概述 这个引导组件提供了以下核心功能: 分步引导:支持多步骤引导流程 智能定位 ...