1、基于UML高校学生学籍管理系统的设计与实现毕业论文基于UML高校学生学籍管理系统的设计与实现院 系: 计算机科学与软件系专 业: 计算机科学与技术 摘 要随着科学技术的发展,计算机领域不断取得新的研究成果。计算机在代替和延伸脑力劳动方面发挥越来越重要的作用,不仅在工业方面而且在日常生活中也越来越离不开计算机。尤其是在学校里,要处理大量的学生数据。在数字化的今天,为了加快学校学籍管理必须依靠计算机,以及使学校对学生数据的管理更加简单、到位,基于上述种种原因,开发一套学籍管理系统迫在眉捷,我结合本次毕业设计的题目开发了学籍管理系统。本文是对基于计算机对学校里的大量数据进行加工并处理的研究。 本系统
2、是在管理信息系统的理论和方法指导下、数据库技术支持下完成的。本文在结构上首先论述了毕业设计选题的背景、目的和意义。然后叙述了开发平台和数据库技术和各自的优点,接着用了较多篇幅阐述了系统的需求分析、总体设计、实现以及实施的任务、技术和工具。最终系统能够完成信息的输入、输出,数据的修改、查询和统计以及打印报表等功能,使用户操作起来简便快捷。【关键词】软件工程 关系数据库管理系统 模糊查询 DELPHI SQL Server【论文类型】应用研究Abstract【Abstract】 Continuously obtain the new research result along with the d
3、evelopment, calculator realm of the science technique.Calculator is replacing with extend the mental work aspect to develop more and more important function, not only in the industry aspect but also also more and more can not get away from the calculator in the daily life.Particularly is in the scho
4、ol, and want to handle the students data of the large quantity.On today of the arithmetic figure , for the sake of quickly school student status the management must depend on the calculator, and make the school management student is data more in brief, arrived the for, base onning above and all kind
5、s reason, developping a student status managing the system forcing in the eyebrow , I join togethering this graduate designing to develop the student status the management the system.This text is right according to calculator to large quantity in the school the data proceeds to process and processed
6、 research. This system is under the management information the systems theories guide with method, database technique the support descend to complete of.This text discussed the graduate design to choose is background, purpose with the meaning first on the construction.Then described the development
7、platform with the advantage that database technique with each from, immediately after used many spaces the Describe the systems need the analysis, total design, realize and mission, technique that into practice is with the tool.Most the final system can complete the informations importation, output,
8、 the data is modification, search with statistics and print the statement etc. the function, and use the door to operate Chien then fast.【Key Words】Software Engineering Relational Database Management System Fuzzy Query DELPHI SQL Serve【Type】Applied Research 第1章 绪论1.1 选题的背景随着信息技术的发展,计算机已被广泛的用于社会的各个领域
9、,成为推动社会发展的技术动力。而在计算机应用中,软件的作用十分突出,软件已经发展成为信息技术的核心,主导着信息产品的开发和信息技术市场的进一步的开拓。软件产业已成为社会信息化进程中的一个战略性产业。在软件技术的应用中,软件的开发技术尤其是应用型软件产品的开发技术成了重中之重。不断开发适应用户需求、市场需要的新型软件产品。随着社会的发展,软件也在不断的更新换代。 大多数学校里对学生的档案、成绩、入学、毕业等的一些繁琐处理都是通过手工进行记载并进行处理的,对学生数据的处理工作量特别大,不仅浪费大量的人力物力,而且还很容易出错。如果有这样一套完整的学籍管理软件,只需点击几下鼠标就可完成所需操作,那样
10、就会大大的提高教师的工作效率和管理水平。并能进一步提高学校的工作效率并使学校实施规范化管理。1.2 目的和意义毕业设计是四年学习的总结,同时也是自己综合运用所学知识解决实际问题的一次锻炼。学籍管理系统的主要目的是为了方便学校对学生的信息进行录入、修改、查询,提高学校的工作效率。这一系统的开发成功,解决了手写速度慢、容易出错的现状。无论是在学籍管理、成绩管理等方面都可以帮助学校最迅速最准确的完成所需的工作。无论是在适用性、灵活性和易操作性方面都显示出了它的强大功能第2章 平台简介2.1 开发平台和技术简介2.1.1 Delphi工具简介 Delphi是著名的Borland(现在已和Inprise
11、合并)公司开发的可视化软件开发工具。“真正的程序员用c,聪明的程序员用Delphi”,这句话是对Delphi最经典、最实在的描述。Delphi被称为第四代编程语言,它具有简单、高效、功能强大的特点。和VC相比,Delphi更简单、更易于掌握,而在功能上却丝毫不逊色;和VB相比,Delphi则功能更强大、更实用。可以说Delphi同时兼备了VC功能强大和VB简单易学的特点。它一直是程序员至爱的编程工具。Delphi具有以下的特性:基于窗体和面向对象的方法,高速的编译器,强大的数据库支持,与Windows编程紧密结合,强大而成熟的组件技术。但最重要的还是Object Pascal语言,它才是一切的
12、根本。 Object Pascal语言是在Pascal语言的基础上发展起来的,简单易学。 Delphi提供了各种开发工具,包括集成环境、图像编辑(Image Editor),以及各种开发数据库的应用程序,如DesktopDataBase Expert等。除此之外,还允许用户挂接其它的应用程序开发工具,如Borland公司的资源编辑器(Resourse Workshop)。在Delphi众多的优势当中,它在数据库方面的特长显得尤为突出:适应于多种数据库结构,从客户机服务机模式到多层数据结构模式;高效率的数据库管理系统和新一代更先进的数据库引擎;最新的数据分析手段和提供大量的企业组件。Delphi
13、发展至今,从Delphi、Delphi到现在的Delphi2009,不断添加和改进各种特性,功能越来越强大。Delphi添加了对IDE(集成开发环境)的很多改进新特性,扩展了数据库支持(ADO和InterBase数据库),带有Internet支持的MIDAS改进版,TeamSouse版本控制工具,转换功能,框架概念以及很多的新组件与新特性。Delphi10功能十分完善和强大,本设计将以它为基础,利用Delphi的开发环境、基本概念、控件的使用、在短时间内建立系统应用原型。然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。2.1.2 UML统一建模介绍 统一建模语言(
14、UML是 Unified Modeling Language的缩写)是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。 统一建模语言 (UML)是非专利的第三代建模和规约语言。 UML是在开发阶段,说明,可视化,构建和书写一个面向对象软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。 UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,
15、还支持从需求分析开始的软件开发的全过程。 UML是一个标准的图形表示法,它不是面向对象的分析和设计,也不是一种方法,它仅仅是一组符号而已。 UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。 作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分。 (1) UML语义 描述基于UML的精确元模型定义。元模型为UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。此
16、外UML还支持对元模型的扩展定义。 (2) UML表示法 定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模型,在语义上它是UML元模型的实例。 标准建模语言UML的重要内容可以由下列五类图(共9种图形)来定义: 第一类是用例图,从用户角度描述系统功能,并指出各功能的操作者。 第二类是静态图 (Static diagram),包括类图、对象图和包图。其中类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。类图描述的是一种静态关系,在系统的整个生命
17、周期都是有效的。 对象图是类图的实例,几乎使用与类图完全相同的标识。他们的不同点在于对象图显示类的多个对象实例,而不是实际的类。一个对象图是类图的一个实例。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。 包由包或类组成,表示包与包之间的关系。包图用于描述系统的分层结构。 第三类是行为图(behavor diagram),描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。在实用上并不需要为所有的类画状态图,仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态图。而活动图描述满足用例要求所要
18、进行的活动以及活动间的约束关系,有利于识别并行活动。 第四类是交互图(Interactive diagram),描述对象间的交互关系。其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;合作图描述对象间的协作关系,合作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,合作图还显示对象以及它们之间的关系。如果强调时间和顺序,则使用顺序图;如果强调上下级关系,则选择合作图。这两种图合称为交互图。 第五类是实现图 ( Implementation diagram )。其中构件图描述代码部件的物理结构及各部件之间的依赖关系。一个部件可能是一个资源代码部
19、件、一个二进制部件或一个可执行部件。它包含逻辑类或实现类的有关信息。部件图有助于分析和理解部件之间的相互影响程度。 配置图定义系统中软硬件的物理体系结构。它可以显示实际的计算机和设备(用节点表示)以及它们之间的连接关系,也可显示连接的类型及部件之间的依赖性。在节点内部,放置可执行部件和对象以显示节点跟可执行软件单元的对应关系。 从应用的角度看,当采用面向对象技术设计系统时,首先是描述需求;其次根据需求建立系统的静态模型,以构造系统的结构;第三步是描述系统的行为。其中在第一步与第二步中所建立的模型都是静态的,包括用例图、类图(包含包)、对象图、组件图和配置图等五个图形,是标准建模语言UML的静态
20、建模机制。其中第三步中所建立的模型或者可以执行,或者表示执行时的时序状态或交互关系。它包括状态图、活动图、顺序图和合作图等四个图形,是标准建模语言UML的动态建模机制。因此,标准建模语言UML的主要内容也可以归纳为静态建模机制和动态建模机制两大类。 标准建模语言UML的主要特点可以归结为三点: (1) UML统一了Booch、OMT和OOSE等方法中的基本概念。 (2) UML还吸取了面向对象技术领域中其他流派的长处,其中也包括非OO方法的影响。UML符号表示考虑了各种方法的图形表示,删掉了大量易引起混乱的、多余的和极少使用的符号,也添加了一些新符号。因此,在UML中汇入了面向对象领域中很多人
21、的思想。这些思想并不是UML的开发者们发明的,而是开发者们依据最优秀的OO方法和丰富的计算机科学实践经验综合提炼而成的。 (3)UML在演变过程中还提出了一些新的概念。在UML标准中新加了模板(Stereotypes)、职责(Responsibilities)、扩展机制(Extensibility mechanisms)、线程(Threads)、过程(Processes)、分布式(Distribution)、并发(Concurrency)、模式(Patterns)、合作(Collaborations)、活动图(Activity diagram)等新概念,并清晰地区分类型(Type)、类(Cla
22、ss)和实例(Instance)、细化(Refinement)、接口(Interfaces)和组件(Components)等概念。因此可以认为,UML是一种先进实用的标准建模语言,但其中某些概念尚待实践来验证,UML也必然存在一个进化过程。标准建模语言UML的应用领域 UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中最常用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。总之,UML是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。
23、此外,UML适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶段。在需求分析阶段,可以用用例来捕获用户需求。通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。分析阶段主要关心问题域中的主要概念(如抽象、类和对象等)和机制,需要识别这些类以及它们相互间的关系,并用UML类图来描述。为实现用例,类之间需要协作,这可以用UML动态模型来描述。在分析阶段,只对问题域的对象(现实世界的概念)建模,而不考虑定义软件系统中技术细节的类(如处理用户接口、数据库、通讯和并行性等问题的类)。这些技术细节将在设计阶段引入,因此设计阶段为构造阶段提供更详细的规格说明。 编程(构造)是一个独
24、立的阶段,其任务是用面向对象编程语言将来自设计阶段的类转换成实际的代码。在用UML建立分析和设计模型时,应尽量避免考虑把模型转换成某种特定的编程语言。因为在早期阶段,模型仅仅是理解和分析系统结构的工具,过早考虑编码问题十分不利于建立简单正确的模型。 UML模型还可作为测试阶段的依据。系统通常需要经过单元测试、集成测试、系统测试和验收测试。不同的测试小组使用不同的UML图作为测试依据:单元测试使用类图和类规格说明;集成测试使用部件图和合作图;系统测试使用用例图来验证系统的行为;验收测试由用户进行,以验证系统测试的结果是否满足在分析阶段确定的需求。 总之,标准建模语言UML适用于以面向对象技术来描
25、述任何类型的系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试和维护。2.2 数据库平台介绍2.2.1 SQL Server 数据库简介SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle、 Sybase、 Microsoft SQL Server、 Access、 Ingres等等。
26、虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如Select、 Insert、 Update、 Delete、 Create和 Drop常常被用于完成绝大多数数据库的操作。MS SQL Server 就是用的Transact- SQL。SQL语言有着非常突出的优点,主要是:1. 非过程化语言2 . 统一的语言3. 是所有关系数据库的公共语言非过程化语言:SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL 语句接受集合
27、作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。SQL不要求用户指定对数据的存放方法, 这种特性使用户更易集中精力于要得到的结果;所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段,查询优化器知道存在什么索引,在哪儿使用索引合适,而用户则从不需要知道表是否有索引、有什么类型的索引。统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。SQL为许多任务提供了命令,其中包括:1.查询数据2.在表中插入、修改和删除记录3.建立、修改
28、和删除数据对象 4.控制对数据和数据对象的存取5.保证数据库一致性和完整性以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的。一个成功的信息管理系统,是建立在许多条件之上的,而数据库是其中一个非常重要的条件和关键技术。信息管理系统所涉及的数据库设计分五个步骤:数据库需求分析、概念设计、逻辑设计、物理设计与加载测试。(1) 数据库需求分析的任务是将业务管理单证流化为数据流,划
29、分主题之间的边界,绘制出DFD图,并完成相应的数据字典。(2) 概念设计的任务是从DFD出发,绘制出本主题的实体关系图,并列出各个实体与关系的纲要表。(3) 逻辑设计的任务是从E-R图与对应的纲要表出发,确定各个实体及关系的表名属性。(4) 物理设计的任务是确定所有属性的类型、宽度与取值范围,设计出基本表的主键,将所有的表名与字段名英文化(现在很多软件能支持中文字段,如MS SQL Server,我就是用的中文字段名),实现物理建库,完成数据库物理设计字典。(5) 加载测试工作贯穿于程序测试工作的全过程,整个录入、修改、查询、处理工作均可视为对数据库的加载测试工作。要设计出一个好的信息管理系统
30、数据库,除满足系统所要求的功能外,还必须遵守下列原则:1 基本表的个数越少越好。2 主键的个数越少越好。键是表间连接的工具,主键越少,表间的连接就越简单。3 字段的个数越少越好。4 所有基本表的设计均应尽量符合第三范式。2.2.2 SQL Server 数据库系统特点SQL Server 2000 系统之间之所以成为目前流行的大型商用数据库系统,有着其深刻的内在因素,这与它鲜明的特点是分不开的: 1与Internet 的高度集成 SQL Server 2000与其它Microsoft Back Office 产品紧密集成,在安全 事件浏览、Windows NT 服务程序、性能监视器、多处理器支
31、持、索引服务器等方面充分利用了它们的长处,形成了自己独特的优势。 SQL Server 2000 数据库引擎提供完整的XML 支持。它还具有构成最大的Web站点的资料存储组件所需的可伸缩性、可用性和安全功能。SQL Server 2000程序设计模型与Windows DNA 构架集成,用以开发Web 应用程序,并且SQL Server 2000 支持English Query 和Microsoft 搜索服务等功能,在Web 应用程序中包含了用户友好的查询和强大的搜索功能。 SQL Server 2000 与其它产品共同构成了可靠安全的Internet和Intranet 系统的数据存储。例如:S
32、QL Server 2000 与Windows 2000 Server 和Windows NT Server 安全及加密工具共同实现安全的数据存储:SQL Server 2000 为在 IIS服务下运行或通过防火墙访问数据库的Web应用程序构成了高性能的数据存储服务;SQL Server 2000 可与Site Server 一起使用,建立并维护大型的复杂电子商Web 站点;SQL Server 2000 TCP/IP 套接字通讯支持可与Microsoft Proxy Server 集成,以实现安全的Internet 和Intranet通讯。 2高伸缩性和适应性 同一SQL Server 2000数据库引擎运行在Windows 2000 Professional、 Windows 2000 Server、Windows 2000 Advanced Server、