需求规格说明书样本样本文档格式.docx
- 文档编号:16340038
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:28
- 大小:617.69KB
需求规格说明书样本样本文档格式.docx
《需求规格说明书样本样本文档格式.docx》由会员分享,可在线阅读,更多相关《需求规格说明书样本样本文档格式.docx(28页珍藏版)》请在冰豆网上搜索。
5.性能需求……………………………………………………………………………………..20
5.1数据精准度…………………………………………………………………………..21
5.2时间特性……………………………………………………………………………..21
5.3适应性………………………………………………………………………………..21
6.其它需求…………………………………………………………………………………….21
6.1数据管理能力要求…………………………………………………………………..21
6.2假定约束………………………………………………………………………………23
7.数据描述………………………………………………………………………………………..24
7.1静态数据…………………………………………………………………………………24
7.2动态数据…………………………………………………………………………………25
7.3数据库介绍………………………………………………………………………………25
7.4数据词典…………………………………………………………………………………26
7.5数据采集…………………………………………………………………………………27
8.[附件]软件功能简表……………………………………………………………………………28
1.引言
1.1编写目的
本说明书将对用户使用软件流程、对软件要实现的主要功能、性能等需求进行全面的阐述,以便帮助用户判断所要开发的软件是否符合她们的要求。
该说明书将在软件开发目标和需求方面为用户和开发者之间创立一个共同的基础和共识。
为明确软件需求、安排项目规划与进度、组织软件开发与测试,故撰写本文档。
本文档供项目经理、设计人员、开发人员参考。
1.2项目背景
作为21世纪的计算机学科人才,不但需要学好书本知识,还要能学以致用。
为了更好的锻炼自己的实干能力,我们需要一次磨炼自己的机会来提高自己的竞争机遇。
另外,虽然现在有很多软件都能够处理流程图制作,但由于商业化的原因,很多都是收费软件。
或者是插入许多小广告等。
这些显得很不专业,也不是完全从用户的角度考虑。
因此,我们小组想开发一个专业的流程图制作软件,使用户体验到专业的服务水准。
1.2.1、项目由来
1.软件名称:
filestreamedition
2.开发小组:
黑匣子[blackbox]
3.用户:
任何对本软件有需要的人。
开发初始阶段只指开发团队内部成员。
1.2.2、编写内容
软件需求说明书的编制是为了使用户和软件开发者双方对软件的初始规定有一个共同的理解,使之成为整个软件开发工作的基础。
这儿,我们更多的是站在用户的角度来理解这个需求的。
该说明书的主要内容如下:
1.项目背景
2.需求规定
3.运行环境规定
1.2.3、预期读者
1.广大的用户群:
使她们了解想要获得什么样的功能和性能的软件;
2.软件开发者:
使她们知道用户的需求和用用户需要怎样的软件;
3.软件验收人员(各位指导老师):
提供一个切合实际的软件验收依据;
1.3定义
常见术语和缩略语
1.FSD:
filestreamedition,既是指本软件
2.用户:
现在只指软件开发小组成员
3.GUI+:
GraphicsUserInterface,即图形用户界面,也叫图形接口。
4.MFC:
MicrosoftFoundationClasses
5.CIL:
是英文CommonIntermediateLanguage的简写。
CIL本质上其实就是.NET平台的母语
6.有模:
总是处于最上层的窗口叫做有模窗口
7.形状:
各种绘图的基本元素,如直线、矩形,以及由基本元素构成的具有特定意义的图形,如进程、判定等。
8.图形模板:
系统中将各不同类型和不同应用的图形加以整理分类,形成一系列图形组合以适应各类不同需求,这些组合称为图形模板。
1.4参考资料
1.《用户需求面谈总结》(见附件);
2.《流程图可行性分析报告》
3.《计算机软件需求说明编制指南》——GB—9385—88;
4.《计算机软件产品开发文件编制指南》——GB—8567—88;
5.《如何写软件需求说明书》
6.《流程图编辑器功能要求》(选题要求说明)
2.任务概述
2.1待开发软件的一般描述
流程图绘制软件是图表作为一种简洁、方便、易于理解的辅助表示方式,在各个领域都有着普遍的使用,很多场合,图表的表示能力远远超越了文字。
另一方面,由于人对直观所见的理解力强于阅读的理解力,因此人们总是乐于看一张简单的图表,而不是一段冗长的文字。
市场调研员的分析报告、软件工程师的设计方案、教师的讲义、网络建设方案、公司的工作流程等等,这些都需要大量的图表来强化其意图说明的问题。
2.1.1、任务目标
本任务旨在开发出一个小巧的绿色的流程图编辑软件、使广大用户能够很方便的制作出自己需要的流程图。
软件设计中尽可能人性化。
本软件是一个独立开发软件,全部内容自含,功能简单、但很全面。
2.1.2任务时间安排
由于技术方面的问题,本软件最终实现的功能和说明中的功能可能有些出入,但基本的要求功能一定能够满足。
大概时间规划如下:
第一周:
需求分析、文档资料检索、可行性分析的完成
第二周:
对第一周的工作进行完善的同时,开始软件的概要设计和详细设计。
查阅相关资料
第三周:
完善设计内容,主要是系统总体架构设计、数据结构设计、模块设计、接口设计、输入输出格式设计,窗体界面设计等。
开始基础的接口编码和图形制作
暑假:
完成软件的编码工作,提交初步的可使用软件。
并进行基础功能测试。
如果进展顺利的话,能够进行软件的升级。
最后三周:
进一步的软件测试以及对软件功能的进一步完善。
2.2待开发软件的功能
系统提供了一套完备的流程图绘制方案,极大的提高了流程图的制作效率和流程图的质量。
1、常见图形库
软件支持标准的流程图图形,能满足用户最基本的要求。
2、无限可扩充性
提供了一套完备图形和图形库的扩充机制,经过这个机制软件设计者能很轻松的对图形和图形库进行扩充,以满足新的需要。
3、操作方式体贴入微
所有的操作方式与现有的绘图、文档编辑软件的操作方式相似,而且都使用鼠标图形提示,使得用户操作得心应手。
图形的通用操作有平移、拉伸、连接等等,使得图表制作异常简单。
4、方便的文字添加功能
在画布的任何地方,用户均能够添加文字进行说明。
5、与其它通用软件的兼容
本软件具有良好的兼容性,支持将最终生成的图片插入到Word、Excel等图像显示或处理软件中。
2.3用户特征
本软件的最终用户为各行各业需要制作流程图的人员或者是对流程图制作有兴趣的人员。
由于软件功能有限,故仅限于教师、学生学习使用以及非盈利性的开发研究。
在使用本软件前对本软件说明书进行了仔细的阅读。
2.4运行环境
操作系统:
简体中文版WindowsXP/Vista/Seven(其它均未测试未测试),屏幕分辨率1024x768像素。
最低配置:
CPU:
奔腾550以上
内存:
64MB
显示卡:
标准16位VGA
驱动器:
8倍速CD-ROM以上
硬盘空间:
30MB及以上
其它设备:
鼠标
2.5条件与限制
1、开发环境
由于UI界面界面是用C++的CIL开发出来的,最终的软件将架构在.NETFramework3.5的基础上。
开发环境最终定位Win32+.NET
2、开发工具
使用最新中文版的VisualStudio,软件界面使用CIL,其它核心部分由C++语言编写
3.功能需求
3.1功能划分
主要的功能模块:
UI用户界面,控制模块,图形模块,文件系统模块,图形显示模块,输出保存模块。
关系图如下:
文件系统:
打开、存储.hxz文件;
直接存储.jpg/.svg文件
实用工具:
用户操作的撤销、恢复,图形、文字、连线等的添加、删除,图元间的连接与反向。
输出类型:
软件支持FileStreamEdition的.hxz格式,以及输出.png,.svg格式图片。
软件的总体功能用UML图形表示如下:
3.2功能描述
3.2.1、用户界面
用户界面是用来实现用户的输入以及有关信息的实时显示。
其设计以实用、美观、方便为主。
完成后的大致图形如下:
(其中图标还未更改)
软件在处理用户输入时,根据对应的事件来获取WM-message消息,然后传递到控制模块。
3.2.2、用户操作功能说明
新建工作:
打开文件:
保存与另存为:
撤消恢复:
删除:
连接:
连线翻转:
图形显示:
添加文字:
注:
如果在图元外,则生成单独类来保存文字信息;
如果是在图元内,则是由图元类来保存这些信息。
图形拖动:
编辑已有文字:
文件保存:
最优路径选择:
上面这个最有路劲选择算法是我们的1.0版算法,应该说缺陷很多,或者说有很多没考虑到。
经查阅资料,找到了一下常见算法公式:
发现其实比这个复杂多了。
。
4.外部接口需求
4.1用户界面
在对软件的操作过程中,接口由事件来完成。
主要的输入事件是对鼠标、键盘的操作产生的。
输出则为图形、文字的显示、以及其它一些相关参数的显示、错误提示等。
具体如下:
4.1.1、鼠标输入
在菜单栏和工具栏中,鼠标事件应该传输的是Mouse_Click事件。
例如:
鼠标点击Rect按钮,则相应调用事件处理函数
private:
System:
:
VoidRect_Click(System:
Object^sender,System:
EventArgs^e){
//调用矩形构造函数
}
(其中第一个参数是事件发生的控件,第二个是事件本身)
从而使内核构造一个矩形,并做好显示的准备。
在工作区内,鼠标事件应该传递鼠标的坐标位置,以int型的[x,y]形式传递。
在上面的过程完成后,鼠标点击工作区某一点,则监控函数获得此时鼠标位置并将此点坐标[x,y]传递给矩形构造函数,由此确定矩形显示位置并将它显示出来。
4.1.2、键盘输入
键盘输入分为文字输入和快捷键输入。
首先用鼠标点击工具栏中的”文字输入”按钮,然后点击工作区某一点,这时能够在那个地方生成一个文本框。
这时候的输入就是纯文本的输入。
文本输入允许空格和回车。
而快捷键的输入则只有”delete”键了。
在本软件中,为了便于操作和符合用户习惯,因此设置”delete”这个快捷删除键来用于清除某一对象。
当然,经过鼠标的选择和点击删除按钮也是能够实现此功能。
4.1.3、其它相关输入
在某些情况下,需要用户拖动控件来选择数值,例如选择字体大小等。
这些都是在规定数值中选择一个。
类似输入应该传递选中的项目,能够是数字,也能够是文字、符号等。
4.1.4、输出
编辑时输出为图形、文字的显示,必须是约束在工作区内的。
在软件右下角部位,设计有一个输出框,用来输出鼠标在工作区中的实时坐标。
以”X:
111Y:
444”的格式动态显示坐标值。
在发生某些错误时,应当给予用户提示,既是错误提示输出。
这种一般都是采用有模的消息框形式。
只有在用户点击确定按钮取消了当前操作的情况下才能继续操作。
成品输出主要是保存为三种文件的格式即.hxz/.png/.svg。
其中.hxz需要保存的是当前工作区的状态量,经过前面举例的语法或类似结构能够实现。
.png和.svg是成熟的位图格式和成熟的矢量图形格式,保存的实现与她们各自的文件构成有关。
4.2硬件接口
硬件接口主要分为用户的输入(鼠标和键盘),及图形的显示(与显示器的接口)。
在CIL中封装有专门的接口处理函数。
4.3软件接口
由于我们小组准备利用visualstudioC++来开发这个软件,程序的核心部分使用C++编写,窗口界面使用CIL开发。
因此,本软件能够在WindowsXP、WindowsVista、WindowsSeven等系统上运行。
可是不能在Linux系统下运行。
在软件暂存文件.hxz保存格式上,采用图形名、坐标、以及一些相应自定义的语法来保存。
例如
linetoRect[x1,y1][x2,y2]Rho[x3,y3][x4,y4]
表示:
矩形指向菱形间的连线。
[具体语法及格式有待进一步的分析、设计]
经过类似的语法,能够很好地将图片信息保存下来。
当然,其它信息有待进一步补充。
由于这种格式能够用文本打开,且便于读取和书写。
这样就能够在熟悉语法的情况下直接经过文原来编写流程图、然后用本软件打开、转化为相应格式的图片文件。
这样会显得很方便
另外,软件能够将流程图导出为.jpg,.svg两种格式。
这些都是能够跨平台使用的已经很成熟的文件格式。
故能够将这些输出文件应用到很广的领域。
4.4故障处理
软件的平均无故障时间应>
=1000小时。
软件打开阶段,如果.hxz文件中的数据已经破坏或者路径不对,这时候的预读以及初始化可能会造成崩溃性的错误。
这种情况下需要软件能正确识别并给出错误提示。
在画图中过多无序的操作也很可能给软件造成一定的故障,一般这种情况是不能完全避免的,只能靠用户仔细阅读说明手册,然后按照手册进行有规则的操作。
这样才能尽量减少不必要的麻烦。
总之,软件故障是不可能完全消除的,我们只能是尽可能的避免它。
软件在设计时应尽可能的考虑到异常,提供出错处理。
即使出错也应该能够恢复用户的工作内容。
5.性能需求
5.1数据精确度
本软件核心部分是对图形对象的坐标点值进行操作,为了便于图形显示、后期用户的编辑以及软件自身的需求,所有坐标点x、y值均以int型来表示。
这对最终形成的流程图形象不是很大。
其它数据暂不做规定。
5.2时间特性
正常情况下,在工作区的绘图、连线、插字、编辑等操作的软件响应时间都应不超过一秒。
在软件初始化及最终的文件保存也应尽可能在两秒内完成。
5.3适应性
由于软件还处在开发起步阶段,刚开始只能实现一些基本的功能。
因此,后期的改进就显得十分重要。
即在后期升级中,能够更改用户界面的空间及其它元素,能够在核心代码中添加其它软件功能。
由于软件框体开发语言是由.NETFramework提供的,因此软件只能在支持.NET的平台上运行(一般就是指Windows平台)。
如果希望软件在所有的Windows平台上都能够运行(即计划要求改变时),只需要做一点点的工作就能进行平台的切换。
6.其它需求
6.1、数据管理能力要求
理论来说,软件能够同时打开多个工作区间,即具有多任务模式。
在每个工作区间中,能够画出任意大小的流程图出来,既是有很强的数据处理能力。
当然,任务窗口越多、每个窗口中元素越多,软件的数据处理时间就相应的会越长。
为了减小工作区间的相互影响,缩短软件的响应时间,能够采用独立存储的模式。
用UML图形表示大致如下:
由于工作区内数据元素复杂,其具体存储模式还需另行设计,结果大致如下:
6.2、假定约束
系统的设计并没有具体的数据性约束,其限制主要来源于对图形的操作、图形的显示需符合人们的操作习惯和思维习惯。
能够分为两类:
操作约束和图形约束。
操作约束就是用户对图形操作时的约束,这些在图形的状态、大小、位置、角度、形状等方面有所体现:
1)用户对图形的拖拽不能超出当前文档页面。
2)用户在编辑对象文本时不能更改图形对象的大小、位置、外观等属性。
4)多选对象在移动时不发生连接对象的事件。
5)在用户选中某种工具时,其操作会有相应的限制。
另外还有些更为细微和具体的限制,如键盘操作的限制等不予列出。
图形约束是各类图形在不同状态(大小、角度等)下的显示和调整约束,用户可在使用中体会到。
1)每个图形对象在不同的大小下,其拉伸的变化模式有所不同。
3)线条对象不能参与图形区域操作。
4)矢量图形对象不能进行图像操作(如替换颜色、灰度)。
5)对象在拉伸操作时,若某方向的大小已经足够小便不再支持此方向上的单向拉伸操作。
6)文本对象和对象中的文本在对象拉伸到最小时,需将文本转换成单列或单行显示。
7)文本对象的变形不能丢失文本内容和文本格式。
8)排版操作中,线条对象不作为参照对象。
排版操作须考虑连接对象的更新。
9)连接线对象在不同连接状态时的多节点可调。
7.数据描述
7.1静态数据
静态数据是一些与用户操作无很大关联的信息。
例如文档名字,创立时间、画布大小、帮助信息、关于、免责声明等。
由于静态数据一般在用户开始工作时就能获得,且获得后调用更改很少。
因此,静态数据将存储在一个单独的区块里面。
工作区基本信息:
文档名称用户创立时间大小背景色。
未命名一。
。
帮助信息:
数据库中,帮助信息以表格形式存储。
功能
实现方法
添加文字
首先点击文字按钮,然后点击用户工作区
编辑文字
双击已添加的文字,系统会弹出一个文本框,更改即可
删除文字
选择文字,然后点击删除按钮或者点击快捷键”delete”
帮助信息最终将以网页的形式展现给用户。
关于、免责声明:
这些是一些文本字段,为了方便后期的更改和管理,关于和免责声明将以.text的文本形式存储(about.text和readme.text),当用户点击关于和免责声明按钮时,系统会自动读取文件并显示出来。
7.2动态数据
动态数据与系统的正常运行有直接关系。
用户操作步骤:
单行存储,在创立了数据库文件后,有新操作时添加命令条,撤销恢复根据需要进行命令条的操作:
^Start——>
commend1-----commend2------commend3-----commend4------commend5----
||
NowCom
工作区信息:
图元(名称)关系一关系二关系三关系四关系五。
RECT1Circle1TECT4
Circle1TECT4
TEXT1
工作区信息主要是存储的图元之间的关系,每个图元的类型、位置、大小等具体信息可根据其名称在实例对象中查找到。
鼠标坐标及系统状态显示:
这些数据由系统动态赋值,一般由控件来存储,状态控件默认值为”按F1键获得帮助”,当系统自动进行某些后台操作时显示提示。
鼠标坐标起始默认值为[0,0],当鼠标到达工作区后开始实时更改。
当鼠标再次滑出工作区时,显示停格在最后一个工作区坐标上。
7.3数据库介绍
数据库文件由SQLsever组建,系统工作中需要的数据库大概如下:
Workspace:
工作区基本信息
HelpInformation:
帮助信息的数据表格形式
About:
关于信息,大部分为文本文字,但也可能有一些表格
Disclaimer:
免责声明信息,文档为主。
Operations:
操作步骤
Primitive:
工作区图元关系信息。
7.4数据词典
数据流条目:
数据流名称
用户输入信息
别名
无
简述
用户在打开、保存对话框中进行的操作结果信息
来源
用户
去向
系统控制模块
数据流量
无定向
组成
文件名+类型+路径
图形信息
图元
由用户点击按钮及点击工作区后产生
按钮及鼠标
图形显示模块
数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 需求 规格 说明书 样本