软件工程课程设计教材订购系统Word下载.docx
《软件工程课程设计教材订购系统Word下载.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计教材订购系统Word下载.docx(18页珍藏版)》请在冰点文库上搜索。
a.人力与设备费用的节省;
b.人员工作效率的提高。
2.3条件、假定和限制
a.法律和政策方面的限制:
不违反国家的法律。
b.硬件、软件、运行环境和开发环境的条件和限制:
奔腾300以上,运行于Windows系统全系列。
c.建议开发软件投入使用的最迟时间:
开发后3个月。
2.4可行性研究方法
对教材订购的调查。
2.5决定可行性的主要因素
技术可行性、经济可行性和法律可行性。
对现有系统的分析3.
3.1处理流程和数据流程
a.现行系统:
采用手工方式,教师、学生提交订书单,经教材科审核,
并返回相应的票据。
付款后教师等待教材科人员对书库现存图书的检查,若
书库中没有,则通知采购人员采购,采购后,通知教师或学生取书。
b.分析:
(1)存在教师等待时间较长的问题。
(2)书库中书的数量变化查询时,由于采用手工,速度过慢。
(3)采购员有能及时准确知道哪些书需要购买、更新或者补充。
3.2人员
需要4个人,精通数据库SQLServer和VB。
3.3设备
计算机。
3.5开发新的系统的必要性
便于教材订购的管理,并且节省了大量的人力和财力。
4.所建议技术可行性研究
4.1对系统的简要描述
此软件是为各个大学的教材订购进开发的,安装、使用十分方便简单,有
良好的安全性,并且有很好的兼容性。
4.2处理流程和数据流程
教师和学生在使用本系统之前,须在线进行身份验证,注册系统有效
身份之后,才能进行选书购书,提交购书单,书库进行核对,发书。
与现有系统比较的优越性:
更有效率、更安全。
采用建议系统可能带来的影响对现有设备,软件设备
均无影响
4.3技术可行性评价
a.利用VB以及SQLServer等技术。
b.在限制条件下,功能目标是否能达到:
看是否能给出正确的信息和提示。
c.利用现有技术,功能目标能否达到:
能。
d.对开发人员数量和质量的要求,并说明能否满足:
能满足,4个开发人
员,需要精通数据库技术和VB。
e.在规定的期限内,开发能否完成:
能。
5.所建议系统经济可行性研究
5.1支出
开发人员费用,设备维护费用。
表4-5系统的投资收益表购买设备软件费1.2万元人工费1万元
开发成本费(设备费+人工
2.2万元
费)
每年收入1.14万元
年收(1+i
现值/元累计现值/元n)入/元
1111.12010178.5
10178.57
40007
2111.254
9.88.0119266.58
4004
3111.404
8114.4627381.04
4009
41110573
7245.0034626.04
4005
5111.762
6488.8241094.86
4003
19094.86总
收
入
开发该系统需要支出的费用包括:
基建投资、其他一次性支出,共约1.2万元,采用任务分解法估算该系统的开发供需4人1个月完成,每人月成本为2500元,估计系统的人工费用为2500*4=10000元,开发成本共为1.2万元+1万元=2.2万元。
将来的收入主要体现在每年可节省的人力、耗材等,约每年1.14万元。
估计软件使用寿命为5年。
可以列表计算系统的开发纯收入,系统的投资收益表如表4-5所示,i为12%.
5.2投资回收期
投资回收期=2+2733.42/8114.46=2.34年
社会因素可行性研究
法律因素
符合法律规定没有触犯合同中双方所签署的条款。
用户使用可行性
会使用电脑和对网络的安全性有一点了解的人员均可使用。
结论和意见:
方案可行
经过初步的系统调查,给出了可行性研究报告,并经过主管领导的批准,
还必须对现行系统进行全面、深入的详细调查和分析,弄清楚一行系统运行
状况,发现其薄弱环节,找出要解决的问题实质,确保新系统比原系统更有
效。
详细调查的主要内容包括对现行系统的需求分析的调查以及管理业务的
调查。
2.1需求分析的目的
需求分析对学校教材订购系统进行简单的分析,给出了系统的数据流图。
加
深与用户间的交流,在功能与系统界面上与用户达成一致的看法,以便于开发出
用户满意的系统。
2.1项目背景
随着高校办学规模的扩展,管理方式和管理效率的矛盾日渐突出。
在教材订
购方面,手工管理方式和文档系统管理方式在管理质量和管理效率上,从根本上
不能适应大规模的管理要求。
而随着计算机科学的发展与进步,计算机科学管理
方式,不管在管理效率还是在管理质量上都逐步显示了它的可靠性和优越性。
而
且计算机管理在人力、物力等资源方面都比以前的管理模式要有大的节省。
计算
机管理正以它自身的优越性成为管理模式中的主流。
教材订购管理系统采用计算
机管理模式的必然性也在与此!
本系统以学校为背景,在认真调研和分析了学校订购教材的现状之后,根据
用户的需求和各个功能的关系,作出了积极的设计方案。
在新的管理资源和管理
模式上,一定能使工作质量、工作效率等得到提高,推动学校发展的步伐!
2.3软件产品的作用范围
学校教材订购系统是为高等院校开发的,用于日常的教材管理,包括销售与
采购。
提供数字化的管理,提高学校教材管理部门的工作效率。
2.4一般性描述
3.41本系统可细化为两个子系统:
销售系统和采购系统
销售系统的工作过程为:
首先由教师或学生提交购书单,经教材科发行人员
审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师或学生即可
去书库领书。
若是脱销教材,则登记缺书,发缺书单给书
库采购人员;
一旦新书入库后,即发进书通知。
2.5产品功能
本系统在向学生售书时主要输入学生学号、班级代号、购书数量、购书
书名信息,然后打印领书单返回给学生领取书籍。
本系统在查询数据库时主要输入需要查询的相关信息,包括图书编号、图书
书名、出版社信息、图书特色等信息方便操作人员把握图书信息。
本系统还兼顾一点财务信息的管理,在发生单人购书时,系统直接向购书者
收取现金,内部形成一个小小的财务管理。
本系统还和学校的财务科发生数据交换,发生集体售书时,学根据数据的有
效性,直接向集体售书,形成的财务信息直接和财务科交换,方便结算。
即:
向
学生集体售书时不需要直接收取现金,而待教材科结算时向财务科提交数据,由
财务科从学生的预交书费里扣除,保证教材科财务信息的完整。
2.6数据流图与数据字典
顶层数据流图(DFD)
教
学生证材进书通知学发生行大学教材订购系统
人
员
0
学生证学生信息学生审核
1.销售系统
缺书单
领书单
2.采购系统
教材工作人员
1层数据流图
学生证学生信息1.1
学生审核学生信息存
储
购书单购书单2.11.3缺书单1.2登记缺书更新库存清学生信息处单理
采购单2.2领书单2.3教材工作人员汇总缺书产生订购信
息
3.1引言
3.11编写目的
在前一阶段(学校教材订购系统需求分析)中已解决了实现该系统需求
的程序模块设计问题。
包括如何把该系统化分成若干个模块、决定各模块之
间的的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。
在
以下的详细设计报告中间将对在本阶段中对系统所做的所有详细设计进行说
明。
在本阶段中,确定如何具体的实现所要求的系统,从而在编码阶段可以
把这个描述直接翻译成具体的程序语言书写的程序。
主要工作有:
根据《学
校教材订购系统需求分析说明书》所描述的数据、功能性能需求、处理流程、
总体结构和模块设计,涉及软件系统的结构设计、逐个模块的程序描述。
3.12项目背景
“学校教材订购系统”有两部分组成:
首先由教师或学生提交购书单,经教材发行人
员审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师或学
生即可去书库领书。
若是脱销教材,则登记缺书,发缺书单给书库
采购人员;
一旦新书入库后,即发进书通知给教材发行人员。
3.2定义
3.21专门术语
库存表:
存放库中存在得书籍数据。
出库表:
存放已销售的书籍的数据。
入库表:
存放入库书籍的数据。
购书表:
存放提交的购书信息。
缺书登记表:
存放缺少的书籍的信息。
待购教材表:
存放待购书籍信息。
3.22缩写
系统:
若未特别指出,系统指本“学校教材订购系统”。
3.3需求概述
为方便教师、学生领书,教材发行人员处理各种单据,以及采购人员采
购需开发一个“学校教材订购系统”。
教师或学生提交购书单,经教材发行人
若是脱销教材,则登记缺书,发缺书单给书库采购人员;
要求系统能有效、快速、安全、可靠和无误的完成上述操作。
并要求界面简
单明了,易于操作,数据库利于维护。
3.4功能模块:
学校教材订购系统
输入数据输出数据学生信息
处理
登记缺书学生信息更新库存存储清单
汇总缺书审核
产生订购
信息
3.5程序描述
3.51功能
销售子系统模块:
提交购书单、审核购书单、开发票、登记购书纪录、
返回领书单、修改和维护数据库中相应的表。
采购子系统模块:
发缺书单、登记缺书纪录、拟订待购书信息、发进书
通知单、修改和维护数据库中相应的表。
3.52性能
(1)精度:
购书是由需求决定的,只要有缺书现象则会体现出来,但也因为
这样,如果需要提前多购相关书籍的话,则需要管理人员的参与。
(2)时间特性要求:
定购需要提前若干天。
(3)可靠性:
较高
(4)灵活性:
在购书单未审核时,可以撤消订购或修改,一旦审核,则不能
再修改。
3.53输入项目
需要输入购书单中要求的信息(提交人姓名、书名、
书号、数量、身份识别码)。
需要输入缺书单中要求的信息(书名、书号、数量)。
3.54输出项目
需要打印领书单(书名、书号、数量、领书人姓名),
发票(书名、书号、开票人姓名、交易金额、交易日期)。
需要打印进书通知单(书号、书名、进书日期)。
4.1引言
4.11编写目的
在学校教材订购系统中,已经对本系统所包涵的子模块做了概要的阐述,这
些子模块的具体功能将在本报告中得到详细的阐述。
本阶段已在系统的总体设计的基础上,对学校学校教材订购系统系统做详细
设计。
主要解决了实现该系统程序模块具体设计问题。
包括确定算法,数据结构,
模块接口的使用,数据库的动态操作以及界面设计等。
在下阶段的编码过程中,程序员可参考此详细设计报告,在详细设计中对学校
学校教材订购系统所作的算法设计,数据结构以及数据库动态操作的基础上,对
系统进行编码。
在以后的软件测试以及软件维护阶段也可参考此说明,以便了解
详细设计过程中所完成的各模块算法设计,或在修改时找出在本阶段设计的不足
或错误。
4.12项目背景
“学校教材订购系统”由两部分组成:
4.2系统模块的详细设计
4.21系统功能模块示意图
输入数据输入数据学生信息
学校学校教材订购系统系统功能模块结构图
销售子系统模块具体描述
采购子系统模块具体描述
采购子系统工作过程:
工作人员提交缺书单后,进行审查,无误后登记缺书,
审核登记过程后,汇总缺书,生成采购表,采购结束后发进书通知单,最后更新
相应表单,审核修改过程。
在以上各审核过程中发现错误时,返回上一层重新进
行操作。
4.22用Jackson伪码描述数据转换更新库存清单模块
产生更新库存清单文件seq.
打开两个输入数据文件。
从输入数据文件中读入一条记录。
分析输入数据记录iteruntil文件结束
处理数据记录seq.
产生提交人姓名
产生书号
产生数量
产生新的库存清单
生成一条新的记录
将新的记录写入更新库存清单文件
从输入数据文件中读入一条记录
处理数据记录end
关闭输入数据文件
停止
产生更新库存清单文件end
五、编码为了实现教材委员会对整个教材选取系统的控制,得到教材订单报表,本
系统在C/S端达到上述目的。
它是不发布的,是教材委员会的本地客户端,
其中的销售管理界面如下图。
其相关代码如下:
当点击“删除”按钮时,将弹出对话框询问是否删除。
核心代码:
PrivateSubcmddel_Click()DimanswerAsString
OnErrorGoTodelerroranswer=MsgBox("
确定要删除吗?
"
vbYesNo,"
)
Ifanswer=vbYesThen
Adodc1.Recordset.Delete
DataGrid1.Refresh
MsgBox"
成功删除!
vbOKOnly+vbExclamation,"
Else
ExitSub
EndIf
delerror:
IfErr.Number<
>
0Then
MsgBoxErr.DescriptionEndIf
EndSub
当按下“订购查询”按钮,弹出订购查询界面,输入要查询的信息,点
击查询按钮即可查询
订购查询核心代码:
PrivateSubCommand1_Click()
Dimrs_findreaderAsNewADODB.RecordsetDimsqlAsString
IfCheck1.Value=vbCheckedThen
sql="
教材编号='
&
Trim(Text1.Text&
"
)&
'
EndIf
IfCheck2.Value=vbCheckedThen
IfTrim(sql)="
Then
教材名称='
Trim(Text2.Text&
sql=sql&
and教材名称='
IfCheck3.Value=vbCheckedThen
作者='
Trim(Combo1.Text&
and作者='
请选择查询方式!
vbOKOnly+vbExclamation
Adodc1.RecordSource="
select*from书籍信息where"
sql
Adodc1.Refresh
DataGrid1.ReBind
DataGrid1.AllowAddNew=False
DataGrid1.AllowDelete=False
DataGrid1.AllowUpdate=False
订单管理界面如下图:
DimsqlAsString
DimconAsNewADODB.Connection'
定义连接对象和记录集对象
DimrsAsNewADODB.Recordset
con.connectionstring=Adodc1.connectionstring
con.Open
rs.ActiveConnection=con
select*from待购教材表"
rs.Opensql,con,adOpenKeyset,adLockPessimistic
IfText1.Text<
AndText2.Text<
AndText3.Text<
And
Text4.Text<
rs.AddNew
rs.MoveLast
rs.Fields(0)=Text1.Text
rs.Fields
(1)=Text2.Text
rs.Fields
(2)=Text3.Text
rs.Fields(3)=Text4.Text
rs.Fields(4)=Text5.Text
rs.Fields(5)=Text6.Text
rs.Fields(6)=Text7.Text
rs.Fields(7)=Text8.Text
rs.Fields(8)=Text9.Text
rs.Fields(9)=Text10.Text
添加成功。
64+0,"
提示信息"
rs.Update
Text1.Text="
Text2.Text="
Text3.Text="
Text4.Text="
Text5.Text="
Text6.Text="
Text7.Text="
Text8.Text="
Text9.Text="
Text10.Text="
Text1.SetFocus
请输入完整信息"
Text1.SetFocusEndIf
EndSub
1.
它实施对软件规格说明、设计规格说明和编码的最终审核。
软件测试的
目的是以最少的人力、物力和时间投入,尽可能多地找出软件中潜在的各种
错误和缺陷。
试的结果为软件可靠性分析提供了依据。
2.1
测试库存数,订单数,缺货数2.2
(1):
单元测试也称模块测试或程序测试,单元测试是对每个模块单独进行的,
验证数据是否与模块一致,检查各个模块是否正确实现规定的功能,对模块
的所有主要处理路径进行测试且与预期的结构进行对照,还要对所有错误处
理路径进行测试,从而发现模块在编码中或算法中的错误。
(2):
集成测试也称组合测试或子系统测试,通常采用自顶向下测试和自底向
上测试两种测试方法。
集成测试的对象是指已经通过单元测试的模块,不是
对零散模块进行单个测试,而是用系统化的方法装配和测试软件系统。
(3)
确认测试又称有效性测试。
它的任务是检查软件的功能与性能是否与需
求规格说明书中确定的指标相符合。
(4)
系统测试是对整体性能的测试,主要解决各子系统之间的数据通信和数
据共享问题以及检测系统不否达到用户的实际要求,系统测试的依据是系统
分析报告。
系统测试应在系统的整个范围内进行,这种测试不只对软件进行,
而是对构成系统的硬、软件一起进行。
(5)
在系统测试完成后,进行用户的验收测试,它是用户在实际应用环境中
所进行的真实数据测试。
在具体的测试中,一般应遵循以下原则:
由程序设计者之外的人进行测
试;
测试用例应由两部分组成:
输入数据和预期输出结果;
应选用不合理的
输入数据与非法输入测试;
不仅要检验程序是否实现预期功能,还应检查程
序是否做了不应该做的工作;
集中测试容易出错的程序模块;
对程序修改以
后,必须重新进行测试。
2.4
(1)
入口
a
T
库存记录>
0取库存数
c
F
b
计算缺货数订单数目>
eAND>
库存数
d
返回
其对应的测试代码为:
if(库存记录>
0)取库存数
if(订单数目>
0AND>
库存数)计算缺货数
其中共有4条路径:
P1(abd)P2(abe)P3(acd)P4(ace)
根据被测试程序的流程图可以设计以下输入数据:
库存数=100,订单数=200(通过路径ace)库存数=100,订单数=50(通过路径abd)
库存数=-1,输入错误
2
针对前面的程序,采