教学评价系统的设计学位论文Word格式文档下载.docx
《教学评价系统的设计学位论文Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《教学评价系统的设计学位论文Word格式文档下载.docx(29页珍藏版)》请在冰豆网上搜索。
(4)评价指标管理,要想评价老师,必须有评价指标,管理员负责维护这些评价指标信息。
(5)评价结果浏览,学生登录系统后,选择老师进行评价,评价完毕后,管理员登录系统,可以浏览学生对老师的评价信息。
(6)修改密码功能,为了保证系统的安全性,管理员可以修改自己的密码
(7)系统管理,管理员可以添加普通管理员,用于协助管理本系统,系统业务流图如图2-1所示。
图2-1系统业务流图
新系统的目标确定后,可以从经济可行性、技术可行性和运行可行性三个方面对能否实现新系统目标进行可行性分析。
2.2经济可行性
软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益,我们开发的这套系统正是考虑为教学评价系统的使用者提高工作效率,节省工作时间,方便操作与管理而设计。
本系统的开发在经济上是完全可行的。
开发此软件不需要大量经费,而且是个人独立设计,可以节省许多费用,同时也可提高个人的实际动手能力。
2.3技术可行性
根据该系统目标来衡量所需的技术是否具备,一般可从硬软件的性能要求、环境条件、操作人员水平和数量等方面去考虑和分析。
考虑到系统实施的可行性,在软件方面选择了如今较流行的MyEclipse工具来进行开发管理平台的设计,使用MYSQL数据库存储数据。
在硬件方面,则选择空间较大,硬件的配置越高,系统的开发与运行会更流畅。
考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。
在软件方面,由于MyEclipse和MYSQL是两个非常成熟的开发工具,无论在安全性、可用性、可靠性方面都毫无置疑,因此软件方面是可行的。
2.4运行可行性
本教学评价系统操作简单易行,所以使用前的培训也比较容易,此系统网站的管理人员对开发此应用项目的态度确定而且管理方面的条件都比较成熟。
经过以上分析,运行方面是可行的。
2.5小章总结
可行性分析的任务是明确应用项目开发的必要性和可行性。
本章主要对系统开发的可行性进行具体的分析,从用户角度考虑本系统是否可行,主要通过有力的数据和软件运行环境方面作为依据。
通过经济可行性、技术可行性、运行可行性等方面的分析说明本工程的技术成熟、完备,测试手段可靠,具有良好的市场拓展,它追求的是简单、易学、易懂、易用,因此,本系统具有一定的开发前景,具有开发的价值。
3需求分析
3.1教学评价系统需求分析
经过对教师教学评价过程的考察、分析,要求本系统具有以下功能。
(1)系统管理员管理整个系统,包括公司老师信息的管理、学生信息的管理、评价指标管理、评价查看管理等。
(2)老师信息的管理,录入老师信息,浏览管理已经录入的老师信息,对于过期的老师信息予以删除。
(3)学生信息管理,录入学生的基本信息,浏览管理已经录入的学生信息,对于错误的学生信息予以删除或者更新。
(4)评价指标管理,要想评价老师,必须有评价指标,管理员负责维护这些评价指标信息。
(5)评价结果浏览,学生登录系统后,选择老师进行评价,评价完毕后,管理员登录系统,可以浏览学生对老师的评价信息。
(6)修改密码功能,为了保证系统的安全性,管理员可以修改自己的密码
(7)系统管理,管理员可以添加普通管理员,用于协助管理本系统。
3.2数据流图
系统总数据流图如图3-1所示
图3-1 系统总数据数据流图
3.3本章小结
需求分析报告是对系统需求的全面分析,是软件生存周期中最关键的一步,是建立软件开发的基础。
经过需求分析要得到系统将要“做什么”,同时理解在做什么的基础上抽取出其“怎么做”的本质。
4总体设计
4.1系统模块总体设计
利用层次图来表示系统中各模块之间的关系。
层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。
树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据元素(不能再分割的元素)。
随着这种结构的精细化,层次方框图对数据结构也描绘得越来越详细,这种模式非常适合于需求分析阶段的需要。
从对顶层开始,沿着图中每条路径反复细化,直到确定了数据结构的全部细节为止。
本系统一共分为管理员模块、学生模块,各个模块之间虽然在表面上是相互独立的,但是在对数据库的访问上是紧密相连的,各个模块访问的是同一个数据库,只是所访问的表不同而已。
每个模块的功能都是按照在调研中搜集的资料进行编排制作的。
依据上述功能分析,系统在两个模块的基础上每一个模块又分为几个模块。
1.管理员功能模块:
(7)系统管理,管理员可以添加普通管理员,用于协助管理本系统,管理员模块功能结构图如图4-1所示。
图4-1 系统管理员用户功能结构图
2.学生模块:
(1)评价老师,学生登录系统后可以选择在线评价老师教学质量,首先选择老师,然后选择分数,点击保存按钮,如果该学生对这个老师已经评价过,系统提示已经评价。
不能进行重复评价,学生功能结构图如图4-2所示。
图4-2 学生模块结构图
4.2数据库设计
对于一个管理系统而言,为了支持较大的访问量,带来的数据访问需求,使用桌面型的数据库管理系统是不能满足需要的,而且安全性也没有充分保障。
因此,需要使用大型商业化企业级服务用途的数据库管理系统,如SQLServer,Oracle等。
本系统采用MYSQL5.0数据库管理系统。
4.2.1数据分析
对于本系统的数据库的需求而言,由于其主要是用于信息的提供、保存、更新和查询等。
因此,需要分析该系统功能所隐含的对数据应用的需求,从而确定数据库的结构。
(1)老师信息管理功能需要对老师信息建立数据表,其中的数据项可能包括老师编号、姓名、性别、年龄等;
(2)学生信息管理,负责维录入学生的信息。
其中的数据线可能包括学生好、姓名、性别、年龄、帐号、密码等
(3)评价指标管理,管理评价指标信息。
其中的数据线可能包括指标名称、分数等
(4)评价结果浏览,学生评价完毕老师后。
管理员可以浏览对老师的评价信息,其中的数据线可能包括指标名称、分数、老师编号、学生学号、评价时间等
(5)需要系统管理员对该系统进行管理,因而需要建立管理员信息数据表,其中的数据项包括管理员ID、密码等。
4.2.2数据库的详细设计
在设计数据库时,应考虑以下事项
(1)数据库的用途及该用途将如何影响设计,应创建符合用途的数据库计划;
(2)数据库规范化规则,防止数据库设计中出现错误;
(3)对数据完整性的保护;
(4)数据库和用户权限的安全要求;
(5)应用程序的性能需求,设计数据库时必须利用MYSQL5.0中能够提高性能的功能。
对于性能而言,在数据库大小和硬件配置之间权衡也是很重要的;
(6)数据库维护。
数据库E-R如图4-4所示。
图4-4数据库E-R图
根据此评价管理系统的实际情况,本系统的数据库命名为db_pingjia,db_pingjia数据库中共分为6张数据表。
1.老师信息
表4-5 t_tea(老师信息表)
序号
名称
别名
类型
长度(字符)
1
ID
ID
Int
4
2
bianhao
老师编号
varchar
50
3
name
姓名
sex
性别
varchar
5
age
年龄
2.学生信息表
此表用于记录学生的基本信息,如表4-6所示。
表4-6 t_stu(学生信息表)
id
编号
int
xuehao
学好
age
6
loginname
登录帐号
7
loginpw
登录密码
3.评价指标信息表
此表用于记录评价指标的基本信息,如表4-7所示。
表4-7 t_zhibiao(评价指标信息表)
mincheng
指标名称
fenshu
指标分数
4.评价信息表
此表用于记录对老师的评价信息,如表4-8所示。
表4-8 t_pingjia(评价信息表)
评价ID
tea_id
老师ID
zongfenshu
评价分数
stu_id
学生ID
shijian
评价时间
date
5.评价选项信息表
此表用于记录对老师评价的详细信息,如表4-9所示。
表4-9 t_pingjia_xuanxiang(评价选项表)
id
zhibiao_id
指标ID
分数
pingjia_id
6.管理员信息表
此表用于记录不同权限管理员的基本信息,可以管理系统的所有信息。
如表4-10所示。
表4-10 t_admin(管理员信息表)
userId
管理员ID
userName
管理员名称
3
userPw
管理员密码
4.3本章小结
本章介绍了对本系统的总体设计,给出了教学评价系统系统的功能结构图、E-R图等,说明了各子系统的之间的联系。
本章完成了系统数据库的数据需求分析的过程,说明了数据库由概念结构设计转换成逻辑结构设计的过程,并把各个物理数据模型结合起来形成了一个整体的关系数据库模型,为系统详细设计作好了充足的准备工作。
5详细设计与实现
5.1系统运行平台设置
本系统的运行平台设置分为硬件环境和软件环境。
5.2运行环境
1.硬件环境
系统的硬件环境配置为处理器PentiumIII800,内存512M,硬盘1G。
2.软件环境
系统的软件环境配置为WindowsXP操作系统,MYSQL5.0数据库,JDK1.5、MyEclipse5.1开发工具包和Tomcat6.0服务器。
5.3开发工具及技术简介
以下内容是对本系统所采用的开发工具和技术进行的简单介绍。
5.3.1开发工具简介
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。
在结构上,MyEclipse的特征可以分为7类:
(1)J2EE模型;
(2)WEB开发工具;
(3)EJB开发工具;
(4)应用程序服务器的连接器;
(5)J2EE项目部署服务;
(6)数据库服务;
(7)MyEclipse整合帮助。
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。
MYSQL5.0是一种采用T-SQL语言,基于C/S模式的关系型数据库管理系统。
MYSQL5.0存储和管理数据有以下优点
(1)每个数据项都存储在中央位置,所有用户都可在这个位置使用它们;
(2)各个客户端上不单独存储数据项复本,从而消除了因用户不得不确保使用的信息相同所带来的麻烦。
系统不需要确保使用当前值更新所有数据复本,因为中央位置仅有一个复本;
(3)可以在服务器上一次性定义业务和安全规则,并对所有的用户平等执行
(4)可以在数据库内通过使用约束、存储过程和触发器来强制执行规则。
还可在服务器应用程序中执行规则,因为这些应用程序也是许多客户端访问的中央资源;
(5)关系数据库服务器只返回应用程序所需要的数据,优化了网络流量;
(6)最大程度地降低硬件的成本,由于数据不是存储在每个客户端上,客户端不必耗费磁盘空间来存储数据。
客户端无需在本地增加管理数据的功能,同时,服务器不需将处理能力耗费在显示数据上;
(7)可以配置服务器以优化检索数据所需的磁盘输入/输出容量,配置客户端以优化从服务器检索数据的格式;
(8)可以将服务器存储在一个相对安全的位置,并配备如不间断电源供应系统这样的设备,这比完全保护每个客户端更经济;
(9)维护任务(例如备份和恢复数据)得到简化,因为这些任务都可以集中在中央服务器上执行。
5.3.2技术简介
本系统采用MVC框架,MVC(Model-View-Controller)是一种设计模式,它强制性地把应用程序的输入、处理和输出分开。
MVC把应用程序分成3个核心:
模型层、视图层和控制层,它们分别担负不同的任务。
其中视图层向用户显示相关的数据,并能接受用户的输入数据,但是它并不进行任何实际的业务处理。
模型层表示业务数据和业务逻辑。
控制层接收用户输入并调用模型和视图去完成用户的需求。
本系统需要用到的Java相关技术有jsp技术、servlet技术、jdbc技术、SSH框架。
其中,关键的技术难点在于Struts技术的运用。
Struts技术是基于MVC的Web应用框架。
在Struts框架中,模型层由实现业务逻辑的JavaBean组件构成,控制层由ActionServlet和Action来实现,视图层由一组JSP文件构成。
5.4系统登录设计
要先使用本系统,必须先登录。
界面设计如图5-1所示。
图5-1 登录界面
当用户输入用户名和密码后首先要进行身份验证,如果用户存在,则成功登录,反之,如果用户不存在,提示错误信息“输入的用户名或密码不存在,请注册”,返回登录界面重新输入用户名和密码,用户登录的程序流程图如图5-2所示。
图5-2 用户登录程序流程图
登陆核心代码:
publicStringlogin(StringuserName,StringuserPw,intuserType)
{
System.out.println("
userType"
+userType);
try
{
Thread.sleep(700);
}catch(InterruptedExceptione)
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
Stringresult="
no"
;
if(userType==0)//系统管理员登陆
WebContextctx=WebContextFactory.get();
HttpSessionsession=ctx.getSession();
Stringsql="
select*fromt_adminwhereuserName=?
anduserPw=?
"
Object[]params={userName,userPw};
DBmydb=newDB();
mydb.doPstm(sql,params);
try
{
ResultSetrs=mydb.getRs();
booleanmark=(rs==null||!
rs.next()?
false:
true);
if(mark==false)
{
result="
}
else
yes"
TAdminadmin=newTAdmin();
admin.setUserId(rs.getInt("
userId"
));
admin.setUserName(rs.getString("
userName"
admin.setUserPw(rs.getString("
userPw"
session.setAttribute("
0);
session.setAttribute("
admin"
admin);
rs.close();
}
catch(SQLExceptione)
System.out.println("
登录失败!
);
e.printStackTrace();
}
finally
mydb.closed();
}
if(userType==1)
if(userType==2)
select*fromt_stuwheredel='
no'
andloginname=?
andloginpw=?
Tstustu=newTstu();
stu.setId(rs.getInt("
id"
stu.setXuehao(rs.getString("
xuehao"
stu.setName1(rs.getString("
name1"
stu.setSex(rs.getString("
sex"
stu.setAge(rs.getInt("
age"
stu.setLoginname(rs.getString("
loginname"
stu.setLoginpw(rs.getString("
loginpw"
System.out.println(stu.getAge()+"
%