精华内容
下载资源
问答
  • 软件需求规格说明书范例

    万次阅读 多人点赞 2019-07-24 10:11:21
    文章目录 一、 引言 1.1 定位与目标 ...1.3 软件需求分析理论 1.4 软件需求分析目标 二、 需求概述 2.1 项目背景 2.2 需求概述 2.3 系统结构 三、 系统功能需求 3.1 功能总览 3.2 业务流程图 3.3 数据流...

    完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/

    本软件需求规格说明书范例对应的软件测试计划请参照:
    http://www.omegaxyz.com/2019/08/02/software-testing/

    PDF文档及更多软件测试内容请参考:https://github.com/xyjigsaw/software-testing

    文章目录

    一、 引言
    1.1 定位与目标
    1.2 对象
    1.3 软件需求分析理论
    1.4 软件需求分析目标
    二、 需求概述
    2.1 项目背景
    2.2 需求概述
    2.3 系统结构
    三、 系统功能需求
    3.1 功能总览
    3.2 业务流程图
    3.3 数据流分析
    3.4 数据字典
    3.5 E-R图
    四、 软硬件及外部系统接口需求
    4.1 用户界面
    4.2 硬件需求
    4.3 运行环境
    五、 可靠性与可用性需求
    5.1 性能需求
    5.2 安全性需求
    六、 参考文献

    一、 引言

    1.1 定位与目标

    计算机技术高度发达的今天,利用信息技术对大量复杂的信息进行有效的管理成为一种普遍而实用的手段。一方面,这极大的减少了簿记和人力的开销,另一方面,现代计算机强大的计算能力和网络的普遍部署,大大简化了大量信息的处理和流动。学生在线考试系统是评测学生能力的一个重要组成部分,他对教师的工作效率有很大的提高,它不但可以降低对纸质试卷的要求,同时也体现了节约型社会的要求。该系统涉及了学生在线程序能力测评考试,学习成绩插询,以及很多相关信息的综合处理。为了方便配合教师对学生成绩的进一步了解,开发学生在线考试系统是当务之急。学生在线考试系统把试题、电脑改卷、成绩查询的部分管理工作集成到一个统一的平台,各管理人员分工协作、相互配合,及时了解学生编程水平。同时,也可以方便教师针对学生个体不同情况进行分层次指导。

    1.2 对象

    本《软件需求规格说明书》的预期读者是:

    程序教学平台开发经理
    技术部经理
    项目组所有人员
    测试组人员
    SQA 人员
    开发公司授权调阅本文档的其他人员

    1.3 软件需求分析理论

    软件需求分析是研究用户需求得到的东西,完全理解用户对软件需求的完整功能,确认用户软件功能需求, 建立可确认的、可验证的一个基本依据。软件需求分析是一个项目的开端, 也是项目实施最重要的关键点。 据有关的机构分析结果表明, 设计的软件产品存在不完整性、 不正确性等问题 80%以上是需求分析错误所导致的,而且由于需求分析错误造成根本性的功能问题尤为突出。因此,一个项目的成功软件需求分析是关键的一步。

    1.4 软件需求分析目标

    对实现软件的功能做全面的描述,帮助用户判断实现功能的正确性、一致性和完整性,促使用户在软件设计启动之前周密地、全面地思考软件需求。了解和描述软件实现所需的全部信息,为软件设计、确认和验证提供一个基准。

    为软件管理人员进行软件成本计价和编制软件开发计划书提供依据。

    需求分析的具体内容可以归纳为六个方面: 软件的功能需求, 软件与硬件或其他外部系统接口,软件的非功能性需求, 软件的反向需求, 软件设计和实现上的限制,阅读支持信息。

    软件需求分析应尽量提供软件实现功能需求的全部信息, 使得软件设计人员和软件测试人员不再需要需求方的接触。 这就要求软件需求分析内容应正确、 完整、一致和可验证。此外,为保证软件设计质量,便于软件功能的休整和验证,软件需求表达无岔意性,具有可追踪性和可修改性。

    二、 需求概述

    2.1 项目背景

    将要开发的软件名为《计算机程序能力在线测评系统》,本项目的提出者是安徽大学计算机科学与技术学院,而开发者是16级安徽大学软件工程班负责,主要用户是安徽大学本科生级研究生, 该软件独立于其他系统,自成一个完整的系统,应用方便。

    2.2 需求概述

    下面就对算机程序能力在线测评系统的设计进行需求分析。

    首先,因为考试是面向特定的某些对象的,所以考试者进入系统应该进行身份验证。考试者进入考试系统后,应该能根据自己的需要选择考试能力水平,所以该 系统还应具有考试难度选择(分为顶级、甲级、乙级)的功能。为了在线考试做到规范,对于每个应试者来说,试卷的试题和题量都应是相同的,但试题并不相同。在线考试基于网络环境,试卷应该从服务器的数据库随机抽取试题后动态生成的。另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。考试者选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。考试完毕后,可以返回登录界面或查询成绩与排名。

    2.3 系统结构

    图2.1 系统结构

    三、 系统功能需求

    3.1 功能总览

    表 3.1 功能总览

    3.2 业务流程图

    完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/)

    该系统是基于网络技术的一种在线测评系统,管理员通过网络对题库进行维护,添加试题、修改试题、删除试题等操作;考生通过系统完成考试、分数查询等操作;系统自动组卷并且完成试卷的批阅、分数的统计等操作。

    图3.1 业务流程图

    3.3 数据流分析

    学生登陆系统后从试题库中选出一套试题,然后开始答题,答题完后提交给系统,由系统完成对试卷的批阅统计出成绩,学生可以登陆查询。 管理员登陆系统后对系统进行维护更新。

    图3.2 数据流图

    3.4 数据字典

    数据项条目,用于标识实体。数据字典是数据库的重要部分,它存放有数据库所用的有关信息,对用户来说是一组只读的表。它是关于数据信息的集合。它是数据流图中所有要素严格定义的场所,这些要素包括数据流、数据流的组成、文件、加工小说明及其他应进入字典的一切数据,其中每个要素对应数据字典中的一项条目。其中,对引用的一些关键字进行说明 : PK(主键 ),FK(外键 ), Check(检 查的范围约束),Not null(不为空值)。

    完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/)

    表3.2 考生信息表

    编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
    1 uuid 考生考号 Varchar 10 √
    2 name 考生姓名 Varchar 14
    3 gender 性别 Bool 1
    4 password 密码 Varchar 20 123456
    5 mail 邮箱 Varchar 40
    6 phone 电话 Varchar 12
    表3.3 试题难度系数表

    编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
    1 idl 难度编号 Varchar 3 √
    2 dsl 难度描述 Varchar 30 NULL
    表3.4 题目信息表

    编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
    1 idq 题目号 Varchar 10 √
    2 idl 难度编号 Varchar 3
    3 nameq 题目名称 Varchar 10
    4 des_q 题目表述 Varchar 100 NULL
    5 index_q 索引编号 Varchar 20
    6 pass_n 通过人数 Longint 16 0
    7 att_n 提交次数 Longint 16 0
    表3.5 试卷信息表

    编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
    1 idp 试卷号 Varchar 10 √
    2 score_t 总分 Int 8 100
    3 nameq 题目名称 Varchar 10
    4 des_p 试卷表述 Varchar 100 NULL
    5 start_p 开始时间 Date 16 Date()
    6 end_p 结束时间 Date 16 Date()
    表3.6 管理员信息表

    编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
    1 uuid_a 工号 Varchar 10 √
    2 name_a 姓名 Varchar 8
    3 password_p 密码 Varchar 20
    4 mail_p 邮件 Varchar 40
    5 phone_p 联系电话 Varchar 12
    表3.7 考场信息表

    编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
    1 uuid_s 考场号 Varchar 10 √
    2 name_s 考场名称 Varchar 20
    3 des_s 考场描述 Varchar 100

    3.5 E-R图

    完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/)

    图3.3 试题E-R图

    图3.4 考生E-R图

    图3.5 成绩单E-R图

    四、 软硬件及外部系统接口需求

    4.1 用户界面

    用户界面是程序中用户能看见并与之交互作用的部分,设计一个好的用户界面是非常重要的,本设计将为用户提供美观,大方,直观,操作简单的用户界面。

    4.2 硬件需求

    移动终端硬件配置应遵循如下原则:具有高的可靠性,可用性和安全性。【描述系统中软件和硬件每一接口的特征。这种描述可能包括支持的硬件类型、软硬件之间的交流的数据和控制信息的性质以及使用的通信协议。】

    4.3 运行环境

    Web 浏览器:0+、Chrome、Opera、Safari、Firefox及任何支持HTML5标准的浏览器。
    标准分辨率:1024768、19201080、2K
    五、 可靠性与可用性需求

    5.1 性能需求

    处理能力
    由于是在线测评系统,其处理能力主要考虑系统能承载的最大并发用户数,按照实际情况的规划,系统至少能承载的最大并发用户数要求达到全校学生总人数*φ,φ为0至1的常数,随服务器容量而定。

    响应时间
    为了能够快捷地提供在线测评服务,系统应该能够快速地响应在线测评请求。用户最终得到结果的响应时间除了与系统响应速度有关外,还与网络状况有关。因此对Web服务器端需要较高的要求。

    表 5.1 相应时间分析

    完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/

    5.2 安全性需求

    传输的数据都采用高强度的加密算法加密 (DES),使得数据即使泄漏、被截获后,也无法识别相关的数据内容,确保数据安全。对于客户端与服务器交互的数据,使用安全套接子层 (SSL,SSL 加密传输主要是针对 WEB的数据传输,基于重要信息的传输安全考虑而设计的) 进行信息交换,并在客户移动终端和服务器之间重要的信息的交换。

    六、 参考文献

    [1] 卢正鼎, 张照, 周裕强,等. 面向工程设计应用的数据库管理系统EDDBMS[J]. 计算机研究与发展, 1997(s1):328-332.
    [2] 蔡长安, 王琪. 基于B/S模式的学生信息管理系统设计与实现[J]. 计算机工程与设计, 2006, 27(14):2585-2587.
    [3] 李文新, 郭炜. 北京大学程序在线评测系统及其应用[J]. 吉林大学学报:信息科学版, 2005(S2):170-177.

    更多内容访问 omegaxyz.com
    网站所有代码采用Apache 2.0授权
    网站文章采用知识共享许可协议BY-NC-SA4.0授权
    © 2020 • OmegaXYZ-版权所有 转载请注明出处

    展开全文
  • 软件需求软件需求规约

    千次阅读 2018-08-15 00:15:38
    软件需求软件需求规约 需求与需求获取 不论是自顶向下的软件开发,还是自底向上的软件开发,正确定义问题,是解决问题的前提 自顶向下:问题到平台 自底向上:平台到问题 ——定义问题的基本要素是什么? ...

    软件需求与软件需求规约

    需求与需求获取

    不论是自顶向下的软件开发,还是自底向上的软件开发,正确定义问题,是解决问题的前提

    自顶向下:问题到平台

    自底向上:平台到问题

    ——定义问题的基本要素是什么?

    ——定义问题的基本格式?

    定义问题的基本要素

    定义问题的基本要素是“需求”

    需求:一个需求是一个有关“要予构造”的陈述,用以描述待开发产品(或项)功能上的能力、性能参数或者其他性质

    功能:可以处理某操作任务的任选组合

    性能:有能力支持100个以上的并发用户平均响应时间小于1秒,最大响应时间小于5秒

     需求的5个基本性质

    必要的(necessary)用户要求的

    无歧义的(UNambiguous)只能有一种解释,没有其他

    可测试的(testable)产品开出出阿里过后能否进行测试

    可跟踪的(traceable)可以从一个开发阶段到另外的一个阶段

    可测量的(measureable)该需求是可以进行测量的

    注意:确定需求是否满足以上五个性质的复杂耗时的过程

     需求分类

    功能需求:功能需求桂月亮或者系统构件必须执行的功能

    非功能需求:性能、外部接口、设计约束、质量属性

    关于功能需求需要考虑的问题

    1. 功能源
    2. 功能共享的数据
    3. 功能与外部界面的交互
    4. 功能所使用的计算资源

    可以见得,功能需求是整个需求的主体, 没有功能需求,就谈不上其他需求,即性能需求,外部接口需求,设计约束和质量属性。

    性能需求:性能需求规约了一个系统或系统构件必须具有的性能特性

    外部接口需求:外部接口需求规约了系统或系统构件必须进行交互的硬件、软件和数据库元素,也可能规约其格式、时间或者其他因素

    分类

    用户接口、硬件接口、软件接口、通讯接口、内存约束、操作、地点需求

    设计约束:设计约束限制了系统或系统构件的设计方案。就约束的半身而言,对其进行均衡或者调整是相当困难的,甚至是不可能的。它们必须予以满足。这也是与其他需求的差别。

    分类

    法规政策、硬件限制、与其他的应用接口、并发操作、审计功能、控制功能、高级语言需求、握手协议、应用的关键程度、安全的考虑。

    质量属性:质量属性桂月亮软件产品必须具有一个性质是否达到质量方面一个所期待的水平。

    需求发现技术

    常用的技术:自悟、交谈、观察、小组会、提炼

    需求规约

    定义需求的基本格式

    ——需求规约(SRS)

    概念:一个需求规约是一个软件项/产品/系统所有需求陈述的正式文档,是一个软件产品/系统的概念模型

    基本性质:重要性和稳定性程度、可修改、完整性、一致性

    大型复杂项目和一些有能力的组织,在开发需求文档时,往往使用系统化的需求分析技术和工具。其中一些方法提供了系统化、自动化的功能,逐一验证单一需求所具有的五个性质,并进一步验证需求规约是否具有以上四个性质。

    需求规约实例

    XXXX系统需求规格说明书

    1. 引言

    1.1编写的目的

    说明编写本需求分析规格说明书的目的。

    1.2背景说明

    (1)给出待开发的软件产品的名称

    (2)说明本项目的提出者、开发者、用户;

    (3)说明该软件产品将做什么,如必要,说明不做什么

    1.3术语定义

    列出本文档中所有的专门术语和外文首字母组成原组词

    1.4参考资料

    列出本文档中所引用的全部资料,包括标题、文档编号、出版日期及出版单位等,必要时注明资料来源

    1. 概述

    2.1功能概述

    叙述待开发软件产品将完成的主要功能,并用方框图来表示各功能及其相互关系

    2.2约束

    叙述对系统设计产生影响的显示条件,并对下一节中所述的某些特殊需求提供理由,如管理模式、硬件限制、与其他应用的接口、安全保密的考虑等

    1. 数据流图与数据字典

    3.1数据流图

    3.1.1数据流图

    (1)画出该数据流图1

    (2)加工说明

    (a)编号

    (b)加工名

    (c)输入流

    (d)输出流

    (e)加工逻辑

    (3)数据流说明

    3.1.2数据流图2

    ………………………

    3.2数据字典

    3.2.1文件说明

    说明文件的成分及组织方式

    3.2.2数据项说明

    以表格的形式说明每一项数据、格式如下

    1. 接口

    4.1用户接口

    说明人机界面的需求,包含:

    1. 屏幕格式
    2. 报表过菜单的页面打印格式及内容
    3. 可用的功能键及鼠标

    4.2硬件接口

    说明该软件产品与硬件之间各接口c51的逻辑特点以及运行该软件的硬件设备特征

    4.3软件接口

    说明该软件产品与其他软件之间接口,对于每个需要的软件产品,应提供:

    1. 名称;
    2. 规格说明;
    3. 版本号;
    1. 性能需求

    5.1精度

    逐项说明对各项输入数据和输出数据达到的精度,包含传输中的精度要求。

    5.2时间特征

    定量地说明本软件的时间特征,如响应时间、更新处理时间、数据传输、转换时间、计算时间等。

    5.3灵活性

    说明本软件所具有的灵活性,即对当前用户需求(如操作方式、运行环境、结果精度、时间特性等)有某些变化时,本软件的适应能力

    1. 属性

    6.1可用性

    规定某些需求,如检查点、恢复方法和重启动性,以确保软件可使用。

    6.2保密性

    规定保护软件的要素。

    6.3可维护性

    规定确保软件是可维护的需求,如模块耦合矩阵。

    6.4可移植性

    规定用户程序、用户接口的兼容方面的约束。

    1. 其他需求

    7.1数据库

    说明作为产品的一部分来开发的数据库的需求。如:

    (1)使用的频率;                         (2)访问的能力

    (3)数据元素和文件描述;       (4)数据元素、记录和文件关系

    (5)静态和动态组织;                (5)数据保留要求。

    7.2操作

    列出用户要求的正常以及特殊格式的操作,如:

    (1)在用户组织中各种方式的操作;                (2)后援和恢复操作;

    7.3故障处理

    列出可能发生的软件和硬件故障,并指出这些故障对各项性能指标所产生的影响及对故障处理的要求。

     

    注意:以上给出的是一份需求规约说明书的样例,在实际软件工程中,每个开发组织可根据相关的标准和从事的开发领域,规定自己组织的软件需求分析规格说明书的格式。

     

    表达需求规约(规格说明书)的三种风格

    1非形式化的规约

    即以一种自然语言来表达需求规约,如同使用一种自然语言写了一篇文章

    2半形式化的规约

    即以半形式化符号体系(包含术语表、标准化的表达格式等)来表达需求规约。因此,半形式化规约的编制应遵循一个标准的表示模板(一些约定)。

    3形式化规约

    即以一种基于良构数学概念的符号体系来编制需求规约,一般往往有解释性注释的支持。

    需求规约的作用

    • 最重要的,作为软件开发组织和用户之间一份事实上的技术合同书;是产品功能及其环境的体现。
    • 对于项目的其余大多数工作,它是一个管理控制点。
    • 对于产品设计,它是一个正式的、受控的起点。
    • 是创建产品验收测试计划和用户指南的基础,即基于需求分析规约一般还会产生另外两个文档——初始测试计划和用户系统操作描述。

    SRS不能实现的作用

    • 它不是一个设计文档,它是一个“为了”设计文档。
    • 它不是进度或规划文档,不应该包含更适宜包含在工作陈述(SOW)、软件配置管理计划(spmp)、软件生存周期管理计划(SCMP)或软件质量保证计划(SQAP)等文档中的信息。

    因此在SRS中不应给出:

       项目成本;交付进度;报告规程;软件开发方法;质量保证规程;验收规程;安装规程。

    展开全文
  • 验证软件需求

    千次阅读 2019-09-04 17:35:11
    3.8 验证软件需求 3.8.1 从哪些方面验软件需求的正确性 需求分析阶段的工作结果是开发件系统的重要基础,大量统计数字表明,软件系统中15%的错误起源于错误的需求,为了高软件质量,确保软件开发成功,降低较件开发...

    3.8 验证软件需求

    3.8.1 从哪些方面验软件需求的正确性

        需求分析阶段的工作结果是开发件系统的重要基础,大量统计数字表明,软件系统中15%的错误起源于错误的需求,为了高软件质量,确保软件开发成功,降低较件开发成本,一旦对目标系统提出一组要求之后,必须严格验证这些需求的正确性,一般说来,应该从下述4个方面进行验证

    (1)一致性 所有需求必须是一致的,任何一条需求不能和其他需求互相矛。
    (2)完整性 需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能
    (3)现实性 指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。对硬件技术的进步可以做些预测,对就件技术的进步则很难做出预测,只能从现有技术水平出发判断需求的现实性。
    (4)有效性 必须证明需求是正确有数的,确实能解决用户面对的问题

    3.8.2 验证软件需求的方法

    上一小节已经指出,至少必须从一致性、完整性、现实性和有效性这4个不同角度验证软件需求的正确性,那么,怎样验证软件需求的正确性呢?验证的角度不同,验证的方法也不同。

    1.验证需求的一致性
        
        当需求分析的结果是用自然语言书写的时候,除了靠人工技术审查验证软件系统规格说明书的正确性之外,目前还没有其他更好的“测试”方法。但是,这种非形式化的规格说明书是难于验证的,特别在目标系统规模度大、规格说明书篇幅很长的时候,人工审查的效果是没有保证的,冗余、遗楼和不一致等问题可能没被发现而继续保留下来,以致软件开发工作不能在正确的基础上顺利进行。
        为了克服上述困难,人们提出了形式化的描述软件需求的方法。当软件需求规格说明书是用形式化的需求陈述语言书写的时候,可以用软件工具验证需求的一致性(见需求分析的软件工具),从而能有效地保证软件需求的一致性。

    2,验证需求的现实性

        为了验证需求的现实性,分析员应该参照以往开发类似系统的经验,分析用现有的软、硬件技术实现目标系统的可能性。必要的时候应该采用仿真或性能模拟技术,辅助分析件需求规格说明书的现实性。

    3,验证需求的完整性和有效性

        只有目标系统的用户才真正知道软件需求规格说明书是否完整、准确地描述了他们的需求。因此,检验需求的完整性,特别是证明系统确实满足用户的实际需要(即,需求的有效性),只有在用户的密切合作下才能完成。然而许多用户并不能清楚地认识到他们的需要(特别在要开发的系统是全新的,以前没有使用类似系统的经验时,情况更是如此)不能有效地比较陈述需求的语句和实际需要的功能。只有当他们有某种工作着的软件系统可以实际使用和评价时,才能完整确切地提出他们的需要。
        理想的做法是先根据需求分析的结果开发出一个软件系统,请用户试用一段时间以使能认识到他们的实际需要是什么,在此基础上再写出正式的“正确的”规格说明书。但是,这种做法将使软件成本增加一倍,因此实际上几乎不可能采用这种方法。使用原型系是一个比较现实的替代方法,开发原型系统所需要的成本和时间可以大大少于开发实际系统所需要的,用户通过试用原型系统,也能供得许多宝贵的经验,从面可以提出更符合实际的要求。
        使用原型系统的目的,通常是显示目标系统的主要功能而不是性能,为了达到这个目的可以使用本章3.2.4小节介绍的方法快速建立原型系统,并且可以适当降低对接口、可靠性和程序质量的要求,此外还可以省掉许多文档资料方面的工作,从面可以大大降低原型系统的开发成本。

    3.8.3 用于需求分析的软件工具

        为了更有效地保证软件需求的正确性,特别是为了保证需求的一致性,需要有适当的软件工具支持需求分析工作,这类软件工具应该满足下列要求

    (1)必须有形式化的语法(或表),因此可以用计算机自动处理使用这种语法说明的内容。
    (2)使用这个软件工具能够导出详細的文档。
    (3)必须提供分析(测试)规格说明书的不一致性和冗余性的手段,并且应该能够产生一组报告指明对完整性分析的结果。
    (4)使用这个软件工具之后,应该能够改进通信状况。

        作为需求工程方法学的一部分,在1977年设计完成了RSL.(需求陈述语言),RSL.中的语句是计算机可以处理的,处理以后把从这些语句中得到的信息集中存放在一个称为ASSM(轴象系统语义模型)的数据库中,有一组软件工具处理ASSM数据库中的信息以产生出用 PASCAL语言书写的模拟程序,从而可以检验需求的一致性,完整性和现实性。
        1977年美国密执安大学开发了PSL/PSA(问题陈述语言/问题陈述分析程序)系统。这个系统是 CADSAT(计算机辅助设计和规格说明分析工具)的一部分,它的基本结构类似于RSL.其中PSL是用来描述系统的形式语言,PSA是处理PSL描述的分析程序用。用PSL描述的系统属性放在一个数据库中,一且建立起数据库之后即可增加信息、删除信息或修改信息,并且保持信息的一致性,PSA对数据库进行处理以产生各种报告,测试不一致性或遗漏,并且生成文档资料。
        PSL/PSA系统的功能主要有下述4种
    (1)描述任何应用领域的信息系统
    (2)创建一个数据库保存对该信息系统的描述符
    (3)对描述符施加增加,除和更改等操作
    (4)产生格式化的文档和关于规格说明书的各种分析报告
        PSL/PSA系统用描述符从系统信息流、系统结构、数据结构、数据导出、系统规模、系统动态、系统性质和项目管理共8个方面描述信息系统。
        用PSL对系统做了完整描述,就可以调用PSA产生一组分析报告,其中包括所有修改规格说明数据库的记录,用各种形式描述数据库信息的参照报告(包括图形形式的描述),关于项目管理信息的总结报告,以及评价数据库特性的分析报告。
        借助PSL/PSA系统可以边对目标系统进行自顶向下的逐层分解,边将需求分析过程中遇到的数据流、文件、处理等对象用PSL描述出来并输入到PSL/PSA系统中,PSA将对输人信息作一致性和完整性检查,并且保存这些描述信息。
        PSL/PSA系统的主要优点是它改进了文档质量,能保证文档具有完整性、一致性和无二义性,从面可以减少管理和维护的费用,数据存放在数据库中,便于增加、删除和更改,这也是它的一个优点。

    3.9 小结
        传统软件工程方法学使用结构化分析技术,完成分析用户需求的工作。需求分析是发现、求精、建模、规格说明和复审的过程,需求分析的第一步是进一步了解用户当前所处的情况,发现用户所画临的问题和对目标系统的基本需求接下来应该与用户深人交流,对用户的基本需求反复细化遥逐步求精,以得出对目标系统的完整、准确和具体的需求。具体地说,应该确定系统必须具有的功能、性能,可靠性和可用性,必实现的出错处理需求,接口需求和逆向需求,必须满足的约束条件以及数据需求,并且预测系统的发展前景。
        为了详细地了解并正确地理解用户的需求,必须使用适当方法与用户沟通。访谈是与用户通信的历史悠久的技术,至今仍被许多系统分析员采用。从可行性研究阶段得到的数据流图出发,在用户的协助下面向数据流自顶向下逐步求精,也是与用户沟通获取需求的一个有效的方法。为了促使用户与分析员齐心协力共同分析需求,人们研究出一种面向团队的需求收集法,称为简易的应用规格说明技术,现在这种技术已经成为信息系统领城使用的主流技术。实践表明,快速建立软件原型是最准确,最有效和最强大的需求分析技术。快速原型应该具备的基本特性是“快速”和“容易修改”,因此,必须用适当的软件工具支持快速原型技术。通常使用第四代技术、可重用的软件构件及形式化规格说明与原型环境,快速地构建和修改原型。
        为了更好地理解问题,人们常常采用建立模型的方法,结构化分析实质上就是一种建模,在需求分析阶段通常建立数据模型、功能模型和行为模型。
        除了创建分析模型之外,在需求分析阶段还应该写出软件需求规格说明书,经过严格评审并得到用户确认之后,作为这个阶段的最终成果,通常主要从一致性,完整性,现实性和有效性4个方面复审件需求规格说明书。
        多数人习惯于使用实体-联系图建立数据模型,使用数据流图建立功能模型,使用状态图建立行为模型,读者应该掌据这些图形的基本符号,并能正确地使用这些符号建立软件系统的模型。
        数据字典描述在数据模型、功能模型和行为模型中出现的数据对象及控制信息的特性,给出它们的准确定义,因此,数据字典度成为把3种分析模型粘合在一起的“粘合剂”,是分析模型的“心”,为了提高可理解性,还可以用层次方框图或 Warnier图等图形工具轴助描系统中的数据结构。为了减少冗余、简化修改步骤,往往需要规范数据的存储结构。
        算法也是重要的,分析的基本目的是确定系统必须做什么。概括地说,任何一个计算机系统的基本功能都是把输人数据转变成输出信息,算法定义了转变的规则,因此,没有对算法的了解就不能确切知道系统的功能,IPO图是描述算法的有效工具。

    展开全文
  • 软件需求与软件评估

    千次阅读 2017-03-09 08:59:09
    提到软件需求相信很多人并不陌生,特别是从事信息化方面工作的人员,基本每天都需要与软件需求打交道。 可是在实际的工作中,因为软件需求问题导致信息化项目失败的情况屡见不鲜,软件需求在软件项目中处于一个什么...

    引言:
    提到软件需求相信很多人并不陌生,特别是从事信息化方面工作的人员,基本每天都需要与软件需求打交道。可是在实际的工作中,因为软件需求问题导致信息化项目失败的情况屡见不鲜,软件需求在软件项目中处于一个什么地位,我们需要怎样编写需求?希望通过本文的探讨给大家带来一些思考,给实际工作带来帮助

    一、软件需求是什么根据百度百科的定义:软件需求是用户解决问题或达到目标所需条件或权能系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或权能。 软件需求包括功能性需求及非功能性需求,非功能性需求对设计和实现提出了限制,比如性能要求,质量标准,或者设计限制。本文我们主要讨论软件的功能性需求,主要包含三个层面的内容:

    业务需求( business requirement)反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明,这是软件项目要实现的目标或者功能

    用户需求(user requirement) 文档描述了用户使用产品必须要完成的任务,这在使用实例(use case)文档或方案脚本(scenario)说明中予以说明,这是用户在特定场景下,通过软件所需要实现的功能;

    功能需求(functional requirement)定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。所谓特性(feature)是指逻辑上相关的功能需求的集合,给用户提供处理能力并满足业务需求。



    二、软件需求与软件评估

    工作中,怎样编写软件需求可以更好的满足软件研发的需要很多人可能认为需要写得越详细越好,只有把需求写清楚了,我们才能研发出客户满意的软件。可是在实际中,编写软件需求工作量很大,并且在时间做软件研发过程中,需求内容随时都会发生变更,随着敏捷研发思想的普及,很多人又走向了另一个极端:认为软件需求不需要编写,通过代码就可以反映需求的内容,研发不需要把宝贵的时间浪费在冗余的文档编写上两种意见可能都有一定的道理,那么我们需要怎样的软件需求文档呢

    要回答这个问题,需要我们首先考虑:我们为什么需要需求文档如果需求的编写只是为了解释说明软件实现的功能,那么良好的编码结构,代码注释就可以很好的实现软件的功能说明,程序员可以将编写需求的时间节约下来进行更多功能的实现;可是,这样的情况可能更多适用于中小型项目,或者互联网项目,因为这样的项目需求不复杂,并且需求变化很快,所以研发的效率非常重要。然而,针对大型软件项目或者功能比较复杂的系统,软件研发可能是多人协作的成果,所以在信息传递过程中,我们只有提前考虑好软件需求的内容,才能正确评估开发软件所需要的时间,成本的要素,从而更好的管理项目

    三、如何写好软件需求

    如何写好一个软件需求,我们通过一个案例来进行说明:

    1、业务需求 :

    客户对系统的总体的目标要求 ;在线培训考试平台,主要是用于网上教学、学习、模拟训练等,老师可以通过此系统进行学习科目、学习课件、学习评估等管理,学员可以通过系统进行网上学习、模拟训练、在线考试及帮助。

    2、用户需求

    用户在特定场景下,通过软件所需要实现的功能 在线培训考试平台的案例中,核心功能主要包括



    ………

    其中在线培训管理模块包括:科目管理:针对培训过程中的不同类别进行科目管理,对培训科目进行管理维护:包括科目信息添加、科目信息查询、科目信息修改、科目信息的删除等操作。

    课程管理:对于培训课程进行管理维护:包括课程信息添加、课程信息查询、课程信息修改、课程信息的删除等操作。

    课件管理:课程信息主要包括不同课程的课件信息,用户通过输入课件的 名称、密级、类型、讲义可以对课件信息进行独立的管理包括课件信息添加、课件信息查询、课件信息修改、课件信息的删除等操作。

    学员管理: 对于登陆用户报名学习某一科目的课程内容进行管理,包括学员新增,查询、修改、删除等操作。

    计划管理:管理员可以对培训计划进行管理,主要计划添加培训课程和培训学员管理员卡还可以对培训计划进行添加、查询、修改、删除等操作。

    培训日志:管理通过输入时间、类型、描述可以对培训信息进行查询。

    3、功能需求开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求,在线培训管理包括科目管理、课程管理、课件管理、学员管理、计划管理,培训日志查询等功能;

    3.1科目管理


    3.2课程管理


    3.3课件管理


    3.4学员管理

    四、确定功能进行成本评估
    通过对软件需求功能点点梳理,借助需求管理平台(www.parawork.com)需求分析功能,我们可以了解该项目的规模大小,通过行业基准数据的分析可以了解研发成本,工期时间的管理要素,为项目管理提供依据 ; 

     

    想要了解更更多请访问www.parawork.com

    本文为作者原创,想要转载请注明出处!

    展开全文
  • 什么是软件需求软件需求的分类

    万次阅读 2016-04-27 10:22:01
    软件需求包括3个不同的层次――业务需求、用户需求和功能需求。原链接地址 1、业务需求 (Business requirement)表示组织或客户高层次的目标。业务需求通常来自项目投资人、购买产品的客户、实际用户的管理...
  • 软件需求规格说明书模板

    千次下载 热门讨论 2011-11-02 10:45:36
    本文档是软件系统的需求规格说明书模板。在本文档中,给出了撰写软件需求规格说明书的方法和要求,并给出了相关示例。
  • 需求分析——系统需求和软件需求

    万次阅读 2019-05-26 07:53:27
    系统需求:是指为了完成既定目标而相互协作的构建集合,包括硬件、软件、人员、信息、技术、设施、服务、其它支持构件。系统需求是把系统作为一个整体...软件需求:是由系统需导出,系统需求也被称为用户需求。 ...
  • 软件需求软件需求规约基本概念

    千次阅读 2018-03-13 23:00:16
    需求分析:通过分析分配给软件的那些系统需求,确定软件需求。是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统...
  • 软件工程之软件需求分析

    千次阅读 2018-09-27 10:41:45
    软件需求分析的任务(借助当前系统的逻辑模型推导出目标系统的逻辑模型) 深入描述软件的功能和性能 确定软件设计的约束和接口,同其它系统元素的接口细节 定义软件的其它有效性需求 需求分析的过程 (1)...
  • 软件需求模板

    2008-04-22 10:30:55
    软件需求设计模板 软件需求规格说明书模板
  • 软件需求分析

    千次阅读 2018-07-08 21:18:27
    软件需求分析(Software Reguirement Analysis)是研究用户需求得到的东西,完全理解用户对软件需求的完整功能,确认用户软件功能需求,建立可确认的、可验证的一个基本依据。软件需求分析是一个项目的开端,也是...
  • 说说软件需求说明

    千次阅读 2014-04-29 07:12:49
    软件需求说明,也称软件需求说明书,或者软件需求规格说明,或者软件需求规格说明书, 对应的英文是Software requirements specification, 缩写是SRS。 软件需求说明是软件系统需求的规格化说明,是对将要开发系统...
  • 如何进行软件需求分析

    万次阅读 多人点赞 2018-09-14 09:43:52
    如何进行软件需求分析 1、需求分析的重要性 软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。 通常,软件生存周期包括可行性分析与开发项计划、需求分析、设计(概要设计和详细设计)...
  • 软件需求分析——非功能性需求

    万次阅读 多人点赞 2019-05-07 18:28:24
    1、定义:软件产品为满足用户业务需求而必须具有且除功能需求以外的特性。 2、影响:影响着产品是否能够持续稳定并高效的提供服务。 3、常见类别: 性能需求:响应时间、吞吐量、资源利用率; 安全性:保密性、...
  • 软件需求说明书

    千次阅读 2019-06-24 21:30:16
    软件需求说明书的编写提示 注意:软件功能规格说明书,需要确定用户对软件的需求,要作到明确、无歧义。不涉及具体实现方法。用户能看得明白,开发人员也可据此进行下面的工作(概要设计) 1引言 1.1编写目的 说明...
  • 软件需求变更单

    千次阅读 2019-05-05 09:42:19
    **软件需求变更单 变更单编号: 软件需求变更单 项目名称 项目模块 变更申请人 变更时间 ...
  • 软件需求工程综述

    千次阅读 2019-04-22 19:20:16
    软件需求工程综述 需求工程的任务与目标 清楚的理解用户要解决的问题,完整准确地获取用户的需求,并用《软件需求规格说明书》规范的形式准确地表达用户的需求。 软件需求的层次与内涵 (1)、软件需求的三个...
  • 软件需求分析模板

    千次阅读 2019-05-29 09:13:17
    软件需求分析就是把软件计划期间建立的软件可行性分析求精和细化,分析各种可能的解法,并且分配给各个软件元素。需求分析是软件定义阶段中的最后一步,是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确...
  • 软件需求包括3个不同的层次 业务需求 用户需求和功能需求
  • 软件需求文档范例下载

    千次下载 热门讨论 2007-06-29 11:02:26
    软件需求文档范例下载地址
  • 【软件工程】软件需求说明书

    千次阅读 热门讨论 2018-03-25 17:06:28
    软件需求说明书的编写提示 1引言 1.1编写目的 软件需求说明上诉是需求分析阶段的一个文档,是对软件目标及范围的求精和细化,深入描述软件功能及软件的约束范围,使用户和软件开发者对该软件的初始的规定有个大概...
  • 软件需求分析文档模版

    万次阅读 多人点赞 2016-06-23 18:05:26
    软件需求分析文档模版(转载自国家计算机标准和文件模板) 软件需求分析就是把软件计划期间建立的软件可行性分析求精和细化,分析各种可能的解法,并且分配给各个软件元素。需求分析是软件定义阶段中的最后一步,是...
  •  下图是需求层次关系图,软件需求包括不同的层次:    业务需求(Business requirement)标志组织或客户高层次的额目标。业务需求通常来自项目投资人、购买产品的客户、实际用户的管理者、市场营销部门或产品策划...
  • 软件需求文档(全套)

    千次下载 热门讨论 2010-09-29 23:28:35
    软件需求文档(全套)软件需求文档(全套)软件需求文档(全套)软件需求文档(全套)软件需求文档(全套)软件需求文档(全套)软件需求文档(全套)软件需求文档(全套)软件需求文档(全套)软件需求文档(全套)...
  • 软件需求说明书为谁而编写?把这个问题搞清楚是非常有意义的。
  • 目录 1. 范围 1 2. 总体要求 1 ...附录A 软件需求分析报告文档模板 9 附录B 软件概要设计报告文档模板 21 附录C 软件详细设计报告文档模板 33 附录D 软件数据库设计报告文档模板 43 附录E 软件测试(验收)大纲 55

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,037,426
精华内容 414,970
关键字:

软件需求