目录
独创性声明 I
学位论文版权使用授权书 I
摘要 II
ABSTRACT Ill
第1章引言 1
1.1学生信息管理系统概述 1
1.2系统研究背景及意义 1
1.2.1系统背景 1
1.2.2国内外现状 2
1.2.3研究意义 2
1.3系统设计内容 2
1.4系统研究方法 3
1.5论文结构安排 3
第2章相关技术 5
2.1信息管理系统的开发方法 5
2.1.1结构化生命周期法 5
2.1.2原型法 6
2.1.3综合法 6
2.2C/S模式和B/S模式 6
2.2.1C/S 模式 6
2.2.2B/S 模式 7
2.2.3C/S模式与B/S模式的比较 7
2.3MicrosoftASP.NET 简介 8
2.4Microsoft SQL Server 2008 简介 9
2.5Microsoft Visual Studio 2005 简介 9
2.6本章小结 10
第3章系统需求分析 11
3.1学生信息管理系统的功能需求 11
3.1.1学生信息管理系统体系结构设计 11
3.1.2学生信息管理系统主要功能需求 12
3.1.3系统的具体功能 15
3.1.4学生信息管理系统的功能描述 16
3.2学生信息管理系统的性能需求 16
3.3系统数据流程 17
3.4本章小结 21
第4章系统设计 23
4.1系统总体设计 23
4.2系统功能的详细设计 23
4.2.1基本信息管理模块 24
4.2.2学生日常行为管理模块 25
4.2.3勤工助学信息管理模块 28
4.2.4公共信息服务模块 30
4.2.5校友联谊区模块 32
4.3数据库表的设计 32
4.3.1 概述 32
4.3.2学生基本信息管理模块相关数据表 34
4.3.3学生日常行为管理模块相关数据表 36
4.3.4勤工助学信息管理模块相关数据表 39
4.3.5校友联谊区模块相关数据表 39
4.4学生信息管理系统的软硬件需求设计 40
4.5本章小结 41
第5章 系统实现 43
5.1系统登录功能的实现 43
5.2基本信息管理模块的实现 44
5.2.1班级基本信息管理的实现 44
5.2.2学生基本信息管理的实现 45
5.2.3辅导员信息管理的实现 46
5.3学生日常行为信息管理模块的实现 47
5.3.1学生奖励信息管理的实现 47
5.3.2学生奖学金信息管理的实现 49
5.3.3学生命名奖学金信息管理的实现 49
5.3.4学生成绩信息管理的实现 49
5.3.5学生综合评分信息管理的实现 51
5.3.6学生惩处信息管理的实现 52
5.3.7校外住宿登记的实现 52
5.4勤工助学信息管理的实现 52
5.4.1特困生及助学岗位人员信息管理的实现 53
5.4.2勤工助学岗位管理 53
5.5公共信息服务模块的实现 54
5.6校友联谊区管理的实现 55
5.6.1校友录功能的实现 55
5.6.2校友社区功能的实现 55
5.6.3校友信息管理功能的实现 56
5.7本章小结 56
第6章系统测试 57
6.1软件测试 57
6.2测试内容 58
6.2.1界面测试 58
6.2.2集成测试 60
6.2.3功能测试 60
6.2.4性能测试 61
6.2.5安全性测试 61
6.3测试结果及评价 61
6.4本章小结 62
第7章结论 63
7.1本文工作总结 63
7.2进一步工作展望 63
参考文献 65
致谢 67
第1章引言
当今社会,信息技术的迅猛发展,改变了人们传统的生活、工作方式,同时也深深 的影响着教育管理方式。传统的高校管理方式存在着准确性差、信息传递慢、重复劳动 多、工作强度大、办公效率低等诸多问题。伴随着信息技术的日趋完善,计算机科学日 渐成熟,教育信息化已经成为一种必然趋势⑴。作为教育信息化的重要组成部分,学生 信息管理系统的建设必然给教育管理方式带来积极而深刻的影响,引发重大变革,大幅 度提升高校学生工作的质量和效率⑵⑶。
1.1学生信息管理系统概述
学生信息管理系统是一个以人为主导,利用计算机硬件、软件、网络通信设备以及 其他办公设备,进行信息的收集、传输、加工、储存、更新和维护,支持相关学生工作 干部进行管理的综合信息系统⑷。
学生信息综合管理系统是对学生在校期间各类信息进行管理和分析的信息系统,它 有效地支持了学生工作管理人员的决策和控制⑸。基于网络的学生信息综合管理系统是 信息管理系统在网络上的应用,是信息管理系统在教学管理领域的应用回,一般管理信 息系统的理论、方法和开发过程等对网络化的学生信息综合管理系统有重要的借鉴作 用。
1.2系统研究背景及意义
学生信息是高等学校非常重要的一项数据资源,但其包含的数据量大,涉及的人员 面广,而且需要及时更新,故较为复杂,难以单纯地依靠人工管理,而且传统的人工管 理方式既不易于规范化,管理效率也不高⑸。该系统针对职业学校学生信息的特点以及 管理中实际需要而设计,能够有效地实现学生信息管理的信息化,减轻管理人员的工作 负担,高效率、规范化地管理大量的学生信息,并避免人为操作的错误和不规范行为。
1.2.1系统背景
学生管理是高校管理的重要组成部分。学生的稳定是学校快速发展的有力保障,这 不仅仅关系到学生在校期间的表现,在很大程度上度量了一个学生的跟踪管理。同时, 学生管理还关系到辅导员的考评。学生管理的重要性不言而喻,但是学校的学生管理事 务是很繁琐的,在每个专业,每个学生都需要有对应的档案记录。在学校各项管理中, 学生管理牵涉到的其他管理内容是最复杂的,它牵涉到了学生个人档案管理、日常考核 管理、成绩管理等。所以在实际管理工作中,往往由于记录的数量多、管理复杂、可连 续性差,造成学生管理的混乱。对这一混乱,最好的解决办法就是借助计算机技术和数 据库管理系统,对整个学生管理进行记载,并实行电子化管理。本课题的目的就是开发 “学生信息管理系统”,通过这一系统来掌握学生的管理情况,实现学生信息管理的电子 化,提供一个电子化的学生管理平台。
1.2.2国内外现状
学生信息综合管理系统涉及到校、院、师、生的诸多方面,随着教学体制的不断改 革,学生日常管理工作日趋繁重、复杂。迫切需要研制开发一款功能强大,操作简单, 具有人性化的学生信息综合管理系统。
在国外高校,与国内不同,他们一般具有较大规模的稳定的技术队伍来提供服务与 技术支持。而国内高校信息化建设相对起步较晚。在数字校园理论逐步应用的过程中, 各高校一方面不断投资购建各种硬件、系统软件和网络,另一方面也不断开发实施了各 类教学、科研、办公管理等应用系统,形成了一定规模的信息化建设体系。但是,由于 整体信息化程度相对落后,经费短缺,理论体系不健全等原因,国内高校教务管理系统 在机构设置、服务范围、服务质量及人员要求上与国外高校相比都有一定的差距。
纵观目前国内研究现状,在安全性和信息更新化方面存在有一定的不足,各现有系 统资料单独建立,共享性差;在以管理者为主体的方式中,信息取舍依赖管理者对于信 息的认知与喜好,较不容易掌握用户真正的需求,也因此无法完全满足用户的需求。因 此,本系统应充分依托校园网,实现学生信息的集中管理、分散操作、信息共享,使传 统的学生信息管理朝数字化、无纸化、智能化、综合化的方向发展,并为进一步实现完 善的计算机学生信息管理系统打下良好的基础。
1.2.3研究意义
实现学生信息管理系统及相应的配套设施,可以使学生管理工作发挥出最大的效 能,从而获得巨大的收获。其意义主要表现在:学生信息管理系统的开发和应用,可以 提高学校的管理水平。学校办公效率可以有很大的提高,为学校的信息管理提供了一个 良好的工具,化简了繁琐的工作模式,从而使学校的管理更加合理化和科学化。良好的 管理信息系统节省了大量的人力和物力,也避免了大量重复性的工作。
1.3系统设计内容
学生信息综合管理系统主要分为两个部分:前台的网站一一沈阳大学学工在线,后 台的数据维护部分一一学生信息管理系统。学工在线主要完成宣传和展示我校学生工作 的工作,其中包括三大部分的内容和一些新闻通告信息。
学工在线分为四部分:思想教育、学生管理、军事国防以及新闻公告,如图1.1所
zj\ O
Fig. 1」Function diagram of student works online
学生信息管理系统主要是完成学生信息录入和维护的工作,同时留给辅导员老师一 定的权限管理其负责的学生,让辅导员老师可以时刻关注自己学生的动向。
1.4系统研究方法
学生信息管理系统的开发釆用生命周期法。生命周期法是将系统的研制开发过程看 作一个生命周期,这个周期包括6个阶段,即可行性研究、系统分析、系统设计、系统 实施(程序设计)、系统测试及系统运行维护⑴。
1.5论文结构安排
第1章引言,分析了沈阳大学学生信息管理子系统的设计与实现的研究背景和国 内外现状,阐述了系统的设计内容以及研究意义。
第2章相关技术,首先介绍了在开发本系统中所涉及的理论知识,并详细综述了 Microsoft ASP.NET及Microsoft SQL Server 2008等相关技术在本系统中的应用。以及对 Microsoft Visual Studio 2005 开发平台进行介绍。
第3章系统需求分析,详细分析了沈阳大学学生信息管理系统的组织结构、管理功 能结构、业务流程及数据流程等,为本系统的设计工作打下良好的基础。
第4章系统设计,这部分分为整体设计和详细设计两部分,在整体设计中,主要对 本系统中的各个模块所应实现的功能进行整体上的设计,在详细设计中,详细论述了沈 阳大学学生信息管理系统中的学生基本信息管理模块、学生日常行为管理模块、勤工助 学信息管理模块、公共信息服务模块、沈阳大学校友联谊模块以及系统功能维护模块的 功能与设计以及数据库的设计。
第5章系统实现,描述了沈阳大学学生信息管理子系统各个模块实现的功能。详 细论述了沈阳大学学生信息管理子系统的学生基本信息、学生日常行为、勤工助学、公 共信息服务、校友联谊等功能模块的具体实现。
第6章系统测试,此部分描述了对设计的系统进行全面的测试,阐述了此系统正 常的运行状态。
第7章结论,对本次开发的系统进行全面的总结,并对今后的研究提出建议。
第2章相关技术
沈阳大学学生信息管理子系统采用生命周期法开发,本着开放性和实用性相结合的 原则,系统设计为B/S模式和C/S模式相结合,系统采用B/S模式,网页开发工具采用 Microsoft ASP.NET,应用系统采用C/S模式,前端开发工具采用Microsoft Visual Studio 2005 o服务器端操作系统采用Microsoft Windows Server 2008,客户机操作系统采用 Microsoft Windows XP以上。服务器端数据库选择Microsoft SQL Server 2008。本章介绍 了系统所采用的技术以及该技术在实现上所具有的技术特性。
2.1信息管理系统的开发方法
管理信息系统的开发方法,归纳为结构化生命周期法、原型法和综合法〔7〕。
2.1.1结构化生命周期法
该方法是由结构化系统分析和设计组成的一种管理信息系统开发方法,生命周期法 是将软件的研制开发过程看作一个生命周期,这个周期包括6个阶段,即可行性研究、 系统分析、系统设计、系统实施(程序设计)、系统测试与系统运行维护。应用系统工程 的方法,按照规定的步骤和任务要求,使用一定的图表工具,完成规定的文档,在结构 化和模块化的基础上进行管理信息系统的开发工作。结构化生命周期法的开发过程一般 是先把系统功能视为一个大的模块,再根据系统分析设计的要求对其进行进一步的模块 分解或组合。在实际开发过程中,主要应用的结构化设计方法有结构化分析、结构化设 计和结构化编程。结构化生命周期法主要特点是:
(1)开发目标清晰化
结构化生命周期法的系统开发以“用户第一”为目标,开发中要保持与用户的沟通, 取得与用户的共识,这使管理信息系统的开发建立在可靠的基础之上。
(2)工作阶段程式化
结构化生命周期法每个阶段的工作内容明确,这便于开发过程的控制。每一阶段工 作完成后,要根据阶段工作目标和要求进行审查,这使阶段工作有条不紊,也避免为以 后的工作留下隐患。
(3)工作文件规范化
结构化生命周期法每一阶段工作完成后,要按照要求完成相应的文档报告与图表, 以保证各个工作阶段的衔接与系统维护工作的便利。
(4)设计方法结构化
结构化生命周期法釆用自上而下的结构化、模块化分析与设计方法,使系统间各个 子系统间相对独立,便于系统的分析、设计、实现与维护。结构化生命周期法被广泛地 应用于管理信息系统的开发中。
2.1.2原型法
该方法是一种根据用户需求,利用系统快速开发工具,建立一个系统模型,在此基 础上与用户交流,最终实现用户需求的快速管理信息系统开发方法。原型法开发过程 包括系统需求分析、系统初步设计、系统调试和系统转换、系统检测与评价等阶段。用 户仅需在系统分析与系统初步设计阶段完成对应用系统的描述,开发者在获取一组基本 需求定义后,利用开发工具生成应用系统,快速建立一个目标应用系统的最初版本,并 把它提交给用户试用、评价,根据用户提出的修改补充,再进行新版本的开发,反复这 个过程,不断地细化和扩充,直到生成一个用户满意的应用系统。利用面向对象的开发 工具,可使开发者的精力和时间集中于分析应用问题及抽取反应应用系统实质的事物逻 辑上,而不再拘泥于应付处理繁琐的开发实现细节,节省了大量的编程工作,并且使系 统界面美观,功能较强。原型法具有开发周期短、见效快、与业务人员交流方便的优 点,被广泛地应用于财务报表系统、信贷管理系统、工资人事管理系统、固定资产管理 系统等的开发中。
2.1.3综合法
综合法是将周期法和原型法两者结合使用,采用结构化生命周期法的设计思想,在 系统分析与系统初步设计上釆用原型法作出原始模型,与用户反复交流达成共识后,继 续按结构化生命周期法进行系统详细设计及系统实施与转换、系统维护与评价阶段的工 作。综合法的优点是它兼顾了周期法开发过程控制性强的特点以及原型法开发周期短、 见效快的特点。在管理信息系统开发中,可针对不同的实际情况,合理采用综合法,使 开发过程更具灵活性,往往会取得更好的开发效果。
管理信息系统的开发过程并不是一个简单的线性过程,而是一个在开发人员和用户 参与下的充满回溯和不断迭代的过程。需要综合运用多种系统分析与设计技术,以便改 善系统的开发过程,提高系统开发效率,缩短系统开发周期。
2.2C/S模式和B/S模式
2.2.1C/S 模式
C/S模式(Client/server,客户机/服务器)又称C/S结构,是软件系统体系结构的一种。 C/S模式简单地讲就是基于企业内部网络的应用系统。C/S模式分为两个子系统:客户 机和数据库服务器。前者主要实现以下功能:提供应用程序的友好界面,建立与服务器
的连接,处理数据的输入与输出及提交数据访问请求等;后者主要用来为多用户管理一 个独立的数据库,管理与处理接收到的数据访问请求等。
2.2.2B/S 模式
B/S模式(Browser/Server,浏览器/服务器)又称B/S结构。它是随着Internet技术的 兴起,对C/S模式的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW 浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所 谓3-tier结构。主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语 言(VBScript、JavaScript等)和ActiveX技术,用通用浏览器实现了原来需要复杂专用软 件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术冈。
B/S模式采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(VPN)。 前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点。须视企业规 模和地理分布确定。企业内部通过防火墙接入Internet,整个网络采用TCP/IP协议。
B/S三层结构分别为用户服务层、应用服务层和数据服务层,功能如下:
⑴用户服务层(User Service Tier):也称为表现层(Presentation Tier)。该层主要负责 在客户端通过图形界面实现与用户的交互,并向应用服务层提交服务请求。该层对应于 客户端的Web浏览器。
(2)应用服务层(Application Service Tier):也称为商业逻辑层(Business Logic Tier)。 该层处理所有来自客户端的服务请求,包括数值计算、数值分析等与用户界面和数据存 储无关的工作。同时也能作为中介,进一步向其他的分布式应用系统服务器提交服务请 求。该层对应于Web服务器。
(3)数据服务层(Data Service Tier):实际上它是关系数据库系统,负责数据的维护工 作,通过该层完成数据的查询、存取等操作。该层对应于数据库服务器。
2.2.3C/S模式与B/S模式的比较
(1)C/S模式的特点
C/S模式是传统的解决方案,它在一些传统应用上非常胜任。客户端实现与服务器 的直接相连,没有中间环节,因此响应速度快。同时由于开发是针对性的,因此,客户 操作界面设计个性化,具有直观、简单、方便的特点。由于有客户端专门程序的参与, 可以充分利用客户端资源来为具体应用服务。与B/S模式相比,C/S模式的应用系统最 大的好处是不依赖企业外网环境,即无论企业是否能够上网,都不影响应用。
由于是针对性开发,因此缺少通用性的特点,业务变更或改变不够灵活,需要重新 设计和开发,增加了维护和管理的难度,进一步的业务拓展困难较多。需要专门的客户 端安装程序,分布功能弱,不能够实现快速部署安装和配置。兼容性差,对于不同的开
发工具,相互之间很难兼容,具有较大的局限性。若釆用不同工具,需要重新改写程序。 开发成本较高,需要具有一定专业水准的技术员才能完成。该模式中关系数据库管理系 统可处理的并发用户是有限的,不超过50个(一般二三十个并发用户数就可观了)。由于 客户机与服务器间的大量数据通信不适合远程连接,使其只能适用于局域网应用。在共 享区域上也有很大的局限性,它不能打破企业中各信息系统各自为政,互相独立的局面。
(2) B/S模式的特点
B/S模式开发简单,共享性强。在客户端几乎不需要做任何修改,系统软硬件的安 装、升级、维护都集中在服务器端,且Web浏览器具有统一的用户界面,形式简单, 操作方便。业务扩展简单方便,只需要在服务器上建立相应的Web服务程序,对数据 库的操作由Web服务器集中完成,不存在并发用户的限制问题,通过增加网页即可增 加服务器功能,即可实现所有用户的同步更新。具有分布性特点,可以随时随地进行业 务处理,避免了信息孤岛现象。B/S模式最大的好处是运行维护比较简便,能实现不同 的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Intemet/Intranet等)访问和 操作共同的数据。
个性化特点明显降低,无法实现具有个性化的设计要求。运行效率很低,很难满足 某些复杂应用的需要,功能弱化,难以实现传统模式下的特殊功能要求。给数据库访问 造成较大的压力。同时由于客户端在运行时需要下载相应的脚本程序,也增加了网络的 负担,降低了网络应用的性能。页面动态刷新,响应速度明显降低。对企业外网环境依 赖性太强,由于各种原因引起企业外网中断都会造成系统瘫痪[,4J5]o
⑶结论
基于Web的B/S模式特别适用于信息的浏览、查询与发布,适于领导辅助决策支 持。而C/S模式适用于信息管理、办公自动化等事务处理的系统阿%根据系统的开发 要求和系统目标,将这两种模式有机结合,学校管理工作涉及的部门多,信息量大,要 求处理速度快,基于此特点,为了节省工作量,维护数据的完整性与可靠性,保证系统 运行的高效性,学生信息管理子系统选择C/S和B/S混合模式的系统体系结构。
2.3MicrosoftASP.NET 简介
ASP.NET是ASP的下一代版本,然而ASP.NET又并非从ASP3.0自然演化而来, 在许多方面,ASP.NET与ASP有着本质的不同。ASP.NET完全基于模块与组件,具有 更好的可扩展性与可定制性,数据处理方面更是引入了许多激动人心的新技术,正是这 些具有革新意义的新特性,让ASP.NET远远超越了 ASP,同时也提供给web开发人员 更好的灵活性,有效缩短了 web应用程序的开发周期oASP.NET与Windows Server 2008 的完美组合,为中小型乃至企业级的web商业模型提供了一个更为稳定,高效,安全的 运行环境[叫
2.4Microsoft SQL Server 2008 简介
Microsoft SQL Server是基于客户机/服务器的关系型数据库管理系统。SQL Server 使用客户机/服务器结构把工作负荷分解成分别在客户机和服务器上执行的任务。客户机 应用程序可以运行在一个或几个客户机机器上,也可以运行在服务器上,负责向用户提 供数据,服务器负责管理和分配服务器资源⑴】。
Microsoft SQL Server 2008是面向21世纪的关系型数据库,它在易用性、伸缩性、 可靠性和数据仓库等方面都具有优良的性能。
⑴易用性
Microsoft SQL Server 2008是为客户提供商业问题解决方案的最佳选择之一。通常 的数据库解决方案不可避免的带来了过多的费用支出,并且解决方案的复杂性较高,在 SQL Server 2008中,编程人员可以通过简单的操作就可以完成一个复杂的管理,免除 了对标准操作的复杂管理。
⑵伸缩性
用户对数据库的投资是非常巨大的,一般都希望投资能够得到保护,即随着业务量 的增大,数据库也能随之灵活的发展,以便处理更多的用户和数据,在这方面,SQL Server 2008具有很强的灵活性和伸缩性,可以最大程度的满足客户的需要。
(3)可靠性
Microsoft公司提供了单一的数据库引擎,适用Windows Server系列操作系统环境, 这些系统都具有大型的商业系统所需要的安全性。
SQL Server企业管理器是基于一种在称之为微软管理控制台(MMC)的新的通用服 务器管理环境下进行工作的,这种共享结构为微软服务器的应用程序提供相一致的用户 接口。使用企业管理器时,可以通过设置服务器、数据库、远程服务器的属性和安全性 设置来检查和配置SQL Server系统。用户可以用它创建和修改表、视图、存储过程、规 则、默认值和用户自定义的数据类型、管理报警信号、操作员视图出错记录,创建网络 辅助作业,创建并管理全文本索引以及导入和导出数据。
2.5Microsoft Visual Studio 2005 简介
随着ASP.NET 2.0的发布,相适应的开发工具也产生了,这就是Visual Studio 2005, 它是Visual Studio .NET 2003的升级版本,提供了更好的集成开发环境,可高效创建任 何类型的.NET应用程序。Visual Studio 2005默认支持多种编程语言,例如C#、Visual C++、Visual J++和Visual Jscript等。除此之外,它还提供了许多新特性,例如,提高 了可视化设计模式下的逼真度、增强代码隐藏模型、项目管理更加灵活、有更好的支持 标准等四。
2.6本章小结
本章主要介绍了系统中使用的关键技术。首先介绍了在开发本系统中所涉及的理论 知识,并详细综述了 Microsoft ASP.NET及Microsoft SQL Server 2008等相关技术在本 系统中的应用。以及对Microsoft Visual Studio 2005开发平台进行介绍。。
下一章中将详细介绍了系统分析。
第3章系统需求分析
学生信息管理子系统的需求分析是在本系统开发工作中最重要的环节之一,实事求 是地全面调查是分析与设计的基础,也就是说这一步工作的质量对于整个开发工作的成 败起到决定性的作用。
3.1学生信息管理系统的功能需求
3.1.1学生信息管理系统体系结构设计
信息化平台的体系结构有客户机/服务器结构、浏览器/服务器结构和混合结构等。
(1)客户机/服务器结构
客户机/服务器结构主要由客户机、服务器和中间件三部分组成。在客户端安装应用 系统软件主要用于应用的处理和服务器连接。服务器的主要功能是数据访问和事务管 理。中间件用于连接客户应用程序与服务器管理程序,协同完成工作。客户机/服务器模 式在信息管理和信息共享中发挥了巨大的作用。它利于处理大量数据,且有安全的存取 模式,同时可以降低网络通讯量,但也有诸多缺点,例如;跨平台性差,缺乏开放性, 难以与Internet接轨,维护升级不方便,系统资源冗余度大等问题。它的封闭特点使人 们难以建立完整的信息网络以及与其它系统进行信息交流。由于用户量增多,客户机/ 服务器模式已经由二层结构发展成为三层结构。
(2)浏览器/服务器结构
浏览器/服务器结构主要是由客户机、Web服务器、应用服务器和数据库服务器组 成。在客户端安装的是标准、易用的通用浏览器,将Web技术与数据库技术相结合。 Web服务器主要是实现对客户端应用程序的集中管理,应用服务器主要负责事务处理, 数据库服务器主要用于数据管理。浏览器/服务器模式的特点是集中管理,应用处理程序 和数据库以及相关组件都集中在服务器端,用户端除了操作系统和浏览器之外毋需其他 软件,数据库为各用户提供数据,保证了数据的完整性和及时性。另外,应用程序代码 的维护、更新及数据库的备份和日常维护都可以在服务器端进行。基于Web的应用系 统,信息交流是双向的,这样极大扩展了信息资源开发和其利用的深度和广度。与客户 机/服务器结构比较,具有以下优点:
1)简化了客户端。此种结构不需要在不同的客户机上安装不同的应用程序,只需要 一个通用的浏览器软件即可。
2)简化了系统的开发和维护。开发者只需在服务器上为各个级别的用户设置权限来 实现不同的功能,而不需要另外开发相应的程序,从而减轻了开发与维护的工作量。
3)用户操作方便。用户毋需培训,可以很容易地使用。
4)具有很强的开放性。与Internet相连后,外部的用户可通过通用浏览器进行浏览。 目前应用的浏览器/服务器多为三层:表示层、业务逻辑层和数据服务层,表示层包
括浏览器,数据业务层由数据库提供服务,业务逻辑层是整个软件体系核心,如图3.1所 示,中间层支持应用程序服务器软件,这种软件是中间件的一种形式。由于三层体系结 构与Web处理模型有密切关系,因此中间应用程序服务器常被视为Web服务器的一种
功能扩展〔⑶。
图3.1浏览器/服务器三层结构
Fig. 3.1 Tri-layer structure of Browser/Server
(3)混合结构
这种模式把三层浏览器/服务器结构和三层客户机/服务器结构结合在一起,可以在 不同的场合发挥不同的优势。从技术角度来看,客户机/服务器结构和浏览器/服务器结 构都有其各自的优点和不足之处。客户机/服务器结构具有高效性、高安全性,交互性强, 但是客户端软件的开发量大,费用高,开发维护复杂。浏览器/服务器结构简化了客户端, 具有高维护性、跨平台性,但是它的安全性要求很高,交互性不强。从管理角度来看, 客户机/服务器结构主要适用于安全性要求较高、交互性强、数据处理量大的管理部门。 浏览器/服务器结构使用方便、灵活,分布范围广,可以使管理集成化、统一化。混和式 结构兼备了客户机/服务器模式和浏览器/服务器模式的优点,系统资源相对集中,方便 维护、升级、集中控制、降低系统成本。根据学生工作开放性强、管理分布广,要求操 作尽可能简单、跨平台性强、管理统一化等特点,且无流程性操作,因此在学生工作信 息化平台中,体系结构釆用了浏览器/服务器三层结构U4][15]o
3.1.2学生信息管理系统主要功能需求
根据沈阳大学学生信息综合管理系统的需要,并通过多次与沈阳大学学生处工作人 员、辅导员老师的共同研究、交流以及沟通,确定沈阳大学学生信息管理子系统应实现 以下几个方面的功能。
3.1.2.1学生基本信息管理
(1)学生基本信息
1)学生基本信息管理子模块;
2) 学生基本信息维护子模块(增、删、改);
3) 学生基本信息查询子模块;
(2) 班级基本信息
1) 班级基本信息管理子模块;
2) 班级基本信息维护子模块(增、删、改);
2)班级基本信息查询子模块;
(3) 辅导员信息
1) 辅导员基本信息管理子模块;
2) 辅导员基本信息维护子模块(增、删、改);
3) 辅导员基本信息查询子模块;
3.1.2.2学生日常行为信息
(1) 学生奖励信息管理
1) 学生奖励项目管理子模块;
2) 学生奖励信息维护子模块(增、删、改);
3) 学生奖励信息查询子模块;
(2) 学生奖学金信息管理
1) 学生奖励项目管理子模块;
2) 学生奖励信息维护子模块(增、删、改);
3) 学生奖励信息查询子模块;
(3) 学生命名奖学金管理
1) 学生命名奖学金项目管理子模块;
2) 学生命名奖学金信息维护子模块(增、删、改);
3) 学生命名奖学金信息查询子模块;
(4) 学生成绩信息管理
1) 学生成绩项目管理子模块(增、删、改);
2) 学生成绩信息维护子模块(以班级或个人为单位增、删、改);
3) 学生成绩信息查询子模块(包含自动警告管理);
(5) 学生综合评分信息管理
1) 学生综合评分管理子模块(增、删、改);
2) 学生综合评分信息维护子模块(以班级或个人为单位增、删、改);
3) 学生综合评分信息查询子模块;
(6) 学生惩处信息管理
1)学生惩处项目管理子模块;
2) 学生惩处信息维护子模块(增、删、改);
3) 学生惩处信息查询子模块;
(7)校外住宿登记
1) 校外信宿登记信息维护子模块;
2) 校外信宿信息查询子模块;(地址、联系方式、申请原因、批准人)
3.1.2.3学生勤工助学信息
(1) 特困生及助学岗位人员信息管理
1) 特困生及助学人员资格申请(网上申报填表)子模块;
2) 特困生及助学人员资格批复子模块(增、删、改);
3) 特困生及助学人员情况查询子模块;
(2) 勤工助学岗位管理
校内岗位
1) 勤工助学岗位项目管理子模块;
2) 勤工助学岗位信息维护子模块(增、删、改);
3) 勤工助学岗位信息网上申请子模块(增、删、改);
4) 勤工助学岗位信息网上申请批复子模块(增、删、改);
5) 勤工助学岗位信息匹配子模块(增、删、改)
6) 勤工助学岗位工资维护子模块(增、删、改);
7) 勤工助学岗位信息查询子模块;
8) 岗位人员诚信管理子模块(增、删、改);
校外岗位
1) 勤工助学岗位项目管理子模块(校外岗);
2) 勤工助学岗位信息维护子模块(增、删、改)(校外岗);
3) 勤工助学岗位信息网上申请子模块(增、删、改)(校外岗);
4) 勤工助学岗位信息网上申请批复子模块(增、删、改)(校外岗);
5) 勤工助学岗位信息匹配子模块(增、删、改)(校外岗)
6) 勤工助学岗位信息查询子模块(校外岗);
3.1.2.4公共信息服务
本部分主要是对该系统中的信息进行查询,为用户提供快捷、方便的查询功能。
(1) 信息模糊查询
(2) 学生工作综合情况查询
(3) 学生基本信息査询
(4) 学生日常行为信息查询
(5)学生诚信信息查询
(6)学生择业信息查询
(7)学生综合信息查询
3.1.2.5沈阳大学校友联谊区
(1)沈阳大学校友录
⑵沈阳大学校友社区
(3)沈阳大学校友管理
1)沈阳大学校友信息管理子模块;
2)沈阳大学校友信息维护子模块(增、删、改);
3)沈阳大学校友信息查询子模块;
3.1.3系统的具体功能
开发学生工作信息化平台的根本目的是满足新时期学生工作的实际需求,通过资源 共享、数据库汇总、统计以及远程信息发布等功能,提高工作效率。
学生信息管理系统的编程工作量较大,而且要经常维护、修改,如果编写程序不遵 守正确的规律,就会给系统的开发、维护带来不可逾越的障碍。程序编写应符合软件工 程思想。软件工程思想是利用工程化的方法进行软件开发,通过建立软件工程环境来提 高软件开发效率。
使用模块化程序设计方法,有利于在程序设计的初始阶段从总体上理解和把握整个 系统,而后对于组成系统的各功能模块逐步求精,从而使整个程序保持良好的结构,提 高软件开发效率。系统结构将是由功能模块构成的层次结构,底层的模块一般规模较小, 功能较简单,完成系统某一方面的处理功能。
在自顶向下模块化程序设计过程中应注意以下几点:
(1)模块应该具有独立性
在系统中,模块之间应尽可能相互独立,减少模块间耦合,以便于将模块作为一个 独立子系统开发。
(2)模块大小划分要适当
模块中包括的子模块数要合适,既便于模块的单独开发,又便于系统重构。
(3)模块功能要简单
底层模块一般应完成一项独立的处理任务。
(4)共享的功能模块应集中
学生信息管理系统功能模块组成如图3.2所示。
学生信息管理系统
图3.2学生信息管理系统功能模块划分
Fig.3.2 Function modules of student information management system
3.1.4学生信息管理系统的功能描述
学生信息管理系统设计目标
1) 支持学校学生工作网络化、信息化管理。
2) 完善沈阳大学学生信息管理。
3) 使学生工作干部(辅导员)高效率地完成学生日常事务管理和自身事务管理。
(2)学生信息管理系统的设计思想
1) 基于办公室现有的软硬件环境,尽量选择当前流行的技术开发。本平台设计采用 ASP.NET技术,可以比较方便地实现动态网页,结合SQL Server 2008数据库系统,力 图构建一个灵活的架构,为系统提供充分的扩展空间。
2) 满足各类学生管理工作的需要,并力求达到操作直观、方便、实用、安全等要求。
3) 釆用模块化设计方法,便于系统功能的各种组合与扩充,也便于维护。
4) 使系统具备较好的数据库维护功能,可以及时根据工作需要进行数据查询、添加、 删除、修改、报表等操作。
3.2学生信息管理系统的性能需求
(1)易操作性、模块独立性、简单性和通用性
遵循Web设计的一般规律,在保证页面美观庄重的同时,尽量减小页面大小,提 高页面访问速度;使用下拉菜单、树型菜单、图片链接等方式将内容分类,方便导航。
采用模块化设计方法,将各部分信息封装成独立的模块,并设计好应用程序接口, 这样在增加或删除功能时会很方便,并且不会影响到其他的功能模块。
釆用基于浏览器的信息发布方式,管理者不需要掌握HTML语言和后台编程语言, 只需要经过简单培训,就可以通过浏览器在任何一个客户端非常方便地对信息进行发 布、修改和删除。
(2)健壮性
严格按照第三范式进行系统数据库设计,保证数据库拥有良好的结构和存取性能; 后台程序要有良好的逻辑结构,操纵数据库的语句要保证在满足需求的前提下尽可能减 小网络上的通信量,保证系统有良好的响应性能。在Windows Server 2008操作系统下, 采用SQL Server 2008数据库,使用ASP实现动态页面。
各功能模块之间要有明确的接口,保证系统集成的效率。在系统投入运行前,要进 行充分调试,保证各功能模块的有效实现。
⑶安全性
完善用户管理,赋予不同级别用户以不同的操作权限,某些功能模块只有授权用户 可以访问,超级管理员拥有创建、删除、监控用户行为的权限。
通过加密算法来保护用户密码、关键数据等敏感信息,保证数据库和其他保密信息 的安全性。
3.3系统数据流程
任何数据处理系统的基本功能,都是把输入转变成需要的输出信息。数据决定了处 理的方式,也就是算法;数据显然是系统实现分析的起点。在数据流图分析中,一种最 常用的方法就是结构化分析方法(简称SA方法),SA方法是面向数据流、自顶向下、逐 步求精进行需求分析的方法。为了细化数据流程图,通常从数据流图的输出端着手分析, 因为系统的目标是产生这些输出,输出数据确定了系统必须具有的最基本的组成元素。
在数据流程图的各个层次中,有的层次展示的是外部实体和系统的关系,而有的层 次表示的是系统的核心处理功能,还有的层次展示的是系统的处理细节。为了区分这些 描述系统不同特征的层次,数据流程图分为三个类型的层次,分别是总体图、零级图和 细节图〔29】。
数据流图的基本符号的意思:
(1)矩形表示数据的外部实体,代表系统之外的实体,可以是人、物或其他软件系 统。
(2)圆角的矩形表示变换数据的处理逻辑,加工是对数据进行处理的单元,它接收 一定的数据输入,对其进行处理,并产生输出。
(3)右面的边矩形表示数据的存储,表示信息的静态存储,可以代表文件、文件的 一部分、数据库的元素等。
(4)箭头表示数据流,数据流是数据在系统内传播的路径,因此由一组成分固定的 数据组成。由于数据流是流动中的数据,所以必须有流向。
本系统的需要维护的主要信息有:省检测价格信息、院检测价格信息、客户信息、 报价记录信息、报价单信息、报价单审核信息等。
系统的总体图描述了系统和周围环境的关系。总体图仅仅由一个处理节点和它周围 的外部实体组成。外部实体既可以是一个人员角色或者一个部门,也可以是一个计算机 系统。总体图上标明的数据流为系统间的共享数据。
本系统的总体数据流图如图3.3所示。
图3.3系统总体数据流图
Fig. 3.3 Overall data flow diagram of system
从图3.3中可以看岀,与学生信息管理系统进行交互的角色包括普通学生用户(在 校生)、辅导员用户、学生处工作人员用户、校友用户(毕业生)等。这里面值得一提 的是,作为学校信息管理平台中的一个子系统,学生信息管理系统系统并不是孤立的, 需要和其它子系统进行交互。如图3.3所示,本系统需要教务管理系统提供学校的开课 信息及学生的成绩信息等。
总体数据流图反映了学生信息管理系统总体的数据流向,但是并不能清楚地表达系 统内部的数据处理过程的细节,需要进一步的细化。零级图表示一个系统的主要功能或 一个大型系统的主要组成子系统,它的作用是提供一个总揽全局的视图模型。处理节点 的编号由1开始标识,但编号不表示处理的顺序。处理节点数量应本着“少则拆,多则 合”的原则。
/川前所述.本系统基本信息管理、学生11常行为信息管理、勤「.助
川八
特|4:|牛助学
1^1 3.4系纽冬级数据流图
F ig. 3.4 Data flow diagram of s\ siem al zero level
训帕紺,川! •个复杂处理的详细流程的内部标识 它仅宙处理「卡/.
绍成那么,尤竞细化到什么稈:度时,可以结來数据流程图的分解过程呢;’「;讥,M i
•',■$:;观则町以逍循:
m当处理的®I圈有单•的数据流输入或#中.• rwW流饰;iuh .(■?■ (②嘶低级的处理冏圈执行单•的、很好迳义的功能幢* 瞬氐奇卿啟 垄本信息管理模块匸要包扌占新增基本信息(包括学生基本信息&入.
息和件询械本仁息功能。狂本信思管理的细节图如图3.5所小
图3.5尿木仁息模块涪理细i'i图
I ig. 3.5 Data flow diagram of basic inforniaiion management moduli'
基本信息包扌舌学生基本信息、班级基本信息和辅导员基本信息学生基本信息、和 MI:级基本信息是新生入学时批量增加的,形成对应的信息记录,以人S根据需要」f能会修 改;辅[员基本信息町能会随时改变,则需要使用修改功能更改原来的辅导员信息
学生II常行为管理模块t要包括添加学生II常(T为信息、修改学生U常行为信息和 询学生同常穆为信息。这里,学生日常行为信息包插学生萩奖信息、学工获叹」 息、宁丫a命名奖学金信息、学生受惩处信息和学生校外住宿信息等
G'ldT常行为管理模块的细节图如图3.6所示。
2.1 新增的日常行为
新增日常行为信息 信息记录
2.3 相关的H常行为
A查询日常行为信息 信息记录
图3.6学牛:「I常行为管理模块细节图
lie. 3.6 Data flow diagram of student daily beliax ior management module
如图3.6所示,如果学生新获得了奖励、奖学金、命名奖学金或受到『惩处,或者 在校外住宿蹴增丿川了记录,用丿以使用添加功能把信息录入到娄攵据应小一如!O ■陽改,则便用修改日常行为信息功能可以修改数据库里的日常行为信息记录对「 :■生用户,最常使用的功能还是査询自己的I I常行为信息
勒匸助宁管理模块1三要是对在校学生中的特困生情况进彳亍鉴定• WI ”
)同时诲模块还包含勒匚助咛:岗位信息,是在校学生屢瞪彌勒匸助呼:岗位信息•付 同咛:们在校里能找到自己满意的兼职匚作。勤工助学管理模块的细节图如图=7疗讥
强困牛.资格申请
3.1 新贫困生记录
A
川核信息 确定资格
3.2 新增崗位记录-
A 新增岗位信息 A
岗位信息
3.4 柑关的岗位记求.
► 查询岗位信息 -A
图3.7勒工助学管理模块细肖图
Fig. 3.7 Data flow diagram of spart-vvork and part-study programme management module
在校生认为自己符合相关贫困生标准时,可以提出申请,在通过了辅导员根据相关 标准进行的审核后,则生成新贫困生记录;学校经常发布勤工助学岗位信息,供贫困生 查询、申请。
公共信息服务模块提供各种信息的查询,信息模糊查询、学生工作综合情况查询、 学生基本信息查询、学生日常行为信息查询、学生诚信信息查询、学生择业信息查询、 学生综合信息查询等。
公共信息服务模块的细节图如图3.8所示。
遊奖惩信息课程、成绩信息
强g员信十—
4J 查询得到的信息
学生基弓|野丿[公共信息服务I »
Yfii 息 /
嚙:助学信息 校友涂〉
图3.8公共信息服务模块细节图
Fig. 3.8 Data flow diagram of public information service module
校友联谊区模块包括校友录子模块、校友社区子模块、校友管理子模块。其中的校 友录子模块、校友社区子模块由静态页面组成,没有数据的流入流岀。校友管理子模块 包括新增校友信息、修改校友信息和查询校友信息等功能。校友信息管理的细节图如图 3.9所示。
图3.9校友信息模块细节图
Fig. 3.9 Data flow diagram of alumni information module
校友信息是在学生毕业时批量增加的,形成对应的信息记录,以后根据需要(如学 生工作的变动等)可能会修改;校友信息可被校友本人或相关工作人员查询。
3.4本章小结
本章从功能的角度对系统进行了详细分析。首先,通过介绍学生信息管理的业务流 程,分析了系统需要实现的具体功能,然后介绍了.NET开发框架,这些技术是系统技 术可行性分析的根本,然后从系统架构、开发工具、数据库服务器和开发语言的选择方 面介绍了系统的开发环境,系统选择C/S三层架构、使用Microsoft Visual Studio 2005 Team System作为开发工具、使用SQL Server 2008作为数据服务器、使用C#开发语言, 最后分析了系统的数据流程,得到系统的数据流程图。其中总体图描述了系统中整体的 数据走向以及和外部实体的交互关系,零级图提供了总揽全局的视图模型,细节图详细 描述了各个模块内部的数据交互。
经过系统分析,对系统功能有了整体的了解,下一章中将详细介绍基于系统分析的 系统设计。
第4草系统设计
设计活动是软件开发过程的关键活动之一。它的主要任务是解决“如何做”的问题, 即将软件的用户需求合理地变换成目标系统的体系结构、接口特征、模块逻辑、数据结 构等。软件设计决定了系统的可扩充性、可维护性、可复用性及系统的性能,对于软件 质量有着及其重要的作用。
本系统围绕着学生信息管理的业务进行设计,旨在设计能够实现学生信息管理的自 动化、规范化的系统。软件设计活动一般分为总体设计和详细设计两个阶段,前者的目 的是确定目标系统的构架,后者是在这个构架上进一步精化。
4.1系统总体设计
软件构架模型是对复杂的系统进行抽象,为系统设计蓝图,是关于系统构造及系统 各工作机制的相对精简、却能清晰反映核心问题的模型。本学生信息管理系统共分为六 个模块,分别是学生基本信息管理模块,学生日常行为管理模块,勤工助学信息管理模 块,公共信息服务模块,校友联谊管理模块,系统功能维护模块。各模块划分如图4.1 所示。
学生信息管理系统
4.2系统功能的详细设计
下面,将详细介绍系统中各个功能模块的主要功能。
4.2.1基本信息管理模块
基本信息管理模块作为该系统的第一个模块,主要是对学生的基本信息、班级信息、 辅导员信息等进行管理,包括查询、新建、修改、删除等功能。其功能模块图如图4.2 所示。
基本信息管理模块
图4.2基本信息管理模块图
Fig. 4」Function module diagram of basic information mangement
(1) 学生基本信息维护模块
该模块包括对学生基本信息(学院、专业、班级、学号、姓名、性别、出生日期、 民族、籍贯、政治面貌、入学时间、生源地、语种、外语水平、计算机水平、寝室号、 寝室电话、手机号码、QQ号、电子邮箱、家庭住址、家庭电话、邮政编码、身体状况、 家庭经济情况、户口类别、户口所在地,就业去向,获得荣誉或奖励)的添加、修改、 删除、查询、输入、输出等的基本操作。
(2) 班级信息维护模块
该模块包括对班级自然信息(学院、年级、专业、班级、班级简介、班级成员名单、 照片、辅导员、班导师,个性信息)和班级管理信息(班级干部评选、干部职责等)的添加、 修改、删除、查询、输入、输出等的基本操作。
(3) 辅导员信息维护模块(在岗、离岗、转岗,权限到学院)
该模块包括对辅导员基本信息(姓名、性别、民族、政治面貌、出生地、出生年月、 毕业学校、学历/学位、专业、参加工作日期、职务、职称、工资号、何时何地参加何种 培训、何时何地获得何种奖励、手机、办公电话、宅电、电子邮箱,所属学院,办公地 点,所带班级,所带寝室,日常办公状态等)的添加、修改、删除、查询、输入、输出 等的基本操作。
同时也包括对辅导员学生工作信息的添加、修改、删除、查询、输入、输出等的基 本操作。
4.2.2学生日常行为管理模块
学生日常行为管理模块主要是对学生在校期间各个方面的行为进行管理、统计,为 后续工作进行前期的统计,该模块主要实现的功能如图4.3所示。
学生日常行为管理模块
图4.3学生日常行为管理模块图
Fig. 4.3 Function module diagram of student daily behavior management
(1)学生奖励信息管理模块
1) 学生奖励项目管理子模块
可以选择学院、专业、年级、学号、姓名、学年学期、奖励名称(按照级别分为: 院级荣誉、校级荣誉、市级荣誉、省级荣誉、国家级以上荣誉)进行添加,后显示在学 生个人信息内。
个人奖励包括:荣誉奖励和奖学金奖励,社会表扬(表扬信,见义勇为,好事见报 等)。其中校级以上荣誉奖励:全国三好学生、全国优秀学生干部、辽宁省三好学生标 兵、辽宁省三好学生、辽宁省优秀学生干部、辽宁省优秀毕业生、优秀学生标兵,优秀 学生,优秀学生干部标兵,优秀学生干部,优秀团员标兵,优秀团员,优秀团干部标兵, 优秀团干部,优秀毕业生、优秀毕业生干部,军训优秀学兵,学业特长优秀个人,社会 工作优秀个人,自强自立优秀个人、社会实践优秀个人,文体艺术优秀个人,科技创新 优秀个人,志愿服务优秀个人等。学院级别荣誉奖励:优秀学生,学院优秀学生干部, 学院优秀团员,学院优秀团干部等。
团体奖励包括:全国优秀班级、全国红旗团支部、辽宁省标兵班级、辽宁省优秀班 级、沈阳市先进团支部、沈阳市五四红旗团支部、先进班集体标兵、先进班集体,五四 红旗团支部,星级寝室等。
2) 学生奖励信息维护子模块(增、删、改)
输入,修改,删除奖励项目名称和相关信息,直接创建此奖励的数据库。
输入,修改,删除奖励项目中个人的基本情况。
普通用户及不同级别管理员的权限也有区别。(例如:学院管理员只可修改本学院 的奖励信息)
3) 学生奖励信息查询子模块
学院,专业,班级,姓名,学号,奖励项目名称。支持模糊查询。
4) 学生奖励规则公布榜
(2) 学生奖学金信息管理模块
1) 学生奖学金项目管理子模块
获得奖学金情况:一等奖学金,二等奖学金,三等奖学金,国家奖学金和命名奖学 金名称及金额。
2) 学生奖励信息维护子模块(增、删、改)
输入,修改,删除奖励项目名称和相关信息,直接创建此奖励的数据库。
输入,修改,删除奖励项目中个人的基本情况。
普通用户及不同级别管理员的权限也有区别。(例如:学院管理员只可修改本学院 的奖励信息)
3) 学生奖励信息查询子模块
学院,专业,班级,姓名,学号,奖励项目名称。支持模糊查询。
(3) 学生命名奖学金管理模块
1) 学生命名奖学金项目管理子模块
获得奖学金情况:(国家奖学金和各种命名奖学金名称及金额)。
2) 学生命名奖学金信息维护子模块(增、删、改)
输入,修改,删除命名奖学金信息项目名称和相关信息,直接创建此奖励的数据库。
输入,修改,删除命名奖学金信息项目中个人的基本情况。
普通用户及不同级别管理员的权限也有区别。(例如:学院管理员只可修改本学院 的命名奖学金信息)。
3) 学生命名奖学金信息查询子模块
学院,专业,班级,姓名,学号,奖励项目名称。支持模糊查询。
4) 学生命名奖学金申请表公示
经学院初评后参加命名奖学金答辩的名单公示。
5) 命名奖学金学生投票区(在学习水平相当的情况下,这项可以反映出同学的群众基 础)
(4) 学生成绩信息管理模块
1)学生成绩项目管理子模块(增、删、改)
以时间为序:各科成绩列表,平均成绩列表。班级平均分,年级平均分。
考试名称、考试科目的修改。
2) 学生成绩信息维护子模块(以班级及个人为单位增、删、改)
输入,修改,删除成绩信息名称和相关信息,直接创建此奖励的数据库。
输入,修改,删除成绩信息中个人的基本情况。
3) 学生成绩信息查询子模块(包含自动警告管理)
输入学院,姓名,学号,以子集目录逐一从学院到个人。
按不同科目对登陆学生用户弹出消息自动警告;对管理用户以学院、专业、班级对 不及格姓名成绩列表。
(5) 学生综合评分信息管理模块
1) 学生综合评分信息项目管理子模块(增、删、改)
对学生在各个学期的综合表现,包括德育、智育、体育等多方面的成绩进行汇总, 作出相关统计。包括德育成绩列表,智育成绩列表以及体育成绩列表等,从各个角度考 察学生的在校情况。
2) 学生综合评分信息维护子模块(以班级或个人为单位增、删、改)
输入,修改,删除综合评分,直接创建此综合评分的数据库。
输入,修改,删除综合评分中个人的基本情况。
3) 学生综合评分信息查询子模块(包含自动警告管理)
输入学院,姓名,学号,以子集目录逐一从学院到个人。
按不同科目对登陆学生用户弹出消息自动警告;对管理用户以学院、专业、班级对 学生综合评分列表。
(6) 学生惩处信息管理模块
1) 学生惩处项目管理子模块
按情节,纪律处分分警告,严重警告,记过,留校查看,开除学籍五个种类。惩处 的同学的处分原因,处分等级。还有其院系,班级等相关信息。
被有过纪律处分的同学,在评优过程中给予提示,并链接到该处理页面上来。
2) 学生惩处信息维护子模块(增、删、改)
输入,修改,删除项目名称和相关信息,直接创建此惩处的数据库。
输入,修改,删除惩处项目中个人的基本情况
普通用户及不同级别管理员的权限也有区别。(例如:学院管理员只可修改本学院 的惩处信息)
3) 学生惩处信息查询子模块
学院,专业,班级,姓名,学号,惩处种类名称。支持模糊查询。
4)在线跟踪(学生可能在受处分后积极进取,表现突出,应当适当表扬并且公示)
(7)校外住宿登记模块
1) 校外住宿登记信息维护子模块
增加:对校外住宿同学的审批,情况,登记,批准与否,具体住宿地点,联系方式, 并签定安全责任保证书。
删除:对原在外住宿的同学已搬回学校的情况进行原有登记情况的删除,以保证信 息的即时性,准确性。
修改:对在校外住宿同学更换住宿地址的情况进行登记,并在原登记表上进行修改。
2) 校外住宿信息查询子模块(地址、联系方式、申请原因、批准人)
学院,专业,班级,姓名,学号,所住地址,联系方式、批准人等种类名称。支持 模糊查询。
4.2.3勤工助学信息管理模块
勤工助学管理模块主要是对在校学生中的特困生情况进行鉴定,对特困生进行确 认,以便其他部门更加顺利、高效的开展工作。同时该模块还包含勤工助学岗位信息, 让在校学生及时获得勤工助学岗位信息,使同学们在校校内能找到自己满意的兼职工 作。图4.4为勤工助学信息管理的模块图。
勤工助学信息管理模块
图4.4勤工助学信息管理模块图
Fig. 4.4 Function module diagram of spart-work and part-study programme information management
(1)特困生及助学岗位人员信息管理模块
1)特困生及助学人员资格申请(网上申报填表)子模块
资格申请子模块应包含以下内容:学院,年级,专业,班级,姓名,学号,曾用名, 性别,民族,政治面貌,出生日期,出生地,籍贯,家庭现住址,邮政编码,身份证号 码,家长(或监护人)姓名,家长(或监护人)工作单位,家长(或监护人)邮政编码,家长(或 监护人)联系方式,身体健康状况,家庭人数,家庭人均年收入,家庭提供月生活费, 高考所在省份,入学前所在中学,入学总成绩,在校住址,寝室电话,手机号,饭卡卡 号,学生陈述申请资格理由,是否在生源所在地接受助学资助,是否在生源所在地取得 助学贷款。
2) 特困生及助学人员资格批复子模块(增、删、改)
学校经审核,决定是否通过其家庭经济困难学生认定,并认定其为一般困难或特殊 困难,批复其获得国家助学贷款,批复其获得校内勤工助学岗位,批复其获得校外勤工 助学岗位,批复其获得贫困生命名助学金,批复其获得国家励志奖学金,批复其获得国 家助学金及等次,并可以在此基础上进行增加,删除以及更改。
3) 特困生及助学人员情况查询子模块
特困生及助学人员情况查询子模块应包含以下数据:学院,年级,专业,班级,姓 名,学号,曾用名,性别,民族,政治面貌,出生日期,出生地,籍贯,家庭现住址, 邮政编码,身体健康状况,家长(或监护人)姓名,家长(或监护人)工作单位,家长(或监 护人)邮政编码,家长(或监护人)联系方式,家庭人数,家庭人均年收入,家庭提供月生 活费,高考所在省份,入学前所在中学,入学总成绩,在校住址,寝室电话,手机号, 饭卡卡号,是否在生源所在地接受助学资助,是否在生源所在地取得助学贷款,是否在 校取得国家助学贷款,是否取得沈阳大学校内勤工助学岗位,是否取得沈阳大学校外勤 工助学岗位,是否获得贫困生命名助学金及金额,是否获得国家励志奖学金,是否获得 国家助学金及金额,是否获得沈阳大学专业奖学金及奖学金等次,是否获得沈阳大学校 级荣誉及荣誉称号(可多选),是否获得校级以上荣誉及荣誉名称(可多选),是否获得校 级及以上的自强自立评选(包括自强自立先进个人,自强自立之星),是否有挂科现象及 挂科科数,是否受学校相关处分及处分名称,是否有饭卡消费超额,是否有不良银行信 用。
4) 特困生资格申请公示
(2)勤工助学信息公告、宣传管理模块
1) 奖学金、困难补助公示子模块
奖学金、困难补助公示子模块应包括:学院,年级,专业,班级,姓名,性别,获 得奖学金名称,获得困难补助名称。
2) 政策制度子模块
政策制度子模块应作为一个链接将国家,省市,学校,学院相关的勤工助学政策制 度,以供广大同学查询,下载。
3) 助学信息公告子模块
助学信息公告子模块应包括:学院,年级,专业,班级,姓名,性别,获得勤工助 学岗位名称,获得社会资助学金名称,社会资助学金金额。
4) 助学工作动态子模块
助学工作动态子模块应作为一个板块展示,即将学校国家,省市,学校,学院相关 的最新关于助学的内容在这个平台上统一说明。
5) 助学工作宣传子模块(含自强之星、勤工助学感悟、健康人生、心得交流、感恩教 育等)
助学工作宣传子模块应作为一个动态新闻窗口,将广大自强自立的同学在获得国家 助学贷款,勤工助学岗位,国家资助学金,社会资助学金,沈阳大学资助学金后在国家, 省市,学校,学院的心得体会,新闻报道,自强自立事迹进行说明。其中应该包括,沈 阳大学自强自立之星,沈阳大学自强自立先进个人,沈阳市自强自立之星的评选报道; 包括绿色通道感言,勤工助学感悟,健康人生,心里健康,心得交流,社会实践等信息 的报道,感言。
6) 岗位招聘信息公告子模块(校内,校外)
岗位招聘信息公告子模块应包括:校内岗位名称,获得校内岗位津贴金额,校内岗 位工作时间,工作地点;校外岗位名称,校外岗位津贴金额,校外岗位工作时间,工作 地点,校外岗位联系方式。
7) 勤工助学机构人员简介
勤工助学机构人员简介应包括:姓名,性别,年龄,岗位名称,岗位职称,工作内 容,联系方式,电子邮箱,办公电话。
4.2.4公共信息服务模块
公共信息服务模块主要是对该系统中的信息进行查询,为用户提供快捷、方便的查 询功能。包括信息模糊查询、学生工作综合情况查询、学生基本信息查询模块、学生日 常行为信息查询、学生诚信信息査询、学生择业信息查询、学生综合信息查询等等。具 体如图4.5所示。
公共信息服务模块
图4.5公共信息服务模块图
Fig. 4.5 Function module diagram of public information service module
(1)信息模糊查询模块
该模块能按照姓名、性别、身份证号、专业、班级、专业班级、家庭所在地、监护 人信息、联系方式(固定电话,手机,通信地址,邮政编码,QQ, Email)等进行模糊查 询。
(2)学生工作综合情况查询模块
该模块可以查询获奖惩情况、基本信息、入学成绩、各学期成绩、毕业去向等。
(3)学生基本信息查询模块
该模块可以查询姓名、性别、籍贯、民族、出生日期、身份证号、学院、专业、班 级、学号、政治面貌等信息。
(4)学生日常行为信息查询模块
该模块可以查询学生所获奖惩情况、任职情况、政治面貌、各科成绩、参加活动等 信息。
(5)学生诚信信息查询模块
该模块可以查询学生有否贷款、考试作弊情况、毕业后还款情况等信息。
(6)学生择业信息查询模块
该模块可以查询学生的就业去向、薪资待遇、所在部门等信息。
(7)学生综合信息查询模块
该模块可以查询学生的姓名、性别、身份证号、学院、专业、班级、政治面貌、就 业去向、所在部门、获奖惩情况、操行等级等信息。
4.2.5校友联谊区模块
该模块是对沈阳大学的历届校友信息进行统计,建立校友录,方便学校与各位校友 在学习、工作等各个方面的沟通。该模块主要包括三个子模块,具体如图4.6所示。
校友联谊区模块
图4.6校友联谊区模块图
Fig. 4.6 Function module diagram of alumni association area
(1)校友录模块
校友录模块包括:校长致辞、校友会介绍、校友期刊、校园风光、校友基金、沈阳 大学大事记、校友奖助学金、校友服务、校友留言、校友查询、校友论坛、校友博客、 校内新闻、校内期刊、校友论坛链接、各地校友会链接、优秀校友简介等。
(2)沈阳大学校友社区模块
校友社区模块包括校友所在地校友会动态,即校友录和BBS电子社区两个子模块, 分别连接至相关网站。
(3)校友管理模块
校友管理模块包括:校友姓名、所在学院、所在年级、所在专业、所在班级、学号、 在校期间优秀事迹、现从事行业、所在公司、所在部门、任职情况、联系地址、手机号、 办公室电话、是否加入当地沈阳大学校友会、当地校友会负责人联系方式、当地校友活 动大事记。
4.3数据库表的设计
数据库设计(Database Design)是指根据用户的需求,在某一具体的数据库管理系统 上,设计数据库的结构和建立数据库的过程。本系统使用Microsoft SQL Server 2008数 据库管理系统,采用关系数据库模式。
4.3.1概述
良好的数据库设计对于一个高性能的应用程序非常重要,就像一个空气动力装置对 于一辆赛车的重要性一样。如果一辆汽车没有平滑的曲线,将会产生阻力从而变慢。关
系没有经过优化,数据库无法尽可能高效地运行。应该把数据库的关系和性能看作是规 范化的一部分。
除了性能以外的问题,就是维护的问题了,数据库应该易于维护。这包括只存储数 量有限的(如果有的话)重复性数据。如果有很多的重复性数据,并且这些数据的一个实 例发生一次改变(例如,一个名字的改变),这个改变必须对所有的其他的数据都进行。 为了避免重复,并且增强维护数据的能力,可以创建可能的值的一个表并使用一个键来 引用该值。在这种方式中,如果值改变了名字,这个改变只在主表中发生一次,所有的 其他表的引用都保持不变。
例如,假设你负责维护一个学生数据库以及他们所注册的课程。如果这些学生中的 35个在同一个课堂中,让我们将这门课叫做Advanced Math(高等数学),课程的名字将 会在表中岀现35次。现在,如果老师决定把这门课的名字改为MathematicsIV,我们必 须修改35条记录以反映出新的课程名。如果数据库设计为课程名出现在一个表中,只 有课程ID号码和学生记录一起存储,那么要更改课程名称,我们就只需要改变一条记 录而不是35条记录。
一个规划和设计良好的数据库的优点是众多的,它也证实了这样一个道理,前期做 的工作越多,后面所要做的就越少。在使用数据库的应用程序公开发布之后,还要对数 据库进行重新设计,这是最糟糕的。因此,在开始编写一个应用程序的代码之前,需要 花大量的时间来设计数据库〔”】。
一般数据库设计方法有两种,即属性主导型和实体主导型[⑺。属性主导型从归纳数 据库应用的属性出发,在归并属性集合(实体)时维持属性间的函数依赖关系。实体主导 型则先从寻找对数据库应用有意义的实体入手,然后通过定义属性来定义实体。一般现 实世界的实体数在属性数1/10以下时,宜使用实体主导型设计方法。面向对象的数据 库设计是从对象模型出发的,属于实体主导型设计。本系统的数据库设计就属于实体主 导型设计。
一般地,数据库应用系统都遵循以下相关开发步骤[切【20】:
(1)设计应用系统结构;
⑵ 选择便于将应用程序与DBMS结合的DBMS体系结构,如RDBMS;
⑶根据应用程序使用的环境平台,选择适宜的DBMS(如Oracle)和开发工具(如 PB);
(4) 设计数据库,编写定义数据库模式的SQL程序;
(5) 编写确保数据正确录入数据库的用户接口应用程序;
(6) 录入数据库数据;
(7) 运行各种与数据库相关的应用程序,以确认和修正数据库的内容。
本系统数据库表主要包括学生基本信息表、班级信息表、辅导员信息表、学生奖励 信息表、学生奖学金信息表、学生命名奖学金信息表、学生课程信息表、学生成绩信息 表、学生综合评分信息表、学生惩处信息表、学生校外住宿登记信息表、特困生及助学 岗位人员信息表、勤工助学岗位信息表、校友信息表等。下面列举了部分数据库表结构。
4.3.2学生基本信息管理模块相关数据表
学生基本信息管理模块包括学生基本信息维护子模块、班级信息维护子模块和辅导 员信息维护子模块三个部分,所涉及到的数据库表有三个,分别是学生基本信息表、班 级信息表和辅导员信息表。
(1)学生基本信息表
学生基本信息表(Student_infb)用于记录学生的基本信息。其中studentID (学号)是学 校为每个学生分配的唯一性标识。学生基本信息表的结构如表4.1所示。
表4.1学生基本信息表(Student _infb)
Table 4.1 Student information table (Student info)
编号 字段名称 数据类型 长度 是否主键 说明
1 College Varchar 50 学院
2 M^or Varchar 50 专业
3 ClassED Char 10 班级
4 StudentID Char 10 是 学号
5 StudentName Char 20 学生姓名
6 IDCardNo Char 18 身份证号码
7 Politicalstatus Char 10 政治面貌
8 Nation Char 10 民族
9 Nativeplace; Char 10 籍贯
10 Intime Date 入学时间
11 Inplace Char 10 生源地
12 Slanguage Char 10 语种
13 Forlevel Char 10 外语水平
14 Comlevel Char 10 计算机水平
15 BedroomNo Char 20 寝室号
16 BedroomTelNo Varchar 16 寝室电话
17 Mobile Varchar 16 手机
18 QQ Varchar 16 QQ号码
19 Email Varchar 50 Email
20 Address Varchar 50 家庭地址
21 HomeTelNo Varchar 16 家庭电话
22 PostCode Char 10 邮政编码
23 Health Varchar 50 健康情况
续表4.1学生基本信息表(Student _infb)
Table 4.1 (continued) Student information table (Student infd)
编号 字段名称 数据类型 长度 是否主键 说明
24 AccountCategoiy Char 10 户口类别
25 AccountAddr Char 10 户口所在地
26 FamilyEcoSit Varchar 50 家庭经济情况
27 Workplace Char 10 工作意向
28 Proud Varchar 500 奖励、荣誉称号
29 Remark Varchar 200 备注
(2)班级信息表
班级信息信息表(Classjnfb)用于记录班级的基本信息。其中classID (班级号)是学 校为每个班级分配的唯一性标识。班级信息表的结构如表4.2所示。
表4.2班级信息表(Class_infb)
Table 4.2 Class information table (Class
编号 字段名称 数据类型 长度 是否主键 说明
1 ClassID Char 10 是 班级号
2 ClassName Varchar 22 班级名称
3 CollegelD Char 5 学院代码
4 CollegeName Varchar 30 学院名称
5 EntranceYear Char 4 入学时间
6 MonitorlD Char 10 班长学号
(3)辅导员信息表
辅导员信息表(Counselor_infb)用于记录辅导老师的有关信息。其中teacherid (教 师工资号)是学校为每个教职员工分配的唯一性标识。辅导员信息表的结构如表4.3所
zj\ O
表4.3辅导员信息表(Counselor_infb)
Table 4.3 Counselor information table (Counselor infb)
编号 字段名称 数据类型 长度 是否主键 说明
1 CollegelD Char 5 学院
2 TeacherlD Char 10 是 工资号
3 TeacherName Char 10 教师姓名
4 Sex Char 2 性别
5 TechnicalPost Char 10 职称
6 OfficePhone Char 10 办公电话
7 HomePhone Char 10 家庭电话
8 Mobile Char 11 手机
9 HomeAddr Char 10 家庭地址
10 Remark Char 10 备注
4.3.3学生日常行为管理模块相关数据表
学生日常行为管理模块包含学生奖励信息管理子模块、学生奖学金信息管理子模 块、学生命名奖学金管理子模块、学生成绩信息管理子模块、学生综合评分信息管理子 模块、学生惩处信息管理子模块、校外住宿登记子模块等七个部分,涉及的数据表有八 个,分别介绍如下。
(1)学生奖励信息表
学生奖励信息表(Counselor_infb)用于记录学生获奖的有关信息。其中RewardNo (奖励编号)用作为主键。学生奖励信息表结构如表4.4所示。
表4.4学生奖励信息表(Reward _info)
Table 4.4 Student reward information table (Reward info)
编号 字段名称 数据类型 长度 是否主键 说明
1 RewardNo Int 是 奖励编号
2 StudentID Char 10 学号
3 RewardTime Date 获奖时间
4 RewardName Varchar 50 奖励名称
5 RewardLevel Char 2 奖励等级
6 Remark Varchar 50 备注
(2)学生奖学金信息表
学生奖学金信息表(Scholarshipjnfb)用于记录学生所获奖学金的有关信息。其中 ScholarshipNo (“奖学金编号”)用作为主键。学生奖学金信息表结构如表4.5所示。
表4.5学生奖学金信息表(Scholarship info)
Table 4.5 Student scholarship information table (Scholarship info)
编号 字段名称 数据类型 长度 是否主键 说明
1 ScholarshipNo Int 是 奖学金编号
2 StudentID Char 10 学号
3 SchoIarshipTime Date 获奖学金时间
4 Scholarshiplype Varchar 20 奖学金类别
5 ScholarshipName Varchar 50 奖学金名称
6 ScholarshipLevel Char 2 奖学金等级
7 ScholarshipQuantity Int 奖学金金额
8 Remark Varchar 50 备注
(3)学生命名奖学金信息表
学生命名奖学金信息表(NamedScholarship_infb)用于记录学生所获得的命名奖学 金的有关信息。其中ScholarshipNo (命名奖学金编号)用作为主键。学生命名奖学金信 息表结构如表4.6所示。
表4.6学生命名奖学金信息表(NamedScholarship_infd)
Table 4.6 Student named scholarship information table (NamedScholarship infb)
编号 字段名称 数据类型 长度 是否主键 说明
NamedScholarshipNo Int 是 命名奖学金编号
1 StudentID Char 10 学号
2 NamedScholarshipTime Date 获奖学金时间
3 NamedScholarshipType Varchar 20 奖学金类别
4 NamedScholarshipName Varchar 50 奖学金名称
5 NamedScholarshipLevel Char 2 奖学金等级
6 NamedScholarshipQuantity Int 奖学金金额
7 Remark Varchar 50 备注
(4)学生课程成绩信息表
学生课程成绩信息表用于记录学生所学的每门课程情况及成绩。与学生成绩信息相 关的表有两张,分别为课程信息表(Coursejnfo)和成绩信息表(Grades_infd),如表 4.7和4.8所示。
表4.7学生课程信息表(Course_infb)
Table 4.7 Student course information table (Course info)
编号 字段名称 数据类型 长度 是否主键 说明
1 CourselD Char 8 是 课程编号
2 CourseName Varchar 20 课程名称
3 CourseType Char 4 课程类型
4 Testlype Char 4 考试类型
5 CourseHours Tinyint 1 总学时
6 WeekHours Tinyint 1 每周学时
7 CourseCredits Tinyint 1 学分
8 Remark Varchar 50 备注
表4.8学生成绩信息表(Grades」nfb)
Table 4.8 Student grades information table (Grades info)
编号 字段名称 数据类型 长度 是否主键 说明
1 StudentID Char 10 是 学号
2 CourselD Char 8 是 课程编号
3 Grades Char 4 成绩
4 Semester Tinyint 1 学期
5 Remark Varchar 50 备注
表4.8学生成绩信息表中,StudentID (学号)和CourselD (课程编号)联合作为主
键。
学生综合评分信息表(Comprehensive_score_infb)用于记录学生的德、智、体的各 分项成绩及综合成绩。学生综合评分信息的结构表如表4.9所示。
表4.9学生综合评分信息表(Comprehensive_score_infb)
Table 4.9 Student comprehensive score information table (Comprehensive score info)
编号 字段名称 数据类型 长度 是否主键 说明
1 StudentID Char 10 是 学号
3 MoralScore Int 德育成绩
4 IntellectualScore Int 智育成绩
5 physicaScore Int 体育成绩
6 ComprehScore Int 总评分
7 Remark Varchar 50 备注
(6)学生惩处信息表
学生惩处信息表(Punishment_infd)用于记录学生所受惩处的有关情况。其结构如 表4.10所示。
表4.10学生惩处信息表(Punishment_inft>)
Table 4.10 Student punishment information table (Punishment info)
编号 字段名称 数据类型 长度 是否主键 说明
1 PunishmentNo Int 是 惩处编号
2 StudentID Char 10 学号
3 PunishmentDate Date 惩处时间
4 PunishmentReason Varchar 200 惩罚原因
5 PiinishmentLevel Char 10 惩罚级别
6 Remark Varchar 50 备注
(7)校外住宿登信息表
校外住宿登信息表(Ofif_campus_accommodation_infd)用于记录学生在校外住宿的 情况,其如表4.11所示。
表 4.11 校外住宿信息表(Of^_campus_accommodation_infb)
Table 4.1 Student off-campus accommodation information table (Ofif campus accommodation infb)
编号 字段名称 数据类型 长度 是否主键 说明
1 OfiCampusAccomID Int 是 校外住宿ID
2 StudentID Char 10 学号
3 Address Varchar 50 校外住宿详细地址
4 StartDate Date 校外住宿起始时间
5 EndDate Date 是 校外住宿起始时间
6 TeacherlD Char 10 批准人ID
7 Remark Varchar 50 备注
-3 8-
4.3.4勤工助学信息管理模块相关数据表
勤工助学信息管理模块相关数据表包括特困生及助学岗位人员信息表和勤工助学 岗位信息表。
(1)特困生及助学岗位人员信息表
特困生及助学岗位人员信息表(Poor_student_infb)用于记录特困生及助学岗位人 员申请助学岗位的原因及批准情况。特困生及助学岗位人员信息数据库对应的信息表如 表4.12所示。
表4.12特困生及助学岗位人员信息表(Poor_student_infb)
Table 4.12 Poor students and student staff positions information table (Poor student infb)
编号 字段名称 数据类型 长度 是否主键 说明
1 StudentID Char 10 是 学号
2 Reason Varchar 1000 申请原因
3 Result Char 10 申请结果
4 Remark Varchar 50 备注
(2)勤工助学岗位信息表
勤工助学岗位信息表(Stu_stafLposit_info)用于记录学校提供的所有的勤工助学岗 位,供特困生及助学岗位人员进行查询,找到自己想做的兼职,在学校里参加一些实践 活动。勤工助学岗位信息表结构如表4.13所示。
表4.13勤工助学岗位信息表(Student_Posi_infb)
Table 4.13 Student staff positions information table (Student Posi infb)
编号 字段名称 数据类型 长度 是否主键 说明
1 PositionlD Char 10 是 岗位ID
2 PositionDisc Varchar 1000 岗位描述
3 StartDate Date 开始时间
4 EndDate Date 结束时间
5 Remark Varchar 50 备注
4.3.5校友联谊区模块相关数据表
校友联谊区模块主要包括校友录子模块、校友社区子模块、校友管理子模块三个部 分。
(1)校友录子模块
校友录模块包括与校友相关的链接,该页面用静态页面和超链接实现。主要包括校 长致辞、校友会介绍、校友期刊、校园风光、校友基金、学校大事记、校友奖助学金、 校友服务、校友留言、校友查询、校友论坛、校友博客、校内新闻、校内期刊、校友论 坛链接、各地校友会链接、优秀校友简介等内容。因此,本模块不需要设计额外的数据 库表。
(2)校友社区子模块
校友社区子模块也是由静态页面实现,主要校友所在地校友会动态,即校友录BBS、 电子社区两个子模块,分别链接至相关网站。因此,本模块也不需要设计额外的数据库 表。
(3)校友管理子模块
校友管理子模块用于管理校友的有关数据,其数据库表结构如表4.14所示。
表4.14校友信息表(Alumni_infb)
Table 4.14 Alumni information table (Alumni info)
编号 字段名称 数据类型 长度 是否主键 说明
1 Name Char 10 校友姓名
2 College Varchar 50 学院
3 Grade Char 4 年级
4 Major Varchar 50 专业
5 Class Char 10 校友班级
6 StudentID Varchar 10 是 校友学号
7 Achievement Varchar 1000 校友有关事迹
8 Profession Char 10 校友从事行业
9 Company Varchar 50 所在企业
10 Department Char 20 所在部门
11 Post Char 10 职务
12 Address Varchar 50 公司地址
13 Mobile Char 11 手机
14 Telephone Char 10 办公电话
15 TakePart Char 1 是否参加校友会
16 ChargePhone Char 20 负责人电话
17 Activity Varchar 1000 校友会活动
18 Remark \^rchar 50 备注
本系统作为学校信息管理平台的子系统,与其他子系统间的数据交互还很多,有一 些数据库表是几个子系统间共用的,另外,有一些表是实体间的联系表,这里不再一一 列举。
4.4学生信息管理系统的软硬件需求设计
基于学校校园网的硬件基础,开发设计学生信息管理系统平台。考虑到用户操作简 单与普及性等因素,决定服务器操作系统平台采用Windows Server 2008,工作站操作系
统平台采用Windows XP以上版本,浏览器为IE 5.0以上版本。结合操作系统平台,考 虑到安全性、数据库大小和数据库操作难易度,决定采用Microsoft SQL Server 2008数 据库。
4.5本章小结
软件设计是决定软件性能的关键。本章首先介绍了系统的总体设计,给出了系统总 体设计产生的功能模块图。然后,根据总体功能模块图,介绍了系统功能的划分。合理 地划分好功能模块后,又详细介绍了各个功能模块和子模块的设计。数据好比软件系统 的血液,所以数据库设计是应用中最重要的一部分。本章第四节首先介绍了数据库设计 的一些基本知识和经验,给出了数据库表的详细设计。
下一章中将详细介绍了系统各个模块以及关键技术的实现。
第5章系统实现
系统实现一般就是指的编码阶段。编码就是将软件详细设计的结果翻译成用某种程 序设计语言书写的程序。软件的设计开发过程经过需求分析、总体设计和详细设计几个 阶段之后,己经形成了基本框架,最后就是通过编码对设计进一步具体化,实现相应的 功能。运用软件功能方法设计软件,主要是为了提高软件质量,软件质量在很大程度上 取决于设计的质量,同时编码的好坏也是影响软件质量的十分重要的因素,如果编码中 存在各种问题,那么再好的设计也无法体现出来。另外,编码质量的好坏,也直接影响 了软件测试和软件维护工作的进行。
5.1系统登录功能的实现
系统用户分为管理员用户、学生处工作人员用户、辅导员教师用户、学生用户等。 不同的用户具有不同的权限。例如,管理员用户具有所有的权限,学生用户可以查询自 己的相关信息、可以申请有关助学岗位等。
图5.1是用户登录功能的实现流程。
图5.1用户登录流程
Fig. 5.1 Flow of user login
在系统实现时,设置一个管理员账户,其用户名和密码均为admin0管理员登录系 统之后可以修改密码。其他用户是由管理员登录之后生成的,对于辅助员教师用户和学 生用户,其用户名和默认密码均为其用户ID,用户名不可更改,密码可在用户登录之 后修改;学生处工作人员用户的用户名和密码是由管理员单独设置的,其默认的用户名 和密码是其职工号,用户名不可更改,密码可在用户登录之后修改。
进入登录界面后,输入用户名、用户类型和密码,然后连接数据库,判断是否正确。 若错误,则返回登录页面,并提示错误。否则直接进入相关页面进行相关操作。
5.2基本信息管理模块的实现
基本信息管理模块主要实现对学生基本信息、班级基本信息和辅助员基本信息的管 理。这一部分的实现主要包括增加学生基本信息、修改学生基本信息、查询学生基本信 息、增加班级基本信息、修改班级基本信息、查询班级基本信息、增加辅助员基本信息、 修改辅助员基本信息、查询辅助员基本信息功能的实现。
5.2.1班级基本信息管理的实现
班级基本信息的管理主要包括增加班级基本信息、修改班级基本信息、查询班级基 本信息功能。下面以增加班级基本信息信息为例,详细介绍班级基本信息管理的实现。
本模块采用三层C/S结构实现,包括表示层、功能层、数据层,其中表示层实现显 示窗体控件、接收录入信息和显示操作结果信息的功能,以及表示层和数据层间的数据 传递功能;功能层实现主要的业务逻辑操作,调用数据访问层方法;数据层实现对数据 库表、视图的操作及执行存储过程。
视图是由一个或多个数据表(基本表)或视图导出的虚拟表或查询表,是关系数据库 系统提供给用户以多种角度观察数据库中数据的重要机制。
存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数 据库服务器中,应用程序使用时只要调用即可。
增加班级基本信息时,首先获取用户输入的班级基本信息并对信息进行格式检验, 如果检验通过,则调用数据库访问层的方法插入记录;如果不通过,则输出对错误信息 的提示;插入记录时,可能由于数据库服务器没打开等原因造成插入失败,所以,记录 插入完毕后,需要给出插入结果提示。
增加班级基本信息流程图如图5.2所示。
另外,ADO.NET在数据库操作过程中默认打开了连接池,连接池大小可以通过数 据库连接字符串来控制,其中pooling表示是否打开连接池,默认为打开,关掉时需要 设置pooling等于fhlse; min pool size属性表示连接池最少保存几个连接对象;max pool size表示连接池最多保存几个连接对象。使用连接池可以减少数据库连接的创建时间, 同时减少资源的使用。
( 开始 )
I
输入班级ID
调用数据访问层方法,查询班级信息
/输入要添加的班级信息
▼
检验录入的信息的格式
在数据库中插入班级信息
V
▼
( 结束 )
图5.2增加班级信息流程图
Fig. 5.2 Flow chart of adding class information
5.2.2学生基本信息管理的实现
学生基本信息的管理主要包括增加学生基本信息、修改学生基本信息、删除学生基 本信息、查询学生基本信息等功能。这里操作的数据库表主要是班级基本信息表、学生 基本信息表联系表。下面以增加学生基本信息为例,详细介绍学生基本信息管理的实现。
增加学生基本信息时,系统首先获取学生所在班级的基本信息,如果班级信息不存 在,则提示先创建班级信息再添加学生信息。然后检验所输入的学生信息格式是否符合 要求。如果符合要求就将学生基本信息插入到学生基本信息表。增加学生基本信息流程 图如图5.3所示。
需要注意的是,由于学生信息是依附于班级信息存在的,所以插入学生信息时,如 果学生和班级联系表插入失败,则数据库执行事务必须回滚,即删除已经添加的学生基 本信息表里面的记录。实现该功能时,采用了 ADO.NET支持的事务机制。事务是单独 的工作单元。如果事务成功,在事务中所有的数据修改都会在提交时完成。如果事务遇 到错误,则必须取消或回滚,这样所有的数据修改都将被清除。使用事务可以保证数据 库记录的一致性和完整性。
图5.3增加学生基本信息流程图
Fig. 5.3 Flow chart of adding student basic information
由于学生基本信息总是和班级基本信息联系在一起的,所以查询时是采用基于视图 的查询,建立学生和班级视图。视图已为用户集中了需要的数据,这样可以简化数据的 操作,同时提高了查询语句的执行效率。
5.2.3辅导员信息管理的实现
辅导员信息管理是对学校的学生辅导员信息进行管理,主要实现对学生辅导员基本 信息的查询、添加、修改以及删除功能。在进入主页面后,选择学生辅导员基本信息管 理,进入学生辅导员基本信息维护页面,然后就可以对学生辅导员基本信息进行相关操 作。以下,以增加学生辅导员的过程说明辅导员信息管理的实现流程。
增加辅导员信息时,首先获取用户输入的辅导员信息并对信息进行格式检验,如果 检验通过,则调用数据库访问层的方法插入记录;如果不通过,则输出对错误信息的提 示;插入记录时,可能由于数据库服务器没打开等原因造成插入失败,所以,记录插入
完毕后,需要给出插入结果提示。
增加辅导员处理流程如图5.4所示。
图5.4增加辅导员信息流程图
Fig. 5.4 Flow chart of adding counselor information
5.3学生日常行为信息管理模块的实现
学生日常行为信息管理模块,主要包括学生奖励信息管理、学生奖学金信息管理、 学生命名奖学金管理、学生成绩信息管理、学生综合评分信息管理、学生惩处信息管理、 校外住宿登记管理等。这里主要操作的数据库表包括学生奖励信息表、学生奖学金信息 表、学生命名奖学金信息表、学生课程成绩信息表、学生成绩信息表、学生综合评分信 息表、学生惩处信息表、校外住宿信息表。但是,学生日常行为信息的管理工作非常重 要,一般学生和辅导员只有查询的权限,只有学生处的少数具有管理权限的管理人员才 具有所有的访问权限。
5.3.1学生奖励信息管理的实现
学生日常行为信息管理模块中的学生奖励信息管理是对学生在校期间获得的荣誉 称号情况进行登记、查询。该信息可供有关部门对学生的综合表现进行评定,因此对学 生来说是至关重要的。对学生奖励信息的管理的包括信息的增加、删除、修改、和查询。 该功能涉及到表包括学生奖励信息表和学生基本信息表。以下对学生奖励信息管理的部
-47-
分功能实现进行讨论。
(1)学生奖励信息添加功能的实现
增加学生奖励信息时,首先获取学生的ID,根据此ID查询该生已存在的所获得奖 励的信息,由于输入人员根据所查结果判断此次的奖励信息是否已经存在。如果不存在, 则获取用户输入的学生奖励信息并对信息进行格式检验,如果检验通过,则调用数据库 访问层的方法插入记录;如果不通过,则输出对错误信息的提示。
增加学生奖励信息处理流程如图5.5所示。
( 开始 )
/ 输入辜生[D 7
调用数据访问层方法,查询该学生的最新奖励信息
二車息是否己存
/输入学生的奖励信息
调用数据访问层方法,保存奖励信息
(结束)
图5.5增加学生奖励信息流程图
Fig. 5.5 Flow chart of adding student reward information
(2)学生奖励信息查询功能的实现
对学生奖励信息查询或以根据学生的学号、姓名、班级、专业、所获得奖励的名称、 所获奖励的时间等进行查询。查询时通过学生基本信息表和学生奖励信息表形成包括学 生姓名、学生学号、所在班级、专业和有关奖励信息的的视图,然后在窗口进行显示。
学生用户登录之后只能根据学号查询自己的奖励信息。
辅导员用户和学生处工作人员用户可以按所有条件进行查询。
查询学生奖励信息处理流程如图5.6所示。
图5.6查询学生奖励信息流程图
Fig. 5.6 Flow chart of student reward infomiation inquiry
5.3.2学生奖学金信息管理的实现
学生日常行为信息管理模块中的学生奖学金信息管理是对学生在校期间获得的奖 学金情况进行登记、查询。该信息可供有关部门对学生的综合表现进行评定,因此对学 生来说是至关重要的。对学生奖学金信息的管理的包括信息的增加、删除、修改、和查 询。该功能涉及到表包括学生奖学金信息表和学生基本信息表。学生奖学金信息管理的 实现与学生奖励信息管理的实现类似,在此不再赘述。
5.3.3学生命名奖学金信息管理的实现
学生命名奖学金作为一种特殊的奖学金而存在,由于金额相对较大,其评定的方法 与普通奖学金不完全相同,需要更多的条件,所以单独设计一个模块来进行管理。学生 日常行为信息管理模块中的学生命名奖学金信息管理是对学生在校期间获得的命名奖 学金情况进行登记、查询。该信息可供有关部门对学生的综合表现进行评定,因此对学 生来说是至关重要的。对学生命名奖学金信息的管理的包括信息的增加、删除、修改、 和查询。该功能涉及到表包括学生命名奖学金信息表和学生基本信息表。学生命名奖学 金信息管理的实现与学生奖励信息管理的实现类似,在此不再赘述。
5.3.4学生成绩信息管理的实现
学生成绩管理是对学生每学期期末的学习成绩进彳亍统计,作为评定奖学金等各种奖 励的依据之下,并且可供学生和相关的辅导员或学生处工作人员查询。
学生成绩来源于教务处的教务管理系统,是每个学期的期末从教务管理系统中导出 的学生成绩。从教务管理系统导出的学生成绩以Excel表的形式存储,它由两张表组成: 一张是本学期所有开设课程的情况,包括课程编号、课程名称、课程类型、考试类型、 总学时、每周学时、学分等;另一张表是学生所选课程的成绩情况,包括学生学号、所 选的课程编号、课程成绩等。
为了方便在本学生信息管理系统中管理学生成绩,设计了一个数据转换功能,读取 Excel表中的数据,以数据库表的形式存储在SQLSERVER中。数据转换功能流程图如 图5.7所示。
图5.7数据转换流程
Fig. 5.7 Flow chart of data convsion
在ASP.NET中读写Excel文件有多种解决方案。在本系统中使用OLE DB方法。
使用OLE DB可以以查询数据库的方式来读取Excel文件,因为在某种程度上Excel表
格可以看成是一张一张的数据表。其二者的主要区别在于所使用的数据引擎不一样。使
用OLE DB访问Excel的要点是计算机上必须具有Microsoft Access Data Component 2.6
(MADC2.6)以上版本,同时在连接字符串上必须声明“Extended Properties=Excel 8.0”,
这里的指定Excel版本号如果高于8.0可能会岀错,所以一般来讲必须使用Excel &0。
然后其它的写法就和一般的访问数据库一样了,打开连接,填充数据集,再关闭连接即
可。
学生成绩管理的其他功能,如学生成绩的查询等其实现其他功能模块的实现类似, 在此不再赘述。
5.3.5学生综合评分信息管理的实现
学生综合评分信息管理是对学生在校期间包括德、智、体等各个方面的成绩进行统 计。
对于综合评分,德育成绩、智育成绩和体育成绩各有不同的加权系数,此系数在系 统实现时,采取由操作人员输入的方法。选修课与必修课也有不同的加权系数,该系统 也由操作人员输入。
对于学生成绩中的非百分制的成绩系统自动按相应的规则进行转换。如果是二级制 (通过或不通过)的分别转换为80分和40分;对于五级制(优秀、良好、中等、及格、 不及格)分别转换为95分、85分、75分、65分和55分。
在进行统计时,系统首先按年级与专业生成一个包含该年级某专业所有学生的学号 的视图,然后打开学生课程信息表和学生成绩信息表,针对每一个学生分别统计出他 (她)的某学期的所有必修课的平均成绩和所有选修课的平均成绩。图5.8是统计某学 生在某学期所有必修课平均成绩的流程图。
图5.8统计必修课平均成绩流程
Fig. 5.8 Flow chart of computing the required course average scores
在分别得到了必修课的平均成绩、选修课的平均成绩、体育课的平均成绩和德育成 绩之后,根据加权系数,就可以计算出该学生的综合评分。综合评分的计算过程比较简 单,在此不再详细讨论。
5.3.6学生惩处信息管理的实现
惩处信息管理是实现对学生在校期间所做的有关违反学校规定的事情进行记录,及 时更新,对学生惩处信息进行公示,以强调学校的纪律。
学生惩处信息管理的实现与学生奖励信息管理的实现类似,在此不再详细讨论。
5.3.7校外住宿登记的实现
校外住宿管理是对在校外住宿学生进行管理,对学生的在外住宿地址等情况进行登 记存储,以便学校能够及时与校外住宿学生进行沟通,便于管理。
校外住宿登记功能包括校外住宿登记信息维护(信息的增、删、改)校外住宿登记 信息查询等。这里以增加学生校外住宿信息为例说明校外住宿登记功能的实现。增加学 生校外住宿信息的实现流程如图5.9所示。
图5.9增加学生校外住宿信息流程图
Fig. 5.9 Flow chart of adding off-campus accommodation information
5.4勤工助学信息管理的实现
勤工助学信息管理功能包括特困生及助学岗位人员信息管理、勤工助学信息公告与 宣传管理等功能。
5.4.1特困生及助学岗位人员信息管理的实现
特困生及助学岗位人员信息管理是对家庭经济条件困难的学生进行管理,评定级 别,以便采取相应的资助措施。同时也为学校有关部门提供信息,以便相关部门为这些 同学进行物质以及精神上的鼓励。
特困生及助学岗位人员信息管理功能包括特困生及助学人员资格申请(网上申报填 表)、特困生及助学人员资格批复(增、删、改)、特困生及助学人员情况查询、特困生资 格申请公示等4个功能。以下以特困生资格申请公示为例说明此功能的实现。
在特困生提出申请,其资格得到确认之后,其资格情况,可由本人或辅导员通过查 询的方式查看。但是,为了公平,需要将获得资格的学生情况在网站上公布,供广大学 生查看、监督。特困生资格申请公示功能实现流程如图5.10所示。
图5.10特困生资格信息发布流程图
Fig. 5」0 Flow chart of poor student qualification information release
5.4.2勤工助学岗位管理
勤工助学岗位管理实现对学校所有的勤工助学岗位进行统计,显示每个岗位的基本 信息,供同学们查询,以便学生能找到适合自己的勤工助学岗位。
勤工助学岗位管理的主要功能包括:奖学金、困难补助公示、政策制度发布、助学 信息公告、助学工作动态发布、助学工作宣传(含自强之星、勤工助学感悟、健康人生、 心得交流、感恩教育等)发布、岗位招聘信息(校内、校外)查询、勤工助学机构人员 简介等。其中除了岗位招聘信息(校内、校外)查询之外,其他功能均为静态页面的形 式。以下以岗位招聘信息(校内、校外)查询为例讨论勤工助学岗位管理功能的实现。
学生在使用自己的学号登录之后,就可以查询勤工助学岗位信息,其实现流程如图 5.11所示。
图5.11查询勤工助学岗位信息流程图
Fig. 5.11 Flow chart of student staff positions information inquiry
5.5公共信息服务模块的实现
公共信息服务模块主要是对该系统中的信息进行查询,为用户提供快捷、方便的查 询功能。包括信息模糊查询、学生工作综合情况查询、学生基本信息查询模块、学生日 常行为信息查询、学生诚信信息查询、学生择业信息查询、学生综合信息查询等等。
以下,以信息模糊査询为例说明相应查询功能的实现。
所谓模糊查询是指通过使用模糊集合或具有模糊特征的语言词对数据库进行查询, 也就是说,查询标准或查询条件可包含模糊集合或语言词,而数据库本身则可以是传统 (非模糊)数据库,也可是模糊数据库。SQL是目前使用的最广泛的结构化查询语言, 但是使用SQL语句进行查询,条件必须是精确的数据,而不能是模糊信息。所以便有 很多的研究趋向了模糊理论方面,利用模糊理论知识来实现了模糊查询技术。目前SQL 模糊查询一般可以分为两类:一类是SQL简单模糊查询,另一类是基于模糊理论的SQL 模糊查询。在本系统的实现中使用了前者,即SQL简单模糊查询。
SQL简单模糊查询的实现离不开LIKE指令的运用。LIKE指令后给出的查询条件
可以准确的描述为一个正则表达式。习惯上认为正则表达式是一种有力的工具,可用于 字符串模式匹配和替换,其中必定包含匹配符。LIKE配对的数据类型主要是字符串、 日期或时间。
本系统允许用户在查询时输入的查询条件可以为一个,也有可以为多个,因此处理 查询的关键是将若干个“逻辑与”关系的査询条件拼接起来构成査询字符串,本系统使用 的方法是遍历每个需要用户输入查询条件的文本框,构造完整的查询字符串,系统将其 翻译成动态SQL语句,然后执行动态SQL语句,得出查询结果,并按照数据字典中用 户定义的显示字段的多少和格式进行显示,从而实现了对各种信息进行复合条件动态组 合查询。同时,不同权限的用户能够执行不同的数据查询,这也是设计上的一个难点。 本系统使用的方法是根据用户ID找出其访问权限,实现分类查询。
查询功能的流程图如图5.12所示。
图5.12查询功能流程图
Fig. 5.12 Flow chart of f inquiry unction
5.6校友联谊区管理的实现
5.6.1校友录功能的实现
沈阳大学校友录功能主要是以页面的形式发布沈阳大学的信息,为沈阳大学的校友 提供了解学校的平台,让每位校友能够及时了解母校的发展变化,争取为自己的母校贡 献自己的一份力量。该功能的实现主要是静态页面的发布,在此不作详述。
5.6.2校友社区功能的实现
沈阳大学校友社区功能主要是实现链接功能,链接到沈阳大学相关的校友网站,利 于校友和学校、校友和校友之间的交流,从而达到共建母校的效果。该功能的实现也是 静态页面的发布,在此不作详述。
5.6.3校友信息管理功能的实现
校友信息管理是对沈阳大学历届毕业校友的在校信息以及工作信息进行统计,以利 于学校展示所取得的成绩,同时也有助于与这些校友或是与校友多在的企业进行合作。 达到共同发展的目的。校友信息管理功能包括校友信息的增加、校友信息的删除和校友 信息的修改和校友信息的查询等。图5.13给了校友信息的增加功能的实现流程。
5.7本章小结
本章详细描述了系统中各个模块的实现,包括系统登录、基本信息管理、学生日常 行为信息管理、勤工助学信息管理、公共信息服务、校友联谊区管理等功能的实现。在 介绍各个模块的详细实现的过程中,详细介绍了涉及的关键技术的实现。
测试是软件开发活动中非常重要的过程,下一章将详细介绍对系统的测试方法和测 试结果。
第6章系统测试
6.1软件测试
软件测试是指使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检 验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。它是帮助识别开发完 成的计算机软件(整体或部分)的正确度(correctness)、完全度(completeness)和质量(quality) 的软件过程[21]p2]o
软件测试的意义在于:
(1)发现软件错误。越早的发现错误,越方便改正。
(2)有效定义和实现软件成分由低层到高层的组装过程。
(3)验证软件是否满足任务书和系统定义文档所规定的技术要求。
(4)为软件质量模型的建立提供依据。
软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了所期望的事情 (Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)o第 二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。 第三软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软 件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此 软件测试的第三个目的是保证整个软件开发过程是高质量的。测试的总体目标是保证软 件的质量〔”㈣。
软件测试需要遵循以下几项原则〔均:
(1)所有测试的标准都建立在用户需求之上。软件工程以质量为核心,开发出来的 软件产品应该满足用户的需求。所以,测试时需要更多的考虑用户能否正确、完整的使 用被测软件,用户使用这套软件能够给他们的工作带来多少好处,不过多考虑用户不在 意的问题。
(2)所有的需求都是可验证的。在需求分析活动中,对提出的所有需求都应该设定 明确的验收标准。测试人员根据这些验收标准判断软件是否满足要求,而不是根据自己 的感觉判断。
(3)可以提前展开测试活动。尽早测试,尽早发现问题,才能尽早解决问题。事实 上,需求分析完毕后,就可以编制测试计划和测试用例,在设计说明书产生后,可以进 一步细化和修订测试计划与测试用例。
(4)增量测试。时常有这样的情况发生,每个模块都能单独工作,但这些模块集成 在一起之后却不能正常工作。增量测试可以帮助测试人员更容易找到缺陷,容易孤立新 出现的错误阳。
(5)不能忽略非正常的输入数据。测试用例中,不仅要有合法的输入数据,而且需 要非法的输入数据。应当充分考虑各种预想不到的输入情况,例如输入了非法字符、按 错键等。
6.2测试内容
测试内容主要包括界面测试、集成测试、功能测试、性能测试和安全性测试。
界面测试主要是测试设计的软件界面能够正确引导用户自动完成相应的操作,起到 向导的作用;能否让用户感觉到工作的轻松愉悦;集成测试主要是测试系统能够与其他 系统和组件配合工作;功能测试主要是测试系统能够符合制定的要求;性能测试主要是 测试系统在各种情况下的处理和响应时间;安全性测试主要是测试系统及其数据是否能 够受到保护、隐私是否后能够受到保护等。
6.2.1界面测试
在漫长的软件发展中,界面设计工作一直没有被重视起来。其实,软件界面设计就 像工业产品中的工业造型设计一样,是产品的重要买点。友好美观的界面会给用户带来 舒适的视觉享受,拉近用户与软件的距离。界面设计不是单纯的美术绘画,需要定位使 用者、使用环境、使用方式并且为最终用户而设计。检验一个界面的标准不是某个项目 开发组领导的意见也不是项目成员投票的结果,而是最终用户的感受。所以,界面设计 要和用户研究紧密结合。下面,简单介绍系统的部分页面。
系统首页界面如图6.1所示。
「 建远見!昊于庶乳I録糸良衛1營at入口 *冋姑地89 i版取声明 J
titie. Siii''"•: JUr&t: XsJsfJ-
图6.1系统首页界面图
Fig. 6.1 UI of system home page
学生基本信息管理是本系统的重要页面,如图6.2所示。
陵辺霑见I关于我们I联*我们I管理入口 !岡砧电图|板权卢朗
Copyrccfct 20JJ-20J§ All Ki<h« Usservtd.
图6.2学生基本信息管理
Fig. 6.2 UI of student basic infbrmation management
勤工助学管理也是本系统的重要页面,图6.3勤工助学岗位添加界面图。
SHt!»vAi»6 PMjvi Mj»rr
沈阳人学勤匸助学岗位信息
校内曲位宿息
-岁加1取消
校外岗位信息
:i*c W;A
建议世見」关于戍们I联系我们I管仗入口 I序站址田{农权声穷
图6.3勤工助学岗位添加界面图
Fig. 6.3 UI of student staff positions information addition
如图6.4中给出的是校友联谊区界面。
学工在纟戋
沈阳大学校友录
校园融
沈大蓊冈昭 沈阳太学就业舸
欢迷»見I关于襄们」联系我们[管理入口 f网鮎地图I版权声明
Ca^ifla 血十如 Al: Rjilils
图6.4校友联谊区界面图
Fig. 6.3 UI of alumni association area
在本系统的界面测试时,重点测试了以下方面:
(1)直观性。用户界面是否洁净、不唐突、不拥挤,界面不应该为用户制造障碍, 所需功能或者期待的响应应该明显,并在预期出现的地方。界面组织和布局是否合理, 是否允许用户轻松地从一个功能转到另一个功能,下一步做什么、该如何做是否明显, 是否任何时刻都可以决定放弃或者退回、退出,输入是否得到承认。
(2)一致性。整个软件是否使用同样的术语,例如,计量器具是否一直都叫计量器 具,而不是仪器?添加的快捷键是否一致,例如“Enter”代表确定,“Esc”代表取消?整 个系统中的色调、字体大小、颜色、布局是否统一等等。
(3)灵活性。灵活的软件实现同一任务有多种选择方式,例如输入查询条件后,输 入"Enter"等价于点击"确定"按钮;在DataGridView中,双击一彳亍和单击一行后再点击按 钮等;在录入信息界面,按下“Tab”时,活动光标自动跳到下一个控件中;数据输入时, 既支持用户直接用键盘输入也支持复制、粘贴等。
界面测试时,也发现了一些界面布局、文字表达、颜色搭配等方面的问题。
6.2.2集成测试
集成测试覆盖了系统与外部组件和已存在系统的集成。随着不同系统部件的集成, 测试的数量将不断增加。在办公管理系统中,集成测试主要是测试多个用户在同时连接 服务器数据库的情况下,测试在客户端修改数据的同时、该数据正在服务器中进行更新 所导致的冲突情况;测试修改服务器中的数据能否立刻刷新客户端等等。
6.2.3功能测试
功能测试覆盖了智能客户端系统的功能,以确保它符合指定的要求。它们能够提供 系统的有效性和使用性的反馈,以解决要求和实际系统之间的偏差。
(1)链接测试
链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不 知道地址的页面的主要手段。链接测试从三个方面进行:首先,测试所有链接是否按指 示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证 Web应用系统上没有孤立的页面,所谓孤立页面是没有链接指向该页面,只有知道正 确的URL地址才能访问。
(2)表单测试
当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户登录、 信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的 信息的正确性。例如:用户填写的学号、姓名信息是否恰当,对使用了默认值的选项检 验默认值的正确性。
(3)数据库测试
在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运 行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库 类型是关系型数据库,可以使用SQL对信息进行处理。在使用了数据库的Web应用系 统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致 性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速 度或程序设计问题等引起的,针对这两种情况,可分别进行测试。
6.2.4性能测试
性能测试覆盖了在各种数据加载、内存压力条件、网络可用性以及不同的连接数度 下,应用程序的处理和响应时间。
6.2.5安全性测试
安全性测试覆盖的范围包括:验证隐私是否能够受到保护、数据是否加密、数据是 否防篡改,以及应用程序是否能够承受各种类型的恶意攻击。
6.3测试结果及评价
经过一段时间测试,就系统安装、系统运行界面、系统集成环境、系统各种功能、 系统性能、系统安全性进行了一个很全面很详细的测试。
系统在各种运行环境下都能够正常安装,并且可以自定义安装文件夹,安装的文件 夹以及文件也能够正确命名。并且能够完全卸载已经安装的部件。
系统运行界面采用的是WEB结构的界面,界面采用的是浅蓝色系,使用起来感觉 很舒适不会很劳累;界面上的术语都采用工作中常用词语,大部分情况下企业用户使用 起来即使不用帮助文档都能顺利进行工作;尽量减少企业用户的负担,在数据输入的时 候多采用下拉选择框,减少用户的输入。
系统功能齐全,满足用户需求。
系统在采用SQL Server 2008数据库时,不论数据库采用数据库共享使用模式还是 数据库各级独占模式,都能够很快响应;系统在安全性上面也能做到不让用户在数据库 上直接操作,只能通过系统进行对数据库的添加、修改、删除,从而保证了数据的正确 性;并且系统在数据校验方面也做得比较完备,保证了不合法数据能根据不合法数据带 来的危害而及时给出提示、警告或禁止;在权限控制上,也做到了比较详细的授权,保 证了只有授权的用户才能对数据进行操作,没有授权的用户不能对数据进行操作。通过 这些手段,基本保证了数据的完整性和正确性。
6.4本章小结
本章阐述了系统测试的相关工作。首先,对软件测试进行了简要介绍,然后详细介 绍了系统的单元测试、集成测试、界面测试、压力测试和安装测试,其中包括对测试方 法的介绍和一些测试用例,并给出了各个测试部分发现的典型问题,剖析了问题的原因, 给出了相应的解决方案。最后,根据各个测试得出了系统的测试结论。
第7章结论
7.1本文工作总结
学生信息管理是整个学校学生管理工作中的关键环节之一。采用计算机信息技术和 网络技术来管理在校学生信息是大势所趋。基于网络的学生信息管理系统能为学校管理 者提供及时、准确的学生信息,从而提高管理工作的效率。
本文以沈阳大学学生处对学生信息管理的需求,分析了本校的学生管理工作的业务 流程,收集了与学生信息管理相关的第一手资料,确定了该校学生管理信息系统的目标 和主要功能需求。
根据软件需求,文中给出了合理的软件结构,定义了各个功能模块,包括学生基本 信息管理模块、学生日常行为信息管理模块、勤工助学信息管理模块、沈阳大学校友联 谊区管理模块。描述了每个功能模块具体功能和处理过程。设计了该学生管理信息子系 统的数据库和详细的数据库表结构。对主要的功能模块还描述了其详细设计过程,在用 户界面设计中,充分考虑了用户界面的设计原则提高了系统的可用性。
本系统设计了四个模块:学生基本信息管理模块主要完成学生基本信息、班级基本 信息以及辅导员信息等方面的信息维护。学生日常行为信息管理模块主要对学生在校期 间的奖励(荣誉称号、奖学金)、惩罚、学习成绩、校外住宿等信息进行管理。勤工助学 信息管理模块是对家庭条件困难的同学进行鉴定,然后根据本鉴定,相关部门采取相应 的措施进行资助。另外,在本模块中还提供学生勤工助学岗位的信息,供学生查询。沈 阳大学校友联谊区管理模块主要完成对校友的管理,建立校友通讯录,链接校友社区, 增进与各校友企业的联系,增加沟通,从而增加学校与企业的沟通。
通过本次对沈阳大学学生信息综合管理系统中学生信息管理子系统的设计,学习了 很多相关的理论知识和技术,熟悉了 ASP.NET语言的编写过程,掌握了 Microsoft SQL 2008数据库的应用方法,并熟练应用了 Microsoft Visual Studio 2005这个开发平台。
7.2进一步工作展望
本系统已经基本满足了用户需求,但是在试运行阶段,用户针对当前系统提出了一 些需要改进的地方以及进一步的需求,主要包括以下几个方面:
(1)加强用户管理
在学生信息管理系统中涉及到用户管理问题。分散的用户管理会使本系统的权限管 理变得更加复杂,并且容易降低管理系统的安全性。对于变更的用户需要进行及时的权 限更改。
(2)完善数据管理
在学生信息管理系统中,有一些交叉和重合的数据,分散到不同模块中的相同数据 很难保证数据的一致性。同时,数据量的增加会影响到系统的数据存取性能。完善数据 管理,首先,要严格按照第三范式设计良好的数据库结构;其次,运用事务处理机制保 证数据的一致性;另外,程序中的数据操纵语句要尽量简洁,提高信息化平台的响应性 能。
(3)增强系统的可靠性
为保证模块的独立性,要尽最大可能降低模块的耦合度,提高模块的内聚度,构建 一个可靠的、易维护的信息化平台。
随着功能的不断完善,学生信息管理系统将极大地提高学生管理工作的科学化、信 息化水平。对于本系统来说,虽然采用一些比较基本的、先进的管理理念来指导开发, 同时采用了比较流行的技术进行实际开发,但随着现实情况的不断发展,这些会不断面 临来自各方面的挑战,因此,在可以预见的未来本学生信息管理系统将处在不断的丰富 与发展中。
参考文献
1.张云鹏,朱红,李慧芳.高校信息管理与信息系统专业建设现状分析[J],教育理论与 实践,2012, (3): 18-20.
2.张耀方.高校信息管理数据资源的现状研究[J],亚太教育,2015, (8): 128-128.
3.刘婕.当今高校信息管理系统建设研究[J],电脑迷(数码生活),2014,(3):67,72.
4.邓金学生信息管理系统简述[J],现代交际,2015, (6): 174-174.
5.白会剑高校学生信息管理系统[J],中文信息,2014,(1): 3-5.
6.罗成.基于网络的学生信息管理系统的原型设计[D],武汉:中国地质大学,2008.
7.檀柏红.管理信息系统开发方法、工具与应用[M],北京:清华大学出版社,2010.
&张友生,陈松乔C/S与B/S混合软件体系结构模型[J],计算机工程与应用,2002, (23): 138-140.
9.Zhang Junping, Zhu Xiaodong, Liang Xin. C/S and B/S Mixed Style and the Application[A], First International Workshop on Education Technology and Computer Science[C], March 2009, 682-686.
10.Microsoft Corporation. ASP.NET 快速入门教程[EB/OL], http://www.imagecode.net/ quickstart/aspplus/, 2002.
11.戴子良.SQL Server 2008宝典[M],北京:中国铁道出版社,2011.
12.Lars Powers, Mike Snell. Microsoft Visual Studio 2005 Unleashed[M], Lexington: Sams Publishing, 2006
13.乌聪敏,么莉,济铿.基于改进Web三层结构的电力技术监督系统设计与实现[J], 电力自动化设备,2010,(2): 118-122.
14.孙全玲.B/S/S三层结构的办公自动化系统设计[J],科技创新导报,2010, (32):71-71.
15.曹乐松.基于三层B/S/S结构的招生信息系统的设计[J],水利科技与经济,2007,(7): 508-509.
16.Twala B, Cartwright M, Shepperd M. Comparison of various methods for handling incomplete data in software engineering databases [A], International Symposium on Empirical Software Engineering[C], 2005,105-114.
17.何邦财.谈实用数据库的设计方法[J],信息与电脑(理论版),2014,(7):85-85.
18.刘先锋.数据库系统原理与应用[M],武汉:华中科技大学出版社,2012.
19.Raghu Ramakrishnan, Johannes Gehrke. Database Management Systems[M], New York: McGraw-Hill Higher Education, 2008.
20.Patricia Ward, George Dafoulas. Database Management Systems[M]? Standfbrd: Cengage Learning EMEA ,200&
21.王薬奏 软件测试理论初步框架[J],计算机科学,2014, (3): 12-16,35.
22.杨培培,赵海生,李振星.实用软件测试方法研究,2015,(zl): 166-167,173.
23.Chen Rogers J. Arranging software test cases through an optimization method[A], Proceedings of Technology Management for Global Economic Growth[C], July, 2010, 1-5.
24.Masayuki Hirayama, Osamu Mizuno, Tohru Kikuno. Analysis of Software Test Item Generation - Comparison Between High Skilled and Low Skilled Engineers[J],计算机 科学技术学报(英文版),2005, 20(2): 250-257.
25.肖丰佳,李立新.软件测试技术研究[J],工业控制计算机,2012,(1):75-76.