惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Vercel News
Vercel News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
雷峰网
雷峰网
有赞技术团队
有赞技术团队
罗磊的独立博客
博客园 - 叶小钗
Jina AI
Jina AI
博客园 - 司徒正美
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Tailwind CSS Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
人人都是产品经理
人人都是产品经理
Apple Machine Learning Research
Apple Machine Learning Research
阮一峰的网络日志
阮一峰的网络日志
Microsoft Security Blog
Microsoft Security Blog
大猫的无限游戏
大猫的无限游戏
量子位
MyScale Blog
MyScale Blog
V
Visual Studio Blog
博客园 - 聂微东
The Cloudflare Blog
Engineering at Meta
Engineering at Meta
小众软件
小众软件
宝玉的分享
宝玉的分享

博客园 - RockyYu

策略模式 unity中的WWW通讯问题 用TlbImp.exe生成程序可调用的Dll C++程序引用Dll 查询本地注册表,调用某后缀文件相应的执行程序,并打开文件 windows服务的安装和卸载 FFmpeg和GPL协议 List<T>的排序 C#POST数据,HttpWebRequest请求页面,HttpWebResponse返回数据 XMLHttpRequest的使用方法 错误: 无法生成临时类 图片滚动效果代码 - RockyYu - 博客园 一个不错的给图片添加说明文字的动态层的代码 - RockyYu - 博客园 截取中文字符串的js方法 js调用XML数据生成DIV 迭代器模式(Iterator Pattern) 创建CLR存储过程 JavaScript Boolean (逻辑)对象 - RockyYu JavaScript文件只在IE6下出错(“未结束的字符串常量”)的解决办法。
需求分析的方法
RockyYu · 2012-11-14 · via 博客园 - RockyYu

最近在做需求分析的工作,看了一些文章或者别人的范例,觉得晦涩难懂,遇到很多问题,却很难解决。其实就是方法问题,不理解,抓不住重点,按形式照搬,始终是事倍功半。现在总结一下自己现在的理解,也许还不准确,但是记录一下,积累经验,日后慢慢完善。

需求分析的目的就是要把客户(或产品)的需求进行整理,形成文档,便于与客户(或产品)进行沟通,以确定理解的正确性,然后预估项目的难度,保证项目能够在可控的范围内。

通常产品人员会整理一份简单的需求文档,但是一般这种需求文档都是比较宽泛的,只是表明了他们最想要的功能,但是其他的基础功能或者隐含的功能,可能是产品人员他们没有细致描述的。所以如果要完成需求分析,光有一些简单的沟通和对方的需求文档是远远不够的,还需要技术人员进一步的思考,分析,沟通和整理。

首先,场景是很重要的,也最容易被忽视。做分析的时候,需要先想清楚,软件所使用的场景有哪些?这个是整个需求分析的基础。场景分不清,会导致角色和功能都分不清。

其次,角色也要做明显的划分,在同一个场景下,会存在几种角色?这里的角色一定要是不同的功能,当然划分的细致是有好处的,但是不易过细,否则会很混乱。主要看角色的功能,拥有相同功能的角色只写一个就可以了,以避免不必要的混淆。但是如果需求上有明显的区分,最好还是要写清楚。鉴于到达这一步的时候,可能还没有去分析具体的功能,所以可以先把能想到的都写出来。分析具体功能的时候,在分解或者合并,但是一定要以需求为主,需求上没有的,不能自己随意添加,不管怎么操作,都一定要保证任意时刻与需求是一致的。

再次,某一场景下,某个角色拥有什么功能?这里的功能当然代表该角色的某种处理的一系列动作,这些动作都一定是角色主动发起的,有对象并且有目的的。具体的说就是,某种角色,输入什么,如何处理,输出什么。

这三点,需要在做需求分析和与产品人员沟通的时候,都要明确的确定出来。