教材管理系统的设计与实现Word文档格式.docx
《教材管理系统的设计与实现Word文档格式.docx》由会员分享,可在线阅读,更多相关《教材管理系统的设计与实现Word文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
处理器:
InterPentium41。
6Hz或更高。
内存:
256MB
硬件空间:
40GB
第二章 系统需求分析
2.1需求分析
1设计需求分析的主要内容及要求
设计题目:
教材管理系统
需要完成的功能模块:
1)教材入库
2)教材出库
3)教材库存查询
4)教材入库管理
5)教材出库管理
6)教材信息录入
7)教材信息管理
8)主界面模块
9)系统登录模块
2数据库需求分析
1、近年来,随着高教改革的深入和持续多年的扩招,高等院校的在校大学生和研究生数量迅速增加,因而对教材的需求量和使用也相应地大幅度增加,同时,由于在各大高校,为适应人才市场的需要,也在不断地进行着专业的调整和更新,课程改革也在逐步推进,从而使得学校里所使用的教材种类越来越多,手工或效率较低的软件对于教材管理而言,使得工作人员和管理部门的劳动强度越来越大,为获取有效的信息所花费的时间也越来越长;
2、很多的用人单位在聘用大学毕业生时,却要求他们具有较新、甚至是最新的知识结构.教材信息管理工作是一项既复杂又艰辛的工作,管理人员每天都要做大量的进书、出书、做账等工作。
对于手工管理而言,其难度之大和效率之低是勿容置疑的,特别是盘点(即清查库存量)和收集统计信息时,这些工作有时甚至需要人工花很多天时间才能完成,常常使人疲惫不堪.而且有时发现,花了大量心血的结算清单是错误的,或者是所收集的信息是不准确的,则更使人头疼,而这些工作又是教材管理中非常重要的工作,需要经常地做.显然这种手工管理方式既费时又费力,不能适应目前教材管理的实际需要.因此,教材管理水平的高低直接影响教学工作的进行、教学质量的提高和合格人才的培养,开发和使用高校教材管理信息系统是改善和提高教材管理水平的一个重要途径。
我们所开发的高校教材管理系实质是设计一套先进的数据库管理模式,在此模式上组织数据,定义数据库结构和各种功能及操作,而设计一个合理的数据库管理模式的关键在于要有完善的数据需求分析。
第三章 系统总体设计
3。
1系统功能模块的设计
2数据库设计
数据库设计师课程设计的核心部分,教材管理系统一共包括五个表:
user,
StorageOut,StorageIn,StorageTotal,TeachingMaterial。
教材管理的主要工作是教材的预定、采购、登记、管理、发放等,良好地完成这些工作需要管理员定期的对库存教材进行清查和统计分析,并及时与各院系、各教研室取得联系,征求各方面的建议及要求,工作性质十分重要,工作量极大。
近年来,随着国家教学改革的不断的深化,高校办学规模的不断的扩大,学生人数逐年增长,教材的采购量和分发量也在不断的增长.库存书籍的统计、图书的出入库的管理、教材预定以及教材的财务情况等管理工作的工作量不断的增加,教材管理的难度也随着提高。
一些院校的教材管理工作甚至仍然是在手工记录的基础上进行,在不同部门科室间的信息传递也是手工的记录和单据。
每个新学年开始教材的采购、分发以及教材的财务管理等工作量比较大,很主要的因素就是教材管理的方法和手段的落后。
显然这与院校当前教学改革的步调不一致,更难以满足以后更多学生所需教材的管理。
为了将管理人员从繁琐的工作中解脱出来,真正地实现办公自动化,并充分发挥计算机管理及校园网的作用,实现信息在校园网上的迅速交流,研制和开发网上教材管理系统具有十分重要的现实意义。
现在可以见到教材管理的软件,网上也能查到,各有其特色,这与不同学校的管理方式及使用的开发工具有关。
但是基于网上工作方式的教材管理系统很少,本系统使用C/S教材管理系统,以数据库为基础,教材的查询、配置、预定、统计等管理功能,以提高工作的效率.
本系统用到了5个表登陆表、教材入库表、教材出库表、教材库存表、教材基本信息表。
以下依次列出5个表的具体信息。
3.3数据库表的设计
登陆表如下:
字段名称
数据类型
长度
备注
Id
文本
10
用户名
Sn
15
密码
教材入库表如下:
StockNumber
数字
长整形
教材入库编号
Name
50
教材名称
Author
教材作者
BookConcern
出版社
StorageQuantity
单次入库数量
Handled
经手人
Data
日期/时间
入库记录日期
教材出库表如下:
教材出库编号
单次出库数量
领取班级
出库记录时间
教材库存表如下:
DocumentNumber
教材编号
修改日期
Tatal
库存数量
Branch
教材所属
教材基本信息表如下:
Price
教材单价
时间
第四章 系统详细设计与实现
4。
1数据库连接功能
本教材管理系统的课程设计用到的数据库连接的功能单独写在DBconnection.java的文件中,其中包括数据库连接、数据库查询、数据的更新插入等功能的具体实。
publicStringurl="
jdbc:
odbc:
driver={MicrosoftAccessDriver(*。
mdb)};
DBQ=data/mydb。
mdb"
;
//创建connection对象
publicConnectionconn;
publicstaticDBconnectiononly;
//创建DBC对象
publicstaticDBconnectiongetInstance(){
if(only==null){
returnnewDBconnection();
}else{
returnonly;
}
}
//创建数据库连接
publicvoidgetConnection(){
try{
Class.forName("
sun。
jdbc。
odbc.JdbcOdbcDriver"
);
conn=DriverManager.getConnection(url,”"
,”"
);
}catch(SQLExceptionex){
javax.swing.JOptionPane.showMessageDialog(null,
ex.getMessage().toString());
}catch(ClassNotFoundExceptionex){
ex.getMessage().toString());
//数据库查询方法
publicResultSetexecuteQuery(Stringsql){
ResultSetrs=null;
try{
getConnection();
Statementstmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}catch(SQLExceptionex){
javax.swing.JOptionPane。
showMessageDialog(null,
ex。
getMessage()。
toString());
returnrs;
publicbooleanexecuteUpdate(Stringsql){//更新,插入数据并返回是否成功
getConnection();
inti=0;
Statementstmt=conn。
createStatement();
i=stmt。
executeUpdate(sql);
stmt。
close();
conn.close();
javax。
swing.JOptionPane。
showMessageDialog(null,
returnfalse;
if(i>
0){
returntrue;
}else{
}}
2界面功能实现
主界面是整个系统的操作的主体部分,把所有的功能和所集成的小工具都放在这个功能模块上面,所以在做的时候很细致,用一种比较友好的界面来展示我们这次课程设计——教材管理系统,如图所示。
主界面的功能主要是调用各个功能模块,大多都是重复的所以只列举出来部分代码,再把添加图片的部分代码显示出来,因为大多也是重复的;
在主页面上做了系统时间的调用和两个小工具的系统调用,下面会详细列出:
下面列出部分添加图片的代码:
StorageInButton.setIcon(newjavax.swing。
ImageIcon("
image/in_副本.jpg"
));
StorageOutButton.setIcon(newjavax。
swing.ImageIcon(”image/out_副本。
jpg”));
其他的如此相仿,下面写出调用其他功能模块的代码也是列出部分,其他的如此相仿:
privatevoidSearchTotal(java。
awt.event。
ActionEventevt){
//TODO主界面教材库存查询:
SearchTotaltotal=newSearchTotal();
total。
show();
privatevoidOutWarehouseManage(java。
awt。
event.ActionEventevt){
OutWarehouseManageoutmanage=newOutWarehouseManage();
outmanage.show();
privatevoidInWarehouseManage(java。
event。
ActionEventevt){
//TODO主界面教材入库管理:
InWarehouseManageinmanage=newInWarehouseManage();
inmanage.show();
下面列出调用系统记事本和计算器的代码和调用系统时间的代码:
privatevoidmiCalc(java。
awt.event.ActionEventevt){
//TODO调用系统计算器:
try{
Runtime.getRuntime().exec("
calc.exe”);
}catch(IOExceptione){
//TODOAuto—generatedcatchblock
e。
printStackTrace();
}
privatevoidNoteBook(java。
awt.event.ActionEventevt){
//TODO调用系统记事本:
Runtime。
getRuntime().exec("
notepad。
exe"
}catch(IOExceptione){
e。
}
/******************************时间********************************/
classTimeextendsThread{
publicvoidrun(){
Calendarcal;
while(true){
try{
cal=Calendar.getInstance();
Stringnow=cal。
get(Calendar。
YEAR)+"
年"
+(cal.get(Calendar.MONTH)+1)+"
月"
+cal.get(Calendar.DATE)+"
日"
+cal。
HOUR)+"
时”
MINUTE)+"
分"
+cal.get(Calendar.SECOND)+”秒”;
lblNowtime.setText(now);
Thread。
sleep(500);
}catch(InterruptedExceptione){
//TODOAuto-generatedcatchblock
JOptionPane。
showMessageDialog(null,e.getMessage()
.toString());
}
}
4.3教材入库功能实现
教材入库模块是根据取得教材的基本信息进行相应的入库添加操作,具体界面如图4。
3所示:
此模块有添加、刷新和返回主界面的功能
4.4教材出库功能实现
教材出库模块是根据取得教材库存信息进行相应的出库添加操作,具体界面如图4.4所示:
教材出库模块跟教材入库模块的代码相似性达到90%,在这里就不详细列出,只是在出库的时候把之前的相加运算改成相减运算,一下列出这点不同的地方:
tempTotal=Integer。
parseInt(Stock_TextField.getText())
-Integer。
parseInt(StorageQuantity_TextField.getText());
其中Integer.parseInt(Stock_TextField.getText())是获取Stock_TextFie文本框中库存数量在强制转换成整型,StorageQuantity_TextField文本框是此次出库教材数量.
教材库存的教材数量都存在数据库的教材库存表中,每次的教材出入库都是在教材库存表中进行读取,以教材出库为例,每次出库都把出库的事件保存在教材出库表中,教材入库表如法炮制,每次的出入库都有详细的历史记录,方便以后的管理和查询.
4.5教材库存功能实现
教材库存模块的建立是为了保存、查询和查阅教材的在库库存情况,里面存放了每种教材的库存数量,也就是总的库存信息都在这里,如图4。
5所示:
图4.5
第五章系统测试
为了保证测试的质量,将测试过程分成几个阶段,即:
代码审查、单元测试、集成测试、确认测试和系统测试。
(1)单元测试
单元测试集中在检查软件设计的最小单位—模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误.
(2)集成测试
集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。
如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;
把子功能组合起来可能不产生预期的主功能;
个别看起来是可以接受的误差可能积累到不能接受的程度;
全程数据结构可能有错误等.
(3)确认测试
确认测试的目的是向未来的用户表明系统能够像预定要求那样工作.经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。
(4)系统测试
软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试.包括恢复测试、安全测试、强度测试和性能测试等。
单独对系统的测试主要从以下几方面入手:
①功能测试:
测试是否满足开发要求,是否提供设计所描述的功能,是否用户的需求都得到满足。
功能测试是系统测试最常用和必须的测试,通常还会以正式的软件说明书为测试标准。
②强度测试及性能测试:
测试系统能力最高实际限度,即软件在一些超负荷情况下功能实现的情况。
经过上述的测试过程对软件进行测试后,软件基本满足开发的要求,测试宣告结束。
结论
在网络环境下建立教材管理系统对于减轻教材管理人员的劳动强度、提高工作质量和效率、方便管理人员对信息的查询、提高信息资源的利用率和管理水平都具有重要意义。
在此阶段中,主要是弄清本课题需要解决的问题根本所在,以及此课题所需的资源等。
这也是每个软件开发的第一步,只有了解了每个项目所必需要做的事,才能把项目继续下去,为此我们要对所做的课题进行一个基本的了解。
本系统是一个教材管理软件,教材管理在高校的教学管理工作中占有较重的分量。
所以很多长期从事教学工作的人们一直希望使用电脑来处理这些繁重的工作。
在前些年,很多高校都利用了电脑来进行教学管理工作,但由于一直没有开发出比较好的教材管理系统或者那些系统跟网络的结合不够,由此很多高校工作人员体会到了缺少适合自己学校的教学管理系统的切肤之痛。
例如:
我们学院就是因为还没有一个较完整的教材管理系统,而影响了学院教学工作的办公效率,许多老师要申报的教材不能及时反应到教务处,而教务处审批的结果也不能及时的发布,还得文件的方式发布。
鉴于此,在学院和教务处各级领导的重视下我对许多高校的教材管理系统进行了深入的研究,取长补短,并结合本学院的实际而开发了本教材管理系统。
参考文献
[1]耿祥义,张跃平.Java2实用教程[M]。
北京:
清华大学出版社,2004。
[2]冯凤娟.数据库原理及Oracle应用[M]。
北京:
清华大学出版社,2004
[3]赛奎春.JSP信息系统开发实例[M]北京:
机械工业出版社,2005
[4]吴亚峰,NetBeans、java桌面与企业级程序开发[M]北京:
人民邮电出版社,2007
[5]施伟伟.ASP。
NET2。
0数据库通用模块开发与系统移植[M].北京:
清华大学出版社,2007
[6]武新华,秦连清。
ASP.NET+SQLServer典型网站建设[M]。
电子工业出版社,2007