大学生个人信息系统毕业论文

更新时间:2024-06-18 00:27:01 阅读量: 综合文库 文档下载

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

摘要

信息管理是一项古老的活动,但管理方式却没有停止过变化,从手工记录到计算机存储,从平面文件到关系型数据库;从单机单用户数据库访问模式到客户/服务器模式,从客户/服务器模式到浏览器/服务器...信息管理的技术越来越先进、科学和客观。同时,可管理的信息容量也越来越大,更适应信息膨胀时代的要求。

学生个人信息系统(MIS)是一个具有交互功能的人才信息管理系统,其开发主要包括后台数据库的建立和维护以及前台程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。

因此本人结合网站数据库开发的要求,对MS SQL Server2000数据库管理系统、SQL语言原理、JSP应用程序设计等进行了较深入的学习和应用,主要完成对网上信息管理系统的功能需求分析、功能模块划分、数据库设计,并由此设计了数据库结构和应用程序。

根据需求,本系统设计实现分为:第一、概要性地介绍了本系统开发的目的、系统开发的背景等,第二、对该系统设进行设计分析,对系统功能分析以及模块划分定义,第三、系统数据库的设计,第四、根据第二部分对系统功能分析以及功能模块的划分,对个功能模块进行分析实现,并列出了一些程序代码以说明该系统应用程序设计中所采用的技术。

关键词:学生个人信息系统 JSP 管理系统

Abstract

Information management is an ancient activity, but management has not stopped changing from manual records to the computer store, from flat files to relational databases; from stand-alone single-user database access mode to client / server model, from a client / server mode to the browser / server ... and more advanced information management technologies, scientific and objective. At the same time, can manage the information capacity is also growing, but also to adapt to expansion of information demands of the times. Student Personal Information System (MIS) is a interactive features of the human resources information management system, its development include the establishment and maintenance of back-end database as well as the front two aspects of the development process. Fothe former require the establishment of data consistency and integrity of the strong data security and goodlibraries. For the latter procedure requires the application of full-featured, easy to use and so on. Therefore, I link a website database development at the request of MS SQL Server2000 database management system, SQL language principles, JSP application design for a more in-depth study and application, mainly to complete the web-based information management system functional requirements analysis, functional module division , database design, and thus designed the database structure and applications.

According to requirements, design implementation of this system is divided into: first, briefly, describes the purpose of this system development, system development background, and secondly, the system design based analysis, functional analysis, and module division system, the definition of Third, the system database design, fourth, according to the second part of the system function analysis, as well as the delineation of functional modules for analysis of functional modules to achieve, and lists some of the program code to illustrate the application of the system used in the design of technology.

Keywords: Student Personal Information System JSP Management System

前 言

随着计算机产业的迅速发展,电子计算机已广泛的应用于信息管理、文字处理、辅助设计、辅助教学及人们的日常生活中。特别是在计算机的操作系统具有了图形化的界面后,使用计算机已经不再是某些专业人员的专利,各行各业的人们不需要经过专业化的训练就能自如的在计算机上进行各种复杂的操作。

时下,为了能创造更大的经济效益和社会效益,更有利于参与国际竞争,越来越多的企业、公司和学校迫切需要引入现代化的管理手段,而计算机的大容量操作,精确的计算,使它成为企业管理不可缺少的手段之一,但随着计算机应用的不断深入,用户对软件的需求也不断增加,越来越多的用户希望拥有适合自己需要的特殊软件来满足自己的特殊要求。

本毕业设计题目的选定应该说是顺应这一趋势的。对于当今大学校园内的学生个人信息来说,其数据量大,各种信息管理内容复杂,查询和管理学生信息和校园内的宿舍信息等工作由人工完成将是很累的,也许还很不切实际,不仅浪费了许多人力物力资源,而且还很容易出现差错,有一个符合要求的软件对其进行智能化的学生个人信息管理是最好不过的,节省了人力物力资源,并且对各种信息的把握和操作也更加方便了,对所有信息有了一个全局的掌握。

系统功能简介:

在系统中,充分利用了SQL Server 2000数据库和JAVA 6.0的强大功能,通过实践,也使自己对这些方面有了较深入的了解。在设计过程中力求完善系统功能,使界面友好,具有一定的容错能力,在使用过程中不会出现难以纠正的错误和毛病。

该系统主要提供的功能分别为添加学生数据,修改学生数据,住宿分配,住宿调整,学生情况查询,宿舍使用情况,活动信息录入,活动查询,学生奖惩录入,学生奖惩查询,添加用户,修改密码,退出系统等,这些功能基本上覆盖了学生个人信息的主要部分。

目 录

第一章 系统概述 ···················································································································· 1

1.1 课题来源及意义 ······················································································································· 1

1.2 开发工具及相关技术简介 ········································································································ 1

1.2.1 开发工具 ······················································································································· 1 1.2.2 相关技术简介 ··············································································································· 2

第二章 可行性研究及需求分析 ···························································································· 6

2.1 可行性研究 ······························································································································· 6 2.2 系统需求分析 ··························································································································· 6

2.2.1 用户登录需求分析 ········································································································ 7 2.2.2 系统的运行环境 ············································································································ 7 2.3 系统流程图 ······························································································································· 8 2.4 系统功能模块图 ······················································································································· 9

2.4.1 系统功能分析 ··············································································································· 9 2.4.2 系统模块设计 ··············································································································· 9

第三章 学生个人信息系统数据库设计 ·············································································· 10

3.1 设计SQL Server数据库 ·········································································································10 3.2 建立表结构 ······························································································································12

第四章 学生个人信息系统的设计 ······················································································ 13

4.1 系统总体功能模块 ··················································································································14 4.2 学生信息管理 ··························································································································14 4.4 课程信息管理 ··························································································································14

第五章 学生个人信息系统的实现 ······················································································ 15

5.1个人信息管理 ···························································································································15

5.1.1 用户登录页面 ··············································································································15 5.1.2 用户注册页面 ··············································································································16 5.1.3 修改用户密码页面 ·······································································································18 5.2 课程信息信息管理模块的创建 ·······························································································19

5.2.1 分配宿舍信息页面 ·······································································································19 5.2.2 修改课程信息页面 ·······································································································20 5.2.3 查询课程信息页面 ·······································································································21 5.3 好友基本信息管理模块的创建 ·······························································································22

5.3.1 添加好友信息页面 ·······································································································22 5.3.2 修改好友信息页面 ·······································································································23 5.3.3 查询好友信息页面 ·······································································································24 5.4 奖惩管理模块的创建 ··············································································································25

5.4.1 新增奖惩信息页面 ·······································································································25 5.4.2 查询奖惩信息页面 ·······································································································26 5.5 活动管理模块的创建 ··············································································································27

5.5.1活动录入页面 ···············································································································27 5.5.2 活动信息查询页面 ·······································································································28 5.5.3 活动信息的修改页面 ···································································································29

5.6 重要文档管理模块的创建 ·······································································································31

5.6.1 重要文档信息录入页面 ·······························································································31 5.6.2 重要文档列表页面 ·······································································································32

第六章 测试 ·························································································································· 32

6.1 软件测试的目的和原则···········································································································32 6.2 系统测试 ·································································································································34

6.2.1 测试方法 ······················································································································34 6.2.2 测试总结 ······················································································································34

结 论 ······································································································································ 35

谢 辞 ······································································································································ 36 参考文献 ·································································································································· 37

第一章 系统概述

1.1 课题来源及意义

对于一名专业的信息技术人员来说,如何最大限度地利用学校后勤部门多年来在数据库系统上的投资,把学校花了大力气搜集来的数据变成对学校未来发展有巨大价值的信息,这是每一个从事信息技术工作的专业人员都应该考虑的问题。

现在全国的很多大学校园内的学生个人信息都采用了计算机统一管理,这样就需要一种管理软件来为个人信息的管理者服务,协助他们来完成管理学生个人信息这么一个庞大的工作。在这种情况下,用各种开发工具开发出来的学生个人信息智能管理系统应运而生,并且蓬勃的发展起来。这为学校的个人信息管理带来了很大的方便,更重要的是节省了相当大的人力,物力,财力。

本系统的深刻意义可以通过一个例子来体现出来。假如想在全校范围内查找一名学生所在的个人信息,则不要像以前那样一个一个个人信息楼去查名单,只需通过查询方法,输入该学生的学号或者是姓名,即可很容易的找到他的所在个人信息,同时也可以了解他的一些基本信息,看所查找的对象是否是自己所要找的人,另外,还可以知道他的奖惩信息,登记来访人员信息,对寝室的活动信息记录等。

1.2 开发工具及相关技术简介 1.2.1 开发工具

Eclipse:

Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。

Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。 2003年,Eclipse 3.0选择OSGi服务平台规范为运行时架构。 2007年6月,稳定版3.3发布。2008年6月发布代号为Ganymede的3.4版。2009年7月发布代号为GALILEO的3.5版。

Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。

Eclipse 最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。Eclipse是一个开发源码项目,它其实是 Visual Age for Java的替代品,其界面跟先前的Visual Age

1

for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。

虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。 基于 Eclipse 的应用程序的突出例子是 IBM 的 WebSphere Studio Workbench,它构成了 IBM Java 开发工具系列的基础。例如,WebSphere Studio Application Developer 添加了对 JSP、servlet、EJB、XML、Web 服务和数据库访问的支持。

Eclipse的主要组成

Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成——Eclipse Platform、JDT、CDT和PDE.JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。

Eclipse SDK(软件开发者包)是Eclipse Platform、JDT和PDE所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到Eclipse Platform中的工具。Eclipse SDK由Eclipse项目生产的工具和来自其它开放源代码的第三方软件组合而成。Eclipse项目生产的软件以 CPL发布,第三方组件有各自自身的许可协议。

1.2.2 相关技术简介

1.JAVA 6.0 技术

Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.4,最近版本为Java1.7。

2

Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。 2009年04月20日,oracle(甲骨文)宣布收购sun。

1991年,Sun公司的James Gosling。Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个Oak(一种橡树的名字)软件,他是Java的前身。当时,Oak并没有引起人们的注意,直到1994年,随着互联网和3W的飞速发展,他们用Java编制了HotJava浏览器,得到了Sun公司首席执行官Scott McNealy的支持,得以研发和发展。为了促销和法律的原因,1995年Oak更名为Java。Java的得名还有段小插曲呢,一天,Java小组成员正在喝咖啡时,议论给新语言起个什么名字的问题,有人提议用Java(Java是印度尼西亚盛产咖啡的一个岛屿),这个提议得到了其他成员的赞同,于是就采用Java来命名此新语言。很快Java被工业界认可,许多大公司如IBM Microsoft.DEC等购买了Java的使用权,并被美国杂志PC Magazine评为1995年十大优秀科技产品。从此,开始了Java应用的新篇章。

Java的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深远的影响:

(1)软件4A目标要求软件能达到任何人在任何地方在任何时间对任何电子设备都能应用。这样能满足软件平台上互相操作,具有可伸缩性和重用性并可即插即用等分布式计算模式的需求。

(2)基于构建开发方法的崛起,引出了CORBA国际标准软件体系结构和多层应用体系框架。在此基础上形成了Java.2平台和.NET平台两大派系,推动了整个IT业的发展。

(3)对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服务为中心。中间提供商,构件提供商,服务器软件以及咨询服务商出现。企业必须重塑自我,B2B的电子商务将带动整个新经济市场,使企业获得新的价值,新的增长,新的商机,新的管理。

(4)对软件开发带来了新的革命,重视使用第三方构件集成,利用平台的基础设施服务,实现开发各个阶段的重要技术,重视开发团队的组织和文化理念,协作,创作,责任,诚信是人才的基本素质。

3

总之,目前以看到了Java对信息时代的重要性,未来还会不断发展,Java在应用方面将会有更广阔的前景。(1) 可视化的设计平台

传统程序设计语言编程时,需要通过编程计算来设计程序的界面,在设计编程时,需要通过编程计算来设计程序的界面,在设计过程中看不到程序的实际效果,必须在运行程序的时候才能观察。如果对程序的界面不满意,还要回到程序中去修改,这一过程常常需要反复多次,大大影响了编程的效率。JAVA提供的可视化设计平台,把windows界面设计的复杂性“封装”起来。程序员不必再为界面的设计而编写大量程序代码,只需按设计的要求,用系统提供的工具在屏幕上“画出”各种对象,JAVA自动产生界面设计代码,程序员所需要编写的只是实现程序功能的那部分代码,从而大大提高了编程的效率。

(2) 面向对象的设计方法

JAVA采用面向对象的编程方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予相应的属性。在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具“画”在界面上,由JAVA自动生成对象的程序代码并封装起来。 (3) 事件驱动的编程机制

JAVA通过事件来执行对象的操作。在设计应用程序的时候,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或由事件驱动程序调用过程来执行制定的操作。

(4) 结构化的设计语言

JAVA是在结构化的BASIC语言基础上发展起来的,加上了面向对象的设计方法,因此是更出色的结构化程序设计语言。

(5) 充分利用Windows资源

JAVA提供的动态数据交换(DDE)编程技术,可以在应用程序中实现与其它Windows应用程序建立动态数据交换和在不同的应用程序之间进行通信的功能。

JAVA提供的对象链接与嵌入(OLE)技术把每个应用程序都看作一个对象,将不同的对象链接起来,嵌入到某个应用程序中,可以得到具有声音、影像、图像、动画和文字等各种信息的集合式文件。

JAVA还可以通过动态链接库(DDL)技术将C/C++或汇编语言编写的程序加入到JAVA的应用程序中,或是调用Windows应用程序接口(API)函数,实现SDK所具有的功能。

2.SQL Server 2000技术

数据处理是现代计算机应用中一个重要的组成部分,数据处理是指对各种形式的数据进行收集、存储、加工和传播的一系列活动的总和。其目的是从大量的、原始的数据中抽取、推导出对人们有价值的信息作为行动和决策的依据;也是为了借助计算机科学

4

地保存和管理复杂、大量的数据,以便人们能方便而充分地利用这些宝贵的信息资源。

SQL Server 2000是在SQL Server7.0的基础上发展起来的,它扩展了SQL Server7.0的性能、可靠性和易用性。SQL Server 2000提供了一些新的特性,这些新特性使它成为一个优秀的大型在线事务处理(OLTP)平台、数据仓库和电子商务应用程序。采用客户/服务器计算模型,即中央服务器用来存放数据库,该服务器可被多台客户机访问,数据库应用的处理过程分布在客户机和服务器上。客户/服务器计算模型分为两层的客户/服务器结构和多层的客户/服务器结构。在高性能和企业级的可伸缩性领域,SQL Server 2000设计利用 Windows 2000对更多的处理器、更大的系统内存的支持,最终达到支持 64 位硬件平台。在不断提升可用性的努力过程中,SQL Server 2000采用 Windows 2000四路群集,提供了改进的群集支持。SQL Server 7.0在可管理性和易用性方面已经在行业内领先,SQL Server 2000通过与 Windows 2000活动目录紧密结合进一步改进了这些功能。而且,SQL Server 2000还包含对现有管理工具和实用程序的重大改进,并引入了更具自我调节和自我管理的引擎功能。

通过与数据转换服务、存储库和英文查询的紧密结合,SQL Server7.0 代表了行业内最全面的数据仓库和决策支持平台。SQL Server 2000继续了这种创新,在整个系统内进行了重要的改进。尤其重要的是,SQL Server 2000关系引擎增加了实质化的视图,改善了在特大型数据库环境中执行复杂查询的性能。同时,SQL Server 2000引入了新的数据挖掘功能,可自动发现在大量数据之间隐藏的关系并在历史数据的基础上做出预测。这些数据挖掘功能将要实施,以向最终用户隐藏这种尖端技术的复杂性,并允许开发人员将第三方的数据挖掘产品轻松集成客户的应用程序中。最后,在电子商务领域,SQL Server 2000高度集成了对 XML 和通过 Web 访问数据库的支持[2]。

3.ODBC技术

ODBC(Open Database Connectivity,开放数据库关联)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。

一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access还是Oracle数据库,均可用ODBC API进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。

应用程序要访问一个数据库,首先必须用ODBC管理器注册一个数据源,管理器根据数据源提供的数据库位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与具体数据的联系。这样,只要应用程序将数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接。一旦你写了一个基于ODBC的应用程序,你应该能够通过ODBC与任何后端数据库连接,不管数据库厂商是谁,只要数据库是中表的逻辑结构是一致的。

5

第二章 可行性研究及需求分析

2.1 可行性研究

可行性研究也称为可行性分析(Feasibility Analysis),是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会等方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容:

1.经济可行性:主要是对项目的经济效益进行评价,本系统的开发不需要额外的硬件设备,经费对于本学院是可以接受的,并且本系统实施后可以显著提高工作效率,有助于学院完全实现信息化管理。所以本系统开发在经济上是可行的。

2.技术可行性:本系统主要使用JAVA语言开发系统,JAVA语言具有简单易学的特性,把设计人员从繁琐复杂的界面设计中解脱出来。强大的多媒体功能可以轻而易举地开发出集声音、动画、和图像于一体的多媒体应用程序。数据库服务器选用SQL Server 2000数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。而且JAVA语言与SQL Server 2000对系统的软硬件环境要求并不高。因此,系统的软件开发平台已成熟可行。

3.方案可行性:目前,随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,需要有学生个人信息系统来提高学生个人信息工作。为了满足校内各学院,各职能部门,以及各位同学对个人信息管理的需求,学生个人信息系统越来越被广泛的需要。学校良好的设施为学校开发数字化校园提供了坚实的基础。

4.目的可行性:管理信息系统就是我们常说的MIS(Management Information System),在强调管理,强调信息的现代社会中它变得越来越普及。MIS是一门新的学科,它跨越了若干个领域,比如管理科学、系统科学,运筹学、统计学以及计算机科学。在这些学科的基础上,形成信息收集和加工的方法,从而形成一个纵横交织的系统。 5.管理可行性:主要是管理人员是否支持,现有的管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。规章制度和管理方法为系统的建设提供了制度保障。

综上所述,此系统开发目的已明确,在技术和经济等五方面都可行,并且投入少、见效快。因此本系统的开发是完全可行的。

2.2 系统需求分析

用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础[5]。

6

2.2.1 用户登录需求分析

本管理系统的目标是为学生提供信息管理系统,所以该管理系统的用户类型为学生,学生登录时必须要输入正确的用户名和密码,才能对该系统进行添加、修改和删除等操作。

正确的密码和用户名 错误的密码和用户名 用户

图2-1 用户登录需求分析

如图2-1所示,学生登录需求分析分为两个部分,分别是输入用户名和密码正确和错误的情况。如果输入的用户名或密码错误,该用户将无法使用本系统。如果用户输入的用户名和密码正确,就会直接进入系统,进而对系统数据库进行各种操作。

图2-2 用户对数据库的需求分析

查询 修改 添加 如图2-2所示,学生进入系统之后,对数据库操作部分的需求主要包括添加、修改和查询等三部分。

2.2.2 系统的运行环境

在不适当配置的情况下,系统的性能往往不尽如人意,但现在的硬件性能已经相当出色,而且价格也很便宜,因此,为了更好的完善系统我们通常给服务器端配置高性能硬件。

1.硬件环境

? 处理器: Pentium 4芯片或更高

7

? 内存: 256M或更高 ? 硬盘空间: 20GB以上

? 显卡: SVGA显示适配器 32M 2. 软件平台

? 应用环境: Windows 操作系统 ? 操作系统: Windows XP ? 数据库: SQL Server 2000 ? 数据库驱动:jtds1.2.jar驱动程序 ? 编程语言: JAVA

了解到建立该系统的软硬件环境后,接下来我们就可以对系统的流程图进行分析了。

2.3 系统流程图

针对以上对一般学生个人信息系统的需求,通过对学生学习过程的内容和流程分析,设计如下面所示的数据项和数据结构:

? 学生基本信息:包括的数据项有:学号、密码、专业、姓名、年级、性别; ? 活动信息:包括的数据项有:编号、学号、名称、日期、备注;

? 课程基本信息:包括的数据项有:编号、学号、名称、学分、学年、信息; ? 学生奖惩情况基本信息:包括的数据项有:编号、学号、日期和奖惩情况。 在仔细分析调查有关学生个人信息信息需要的基础上,将得到如图2-2所示的本系统所处理的流程图:

开始 登录 输入用户名和密码 是 学生信息 进入主页面 否 奖惩信息 课程信息 好友信息 8 活动信息

结束 图2-2 学生个人信息系统流程图

有上面的数据结构、数据项、和流程,我们就能进行下面的数据库设计。

2.4 系统功能模块图 2.4.1 系统功能分析

系统开发的总体任务实现学生信息关系系统化、规范化和自动化。

系统功能分析是在系统开发的总体任务的基础上完成的。本例中的学生管理系统需要完成的功能主要有:

? 学生基本信息:包括的数据项有:学号、密码、专业、姓名、年级、性别; ? 活动信息:包括的数据项有:编号、学号、名称、日期、备注;

? 课程基本信息:包括的数据项有:编号、学号、名称、学分、学年、信息; ? 学生奖惩情况基本信息:包括的数据项有:编号、学号、日期和奖惩情况。 ?

2.4.2 系统模块设计

对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如图2-3所示的系统模块图。

学生个人信息管理系统个人信息课程信息相册管理重要文件好友信息奖罚信息活动信息

图2-3 学生个人信息系统模块图

通过以上对系统流程,以及系统功能模块的需求分析,我们了解到数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以

9

及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于程序的实现。我们在设计数据库时应该了解用户的需求,包括现有的以及将来可能增加的需求。

第三章 学生个人信息系统数据库设计

3.1 设计SQL Server数据库

数据库是用于存储大量数据的区域,它通常包括一个或多个表。数据库应用成为当

今计算机应用的主要领域之一。JAVA提供了功能强大的数据库管理功能,能够方便、灵活地完成数据库应用中涉及的诸如建立数据库、查询和更新等各种基本操作。

得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动[3]。

本实例根据上面的设计规划出的实体有:学生实体、宿舍实体和来访人员实体。

各个实体具体的描述E-R图如下所示。

学号姓名专业年级性别个人信息

编号名称文件日期学号文件信息 10

编号学号分类图片图片信息编号学号名称学分学年成绩课程管理编号学号姓名性别专业QQEmailTel好友编号学号原因日期备注奖惩编号学号名称日期备注活动

11

3.2 建立表结构

关系数据库是以表的方式组织数据,现在需要将上面的数据库概念结构转化为SQL Server 2000数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体以及实体之间关系的基础上,形成数据库中的表以及各个表之间的关系[8]。 学生个人信息系统数据库中各个表格的设计结果如下面的几个表所示。每个表表示在数据库中的一个数据表。

表1-1为学生基本信息表。

表1-1 student 学生基本信息表

列 名 Sno Name Sex Major Grade Spwd

数据类型 INT(4) CHAR(10) CHAR(2) DATETIME(8) CHAR(20) CHAR(12) 可否为空 NOT NULL NULL NULL NULL NULL NULL 说 明 表1-2 课程信息表。

表1-2 course课程基本信息表

列 名 Id Sno Name Credit Record Years 数据类型 FLOAT(8) INT(4) CHAR(10) CHAR(10) INT(4) CHAR(10) 可否为空 NOT NULL NULL NULL NULL NULL NULL 说 明

表1-3活动表。

表1-3 活动信息表

列 名 Id Sno Name

数据类型 CHAR(10) CHAR(10) CHAR(10) 12

可否为空 NOT NULL NULL NULL 说 明

Odate Others CHAR(15) CHAR(10) NULL NULL

表1-4 好友信息表。

表1-4 好友信息表

列 名 Id Sno Name Sex Major Tel QQ Birth Email 数据类型 INT(4) CHAR(10) float char varchar varchar varchar varchar varchar 可否为空 NOT NULL NOT NULL 8 20 10 10 20 20 20 说 明

表1-5 奖惩表。

表1-5 奖惩表 列 名 Id Sno Reason Pdate Others 数据类型 FLOAT(8) INT(4) DATETIME(8) CHAR(10) CHAR(20) 可否为空 NOT NULL NULL NULL NULL NULL 说 明

第四章 学生个人信息系统的设计

在对本系统进行了详尽的系统分析和数据库设计之后,本章将概述该系统所实现的功能。

13

4.1 系统总体功能模块

学生个人信息管理系统个人信息课程信息相册管理重要文件好友信息奖罚信息活动信息 图4-1 学生个人信息系统总体功能模块图

4.2 学生信息管理

学生在对个人信息进行管理时,也需要先登录才能对整个系统进行操作,同时也可以对用户进行管理,管理员登录后进入管理系统的主页面,可以选择用户管理菜单的添加用户,修改密码和退出系统。如下图4-2所示:

个人信息管理注册用户修改密码修改个人信息查看个人信息 图4-2 用户管理功能模块图

4.4 课程信息管理

学生个人信息系统主要就是实现个人信息的管理,用户可以在该系统实现课程情况的分配,对课程情况的查询和对课程情况的修改。

14

第五章 学生个人信息系统的实现

5.1个人信息管理

系统用户管理主要实现如下功能: ? 修改个人信息 ? 修改密码 ? 退出系统

5.1.1 用户登录页面

系统启动之后,首先出现如图5-1所示的用户登录页面,用户首先输入用户名,然后输入密码。

图5-1 用户登录页面

用户登录页面中放置了两个文本框(text),用来输入用户名和用户密码:一个按钮(submit)用来确定或者取消登录;4个标签来标示页面的信息。文本框txtPassword的PasswordChar属性是用指定字符来掩盖用户输入的密码。

15

用户如果没有输入用户名和用户密码,将出现消息框给提示。如果输入的用户名在用户表格中没有找到,将提示重新输入用户名,文本框txtUserName将重新获得输入焦点。如果用户输入的密码不正确,文本框txtPassword将重新获得输入焦点。

用户登录成功将进入如下图5-2所示主页面。

图5-2 学生个人信息系统主页面

5.1.2 用户注册页面

进入系统后,选择菜单“用户管理|添加用户”就可以添加用户,出现如图5-2所示的页面。

16

如图5-3 添加用户页面

在这个页面中放置了3个文本框,用来输入用户名和密码;两个按钮用来确定是

否添加用户;3个标签用来标示文本框的提示。用户需要两次输入密码,用来确保输入密码的正确。用户输入信息完毕,单击“确定”按钮将触发submit事件。

代码如下:

public ActionForward Save(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) { StudentForm sForm = (StudentForm) form; Student s = new Student();

StudentDAO dao = new StudentDAO();

String password = request.getParameter(\); String repassword = request.getParameter(\); if (!password.equals(repassword)) { }

List list = dao.Check(sForm.getSno()); if (list.size() > 0) { }

s.setSno(sForm.getSno()); s.setGrade(sForm.getGrade());

request.setAttribute(\, \此学号已被注册\); return mapping.findForward(\);

request.setAttribute(\, \两次输入密码不同\); return mapping.findForward(\);

17

}

s.setMajor(sForm.getMajor()); s.setSex(sForm.getSex()); s.setSname(sForm.getSname()); s.setSpwd(password); dao.Save(s);

return mapping.findForward(\);

5.1.3 修改用户密码页面

用户可以修改自己的密码,选择菜单“用户管理|修改密码”,出现如图5-4所示的页面。

图5-4 修改密码页面

在这个页面中放置了两个文本框,用来输入密码和确认密码:两个按钮用来确定是否修改密码;两个标签用来标示文本框的内容。两次输入密码后,单击“确认”按钮,将触发Click事件判断是否修改密码,当两次输入密码一致时,数据库中的记录将更新。

代码如下:

http://www.combysj.cn/html/VB/20121209/6665.html

public ActionForward Pwd(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) {

StudentForm sForm = (StudentForm) form; Student s = new Student();

18

}

StudentDAO dao = new StudentDAO();

String sno = request.getParameter(\).toString(); List list = dao.Check(sno); s = (Student) list.get(0);

String password = request.getParameter(\); String repassword = request.getParameter(\); String newpassword = request.getParameter(\); if (!newpassword.equals(repassword)) {

}

s.setSpwd(repassword); dao.Update(s);

return mapping.findForward(\);

request.setAttribute(\, \两次输入密码不同\); return mapping.findForward(\);

5.2 课程信息信息管理模块的创建

宿舍基本信息管理模块主要实现以下功能:

? 新增课程信息 ? 修改课程信息 ? 查询课程信息

5.2.1 分配宿舍信息页面

选择“课程管理|新增课程”菜单,将出现如图5-5所示的页面。

图 5-5 添加课程信息页面

19

在添加宿舍信息页面中,使用了四个文本框主要代码如下:

public ActionForward Save(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) { CourseForm cForm = (CourseForm) form; Course c = new Course();

CourseDAO dao = new CourseDAO(); c.setCredit(cForm.getCredit()); c.setName(cForm.getName());

c.setSno(request.getSession().getAttribute(\).toString()); c.setYears(cForm.getYears()); c.setRecord(cForm.getRecord()); dao.Save(c);

return mapping.findForward(\); }

http://www.bysj999.com/html/_NETbiyesheji/20121211/7706.html

执行SQL语句将调用Save 添加记录到数据库,通过Trim()数组将文本框中的内容添加到数据库相应的字段值当中,再通过mrc.Update更新数据库信息即可完成对数据库的添加。在添加数据库之前要通过Testtxt()函数判断文本框中的值是否存在。添加完毕后用户可以单击重置按钮继续向数据库添加内容或清除已添加在文本框中的内容。

5.2.2 修改课程信息页面

选择“宿舍管理|修改宿舍信息”菜单,将出现如图5-6所示的页面。

图5-6 修改课程信息页面

20

主要代码如下:

public ActionForward Update(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) { CourseForm cForm = (CourseForm) form; Course c = new Course();

CourseDAO dao = new CourseDAO();

String id = request.getParameter(\);

List list = dao.checkById(Integer.parseInt(id)); c = (Course) list.get(0); c.setCredit(cForm.getCredit()); c.setName(cForm.getName()); c.setYears(cForm.getYears()); c.setRecord(cForm.getRecord()); dao.Update(c);

return mapping.findForward(\); }

5.2.3 查询课程信息页面

选择“宿舍管理|查询宿舍信息”菜单,就会出现页面选择所要查询的方式,会出现如下图5-7所示页面。

图5-7 选择查询方式页面

代码如下:

public ActionForward Show(ActionMapping mapping, ActionForm form,

21

HttpServletRequest request, HttpServletResponse response) {

CourseForm cForm = (CourseForm) form; Course c = new Course();

CourseDAO dao = new CourseDAO(); String f = request.getParameter(\); String t = request.getParameter(\); String s = request.getParameter(\); String years = f + \+t + s; //System.out.println(years);

String sno = request.getSession().getAttribute(\).toString(); List list = dao.Check(years, sno); request.setAttribute(\, list); return mapping.findForward(\); }

5.3 好友基本信息管理模块的创建 学生基本信息模块实现以下功能:

? 添加好友信息 ? 修改好友信息 ? 查询好友信息

5.3.1 添加好友信息页面

选择“好友信息|添加好友信息”菜单,将出现如图5-10所示的页面。

图5-10 添加好友信息页面

22

代码如下:

public ActionForward Save(ActionMapping mapping, ActionForm form,

}

HttpServletRequest request, HttpServletResponse response) { FriendForm fForm = (FriendForm) form; Friend f = new Friend();

FriendDAO dao = new FriendDAO(); f.setEmail(fForm.getEmail()); f.setMajor(fForm.getMajor()); f.setName(fForm.getName()); f.setQq(fForm.getQq()); f.setSex(fForm.getSex());

f.setSno(request.getSession().getAttribute(\).toString()); f.setTel(fForm.getTel()); f.setBirth(fForm.getBirth()); dao.Save(f);

return mapping.findForward(\);

5.3.2 修改好友信息页面

选择“好友信息|好友信息列表”菜单,将出现如图5-11所示的页面。这个页面在添加学生信息页面的基础上增加两排按钮。

图5-11 修改好友信息页面

23

代码如下:

public ActionForward Update(ActionMapping mapping, ActionForm form,

}

HttpServletRequest request, HttpServletResponse response) { FriendForm fForm = (FriendForm) form; Friend f = new Friend();

FriendDAO dao = new FriendDAO();

String id = request.getParameter(\);

List list = dao.checkById(Integer.parseInt(id)); f = (Friend) list.get(0); f.setEmail(fForm.getEmail()); f.setMajor(fForm.getMajor()); f.setName(fForm.getName()); f.setQq(fForm.getQq()); f.setSex(fForm.getSex()); f.setTel(fForm.getTel()); f.setBirth(fForm.getBirth()); dao.Update(f);

return mapping.findForward(\);

5.3.3 查询好友信息页面

选择“好友管理|查询好友信息”菜单,将出现如图5-12所示的页面。

图5-12 查询好友信息页面

24

代码如下:

public ActionForward Check(ActionMapping mapping, ActionForm form,

}

HttpServletRequest request, HttpServletResponse response) { FriendForm fForm = (FriendForm) form; Friend f = new Friend();

FriendDAO dao = new FriendDAO();

String reason =request.getParameter(\).toString(); String name = request.getParameter(\);

String sno = request.getSession().getAttribute(\).toString(); List list = new ArrayList(); if(reason.equals(\)){ }

else if(reason.equals(\)){ }

request.setAttribute(\, list); return mapping.findForward(\);

list=dao.CheckByBirth(name, sno); list = dao.CheckByQQ(name, sno); }else{

list = dao.CheckByName(name, sno);

5.4 奖惩管理模块的创建

奖惩管理模块主要实现如下功能: ? 新增奖惩信息 ? 修改奖惩信息 ? 查询奖惩信息

5.4.1 新增奖惩信息页面

选择“奖惩管理|新增奖惩信息”菜单,就会出现如图5-13所示页面:

25

图5-13 新增奖惩页面

代码如下:

public ActionForward Save(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) { PunishForm pForm = (PunishForm) form; Punish p = new Punish();

PunishDAO dao = new PunishDAO(); p.setOthers(pForm.getOthers()); p.setPdate(pForm.getPdate()); p.setReason(pForm.getReason());

p.setSno(request.getSession().getAttribute(\).toString()); dao.Save(p);

return mapping.findForward(\); }

5.4.2 查询奖惩信息页面

系统管理员可以通过选择“奖惩管理|查询奖惩信息”进入到查询奖惩信息页面,如图5-14所示:

26

图5-14 查询奖惩信息页面

public ActionForward Check(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) { PunishForm pForm = (PunishForm) form; Punish p = new Punish();

PunishDAO dao = new PunishDAO();

String pdate = request.getParameter(\);

String sno = request.getSession().getAttribute(\).toString(); List list = dao.Check(pdate, sno); request.setAttribute(\, list); return mapping.findForward(\); }

5.5 活动管理模块的创建

活动管理模块主要实现如下功能:

? 活动信息录入 ? 活动信息查询 ? 活动信息修改

5.5.1活动录入页面

选择“活动管理|活动信息录入”菜单就会出现如图5-15所示的页面。

27

如图5-15 活动信息录入页面

代码如下:

public ActionForward Save(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) { ActivityForm aForm = (ActivityForm) form; Activity a = new Activity();

ActivityDAO dao = new ActivityDAO(); a.setAdate(aForm.getAdate()); a.setName(aForm.getName()); a.setOthers(aForm.getOthers());

a.setSno(request.getSession().getAttribute(\).toString()); dao.Save(a);

return mapping.findForward(\); }

5.5.2 活动信息查询页面

选择“活动管理|活动信息查询”菜单就会出现如图5-16所示的页面。

28

图5-16 查询活动信息信息页面

代码如下

public ActionForward Show(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) { ActivityForm aForm = (ActivityForm) form; Activity a = new Activity();

ActivityDAO dao = new ActivityDAO(); String adate = aForm.getAdate();

String sno = request.getSession().getAttribute(\).toString(); List list = dao.Check(sno, adate); request.setAttribute(\, list); return mapping.findForward(\); }

5.5.3 活动信息的修改页面

选择“活动|修改宿舍活动信息”菜单,就会出现如图5-17所示页面。

29

图5-17 修改宿舍活动信息页面

代码如下:

public ActionForward Update(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) {

ActivityForm aForm = (ActivityForm) form;

30

}

Activity a = new Activity();

ActivityDAO dao = new ActivityDAO(); String id = request.getParameter(\);

List list = dao.checkById(Integer.parseInt(id)); a = (Activity) list.get(0); a.setAdate(aForm.getAdate()); a.setName(aForm.getName()); a.setOthers(aForm.getOthers()); dao.Update(a);

return mapping.findForward(\);

5.6 重要文档管理模块的创建 5.6.1 重要文档信息录入页面

选择“重要文档管理|重要文档信息录入”菜单,就会出现如图5-18所示页面。

图5-18 学生奖惩信息页面

代码如下:

public String upLoad(String dir, FormFile formFile)

throws FileNotFoundException, IOException {

String fname = \;

fname = formFile.getFileName();

InputStream streamIn = formFile.getInputStream(); File uploadFile = new File(dir);

if (!uploadFile.exists() || uploadFile == null) {

31

摘 要

}

}

uploadFile.mkdirs();

关键词: String path = uploadFile.getPath() + \ + fname; OutputStream streamOut = new FileOutputStream(path); int bytesRead = 0;

byte[] buffer = new byte[8192]; }

streamOut.close(); streamIn.close(); formFile.destroy(); return fname;

while ((bytesRead = streamIn.read(buffer, 0, 8192)) != -1) {

streamOut.write(buffer, 0, bytesRead);

Abstract 5.6.2 重要文档列表页面

选择“重要文档管理|重要文档列表”菜单,就会出现如下图5-19所示页面。

Keywords: 图5-19 重要文档列表页面 第六章 测试

6.1 软件测试的目的和原则

系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过与系统的需求相比较,发现所开发

32

的系统与用户需求不符或矛盾的地方。

系统测试的任务是近可能彻底的检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统\做得怎样?\。这阶段又可分为三个步骤:模块测试,测试每个模块的程序是否有错误;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。该阶段结束应交付测试报告,说明测试数据的选择,测试用例以及测试结果是否符合预期结果。测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。

测试方法

系统测试通常分为两中方法:黑盒测试和白盒测试。在下面会对这两种方法进行简单介绍。

对于软件测试而言,黑盒测试法把程序看作一个黑盒子,完全不考虑程序的内部结构和处理过程。也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据并产生正确的输出信息,程序运行过程中能否保持外部信息的完整性。黑盒测试又称为功能测试。

白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。

这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。

采用什么方法对软件进行测试呢?常用的软件测试方法有两大类:静态测试方法和动态测试方法。其中软件的静态测试不要求在计算机上实际执行所测程序,主要以一些人工的模拟技术对软件进行分析和测试;而软件的动态测试是通过输入一组预先按照一定的测试准则构造的实例数据来动态运行程序,而达到发现程序错误的过程。

白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异。

白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。其中逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。

六种覆盖标准:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖发现错误的能力呈由弱至强的变化。语句覆盖每条语句至少执行一次。判定覆盖每个判定的每个分支至少执行一次。条件覆盖每个判定的每个条件应取到各种可能的值。判定/条件覆盖同时满足判定覆盖条件覆盖。条件组合覆盖每个判定中各条件的每一种组合至少出现一次。路径覆盖使程序中每一条可能的路径至少执行一次。

\白盒\法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。\白盒\法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。但即使每条路径都测试了仍然

33

可能有错误。第一,穷举路径测试决不能查出程序违反了设计规范,即程序本身是个错误的程序。第二,穷举路径测试不可能查出程序中因遗漏路径而出错。第三,穷举路径测试可能发现不了一些与数据相关的错误。

黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试地,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身有问题或规格说明的规定有误,用墨盒测试方法是发现不了的。

系统功能测试

测试的准备工作在分析和设计阶段就开始了。从过程的观点考虑测试,一个应用程序通常包含若干功能模块,本系统测试是顺序进行的,分为以下几个步骤:

1、模块测试。模块测试的目的是保证每个模块作为一个单元能正确运行,所以模块测试通常又称为单元测试。在这个测试步骤中所发现的往往都是编码和详细设计的错误。

2、子系统测试。子系统测试是把经过单元测试的模块放在一起形成一个子系统来测试。模块相互间的协调和通信是这个测试过程中的主要问题,因此,这个步骤着重测试模块的接口。

3、系统测试。系统测试是把经过测试的子系统装配成一个完整的系统来测试。在这个过程中不仅应该发现设计和编码的错误,还应该验证系统确实能提供需求说明书中指定的功能,而且系统的动态特性也符合预定要求。在这个测试步骤中发现的往往是软件设计中的错误。也可能发现需求说明中的错误。

4、验收测试。验收测试把软件系统作为单一的实体来进行测试,它的主要目的是验证系统确实能够满足用户的需要。

6.2 系统测试 6.2.1 测试方法

本软件使用的是黑盒测试技术,彻底的黑盒测试通常要求成百上千亿的测试用例,测试的技术是设计一个较小、可管理的测试用例集,使检测出的一个错误的机会最大,同时通过让相同的错误由多个测试用例检出从而使浪费一个测试用例的机会最小[9]。

6.2.2 测试总结

本次测试中,我采用黑/白盒测试的技术对该管理系统作了详细的测试,在程序测试过程中,发现的错误主要分为两大类错误,一是程序语法错误,二是程序逻辑错误,

34

对于前者的解决主要是依赖于JDK自带编译程序Javac.exe来寻找程序中的语法错误,并逐一解决。而对于后者则是测试运行程序通过设置断点,耐心地寻找逻辑错误处,最终使得程序合乎逻辑,符合设计要求。

通过本对系统的全面测试,我学到了许多测试方面的知识,了解到测试方法、测试经验。通过本次设计,使我了解到测试的重要性。通过测试,可以使软件更适合用户的需求,更加稳定、可靠地运行。

结 论

从本系统开始设计到现在,共两个多月的时间。到目前为止基本功能已经实现。

学生个人信息系统是在对相关人员进行详细调研后,确定了系统涉及的领域,包括数据库设计、界面设计、程序设计等,是一个具有实际应用意义的典型管理系统。

本系统有以下特点:

1.采用B/S体系结构,使系统具有很好的可维护性和重用性。

2.在本系统的开发过程中采用的是JAVA技术,它们使代码容易管理,适合于中小型项目的开发。

3.后台数据库采用的SQL Server 2000,它功能比较强大,除了可以处理包含在各种平台上运行的数据库管理系统内核。

系统虽然基本完成了数字化校园开发设计的任务,但是由于本人技术水平有限,系统的不足之处在所难免,系统在许多方面还需要改进,有些功能还不够完善,所有这些

35

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

Top