需求规格说明书是给谁看的(需求规格说明书是谁写的)

写在前面如果你明确清晰知道需求规格说明书是什么,则可以忽略此文章。如果你不清晰,建议还是阅读一下本文,不然也许早晚会碰钉子。转载请标明出处:http://blog.csdn.net/ouyida3/article/details/46045261本文出自:【ouyida3的博客】起因最近在做项目时,根据项目计划,在用户输出了《需求书》后,需要我在2天编写出《需求规格说明书》,但是就这个说明

大家好,又见面了,我是你们的朋友全栈君。

写在前面

如果你明确清晰知道需求规格说明书是什么,则可以忽略此文章。如果你不清晰,建议还是阅读一下本文,不然也许早晚会碰钉子。

转载请标明出处:
http://blog.csdn.net/ouyida3/article/details/47683191
本文出自:【ouyida3的博客

起因

最近在做项目时,根据项目计划,在用户输出了《需求书》后,需要我在2天编写出《需求规格说明书》,但是就这个说明书是什么,要编写什么我和用户产生了较大分歧,甚至对项目还产生了一些不好的影响,比如被领导臭骂。

需求书的定义

软件工程里对于软件项目各个过程需要输出的文档都有明确的定义,但是每个方法论又是不太一样,比如cmmi和敏捷的相似性就不大。当提到用户故事那应该是敏捷而不是cmmi,当说起需求规格说明书就应该不是敏捷的。

叫什么名字其实我不太关注,抛开这些定义,一个真实的需求分析到软件设计的过程是怎样呢?

Created with Raphaël 2.1.0 用户提出需求 用户与需求分析人员共同确认需求 软件设计人员进行设计

cmmi的输出

cmmi在上述的第一步,会输出《用户需求规格说明书》,第二步会输出《软件需求规格说明书》,第三步会输出《软件概要设计说明书》。
当然,用户需求称为客户需求也行,软件需求规格说明叫做软件规格需求说明都可以,这些我不关注。

我想表达的是,《用户需求规格说明书》是业务人员写的,《软件需求规格说明书》是技术人员写的,如果是甲乙方的项目,那就是甲方的技术部写;而《软件概要设计说明书》是乙方输出。因此,假设如果我并不是甲方人员,让我写《需求规格说明书》,无论是用户需求还是软件需求,都是不合适的。回到主题,明显需要我写的只能是《软件需求规格说明书》。但是项目计划里简简单单的写上需求规格说明书是不恰当的。

软件需求规格说明书有什么

先说说没有什么:一定不涉及技术元素,比如选择什么技术路线,选择什么编程语言等等。也没有什么数据库的设计。
一定要技术人员和用户都看得懂。这样用户可以根据这个来验收,技术人员也可以根据它来进行概要设计。
当然,也要根据用户的需求书来验收,但是毕竟它和软件系统脱离的,有些关于系统操作类的精确事项无法描述到。

举个例子,比如有四个不同的业务人员各自提出需求,他们之间的需求肯定有相似的地方,也有不同的地方,那么《软件需求规格》就需要把相同点归并,不同点如何体现编写出来,并且与四个业务人员确认,这样合并是否能满足了这个需求。如果有一些现存的老系统,那么也需要说明对老系统进行什么样的改造(非技术类说明)。

谈谈时间

上面的例子,能否2天编写完成?我认为要看系统大小。如果是10人月以上的系统,2天是远远不足够的。根据经验,我个人认为是1人月的系统,大概需要2人天写这玩意。

谈谈敏捷

敏捷强调小步快跑,所以由用户写用户故事,完后直接就分析故事排计划,简单一些设计文档后就直接编码开干了,代码是最好的设计,通过不断的迭代完善。但是大项目、大系统,还是需要一些文档统筹设计的。详细可看Mike Cohn大师写的书《用户故事与敏捷方法》

转载请标明出处:
本文出自:【ouyida3的博客
2015.8.15

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/128380.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • SELinux 宽容模式(permissive) 强制模式(enforcing) 关闭(disabled) 几种模式之间的转换…

    SELinux 宽容模式(permissive) 强制模式(enforcing) 关闭(disabled) 几种模式之间的转换…

    2021年10月27日
  • Dreamweaver CS6安装教程

    Dreamweaver CS6安装教程一.解压二.安装点击忽略

  • Git克隆远端代码到本地「建议收藏」

    1、在桌面上点击鼠标右键,找到clone选项,出现其中URL是你要访问的地址,directory为文件保存的路径。点击OK2、桌面上会生成一个文件夹3、在此文件夹中,点击鼠标右键,找到GitBashHere,进入到如下页面输入命令第一:gitconfig–globaluser.name“zjut_wzc”第二:gitconfig–globaluser.em…

  • HTML入门与进阶以及HTML5

    HTML入门与进阶以及HTML5目录一、简介1、前端开发最核心技术(1)HTML是什么?(2)CSS(3)JavaScript2、前端开发其他技术二、基础内容1.基础总结2.HTML的基本标签(1)HTML标签(2)head标签(3)body标签3、段落与文字(一)、段落标签(二)、网页特殊符号(三)、自闭合标签(四)、块元素和行内元素(五)、练…

  • Python 万能代码模版:爬虫代码篇「建议收藏」

    Python 万能代码模版:爬虫代码篇「建议收藏」你好,我是悦创。很多同学一听到Python或编程语言,可能条件反射就会觉得“很难”。但今天的Python课程是个例外,因为今天讲的**Python技能,不需要你懂计算机原理,也不需要你理解复杂的编程模式。**即使是非开发人员,只要替换链接、文件,就可以轻松完成。并且这些几个实用技巧,简直是Python日常帮手的最佳实践。比如:爬取文档,爬表格,爬学习资料;玩转图表,生成数据可视化;批量命名文件,实现自动化办公;批量搞图,加水印、调尺寸。接下来,我们就逐一用Python实

  • Java学习之Spring框架入门篇

    Java学习之Spring框架入门篇0x00前言最近在学SSM的三大框架,上篇文章,已经更新了Mybatis的相关内容,那么这篇文章就来写写Spring的入门。0x01Spring概述S

    2021年12月12日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号