需求说明书_需求说明书 验收标准 - CSDN
精华内容
参与话题
  • 软件需求说明书模版

    万次阅读 2017-11-21 12:55:25
    软件需求说明书的编写提示 1引言 1.1编写目的 说明编写这份软件需求说明书的目的,指出预期的读者。 1.2背景 说明: a. 待开发的软件系统的名称; b. 本项目的任务提出者、开发者、用户及实现该软件的...


    软件需求说明书的编写提示

    1引言

    1.1编写目的

    说明编写这份软件需求说明书的目的,指出预期的读者。

    1.2背景

    说明:

    a. 待开发的软件系统的名称;

    b. 本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络;

    c. 该软件系统同其他系统或其他机构的基本的相互来往关系。

    1.3定义

    列出本文件中用到的专门术语的定义和外文首字母组词的原词组。

    1.4参考资料

    列出用得着的参考资料,如:

    a. 本项目的经核准的计划任务书或合同、上级机关的批文;

    b. 属于本项目的其他已发表的文件;

    c. 本文件中各处引用的文件、资料、包括所要用到的软件开发标准。 列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。

    2任务概述

    2.1目标

    叙述该项软件开发的意图、应用目标、作用范围以及其他应向读者说明的有关该软件开发的背景材料。解释被开发软件与其他有关软件之间的关系。如果本软件产品是一项独立的软件,而且全部内容自含,则说明这一点。如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口。|

    2.2用户的特点

    列出本软件的最终用户的特点,充分说明操作人员、维护人员的教育水平和技术专长,以及本软件的预期使甩频度。这些是软件设计工作的重要约束

    2.3假定和约束

    列出进行本软件开发工作的假定和约束,例如经费限制、开发期限等。

    3需求规定 

    3.1对功能的规定

    用列表的方式(例如IPO表即输入、处理、输出表的形式),逐项定量和定性地叙述对软件所提出的功能要求,说明输入什么量、经怎样的处理、得到什么输出,说明软件应支持的终端数和应支持的并行操作的用户数。

    3.2对性能的规定

    3.2.1精度

    说明对该软件的输入、输出数据精度的要求,可能包括传输过程中的精度。

    3.2.2时间特性要求

    说明对于该软件的时间特性要求,如对:

    a. 响应时间;

    b. 更新处理时间;

    c. 数据的转换和传送时间;

    d. 解题时间;等的要求。

    3.2.3灵活性

    说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如:

    a. 操作方式上的变化;

    b. 运行环境的变化;

    c. 同其他软件的接口的变化;

    d. 精度和有效时限的变化;

    e. 计划的变化或改进。

    对于为了提供这些灵活性而进行的专门设计的部分应该加以标明。

    3.3输人输出要求

    解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。

    3.4数据管理能力要求

    说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求作出估算。

    3.5故障处理要求

    列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。

    3.6其他专门要求

    如用户单位对安全保密的要求,对使用方便的要求,对可维护性、可补充性、易读性、可靠性、运行环境可转换性的特殊要求等。

    4运行环境规定

    4.1设备

    列出运行该软件所需要的硬设备。说明其中的新型设备及其专门功能,包括:

    a. 处理器型号及内存容量;

    b. 外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量;

    c. 输入及输出设备的型号和数量,联机或脱机;

    d. 数据通信设备的型号和数量;

    e. 功能键及其他专用硬件

    4.2支持软件

    列出支持软件,包括要用到的操作系统、编译(或汇编)程序、测试支持软件等。

    4.3接口

    说明该软件同其他软件之间的接口、数据通信协议等。

    4.4控制

    说明控制该软件的运行的方法和控制信号,并说明这些控制信号的来源。

    展开全文
  • 软件需求规格说明书模板(超详细)

    千次下载 2020-07-30 23:33:33
    很详细规范的实例软件需求说明书,标准规范,自用参考
  • 软件需求规格说明书模板(通用版),内容详实,示例清晰规范。物超所值,是参考的优质范本。共包括五章内容,涵盖引言、需求概述、系统功能需求、软硬件或其他外部接口需求、其他非功能需求等。共计27页,超1万字。
  • 软件需求说明书 编写实例

    万次阅读 2006-02-17 18:51:00
    一个小组要带领客户进入需求启发阶段而且你要写软件需求说明书。这份说明有些大,但客户会很重视,所以说明必须得到赞同。 现在你正在设计其中的一个特性,已经发现了需求的一些问题。你可以用多种不同的方式解释...
    你的工程应该有个好的起点。一个小组要带领客户进入需求启发阶段而且你要写软件需求说明书。这份说明有些大,但客户会很重视,所以说明必须得到赞同。   现在你正在设计其中的一个特性,已经发现了需求的一些问题。你可以用多种不同的方式解释需求15;需求9 的说明正好与需求21相反,你因该相信哪一个?需求24非常含糊,你根本不明白它的意思;你不得不花上一个小时与2位开发人员讨论需求30,只因为你们对其各有各的理解;并且,唯一能够澄清这些问题的客户没有给你们答复。你被迫破解众多需求的含义,并且你能预料到,如果你错了,你要做大量的重复工作。   许多软件需求说明书(SRS)写得非常糟糕。任何产品的质量需要其原始材料的质量保证,糟糕的软件需求说明书不可能产出优秀的软件。不幸的是,几乎没有开发人员受过与需求的抽象、分析、文档、质检有关的教育。而且,没有非常多的好需求可以借鉴学习,部分原因是很少有工程可以找到一个好的借鉴,其他原因是公司不愿意将其产品说明书放在公共区域。   这篇文章描述了高质量需求叙述和说明的几个特性(特点)。我们将用这些观点检查一些有缺陷的需求,带着痛楚重新编写。而且我会谈一些如何编写好的需求的提示。你也许想通过这些质量标准评估你的工程需求。对于修订,也许迟了,但你会学到一些有用的东西,并帮助你的小组在下次编写出更好的需求。   不要期望能够编写出一份能体现需求应具备的所有特性的SRS。无论你怎么细化、分析、评论和优化需求,都不可能达到完美。但是,如果你牢记这些特性,你就会编写出更好的需求,生产出更好的产品。   高质量需求叙述的特性   我们如何从一些有问题的需求中分辨出好的软件需求?这一节将分别介绍需求叙述应体现的6个特性,下一节将从整体上介绍SRS文档应具备的特性。判断每个需求是否具备应有的特性的一种方式是由持有不同观点的工程资金管理人所作的正规检查。另一种有力的方法是在编写代码前依据需求编写测试例子。测试例子能够明确显现在需求中描述的产品行为(特性),能够显现缺陷、冗余和含糊之处。   正确:每个需求必须精确描述要交付的功能。正确性依据于需求的来源,如真实的客户或高级别的系统需求说明书。一个软件需求与其对应的系统需求说明书相抵触是不正确的(当然,系统需求说明书本身可能不正确)。   只有用户的代表能够决定用户需求的正确性,这就是为什么在检查需求时,要包括他们或他们的代理的关键所在。不包括用户的需求检查就会导致开发人员的:“这是没意义的”,“这可能是他们的意思”等众所周知的猜测。   可行性:在已知的能力、有限的系统及其环境中每个需求必须是可实现的。为了避免需求的不可行性,在需求分析阶段应该有一个开发人员参与,在抽象阶段应该有市场人员参与。这个开发人员应能检查在技术上什么能做什么不能做,哪些需要需要额外的付出或者和其他的权衡。   必要性:每个需求应载明什么是客户确实需要的,什么要顺应于外部的需求,接口或标准。每个需求源于你认可、具有权说明需求的原始资料,这是考虑必需的另外情形(译注,此句翻译不顺,请参照原文:Another way to think of “necessary” is that each requirement originated from a source you recognize as having the authority to specify requirements)。跟踪每个需求回溯到出处,如用例,系统需求,规章,或来自其他用户的意见。如果你不能标识出处,可能需求只是个镀金的例子,没有真正的必须。   优先权:为了表明在一个详细的产品版本中应包含哪些要点,需要为每个需求,特征,或用例分配实现的优先权。客户或其代理都应有强烈的责任建立优先权。如果所有的需求都被视为同等重要,那么由于在开发中,预算削减,计划超时或组员的离开导致新的需求时, 项目经理将不能起到作用。优先权的作用是提供给客户的价值,实现的相关费用,实现相关联的有关技术风险。   我是用3种级别的优先权:高优先权表明需求必须体现在下一个产品版本中,中优先权表明需求是必须的,但是如果需要可以推迟到晚一些的产品版本中,低优先权表明有它很好,但我们必须认识到如果没有充足的时间或资源,它可以被放弃掉。   明确:需求叙述的读者应只能从其得到唯一的解释说明,同样,一个需求的多个读者也应达成共识。自然语言极易导致含糊。要避免使用一些对于SRS作者很清楚但对于读者不清楚的主观词汇,如:用户友好性,容易,简单,快速,有效,几个,艺术级,改善的,最大,最小等等。每写一个需要都应简洁,简单,直观的采用用户熟知的语言,不要采用计算机术语。检查需求模糊的有效方式包括需求说明书的正规检查,根据需求写测试,建立用户的假想来说明产品某个特定部分预期的特性。   可证实:看你是否能够做出测试计划或其他验证方式,如检查和实证,来决定在产品中每个需求是否正确的实现。如果需求是不可验证的,决定需求是不是正确的实现就成了判断的事。需求之间不一致,不可行,不明确也能导致不可证实。任何需求如果说产品将要支持什么也是不可证实的。 高质量需求说明的特征   一个完整的SRS不仅是包括长长的功能性需求列表,还包括外部接口描述和一些诸如质量属性,期望性能的非功能性需求。下面描述了高质量的SRS的一些特性。   完整:不应该遗漏要求和必需的信息。完整性也是一个需求应具备的。发现缺少的信息很难,因为根本不存在。在SRS中将需求以分层目录方式组织,将帮助评审人员理解功能性描述的结构,使他们很容易指出遗失的东西。   在需求抽象时,相对于系统功能,你过多的注意用户的业务,将导致在需求的全局观和引进不是真正必需的需求上显得不足。在需求抽象上,应用用例方法会发挥很好的作用。能够从不同角度察看需求的图形分析模型也可以检查出不完整性。   如果你知道已缺少一些信息,使用TBD(to be determined)标准标志可以突出这些缺陷,当你在构建产品的相关部分时,就可以从一个给定的需求集中解决所有的缺陷。   一致性:一致性需求就是不要于其他的软件需求或高级别的系统(商业)需求发生冲突。需求中的不一致必须在开发开始前得到解决。只有经过调研才能确定哪些是正确的。修改需求时一定要谨慎,如果只审定修改的部分,没有审定于修改相关的部分,就可能导致不一致性。   可修改性:当每个需求的要求修改了或维护其历史更改时,你必须能够审定SRS。也就是说每个需求必须相对于其他需求有其单独的标示和分开的说明,便于清晰的查阅。通过良好的组织可以使需求易于修改,如:将相关的需求分组,建立目录表,索引,以及前后参考(照)。   可追踪:你应能将一个软件与其原始材料相对应,如高级系统需求,用例,用户的提议等。也能够将软件需求与设计元素,源代码,用于构造实现和验证需求的测试相对应。可追踪的需求应该具有独立标示,细密和结构化的编写,不应过大,不应是叙述性的文字和公告式的列表。   需求质量的评审   这些有关需求质量的特性的描述在理论上都是非常好的,但一个好的需求到底是个什么样子的呢?为了体现得更切合实际,我们做个小练习。下面有几个从实际的工程选出的需求,依据上面的质量标准,评估每个需求,看看有什么问题,然后用更好的方式重写。我将对每个例子都提出自己的分析和改进的建议。也欢迎你提出不同的见解。我所占优的只是我知道每个需求的出处。因为你我都不是真正的客户,我们只能猜测每个需求的意图。   例1.“产品应在不少于每60秒的正常周期内提供状态信息”   这个需求是不完整的:状态信息是什么,如何显示给用户。这个需求有几处含糊。我们在谈论产品的哪部分?状态信息间隔真的假定为不少于60秒?,甚者每10年显示一条新的状态信息也可以?也许它的意图是消息间隔不应超过60秒,那么1毫秒是不是太短?“每”这个词导致了不确定性。问题的后果,就是需求的不可证实。   弥补缺陷,重写需求的一种方法:   1、状态信息  1.1后台任务管理器因该以误差上下不超过10秒的60秒间隔,在用户界面的指定位置显示状态信息  1.2如果后台进程处理正常,那么应该显示任务已完成的百分数/比  1.3任务完成时,应显示相关的信息   1.4后台任务出错应该显示错误信息   为了分别测试和追踪,我将其分成了多个需求。如果将几个需求串接在一节中,在构造和测试时就很容易漏掉一个。   例2.“产品应瞬间在显示和隐藏不可打印字符间切换”   计算机在瞬间不能做任何事,所以这个需求不切实可行。它的不完整性表现在没有声明触发状态切换的条件。软件要在某些条件下更改自己?或者用户为了模仿更改要做一些动作?而且,在文档中改变显示的范围是多大:选中的文本,整个的文档,或其他的?这也是个模糊的问题。不可打印字符合隐藏字符一样吗?或者是一些属性标志或一些控制字符?问题的后果,就是需求的不可证实。   象这样编写需求也许更好一些:“用户能够在一个由特定触发条件激活处于编辑的文档中在显示和隐藏所有HTML标记间切换”。现在就很清楚,不可打印字符是HTML标记。由于没有定义触发条件,需求对设计没有约束力。只有设计人员选定了触发条件后,你才能编写测试验证触发的正确操作。   例3.“HTML分析器可以产生HTML标记错误报告,帮助HTML入门者快速解决错误”。单词“快速”使其模糊,没  有加进错误报告的定义也是其部完整。我不知道,你怎么验证这个需求。找一个自称为HTML的入门者,看看能不能根据错误报告快速解决错误?   试试这个:“HTML分析器可以产生一个错误报告,错误报告包含有在被分析文件中出错的HTML文本和行号以及错误的描述。如果没有错误,就不会产生错误报告”。现在我们知道了,什么会被加到出错报告中,但是出错报告是个什么样子,则留由设计人员决定。我们还指定了一个例外:如果没有发现错误,不产生错误报告。   例4.“如果可能,主管号码应通过联机校验,而不是通过主全体主管号码列表校验”。真感到绝望,什么是“如果可能”:如果技术上可行?如果主全体主管号码列表可以联机获得?要避免象“应该”的这类不确切的词。客户是需要这个功能性还是不需要。我曾看过一些需求说明书,采用诸如:应,将,应该/将要等一些词描述优先级的细微差别。但我更喜欢用“应”清楚的说明需求的意图,指明优先级。这是修改后的:系统应校验输入的主管号码而不通过联机的主全体主官号码列表。如果在列表中没有发现主管号码,将会显示一条错误信息,也不接受指令。   在理解各个已完成的糟糕需求上,开发人员将会遇到的难题是:开发人员与客户将会在审核需求,未达成共识前发生激烈的争论。详细检查大的需求文档不是一件轻松的事情。我清楚有人做过,而且他们花在检查上的每一分钟都是值得的。相对于开发阶段和用户的抱怨电话,在这个阶段修补缺陷是便宜的,   编写质量需求的方针   编写优秀的需求是没有公式化的方法的。这需要大量的经验,要从你在过去的文档中发现的问题学习。请在组织软件需求文档时,严格遵从这些方针。   句子和段落要短。采用主动语气。使用正确的语法,拼写,标点。使用术语,要保持一致性,并在术语表或数据字典中定义它们   要看需求是否被有效的定义,可以以开发人员的观点看看。在内心将“当你们做完了找我”这句加到文档尾部,看看能不能是你紧张起来。换句话说,你是否需要SRS的编写者的额外解释帮助开发人员很好的理解需求,以便于设计和实现?如果是的话,在继续工作前,需求还需要细化。   需求编写者还要努力正确地把握细化程度。要避免包含多个需求的长的叙述段落。有帮助的提示是编写独立的可测试的需求。如果你认为一小部分测试可以验证一个需求的正确,那么它已经正确的细化了。如果你预想到多种不同类的测试,几个需求可能已挤到了一起,需要拆分开。   密切关注多个需求合成了单个需求。一个需求中的连接词“和”/“或”建议几个需求合并。不要在一个需求中使用“和”/“或”。   通篇文档细节上要保持一致。我曾看见过多个需求说明书前后不一致。如:“对于红色合法的颜色代码应是R”及“对于绿色合法的颜色代码应是G”就有可以以分散的需求分离开,而“产品应能对来自语音编辑指示做出反应”应作为一个子系统,不应作为单个的功能性需求。   避免在SRS中过多的申述需求。在多处包含相同的需求可以使文档更易于阅读,但也会给文档的维护增加困难。文档的多份文本要在同一时间内全部更新,避免不一致性。   如果你遵从了这些方针,你能够尽早地经常正式或非正式的审查需求,这些需求对于产品的构造,系统测试以及最后的客户满意,都会成为好的奠基石。并且要记住,没有高质量的需求,软件就象一盒巧克力,你永远不知道你会
    展开全文
  • 如何撰写《软件需求规格说明书

    万次阅读 多人点赞 2018-11-03 16:16:42
    指出编写《需求规格说明书》的目的。下面是示例: 编写此文档的目的是进一步定制软件开发的细节问题,希望能使本软件开发工作更具体。为了使用户、软件开发者及分析和测试人员对该软件的初始规定有一个共同的理解,...

    1概述

    1.1编写目的

    指出编写《需求规格说明书》的目的。下面是示例:

    编写此文档的目的是进一步定制软件开发的细节问题,希望能使本软件开发工作更具体。为了使用户、软件开发者及分析和测试人员对该软件的初始规定有一个共同的理解,它说明了本软件的各项功能需求、性能需求和数据需求,明确标识各项功能的具体含义,阐述实用背景及范围,提供客户解决问题或达到目标所需要的条件或权能,提供一个度量和遵循的基准。具体而言,编写软件需求说明的目的是为所开发的软件提出:

    a)       软件设计总体要求,作为软件开发人员、软件测试人员相互了解的基础。

    b)       功能、性能要求,数据结构和采集要求,重要的接口要求,作为软件设计人员进行概要设计的依据。

    c)       软件确认测试的依据。

    1.2编写依据

    指明该《需求规格说明书》的依据。一般可以写依据XXX软件的方案书,策划书等。

    1.3术语和缩略词

    缩写、术语及符号

    解 释

     

     

     

     

     

     

     

    2软件概要

    2.1软件总体描述

    从总体上描述该软件的情况,包括软件的形式(网站,运行时系统,插件等)和软件的主要的功能,使读者对该软件有一个整体的认识。一般一两段话即可。

    2.2软件设计约束及有关说明

    软件设计的约束以及有关说明如下所示。

     开发环境:

     编程语言:

      遵循的规范:软件的设计和开发过程需要严格按照合同要求,根据软件的设计方案来进行。软件开发过程应遵循软件工程规范,对过程和版本进行管理和控制。

    测试环境:可以写明在什么单位测试,测试单位使用的软硬件环境。

     软件交付形式:

      软件交付日期:

     其他:见合同。

    2.3使用者特点

    指明软件的使用者具有的特定。示例:

    本软件主要在甲方工作环境中使用,使用者包括项目管理人员,开发人员及工程师等,使用者在计算机的应用、使用上不存在障碍,都在计算机的操作和使用方面得到过相关的培训。

     

    3开发和运行环境

     

    3.1硬件环境

    XXX软件的运行环境为个人计算机。详细要求见表3.1。

    3. 1 软件运行环境硬件要求

    需求名称

    详细要求

    CPU

     

    内存

     

    硬盘

     

    3.2支持软件环境

    需求名称

    详细要求

    操作系统

     

     

     

     

     

    3.3接口

    3.3.1           外部接口

    说明软件运行时和外部环境的接口,包括软件的界面表现形式等方面。示例:

    外部接口的用户界面部分按Windows应用软件用户界面的规范来设计,界面设计风格与XXX环境保持一致,采用XXX以及对话框等方式作为用户界面,便于用户使用。

    3.3.2           软件接口

    说明软件与它运行的软件环境之间的接口。示例:

    本软件运行于XXX软件及以上版本上,整个环境需要运行在Windows某某版本及更高版本并装有XXX(依赖软件)的操作系统之上。

    3.3.3           硬件接口

    指明软件和运行的硬件环境的接口。

    Inter或其他系列的微型计算机,内存XXXG以上,硬盘XXXG以上。

    3.3.4           内部接口

    说明软件内部各个模块之间的接口或规范,软件各个模块间数据交换的格式等。示例:

    软件内部的接口是通过XXX来进行交换的。用户使用XXX软件……可以说软件的各个模块之间主要通过XXX来进行关联,传送数据并交换信息,从而降低软件模块间的耦合程度。

    3.4控制和操作

    说明使用软件时需要进行的控制和操作方式。示例:

    XXX软件最终交付形式为XXX。控制该软件运行的方法为通过鼠标双击或命令行启动XXX环境,然后通过鼠标启动XXX。

    XXX软件提供XXX等功能,各个功能项的设置及使用应符合人们使用计算机的操作习惯,通过常用的鼠标点击,键盘输入以及菜单等形式来完成启动和使用软件的过程,控制信号均由鼠标和键盘进行输入。

     

    4详细需求

     

    4.1性能需求

    4.1.1           精度要求

    要按照严格的数据格式输入,对符合数据格式要求的输入进行提示。

    4.1.2           时间特性要求

    软件启动时间:

    系统实时响应时间:软件使用过程中,对用户在各个功能模块的鼠标点击、键盘输入等操作事件的响应时间需在用户能够容忍的范围之内,一般要求小于1秒。

    数据的转换和传送时间:对软件不同模块间的数据交互,要求数据的转换和传送时间不得超过XXX。

    数据更新时间:XXX。

    4.1.3           灵活性要求

    XXX软件能够支持鼠标、键盘等多种操作方式的使用。软件的设计和实现需要考虑到运行环境的变化,并能够在运行环境变化的情况下正常使用。同时,软件需要兼容其他软件接口的变化,以保证在不同运行环境,不同软件接口的情况下的正常使用。具体要求如下:

     操作方式上的变化:软件应支持多种操作方式,例如鼠标、键盘和菜单等。

     运行环境的变化:软件的设计和实现需要考虑其运行环境的变化,并能对不同的运行环境提供支持。具体而言,软件应支持Windows某某版本及以上版本的操作系统,支持XXX环境。

    同其他软件接口的变化:当其他软件的接口发生变化时,XXX软件应能够适应接口的变化。

     精度和有效时限的变化:灵活性要求软件能够方便的适应精度和有效时限的变化。

    计划的变化或改进:软件应具有足够的灵活性,以适应将来有可能会出现的需求更改或增加。

    4.2功能需求

    经过多次需求调研,现提出XXX软件的功能需求。XXX软件包括XXX、XXX等等模块,软件的组织结构图如图4.1所示。

    4.1XXX软件研究内容

    给出整个软件的用例图见图4. 2。

    4.2软件用例图

    XXX软件的主要功能模块划分,以及各个模块主要的功能描述见表4. 1所示。

    4.1XXX软件功能模块

     

     

     

    XXX软件

    模块名称

    功能描述

    XXX模块

     

    XXX模块

     

    XXX模块

     

    XXX模块

     

    XXX模块

     

    XXX模块

     

    下面以分节的形式,详细介绍软件的各个功能模块,每个功能模块占一节,如4.2.1,4.2.2等等。在介绍每个功能模块时,首先给出该模块功能的总体描述,然后给出本模块的用例图,然后,在本小节内部,再往下分一级标题,分不同的点来介绍本模块的各个功能。

    4.3数据需求

    4.3.1           数据采集的要求:

     输入源:手工键盘输入;

      输入介质和设备:键盘,鼠标;

    4.3.2           数据输出要求:

     输出介质和设备:显示器、文件;

     

    5故障处理需求

     

    5.1软件运行故障

    在使用软件的过程中,当出现计算机断电,计算机内存不足等情况时,XXX软件将出现运行故障。运行故障发生时,软件的各个功能模块将无法正常使用,启动相关功能按钮都无法进行正常的操作。

    对由于计算机断电引发的软件运行故障,用户在重新给计算机供电后,可以通过重新启动计算机,并启动XXX软件的方式恢复软件的正常运行与使用。对由于计算机内存不足引发的软件运行故障,建议暂时关闭软件。用户应检查并解决计算机内存不足的问题,内存使用情况正常后,XXX软件将恢复正常的运行与使用。

    出现软件运行故障并进行修复后,应确保XXX软件功能的完整性,不能发生因软件运行故障而导致工具无法继续使用的情况。

    5.2软件使用故障

    在软件的使用过程中,如果出现软件使用故障,应当具有报警信息提示。

    1)       当软件依赖的文件损毁或丢失时,软件以对话框的形式进行提示,报告损毁或丢失的文件等相关错误,以帮助用户及时修复软件的正常功能。

    2)       对软件需要用户输入项的情况,如果发生缺少输入项、输入项格式错误或不符合规则等情况,软件应以合理的方式予以提示。

    3)       为了防止用户由于未及时保存而导致信息丢失的情况,软件提供定时保存机制,每隔一定时间自动对信息进行保存,从而保证用户数据的安全。

     

    6质量需求

     

    1)       软件的功能实现必须符合常用的主流XX软件的使用方法和操作习惯。

    2)       XXX工具的需要满足操作简单的要求,能够使用户没有障碍的使用该工具进行一系列的开发工作。

    3)       要求可配置型强,便于使用者对工具的使用以及定制。

    4)       采用可行、合理、高效的方式进行开放性的设计和实现。

    5)       软件具有很强的适应能力,并且便于维护,不仅能很好的满足当前的需求,而且应当为后期可能的开发的工作提供很好的扩展和维护接口。

     

    7其他需求

     

    7.1易用性需求

    作为一款XXX,XXX软件的设计和实现遵循易用性原则,工具的安装和入门,工具的用户界面布局,使用工具的操作方式等方面都应符合主流XX软件的设计风格与要求。

    1)       操作简单,设计合理。

    2)       进行XXX时,XX提供XXX等功能,以实现XXX。

    3)       使用XXX的过程中应有必要的操作提示信息。

    7.2安全性需求

    为了对软件的安装和使用进行统一的管理,安装XXX后,需要的到管理人员的授权才能使用该工具。软件采用激活码-注册的方式达到这一要求。启动并使用软件时,应对软件的授权信息进行检查,缺少授权信息情况软件将自动关闭。

    点次下载《需求规格说明模板》

    展开全文
  • 软件需求说明书

    千次阅读 2019-10-21 22:41:21
    目录 介绍 3 1.1 编写目的 3 1.2 文档范围 3 1.3 文件概述 3 1.4 参考资料 3 项目介绍 3 2.1 项目背景 3 2.2 项目目标 3 2.3 项目范围 4 应用环境 4 3.1 系统环境 4 功能规格 5 ...4.2 系统...

    目录

    1. 介绍 3
      1.1 编写目的 3
      1.2 文档范围 3
      1.3 文件概述 3
      1.4 参考资料 3

    2. 项目介绍 3
      2.1 项目背景 3
      2.2 项目目标 3
      2.3 项目范围 4

    3. 应用环境 4
      3.1 系统环境 4

    4. 功能规格 5
      4.1 系统角色(Actor)分析 6
      4.1.1 学生 6
      4.1.2 普通用户 6
      4.1.3 教师 6
      4.1.4 系统管理员 7
      4.2 系统主用例图(Use Case) 7
      4.3 子系统 7
      4.3.1 注册系统 8
      4.3.2 登录系统 8
      4.3.3 班级系统 8
      4.3.4 单词识别查询 9
      4.3.5 生词库系统 9
      4.3.6 题库系统 10
      4.4 非功能性需求 10
      4.4.1 界面需求 11
      4.4.2 响应时间需求 11

    5. 需求变更 11

    6. 产品提交 12

    7. 实现约束 12

    8. 介绍
      1.1 编写目的
      该文档描述了Learning path软件系统的功能和性能的需求,作为对该项目在概要设计阶段的设计输入。
      本文档的预期读者包括:
      设计开发人员
      项目管理人员
      测试人员
      用户

    1.2 文档范围
    该文档的目的是解决整个项目系统中“做什么”的问题。对于开发技术在这里并没有涉及,而主要是通过建立模型的方式来描述用户的需求为,客户、用户、开发方等不同参与方提供一个交流的平台。

    1.3 文件概述
    本文档描述了该产品的功能。它描述了非正式的需求,为技术需求规范建立上下文。本文档的需求规范部分,主要是为开发人员编写的,并且用技术术语描述了产品功能的细节。稳当的两个部分完整地描述了同一个产品,但是针对不同的用户,因此使用不同的描述。

    1.4 参考资料
    《软件工程案例教程软件项目开发实践 第三版》 韩万江等 机械工业出版社

    1. 项目介绍
      2.1 项目背景
      在当今世界,英语仍然是被广泛使用的。目前,市场上的大部分词典软件所提供的拍照功能,同样是用了图片处理识别技术,但是市场上的大部分APP提供的仅是单句翻译或者全文翻译,这一点实际上并不利于英语学习者,因为这些APP所提供的翻译功能翻译出的结果比较模糊,若是优秀一些的翻译功能,智能识别出的翻译相对原意进行了一定的美化,这种功能并不利于英语学习者具体了解每一个单词的意思。英语学习者想要学习英语,更需要的是记住单词的意思,单词是句子的基础,句子才能够构建出文章,由此可知记单词的重要性。同时,这些APP也不会根据用户的使用情况进行分析,从而得到一些可用的数据。

    2.2 项目目标
    本项目研究的目的主要是让用户在面对一篇文章的多个生词时,能够更快速的查询到每一个生词的释义,并通过软件的大数据分析,了解自己的不足之处。
    本项目的主要研究内容有:
    1、通过图像识别技术识别出文章中的每一个单词,在用户点击生词时,能够出现该生词的释义及例句,并导出该生词在哪张试卷(历年中高考英语试卷/四、六级真题、考研英语)出现,并导出包含该生词的题目;
    2、通过编程让系统实现自动分析并识别出用户高频率查询的生词并存入自动生成的生词本中;
    3、开发教师端及学生端,将两个端口联系在一起,教师端可以查询到学生端查询频率最高的单词及每个学生学习的情况。

    2.3 项目范围
    Learning path是一个基于Android/IOS的英语学习软件。这个软件将通过提供工具来协助用户学习英语,面对长篇大论的英文时,只需拍照识别即可查取生词,从而最大限度地提高学习英语的效率,避免手动查询带来的效率低下。结合题库和生词本收录,增强学习性。
    本项目与目前市场上APP不同的有以下几点:
    1.可以智能识别出一个句子或一篇文章中的单个单词,用户只需要点击自己想要了解的生词,软件会给出该单词的释义及相关利句,包括含有该单词的题目;
    2.根据用户对于所查询单词的点击频率生成一份数据报告,并将点击频率较高的单词自动生成一个生词本,提供看词选意,选词填空,拼写单词三种记忆方式;
    3.软件提供学生端及教师端,将两个平台搭建在一起,教师可以管理班级学生信息,系统会对班级内所有学生的数据进行分析,由此教师可以了解到学生使用该软件点击频率最高的生词,及这些生词衍生出的易错题。

    1. 应用环境
      3.1 系统环境
      在这里插入图片描述
      软件系统有三种用户参与者(教师、学生和普通用户),划分为单词识别查词、题库、单词分析三个部分。学生通过单词识别查词,即可显示出这个单词的释义、例句以及包含有该单词的题目,单词分析形成生词本以供复习。系统会自动对学生查词频率最高的单词及易错题目进行数据分析,并反馈到教师端口供教师查阅和参考。两种用户皆通过互联网访问软件,通过软件系统建立联系。普通用户则可仅使用单词识别查词功能。
      4. 功能规格
      项目的整体功能结构如图2所示.系统中主要角色是教师和学生,他们可以完成的功能如注册登录、拍照识别单词、等,系统维护的系统管理员也是一个必要的角色,系统中也存在普通用户的角色,他具有拍照识别单词功能。
      在这里插入图片描述 图4-1系统整体架构图

    4.1 系统角色(Actor)分析
    角色或者执行者(Actor)是指与系统产生交互的外部用户或者外部系统。本系统的使用角色主要分为普通用户、学生、教师和系统管理员四种。以下是对每个角色的详细介绍。

    4.1.1 学生
    学生可以通过软件拍照识别一整篇文章中的每一个单词,只需要动手点击一下自己不认识的单词,即可显示出这个单词的释义、例句以及包含有该单词的题目(拟计划建立一个高考、四级、六级真题及考研英语题库),若需要做含有该单词的题目增强记忆,只需点击“相关题目”即可以进入做题界面,系统会自带判断正误以及计时的功能,在答题后对用户的答题情况进行评估;
    对于用户近期频繁点击的单词,可以根据用户自身选择的频率(例如:点击过一次或点击过三次)生成一个“生词本”,以供用户进行单词的复习,用户也可以在查询单词的下方点击“收录进生词本”。针对这些生词本,系统还可以生成单词记忆闯关的功能,记忆闯关的功能包括看词选意,选词填空,拼写单词三种记忆方式。
    4.1.2 普通用户
    普通用户不需要加入班级,直接登入并使用拍照识别单词,生词本等功能,与学生的区别仅在于是否加入了班级。

    4.1.3 教师
    教师可以在教师端口生成自己的班级,学生通过学生端口加入该班级,教师端可以对学生近期的学习情况进行查看,同时系统会自动对学生查词频率最高的单词及易错题目进行数据分析,并反馈到教师端口供教师查阅和参考。

    4.1.4 系统管理员
    系统管理员主要进行软件日常维护,更新数据库。

    4.2 系统主用例图(Use Case)
    系统由注册、登录、班级、单词识别、生词本、题库子系统组成。参与人员有教师、学生和普通用户,系统间不耦合,各自处理相应事务。具体系统主用例图如图3所示。
    在这里插入图片描述
    图4-2 系统主用例图

    4.3 子系统
    子系统由普通用户、学生和教师执行相关操作,普通用户不需要加入班级,直接登入并使用拍照识别单词,生词本等功能,与学生的区别仅在于是否加入了班级。
    学生可拍照识别单词,查看单词释义、例句、题库,答题,使用生词本收录,单词记忆闯关,加入班级。
    教师除普通用户功能外,还可以生成班级,查看学生查词单词频率反馈、学生易错题目反馈。
    4.3.1 注册系统
    角色:教师,学生,普通用户
    目的:用户注册
    用例描述:
    (1)用户进入系统首页。
    (2)系统显示注册界面,用户输入相关的身份信息,单击确定。
    (3)用户名长度不足10位时,提示"用户名应为10位数字”,密码不足6位
    或超过16位时,提示“密码必须为6位以上,16位以下”。
    (4)系统经过后台确认数据合法后提示注册成功。

    4.3.2 登录系统
    角色:教师,学生,普通用户,管理员
    目的:用户登录系统。
    前置条件:用户身份为教师、学生、管理员、普通用户。
    用例描述:
    (1)用户进入系统首页。
    (2)系统显示登录界面, 用户输入用户名和密码,单击确定。
    (3)系统检查是否有此用户信息,若存在此用户,用户进入系统:若不存在
    此用户,本页面显示相应的错误信息。
    (4)不同身份登录详细说明:
    游客:不出现人员管理功能栏,不出现班级功能。
    学生:不出现人员管理功能栏,不出现班级管理功能栏。
    教师:不出现人员管理功能栏。
    管理员:不出现班级管理等相关功能栏。

    4.3.3 班级系统
    班级系统主要为了便于教师管理学生,查看学生学习情况反馈。学生仅可加入班级,教师可生成班级以及对班级成员进行管理。如下图4-3是本部分功能的用例图。
    在这里插入图片描述
    图4-3 班级系统用例图

    角色:学生,教师
    目的:便于教师管理学生,查看学生学习情况反馈
    用例描述:
    (1)教师生成班级,产生班级邀请码。
    (2)学生输入班级邀请码申请加入班级,教师核对学生身份后同意进入,之后可查看系统对学生学习数据的反馈。
    (3)班级内部有交流板块,用于师生提问答疑,教师有删除发言的权限。
    4.3.4 单词识别查询
    单词识别查询是软件的主要功能,所有用户都可使用,同时向教师端提供数据反馈。本功能部分的用例图如图4-4所示。
    在这里插入图片描述
    图 4-4 单词识别查询用例图

    角色:学生,教师,普通用户
    目的:拍照选取单词,查词
    用例描述:
    (1)用户通过客户端使用相机拍摄想要查词的英语文段,软件会自动提取每个单词。
    (2)每遇到用户想查询的单词,直接点击即可进入单词查询页面。该页面包括单词释义、例句、以及包含有该单词的题目。
    (3)系统会自动对学生查词频率进行数据分析,并反馈查询频率较高的单词到教师端口供教师查阅和参考。

    4.3.5 生词库系统
    生词库系统同样提供所有用户使用,是查词的辅助功能,包括加入生词库及单词记忆两个板块。本功能用例图如图4-5所示。
    在这里插入图片描述
    图4-5 生词库系统用例图

    角色:学生,教师,普通用户
    目的:辅助单词记忆
    用例描述:
    (1)对于用户近期频繁点击的单词,可以根据用户自身选择的频率(例如:点击过一次或点击过三次)生成一个“生词本”,以供用户进行单词的复习,用户也可以在查询单词的下方点击“收录进生词本”。
    (2)针对这些生词本,系统还可以生成单词记忆闯关的功能,记忆闯关的功能包括看词选意,选词填空,拼写单词三种记忆方式。

    4.3.6 题库系统
    题库系统提供学生和普通用户进行答题,同时向教师反馈本班级学生的答题情况。本功能用例图如图4-6所示。
    在这里插入图片描述
    图4-6 题库系统用例图

    角色:学生,教师,普通用户
    目的:辅助单词学习
    用例描述:
    (1)在单词查询页面,若用户需要做含有该单词的题目增强记忆,只需点击“相关题目”即可以进入做题界面,系统会自带判断正误以及计时的功能,在答题后对用户的答题情况进行评估。
    (2)系统自动对班级学生错题进行数据分析,向教师反馈易错题目。

    4.4 非功能性需求
    4.4.1 界面需求
    系统的界面要求如下:
    1.页面内容:课程信息内容准确,术语和行文格式统-、 规范、明确,栏目、菜单设置和布局合理,传递的信息准确、及时。
    2. 导航结构:页面具有明确的导航指示,且便于理解,方便用户使用。
    3. 技术环境:页面大小适当,能用各种常用手机不同分辨率浏览;无功能错位。
    4.艺术风格:界面、版面形象清新悦目、布局合理,字号大小适宜、字体选择合理,前后一致,美观大方;色彩和谐自然与内容相协调。

    4.4.2 响应时间需求
    当用户登录,进行任何操作的时候,系统应该及时的进行反应,反应的时间
    在3秒以内。系统应能监测出各种非正常情况,如与设备的通信中断,无法连接数据库服务器等,避免出现长时间等待甚至无响应。

    4.4.3 可靠性需求
    系统应保证7*24小时内不宕机,保证多人可以同时在客户端登录,系统正常运行,正确提示相关内容。

    4.4.4 可扩展性需求
    系统设计要求能够体现扩展性要求,以适应将来功能扩展的需求。
    4.4.5 系统安全性需求
    网站有严格的权限管理功能,各功能模块需有相应的权限方能进入(如数师和学生具有不同的访问权限)。系统需能够防止各类误操作可能造成的数据丢失,破坏。防止用户非法获取网页以及内容。

    5. 需求变更
    需求变更控制过程图如图 5-1 所示:
    在这里插入图片描述
    图 5-1 需求变更控制变更图

    从上图可以得到需求变更的控制过程为:客户递交变更,形成变更请求,变
    更请求递交给开发小组,开发小组主要从技术实现的层面评估该变更请求是否合理,并对其进行成本和影响分析,接着将变更请求递交给产品开发小组产品开发小组从机构和战略以及经济的层面评估该变更请求是否合理,然后进行变更选择。
    选择的结果有三种:一种是拒绝,也就是变更失败;一种是下个版本再修改,一种是变更通过。若变更通过,就需要修改相关需求,修改合同的相关信息,修改相应的项目计划。这样,需求变更的控制过程就结束了。

    6. 产品提交
    提交产品为:
    (1) Learning path
    (2) 数据库初始数据
    (3) 系统开发过程文档
    (4) 系统使用维护说明文档

    7. 实现约束
    系统的实现约束如下:
    (1) 操作系统为:具有 java 虚拟机的操作系统
    (2) 开发平台为:MyEclipse
    (3) 数据库为:MySQL
    (4) Web 服务器为:Tomcat
    (5) 版本管理工具:Visual Source Safe 6.0
    (6) 测试工具:JMeter 2.10

    展开全文
  • 软件需求规格说明书模板

    万次阅读 2017-03-13 16:51:39
    软件需求规格说明书模板 软件需求规格说明书是软件开发过程需求分析阶段需要产出的文档,是为了使用户和软件开发者对软件的规格有一个共同的理解而撰写的,软件需求规格说明有标准的模板 ...
  • 软件需求规格说明书范例

    万次阅读 多人点赞 2020-03-30 19:04:52
    文章目录 一、 引言 1.1 定位与目标 ...1.3 软件需求分析理论 1.4 软件需求分析目标 二、 需求概述 2.1 项目背景 2.2 需求概述 2.3 系统结构 三、 系统功能需求 3.1 功能总览 3.2 业务流程图 3.3 数据流...
  • 项目组成员在针对要开发的系统做需求调研后,就要编写对应的需求说明书。 作为软件工程师,你就得知道需求分析说明书和需求规格说明书的区别,以期在正确的时候编写正确的需求文档。
  • 1、用户需求说明书是用户的需求,需要和用户确认的。需求规格说明书是系统需求主要是对内的。需求管理的时候也需要用到用户需求。2、 优点:用户的语言与设计人员的语言是不同的,所以需要有面向不同人员的文档。 ...
  • 软件开发文档包括软件需求说明书、数据要求说有书、概要设计说明书、详细设计 说明书、可行性研究报告、项目开发计划。 ##**一:软件需求说明书** 软件需求说明书也称为软件规格说明。该说明书对所开发软件的功能...
  • original url from : ... 区别: (一)面向对象上不同:  ... 需求分析说明书往往面向业务人员、用户   需求规格说明书往往面向设计、开发人员。  (二)生成阶段不同:  一般先有需求分析
  • 软件工程各阶段的评审内容

    千次阅读 2015-01-17 17:53:49
    软件工程各阶段的评审内容如下表: 评审点 评审人员 评审文档 ...需求调研评审 ...(初步)需求规格说明书  (初步)项目开发计划   用户需求调研的完备性 (关键需求点及潜在需求点)
  • 1、用户需求说明书是用户的需求,需要和用户确认的;需求规格说明书是系统需求主要是对内的。你考虑了一个对外一个对内。而且需求管理的时候也需要用到用户需求   2、  优点:用户的语言与设计人员的语言是不同的...
  • 软件工程业务需求分析说明书 http://wenku.baidu.com/view/50bcb70abb68a98271fefa44.html
  • 软件需求规格说明书格式

    千次阅读 2018-07-26 12:56:38
    文档介绍 1、文档目的 2、文档范围 3、读者对象 4、参考文档 ...5、术语与缩写解释 ... 产品的功能性需求 ...2、功能性需求分类 ...4、用户(功能需求) ...产品的非功能性需求 ...1、用户界面需求 ...2、性能需求...
  • 导致软件缺陷的最大原因是软件需求规格说明书。 因为软件缺陷产生的原因有很多,典型的原因如下: 软件本身的复杂性开发人员的问题需求的变化进度的压力对文档不重视沟通不畅偏差的累积 各种来源导致缺陷会...
  • 多少人知道需求规格说明书是什么

    千次阅读 2015-08-15 17:28:42
    写在前面如果你明确清晰知道需求规格说明书是什么,则可以忽略此文章。如果你不清晰,建议还是阅读一下本文,不然也许早晚会碰钉子。转载请标明出处: http://blog.csdn.net/ouyida3/article/details/46045261 ...
  • 工作范围说明书需求规格说明书

    千次阅读 2012-07-18 21:42:13
    在做项目的过程中,经常在说工作范围说明书与需求说明书,但是这两者的区别与作用是什么呢? 首先,工作范围说明书简单地说,就是对项目干系人有约束作用的、为了说明项目工作范围的说明文件。项目工作的范围就是指...
  • 在产品研发过程中,《需求文档》与《需求分析报告》以及《需求规格说明书》是产品研发的辅助文档,必不可少。遗憾的是不但外行人傻傻分不清,有时候相关从业者乃至被神化了的产品经理也是分不清楚。是什么导致了分歧...
1 2 3 4 5 ... 20
收藏数 185,810
精华内容 74,324
关键字:

需求说明书