资源描述
毕业论文银行学生助学贷款管理系统1绪论1.1 系统开发背景随着社会的进步,信息化已成为整个社会的趋势。自从国家开放“绿色通道”以来,助学贷款在高校中已成为一个重要的部分。据了解除西南交通大学刚刚开发了此系统外,其他大多数的高校助学贷款中心的管理员和统计人员仍主要使用传统的手工记账工具,经常要翻阅大量的台账,运用计算器等辅助计算工具进行计算、统计、制作报表。采用这种工作方式量大、效率低、易出错、准确性差、及时性差,而且有大量报表需要存档,查找麻烦。同时,这种方式提供的信息量不够大,且比较单一,不能满足现代信贷管理工作对大量数据和信息进行需求分析的需求。 为了使管理人员从繁琐的手工劳动中解脱出来,提高工作人员的工作效率,降低管理成本,节约存储空间,开发一个管理系统十分必要。本课题是在上述背景下建立一个针对学生助学贷款的小型的网络管理平台。本系统具有速度快、精度高、存储信息量大的特点。不仅可以对数据和信息进行规范化处理,而且实现了信息资源的有效利用和学校内部的信息共享,实现了网络化管理和电子管理。1. 2管理信息系统简介 管理信息系统就是常说的MIS(Management Information System),它是20世纪80年代才逐渐形成的一门新学科,其概念至今尚无统一的定义,其理论基础尚不完善,但从国内外学者给MIS所下的定义来看,人们对MIS的认识在逐步加深,MIS的定义也在逐渐发展和成熟。(1)MIS的定义MIS的定义有很多种,研究者们从各自的角度出发给出了不同的定义。MIS的一个定义是:一个管理信息系统是能够提供过去、现在和将来预期信息的一种有条理的方式,这些信息涉及到内部业务和外部情报。它按适当的时间间隔供给格式相同的信息。支持一个组织的计划、控制和操作功能,以便辅助决策制定过程;MIS的另一个定义是:MIS是一个由人、计算机等组成的能进行信息的收集、传送、储存、维护和使用的系统,能够实测企业的各种运行情况,并利用过去的历史数据预测未来,从企业全局的角度出发辅助企业进行决策,利用信息控制企业的行为,帮助企业实现其规划目标1-3。 (2)MIS的主要功能管理信息系统是一类面向管理的信息系统,它以解决结构化的管理决策问题为目的。它的三项主要功能是: 信息处理。辅助事物处理、辅助组织管理。支持决策。(3)MIS的结构MIS的结构有下列几种:总体结构:信息源、信息处理器、信息用户、信息管理者。物理结构:物理组成、处理功能、用户需要的输出。层次结构:用于执行控制的信息系统、管理控制的信息系统、战略计划的信息系统。职能结构:一般企业的职能子系统有市场销售子系统、生产管理子系统、物资供应子系统、人事管理子系统、财会管理子系统、信息管理子系统、高层管理子系统。空间分布结构:集中式系统、分布式系统。(4)MIS设计原则管理信息系统的设计与开发是一项系统工程,为了保证系统的质量,设计人员必须遵守共同的设计原则,尽可能的提高系统的各项指标。具体的设计原则如下:实用性原则可扩展性和可维护性原则安全可靠性原则用户界面设计原则数据库设计原则:一致性原则; 完整性原则; 安全性原则;可伸缩性原则5 1.3银行生助学贷款概述1.3.1出台背景1997年,中国高等教育成功实现从免费教育向成本补偿制度的过渡。在高等教育规模的迅速扩大和公共财政预算约束的条件下,加大高等教育成本补偿力度,有利于在较大程度上缓和日益紧缩的高等教育财政和经费供求矛盾,从而满足居民对高等教育的旺盛需求,但另一方面,迅速提高的学费水平,已经严重影响低收入家庭接受高等教育的机会和积极性,成为影响社会不稳定的重要潜在因素。因此,必须建立一套适当的学生资助机制帮助困难学生顺利的完成学业,以保证教育机会的公平和效率,助学贷款政策应运而生。1.3.2产生原因(1)高等教育规模持续扩大(2)教育财政资源供给不足(3)高等教育成本分担机制改革(4)贫困生就业难问题日趋尖锐1.3.3中国助学贷款政策的演变阶段第一阶段:独家承办,提供担保,风险承担第二阶段:明确体系,放松担保,取消补偿第三阶段:扩大范围,放宽条件,确定核销第四阶段:实行“四定”“三考核”*四定:定学校、定范围、定额度、定银行*三考核:按月考核经办银行国家助学贷款的申请人数和申请金额;考核已审批贷款人数和贷款合同金额;考核实际发放贷款人数和发放金额1.3.4助学贷款的基本特征(1)外部性(2)确定性(3)相对矛盾性(4)政府参与性1.3.5中国助学贷款特征分析: (1)行政推动特征(2)社会福利性质(3)助学兴教特质(4)消费信用特征(5)一项最宽松的信贷政策1.3.6中国助学贷款的问题和局限一些国家助学贷款的问题和局限直接导致了助学贷款的失败记录。这些问题和局限有些是发展中国家特有的,有些是所有国家共同面临的;有些是政策性的,有些是管理性的。最严重的问题和局限包括下面六个方面:(1)传统的根深蒂固的观念认为,接受高等教育应该是公众的权利,因此承担高校教育开支是政府的事情。(2)高等教育的人均成本非常高,尤其是在大多数发展中国家,本已昂贵的高等教育成本随极度夸张的入学压力而加剧。(3)一些国家,大学毕业生的高失业率和低收入使得助学贷款的偿还困难重重。(4)人们对于政府和大学的管理丧失了信任,在学生群体中这种看法尤其普遍。这会造成持久而强烈的对高等教育成本分担政策的抵制。(5)储蓄利率较低和私人资本匮乏。(6)贷款的服务和回收缺乏可靠机制。在许多国家创建一个可操作的助学贷款方案尽管有相当多的问题和局限,但在权衡其利害关系后仍值得我们做出更多的努力7。1.3.7 中国助学贷款的未来中国助学贷款制度已经迈出了可喜的步伐,但也存在不少急需解决的问题。这些问题中一部分是新生事物发展初始阶段难以避免的;其他的则是中国助学贷款项目应急出炉以及体制缺陷所造成的。中国有必要将现在具有高度局限性的助学贷款系统,改造成为适合更多人的系统。对于第一类问题,只需要对现有助学贷款政策及其运作过程进行一些修正和改造就能解决;对于第二类根本性的问题,则需要对整个助学贷款方案进行彻底的改革才能克服。通过修正和改革现有助学贷款方案,修建一个系统有效的中国教育金融框架,不但有利于显示中国有能力成功运用资源解决占世界五分之一人口的教育发展问题,而且还可以为其他发展中国家和新兴市场经济国家提供示范和借鉴10。2系统分析2.1问题识别问题识别又称系统目标识别,即要根据用户的需求说明书的内容,从中甄别出真正的需求,从而发现问题的症结所在,解决该问题便成为系统开发的目标。(1)实现数据计算、统计自动化,提高信息利用率银行助学贷款中涉及到的大量的数据和经济信息以及上级、政府相关单位的指导性信息。这大量的数据和信息积累在一起,如果仅仅由于人工处理的速度慢、效率低而得不到充分、及时、高质量的利用,不能不说是对信息资源的严重浪费,并且不利于学校及银行及时准确的对日常业务做出正确的指导和规定。因此有必要以计算机、信息技术和现代化的管理观念代替传统的人工处理方式,对数据和经济信息进行综合利用分析,把数据和信息当作和财力、物力等同的经济资源来进行管理,并对数据和信息进行规范化处理,便于在银行内部实现数据和信息共享,为实现网络化管理和电子管理(E-Management)做实际准备。(2)提高工作效率,为银行微观决策提供基础的信息依据由于目前银行内部单位信贷员和学校管理人员使用传统的手工记账工具,经常要翻阅各种大量的台账,运用计算器等辅助计算工具进行计算、统计、制作报表。采用这种工作方式工作量大,效率低,易出错,准确性差,及时性差。同时这种方式提供的信息量也不够大,且比较单一,不能满足现代信贷管理工作对大量数据和经济信息进行分析的需求,从而也就难以满足微观决策所需的数据和信息要求。而且任何历史信贷信息是对信贷活动进行分析的重要依据,缺少了这些数据和信息,分析结果就没有说服力。而本系统的建立,不仅可以提高学校和银行工作人员的工作效率,降低学校和银行的工资成本和管理费用等,而且可为信贷管理的微观决策提供大量数据信息,为决策提供准确、及时、高质量的依据。2.2 可行性研究2.2.1 经济可行性我校目前由于完全采用纯人工方式完成业务,进行报表制作,对数据进行综合分析等,所以耗用工时较多,且效率低下。目前校助学贷款中心的日人工成本为:(*)人*(*)元/人日-(*)元。我们还不能计算出因效率低下而给学校带来的无形经济损失,如果把这一部分也看作成本,那将远远超出目前的计算数额。而如果开发出一个能够满足业务要求的信贷管理系统,在采用生命周期法的前提下,从问题识别到系统实施、评介、维护,相对于目前的耗资总成本非常低。同样我们也无法估算出由于系统开发应用使学校和银行运营效率提高而带来的无形的巨额经济效益。由此可见,开发此系统在经济上是完全可行的。而且,由于系统能在未来较长一段时期内稳定的发挥作用,这对于校助学贷款管理中心提高信贷管理水平有很大帮助。2.2.2操作可行性如前所述,学校内部大多数员工从未使用过类似的信贷管理系统,但是Windows友好的用户界面和本系统良好的安全性设置,可以使其内部员工在系统实施人员的指导帮助下很快掌握系统的使用方法,而无因操作失误而引起系统出错之虞。不仅如此,我们还可以编写出详尽的“用户操作说明书”,为用户的正确操作给以图文并茂的形式加以说明。同时,在开发过程中,我们还可以尽量给用户以方便,考虑到用户需求的实际情况,在输入界面、查询界面等部分添加解释或提示,帮助用户尽快掌握本系统的使用方法。2.2.3技术可行性从目前市场上比较流行的数据开发、管理软件来看,对于比较简单的中小型数据库,Borland Delphi 和Microsoft Access的结合无疑是在实际应用中较为成功的一种解决方案。前者为用户提供了非常友好、操作简单的用户界面、完善而强大的数据库操作功能和简洁明了的数据库接口;后者则可以对数据库实施操作、维护和权限识别功能。结合本项目实际,助学贷款管理中心的日业务量虽然很大,但是其信贷管理水平和复杂程度相对来说还是可以分析清楚的,经系统分析,可以设计出符合实际需求、易于理解、易于操作、易于维护的数据库和操作系统。对于Microsoft Access而言,管理这种规模和复杂程度的数据库是游刃有余的。同样对于Borland Delphi来说,对数量较少的表和其间关系进行比较简单的操作正是其擅长的功能,无论是查询、统计或利用数学公式进行趋势预测,都能顺利完成。因此,开发实施本系统,从软件角度看,是可行的。由以上经济、操作、技术三方面的分析可以看出,本系统的开发时机成熟,从多种角度考虑,都是可行的3应用的主要技术3.1数据库技术3.1.1 ADO综述本系统是通过对象模型ADO(Active Data Objects)来访问数据库的,ADO使我们能够编写应用程序,以通过OLE.DB提供者访问和操作数据服务器中的数据。ADO最主要的优点是易于使用、速度快、内存支出少和磁盘遗迹小。ADO支持建立客户端/服务器和基于Web的应用程序的关键功能。ADO的另一功能是“远程数据访问”,能够通过一个来回的传输将数据从服务器移动到客户端应用程序或Web页中,然后在客户端对数据进行操作,最后将更新数据返回服务器。ADO对象模型是由8个对象组成的,它们中的大多数在功能上和RDO对象相似,只不过具有更强的功能性。下面介绍ADO的3个重要的对象:(1)Command对象。包含关于某个命令,例如查询字符串、参数定义等的信息。(2)Connection对象。包含关于某个数据提供程序的信息。(3)Recordset对象。Recordset对象包含某个查询返回的记录,以及那些记录中的游标。ADO的目标是访问、编辑和更新数据源,而编程模型体现了为完成该目标所必须的系列动作的顺序。ADO提供类和对象以完成以下活动:(1)连接到数据源(Connection)。可选择开始一个事物。(2)可选择创建对象来表示SQL命令(command)。(3)可选择在SQL命令中指定列、表和值作为变量参数(Parameter)。(4)执行命令(command、Connection或Recordset)。(5)如果命令按行返回,则将行存储在缓存中(Recordset)。(6)可选择创建缓存视图,以便能对数据进行排序、筛选和定位(Recordset)。(7)通过添加、删除或更改行和列编辑数据(Recordset)。(8)在适当情况下,使用缓存中的更改内容来更新数据源(Recordset)。(9)在使用事物之后,可以接受或拒绝在事物期间所做的更改,结束事物(connection)。 3.1.2 Access数据库简介Access是美国微软公司开发的office套装软件中一个功能非常强大的数据库管理系统。他是微软公司windows操作系统中第一个桌面型关系数据库管理系统。其友好的用户操作界面、可靠的数据管理方式、面向对象的操作理念以及强大的网络支持功能,在拥护和数据库之间架起了一座桥梁,使得用户对数据的存取、分类和查看更为容易。(1)Access的特点Access在本质上是一个关系型数据库管理系统,关系型数据库有着严密的数学理论基础。在Access数据库中,数据的逻辑结构表现为满足一定条件的二维表,以统一的“关系”来描述数据对象之间的联系,结构简单、表现力强,符合人们对现实世界事物的认识规律。Access有以下一些特点:简单的用户界面 方便的操作手段 丰富的数据对象 精美的窗体和报表 强大的数据共享耐心的office助手(2)Access的功能组织数据 建立查询 生成窗体 打印报表 共享数据 支持超级链接 建立应用系统(3)Access的数据库对象 Access提供了七种数据库对象:表、查询、窗体、报表、数据访问页、宏和模块。表(Table)对象 表是有结构的数据的集合,是数据库应用系统的数据仓库。查询(Query)对象 查询是根据用户给定条件在指定的表中筛选记录或者进一步对筛选出来的记 录做某种操作的数据库对象。查询可以进一步分为选择查询和动作查询两种。用户可以使用选择查询从指定的表中获取满足给定条件的记录,也可以使用动作查询从指定的表中筛选记录以生成一个新表或者对指定的表进行记录的更新、添加或删除操作。 窗体(Form)对象 窗体对象允许用户采用可视化的直观操作设计数据输入、输出界面的结构和布局。报表(Report)对象报表对象允许用户不用编程仅通过可视化的直观操作就可以设计报表打印格式。数据访问页(Page)对象数据访问页可以将数据库中的记录发布到Internet或Intranet,并使用浏览器进行记录的维护和操作。宏(Macro)对象 宏对象是一个或多个宏操作的集合,其中的每一个宏操作执行特定的单一功能。用户可以将这些宏操作组织起来形成宏对象以执行特定的任务。 模块(Module)对象 模块对象是将Visual Basic for Application(简称宏语言VBA)编写的过程和声明作为一个整体进行保存的过程的集合。 ACCESS提供的上述七种对象分工极为明确,从功能和彼此间的关系角度考虑,这七种对象可以分为三个层次:第一层次是表对象和查询对象,它们是数据库的基本对象,用于在数据库中存储数据和查询数据。第二层次是窗体对象、报表对象和数据访问页,它们是直接面向用户的对象,用于数据的输入输出和应用系统的驱动控制。第三层次是宏对象和模块对象,它们是代码类型的对象,用于通过组织宏操作或编写程序来完成复杂的数据库管理工作并使得数据库管理工作自动化13-14。在Delphi中,使用ADO访问ACCESS数据库的方法:放个TADOTABLE,设置Connection String属性,Use Connection String,Build,MicrosoftJET4.0,选择数据库文件,点击测试连接,测试成功即可访问数据库。3.2 SQL语言SQL全称是“结构化查询语言(Structured Query Language)”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEMR开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。如今无论是像Oracle ,Sybase, Informix, SQL server这些大型的数据库管理系统,还是像Borland Delphi, PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言。3.2.1 Structured Query Language包含4个部分: (1)数据查询语言SELECT (2)数据操纵语言INSERT, UPDATE, DELETE (3)数据定义语言CREATE, ALTER, DROP (4)数据控制语言COMMIT WORK, ROLLBACK WORK 3.2.2 SQL语言的特点综合统一集数据定义、数据操纵、数据管理功能于一体,语言风格统一,可以独立完成数据库的全部操做高度非过程化提出“做什么”而不是“怎么做”面向集合的操作方式结果是元组的集合语言简洁,易学易懂只用7个动词(select , drop, alter, create, insert, update ,delete)3.2.3 SQL的优点SQL广泛地被采用正说明了它的优点。它使全部用户,包括应用程序员、DBA管理员和终端用户受益非浅。 (1)非过程化语言 SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集。所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。 SQL不要求用户指定对数据的存放方法。 这种特性使用户更易集中精力于要得到的结果。所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段。查询优化器知道存在什么索引,哪儿使用合适,而用户从不需要知道表是否有索引,表有什么类型的索引。 (2)统一的语言 SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。基本的SQL 命令只需很少时间就能学会,最高级的命令在几天内便可掌握。 SQL为许多任务提供了命令,包括:查询数据在表中插入、修改和删除记录 建立、修改和删除数据对象 控制对数据和数据对象的存取 保证数据库一致性和完整性 以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。(3)是所有关系数据库的公共语言 由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。所有用SQL编写的程序都是可以移植的12。3.3 设计语言Delphi3.3.1 Delphi简介 Borland Delphi是由Borland公司所发表的E时代的开发工具,它也是企业级可视化面向对象快速开发工具(RAD,Rapid Application Development)。Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了Microsoft Windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Object-Oriented-Language)、当今世界上最快的编辑器、最为领先的数据库技术。对于广大的程序开发人员来讲,使用Delphi开发应用软件,无疑会大大地提高警惕编程效率,而且随着应用的深入,你将会发现编程不再是枯燥无味的工作Delphi的每一个设计细节,都将带给您一份欣喜。面向对象的程序设计(Object-Oriented Programming,简记OOP)是Delphi诞生的基础。OOP立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进Windows编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清、编写容易。Delphi是完全面向对象的,这就使得Delphi成为一种触手可及的促进软件重用的开发工具,从而具有强大的吸引力。一些早期的具有OOP性能的程序设计语言如C+,Pascal,Smalltalk等,虽然有面向对象的特征,但不能轻松地画出可视化对象,与用户交互能力较差,程序员仍然要编写大量的代码。Delphi的推出,填补了这项空白。您不必自己建立对象,只要在提供的程序框架中加入完成功能的代码,其余的都交给Delphi去做。欲生成漂亮的界面和结构良好的程序丝毫不必绞尽脑汁,Delphi将帮助您轻松完成。它允许在一个具有真正OOP扩展的可视化编程环境中,使用它的Object Pascal语言。这种革命性组合,使得可视化编程与面向对象的框架紧密地结合起来15-16。3.3.2 Delphi及常用组件窗口程序简述(1)Delphi窗口程序接口成员对象(Object):只要确实存在的东西,可以被拿来使用,有一个特定的名字(Name),这就是对象。本质上而言,一个对象包含有三个特点:属性(Property)、方法(Method)及事件(Event)。属性(Property):每一个存在的对象所具备的特性称为属性。事件(Event):每一个对象总会与外界产生交互,而当外界(其它对象)与此对象有交互作用时,就是这个对象有一个事件被触发了。事件发生的原因,可分为三类:用户事件、间接事件、系统事件。方法(Method):当该对象被触发了某个事件之后,系统(或程序)应该采用的相应步骤称为方法。一个系统程序的建立,就是于对象、属性、事件、方法这四个步骤的重复执行与考虑。(2)以Delphi开发系统Delphi是一个所见即所得的软件快速开发工具,在实际开发流程上,它分成两个部分:界面设计和程序编写。界面设计的结果就会是未来程序执行时用户可以看到的样子,现在的设计中,引用了大量的可视化组件,这些可视化组件可以有效地简化设计工作,完成了可视化的界面设计后,接下来只要将相关的操作流程以顺序的程序代码予以完成即可。选择Delphi后,随即出现如图3-1所示的开发界面:图31 Delphi开发界面图中的最上方是菜单及工具栏,用来执行相关的功能:另外图中标出5个区域,以下分别说明此5个区域,如图3-2所示:图32 Delphi开发界面的5 个区域组件面板:设计系统时所需要的可视化对象及功能性组件的集中摆放处。属性指定区:每一个组件被使用到系统设计时,均或多或少需要改变一些特性,这些特性就是组件的属性,通过属性的不同,同一个组件在不同程序中也可能展现不同的外观。对象查看区:一个工程通常会使用到不少的组件,这些组件在对象查看区中就会一一地排列出来,方便设计都知道所使用的组件。界面设计区:真正的界面就是在这里被系统设计者所摆放上去的。程序设计区:这部分是真正写入程序代码的地方,不管界面设计得如何,最终总是要在这个地方将系统要执行的步骤写入。(3)常用组件介绍:Label组件:Delphi组件面版中的Label组件(即标签),专门提供显示文字和数字。Button组件:Button组件是使用率最高的组件,用于提供一个给系统用户操作的按钮。Timer组件:Timer组件(即定时器)的功能用于实现程序的自动化,其最大的效果在于固定的时间内会执行所设置好的程序代码一次。PaintBox组件:当系统必须有部分的结果需要使用图形的方式表现时,PaintBox组件是一个很好的选择,它允许以程序的方式在其内部绘图。RadioButton组件:有时候也需要在程序设计时,让用户可以针对一些选项进行必要的选择,如果众多的选择中只能选择一个,这时必须使用RadionButton组件。GroupBox组件:系统设计时所使用的组件一般说来都不少,组件一多就使得窗口看起来比较杂乱,使用GroupBox组件(即分组框)可以将部分的组件集合起来,感觉比较整齐。Shape组件:程序设计中若需要使用到几何图形,例如:圆形、矩形、正方形、椭圆形等等,就需要Shape组件。Edit组件:让用户最方便的输入方式,就属Edit组件了,其主要的工作就是输入文字或显示文字的结果。Memo组件:除了使用Edit组件可以输入及显示数据外,Memo组件亦含有同样的功能,但Edit组件只能单行输入,而Memo组件则允许多行输入,在需要多行显示的情形下,使用Memo组件是比较合适的;另外由于ScrollBar的使用,也使得Memo组件中的数据具有容易查看的效果。第三方组件众所周知,Delphi提供了大量的组件,使用这些组件基本上已能满足我们的编程需求。但是在对于有特定要求的程序,仅仅使用Delphi自带的组件就无法适应了。另外,Delphi自带的一些组件功能比较简单,很难满足我们一些特定的要求。现在有很多的第三方组件,这些组件功能强劲,而且覆盖了编程的方方面面,极大的方便了用户。使用这些第三方组件往往达到事半功倍的效果,大大提高编程的效率。同时还能使我们的程序更漂亮、更专业、更强大。所以第三组件是我们使用Delphi编程一大法宝。 第三方组件往往是Delphi自带组件的扩展,是在Delphi自带组件的基础上加强功能,并进行功能细化和专业化。例如,有些第三方组件把按钮、标签细化为很多种,每一种实现一种特定的功能。另外一些第三组件是Delphi中没有的,这些组件往往是根据编程时常遇到的需求,将一些常用的方法、函数以及API集成到这些组件中,编程时就不需要编写这些程序了。 从组件的使用领域来划分,第三方组件可分为:界面增强类、图形图像类、多媒体类、系统类、数据库类、网络类等等17。4银行学生助学贷款管理系统的实现4.1系统设计4.1.1系统设计目标通过使用银行学生助学贷款管理系统,使学生助学贷款管理工作系统化、规范化、自动化,从而达到提高学生贷款管理效率的目的。系统开发的总体任务是使学校助学贷款管理人员可以轻松快捷地完成学生贷款的管理任务。4.1.2开发设计思想(1)尽量用学校贷款中心现有的软硬件环境,采用先进的管理系统开发方案,从而达到充分利用贷款中心现有资源,提高系统开发水平和应用效果的目的。(2)系统应符合学校贷款管理的规定,满足贷款相关人员日常使用的需要,并达到操作过程中的直观、方便、实用、易于维护等要求。(3)系统采用模块化程序设计方法,既便于系统功能的各种修改,又便于技术人员的维护工作。(4)系统应具备数据库维护功能,及时根据用户要求进行数据的增加、删除、修改和保存等操作。4.1.3开发和运行环境的选择(1)开发工具:Delphi7.0(2)运行环境: 操作系统:windows9x,windows2000,xp开发、管理及使用人员:学生管理员、全校学生及系统维护人员。(3)数据库系统:Microsoft Access4.1.4数据库需求分析系统功能分析是在系统开发的总体任务的基础上完成的,学生助学贷款管理系统需要完成的功能主要有:(1)学生基本信息的录入(2)学生基本信息的查询(3)学生贷款信息的录入(4)学生贷款信息的查询(5)资料修改(包括学生信息修改和贷款信息修改两部分)(6)贷款信息列表(7)项目金额排行榜(8)系统用户管理,权限管理4.1.5系统功能模块设计 在系统功能分析的基础上,根据Delphi程序编制的特点,得到如图4-1系统功能模块图。银 行 学 生 助 学 贷 款 管 理 系 统学生信息管理学生贷款管理系统管理贷款信息录入项目金额排行贷款信息列表贷款信息查询贷款信息查询学生信息修改学生信息查询学生信息录入用户权限管理用户信息修改图4-1系统功能模块图4.2数据库设计在管理信息系统的开发的过程中,数据库的结构设计是其中十分重要的一个环节。数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。好的数据库结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度,能简化给予数据库的应用程序的实现等。在系统开始设计时应该尽量考虑全面,尤其应该仔细考虑用户的各种需求,避免浪费人力和物力。4.2.1 数据库需求分析 数据库需求分析是数据库设计的第一个阶段。这个阶段主要是确定基本数据、数据结构以及数据处理流程,组成一份详尽的数据字典。为以后进一步设计打下基础。在仔细调查学校贷款中心的贷款管理过程基础上,得到本系统所处理的数据流程,如图4-2:学生管理员学生信息变动表修改学生信息贷 款 录入贷款学生信息申 请 学生信息统计表 学生信息数据表学生管理员管理员贷款信息统计录入贷款基本信息修改学生信息贷款信息数据表管理员贷款信息变动表图4-2 系统数据流程图针对本实例,通过对学生助学贷款管理的内容和数据流图分析,设计的数据项和数据结构如下:(1)学生基本信息:学号、姓名、贷款编号、身份证号、性别、出生年月、入学年月、省市、地县、地址、邮编、家庭电话、寝食电话、移动电话、学院、专业、班级、贷款项目、贷款金额、奖惩情况、备注信息。(2)贷款基本信息:贷款编号、姓名、学院、专业、班级、申请时间、贷款项目、贷款金额。(3)系统管理:用户名、密码、权限、备注。有了上面的数据结构、数据项和数据流程,就可以进行下面的数据库设计了。4.2.2数据库概念结构设计 这一阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体以及它们之间的关系(E-R图),为后面的逻辑结构设计打下基础。图4-2:拥有学生贷款记录1nn属于1班级n1属于学院n图4-3 关系E-R图。身份证号码电话姓名性别学号学生图4-4实体属性图4.2.3数据库逻辑结构设计有了前面的工作,还需要将上面的数据库概念结构转化为Access数据库所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体以及实体之间的关系的基础上,形成数据库中的表格以及各个表格之间的关系。银行学生助学贷款管理系统数据库中各个表格的设计结果见表。每个表格表示在数据库中的一个表。 表4-1学生信息表字段名称数据类型字段大小允许空字符串学号数字长整型否姓名文本50否贷款编号文本长整型否身份证号数字双精度否性别文本50否出生年月文本50否入学年月文本50否省市文本50否地县文本50是寝室电话数字长整型否邮编数字长整型否家庭电话数字长整型是移动电话数字双精度型是专业文本50否贷款项目文本50否学院文本50否班级文本50否贷款金额数字长整型否奖惩情况文本50是备注信息文本100是地址 文本50否表4-2贷款信息表字段名称 数据类型 字段大小 允许空字符串贷款编号数字 50否姓名文本50否学院 文本50否专业文本50否班级文本50否申请时间文本50否贷款项目文本 长整型否贷款金额 数字 长整型否表4-3系统管理权限表字段名称数据类型字段大小允许空字符串用户名文本50否密码数字长整型否权限文本50否备份文本50是4.3各功能模块的创建经过前面对系统功能的分析,将本系统主要划分为两大部分:学生管理部分和贷款管理部分。4.3.1启动系统出现的闪现界面(splashform)为了让用户能够有一个轻松愉快的操作界面,系统特别设计了一个闪现窗体。该窗体添加了1个定时器(Timer)组件,并添加了它的ontimer事件,通过定时器的Interval属性设置闪现时间;添加了5个标签(Lable)组件,用于显示制作人情况及联系方式;添加了1个图象(Image)组件,使整个窗体摆脱灰色界面给人的沉重感,用带有花色的图象做背景,给人以清新、美观的第一感觉;添加了2个图形图象类(RxGIFAnimator)第三方控件,本控件是由俄罗斯人研制的专门放置GIF动画的免费控件。界面上显示了我校校徽及校训,动态效果使人耳目一新。具体界面如图4-5所示:图4-5闪现界面4.3.2系统登陆模块的设计(loginform)闪现窗体消失后,出现登陆窗体。该模块的主要功能是当用户启动银行学生助学贷款管理系统时,显示一个友好美观的欢迎用户登陆的界面,当用户输入用户名和密码时,系统进入下一级表单。本窗体添加了一个Image组件,将整个东北林业大学的主楼作为窗体的背景;二个Panel组件;二个Lable组件;一个编辑(Edit)组件,用户在此输入密码,将其PasswordChar属性设置为*;1个组合框(ComboBox)组件,组合框由一个编辑框和一个下拉式列表框组成,本组合框的列表条目有两条:Administrator和guest ,方便用户根据自身情况选择用户名;系统会根据用户名提供相应的服务功能;二个按钮(Button)组件,一个为确定,一个为取消。本窗体特别将其Caption 属性设置为:用户登陆(区分大小写),提示用户登陆时避免因大小写而产生输入错误。具体系统登陆界面如图4-6所示: 图4-6系统登陆界面4.3.3系统主窗口设计系统主窗口主要是在用户登陆成功以后,将整个系统的基本功能以菜单(MainMenu)的形式分成四个部分清晰的展现在用户面前,方便用户选择。运行界面如图4-7:图4-7 系统主窗口界面菜单的结构图如下:系统管理学院设置专业预览用户密码修改用户名字修改增加用户菜单结构设计退出系统贷款学生信息管理学生信息查询学生信息录入学生信息修改学生贷款信息管理贷款信息查询贷款信息录入贷款信息查询贷款信息列表项目金额排行榜关于 图4-8菜单结构设计图 4.3.4系统管理设计这个部分包括系统用户信息(密码和用户名)修改和用户权限管理。尽供管理员操作使用。(1)用户密码修改(ModifyPWD)模块:除输入用户名使用的Edit组件外,其余三个用来输入密码的Edit组件的PasswordChar属性均为*,即输入密码时只显示*(界面显示如图4-9)。用户名修改模块(图4-10)与密码修改模块类似。 图4-9 修改密码界面 图4-10修改用户名界面 (2)增加新用户模块:此模块使用了两个ComboBox组合框组件,操作者既可以从下拉列表中选取所需文本,也可自行输入。确定后,新的用户将被写入数据库,用户便有了访问或操作该系统的权利。图4-11增加用户界面4.3.5贷款学生信息管理设计 贷款学生信息管理部分由三个主要模块:贷款学生信息录入(Input)、贷款学生信息查询(Query)、贷款学生信息修改(Modify)。(1)贷款学生信息录入(Input)模块:管理员根据学生的贷款申请单据及贫困证明,选择出符合条件的学生,并将其基本信息(学号、姓名、贷款编号、身份证号、性别、出生年月、入学年月、省市、地县、地址、邮编、家庭电话、寝食电话、移动电话、学院、专业、班级、贷款项目、贷款金额、奖惩情况、备注信息)录入数据库.这个模块仅限管理员使用.本窗体添加了分组框(Groupbox)组件;Lable组件;Edit组件;ComboBox组件,将要输入的文本以列表条目的形式编辑好,避免了用户输入错误的信息,为用户提供了非常人性化的服务;Memo组件,可以显示、编辑多行文本,此处用于输入备注信息;3个Button组件:“确定”、“取消”和“打印”。窗体界面如图4-12所示:图4-12学生信息录入界面(2)贷款学生信息查询模块:进入这个模块,可以根据自己所了解的学生情况选择不同的查询方式,填写查询内容后,窗体将立即显示所要查询贷款学生的详细信息。此项服务既适用于管理员,同时适用于广大学生用户,为大家提供方便快捷的服务窗体中除了上面提到的基本组件外,主要有:单选按钮(RadioButton)组件,可以在多个条件中选择唯一的一个。通常在使用单选按钮时。总是将其进行分组。在同一组中,只能同时选中一个按钮,其余按钮自动取消选中。在本窗体中,实现单选按钮的分组方法是:利用分组框组件(TGroupBox)和单选按钮(TradioButton)实现。首先向窗体中添加分组框,然后向分组框中添加单选按钮。这样,同一个分组框中的单选按钮就自动成为一组。可以通过TradioButton组件的Checked属性来确定哪一个单选按钮被选中。StringGrid组件,可以以表格的形式显示一系列字符串,本窗体中用来显示查询结果,通过它的Colxount、RowCount属性来获得行数和列数,在运行时也可以动态的改变这两个属性值。PageControl分页组件,可以在多个页中显示多个组件。如“其他查询”页中,包含Lable、Edit、Radiobutton、ComboBox等组件QueryForm界面设置如下:图4-13贷款学生信息查询界面(3)贷款学生信息修改(Modify)模块:本模块操作权限仅限管理员,学生无此权限。当学生贷款情况发生改变时,将新的情况报给贷款中心,管理员根据新的表单对学生信息进行部分的修改或删除。同时,学生信息的修改还要配合贷款信息的修改,这样才能将新信息完整的修改并录入数据库。本模块添加了ToolBar组件:选中ToolBar组件后,可以直接向其中添加其他组件(本窗体添加的组件为ToolButton),添加的组件会自动从左向右依次排列(第一条、上一条、下一条、最后一条、查询记录、修改记录、删除记录、取消)。此外,除了上面提到的一些组件,窗体中新增了数据控制组件:DBGrid 组件:通过DataSource属性指定数据源,将数据记录(贷款学生基本信息)显示在网格中,并可以对其中的数据进行编辑修改。TDBEdit 组件:用来显示和编辑数据集里当前记录中一个特定字段的值的数据控制组件。TDBMemo 组件:用来显示和编辑数据集中的多行文本。基本界面如图4-14所示:图4-14贷款学生信息修改界面4.3.6贷款信息管理设计这一部分主要包括:贷款信息录入、贷款信息查询、贷款信息修改、贷款信息列表以及贷款金额排行榜。(1)贷款信息录入(visit)模块:由管理员进行直接操作,根据已录入的学生基本信息填写贷款信息。方便以后的贷款查询及修改。窗体包含组件及主要操作过程与学生信息录入相似,这里不再赘述。界面如图4-15:图4-15贷款信息录入界面(2)贷款信息查询(checkin)模块:可供管理员和学生一起使用,方便管理员和学生查询贷款信息。组件设置同学生信息查询模块。具体界面如图4-16:图4-16贷款信息查询界面(3)贷款信息修改(Modify)模块:仅限管理员对学生的贷款信息根据具体情况的变化进行修改。其中还可以完成查询、删除等操作。基本组件同学生信息修改,界面如图4-17:图4-17贷款信息修改界面(4)贷款信息列表(ShowR):窗体中添加了GroupBox组件和TDBGrid组件,通过DataSource 属性与数据库连接,显示所有贷款学生的贷款信息。如图4-18:图4-18款学生信息列表界面(5)贷款金额排行榜(Empleer):在下拉列表中选定一个学院即可得到该院贷款学生人数、贷款金额及贷款学生的基本情况。为管理员进行贷款分析提供重要依据。界面如图4-19图4-19款项目金额排行榜界面 24
展开阅读全文