⑴ 软件需求 用户特征分析报告 怎么写
需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。(这个和我在微软体验到的又不太一样,微软的需求分析大多是市场人员和用户协助小组的人去评估用户的接受程度,这一点也可以理解,因为公司的性质有根本差别)在这个过程中,用户的确是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。需求分析阶段结束后,要求得到:1.SRS文档(System Requirement Specification); 2.DRM 文档;3.Acceptance Plan.[1]
从广义上理解:需求分析包括需求的获取、分析、规格说明、变更、验证、管理的一系列需求工程。
狭义上理解:需求分析指需求的分析、定义过程。
原因
需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个for linux的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for windows的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,痕不得找块豆腐一头撞死.
需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,他在软件开发的过程中具有举足轻重的地位.大家一定要对需求分析具有足够的重视.在一个大型软件系统的开发中,他的作用要远远大于程序设计.
任务
简言之,需求分析的任务就是解决"做什么"的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求.
过程
需求分析阶段的工作,可以分为四个方面:问题识别,分析与综合,制订规格说明,评审.
需求分析
问题识别
就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准.这些需求包括:功能需求(做什么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标.
分析与综合
逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分.最后,综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型).
制订规格说明书
即编制文档,描述需求的文档称为软件需求规格说明书.请注意,需求分析阶段的成果是需求规格说明书(好象软考曾经考过这个问题),向下一阶段提交.
评审
对功能的正确性,完整性和清晰性,以及其它需求给予评价.评审通过才可进行下一阶段的工作,否则重新进行需求分析。
⑵ 如何写软件项目开发的需求分析文档
1、需求分析文档的重要性 在软件项目开发的生命周期中,可以说需求分析文档占据着很重要的作用。 (1)它是和用户进行交流得出的一个规范结果 (2)它是衡量和评价项目功能是否达到用户需要的标准 (3)它对后期的数据库设计、概要设计、详细设计以及整个编码开发、系统测试起着指引的作用
⑶ 软件文档怎么写
1.0概述 这部分提供对整个设计文档的概述。描述了所有数据,结构,接口和软件构件级别的设计。
1.1 目标和对象 描述软件对象的所有目标。
1.2 陈述范围 软件描述。主要输入,过程功能,输出的描述,不考虑详细细节。
1.3 软件内容 软件被置于商业或者产品线中,讨论相关的战略问题。目的是让读者能够对“宏图”有所了解。
1.4 主要系统参数 任何商务软件或者产品线都包含软件规定、设计、实现和测试的说明和规范。
2.0 数据设计 描述所有数据结构包括内部变量,全局变量和临时数据结构。
2.1 内部软件数据结构 描述软件内部的构件之间的数据传输的结构。
2.2 全局数据结构 描述主要部分的数据结构。
2.3 临时数据结构 为临时应用而生成的文件的描述。
2.4 数据库描述 作为应用程序的一部分,描述数据库结构。
3.0 结构化和构件级别设计 描述程序结构。
3.1 程序结构 详细描述应用程序所选定的程序结构。
3.1.1 结构图 图形化描述结构。
3.1.2 选择性 讨论其它可供考虑的结构。选定3.1.1中结构类型的原因。
3.2 构件描述 详细描述结构中的每个软件构件。
3.2.1 构件过程叙述(PSPEC) 描述构件的过程。
3.2.2 构件接口描述 详细描述构件的输入和输出。
3.2.3 构件执行细节 每个构件的详细演算描述。
3.2.3.1 接口描述
3.2.3.2 演算模型(e.g., PDL)
3.2.3.3 规范/限制 ]
3.2.3.4 本地数据结构
3.2.3.5 在3.2.3.6设计中包含的执行结果
3.3 软件接口描述 软件对外界的接口描述
3.3.1机器对外接口 与其他机器或者设备的接口描述。
3.3.2系统对外接口 对其它系统、产品和网络的接口描述。
3.3.3与人的接口 概述软件与任何人的界面。
4.0 用户界面设计 描述软件的用户界面设计。
4.1 描述用户界面 详细描述用户界面,包括屏幕显示图标、图片或者类型。
4.1.1 屏幕图片 从用户角度描述界面。
4.1.2 对象和操作 所有屏幕对象和操作的定义。
4.2 界面设计规范 用户界面的设计和实现的规范和标准。
4.3 可见构件 实现的GUI可见构件说明。
4.4 UIDS描述 用户界面开发系统描述。
5.0约束、限制和系统参数 会影响软件的规格说明、设计和实现的特殊事件。
6.0测试标准 测试策略和预备测试用例描述。
6.1 测试的类别 规定实施测试的类别,包括尽量详细的描述。这里是针对黑盒测试现象的描述。
6.2期待软件反馈 测试期待的结果描述。
6.3执行界线 特殊执行需要的说明。
6.4 重要构件确认 决定性构件或者需要特殊注意的构件的测试确认。
7.0附录 设计说明的补充信息。
7.1系统可跟踪矩阵 一个定期回归系统规格跟踪软件需求的矩阵。
7.2 产品战略 如果规格说明书是为一个产品设计的,描述相关的产品战略。
7.3 使用分析算法 描述所有分析活动所使用到的分析算法。
7.4 补充信息 (如果有需要特别说明的)
⑷ 需求文档怎么写最有效
能将功能需求写清楚的就是好的需求文档,因为现在的需求文档一般都是给开发看,一般来说创业公司追求小步快跑快速迭代的开发模式的话,需求文档不是一个很有必要的东西,直接在原型上表述效率会更好。如果公司追求规范管理的话,建议还是需求文档,写清楚项目名称,迭代版本,及相关的日期规划。
⑸ 怎样写软件开发需求分析
1、需求分析文档的重要性
在软件项目开发的生命周期中,可以说需求分析文档占据着很重要的作用。
(1)它是和用户进行交流得出的一个规范结果
(2)它是衡量和评价项目功能是否达到用户需要的标准
(3)它对后期的数据库设计、概要设计、详细设计以及整个编码开发、系统测试起着指引的作用
⑹ 软件开发文档应该如何写
如果我们知道软件文档的价值,那么为什么不经常使用它呢?对于新手,大多数软件文档都存在很多下面提到的这些问题:
· 糟糕的语法和/或拼写错误的词语
· 不完整
· 过期或不准确
· 篇幅太长
http://www.mscto.com
· 首字母缩写没有解释或术语不专业
http://www.mscto.com
· 难于找到信息或在文档中定位 软件开发网
存在这些问题的主要原因是软件文档通常没有被给予足够的重视。项目预算被迫将主要活动花在了开发工作上,在那里管理层很容易看到他们的收益。值得投入成本的文档工作通常都是主观的,而且通常被刻画为需要避免的成本,因为它们被认为不能产生投资回报(ROI)。很多项目经理将客户所需要的最少文档看作是“镀金”。
软件开发网
软件文档的另外一个麻烦来源是文档的作者。很多应用程序开发经理觉得软件文档是开发工作的一个标准部分,因此,要求他们的开发人员在编码时也编写软件文档。
虽然这在理论上是说得过去的,但是不应该将开发人员看成文档作者。很简单,技术人员只被培训如何开发,而没有被培训如何写文档。为了解决这一问题,很多应用程序开发经理尝试通过聘请一些技术性写手或商业分析人员来提高他们的软件文档的质量。这就导致出现了一个相反的问题:技术写手和商业分析人员通常只有有限的技术技能。
解决方案依赖于文档,文档应该迎合其潜在读者的口味。这方面的通用规则是要求使用一个协同工作方法来编写文档,这种方法允许开发人员和写手发挥他们的长处。例如,如果潜在的读者是系统设计人员,那么开发人员应该提供详细的输入,但是允许技术写手去组织和编辑内容以使文档符合语法。
不管潜在的读者还是被选中的读者,软件文档的质量与其可使用性相关,以下六个属性可以用来测量软件文档的可使用性:
· 适用性:文档提供了相关的信息吗?
· 合时性:文档所提供的是当时的信息吗?
· 正确性:文档所提供的信息正确吗?
· 完整性:文档是不是足够详细?
· 可用性:文档随手可用吗?
· 可使用性:能够快速直观地找
希望能助你一臂之力