第一篇:软件工程--需求分析报告
文档名称:需求分析
项目名称:学生智能管理系统一、引言:
1、编写目的:
对庞大的信息随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增长。有必要开发学生信息管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量,同时也可以方便学生对信息的获取。
学生信息系统也是实现学校管理现代化和信息化的重要内容。因此,学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段,并且,面对学生生活的不断丰富化,各种小方面管理软件的泛滥,身为学生以及考虑学校本身管理的多方面的统一。本小
组所开发系统是基于C/S结构,使用 Visual Basic程序设计语言及SQLServer2000数据库进行设计与开发。
本系统针对软件界面的人性化,生活化,做了突破性的工作,以及多项管理功能的集成上作了初步的拓展,目的在于使管理者和访问者易于甚至乐于接受,并提出学校管理系统的一体化概念,使学校的管理更有效率。
2、定义:
(1)静态数据:系统内部有关的数据结构和操作规程
(2)动态数据 :程序运行时输入和输出的数据
(3)数据字典: 数据字典(DD,Data Dictionary)是关于数据流
程图中出现的所有名字(数据流、处理、数据存储)的定义的集合。
3、参考资料:
[1]张向宏.软件生命周期质量保证与测试.北京:电子工业出版
社.2009 [2]张海藩.软件工程导论.北京:清华大学出版社.2005 [3]张焕君.基于VB和SQL的数据库编程技术.北京:清华大学出版
社.2008
二:任务概述:
1、目标:(1)给出软件系统的数据流程图和数据结构。
(2)提出详细的功能说明,确定设计限定条件,规定性能需求。
(3)密切与用户的联系,使用户明确自己的任务,以便实现上述两项
目标。
(4)以最低的成本,在最短的期限内开发出具有管理学生和学生信息
功能的智能管理系统。(包括:人力与设备费用的节省;处理速
度的提高;人员工作效率的提高)
2、用户特点:
本系统所面向的用户是大学学生和教师,对用户计算机专业方面的知识要求不是很高,只要对电脑能熟练操作就ok。易于操作,这也是本软件设计的一大目标。
3、条件与限制:
(1)建议该系统运行的最短寿命为5年;
(2)进行该系统方案选择比较的期限为2个月;
(3)建议该系统软件投入使用的最迟时间为2009年12月20日;
(4)该系统要受资金、寿命、社会等系列因素的制约和限制。
(5)由于系统较小,且在Windows系统开发,故在Windows环境下运
行没有什么限制。
三:数据描述:
1、静态数据:
静态数据是系统内部有关的数据结构和操作规程。具体包括:系统用户表格、学生基本信息表格、班级信息表格、课程基本信息表格、年级课程设置信息表格、学生成绩信息表格……
2、动态数据:
动态数据包括程序运行时输入和输出的数据,具体是数据库的各个表的各个不同元素与属性值,就是学生信息。
3、数据描述:
根据上面的分析就可以设计出能够满足用户需求的各种数据实体,以及它们之间的关系,为后面的逻辑结构设计打下基础,这些实体包括各种具体信息,通过相互之间的作用形成数据的流动。
本系统的实体有:学生实体、课程实体、日常工作实体、教师实体。各个实体具体的描述E_R图如下:
日常安排活动通知系内工作姓名性别督办日常工作执行成绩日常记录档案联系教师教学生学证件课程部门教师任课表(学期)课程安排表(学期)教学进度安排表专业核心课程个学期周数分配表
4、数据字典:
(1)数据流条目——数据流条目给出某个数据流和定义,它通常是列 出该数据流的各组数据元素。
该系统的数据流条目: 数据流名:学生
别名 :无
组成 :学号+姓名+性别+个人电话+家庭电话+籍贯+系别+ 年级+班级+备注 数据流名:教师 别名 :无
组成 :证件号码+姓名+性别+个人电话+系别 数据流名:课程信息 别名 :无
组成 :课程编号+课程名称+课程类型+任课老师+上课时间+课
时+学分
数据流名:学生成绩信息
别名 :无
组成 :考试编号+学生学号+学生成绩
数据流名:学生课余活动信息
别名 :无
组成 :活动编号+活动名称+活动时间+活动类型+参 与院系
(2)数据存储条目—— 对数据存储的定义
文件名:学生记录
别名 :学生信息
简述 :存放所有学生信息
组成 :学生信息文件={学生基本信息记录}+{学生成绩记录}+{学生 课余活动信息记录}+{学生课程信息记录} 组织:按学生学号编排
存取要求:关键字是:学生学号+课程号+活动编号
查询要求:要求能立即查询
文件名:教师记录
别名:教师信息
简述:存放所有的教师信息
组成:教师信息文件={教师基本信息记录}
组织:按教师证件号编排
存取要求:关键字是:教师证件号
查询要求:要求能立即查询
(3)数据项条目——给出某个数据单项的定义,通常是数据项值类型。
数据项名:学生学号
别名:无
取值:8{数字}8 注释:无
数据项名:年级
别名:无
取值:〔F|M|J|S〕 F-freshmen, 一年级
M-sophomore,二年级
J-junjor, 三年级
S-senior, 四年级
注释:F,M,J,S可分别用1,2,3,4代替 数据项名:系和班级编号 别名:无 取值:8{数字}8 注释:无
数据项名:课程编号 别名:无 取值:8{数字}8 注释:无
数据项名:活动编号 别名:无 取值:6{数字}6 注释:无
数据项名:考试编号 别名:无 取值:8{数字}8 注释:无
数据项名:教师证号 别名:无
取值:11{数字}11 注释:无
(4)处理说明条目——给出数据流程图中不分解的变换处理说明定义。
处理名:查阅学生信息库
激发条件:接受到有效用户名和密码
优先级:普通
输入:用户名和密码
输出:学生信息
加工逻辑:根据学生信息库记录 IF输入用户名和密码有效 THEN显示学生信息
ELSE请重新输入(最多三次)ENDIF
(5)数据流图
输入用户名和密码分析用户类型输入用户类型分析用户名有效和密码用密户名码和注册用户名和修改密码用户显示结果学生信息添加及删除反馈给用户系统界面输入有效命令修改用户名及密码学生添删密码修改用户注册表处理命令学生选课选课密码修改学生信息表存储修改信息修改学生课程表学生成绩及信息查询查询密码
5、数据采集:
系统数据采集是由数据库系统在软件运行期间通过人机界面来提示用户输入的。
四:需求规定:
1、功能需求:(1)对功能的规定
1)学生管理功能: a、修改当前登录用户的密码。
b、可以浏览,查看,搜索页面信息。
2)教师管理功能: a、教师可以在线浏览,查看,搜索各类页面。
b、可以在线添加、删除、修改学生各种信息。c、可以在线通知学生各种消息。3)管理员管理功能:a、可以进行学生资料录入
b、可以对学生信息查询、修改、删除、添加。
(2)功能描述:
1)登录功能:验证登录用户是否为数据库中的合法用户,判断登陆的用户是一般学生还是教师。一般学生只能实现浏览,查看,搜
索功能;教师可以查看、修改、添加、删除学生某方面的信息。管理员可以对用户信息进行修改。
2)主界面功能:可以浏览学生各方面的信息,还可以进入登陆页面,可以查找某个学生信息。
3)用户管理功能:管理员(即超级用户)可以添加新的用户以及修
改当前登录用户的密码。也可实现登录用户的重新登录和退出,可以修改学生信息。一般学生则可以浏览,搜索,查看各种信息。
2、性能需求:(1)对性能的规定
1)精度:查询时应保证查询率,所有在相应域中包含查询关键字的 记录都应能查到,同时保证准确率。
2)时间特性要求:一般操作的响应时间应在1-2秒内。
3)适应性:满足运行环境在允许操作系统之间的安全转换和与其它
应用软件的独立运行要求。
4)灵活性:在需求发生变化时,本系统的对这些变化的适应能力相
对而言是比较强的,包括操作方式上的变化;运行环境 的变化;同其他软件的接口的变化;精度和有效时限的变化。(2)功能结构图
学生智能管理系统行政楼3#实验楼图书馆教学楼大学生活动中心邮局师生互动教务处电信系办公室电信系辅导员办公室
3、运行需求:(1)用户界面
系统运行时主界面大致要求为Windows的经典运行界面,主界面可以是SDI(单文档界面)即每个窗体之间是独立的,也可以是MDI(多文档界面):有一个主窗,可以包含其他窗体。本系统采用多文档界面,这样可以使程序更加美观,整齐有序。(2)硬件接口
软件较小除硬盘外,还有DVD光驱,打印机等。(3)软件接口
在这里主要考虑软件与操作系统的接口,考虑到文档处理的需要有可能可以包括与较常用的办公软件的接口。
(4)开发环境
操作系统: WindowsXP或更高
数据库类型:SQL Server 2000 CPU:P2000mmx以上,内存大于64M。
需要建立WEB服务器
(5)故障处理
在用户的输入有错误的情况下,对于用户的输入错误应给出适当的改正提示。若运行时遇到不可恢复的系统错误,也必须保证数据库
完好无损。
4、界面需求:
(1)登录界面:验证登录用户是否为数据库中的合法用户,选择登录的用户是一般学生还是教师。一般学生只能实现浏览,查看,搜
索功能;教师可以查看、修改、添加、删除学生某方面的信息。管理员可以对用户信息进行修改。
(2)主界面:可以浏览用户各方面的信息,还可以进入登录页面,可以查找某个学生信息。
(3)注册界面:用户可以在主界面上选择注册,进入注册界面,填写用户基本信息(名字、班级、年级……)。
5、其他需求:
(1)安全保密:增加用户登录验证,确保信息安全性。(2)可移植性:软件能够安装于windows下的各种流行版本。
第二篇:软件工程实训 需求分析报告
《软件工程》 需求分析报告
报告名称专业 班级 学号 姓名 指导教师
基于JSP的图书馆管理系统的设计与实现
软件技术
1.引言
随着计算机技术的不断应用和提高,计算机已经深入到社会生活的各个角落,计算机软件也在各方面得到广泛的应用。但是,很多图书馆仍采用手工管理图书的方法,不仅效率低、易出错、手续繁琐,而且耗费大量的人力。为了满足图书馆管理人员对图书馆书籍,读者资料,借还书等进行高效的管理,并结合我院图书馆管理现状,在工作人员具备一定的计算机操作能力的前提下,特编此图书管理系统软件以提高图书馆的管理效率。1.1 编写目的
本需求的编写是为了研究图书管理系统软件的开发途径和应用方法。同时它也是进行项目策划、概要设计和详细设计的基础,是维护人员进行内部维护,信息更新,验收和测试的依据。1.2 预期的读者和阅读建议
本需求的预期读者是我院图书馆管理员,部分学员,与图书管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,软件验证者。1.3 背景及范围
本项目的名称:图书馆管理系统开发软件。
本项目的任务提出者及开发者是图书管理系统软件开发小组,用户是学院图书馆及相关读者。
本产品是针对电脑管理图书的需求设计的,主要包括管理员管理模块和学员自助服务模块。其中,管理员管理模块可以完成读者登记、购入新书、图书检索、读者借还书、图书注销等主要功能,学员自助服务模块可以完成学员电子阅读,图书检索功能。1.4 参考资料
1.《软件工程》 ——赛煜、刘文编著东软电子出版社
2.《数据库系统概论》 ——萨师煊、王珊 编著高等教育出版社 3.《JSP项目开发》 ——萨师煊 陈丹丹、高飞 编著清华大学出版社 2.综合描述
为方便对图书馆书籍,读者资料,借还书等进行高效的管理,特编写该程 序以提高图书馆的管理效率。使用该程序后,图书馆管理人员可以管理读者的登记,图书的购入、借出、归还以及注销等;还可以查询某位读者、某本图书的借阅情况,对当前借阅情况给出一些统计,给出统计表格,以全面掌握图书的情况。在学校图书馆内部的现有局域网这个网络环境下,信息由各用户在规定的权限下在各自的工作站上录入,信息上网后各用户可查询,调用,达到信息共享。2.1 产品的前景
图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。本系统通过强大的计算机技术给图书管理人员和读者借、还书带来便利。本系统除了图书馆内管理的一般功能还外,还包括网上在线查询图书信息、查询本人的借阅情况和续借等功能。系统的功能相对比较完善,根据以后不同的需要,还要对系统进行更新。
2.2产品的功能
(1)读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注。
(2)书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。
(3)借书信息制定、输入、修改、查询,包括书籍编号、读者编号、借书日期、借书期限、备注。
(4)还书信息制定、输入、修改、查询,包括书籍编号、读者编号、还书日期、还书期限、备注。
(5)有条件、多条件查询各种信息.2.3用户类和特征
本系统的最终用户为管理员(图书管理员和其它管理人员),他们可以删除图书信息、删除或增加学生信息,可以查看读者的借阅信息。他们都具有一定的计算机应用基础,可以比较熟练操作计算机; 运行环境 1)硬件环境 服务器
(1)处理器(CPU):双核,Intel奔腾D或AMD速龙64X2以上
(2)内存容量(RAM):1G以上
客户端
(1)处理器(CPU):双核,Intel奔腾D或AMD速龙64X2以上
(2)内存容量(RAM):1G以上 2)软件环境 数据库服务器端(1)操作系统:Windows7(2)数据库管理系统:MySql,配置TCP/IP协议 Web服务器端
(1)操作系统:Windows7(2)Internet 信息服务(IIS)6.0管理器 客户端
(1)操作系统:Windows 7(2)Web浏览器:Internet Explorer 5.0以上,配置TCP/IP协议
2.4 设计与实现上的限制
开发时间比较紧,机器限制,开发人员的经验少,是开发系统中主要的问题。开发经费不到位,管理不完善,设计时没能全得到考虑,都会影响本项目的开发进程 3.功能需求 3.1 需求规定
在图书管理系统中,管理员要为每个读者建立借阅账户,并給读者发放不同类别的借阅卡(借阅卡可提供卡号、读者姓名),账户内存储读者的个人信息和借阅记录信息。持有借阅卡的读者可以通过管理员(作为读者的代理人与系统交互)借阅、归还图书,不同类别的读者可借阅图书的范围、数量和期限不同,可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。借阅图书时,先输入读者的借阅卡号,系统验证借阅卡的有效性和读者是否可继续借阅图书,有效则显示读者的基本信息,供管理员人工核对。然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息,供管理员人工核对。最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。归还图书时,输入读者借阅卡号和图书号(或丢失标记号),系统验证是否有此借阅纪录以及是否超期借阅,无则提示,有则显示读者和图书的基本信息供管理员人工审核。如果有超期借阅或丢失情况,先转入过期罚款或图书丢失处理。然后提交还书请求,系统接受后删除借阅纪录,并登记并修改可借阅图书的数量。
图书管理员定期或不定期对图书信息进行入库、修改、删除等图书信息管理以及注销(不外借),包括图书类别和出版社管理。3.2 功能分类如图1
系统信息参数设置图书馆信息基础信息管理书架设置管理员设置图书词库设置购入新书图书馆管理系统系统登陆图书管理图书注销学生借书学生管理学生还书图书信息查询查询子系统学生信息查询
图1
3.3 具体需求 系统的总体图见图2 图书馆管理人员用户名和密码登陆信息验证输入管理请求数据处理管理请求显示数据显示器密码错误信息当前日期管理员表系统时钟当前日期处理查询请求数据查询结果图2
第一层图:
(1)登陆子系统如图3 图书馆管理人员用户名和密码密码验证用户名验证权限显示器登陆错误信息权限显示管理员表显示可用的控件和界面图3管理员登录
(2)查询模块
查询读者信息及其借书情况如图4 图书馆管理输入学生查询关键字学生信息查人员询学生信息学生文件借书文件显示器输入图书查询关键字图书目录文件图书信息查询图书信息图4查询读者信息及其借书情况
第二层图:
(1)处理新书购入(如图5)
规格说明
输入新书的全部信息。 引言
为了输入新书的全部信息(包括:分类目录号,流水号书名,作者,内容摘要,价格和购书日期等)。
输入
新书的全部信息。 处理
通过图书管理系统写入图书目录文件。 输出
新书的全部信息。
图5输入新书全部信息
(2)处理学生借书(如图6)
规格说明
查询读者借书的相关信息。 引言
为了查询读者借书的相关信息。 输入
借书信息的关键字。 处理
利用关键字在借书文件中找到此流水号图书的相关信息。 输出 借书相关信息。
罚款单学生文件非法学生信息图书馆管理输入学生字段检查学生欠人员费情况欠款超额,拒绝借书显示器接受借书,输入图书信息借书成功系统时钟当前日期更新数据库借书文件图6 查询读者借书
(3)处理学生还书(图7)
规格说明 输入读者还书信息。 引言
为了把读者还书的相关信息(包括:图书分类号,流水号,读者号,借阅日期和还书日期等)写入还书文件中。
输入 读者还书信息。 处理
通过图书管理系统写入还书文件中。 输出
读者还书信息的全部内容。图书馆管理人员输入图书字段根据图书字段查找数据库借书信息和学生信息计算欠款结果还书成功借书文件当前日期系统时钟学生文件图书目录文件 欠款金额显示器罚款单图7输入读者还书信息表
(4)处理图书注销(如图8)
规格说明
注销图书的相关内容。 引言
为了注销图书的相关信息。 输入
图书信息的关键字(图书分类号或书名)。 处理
利用关键字在图书目录文件中找到此图书分类号或书名图书的相 关信息
输出
图书的注销信息。
图书馆管理人根据图书字输入注销图书字段员段,查找数据库修改操作操作验证非法操作图书目录文件输入修改信息系统时钟当前日期保存修改记录注销成功显示器图8 注销图书
(5)处理学生信息查询(如图9) 规格说明
读者登记,即读者的具体信息。 引言
为了把读者的具体信息(包括:读者编号,姓名,学院,专业,年级等)写入读者目录文件中。
输入 读者具体信息。 处理
通过图书管理系统写入读者目录文件中。 输出 读者具体信息。
图书馆管理确定查询类输入查找字段查找字段,关键字查找数据库人员型及字段查询结果显示器学生文件借书文件图9读者登记
(6)处理图书信息查询(图10)
规格说明
查询图书的相关内容。 引言
为了查找图书的相关信息。 输入
图书信息的关键字(图书分类号或书名)。 处理
利用关键字在图书目录文件中找到此图书分类号或书名图书的相关信息。 输出
图书的相关信息。图书馆管理人确定查询类型输入查询关键字查询字段及关键字查找数据库员及字段查询结果显示器借书文件图书目录文件图10 查询图书
4.非功能需求 4.1性能需求 1)精度需求
在精度需求上,根据使用需求,在各项数据的输入,输出及传输过程中,可以满足各种精度的需求。
2)时间需求
在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。3)灵活性
当用户需求,如操作方式,运行环境,结果精度,数据结构与其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。
4)故障处理
内部故障处理:在开发阶段可以随即修改数据库里的相应内容。
外部故障:对编辑的程序进行重装载时,第一次装载认为错,修改。第二次运行,在需求调用时出错,有错误提示,重试。4.2 属性 1)保密性
本软件作为教学管理辅助设备,它的规模比较小,不需要保密技术,先顶一个程序中某些区域的规约,给不同的模块分配不同的功能。
2)可维护性
本软件的组成程序组构较为简单,直观意义上较独立。因此,给予电子化的所构成的硬件的简单可维护的特点,决定了该软件的简单。他与文件系统的 4.3 其他需求 1)数据库
数据库是实现有组织的,动态的存储大量关联数据,方便多用户访问的计算机软硬自愿组成的系统。他与文件系统的重要区别时数据的充分共享,交叉访问,与应用程序的高度独立性。
由于本软件的整体结构比较简单,所涉及的数据相对来说也比较少,组成文件的最小单位是记录。
2)操作
a.初始化操作 b.数据处理的功能较强 c.后援和恢复操作
第三篇:软件工程教学 第四章 需求分析(推荐)
软件需求 需求工程 分析建模 需求管理 本章小结 学习目标
本章介绍需求分析的意义概念和方法了解结构化分析方法和需求管理的关键活动要求学会运用实体关系图数据流图和状态控制图进行结构化分析建模能够编写软件需求规格说明 学习方法
正确理解需求工程涉及的基本概念结合具体实例运用结构化分析技术从而达到理论学习及在实际项目中应用的目的 难重点
本章的学习重点在于理解软件需求的概念和重要性熟悉需求开发和需求管理的基本思想和主要活动掌握结构化的分析方法难点是怎样在实际的软件项目中灵活运用这些思想和方法 课前思考 软件需求存在什么问题 什么是软件需求 什么是需求工程 常见的需求分析方法是什么 需求分析的结果可以验证吗 需求规格说明有什么质量要求
本节知识点 软件需求的定义 需求的层次 导致需求缺陷的原因
随着计算机技术的飞速发展软件已经成为人们生活中不可缺少的一部分人们在使用软件的过程中常常会抱怨它无法执行某些基本操作但对于软件开发人员而言用户不断提出新的要求是一件多么烦人的事
其实在软件开发过程中遇到的许多问题都是由于收集编写协商修改软件需求过程中的失误带来的诸如信息收集不全功能不明确交流不充分文档不完善需求发生变化等可以这样说软件项目中百分之四十至百分之六十的问题都是在需求分析阶段埋下的“祸根”
开发软件系统最为困难的部分就是准确说明开发什么最为困难的概念性工作便是编写详细的技术需求包括所有面向用户面向机器和其它软件系统的接口
IEEE软件工程标准词汇表将需求定义为
1用户解决问题或达到目标所需的条件或能力
2系统或系统部件要满足合同标准规范或其它正式规定文档所需具有的条件或能力
3一种反映上面1或2所描述的条件或能力的文档说明
下面列出其他几种关于需求的定义 需求是用户所需要的并能触发一个程序或系统开发工作的说明 需求是从系统外部能发现系统所具有的满足于用户的特点功能及属性等 需求是指明必须实现什么的规格说明它描述了系统的行为特性或属性是在开发过程中对系统的约束
软件需求包括四个不同的层次即业务需求用户需求和功能需求另外还有非功能需求
软件需求各组成部分之间的关系如下图所示
业务需求 反映了组织机构或客户对系统或产品高层次的目标要求它们在项目视图与范围文档中予以说明
用户需求
描述了用户使用产品必须要完成的任务可以在用例模型或方案脚本中予以说明
功能需求
定义了开发人员必须实现的软件功能使得用户能完成他们的任务从而满足了业务需求 非功能需求
是从各个角度对系统的约束和限制反映了应用对软件系统质量和特性的额外要求
非功能需求包括过程需求产品需求和外部需求三类其中过程需求有交付实现方法和标准等需求产品需求包含性能可用性实用性可靠性可移植性安全保密性容错性等方面的需求外部需求有法规成本操作性等需求
需求工程中的缺陷将给项目的成功带来极大风险导致缺陷的原因主要包括以下方面 缺乏足够的用户参与
客户经常不明白为什么收集需求和确保需求质量需花费那么多功夫开发人员可能也不重视用户的参与究其原因一是因为与用户合作不如编写代码有意思二是因为开发人员觉得已经明白用户的需求了在某些情况下与实际使用产品的用户直接接触很困难而客户也不太明白自己的真正需求然而在项目的早期让具有代表性的用户直接参与到开发队伍中并一同经历整个开发过程很重要
用户需求不断增加
在开发过程中用户需求经常发生变化但是不断的变更会使其整体结构越来越乱整个程序也难以理解和维护如果要减少需求变更的影响范围就必须在项目的开始对项目视图范围目标约束限制和成功标准给予明确说明并将此说明作为评价需求变更和新特性的参照框架
需求模棱两可
模棱两可是需求规格说明中最严重的问题它意味着不同的人对需求说明产生了不同的理解或者是同一个人能用不止一个方式来解释某项需求说明模棱两可的需求带来的后果便是返工--重做一些你认为已做好的事情返工会耗费开发总费用的40而70~85的重做是由于需求方面的错误引起的添加不必要的特性
有时候开发人员力图增加一些“用户欣赏”但需求规格说明中并未涉及的新功能然而常常是用户并不认为这些功能性很有用开发人员应当为客户构思方案并为他们提供一些具有创新意识的思路具体提供哪些功能要在客户的需要和允许时限内的技术可行性之间求得平衡
规格说明过于简单
客户往往不明白需求分析的重要性只是提供一份十分简略的规格说明仅涉及产品概念上的内容然后让开发人员在项目进展中去完善从而导致开发人员先建立产品结构再完成需求说明
忽略了用户分类
大多数产品是由不同的人使用其不同的特性使用频繁程度也有所差异使用者受教育程度和经验水平也不尽相同如果你不能在项目早期就针对所有这些主要用户进行分类的话必然导致有的用户对产品感到失望
总体来说导致需求缺陷的原因主要体现在三个方面 需求的沟通与理解 需求的变化与控制 需求说明的明确与完整 需求工程中的缺陷将给项目成功带来极大风险如产品的成本过高产品的功能和质量无法完全满足用户的期望等等即使一个项目团队的人员和配备都很不错但不重视需求过程也会付出惨痛的代价
本节知识点 需求工程的内容 需求获取 需求分析 编写需求文档 需求验证
需求工程是指应用已证实有效的原理和方法系统地描述出待开发系统及其行为特征和相关约束
通常需求工程由一些过程组成可分为需求开发和需求管理两部分
需求开发的主要活动 确定产品所期望的用户类 获取每个用户类的需求 了解实际用户任务和目标以及这些任务所支持的业务需求 分析源于用户的信息以区别用户任务需求功能需求业务规则质量属性建议解决方法和附加信息
将系统级的需求分为几个子系统并将需求中的一部份分配给软件组件 了解相关质量属性的重要性 商讨实施优先级的划分 将所收集的用户需求编写成规格说明和模型 评审需求规格说明确保对用户需求达到共同的理解与认识并在整个开发小组接受说明之前将问题都弄清楚
需求管理的主要活动 定义需求基线 评审提出的需求变更评估每项变更的可能影响从而决定是否实施它 以一种可控制的方式将需求变更融入到项目中 使当前的项目计划与需求一致 估计变更需求所产生影响并在此基础上协商新的承诺 让每项需求都能与其对应的设计源代码和测试用例联系起来以实现跟踪 在整个项目过程中跟踪需求状态及其变更情况
今天我们引入“需求工程”的概念强调用工程化的方法进行需求开发和需求管理其中需求开发是采用有效方法获得高质量需求的过程而需求管理则是在需求说明形成之后有效地控制其变更的过程二者缺一不可
一工作内容 聆听用户的需求 分析和整理所获取的信息 形成文档化的描述 二基于用例的方法
随着面向对象技术的发展基于用例的方法在需求获取和建模方面应用得越来越普遍这种方法是以任务为中心和以用户为中心的比起使用以功能为中心的方法它可以使用户更清楚地认识到新系统允许他们做什么
用例模型以用户和任务为中心将整个工作的焦点集中在从用户的角度说明系统能够干什么完全不考虑具体的实现细节从而达到准确地理解客户需求的目的在用例模型中角色和用例是两个基本概念分别代表着系统外部的执行者和系统应包含的功能因此建立用例模型的主要工作是确定角色确定用例和描述用例 A确定角色
角色代表着与系统交互的人或事通过确认系统功能使用者和维护者以及与系统接口的其他系统或硬件设备等可以有效地识别出系统角色 B确定用例
一个完整的系统包含若干个用例每个用例具体说明应完成的功能识别用例首先要确定系统所能反映的外部事件并把这些事件与参与的执行者和特定的使用实例联系起来最终绘制出用例图 C描述用例
单纯地使用用例图不能提供用例所具有的全部信息因此需要使用文字描述那些不能反映在图形上的信息用例描述实际上是关于角色与系统如何交互的规格说明要求清晰明确没有二义性
建立用例模型是一种需求获取的有效方法其简洁清晰的描述方式容易被软件人员和用户共同理解和接受这种方法已经在许多大型系统的开发中取得成效实践证明它能有效地解决用户参与的问题
需求分析主要是对收集到的需求进行提炼分析和仔细审查以确保所有的风险承担者都明白其含义并找出其中的错误遗漏或其它不足的地方形成完整的分析模型分析的目的在于开发出高质量的和具体的需求从而支持项目的估算和软件的设计开发和测试
需求分析的主要活动包括 绘制系统关联图 创建用户接口原型 分析需求可行性 确定需求的优先级别 创建数据字典 为需求建立模型
绘制系统关联图
这种关联图用于定义系统与系统外部实体间的界限和接口的简单模型
创建用户接口原型
当开发人员或用户不能确定需求时开发一个用户接口原型可以使许多概念和可能发生的事更为直观明了用户通过评价原型将使项目参与者能更好地相互理解所要解决的问题同时找出需求文档与原型之间所有的冲突之处 分析需求可行性
在允许的成本和性能要求下分析每项需求实施的可行性明确与每项需求实现相联系的风险包括与其它需求的冲突对外界因素的依赖和技术障碍
确定需求的优先级别
应用分析方法来确定用例产品特性或单项需求实现的优先级别以优先级为基础确定产品版本将包括哪些特性或哪类需求当允许需求变更时在特定的版本中加入每一项变更并在那个版本计划中作出需要的变更 为需求建立模型
需求的图形分析模型是软件需求规格说明极好的补充说明它们能提供不同的信息与关系以帮助找到不正确的不一致的遗漏的和冗余的需求这些模型包括数据流图实体关系图状态变换图对话框图对象类及交互作用图等 创建数据字典
数据字典是对系统用到的所有数据项和结构的定义以确保开发人员使用统一的数据定义在需求阶段数据字典至少应定义客户数据项以确保客户与开发小组是使用一致的定义和术语
分析建模的方法有很多其中最重要的两种方法是结构化分析和面向对象分析 结构化分析方法提供实体关系图数据流图和状态转换图三种图形模型分别进行数据建模功能建模和动态建模
人们习惯于用自然语言来描述软件需求但这会产生许多意想不到的问题如不精确二义性等因此需要采用适当的方法形成一致的完备的和无二义性的软件需求规格说明
通常编写软件需求规格说明有三种方法 将结构化语言与自然语言结合编写文本型文档 建立可视化的模型 采用形式化的方法进行需求规格说明
软件需求规格说明是需求开发的最终结果它精确地阐述一个软件系统必须提供的功能和性能以及它所要考虑的限制条件软件需求规格说明不仅是系统测试和用户文档的基础也是所有子系列项目规划设计和编码的基础
软件需求规格说明是用户分析人员和设计人员之间进行理解和交流的手段 测试人员可以根据软件需求规格说明中对产品行为的描述制定测试计划测试用例和测试过程 文档人员根据软件需求规格说明和用户界面设计编写用户手册等 软件需求规格说明指导着整个系统的开发过程评审过的需求规格说明需要进行变更控制
a 引言
概要叙述软件需求规格说明便于读者理解文档如何编写以及如何阅读和解释
在软件项目中开发组织应该采用一种标准的软件需求规格说明的模板现在有许多软件需求规格说明模板可以使用这里介绍其中的一种 a1 目的
对产品进行定义在该文档中详尽说明了这个产品的软件需求包括修正或发行版本号如果这个软件需求规格说明只与整个系统的一部分有关系那么就只定义文档中说明的部分或子系统 a2 文档约定
描述编写文档时所采用的标准或排版约定包括正文风格提示区或重要符号
a3 预期的读者和阅读建议
列举了软件需求规格说明所针对的不同读者例如开发人员项目经理营销人员用户测试人员或文档的编写人员描述了文档中剩余部分的内容及其组织结构提出了最适合于每一类型读者阅读文档的建议 a4 产品范围
提供了对指定的软件及其目的的简短描述包括利益和目标 a5 参考文献
列举了编写软件需求规格说明时所参考的资料或其它资源可能包括用户界面风格指导合同标准系统需求规格说明使用实例文档或相关产品的软件需求规格说明在这里应该给出详细的信息包括标题名称作者版本号日期出版单位或资料来源以方便读者查阅这些文献 b 综合描述
这一部分概述了正在定义的产品以及它所运行的环境使用产品的用户和已知的限制假设和依赖 b1 产品的前景
描述了软件需求规格说明中所定义的产品的背景和起源说明了该产品是否是产品系列中的下一成员是否是成熟产品所改进的下一代产品是否是现有应用程序的替代品或者是否是一个新型的自含型产品如果软件需求规格说明定义了大系统的一个组成部分那么就要说明这部分软件是怎样与整个系统相关联的并且要定义出两者之间的接口 b2 产品的功能
概述了产品所具有的主要功能其详细内容将在d中描述所以在此只需要概略地总结例如用列表的方法给出很好地组织产品的功能使每个读者都易于理解用图形表示主要的需求分组以及它们之间的联系例如数据流程图的顶层图或类图都是有用的 b3 用户类和特征
确定你觉得可能使用该产品的不同用户类并描述它们相关的特征有一些需求可能只与特定的用户类相关将该产品的重要用户类与那些不太重要的用户类区分开 b4 运行环境
描述了软件的运行环境包括硬件平台操作系统和版本还有其它的软件组件或与其共存的应用程序 b5 设计和实现上的限制
确定影响开发人员自由选择的问题并说明这些问题为什么成为一种限制可能的限制包括如下内容
必须使用或者避免的特定技术工具编程语言和数据库 所要求的开发规范或标准 企业策略政府法规或工业标准 硬件限制例如定时需求或存储器限制 数据转换格式标准 b6 假设和依赖
列举出在对软件需求规格说明中影响需求陈述的假设因素以及项目对外部因素存在的依赖 c 外部接口需求
利用本节来确定可以保证新产品与外部组件正确连接的需求 c1 用户界面
陈述所需要的用户界面的软件组件描述每个用户界面的逻辑特征以下是可能要包括的一些特征
将要采用的图形用户界面 G U I标准或产品系列的风格 屏幕布局或解决方案的限制 将出现在每个屏幕的标准按钮功能或导航链接例如一个帮助按钮 快捷键 错误信息显示标准
c2 硬件接口
描述系统中软件和硬件每一接口的特征这种描述可能包括支持的硬件类型软硬件之间交流的数据和控制信息的性质以及所使用的通信协议 c3 软件接口
描述该产品与其它外部组件由名字和版本识别的连接包括数据库操作系统工具库和集成的商业组件明确并描述在软件组件之间交换数据或消息的目的描述所需要的服务及内部组件通信的性质确定将在组件之间共享的数据 c4 通信接口
描述与产品所使用的通信功能相关的需求包括电子邮件Web浏览器网络通信标准或协议及电子表格等等定义了相关的消息格式规定通信安全或加密问题数据传输速率和同步通信机制 d 系统特性 d1 说明和优先级
简短说明该系统的特性并指出该特性的优先级是高中还是低另外还可以包括对特定优先级部分的评价例如利益损失费用和风险 d2 激励响应序列
列出输入激励用户动作来自外部设备的信号或其它触发器和定义这一特性行为的系统响应序列 d3 功能需求
详列出与该特性相关的详细功能需求这些是必须提交给用户的软件功能使用户可以使用所提供的特性执行服务或者使用所指定的使用实例执行任务 e 其他非功能需求 e1 性能需求
阐述了不同的应用领域对产品性能的需求并解释它们的原理以帮助开发人员作出合理的设计选择确定相互合作的用户数或者所支持的操作响应时间以及与实时系统的时间关系 e2 安全设施需求
详尽陈述与产品使用过程中可能发生的损失破坏或危害相关的需求定义必须采取的安全保护或动作还有那些预防的潜在的危险动作明确产品必须遵从的安全标准策略或规则 e3 安全性需求
详尽陈述与系统安全性完整性或私人问题相关的需求这些问题将会影响到产品的使用和产品所创建或使用的数据的保护定义用户身份确认或授权需求明确产品必须满足的安全性或保密性策略 e4 软件质量属性
详尽陈述与客户或开发人员至关重要的其它产品质量特性这些特性必须是确定定量的并在可能时是可验证的 e5 业务规则
列举出有关产品的所有操作规则例如什么人在特定环境下可以进行何种操作这些本身不是功能需求但它们可以暗示某些功能需求执行这些规则 e6 用户文档
列举出将与软件一同发行的用户文档部分例如用户手册在线帮助和教程明确所有已知的用户文档的交付格式或标准 f 其他需求
定义在软件需求规格说明的其它部分未出现的需求例如国际化需求或法律上的需求你还可以增加有关操作管理和维护部分来完善产品安装配置启动和关闭修复和容错以及登录和监控操作等方面的需求这一部分可以省略
需求验证是为了确保需求说明准确完整地表达必要的质量特点当你阅读软件需求规格说明时可能觉得需求是对的但实现时却很可能会出现问题当以需求说明为依据编写测试用例时你可能会发现说明中的二义性而所有这些都必须改善因为需求说明要作为设计和最终系统验证的依据
正确性 完整性 可验证性 无二义性 可修改性 可跟踪性 一致性
审查需求文档
对需求文档进行正式审查是保证软件质量的有效方法组织一个由不同代表如分析人员客户设计人员测试人员组成的小组对SRS及相关模型进行仔细的检查
以需求为依据编写测试用例
根据用户需求所要求的产品特性写出黑盒功能测试用例客户通过使用测试用例以确认是否达到了期望的要求从测试用例追溯回功能需求以确保没有需求被疏忽并且确保所有测试结果与测试用例相一致同时要使用测试用例来验证需求模型的正确性如对话框图和原型等
编写用户手册
在需求开发早期即可起草一份用户手册用它作为需求规格说明的参考并辅助需求分析 确定合格的标准
让用户描述什么样的产品才算满足他们的要求和适合他们使用的将合格的测试建立在使用情景描述或用例的基础之上
需求验证包括需求评审和需求测试两个部分需求评审又包括正式的和非正式的两种形式
需求评审是一种有效的需求验证手段通常以用例模型为基础编写测试用例进行检验虽然没有在运行系统上执行测试用例但是设计测试用例的过程可以解释需求的许多问题
本节知识点 分析模型--实体关系图数据流图状态转换图 数据字典 结构化分析过程
多年来人们提出了许多分析建模的方法其中占主导地位的两种方法是传统的“结构化分析”方法和当今流行的“面向对象的分析”方法本节重点介绍结构化分析方法面向对象的分析方法在后面章节介绍
需求分析产生的模型使人们可以更好地理解将要建造的系统它有助于系统分析员理解系统的信息功能和行为成为确定需求规格说明完整性一致性和精确性的重要依据奠定了软件设计的基础
结构化分析导出的分析模型包括数据模型功能模型和行为模型该模型以数据字典为核心描述了软件使用的所有数据对象围绕这个核心的是实体关系图数据流图和状态转换图具体形式如下图所示 实体关系图ER数据建模的基础描述数据对象及其关系 数据流图DF功能建模的基础描述数据怎样转换以及转换的功能 状态转换图ST行为建模的基础表示系统的各种行为状态以及状态间的转换方式 数据模型包括三种基本元素 数据对象 属性 关系 它们对理解问题的信息域提供了基础
两个数据对象之间有以下三种关联ER在数据对象之间的连线上用数字或字母表示
一对一11对象 A的一个实例只能关联到对象B的一个实例对象 B的一个实例也只能关联到对象A的一个实例如一个丈夫只能有一个妻子一个妻子也只能有一个丈夫
一对多1N对象 A的一个实例可以关联到对象B的一个或多哥实例而对象 B的一个实例只能关联到对象A的一个实例如一个母亲可以有多个孩子而一个孩子只能有一个母亲
多对多MN对象 A的一个实例可以关联到对象B的一个或多个实例同时对象 B的一个实例也可以关联到对象A的一个或多个实例如一个叔叔可以有多个侄子一个侄子也可以有多个叔叔
数据建模的其他图形工具层次方框图
层次方框图通过树型结构的一系列多层次的矩形框描述复杂数据的层次结构树型结构顶端的矩形框只有一个用于代表完整的数据结构下面各层的矩形框是对完整数据结构的逐步分解和细化得到的数据子集底层的矩形框代表组成该数据结构的基本元素是数据的最小单位不可再分割
数据建模的其他图形工具层次方框图 层次方框图非常适合描述自顶向下的需求分析方法中数据的层次关系系统分析员可以从对顶层信息的分类开始沿着层次图中的每条路径逐步细化直到确定了数据结构的全部细节为止
例如某单位职工的实发工资由应发工资和扣款两部分组成每部分又可进一步细分如应发工资又可分为基本工资和奖金基本工资又可分为国家工资津贴补贴奖金也可分为出勤奖和业绩奖津贴和补贴还可以再进一步地细分 实发工资的层次方框图如下图所示
数据流图是结构化分析的基本工具它描述了信息流和数据转换通过对加工进行分解可以得到数据流图
DF有四种元素其基本符号如下图所示
外部实体与系统进行交互但系统不对其进行加工和处理的实体用带标记的矩形表示 加工对数据进行的变换和处理用带标记的圆圈表示 数据流在数据加工之间或数据存储和数据加工之间进行流动的数据用带标记的箭头表示 数据存储在系统中需要存储的实体用带标记的双实线表示
第0层DF称为基本系统模型可以将整个软件系统表示为一个具有输入和输出的黑匣子用一个圆圈表示上一层DF中的每一个圆圈可以进一步扩展成一个独立的数据流图以揭示系统中程序的细节部分
这种循序渐进的细化过程可以继续进行直到最低层的图仅描述原子过程操作为止每一层数据流图必须与它上一层数据流图保持平衡和一致因此子图的所有输入输出流要与其父图相匹配
状态转换图通过描述状态以及导致系统改变状态的事件来表示系统的行为它没有表示出系统所执行的处理只表示了处理结果可能的状态转换
ST用带标记的圆圈或矩形表示状态用箭头表示从一种状态到另一种状态的变换箭头上的文本标记表示引起变换的条件 例如在操作系统中当存在多个申请占用CPU运行的进程 进程是分配CPU的最小处理单位 时系统将按照某种调度策略为各个进程分配CPU此时进程的状态可能有三种就绪运行和等待 就绪等待分配CPU 运行占用CPU进行相应的处理 挂起
name=baidusnap1>
数据流图是结构化分析的基本工具体现了自顶向下逐步求精的分析过程确定了系统的任务流和数据流 实体关系图描述了系统的数据关系从而帮助开发人员分析和理解系统数据的组成并为系统设计阶段定义系统数据库的物理结构打下基础 状态转换图描述了系统状态之间的变化过程它对于实时系统和控制系统尤为重要
数据字典描述数据流图的数据存储数据加工 最底层加工和数据流它记录的主要内容有 基本信息名字别名描述 定义数据长度数据类型数据结构 使用特点取值范围使用频率使用方式等 控制信息来源用户引用程序读写权限等 其他说明
在数据字典中数据元素的定义可以是基本元素及其组合数据进行自顶向下地分解直到不需要进一步解释且参与人员都清楚其含义为止
数据组合有三种方式
顺序以确定的次序连接多个数据项
选择从多个数据项中选取一个
重复将某个数据项重复多次 为了能够对数据流中的各组成成分进行准确的定义在数据字典中使用了多种具有特定意义的符号如下
结构化分析过程实质上就是创建数据模型功能模型和行为模型其中数据建模的工具是实体关系图功能建模的工具是数据流图行为建模的工具是状态转换图另外使用数据字典定义系统的所有数据项
为了理解和学会使用这些建模工具我们结合一个学生成绩管理系统的实例讲解整个分析过程并给出部分实体关系图数据流图状态转换图和数据字典
下面列出用户对学生成绩管理系统的要求 教务人员录入学生信息课程信息和成绩信息 学生可以随时查询自己所选课程的成绩 由于学生成绩属于敏感信息系统必须提供必要的安全措施以防非法存取
在需求收集的过程中要求客户列出应用软件或业务过程涉及到的“事物”将其演化成数据对象 一次考虑一个对象分析员和客户定义这个对象和其他对象之间是否存在连接 如果存在连接应创建一个或多个关系
对每一个关系确定其关联类型
重复步骤2到步骤4直到定义了所有关系
定义每个实体的属性
形式化并复审实体关系图 重复步骤1到7直到数据建模完成
实例分析 学生成绩管理系统 实体学生课程成绩 实体属性定义
学生学号姓名性别出生日期入学年月
课程课程编号课程名称课程学分课程描述
成绩学号课程编号分数考核日期
显然学生课程和成绩都是系统的实体并且可以初步定义它们的属性
教务人员虽然是系统的用户但其信息与系统处理无关因此不用作为实体 由于成绩信息包含了选课信息因此选课信息不用单独记录
因此系统的实体是学生课程和成绩
我们分析这些实体之间的关联关系从实际情况得知一个学生可以选多门课程一门课程也可以有多个学生选修但每个学生选一门课程必须有一个成绩根据上述分析我们得到如图所示的实体关系图
实体关系图
通常数据流图是分层绘制的整个过程反映了自顶向下进行功能分解和细化的分析过程 顶层也称第0层DF用于表示系统的开发范围以及该系统与周围环境的数据交换关系 最底层DF代表了那些不可进一步分解的原子加工 中间层DF是对上一层父图的细化其中的每一个加工可以继续细化中间层次的多少由系统的复杂程度决定
第0层DF将整个系统表示成一个加工 2 确定并标记主要的输入和输出 分离出下一层中的加工数据对象和存储 并对其进行细化一次细化一个加工 4 标记所有加工和箭头 重复步骤3和4直到所有的加工 只执行一个简单的操作可以很容易地用 程序实现
绘制第0层DF的时候将整个系统看成一个加工然后找出作用于该加工的外部实体以及相应的数据输入和输出
绘制下一层数据流图时细化第0层的加工从而描述系统的主要功能 继续进行分解直到所有的加工只执行一个简单的操作为止
实例分析 学生成绩管理系统 第0层DF图
1教务人员维护学生信息和课程信息并登录学生的选课成绩 2学生查询自己的成绩单
对于学生成绩管理系统而言整个系统就是一个加工学生成绩管理
教务人员是数据的源点学生是数据的终点 教务人员需要录入学生信息课程信息和成绩说明学生信息课程信息和成绩是数据流同样查询请求和查询结果也是数据流 根据上述分析得到如图所示的第0层DF图
第1层DF图
对第0层DF图中的加工学生成绩管理 展开得知学生信息是教务人员需要录入的一个信息因此加入一个加工录入学生信息同样得到录入课程信息登记成绩两个加工另外数据流查询请求和查询结果应该由加工查询成绩来完成
这样我们用录入学生信息录入课程信息登记学生成绩和查询学生成绩四个加工代替第0层的学生成绩管理同时增加这些数据流对应的数据存储即学生课程和成绩最后得到如图所示的第1层DF图
第2层DF图
为了继续进行分解我们分析第1层DF中的加工查询学生成绩
学生查询成绩时需要提供合法性检查因此查询学生成绩可以分解为合法性检查和查询成绩两个处理步骤从而形成第2层DF如下图所示
根据以上实例和经验绘制数据流图应当遵循以下原则 1 分层时子图的输入输出数据流必须和父图中相应加工的输入输出数据流一致 加工的编号应该唯一且具有层次性 加工不应该只有输入或只有输出通常既有输入又有输出 4 数据流图不应反映处理的顺序 加工之间应通过数据存储进行通信避免从一个加工直接流到另一个加工 数据应通过加工进行流动避免从一个数据存储直接流到另一个数据存储 数据流图中所有元素的命名应当对客户有意义且与业务相关 8 不要在一个图中绘制7个以上的加工否则难于绘制和理解
数据字典
以下列出“学生成绩管理系统”的部分数据字典条目
4331 创建实体关系图 第四章 软件需求分析与建模 4331 创建实体关系图 第四章 软件需求分析与建模 4331 创建实体关系图 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 4332 创建数据流模型 第四章 软件需求分析与建模 在系统功能扩充时可能增加定义项 其他说明 随时但经常在新生入学时期 峰值 10000左右 数据量 学号 姓名 性别 出生日期 入学年月 定义 无 别名 包括学生的主要信息 描述 学生 数据项名 4332 创建数据流模型 第四章 软件需求分析与建模 学号不能重复 其他说明 6位字符 长度 字符串 类型 无 别名 唯一标识学生的编号 描述 学号 数据流名 4332 创建数据流模型 第四章 软件需求分析与建模 在系统功能扩充时可能增加种类 其他说明 随时但经常在学期开学 峰值 10000次左右 频率 无 别名 系统处理的一个命令 描述 学生成绩查询 数据流名 4333 创建行为模型 第四章 软件需求分析与建模
通常来说行为建模用于实时系统 实时系统中可能存在许多脚本很多实体需要进行状态划分和描述状态转换图 在事务系统中系统行为相对简单只有某些行为较复杂的实体才需要建立其状态转换图 4333 创建行为模型 第四章 软件需求分析与建模 1 分析外部事件所谓外部事件是指外部实体与系统的一次交互 分析事件的响应者该响应者为了响应该事件要进行怎样的活动这种活动又会激发哪些事件等 根据事件和活动划分实体的状态考虑发生怎样的事件使该实体进入这个状态怎样的事件使该实体从这个状态转换到另一状态等 4333 创建行为模型 第四章 软件需求分析与建模 实例分析学生成绩管理系统
在学生成绩管理系统中学生成绩信息必须采取安全措施我们采取登录方法避免非法使用系统这样该系统存在登录正常和出错等状态的转换如下图所示 4333 创建行为模型 第四章 软件需求分析与建模 431 分析模型 第四章 软件需求分析与建模 431 分析模型 第四章 软件需求分析与建模 4311 实体关系图 第四章 软件需求分析与建模
数据对象表示具有不同属性的事物ER用带有标记的矩形来表示 关系表示数据对象之间的相互连接ER用直线连接相关联的数据对象并在直线上用带标记的菱形框来表示关系 属性也称性质指数据对象某一方面的特征 ER用带有标记的椭圆来表示 4311 实体关系图 第四章 软件需求分析与建模 属性 ER图中的基本符号 连接 4311 实体关系图 第四章 软件需求分析与建模 4311 实体关系图 第四章 软件需求分析与建模 4311 实体关系图 第四章 软件需求分析与建模 4311 实体关系图 第四章 软件需求分析与建模 学生选课ER图 4311 实体关系图 第四章 软件需求分析与建模 工资计算系统ER图 4311 实体关系图 第四章 软件需求分析与建模 4311 实体关系图 第四章 软件需求分析与建模 4311 实体关系图 第四章 软件需求分析与建模 4311 实体关系图 第四章 软件需求分析与建模 4312 数据流图 第四章 软件需求分析与建模 4312 数据流图 第四章 软件需求分析与建模 4312 数据流图 第四章 软件需求分析与建模 工资计算系统的顶层 0层 数据流图 4312 数据流图 第四章 软件需求分析与建模 4312 数据流图 第四章 软件需求分析与建模 4313 状态转换图 第四章 软件需求分析与建模 4313 状态转换图 第四章 软件需求分析与建模 4313 状态转换图 第四章 软件需求分析与建模 431 分析模型 第四章 软件需求分析与建模 432 数据字典 第四章 软件需求分析与建模 432 数据字典 第四章 软件需求分析与建模 432 数据字典 第四章 软件需求分析与建模 432 数据字典 第四章 软件需求分析与建模 符 号 含 义 说 明 表示定义为 用于对 左边的条目进行确切的定义 表示与关系 X ab表示X由a和b共同构成 [ ] [ ] 表示或关系 X [ab]与X [ab]等价表示X由a或b组成 表示可选项 X a 表示a可以在X中出现也可以不出现 表示重复 大括号中的内容重复0到多次 m n 表示规定次数的重复 重复的次数最少m次最多n次 表示基本数据元素 中的内容是基本数据元素不可再分 连接符 month 112表示month可取1~12中的任意值 表示注释 两个星号之间的内容为注释信息 433 结构化分析过程 第四章 软件需求分析与建模 433 结构化分析过程 第四章 软件需求分析与建模 433 结构化分析过程 第四章 软件需求分析与建模 4331 创建实体关系图 第四章 软件需求分析与建模 4331 创建实体关系图 第四章 软件需求分析与建模 4331 创建实体关系图 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 425 需求验证 第四章 软件需求分析与建模 4251 需求说明的质量特性 第四章 软件需求分析与建模 需求规格说明对系统功能行为性能等的描述必须与用户的期望相吻合代表了用户的真正需求 需求规格说明应该包括软件要完成的全部任务不能遗漏任何必要的需求信息注重用户的任务而不是系统的功能将有助于你避免不完整性 需求规格说明对各种需求的描述不能存在矛盾如术语使用冲突功能和行为特性方面的矛盾以及时序上的不一致等 需求规格说明中的描述对所有人都只能有一种明确统一的解释由于自然语言极易导致二义性所以尽量把每项需求用简洁明了的用户性的语言表达出来 需求规格说明的格式和组织方式应保证后续的修改能够比较容易和协调一致我们可以使用软件工具或者使用目录表索引和相互参照列表等方法使软件需求规格说明更容易修改 可跟踪性意味着每项需求都能与其对应的来源设计源代码和测试用例联系起来 需求规格说明中描述的需求都可以运用一些可行的手段对其进行验证和确认 4252 需求验证的方法 第四章 软件需求分析与建模 4252 需求验证的方法 第四章 软件需求分析与建模 4252 需求验证的方法 第四章 软件需求分析与建模 4252 需求验证的方法 第四章 软件需求分析与建模 43 分析建模 第四章 软件需求分析与建模 43 分析建模 第四章 软件需求分析与建模 431 分析模型 第四章 软件需求分析与建模 431 分析模型 第四章 软件需求分析与建模 42 需求工程 第四章 软件需求分析与建模 需求开发又可分为问题获取分析编写规格说明和验证四个阶段如图所示 421 需求工程的内容 第四章 软件需求分析与建模 421 需求工程的内容 第四章 软件需求分析与建模 421 需求工程的内容 第四章 软件需求分析与建模 421 需求工程的内容 第四章 软件需求分析与建模 421 需求工程的内容 第四章 软件需求分析与建模 422 需求获取 第四章 软件需求分析与建模 分析人员应该与各种层次的客户进行充分的交流和沟通包括决策领导使用部门的领导具体使用人员系统维护人员等尽量清楚地理解用户的问题和要求 对于用户提供的各种问题和要求分析人员需要对其进行归纳和整理借助一些工具和方法从用户一般性的陈述里面提取用户的真正需求并由此确定软件的功能性能接口关系约束条件等 不论是用户的提出问题还是最终获取的需求都应该形成文档化的描述这种描述需要各种人员的一致理解和认同 422 需求获取 第四章 软件需求分析与建模 422 需求获取 第四章 软件需求分析与建模 422 需求获取 第四章 软件需求分析与建模 422 需求获取 第四章 软件需求分析与建模 422 需求获取 第四章 软件需求分析与建模 422 需求获取 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 423 需求分析 第四章 软件需求分析与建模 424 编写需求文档 第四章 软件需求分析与建模 424 编写需求文档 第四章 软件需求分析与建模 4241 软件需求规格说明 第四章 软件需求分析与建模 4241 软件需求规格说明 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 4242 模板 第四章 软件需求分析与建模 第四章 软件需求分析与建模 第四章 软件需求分析与建模 第四章 软件需求分析与建模 第四章 软件需求分析与建模 第四章 软件需求分析与建模 41 软件需求 第四章 软件需求分析与建模 41 软件需求 第四章 软件需求分析与建模 41 软件需求 第四章 软件需求分析与建模 41 软件需求 第四章 软件需求分析与建模 411 软件需求的定义 第四章 软件需求分析与建模 411 软件需求的定义 第四章 软件需求分析与建模 412 需求的层次 第四章 软件需求分析与建模 412 需求的层次 第四章 软件需求分析与建模 412 需求的层次 第四章 软件需求分析与建模 412 需求的层次 第四章 软件需求分析与建模 412 需求的层次 第四章 软件需求分析与建模 412 需求的层次 第四章 软件需求分析与建模 412 需求的层次 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 413 需求错误的原因 第四章 软件需求分析与建模 42 需求工程 第四章 软件需求分析与建模 42 需求工程 第四章 软件需求分析与建模
第四篇:软件工程课设管理系统——需求分析报告
软件工程课设报告
题 目:软件工程课设管理系统 ——需求分析报告 学生姓名:王星
学 号:1176807448 专 业:计算机4班 指导教师:赵宇红
文档名称: 需求分析报告 项目名称: 软件工程课设管理系统 项目负责人:王星
编写: 完成日期: 2014.6.19 审核:
开发单位:
王星 薛浩楠
软件工程课设管理系统小组
目录
需求分析报告...................................................................................................................................4
一.引言...................................................................................................................................4
1.编写目的:...................................................................................................................4 2.背景及范围:.................................................................................................................4 3.名词定义:...................................................................................................................4 4.参考资料:...................................................................................................................5
二、任务概述...........................................................................................................................5
1.目标:.........................................................................................................................5 2.系统功能划分:...........................................................................................................6 3.安全性:.......................................................................................................................6
三、具体需求分析...................................................................................................................6
1.系统流程图:.............................................................................................................6 2.数据流图:...................................................................................................................8 3.数据字典:...................................................................................................................8
需求分析报告
一.引言
随着计算机的普及,人们对计算机的认识及需求有了明显的增加。计算机对于大量信息的管理的优势更是显而易见。有了这个软件工程课程设计管理系统,学生与老师的工作任务就可能会事半功倍。1.编写目的:
计算机专业的学生有90多名,而且随着每年的扩招,人数不断的增加,每次软件工程课程设计都采用手工操作,费时费力。为了解决这个问题,决定做一个软件工程课程设计管理系统,对每个学期选修软件工程课程设计的学生基本情况作个统计。主要是学生从该系统中选题,填写同组学生的姓名,学号,班级,组长等基本情况;查询自己的课程设计成绩。老师通过该系统查看学生的选题情况,填写学生的项目进度情况,且给出学生的分数,这有利于老师教学,及时了解学生的情况,提高教学质量,减轻老师的工作量,改善原有的比较繁锁的工作。2.背景及范围: 名称:软件工程课程设计管理系统
任务的开发人员:杨宇飞,薛浩楠,王星,陈晶 开发软件的单位:软件工程课程设计管理系统小组
软硬件设施:个人计算机,JAVA,Acess数据库,Windows 97/xp操作系统 决定开发软件工程课程设计管理系统,估价成本不高于1000元,二周交付使用。3.名词定义:
实体:客观世界中存在的且可互相区别的事物。联系:客观事物中的彼此之间的关系。属性:实体或者联系所具有的性质。4.参考资料:
软件工程基础 汤淮 西安交通大学出版社
软件工程------技术,方法与环境 王立福,张世琨,朱冰 编著 北京大学出版社
软件开发技术 倪秉营 电子科技大学出版社 软件工程 张权范 清华大学出版社
二、任务概述
该软件工程课程设计管理系统软件目前已有比较完善的管理与使用功能。研制软件工程课程设计管理系统软件是为了满足软件工程教师与学生方便对课程的各种管理与操作。1.目标:(1)开发意图:
a.为了软件工程课程管理系统更完善;
b.为了软件工程课程管理更方便;
c.为了减轻软件工程管理工作人员的工作负担;d.为了加强学院的正规化管理;(2)应用目标:
通过本系统软件,能帮助课程设计教师利用计算机,快速方便的对课程进行管理,上传资料,填写进度报告,查找的所需操作。(3)产品描述:
本产品是一种工作在windows系统平台的软件,它是以Acess数据库。(4)产品功能: 2.系统功能划分:
使用该系统有三个角色教师,学生,客户。教师可以查看学生选课情况,可以查看学生设计报告,填写学生项目进度情况,给出分数,修改密码,上传课程设计题目,学习资料。学生可以查看选课情况和成绩,选课。客户只可以浏览选课信息。
2.系统可分为5个模块:
(1)基本信息:教师和学生的信息包括教师号,学生号,教师开设的课程设计的题目,学生选的课程设计题目,项目进度和分数。(2)选课:显示教师开设的课程设计题目,实现学生选课。
(3)查询:学生查询可选题,自己选题情况,自己课程设计成绩。教师查询学生选题情况,学生设计报告。
(4)修改:教师填写项目进度情况和给出分数,学生填写同组的其他同学的姓名,学号,班级,小组长,修改结果存入相应数据库等。
(5)密码:教师和学生可以修改自己的登陆密码,结果保存用户信息数据库。3.安全性:
设立三种级别的用户:Student,Teacher,Guest,对每种类型的用户设置不同的权限。
Student:查询分数,课程设计报告上传功能 Teacher:提供对系统的实际操作功能 Guest: 提供信息浏览功能
三、具体需求分析
1.系统流程图:
学生登陆教师登陆验证学生身份验证教师身份验证成功验证成功修改密码查询选课信息查询选课上传资料与设计题目查看设计报告查看选题情况修改密码学生信息数据库选课给出分数和填写进度情况教师信息数据库课程设计报告上传填写同组人员信息选课数据库客户登陆客户浏览
图3.1系统流程图
2.数据流图:
客户用户信息数据库选题数据库用户学号与密码显示修改密码上传确定选题验证口令题目与有关资料课程设计题目数据库登陆教师显示登陆成员列表验证口令填写进度表显示选课学生小组成员信息核对填写同组人员信息教工号和密码进度数据库工作报告表课程设计报告修改密码用户设计报告表给出分数上传学生信息数据库成绩数据库显示
图3.2数据流图
3.数据字典:
数据流描述:
数据流名:用户名密码 数据来源:用户登陆处理 数据去向:验证信息处理。说明:用户输入用户名和密码 数据组成:用户名+密码 数据流量:小 数据流名:直接登陆
数据来源:用户登陆处理
数据去向:客户界面
说明:普通用户不输入用户名和密码直接以客户身份登陆
数据流名:登陆
数据来源:验证信息处理正确
数据去向:根据验证信息返回条件决定是教师界面还是学生界面 说明:系统登陆到教师界面。数据流名:选题,资料
数据来源:教师界面的输入选题和资料窗口 数据去向:上传处理
说明:教师输入要上传的课题和资料 数据流名:小组成员信息 数据来源:选课信息界面 数据去向:验证填写信息处理
说明:学生填写同组其他同学姓名,学号,班级,小组长名。数据流名:工作报告。数据来源:课题信息界面 数据去向:上传处理
说明:学生将各阶段工作报告上传。数据流名:设计报告 数据来源:选题信息界面 数据去向:上传处理
说明:学生填写所选课题的设计报告上传。
第五篇:软件工程(仓库管理)需求分析说明书
三、需求规格说明书
三、需求规格说明书
1.引言.............................................................................................................................................1
1.1编写目的.............................................................................................................................1 1.2项目背景.............................................................................................................................2 1.3定义.....................................................................................................................................2 1.4参考资料.............................................................................................................................2 2.任务概述.....................................................................................................................................2
2.1目标.....................................................................................................................................2 2.2运行环境.............................................................................................................................3 2.3条件与限制.........................................................................................................................3 3.数据描述.....................................................................................................................................4
3.1静态数据.............................................................................................................................4 3.2动态数据.............................................................................................................................4 3.3数据库介绍.........................................................................................................................4 3.4数据词典.............................................................................................................................4 3.5数据采集.............................................................................................................................9 4.功能需求...................................................................................................................................10 4.1功能划分...........................................................................................................................16 4.2功能描述...........................................................................................................................17 5.性能需求...................................................................................................................................18 5.1数据精确度.......................................................................................................................18 5.2时间特性...........................................................................................................................18 5.3适应性...............................................................................................................................18 6.运行需求...................................................................................................................................19 6.1用户界面...........................................................................................................................19 6.2硬件接口...........................................................................................................................19 6.3软件接口...........................................................................................................................19 6.4故障处理...........................................................................................................................21 7.其它需求...................................................................................................................................22
1.引言
1.1编写目的
为明确软件需求、安排项目规划与进度、组织软件开发与测试,撰写本文档。为了开发出真正满足用户需求的软件产品,首先必须了解用户的需求。本文档是根据用户所
三、需求规格说明书
提供的需求和分析员共同探讨后拟定。在这里将详细介绍用户所需要实现的功能及实现该功能的硬件软件的基本需求,以避免在软件开发后交付用户使用中出现不必要的麻烦。同时在这里将详细的介绍本软件的模块调用等等相关问题。
1.2项目背景
在步入信息化、数字化的今天,仓库是我们生活工作中不可缺少的一部分,仓库管理如何管理,让利益最大化。在如今用软件控制所有流程,可以大大的提高仓库的工作效率,有效地节省物力人力资源。a.项目委托单位:XXX仓库存储基地;开发单位:内蒙古工业大学信息工程学院软件09-1班;主管部门:计算机系领导 b.软件名称:仓库信息管理系统
1.3定义
【列出文当中所用到的专门术语的定义和缩写词的原文。】
实体:客观世界中存在的且可互相区别的事物。联系:客观事物中的彼此之间的关系。属性:实体或者联系所具有的性质。
管理员:指日常管理维护本软件的管理人员或仓库主管单位的领导。
1.4参考资料
[1]李香敏《SQL Server 2000 编程员指南》第1版.北京.希望电子出版社 [2]张海藩《软件工程导论》第五版.北京.清华大学出版社
[3]陶宏才.《数据库原理及设计》.第1版.北京.清华大学出版社.2004年 [4]小型仓库管理系统软件需求规格说明书 [5]2006软件综合设计指导书
2.任务概述
2.1目标
1.提高工作人员的正确性,省略了手工核对的工作量。2.仓库是货物贸易的核心部位,管理好仓库可以使贸易更加便捷,在繁忙的人去管理仓库的同时,人的能力是有限的,而仓库管理系统可以大大的提高工作效率,在总的方面进
三、需求规格说明书
3.4.5.6.行调动。
在管理方面更加便捷,无需复杂的人员记录,管理领导在输入相应的信息后可以直观的了解各个仓库的各种详细动态。
采购人员在这里可以根据本软件清晰地了解到哪里需求较大,哪里需求较小,从而去合理的进行采购。
仓库管理系统可以使企业领导、客户在更高的层面去了解销售详细信息,并且可以更好地规划业务模式,实现利益最大化,牢固仓库和客户之间的合作关系。功能实现:系统涵盖了仓库管理在实际应用中的各项流程,包括仓库的进销存功能模块,报表生成功能,订单的生成、管理、查询功能以及利润分析功能。系统遵循了易学易用的设计理念,以贴近业务管理,融合财务分析为主要线索,使其成为仓库管理员的高级业务助理
2.2运行环境
操作系统:Microsoft Windows 2000 Advanced Server 支持环境:IIS 5.0 硬件:
标准配置:
CPU::P166以上 内存:32M以上
硬盘空间:200M以上 标准键盘、标准鼠标、标准显示器 标准VGA显卡 推荐配置:
CPU:P300以上 内存:64M以上 硬盘空间:1G以上 标准键盘、标准鼠标、标准显示器 标准VGA显卡 100M以太网卡 软件:
标准配置:
数 据 库:Microsoft SQL Server 200
2.3条件与限制
(1)对仓库管理的专业调配等具体技术细节缺乏足够的知识。(2)缺乏和用户的足够的沟通,对目标系统很难有精确的定位。
三、需求规格说明书
3.数据描述
3.1静态数据
员工编号、管理人员账号、密码
3.2动态数据
输入数据:商品编号、供应商信息、商品单价、数量、用户账号和密码 输出数据:商品信息、出入库时间、数量
3.3数据库介绍
本系统是一种工作在windows系统平台的软件,它是以SQL数据库为基础
3.4数据词典
名称:用户名别名:name描述:仓库管理管理系统管理员的唯一标识定义:用户名=15{字符}位置:用户登陆表
三、需求规格说明书
名称:密码别名:password描述:登录仓库管理系统的唯一认 证标记定义:密码=15{数字}位置:用户登陆表
名称:商品编码别名:SPM描述:仓库商品的唯一标识定义:商品编码=8{字符}位置:商品信息表 库存信息表 进货信息表 退货信息表 商品销售信息表 商品退货信息表
三、需求规格说明书
名称:商品信息别名:SHB描述:商品的基本属性定义:商品信息=商品编码+商品名称+数量+供应商+当前库存位置:库存信息表 进货信息表 供应商信息表 商品销售信息表 退货信息表
名称:库存信息表别名:KCB描述:每一天仓库存储信息的更新 清单 定义:库存信息表=商品编码+商品名+当前库存+商品单价+销售总量+退货总揽位置:库存信息表
三、需求规格说明书
名称:进货信息表别名:JHB描述:仓库购入商品的信息定义:进货信息表=商品编码+商品数量+单位+单价+供应商+进货时间位置:进货信息表
名称:供货商信息表别名:GHSB描述:采购员采购商品的联系人员表或厂家信息表定义:供货商信息表=供货商名称+联系人电话+联系人方式+传真+地址+邮政编码位置:供应商信息表 进货信息表 退货信息表
三、需求规格说明书
名称:商品销售信息表别名:XSB描述:对销售出去的信息的总体统计记录定义:销售信息表=商品编号+销售数量+购买人+购买时间位置:输出到打印机 商品销售信息表
名称:退货信息表别名:THB描述:对退回的货物信息进行登记汇总定义:退货信息表=商品编号+退货数量+单位+单价+供应商+退货时间位置:输出到打印机 退货信息表
三、需求规格说明书
名称:商品退货信息表别名:SPTHB描述:对退回的商品进行登记统计定义:销售信息统计表=商品编号+退货数量+退货人+退货时间位置:输出到打印机 商品退货信息表
3.5数据采集 3.5.1 E-R图
综合E-R图
三、需求规格说明书
供应商信息供应商n供应m商品商品信息表g退货信息表进货进货信息表h退货人j退货k仓库管理仓库管理员ptq销售记录表销售库存信息表r购货方 仓库 E-R 图
库区编号仓库主管仓库面积仓库
商品 E-R图
三、需求规格说明书
商品编码商品名称商品单价供应商库存数量n商品存储m仓库入库时间出库时间采购员库区号管理负责人 销售 E-R图
商品名称购买日期商品编码商品K购买L消费者购买数量商品单价
商品名称商品编码生产厂家数量p商品销售q仓库单价销售日期购买人销售管理员
退货 E-R 图
三、需求规格说明书
商品名称商品编码生产厂家退货数量p商品退货q仓库单价退货日期退货人主要负责人
3.5.2 IPO图
IPO 表系统:仓库管理系统 作者:张启松模块:进货管理 日期:2011/11/2编号:4被调用:仓库管理系统输入:商品信息调用:产生订货清单;添加、删除商品信息输出:商品、供应商信息处理:对入库的货物的具体信息进行登记、删除,便于了解 仓库存储状态局部数据元素:商品名称、编码、单价、供应商信息等注释:
三、需求规格说明书
IPO表系统:仓库管理系统 作者:张启松模块:系统登录 日期:2011/11/2编号:1被调用:仓库管理系统调用:登录输入:用户名和密码输出:登录成功或登录失败处理:省份验证局部数据元素:用户名、密码注释:
三、需求规格说明书
IPO 表系统:仓库管理系统 作者:张启松模块:人员管理 日期:2011/11/2编号: 8被调用:仓库管理系统输入:工作人员信息调用: 人员管理输出:工作人员信息处理:仓库员工的管理局部数据元素:姓名、性别、年龄、职称、工资等
注释:
三、需求规格说明书
IPO 表系统:仓库管理系统 作者:张启松 模块:销售管理 日期:2011/11/2编号:5被调用:仓库管理系统输入:商品信息调用: 销售输出:商品销售记录处理:对商品销售具体信息进行记录、以及对顾客退货的信息进行处理局部数据元素:商品名称、编号、单价、销售时间、数量、购货人等
注释:
三、需求规格说明书
IPO 表系统:仓库管理系统 作者:张启松模块:供货商管理 日期:2011/11/2编号:3被调用:仓库管理系统调用: 供货商输入:供货商输出:供货商信息处理:根据输入的供货商,对供货商的信息进行添加、修改、删除等局部数据元素:供货商信息、商品编码、名称、数量、等
注释:
4.功能需求
4.1功能划分
1)系统登录
用户可根据用户名和密码登录系统,选择自己 2)系统设置
(1)添加删除用户:只限于管理员操作。管理员可以向里面添加和删除用户信
三、需求规格说明书
息,也可修改用户密码。3)供应商信息管理(1)供应商信息的添加(2)供应商信息的修改;(3)供应商信息的删除;(4)供应商信息的查询;
4)库存管理
(1)商品信息的添加。对商品的基本信息进行录入并保存。
(2)商品信息的修改:在有商品进入时,修改库存商品的基本信息,更新商品的信息,使商品信息始终是最新的商品信息。
(3)商品信息的删除:当商品没货时,又不准备再进相同的货时,可以将该商品的信息从库存清单中删除,保证信息库中无冗余的数据。(4)库存信息的查询。(5)库存不足发出警报信息。5)进货管理
(1)由库存清单的信息产生订货清单。
(2)商品的验收,当符合要求时选择入库,反之,选择退货。6)销售管理
(1)销售信息的添加(统计时)。
(2)销售信息的删除(退货时)。
(3)销售信息的统计(上周、本周销售,上月、本月销售)。(4)销售信息的查询(主要针对销售统计)。7)人员管理
(1)工作人员信息的添加。
(2)工作人员信息的删除。(3)工作人员信息的修改。(4)工作人员信息的查询
4.2功能描述 4.2.1用户登录
系统登录功能的主要功能是对用户身份进行验证,只有在系统登录时输入合法
三、需求规格说明书
用户名和密码才能进入仓库管理系统。
退出系统功能保证用户在已经保存当前操作的情况下安全退出,防止不必要的信息丢失
用户注销功能在不退出系统的情况下更改登陆用户
4.2.2仓库管理
库存管理的主要功能是产生进货、退货、商品销售、商品退货的清单,并进行库存的盘点和验收
4.2.3 业务查询
业务查询模块主要实现对当前库存量的查询,对销售历史记录的查询,以及对仓库进货、退货,商品销售、退货信息的查询
4.2.4 系统设置
系统设置模块主要是对供应商信息和登陆用户信息的管理。能够实现对供应商和登陆用户信息的添加、修改、删除功能。
5.性能需求
5.1数据精确度
数据精确度:单价小数点后保留两位有效数字、商品编码为六位。软件的输入精度:小数点后保留1位有效数字 输出数据精度的要求: 小数点后保留1位有效数字 传输过程中的精度: 小数点后保留1位有效数字
5.2时间特性
(1)查询速度:不超过10s(2)其他所有交互功能反应速度:不超过3s(3)可靠性:平均故障间隔时间不低于200h(4)响应时间:0.5秒以内(5)更新处理时间:0.5秒钟以内
三、需求规格说明书
(6)数据的转换和传送时间: 1秒以内(7)解题时间: 1秒以内
5.3适应性
操作方式上的变化:该软件实用与现在流行的操作系统精度和有效时限的变化,可以根据实际情况自行设置
6.运行需求
6.1用户界面
【如屏幕格式、报表格式、菜单格式、输入输出时间等。】
6.2硬件接口
1.登陆终端的接口 2.打票终端机的接口 3.条码录入终端机的接口
6.3软件接口
图1登录时的用户名和密码
三、需求规格说明书
D3 商品信息用户名4仓库管密码以进货管理员及身份理选择4.1产生订货清单库存清单4.1.1添加商品信息4.1.2删除商品信息D2 供货商信息
图2进货管理模块
D3 商品信息商品销售信息仓库管理员用户名密码5销售管理5.1销售商品5.2 顾客退货打印小票采购员顾客5.3销售仓库管销售统统计理员计表
图3商品销售模块
三、需求规格说明书
D2 供货商信息用户名3仓库管密码以供货商理员及身份管理选择3.1添加供货商3.2删除供货商3.3修改供货商3.4查询供货商信息仓库管理员
图4供货商管理模块
D4 工作人员信息仓库管理员用户名8密码以人员管及身份理选择8.1添加人员信息8.2 删除人员信息8.3修改人员信息8.4工作人员信息表查询人员信息
图5人员管理模块
仓库管理员6.4故障处理
4.(1)在输入数据不符合定义时
提示正确类型并重新输入; 5.(2)用户名和密码输入三次还没有正确输入,则系统自动锁定;
三、需求规格说明书
6.(3)数据在数据库中已有备份,系统出错时可以靠数据库恢复;
7.(4)再启动技术,使软件从故障点恢复执行或使软件从头开始重新运行的方法;
8.(5)断电后系统会自动保存数据。
7.其它需求
7.1安全保密设计
9.对数据库的查看访问必须有用户名和密码
10.安全性:登录系统时需要正确的用户名和密码,当密码和用户名错误输入三次,系统不允许再输入。当电脑因意外断电,系统将自动保存信息
7.2维护设计
11.详细编写各阶段的文档资料,利于开发和维护。