毕业论文示例-基于WEB的学生综合测评系统的设计与实现

更新时间:2024-05-26 22:55:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

本科毕业设计

题 基于WEB的学生综合测评系统的 目 设计与实现

作 者: 杨文章 专 业: 计算机科学与技术 指导教师: 戴树贵 完成日期: 2012年6月6日

南 通 大 学 毕 业 设 计 题目:基于WEB的学生综合测评系统的设计与实现

姓 名 : 杨文章 指导教师 : 戴树贵 专 业 :计算机科学与技术

南通大学计算机科学与技术学院

2012年6月13日

南通大学毕业设计

摘 要

学生 胡成虎 指导教师 汪强

[摘要] 随着手机的普及以及手机应用的深入人心,近几年“智能手机”成为了人们关注的话题。在现今这个智能手机系统群雄纷争的时候,2008年Google推出了一款名为Android的开源智能手机操作系统。Android凭借其开放性和良好的人机界面,受到广大手机生产商的重视,随着3G时代的到来,Android有可能会改变现在智能手机市场的格局。Android 是由Linux操作系统、中间件以及核心应用程序组成的专门为移动终端设备开发的层次软件集。在对Android学习中,主要做了以下的研究:首先,Android系统是一个层次的软件集,所以先从层次方面对Android进行系统研究,主要对其运行时环境层以及Android应用框架层的研究;其次,通过对Android平台上应用的开发,更进一步了解Android这个系统,在开发中,尤其注重Android的Intent机制的使用。

[主题词] Android; Android 内核层; Android构架;Android应用; Android SDK;Android 开发

The research and development of Google Android embedded system Student: Hu Chenghu Adviser: Wang Qiang

[Abstract] With the popularity of mobile phones, “smart phone” become the subject of attention. Now days, there are lots of companies who compete in the filed “Smart Phone System”. In 2008, Google released their opening source smart phone operating system which called Android. Because of opening source and it’s nice UI. More and more mobile phone manufacturers use Android in their phones. With the becoming of 3,Android may change the field of smart phones. Android compose of Linux kernel, middleware and core applications. To study Android, there something to do: firstly, Android system is a hierarchical set system, so we should study its hiberarchy, especially in Android Runtime layer and Android application framework layer; secondly through Android application development, we can further understand the Android the system, in development, we will use the Android Intent mechanism.

[Key Words] Android;Android Kernel;Android Truss; Android Application;Android SDK;Android Development

I

南通大学毕业设计

目 录

摘 要............................................................................................................................ I ABSTRACT ................................................................................. 错误!未定义书签。 第1章 绪 论................................................................................................................ 1

1.1 系统开发背景.................................................................................................. 1

1.2 系统开发意义.................................................................................................. 1 1.3 本文结构........................................................................ 错误!未定义书签。 第2章 系统开发环境介绍.......................................................................................... 2

2.1 B/S结构简介 ................................................................. 错误!未定义书签。 2.2 SQL Server 2008简介 ................................................... 错误!未定义书签。 2.3 ASP.NET简介 ............................................................... 错误!未定义书签。 2.4 本章小结........................................................................ 错误!未定义书签。 第3章 系统分析.......................................................................................................... 3

3.1 可行性研究.................................................................... 错误!未定义书签。 3.2 需求分析.......................................................................................................... 3 3.3数据流程分析 .................................................................................................. 3 3.4系统流程分析 ................................................................ 错误!未定义书签。 3.5 本章小结........................................................................ 错误!未定义书签。 第4章 系统总体设计.................................................................................................. 5

4.1 系统设计的目标.............................................................................................. 5 4.2 系统功能分析.................................................................................................. 6 4.3 系统功能模块.................................................................................................. 6

4.3.1 管理员功能模块.............................................. 错误!未定义书签。 4.3.2学生功能模块................................................... 错误!未定义书签。 4.3.3普通教师功能模块........................................... 错误!未定义书签。 4.3.4班主任辅导员功能模块................................... 错误!未定义书签。 4.3.5反馈信息功能模块........................................... 错误!未定义书签。 4.3.6系统整体结构................................................... 错误!未定义书签。 4.4本章小结 ........................................................................ 错误!未定义书签。 第5章 数据库设计...................................................................................................... 8

5.1 概念结构设计................................................................ 错误!未定义书签。 5.2实体E-R图 ................................................................... 错误!未定义书签。 5.3 逻辑结构设计............................................................... 错误!未定义书签。 5.4数据库表设计 ................................................................ 错误!未定义书签。 5.6本章小结 ........................................................................ 错误!未定义书签。

i

南通大学毕业设计

第6章 系统详细设计与实现...................................................................................... 9

6.1 首页面的设计与实现.................................................................................... 13 6.2管理员功能模块的设计与实现 .................................................................... 13 6.3普通教师功能模块的设计与实现 ................................................................ 38 6.4班主任、辅导员功能模块的设计与实现 .................................................... 39 6.5学生功能模块的设计与实现 ........................................................................ 42 6.6信息反馈界面的设计与实现 ........................................................................ 43 6.7本章小结 ........................................................................................................ 44 第 7章 软件测试....................................................................................................... 45

7.1概述 ................................................................................................................ 45 7.2系统测试 ........................................................................................................ 46

7.2.1系统测试的目的及原则................................................................... 46 7.2.2系统测试的测试用例....................................................................... 47 7.3测试总结 ........................................................................................................ 50 7.4本章小结 ........................................................................................................ 50 总结.............................................................................................................................. 51 参考文献...................................................................................................................... 52 致 谢............................................................................................................................ 53

ii

南通大学毕业设计

第1章 绪 论

1.1 系统开发背景

随着时代不断的进步,手机不再仅仅是一个移动电话,已经越来越多的融入了我们的生活,而随着移动终端的迅猛发展,人们的业余生活也得到了很多改善。数字科技的发展,早已改变了我们很久之前的生活习惯。

记得上高中上学时,经常为了查找一个知识点而翻遍教材与参考书;经常在上下学坐车的路上抱着厚重的“五年高考三年模拟”一页一页的翻;经常在宿舍其他同学都睡觉的时候,自己打开床头灯,秉烛夜读。这样做既浪费时间又非常的不方便,使得学习的效率大打折扣。对于“时间就是成绩”的高三学生来说,多一分时间就多一分成绩,多一分成绩也许命运就从此不同。考一个理想的分数固然重要,但光有好的成绩是不够的,选择合适的大学与自己喜欢的专业也非常重要。我们经常看到很多同学由于在报选专业的时候对自己所选择的专业并不十分了解,真正入学后对自己的专业毫无兴趣,因而产生厌学情绪。 如何提高学生的学习效率,让学生更加方便的学习。如何让学生选择好合适的大学与喜欢的专业都成了有待解决的问题

1.2 系统开发原因

基于以上的现状,我决定在现阶段自己开发一个基于Android平台的二级C语言掌上题库APP,使自己可以通过手机应用程序轻松浏览二级C语言的题目,让自己更容易学习二级c。

1

南通大学毕业设计

第2章 系统开发环境及运行环境介绍

1.2.1 开发环境和使用工具

(1)手机客户端:Eclipse+JDK 1.6+SDK 2.2+ADT

(2)Web服务端:Visual Studio 2010+ .NET Framework SDK (3)服务器:IIS 7.5

(4)数据库:SQL Server 2005 (5)开发所用电脑的配置如下:

处理器:Inte(R) Core(TM)2 Duo CPU T6600@2.2GHZ 2.20 GHz 内存:3.00GB 硬件空间:80GB

1.2.2 建议的运行环境

手机客户端:Android手机系统2.2或以上版本 Web服务端:Internet Explorer 5.5或以上版本

2

南通大学毕业设计

第3章 系统分析

在Android手机上做二级C语言掌上题库APP是一个学习性质的尝试,动机主要除了兴趣以外,主要是为了更好的深入学习软件技术这门学科,学习在移动终端开发应用程序。同时也希望这个C语言掌上题库APP有一定的使用价值,使用户可以真正通过这个应用程序提高自己学习的效率与学习成绩。无论在上下学的路上、还是入寝之前,都可以打开C语言掌上题库APP浏览查看自己需要的知识。

第四章 可行性分析

4..1技术实现可行性

随着移动网络的发展,手机上网人数日益增多,人们已经习惯通过手机网络的方式在网络上进行即时信息的交流和接受服务。

开发二级C语言掌上题库APP已经非常成熟,首先,从硬件上讲,现在的只能手机速度现在已经不是问题,大容量高速度的手机存储卡十分普遍,同时无限网络的速度普遍可以达到100M,这些为电子商务的运行打下坚实的基础。从软件的角度上讲,Anroid操作系统具有非常强大的功能,可以让Java程序人员在Android操作系统的手机上开发各种软件。同时,开发手机客户端的工具Eclipse也相当成熟。有了这些技术的支持,我们成功开发一个移动手机客户端没有任何技术风险。

此外现在已有不计其数的软件采用手机客户端--->Web服务端--->数据库的模型开发手机应用程序,因此此项技术早已完全成熟。

4.2软件经济可行性

(1) 硬件成本: 开发终端:PC一台。 测试终端:Android一部。 所使用硬件均为本人已有硬件,因此无任何硬件成本。

(2) 软件成本: 所使用软件均为开源软件和破解软件,因此无任何软件成本。 4.3 开发环境可行性

(1) Eclipse:目前最主流的Android开发工具。采用最新的INDIGO版本

(2) Android SKD 2.2:Android开发工具包,提供强大的开发文档与应用编程接口。 (3) JDK 1.6:JDK 是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。

(4) Visual Studio 2010:用来开发二级C语言掌上题库APP系统Web服务端。 (5) SQL Server 2005:用来提供后台数据库支持。 1.6.4 总体可行性结论

通过上面的所有的可行性分析,这次毕业设计所做的高考宝典系统中的项目方案已经十分成熟,继续下一步的开发工作是完全可行的。

3

南通大学毕业设计

5 系统需求分析

4

南通大学毕业设计

第6章 方案论证

6.1 系统结构论证

C/S(Client/Server)结构即客户机/服务器结构,其中服务器是网络的核心,客户机是网络的基础,客户机通过网络从服务器或得所需要的资源;Client是运行客户端程序的机器,Server是运行服务器程序的机器。C/S结构充分利用了客户机与服务器两端的硬件优势,将一部分工作交由客户机来处理,只需要将结果通过网络发送给服务器,这样不仅节省了网络流量,还大幅减少了服务器的负载,进而可以减少服务器的响应时间,改善用户的使用体验。

B/S(Browser/Server)结构即浏览器/服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。本软件需要在Android手机上编写一个客户端的软件供用户进行信息的浏览,而不会使用到浏览器的任何功能,因此该系统模式不适合Android二级C语言掌上题库APP。 综上所述,由于本系统是基于Android平台的手机应用系统,因此选用C/S结构。

5

南通大学毕业设计

6.2 Web服务端技术论证

ASP.NET:服务器控件使用很方便,可以直接在代码里设置它的属性,可以代替相应的html代码,显示查询的表格可以很方便地赋值给datalist等控件一个属性,然后调用databind()就行了,这样就可以生成相应的表格了。还有,校验控件使用非常方便,web编程很繁琐的一个地方就是表单校验,校验控件几乎不用进行什么设置就可以校验了,不用你写JS脚本,但是,缺点也有,没有三层这种模型,每个实体的数据库操作都要重写一遍,虽然你也可以封装进一个类里面,但是,构造函数的参数通常相当多,而且,每次需要的构造函数也不同,比如同样的表单信息,用在注册里时,需要填写的信息和你在后台浏览该注册信息时的更新的字段肯定是不同的,这样,如果硬要封装,使用也是很不方便的。

JSP:跨平台,struts的技术对于三层模型使用起来非常方便,可以封装一个实体的所有数据库操作,便于重用,第一次开发可能会慢些,以后维护和二次开发非常方便的,校验可以用validator技术,比起传统校验,要方便,但比起ASP.NET要麻烦,而且,每次修改配置文件,都要重启服务器,ASP.NET就不用,也有类似于ASP.NET的视图状态功能。免费的类到处都是,而微软的东西想找免费的很难,你只能用它提供的,如果没有,你就别用了。 综上所述,本系统Web服务端技术选用ASP.NET。 6.3 数据库论证

当前流行的Web数据库管理系统有SQL Server、Oracle、DB2、Sybase等,小型企业多使用Access。

在Web服务器端,考虑到该系统未来的扩展性和建成之后可能产生的大量数据IO操作,小型数据库Access不适合。而Oracle是以高级结构化查询语言(SQL)为基础的大型关系数据库,对硬件要求高,而且与SQL Server相比,快速的熟练起来比较困难,需要有长期的实践和摸索。使用Oracle需要经验丰富的人才能够胜任。

6

南通大学毕业设计

SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。

SQL Server作为微软在Windows系列平台上开发的数据库,与Windows操作系统有很好的兼容性,并且在平常的使用开发练习过程中较多的使用了SQL Server数据库,因此Web服务器端数据库采用SQL Server 2005。 综上所述,本系统选用SQL Server作为数据库系统。

7

南通大学毕业设计

第7章 系统总体设计

7.1架构设计

图7-1 系统部署图

系统部署的形式是:手机客户端—Web服务器—数据库服务器的三层部署架构。手机客户端通

过http协议访问Web服务器,使用post方式向服务器发出URL请求,服务器收到手机端的请求,对请求进行处理,处理完毕后把需要返回的信息以json格式返回到手机客户端,客户端通过adapter解析,最终以列表形式展示。 7.2 系统功能设计

为了实现一个功能完整的高考宝典系统,需要考虑每一个必要的环节,这个系统的构成请参见下面的系统功能图:

8

南通大学毕业设计

图7-2 系统功能结构图

(1) 二级C语言掌上题库APP知识模块:实现了对C语言题库的添加、删除、修改、查看功能。意义在于让用户可以通过手机随时随地的浏览、查阅题库的知识点。不管你是在公交地铁上还是宿舍熄灯后躺在床上,只需要拿出手机在屏幕上点两下,即可浏览自己想看的知识。相对传统的查阅课本与笔记来说,好处不言而喻。

(2)模块:实现了对高校信息的添加、删除、修改、查看功能。意义在于让即将报志愿的莘莘学子们可以更直观的查看自己想要报的高校信息。以便于用户们结合自身情况报选最适合自己的大学。

(3) 高校专业模块:实现了对高校专业的添加、删除、修改、查看功能。高校信息分为工商管理、法学、金融、计算机、会计学等等。点击相应专业后会有此专业的详细介绍以及推荐院校。

(4) 招生动态模块:实现了对招生动态的添加、删除、修改、查看功能。在服务器端动态更新高考招生的热点信息,如《清华大学2012招生简章》等此类文章。

(5) 搜索模块:信息搜索包括标题和内容检索,学生可以检索课程知识模块里的知识点,方便知识点的查找。用户输入查询字段,客户端通过HTTP向Web服务端请求查询信息,Web服务端处理后通过JSON返回查询到的内容,再经过客户端的适配器处理以列表形式展示最终结果。

(6) 收藏夹模块:用户通过点击收藏按钮将需要知识点保存到收藏夹内,方便查看。用户点击收藏按钮后,客户端在本地数据库保存Web服务端数据库对应信息的ID。

7.2.1手机客户端功能设计:

手机客户端内容主要有两部分,手机的逻辑设计,手机界面设计。手机文章列表采用滑动加载的方式进行分页,让用户更好的体验Android智能手机的特效。好的界面设计可以给用户很高的视觉享受和友好暗示。所以,在手机客户端开发过程中,我们对界面倾注了

9

南通大学毕业设计

大量的时间进行了研究。

7-3 手机端系统功能图

1) 高考课程知识:对高考课程知识点的总结归纳,用户可以直接点击课程查看该课程的重点知识点。用户可以对知识点进行收藏、查询。课程知识点每次从 Web服务端获取数据,保证每次都可以获取最新的数据。

(2) 高校信息:进一步让用户了解高校基本信息,用户可以查看高校所在省份,所属类别院校,学院特色,所在地区,学院简介等。高校信息数据也是实时更新。

(3) 专业信息:用户可以了解热门的专业信息,专业名称、专业简介、以及该专业所推荐的院校。

(4) 招生动态:动态更新高考热点信息,让用户及时了解各所院校的招生动态,招生动态也是实时更新。

3.2.2 Web服务端功能设计: Web

服务端主要以

Web

站点的形式展现,在

Visual Studio 2010集成开发环境下采用ASP.NET技术和C#语言,后台数据库使用SQL Server 2005,该数据库与.NET同属微软产品,在接口、性能支持上比其它数据库达到更好的效果,可满足二级C语言掌上题库APP基本管理和手机客户端访问请求的需求,实现了与手机客户端之间简单的信息交流,提供对高考宝典发表信息、管理信息的功能。该Web服务端跨平台性强,运行速度快,可以快速的相应手机客户端的

10

南通大学毕业设计

请求。Web服务端系统功能模块图如下:

-4 Web服务端系统功能图

1) 高考课程知识管理:可以对高考课程知识点名称、所属课程、详细内容、添加时间等信息进行添加、删除、修改操作。

(2) 高校信息管理:可以对高校名称、类别、主管、特色、所属城市、高校网址、高校简介等信息进行添加、删除、修改及文章排序等功能。

(3) 专业信息管理:可以对每门专业进行添加、删除、修改、排序等操作。 (4) 招生动态管理:对招生简章名称、简介内容等信息进行添加、删除、修改、排序操作。

(5) 管理员密码修改:可以修改系统的管理员密码。

11

南通大学毕业设计

第6章 系统详细设计与实现

详细设计的主要任务是设计每个模块的实现算法、所需的局部数据结构。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。

传统软件开发方法的详细设计主要是用结构化程序设计法。详细设计的表示工具有图形工具和语言工具。图形工具有业务流图、程序流程图、PAD图、NS图。语言工具有伪码和PDL等。

12

南通大学毕业设计

6.1 首页面的设计与实现

本系统首页不仅具有显示学校最新消息的功能,更是五大功能模块的入口,用户进入首页后,可以通过首页上的管理员登录、班主任辅导员登录、普通教师登录、信息反馈五个按钮进入不同的模块,除了信息反馈模块是对所有用户开放的外(即无需登录即可进入)其余四个模块均需身份验证。首页页面效果图见图6.1。

图6.1首页页面图

6.2管理员功能模块的设计与实现 1.登录界面的设计与实现

进入管理员登录窗口后,输入验证信息,若验证成功后即可进入管理员信息管理系统;若验证不成功,则显示登录失败。管理员登录页面效果图见图6.2。

13

南通大学毕业设计

图6.2管理员登录页面图

2.管理界面的设计与实现

进入管理员信息系统后,管理员可以对用户进行如下操作:⑴新增学生用户,⑵新增教师用户,⑶查询及修改学生成绩,⑷查询及修改教师信息;可以对成绩进行如下操作:⑴查询及修改成绩,⑵查询综合测评成绩;可以对课程进行如下操作:⑴查询,⑵修改,⑶删除;可以对信息反馈进行如下操作:⑴回复留言,⑵删除留言。管理员管理界面效果图见图6.3。

图6.3管理员管理界面图

3.用户管理的设计与实现 ⑴新增学生用户

该功能是通过对学生表的操作,实现了学生用户的添加。具体界面效果图见图6.4。

14

南通大学毕业设计

图6.4新增学生用户界面图

⑵新增教师用户

该功能是通过对教师表的操作,实现了教师用户的添加。具体界面效果见图6.5。

图6.5新增教师用户界面图 图6.6查询及修改学生信息界面图 ⑶查询及修改学生信息

当需要查询学生信息时,只要输入相应的信息即可查询,如果需要更该学生的信息只需点击该学生前的“编辑”按钮即可对其信息进行更改,如果需要删除学生信息,只需点击“删除”按钮即可删除。具体具体效果见图6.6。

⑷查询及修改教师信息

查询教工信息是按教工号查询的,如果需要查询某位教师的信息,只需知

15

南通大学毕业设计

道该教师的教师号即可。更该教师信息时,只要点击教师前的“编辑”按钮即可对其信息进行更改,如果需要删除教师信息,只需点击“删除”按钮即可删除。具体界面效果见图6.7。

图6.7查询及修改教师信息界面图 图6.8查询及修改成绩信息界面图 4.成绩管理的设计与实现 ⑴查询及修改成绩

在“学生学号”后面的下拉框中输入你所需要查找的学生的学号,点击“按学好查询”按钮即可显示该学生的信息,如果需要课程名查询,只需在“课程名称”后的下拉框中选择所要查找的课程名,然后点击“课程名查询”按钮即可查询该科目成绩信息,如果需要更该学生的成绩信息,只需点击该学生后的“编辑”按钮即可对其信息进行更改,然后再点击“更新”即可保存更改后内容,如果需要删除学生成绩信息,只需点击“删除”按钮即可删除。具体界面效果见图6.8。 ⑵查询综合测评成绩

综合测评成绩表是系统自动计算生成的表任何人无法修改,该成绩表实现了多种排序功能,本表默认按综合测评成绩降序排列,如果需要按其他方式排名,只需点击该方式的名称即可。所有用户该功能的实现都是一样的。具体界面效果见图6.9。

5.课程管理的设计与实现

对于课程基本信息,管理员可以对其修改和删除,具体操作只需点击相应

16

南通大学毕业设计

的按钮即可完成。具体界面效果见图6.10。

图6.9查询综合测评成绩界面图

6.反馈信息管理的设计与实现

管理员可以根据留言情况处理留言信息,对于需要回复的留言,管理员要在第一时间内进行回复,对于一些垃圾信息,管理原则可以将其进行删除。具体界面效果见图6.11。

图6.10课程管理界面图

图6.11反馈信息管理界面图

37

南通大学毕业设计

6.3普通教师功能模块的设计与实现 1.普通教师登录界面的设计与实现

进入普通教师登录窗口后,输入验证信息,若验证成功后即可进入普通教师管理系统;若验证不成功,则显示登录失败。具体界面效果见图6.12。 2.操作界面设计与实现

普通教师登陆成功后,便进入普通教师操作界面,依据普通教师的管理权限,其可以进行如下操作:⑴修改个人密码,⑵查询个人信息,⑶学生成绩的查询与录入,⑷综合测评查询。具体界面效果见图6.13。

图6.12普通教师登录界面图 图6.13普通教师操作界面图 3.修改密码功能的设计与实现

如需修改密码只需输入原密码、新密码并确认后点击“更改密码”即可修改密码,如果又不需修改密码点击“取消”即可。对于班主任、辅导员而言其修改密码的功能与普通教师相同。具体界面效果见图6.14。

图6.14 修改密码功能界面图 图6.15个人信息查询功能界面图

4.查询个人信息功能的设计与实现

38

南通大学毕业设计

在普通教师操作界面点击“查询个人基本信息”按钮即可查看个人信息,班主任、辅导员查询个人信息的功能与普通教师一致。具体界面效果见图6.15。

5.查询与录入学生成绩功能的设计与实现

如果需要按课程名查询,点击下拉框选择所要查找的课程名后点击“查询”即可显示选修该科所有学生的信息,如果需要查找某个学生的成绩,只需输入该生的学号即可,如果需要录入学生成绩,点击“录入成绩”按钮即可计入录入成绩窗口。班主任、辅导员查询与录入学生成绩的功能亦如此。具体界面效果见图6.16。

图6.16查询与录入学生成绩功能界面图

图6.17班主任、辅导员登陆界面图 图6.18班主任、辅导员操作界图 6.4班主任、辅导员功能模块的设计与实现 1.班主任、辅导员登陆界面

进入班主任、辅导员登录窗口后,输入验证信息,若验证成功后即可进入班主任、辅导员管理系统;若验证不成功,则显示登录失败。具体界面效果见图6.17。

39

南通大学毕业设计

2.操作界面设计与实现

班主任、辅导员登陆成功后,便进入班主任、辅导员操作界面,依据班主任、辅导员的管理权限,其可以进行如下操作:⑴修改个人密码,⑵查询个人信息,⑶学生成绩的查询与录入,⑷综合测评查询,⑸学生加分审核。具体界面效果见图6.18。

3.加分审核功能的设计与实现

班主任或辅导员在收到学生加分申请后,可以根据要求对加分申请进行审核,如果学生的申请不符合要求,班主任或辅导员可对其申请进行删除,如果学生的申请符合要求但是申请分值、加分类型等有误,班主任或辅导员可对其进行修改。具体界面效果见图6.19。

图6.19加分审核界面图

4.综合测评功能模块的设计与实现

在综合测评过程中,需要对学生智育成绩、德育成绩、体育成绩及能力分进行相关计算,计算结束后生成相应的综合测评成绩表,并对成绩表中的成绩进行排序,整个过程比较繁杂。本系统实现了对学生综合测评成绩的计算与排序,计算成绩的规则则是参考南通大学学生手册的第65至68页,排序默认为综合测评成绩的降序排列,也可按照智育分、德育分、体育分、学号、姓名等信息进行升序或降序排列。具体代码如下:

SELECT TOP (100) PERCENT studentno, name, ISNULL

((SELECT SUM(sc.score * c.studynum) / SUM(c.studynum) AS Expr1 FROM dbo.Score AS sc INNER JOIN

dbo.Course AS c ON sc.courseno = c.courseno

WHERE (st.studentno = sc.studentno) AND (c.coursename <> '体能测试') AND (c.coursename <> '体育') AND (c.coursename <> '德育学习')), 0) AS 智育成绩,

40

南通大学毕业设计

ISNULL ((SELECT SUM(Sscore) AS Expr1 FROM dbo.StrudentExtra AS se

WHERE (st.studentno = studentno) AND (Tflag = 1) AND (Type = 1)), 0) AS 智育加分, ISNULL

((SELECT SUM(sc.score * c.studynum) / SUM(c.studynum) AS Expr1 FROM dbo.Score AS sc INNER JOIN

dbo.Course AS c ON sc.courseno = c.courseno

WHERE (st.studentno = sc.studentno) AND (c.coursename = '德育学习')), 0) AS 德育成绩, ISNULL

((SELECT SUM(Sscore) AS Expr1 FROM dbo.StrudentExtra AS se

WHERE (st.studentno = studentno) AND (Tflag = 1) AND (Type = 2)), 0) AS 德育加分, ISNULL

((SELECT SUM(sc.score) / 2 AS Expr1 FROM dbo.Score AS sc INNER JOIN

dbo.Course AS c ON sc.courseno = c.courseno

WHERE (st.studentno = sc.studentno) AND (c.coursename = '体能测试')), 0) + ISNULL ((SELECT SUM(sc.score) / 2 AS Expr1 FROM dbo.Score AS sc INNER JOIN

dbo.Course AS c ON sc.courseno = c.courseno

WHERE (st.studentno = sc.studentno) AND (c.coursename = '体育')), 0) AS 体育成绩, ISNULL

((SELECT SUM(Sscore) AS Expr1 FROM dbo.StrudentExtra AS se

WHERE (st.studentno = studentno) AND (Tflag = 1) AND (Type = 3)), 0) AS 体育加分, (((((ISNULL

((SELECT SUM(sc.score * c.studynum) / SUM(c.studynum) AS Expr1 FROM dbo.Score AS sc INNER JOIN

dbo.Course AS c ON sc.courseno = c.courseno

WHERE (st.studentno = sc.studentno) AND (c.coursename <> '体能测试') AND (c.coursename <> '体育') AND (c.coursename <> '德育学习')), 0) * 0.75 + ISNULL

((SELECT SUM(Sscore) AS Expr1 FROM dbo.StrudentExtra AS se

WHERE (st.studentno = studentno) AND (Tflag = 1) AND (Type = 1)), 0) * 0.75) + ISNULL ((SELECT SUM(sc.score * c.studynum) / SUM(c.studynum) AS Expr1 FROM dbo.Score AS sc INNER JOIN

dbo.Course AS c ON sc.courseno = c.courseno

41

南通大学毕业设计

WHERE (st.studentno = sc.studentno) AND (c.coursename = '德育学习')), 0) * 0.15) + ISNULL

((SELECT SUM(Sscore) AS Expr1 FROM dbo.StrudentExtra AS se

WHERE (st.studentno = studentno) AND (Tflag = 1) AND (Type = 2)), 0) * 0.15) + ISNULL ((SELECT SUM(sc.score) / 2 AS Expr1 FROM dbo.Score AS sc INNER JOIN

dbo.Course AS c ON sc.courseno = c.courseno

WHERE (st.studentno = sc.studentno) AND (c.coursename = '体能测试')), 0) * 0.1) + ISNULL

((SELECT SUM(sc.score) / 2 AS Expr1 FROM dbo.Score AS sc INNER JOIN

dbo.Course AS c ON sc.courseno = c.courseno

WHERE (st.studentno = sc.studentno) AND (c.coursename = '体育')), 0) * 0.1) + ISNULL ((SELECT SUM(Sscore) AS Expr1 FROM dbo.StrudentExtra AS se

WHERE (st.studentno = studentno) AND (Tflag = 1) AND (Type = 3)), 0) * 0.1 AS 综合测评成绩

FROM dbo.Student AS st

6.5学生功能模块的设计与实现 1.学生登陆界面的设计与实现

进入学生登录窗口后,输入验证信息,若验证成功后即可进入学生信息查询系统;若验证不成功,则显示登录失败。具体界面效果见图6.20。 2.学生操作界面的设计与实现

学生登陆成功后,便进学生操作界面,其可以进行如下操作:⑴修改个人密码,⑵查询个人信息,⑶查询各科成绩,⑷综合测评查询,⑸加分申请。具体界面效果见图6.21。

3.查询个人信息功能的设计与实现

在学生操作界面点击“查询个人基本信息”按钮即可查看个人信息,具体查询信息见图6.22。

4.查询各科成绩功能的设计与实现

学生如果需要查询自己某科的成绩,只需选择所需查找的课程名称即可查

42

南通大学毕业设计

询到该科目的成绩。具体查询结果见图6.23。

图6.20学生登陆界面图 图6.21学生操作界面图

图6.22学生查询个人信息功能界面图

5.加分申请功能的设计与实现

学生登陆到操作界面后,点击操作界面上的“加分申请”按钮即可进入加分申请操作界面,进入此界面后学生只需填写自己申请的加分项目、加分分值 并且选择相应的加分类别后提交申请即可。具体界面效果见图6.24。 6.6信息反馈界面的设计与实现

用户进入信息反馈界面后可以进行信息反馈,反馈内容由管理员进行管理。具体界面效果见图6.25。

图6.23学生查询各科成绩功能界面图

43

南通大学毕业设计

图6.24学生加分申请界面图

图6.25信息反馈界面图

6.7本章小结

本章主要是对系统的详细设计与实现,详细设计与实现包括首页面的设计与实现、管理员功能模块的设计与实现、普通教师功能模块的设计与实现、班主任、辅导员登录功能模块的设计与实现、学生功能模块的设计与实现、信息反馈界面的设计与实现,详细设计结束后,系统开发工作也就完成了,但是这并不意味着本次项目开发就到此结束,接下来还必须对本系统进行大量的测试。

44

南通大学毕业设计

第 7章 软件测试

系统测试的工作主要是软件测试的工作,就是利用测试工具按照测试万案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。 7.1概述

对于软件而言,如果要查找出所有的错误,所作的测试应尽可能全面:一方面通过测试来检查软件每个功能的执行情况;另一方面,详细测试软件执行的内部过程是否完全按照规格说明书上的规定正常运行。两方面的测试分别称为黑盒测试和白盒测试。白盒测试法是通过分析程序内部的逻辑与执行路径来设计测试用例,并对用例进行测试的方法因此也称作结构测试或逻辑驱动方法。黑盒测试法是根据输入/输出数据条件来设计测试用例,查看程序的功能是否正确或满足要求,不需要考虑程序的内部结构与执行路径如何,因此也称作功能驱动或数据驱动测试方法。

软件测试一般分为五步:单元测试、集成测试、确认测试、系统测试和用户验收测试。

1.单元测试:单元测试也称模块测试,是针对软件设计的最小单元程序模块进行测试的工作。其目的是发现模块内部的错误,修改这些错误使其代码能够正确运行。其中,多个功能独立的程序模块可并行进行测试。

2.集成测试:集成测试也称组装测试,它的任务是按照一定的策略对单元测试的模块进行组装,并在组装过程中进行模块接口与系统功能测试。

3.确认测试:确认测试也称有效性测试,目的是验证软件的有效性,即验证软件的功能和性能及其他特性是否符合用户要求。软件的功能和要求可参照软件需求说明书。

4.系统测试:经过了前面一系列测试过程,软件的功能已基本符合要求,

45

南通大学毕业设计

进行系统测试的目的是为了测试软件安装到实际应用的系统中后,能否与系统的其余部分协调工作,以及对系统运行可能出现的各种情况的处理能力。

5.用户验收测试:在系统测试完成后,进行用户的验收测试,它是用户在实际应用环境中所进行的真实数据测试。在具体的测试中,一般应遵循以下原则:由程序设计者之外的人进行测试;测试用例应由两部分组成:输入数据和预期输出结果;应选用不合理的输入数据与非法输入测试;不仅要检验程序是否实现预期功能,还应检查程序是否做了不应该做的工作;集中测试容易出错的程序模块;对程序修改以后,必须重新进行测试。 7.2系统测试

7.2.1系统测试的目的及原则 1.系统测试的目的

系统测试是为了发现错误而执行程序的过程,成功的测试是发现了至今尚未发现的错误的测试。

测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。应根据开发各阶段的需求、设计等文档或程序的内部结构精心设计测试用例,并利用这些实例来运行程序,以便发现错误。信息系统测试应包括软件测试、硬件测试和网络测试。硬件测试、网络测试可以根据具体的性能指标来进行,此处所说的测试更多的是指软件测试。 2.系统测试的原则

系统测试是保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析系统设计和实施的最后复查。根据测试的概念和目的,在进行信息系统测试时应遵循以下基本原则:

⑴应尽早并不断地进行测试。测试不是在应用系统开发完之后才进行的。由于原始问题的复杂性、开发各阶段的多样性以及参加人员之间的协调等因素,使得毛开发各个阶段都有可能出现错误。因此,,测试应贯穿在开发的各个阶段,尽早纠正错误,消除隐患。

46

南通大学毕业设计

⑵测试工作应该避免由原开发软件的人或小组承担,一方面,开发人员往往不愿召认自己的工作,总认为自己开发的软件没有错误;另一方面,开发人员的错误很难由本人测试出来,很容易根据自己编程的思路来制定测试思路,具有局限性。测试工作应由专门人员来进行,这样会更客观,更有效。

⑶设计测试方案的时候,不仅要确定输入数据,而且要根据系统功能确定预期的输出结果。将实际输出结果与预期结果相比较就能发现测试对象是否正确。

⑷在设计测试用例时,不仅要设计有效合理的输入条件,也要包含不合理、失效的输入条件。测试的时候,人们往往习惯按照合理的、正常的情况进行测试,而忽略了对异常、不合理、意想不到的情况进行测试,而这些可能就是隐患。

⑸在测试程序时,不仅要检验程序是否做了该做的事,还要检验程序是否做了不该做的事。多余的工作会带来副作用,影响程序的效率,有时会带来潜在的危害或错误 。

⑹严格按照测试计划来进行,避免测试的随意性。测试计划应包括测试内容、进度安排、人员安排、测试环境、测试工具和测试资料等。

⑺妥善保存测试,作为软件文档的组成部分,为维护提供方便。

⑻测试用例都是精心设计出来的,这样可以为重新测试或追加测试提供方便。

7.2.2系统测试的测试用例

本次系统测试根据系统测试的目的和原则,分为单元测试和集成测试两个步骤,其中单元测试采用白盒测法,集成测试采用黑盒测试法。具体测试用例如下:

1.单元测试 ⑴ 测试用例:

①管理员登录测试:

47

南通大学毕业设计

测试数据:admin,密码:123。 测试数据:admi@,密码:123。

测试数据:admin,密码:000000000000000000000000。 测试数据:admi1112121222222222222,密码:000。 ②普通教师登录测试: 测试数据:1003,密码:000。 测试数据:1330@,密码:123。

测试数据:10033333333333333333333,密码:123。 测试数据:admin,密码:1230000000000000000000000。 ③班主任、辅导员登录测试: 测试数据:1004,密码:000。 测试数据:1003#,密码:000。

测试数据:100444444444444444444444,密码:123。 测试数据:1003,密码:00033333333333333333333333。 ④学生登录测试:

测试数据:1001,密码:000。 测试数据:1003¥,密码:000。

测试数据:100111111111111111111111111,密码:123。 测试数据:1003,密码:12322222222222222222222222。 ⑵测试目的:

以上测试用例是用来测试登陆模块存不存在如下安全隐患、常见故障或缺陷的:

①用户输入正确的用户名和密码但不能正常登录或不能正常跳转到操作主界面;

②当用户在输入信息错误的情况下却能登录系统; ③在用户登陆不成功时提示的信息不正确;

48

南通大学毕业设计

④当用户名不存在时,不能提示用户。 ⑤当输入非法字符时,系统出现异常。

⑥当输入的用户名或密码超出有效长度时,系统出现异常。 ⑶测试结果:

当用户名与密码正确时,能正常进入系统操。用户名或密码错误时显示登陆不成功并且能正确的提示用户出错原因,当输入非法字符时,系统显示“输入无法识别的字段”,当输入的用户名或密码超出有效长度时,超出的部分无法输入。 2.集成测试:

对系统整体测试属于集成测试,主要采用黑盒测试法。 ⑴ 测试流程: 其测试流程见图7.1。

开始设计测试用例测试用例审核生成错误报告是发现问题否生成报告结束

图7.1集成测试流程图

⑵测试目的:

49

南通大学毕业设计

①验证在各个模块连接起来的时候,穿越模块接口的数据是否会丢失; ②验证各个子功能组合起来,能否达到预期要求的父功能;

③验证一个模块的功能是否会对另一个模块的功能产生不利的影响; ④验证全局数据结构是否有问题

⑤验证单个模块的误差积累起来,是否会放大,从而达到不可接受的程度。

⑶测试结果:

本次集成测试进行的比较顺利,整个过程中没有发现异常和错误,系统各模块间运作协调,没有出现相互干扰的情况,而且各子系统组合起来,能够顺利完成整个系统的功能,说明本系统的前期的开发工作还是比较令人满意的。 7.3测试总结

本次测试主要对系统的功能模块和系统整体结构进行了详细的测试。分为单元测试和集成测试两步,单元测试采用了白盒测试法,集成测试采了用黑盒

测试法,两种测试方法的侧重点不同,应用于测试的不同阶段,基本上能够覆盖用户需求及代码实现,从而保证测试的完全性和彻底性。通过以上测试得出了结论:系统运行流畅、系统功能可靠,可承担综合测评工作。 7.4本章小结

本章进行软件测试,软件测试包括软件测试概述、系统测试、测试总结三部分,其中系统测试选用的测试用例分有系统登录模块、添加模块、查询模块、修改模块。以上模块经测试都能正常运行,说明本系统开发是成功的。

50

南通大学毕业设计

总结

本次系统开发,本人首先对学生综合测评系统的现状进行了调研,了解了学生综合测评系统出现的背景、目前发展的状况、现阶段所存在的问题及将来的发展趋势。这些信息给我接下来的系统开发提供了极大的帮助,因为它让我准确把握了测评系统的概念、明白了测评系统所做的工作及其所要实现的功能。然后,本人经过对目前几种常见的开发体系及开发工具进行比较,决定采用B/S结构,运用ASP.NET和SQL技术对系统进行了实际开发。在开发过程中,本人先后完成了系统总体设计、数据库设计及详细设计等任务,最终设计出一套功能较为完备的系统模型。最后本人又精心设计了一系列测设用例采用两种方法对本系统进行了测试,测试得出的结果令人较为满意。

虽然本系统功能较为齐全,但还有一些问题没能充分解决,比如数据导入功能不够完善、不同用户的权限划分不完全合理、综合测评成绩的多条件排序没有实现。对于以上问题,本人将会在今后继续努力,完善以上功能。并且本人还将会对本系统继续进行测试,找出系统中潜在的错误,最终使本系统成为一套成熟的产品。

通过本次系统开发,我了解了项目开发的基本过程,巩固了软件开发、ASP、SQL等专业知识,但在这次毕业设计中的最大收获并不是学会使用了两种开发工具,而是掌握了设计系统的思想方法,并发扬了同学之间互帮互助的精神。

51

南通大学毕业设计

参考文献

[1] 王珊、萨师煊.数据库系统概论[M].北京:高等教育出版社,2006,198-227 [2] 钟雁.管理信息系统开发案例分析[M].北京:清华大学出版社,2002,49-55 [3] 高清和. ASP.NET 程序设计[M].北京:中国铁道出版社,2002,73-129

[4] 吴晨、张亮.ASP.NET+SQL Server-数据库开发与实例[M].北京:清华大学出版社,2006,51-80

[5] 史济民.软件工程原理方法与应用[M].北京:高等教育出版社,2002,79-112

[6] 赛奎春.SQL SERVER数据库开发实例解析[M].北京:机械工业出版社,2002,91-141 [7] Abraham Silberschatz、Henry F.Korth、S.Sudarshan.DataBase System Concepts[M].北京:高等教育出版社,2006,33-62

[8]王黎.微软公司Microsoft.NET战略[M].北京:清华大学出版社,2002,28-37

[9]J.P.Hamilton.Visual Basic.NET面向对象编程[M]. 北京:清华大学出版社,2003,71-113

[10]张文斌.基于Web Service的电子商务环境构建技术[M].北京:电于工业出版社,2002,89-147

[11]王欣.Web架构与开放交互操作技术[M]. 北京:清华大学出版社,2002,90-123 [12]Matthew MacDonald. Beginning ASP.NET 3.5 in C# 2008 From Novice to Professional second edition [M].美国:Apress,2007,67-89

52

南通大学毕业设计

致 谢

本次毕业设计是在戴树贵老师的指导下完成的,在论文即将完成之际,回顾紧张但又充实的学习与开发过程,本人在此向所有关心我及帮助我的老师和同学们致以最真诚的感谢。

在本次毕业设计中,我从指导老师戴树贵副教授身上学到了很多东西。他认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我受益匪浅。他渊博的知识、开阔的视野和敏锐的思维给了我深深的启迪,在开发设计的过程中,戴老师本着认真负责的态度、以严谨求真的作风来要求我们每一位学生,从选题到设计到实现,戴老师都给予了我极大的帮助,使得我在设计中少走了很多弯路,这对于我以后的工作和学习都有一种很大的帮助,在此感谢他耐心的辅导,没有他的指导,本次毕业设计的任务就无法顺利完成。

另外,我还要感谢在这几年来对我有所教导的老师,他们孜孜不倦的教诲不但让我学到了很多知识,而且让我掌握了学习的方法,更教会了我做人处事的道理,在此表示感谢。同时,在系统开发过程中还有一些同学也给了我不少帮助,这里一并表示感谢。

53

本文来源:https://www.bwwdw.com/article/hdp7.html

Top