乐于分享
好东西不私藏

AI 做软件避坑指南:需求文档才是系统的灵魂

AI 做软件避坑指南:需求文档才是系统的灵魂

大家好,又到了AI探索时间。
使用AI做智能化开发,自己拥有一套软件系统,已经不是梦想了,这就是现实,而且是一个可以享受的现实。
我们可以把自己的创意,做成系统,做成游戏,做成软件,做成视频,做成真正可以落地的东西,做成真正可以使用的东西,AI+应用,让我们的创意真正长出了翅膀。
现在AI发展迅速,就连小学生都能自己做游戏了,我们给自己的工作生活做一个软件,这不就是洒洒水吗?

找一个趁手的工具

只要找到一个趁手的AI工具,花时间精力去雕琢,自己的系统就可以慢慢成型了。在大家都可以自己做一套系统的情况下,我们怎么样才能更快更好地做出自己的软件系统呢?
AI智能化工具很多,大家可以根据自己的偏好去选择,但是除了选择好AI智能化工具之外,自己做软件系统,还有什么好方法和避坑指南吗?
今天我们就是来讲方法和避坑指南的。
这篇文章不讲怎么选择AI智能化工具,如果不会选择,那就考虑用最好用的,比如Cursor,Codex,Claude code,肯定不会踩坑。如果自己愿意尝试,也可以用开源工具,比如OpenCode,国产也有很多开发工具,都可以尝试,既有免费的,也有收费的。

第一步,就是整理需求

我们这次,来解决迈出第一步的问题,只要做好这第一步,后续就是很简单的精雕细琢了。
下载好一个智能化开发工具后,我们想要做自己的系统,该怎么办呢?
其实很简单,就是要把自己的想法整理出来,特别注意,自己做一个系统,和单纯的跟AI聊天,不是一回事。
跟AI聊天,可以想到哪里,说到哪里,尤其是,很多AI聊天工具,都是免费的,对于聊天来说,低版本的免费大模型,已经绰绰有余了。
但是自己做系统,建议使用收费的AI工具,收费工具才能用到更好的模型,这点很重要,模型越好,理解需求的能力越强,做出来的东西才能更接近你的理想。
所以,自己做系统,需要考虑两件事。
  • 1、AI的每一步操作都会消耗token,说到底就是要费钱。
  • 2、如果能一口气将所有问题讲清楚,AI就能一下子做出你要的东西。
如果第一次没有说清楚,后面反复跟AI交互,很可能把你的系统做走样了,而且还会白白浪费掉很多很多的token。
所以最佳建议就是,第一次给AI的系统需求,是一个相对完整的,能把问题说清楚的,跟自己需求最接近的,让AI能在你需要的正确方向上前进的文档。
注意了,敲小黑板。
需求是一个文档或一套文档,而不是简单的几句话。就算是几句话的需求,也要好好琢磨一下,除了这些内容,我还有什么需要补充的?

举个栗子-发票管理系统

我们先举一个例子,做一个自己的发票管理系统,收集PDF发票,记录哪些发票已经报账,哪些没有报,导出需要报账的发票。
有了这个系统,今后所有的发票都可以放在里面,需要报账的时候,导出来使用就行了,而且还能查询发票的使用情况。不需要很麻烦地自己去管理电脑中的发票了。
我们看看这个需求该怎么写,下面是这个需求的最简化描述了,说明了系统需要做什么,录入什么数据,保存什么数据,输出什么内容。

# 发票管理系统

## 1. 概述

发票管理系统,收集PDF发票,记录哪些发票已经报账,哪些没有报,导出需要报账的发票。

## 2. 需求描述

### 2.1 发票录入

发票以PDF文件的方式录入。需要识别PDF发票类型(餐票、打车票、行程单),金额,发票号。新录入的发票标记为新发票。

系统自动填写提交时间,一次可以录入多张发票。

发票分为两种,一种是餐票,另一种是打车票。

– **餐票**:一次录入一张。

– **打车票**:一次录入两张,一张是打车发票,另一张是行程单。需要检查打车发票和行程单的价格和申请日期是否相同,相同则认为是一套打车票进行报销,不同则提示录入错误。

餐票和打车票的模板,放在“发票模板”目录下。

### 2.2 发票存储

录入的发票文件,识别其中的价格和时间后,将PDF文件保存到一个地方。

### 2.3 报销发票

显示发票列表,显示未报销的发票。选择后可以下载这些发票的PDF文件。

### 2.4 发票查询

对发票的状态做一个可视化的显示,显示库里有多少发票,已报销数量,新发票数量,金额等。

同时还提供了一张PDF的餐票,一套打车票(打车票+行程单),也放在需求目录下,总共4个文件,给到AI,这个需求就比较准确和完整了。
注意这些给出的模版,在需求中要标注清楚位置,比如“餐票和打车票的模板,放在“发票模板”目录下。”。
将这个需求给到AI,就这么简单的一句话,“按照 《发票管理系统需求.md》生成一个发票管理系统”,等待11分19秒之后,系统就已经完成了。
下面看看自动生成的系统是什么样子的。
这个系统基本上已经满足需求了。如果你喜欢,还可以对系统的细节做改动。
当然,后续的这些调整改动,其实也是很费时间和精力的,但是这一步就已经进入了大家比较熟悉的领域了,后续只要跟AI交互,说清楚改动的地方,就可以得到想要的结果了。
看做一个小系统,就是这么简单,写一个需求,给几个文件,系统就做出来了。做一个系统,把需求文档写出来,就已经完成了最重要的一大步了,几乎60%的工作已经完成了。如果要求不高,可以说80%的工作已经完成了。
只要把需求文档写出来,喂给AI智能化工具,基本上都能按照文档做出第一版满足需求的软件系统。后续可以在这个版本上修改琢磨,做成自己理想的样子。
所以说需求文档,才是你这个系统的灵魂,它决定了这个系统最终会是什么样子。

私货分享

下面才是我们这篇文章真正的私货,需求文档避坑指南。
第一点,只写自己懂的。
这个系统是按照你自己的心意来做的,所以需求文档里面,只写你的要求,不管是多么个性化的要求,都要想办法说明清楚。
如果一句话说不清楚,那就多说几句话。
如果光凭语言描述不清楚,那就用图片。截图,截图加标注,甚至是手工画个草图都行。
如果涉及到文档的使用,比如扫描PDF,那就给出几个典型的PDF文件作为模板。如果需要导入excel文件,就给出 excel文件作为模版。
第二点,只说需求,不要限制AI
你一定要深信,自己懂得没有AI多,所以不要拿你的认知天花板,困住 AI 的超强脑洞。
只要把需求说清楚就行了,千万不要告诉AI你想要怎么去实现这个需求,尤其是不要帮AI选择实现需求的技术路线,除非你有自己特殊的要求,必须要这么做不可。
比如你就是想要做成一个exe,而不是网页版的,那就一定要跟AI说清楚我要做成exe。否则AI会根据自己的经验和需求的特点,选择最恰当的技术路线。
目前大多数的管理系统和应用,都会做成网页版的。
第三点,把自己想到的表达出来
所有你想到的,都要表达出来。
AI再聪明,也不能读到你脑子里的思想,所以,一定要把自己想到的都表达出来,都告诉AI。任何你觉得是常识,是细节的,能说的尽量说出来。
我们人类认为的常识,AI不一定知道,或者说你所习惯的常识,只是你自己个性化的认知,并不是AI知道的。AI接收了全世界的知识,他所选择的方法,只是大多数人会选择的方法,不一定就是你需要的。
比如你可能希望,在导出发票之前,可以打开每张发票再看看,确认一下发票是否正确,这种个性化流程,就一定要跟AI说清楚。
第四点,善用plan计划模式
大部分AI工具,都提供了plan模式,计划模式,善用计划模式,可以让生成的系统更接近你的真实需求。
什么是计划模式呢?我们先来说说非计划的模式吧,AI处理的常规模式就是,你给他说一段话,他就会照做,中间有什么疑问,他不会跑来问你,而是自己猜测。这就是我们很讨厌的不确定性。
而计划模式呢,就是AI先分析,做个计划,在期间遇到什么疑问,他会跑来问你,给你几个选项,让你选择处理方法,一直跟你交互,直到没有任何疑问后,他会写出一份计划,你可以审核这份计划,确认计划正确后,再让AI按照计划执行。
计划模式能够很好的跟AI交互,落实疑问,最后按照计划一次性完美地执行。
不要害怕计划模式来回互动消耗token,这种文本型交互消耗的token是很少的。

好了,今天分享的内容就这么多,探索AI无止境。

AI时代,利用最新工具,分析思考

投资、工作、生活、知行合一

在学习中进步,在思考中完善