辽宁科技大学学生管理系统_第1页
辽宁科技大学学生管理系统_第2页
辽宁科技大学学生管理系统_第3页
辽宁科技大学学生管理系统_第4页
辽宁科技大学学生管理系统_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、辽宁科技大学学生管理系统摘要论文以建立一个功能完备、信息尽可能齐全的学生信息管理系统,实现学生信息管理为目的,讨论了学生日常管理系统的设计与实现。系统设计过程遵循软件工程的原理,逐个设计各个子系统的功能,系统的实现以Windows操作系统为开发环境,以SQL MSACCESS为数据库平台,选择Visual C+6.0作为应用程序开发工具,采用C/S结构开发。系统从功能上分为:系统管理,班级管理,学生档案管理,学生交费管理,课程管理,成绩管理6个子系统。系统模块实现了添加用户,重新登陆的功能;班级管理模块实现了班级浏览,班级添加,班级查询功能;学生档案管理模块实现了档案添加,档案浏览,档案查询功

2、能;学生交费管理模块实现了基本学费设置,学生交费添加,学生交费浏览的功能;课程管理模块实现了课程设置,班级课程设置功能;成绩管理模块实现了考试类型设置,成绩添加,成绩浏览功能。全文共分七章,第一章和第二章介绍题目的背景和系统开发的必要性与可行性等,第三章到第五章介绍系统的设计与实现,包括需求分析、数据库设计、详细设计与实现等内容,第六章介绍系统测试与调试过程,最后一章为总结。关键词 学生信息管理;数据库;ADO访问数据库技术;C/S模式AbstractThe stock management is an importance that the business enterprise suppl

3、ies circulates and manages process is constitutes the part, it relate to.I pass to investigate to some equipment of small scaled business enterprise database building, making sure the stage usage Microsoft Visual C#. the students information management systems, and information management for the pur

4、pose of students, the students discussed the day-to-day management of the design and implementation. System design followed the principle of software engineering, design-by-the functions of the various subsystems, the systems Windows operating system for the realization of the development environmen

5、t to SQL Server 2000 database platform, From the system functions include: systems management, class management, student records management, student fees management, curriculum management, performance management of six sub-systems. Implementation of the system module to add users to re-landing of th

6、e functions of class management module has classes here, add classes, classes for functions; student records management module has added files, file browsing, file queries; students pay to achieve the management module Basic set tuition fees, student fees add, students pay to the functions of course

7、 management module to achieve the curriculum, class curriculum functions; performance management module to achieve the exam type settings, add results, results browsing. The full text is divided into seven chapters, Chapters I and II on the subject and the background of system development, such as t

8、he necessity and feasibility, Chapter III to Chapter VI on the design and implementation, including needs analysis, database design, detailed design and To achieve, and so on, Chapter VII of the introduction of system testing and debugging and performance analysis, The last is to sum up the last cha

9、pter.Keywords Student Information Management;Database;ActiveX Data Object Visit Database Technology;Client/Server目录摘要IAbstractII第1章 绪论11.1 引言11.2 课题来源及意义11.3 系统基本达到的目标11.4 开发工具和数据库的选择2第2章 可行性分析32.1 技术可行性32.2 经济可行性42.3 操作可行性42.4 法律可行性4第3章 系统需求分析53.1 系统需求分析阶段工作53.2 系统开发配置63.2.1 系统运行环境63.2.2 系统开发环境63.3

10、 系统数据流程图83.4 数据字典的创建10第4章 系统的总体结构设计144.1 系统总体设计144.2 系统概念设计144.3 系统逻辑结构设计184.4 系统逻辑模型(面向对象方法)20第5章 系统数据库的设计215.1 系统数据库物理设计215.2 数据库逻辑设计23第6章 系统应用程序设计与实现256.1 系统功能模块设计过程256.2 系统详细设计266.2.1 命名规则266.2.2 模块设计28第7章 系统的检测及试调34结论37致谢38参考文献39附录A40附录B45 第1章 绪论1.1 引言学生信息管理是一项非常重要的工作,它负责整个学校的档案管理,交费管理,教务管理。教务工

11、作者急切希望用计算机提高工作效率。在各大中小学校,用计算机管理学校的信息已经越来越普遍了。采用学生信息管理系统不仅可以节省人力物力,而且增加了学校资料的安全性,提高了学校的管理能力。随着科学技术的迅猛发展,学生信息管理工作自动化所需的软硬件条件已经成熟。因此,我们按照软件工程思想和管理信息系统的开发步骤,以Microsoft公司的Visual C+ 6.0为工具,设计开发了学生信息管理系统。1.2 课题来源及意义学生信息管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生档案管理系统应该能够为用户提供充足的信息和快捷的查询手段。在各大中小学校,用计算机

12、管理学校的信息已经越来越普遍了。用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。提高了学校的管理能力,为此,用计算机来管理学校的信息,是非常必要的。1.3 系统基本达到的目标该项目开发的软件为学校学生信息管理系统软件,是鉴于目前学校学生人数剧增,学生信息呈爆炸性增长的前提下,学校对学生信息管理的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有教育单位(包括学校,学院等等)的学生信息的管理。目前社会上信息管理系统发展飞快,各个企事业单位都引入了信息管理软件来管理自己日益增长的各种信息,学生管理系统也是有了很大的发展,商业化的学生信息管理软

13、件也不少。但本系统完全独立开发,力求使系统明了,功能齐全且易于操作。1.4 开发工具和数据库的选择本套管理系统是采用Visual C+ 6.0作为前台的搭建软件,采用了应用比较普遍的Microsoft MSACCESS数据库构建后台数据库。编程环境的选择微软公司的Visual C+ 6.0是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。Visual C+提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本系统VC是一个相对较好的选择。Microsoft M

14、SACCESS主要功能就是同各种数据库建立联系,进行沟通。Microsoft MSACCESS应用广泛,可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。MSACCESS 是Microsoft 公司推出的MSACCESS 数据库管理系统,该版本继承了MSACCESS 7.0 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行MSACCESS 的大型多处理器的服务器等多种平台使用。第2章 可行性分析并不是所有的问题都有简单明显的解决方法,事实上,许多问题不

15、可能在预定系统规模之内解决。如果没有可行的解,那么花费在这项工程上的任何时间、资源、人力、和经费都是无谓的浪费。所以进行可行性分析是非常必要的。可行性研究是以相对短的时间和相对低的成本来确定给定的系统是否有解,并从技术、经济、操作、和法律上阐述是否可行。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能解决。可行性研究的目的不是解决问题,而是确定问题是否值得去解决。并不是所有问题都有简单明显的解决办法,事实上,许多问题不可能在预定的系统规模之内解决,如果问题没有可行的解,那么花费在这项开发工程上的任何时间、资源、人力和经费都是无谓的浪费。而可行性研究实质上是要进行一次大大压缩简化

16、了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。其最根本任务就是对以后的行动方针提出建议。一般来说,至少应该从下述四方面研究每种解法的可行性。2.1 技术可行性本系统的开发环境是基于Windows 2000的中文操作系统,采用面向对象的编程工具Visual C+ 6.0(以下简称VC),后台数据库是Microsoft MSACCESS。考虑到本系统属于小型数据库系统,并且不会有很大的数据量访问,笔者决定采取本地数据库访问和编程方法,以达到对数据库快速方便地访问。Visual C+ 6.0是专门为Microsoft的32位操作系统设计的,可用来建立32位的应

17、用程序。在Windows 9X 或 Windows NT 环境下,用Visual C+ 6.0的编译器可以自动生成32位应用程序。这样的应用程序在32位操作系统下运行,速度更快,更安全,并且更适合在多任务环境下运行。Visual C+ 是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows 环境下的各类应用程序。2.2 经济可行性目前国内相当一部分小型企业,没有完善的库存管理系统,管理水平差,运行效率低,迫切需要提高现代化管理水平、管理质量和管理工作效率,新系统的投入运行将大大降低成本,提高经济效益。本系统虽然需要有良好的整体规划,而且还需要专业人员进行系

18、统的运行阶段的维护与管理,所以系统开发需要大量的先期投入,但是今后系统的使用会给用户带来很大的方便。从提高工作效率而避免各种直接或间接的经济损失角度来看,软件实际能够起到的作用会远远大于投入的开发费用。故从经济上是完全可行的。总之,这个系统的经济效益远远大于开发成本。2.3 操作可行性对于用户来说,合理方便的功能设计和快捷的操作,足可以满足各种用户的不同需求,同时也方便了管理员的内部管理。总之,这个系统的经济效益远远大于开发成本。硬件上,满足要求的计算机的配置不用很高;软件上,采用Windows系列操作系统,对管理员稍做培训即可掌握,操作上是可行的。本系统界面统一规范,操作简单,提示信息功能完

19、整,用户只要经过简单的培训即可上手。2.4 法律可行性本系统没有违反国家相关法律规定,因此法律上有保障。第3章 系统需求分析一个软件系统是由相互联系和相互制约的若干部分组成,而系统需求分析是整个系统设计实现的最重要的阶段。需求分析要明确提出系统做什么,即需求分析就是要准确地回答系统必须做什么的问题,而不是如何做的问题。深入、细致、正确的系统需求分析,是系统设计和实现的基础,否则系统开发代价是沉重的。需求分析是指用户对目标系统在功能、性能以及行为等方面的需求;或者说,需求分析的主要任务是清晰、准确、详实地描述系统的功能需求、数据需求、性能需求和环境要求,并给出系统数据流程图和数据字典。这里,我们

20、首先给出文字描述的系统业务流程,然后表述需求规范。3.1 系统需求分析阶段工作1、问题识别就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准.这些需求包括:功能需求(做什么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标。2、分析与综合 逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分。最后

21、,综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型)。3、制订规格说明书 即编制文档,描述需求的文档称为软件需求规格说明书。请注意,需求分析阶段的成果是需求规格说明书,向下一阶段提交。4、评审对功能的正确性,完整性和清晰性,以及其它需求给予评价。评审通过才可进行下一阶段的工作,否则重新进行需求分析。简言之,需求分析的任务就是解决“做什么”的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求。3.2 系统开发配置3.2.1 系统运行环境1、硬件环境CPU:600Mhz以上主频CPU。内存:最低配置128MB,建议使用256MB以上内存,Windows XP建议使

22、用512MB以上内存。硬盘:至少需要300MB以上的硬盘空间来安装所需的组件。2、软件环境操作系统:Windows 98;Windows 2000;Windows XP。3.2.2 系统开发环境1、Visual C+ 6.0 Visual C+ 6.0中文版是一种应用程序开发工具,它的功能就是用来编程Windows下的应用程序。“Visual”一词在计算机程序设计领域中意为: “ 可视化的”,Microsoft公司的其冠以Visual的产品都含有这个意思,VC就是可视化程序设计语言。可视化程序设计指的是一种开发图形用户界面的方法,使用这种方法,程序员不须编写大量代码去描述界面元素的外观和位置,

23、只要把预先建立的界面元素用鼠标拖放到屏幕上适当的位置即可。Visual C+在原有C语言的基础上进一步发那,至今包含了数百条语句、函数及关键词,其中很多和Windows Guy直接关系。专业人员可以用Visual Basic实现其他任何Windows编程语言的功能,而初学者只要掌握 几个关键词就可以建立实用的应用程序。VC的基本特点有两个:(1)VC提供可视化的编程工具VC向程序员提供图形对象(窗体,控件,菜单等)进行应用程序的界面设计,应用程序的界面相当于用工具画出来的,大大简化了程序员的编程工作。(2)程序采取“事件驱动”方式VC改变了程序的机制,没有传统意义上的主程序,使程序执行的基本方

24、法是有“事件”来驱动子程序(或过程)的运行,如用鼠标点击命令按扭,就产生了一个命令按扭的“单击事件”,响应的执行一段程序(事件过程:Command1_Click()。2、MSACCESSMSACCESS作为微软在Windows 系列平台上开发的数据库,一经推出就以其易用性得到了很多用户的欣赏,相信大多数将自己的业务建立在Windows平台上的用户都会对它有相当的亲切感。今天,我们就来谈谈数据库解决方案之微软篇。(1)上手容易如果您的企业至今还未购置数据库,其中一个主要的原因可能就是认为它不好上手,那么,从MSACCESS开始吧。毕竟,大多数的中小企业日常的数据应用是建立在Windows平台上的

25、。由于MSACCESS与Windows界面风格完全一致,且有许多向导(Wizard)帮助,因此易于安装和学习,有关MSACCESS的资料、培训随处可得,并且目前国内具有MCDBA认证的工程师不在少数。从另一个角度来讲,学习MSACCESS是掌握其他平台及大型数据,如Oracle, Sybase,DB/2的基础。因为这些大型数据库对于设备、平台、人员知识的要求往往较高,而并不是每个人都具备这样的条件,且有机会去接触它们。但有了MSACCESS的基础,再去学习和使用它们就容易多了。IT行业的实践经验充分证明了这一点。(2)兼容性良好 由于今天Windows操作系统占领着主导地的位,选择MSACCE

26、SS一定会在兼容性方面取得一些优势。另外,MSACCESS 除了具有扩展性,可靠性以外,还具有可以迅速开发新的因特网系统的功能。尤其是它可以直接存贮 XML 数据,可以将搜索结果以 XML格式输出等特点,有利于构建了异构系统的互操作性,奠定了面向互联网的企业应用和服务的基石。这些特点在.NET 战略中发挥着重要的作用。在使用由Microsoft SQL Server 2000关系数据库引擎的情况下,XML数据可在关系表中进行存储,而查询则能以XML格式将有关结果返回。此外,XML支持还简化了后端系统集成,并实现了跨防火墙的无缝数据传输。你还可以使用Hypertext Transfer Prot

27、ocol(超文本传输协议,HTTP)来访问MSACCESS,以实现面向MSACCESS数据库的安全Web连接和无须额外编程的联机分析处理(OLAP)多维数据集。MSACCESS非常明显的改进就是增加了OLAP(联机分析处理)功能,这可以让很多中小企业用户也可以使用数据仓库的一些特性进行分析。OLAP可以通过多维存储技术对大型、复杂数据集执行快速、高级的分析工作。数据挖掘功能能够揭示出隐藏在大量数据中的倾向及趋势,它允许组织或机构最大限度的从数据中获取价值。通过对现有数据进行有效分析,这一功能可以对未来的趋势进行预测。MSACCESS简化了管理、优化工作,并且增强了迅速、成功的部署在线商务应用程

28、序所需的可靠性和伸缩性。其中,用以提高可靠性的特性包括日志传送、在线备份和故障切换群集。在伸缩性方面的改进包括对多达32颗CPU和64GB RAM的支持。通过自动优化和改进后的管理特性-诸如数据文件尺寸的自动管理、基于向导的数据库拷贝、自动内存管理和简化的故障切换群集安装与管理,在线商务应用程序能够被迅速部署并有效管理SQL是高级的非过程化编程语言,允许顾客在高层数据结构上工作。他不要求顾客指定对数据的存放方法,也不需要顾客了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操纵对象,所有SQL语句接受集合作为输入,

29、返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语言可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的一个单独事件只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。3.3 系统数据流程图数据流图描绘系统的逻辑模型,图中没有任何物理元素,只是描绘信息在系统中流动和处理情况。因为数据流图是逻辑系统的图形表示,即使不是专业的计算机技术人员也容易理解,所以是极好的通信工具。此外设计数据流图纸需要考虑系统必须完成的基本逻辑功能,完全不需要考虑如何具体地实现这些功能。画数据流图的基本目的是

30、利用它作为交流信息的工具。分析员把他对现有系统的认识或对目标系统的设想用数据流图描绘出来,供有关人员审查确认。由于在数据流图中通常仅仅使用四种基本符号,而且不包括任何有关物理实现的细节,因此,绝大多数用户都可以理解和评价它。从数据流图的基本目标出发,可以考虑在一张数据流图中包括多少个元素合适的问题。一些调查表明,如果一张数据流图包含的处理多于59个,人们就难于领会它的含义了。因此数据流图应该分层,并且把功能及数据流图细化后得到的处理超过9个时,应采用划分图的方法,也就是把每个主要功能都细化一张数据流分图,而原有的功能级数据流图用来描绘系统的整理逻辑概貌。任何计算机系统实质上都是信息处理系统,也

31、就是说计算机系统本质上都是把输入数据变成输出数据。本系统可以画出以下的基本关系模型。如图3.1所示:事务管理员学生信息管理用户图3.1顶层数据流图我们从这张图上对学生信息管理系统所能了解得信息非常有限,所以把基本系统模型细化,描绘系统主要功能。我们将要描绘的功能数据流图有:系统管理,班级管理,学生档案管理,学生交费管理,课程管理,成绩管理。它们将使基本系统模型所描绘的功能更细化。第一层数据流图如图3.2所示:图3.2 第一层数据流程图3.4 数据字典的创建数据字典是关于数据信息的集合,也就是对数据流图中包含的所有元素定义的集合。任何字典最主要的用途都是供人查阅不了解的条目的解释,数据字典的作用

32、也正是在软件分析和设计过程中给人提供关于数据的描述信息。数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用。只有数据流图和对数据流图精确的定义放在一起,才能共同构成系统的规格说明。 由于元素太多我们只对其中主要的元素定义说明。数据字典是对数据流程图中的数据成分进行细化说明,详尽地描述了数据本身特性及处理和存储情况。描述了软件系统中使用的或产生的每一个数据元素,是系统数据信息定义的集合。数据字典中的数据流和数据元素的定义是数据库设计的依据,是软件工程中的需求分析阶段中的重要成果。数据流表达了一个数据子集从此处到彼处的流动,不一定和数据表

33、的各个字段完全一一对应(可能来自一个表,也可能是多个表或表中的部分字段)。数据元素的定义,全面、详尽地刻画了数据流中的数据元素的取值情况、被处理情况以及存储情况。该部分内容的的确确很重要,但可根据实际情况,把有代表性的数据元素展示出来,然而数据流的定义不可缺少。数据字典的主要用途是作为分子阶段的主要工具。在数据字典中建立一组严密一致的定义很有助于改进分析员和客户之间的通信,因此将消除很多可能的误解。数据字典包含的每个数据元素的控制信息是很有价值的。因为列出了使用一个给定的数据元素所有程序,很容易估计改变一个元素将产生的影响,并且能对所有受影响的程序或模块做出相应改变。数据库数据字典不仅是每个数

34、据库的中心。而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。由于暂时还没有自动的数据字典处理程序,我们采用卡片形式书写数据字典,每张卡片上保存描述一个数据元素的信息。这种做法较好的实现了上述要求,特别是更新修改起来很方便,能够单独处理每个数据元素的信息。每张卡片上包含的信息有:以下是数据流图中主要元素的数据字典内容:1、 系统管理信息数据结构名称:系统管理信息别名:含义说明:管理员管理添加用户重新登陆的信息数据结构组成:用户名+密码+权限+是否只读+权限1+权限2+权限3+权限4位置:系统管

35、理 2、班级管理信息数据结构名称:班级管理信息别名:含义说明:管理班级的添加,查询,删除的信息数据项的组成:年级+班级+教室+年制+专业+班主任+备注位置:基本信息设置 3、学生档案管理信息数据结构名称:学生档案管理信息别名:含义说明:负责学生管理系统的添加,浏览查询信息。数据项的组成:学号+姓名+性别+班级+出生年月+家庭住址位置:基本信息设置 4、课程管理信息数据结构名称:课程管理信息别名:含义说明:存储用户的基本课程设置以及班级课程设置的信息。数据项的组成:年级+专业+年制+学期+课程名称位置:基本信息设置5、成绩管理信息数据结构名称:成绩管理信息别名:含义说明:负责成绩的添加,浏览等信

36、息。数据项的组成:学号+学期+类型+课程名称+分数位置:基本信息设置6、学生缴费信息数据结构名称:学生缴费信息别名:含义说明:负责学生的浏览、添加等信息。数据项的组成:学号+学期+缴费欠费日期操作员位置:基本信息设置第4章 系统的总体结构设计4.1 系统总体设计系统总体结构如图4.1所示。图4.1系统总体结构图4.2 系统概念设计在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。利用E-R方法进行数据库的概念设计,

37、可分成三步进行:首先设计局部E-R模式,然后把各局部E-R模式综合成一个全局模式,最后对全局E-R模式进行优化,得到最终的模式,即概念模式。E-R模型中包括“实体”、“联系”和“属性”等三个基本成分,下面分别介绍这三个基本成分。1、 实体实体是客观世界中存在的且可相互区分的事物。实体可以是人也可以是物,可以是具体事物,也可以是抽象概念。例如,职工、学生、课程、老师等都是实体。2、 联系客观世界中的事物彼此间往往是有联系的。例如,教师与课程间存在“教”这种联系,而学生与课程间则存在“学”这种联系。联系可分为三种,分别是一对一联系、一对多联系和多对多联系。3、 属性属性是实体或联系所具有的性质,通

38、常一个实体有若干个实体属性来刻画。联系也可能有属性。E-R模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:N,M:N,还是1:1等。还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系,等等。学生信息管理系统E-R模型如图3.2-3.8所示:图4.2 E-R模型图图4.3 系统管理信息实体E-R图图4.4 班级管理信息实体E-R图图4.5 学生档案信息实体E-R图图4.6 学生交费信息实体E-R图图4.7 课程管理信息实体

39、E-R图图4.8 成绩管理信息实体E-R图4.3 系统逻辑结构设计概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS支持,为了能够建立起最终的物理系统,我们还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义约束、规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户字模式。数据库逻辑结构的设计分为两个步骤:1、将概念设计所得的E-R图转换为关系模型。2、对关系模型进行优化。所以要将E-R模型转换为关系模型,就是将实体、属性和联系都要转换为相应的关系模

40、式。具体转换规则如下:1、一个实体类型转换为一个关系模式。2、一个一对一(1:1)联系有两种转换方式:转换为一个独立的关系模式;与任意一端的关系模式合并。3、一个一对多(1:n)联系也有两种转换方式:将1:n 联系转换为一个独立的关系模式;将1:n联系与n端的关系合并。4、一个多对多(m: n)联系转换为一个关系模式。5、同一实体集内部的联系,可将该实体集拆分为相互联系的两个子集,然后根据它们相互不同的联系方式(1:1,1:n,m:n)按上述规则处理。6、三个或三个以上实体间的多元关系转换为一个关系模式,与该多元联系相连的各实体的关键字及联系本身的属性为关系模式的属性,关系模式的关键字为各实体

41、关键字的并集。7、具有相同关键字的关系模式可以合并,合并后的关系模式的属性取被合并的关系模式属性的并集,并适当调整属性的次序及名称等。需要强调,规范化本身是一种理论,它是数据设计人员用于判断所设计的关系数据库模式优劣程度的工具,它的存在使数据库设计有了严格的理论基础,同是由于规范化可以较好地解决冗余与更新异常现象,因而已成为数据库设计所要考虑的重要环节之一。但在实际设计中,由于种种现实因素的影响,优化所产生的关系数据库模式往往作为设计人员和用户实现具体模型的一个参考。图4.9 逻辑结构设计的过程按照关系模型转换的原则和规范化理论的原则,将概念设计所得的E-R图转换为关系模型。用户注册(用户的名

42、字,性别,密码,权限,是否只读,问题,答案,E-mail,真实姓名,生日,电话,地址)在用户注册的关系模式中,用户的名字为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,用户的名字为这个关系模式的决定因素,而它本身又是关系模式的码。所以,此关系模式属于BC范式。班级信息(班级名称,年级,教室,年制,专业,班主任,备注)在班级信息的关系模式中,班级名称为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,班级名称为这个关系模式的决定因素,而它本身又是关系模式的码。因此,此关系模式属于BC范式。根据规范化理论的要求,一般数据库

43、设计要达到第三范式,而BCNF是对第三范式的修正,比第三范式要求更加严格,能够保证数据库设计的科学性。课程管理(课程的名称,年级,专业,学期,年制,备注)在课程管理的关系模式中,课程的名称为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,课程的名称为这个关系模式的决定因素,而它本身又是关系模式的码。同样,此关系模式也属于BC范式。交费管理(学号,学期,交费,欠费,日期,操作员)在交费管理的关系模式中,学号为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,学号为这个关系模式的决定因素,而它本身又是关系模式的码。同样,此关

44、系模式也属于BC范式。档案管理(学号,姓名,性别,班级,出生年月,家庭住址)在档案管理的关系模式中,学号为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,学号为这个关系模式的决定因素,而它本身又是关系模式的码。同样,此关系模式也属于BC范式。4.4 系统逻辑模型(面向对象方法)1、活动图学生注册基本信息输入学籍信息管理班级管理班级课程设置课程基本信息班级课程管理成绩信息输入成绩信息管理班级设置图4.10 活动图第5章 系统数据库的设计5.1 系统数据库物理设计通过对本系统各方面功能特点的研究和讨论、对SQL Server 2000的特点及性能的分析,决定选

45、用SQL Server 2000数据库管理系统进行数据库的设计,另外本系统是基于C/S 模式下的管理系统。此学生信息管理系统的数据库中包含有成绩信息表,班级信息表,班级课程信息表,交费信息表,考试类型信息表,学生信息表等。成绩信息表:记录学生成绩的详细信息。班级信息表:记录班级的详细信息。班级课程信息表:记录课程的信息。交费信息表:记录学生交费的详细信息。用户信息表:记录用户的详细信息。成绩信息(学号,学期,类型,课程名称,分数),如表5.1所示:表5.1 成绩信息表列名数据类型长度说明学号nvarchar10学号,主键学期nvarchar50学期类型nvarchar16类型课程名称nvarc

46、har20课程名称分数real4分数班级信息表(年级,班级,教室,年制,专业,班主任,备注),如表5.2所示:表5.2 班级信息表列名数据类型长度说明年级nvarchar16年级,主键教室nvarchar5教室年制nvarchar8年制班级nvarchar20班级班主任nvarchar8班主任专业ntext16专业班级课程表(年级,专业,年制,学期,课程名称),如表5.3所示:表5.3 班级课程表列名数据类型长度说明年级nvarchar16年级,主键专业nvarchar12专业年制nvarchar8年制学期nvarchar50学期课程名称nvarchar20课程名称交费信息表(学号,学期, 交

47、费,欠费,日期,操作员),如表5.4所示:表5.4 交费信息表列名数据类型长度说明学号nvarchar5学号,主键学期nvarchar50学期交费Money8交费欠费Money8欠费日期Smalldatetime4日期操作员Nvarchar10操作员用户信息表(用户名,密码,权限,是否只读,权限1,权限2,权限3,权限4),如表5.5所示:表5.5 用户信息表列名数据类型长度说明Usernamenvarchar20用户名,主键Passwordnvarchar20密码Adminnvarchar2权限Readonlynvarchar2是否只读Qx1nvarchar2权限1Qx2nvarchar2权

48、限2Qx3nvarchar2权限3Qx4nvarchar2权限4学生信息表(学号,姓名,性别,班级,出生年月,家庭住址),如表5.6所示:表5.6 学生信息表列名数据类型长度说明学号nvarchar5学号,主键姓名nvarchar8姓名性别nvarchar2性别年级nvarchar10班级出生年月Smalldatetime4出生年月家庭住址Nvarchar30家庭住址5.2 数据库逻辑设计数据库的逻辑设计即是表结构和表关系的设计,这里同时给出表中的样例数据。(表关系设计见5.3节)1、学生信息清单表该表用于学生使用此学生信息管理系统的人员的基本信息。(1)表结构字段名字段类型字段大小主键外键可

49、空否备注用户编号varchar6是N用户姓名varchar10Y密码varchar10Y权限int6Y表5.1学生信息清单表(2)表中样例数据用户编号用户姓名密码权限1001张三*11002李四*11003马六*2表5.2学生信息清单表样例数据第6章 系统应用程序设计与实现6.1 系统功能模块设计过程经过需求分析阶段的工作,系统必须“做什么”已经很清楚了,现在是决定“怎样做”的时候了,即总体设计阶段,其中一项重要任务是设计软件的结构,也就是要确定系统中每个程序是由哪些功能模块组成的,以及这些模块相互间的关系。总体设计过程首先寻找实现目标系统的各种不同的方案,需求分析阶段得到的数据流图是设想各种

50、可能方案的基础。然后分析员从这些供选择的方案中选取若干个合理的方案,然后为每个合理的方案准备一份系统流程图,列出组成系统的所有物理元素。在进行软件结构设计时应该遵循的主要原理是模块独立性原理,也就是说,软件应该由一组完成相对独立的子功能的模块组成。总体设计中的模块的划分根据软件工程的原则要符合高内聚合低耦合。模块粒可以小到函数、事件,大到窗口、程序模块划分完后,就可以开始设计了。总体设计的原则:全面性:考虑到不同用户的不同需求,力争满足用户的操作习惯,使系统适合用户需求。规范性:本系统遵循一般软件设计思想进行设计,遵循数据库的原理。科学性:既要有现代化的先进技术,又要考虑到今后的发展,留有可以

51、扩充的空间又慎重选择成熟的技术。实用性:根据实际情况,考虑用户的需求,设计友好且易于操作的界面。安全性:在设计数据库的时候,充分利用操作系统和数据库的安全性,使之与应用系统的安全有机的结合起来,从而确保整个系统的安全性。根据需求分析,本系统结构采用流行的C/S(客户端/服务器)结构模式,实现真正的业务集中管理,零系统维护。6.2 系统详细设计详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,也就是说这个阶段的设计工作 ,应该得出目标系统的精确描述,从而字编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。详细设计阶段的任务是在总体设计的基础上进一步确定如何实现目标系统。具体

52、任务主要包括数据库物理设计(放到数据库设计一章中)和功能模块逻辑设计。这里我们把代码实现也归入详细设计任务中,这样每一功能模块单元自成体系,便于修改、扩充和维护。详细设计是系统实现的核心和主体,描述了系统实现和运行的详细逻辑。详细设计以窗口为单位进行。详细设计文档作为系统维护和扩充的重要文档。6.2.1 命名规则1、变量命名变量名由数据类型前缀和首字母大写的具有相应含义的英文单词构成,前缀与各单词之间以下划线连接。如:整形类型的计数器命名为:int_Count字符串类型的电话号码为:str_PhoneNumber设计中涉及的数据类型及其前缀表:表6.1 数据类型前缀前缀数据类型说明blnBoo

53、lean布尔datDate日期decDecimal十进制数dblDouble双精度浮点数intInteger整数lngLong长整数chrChar字符strString字符串2、常量命名 常量名由数据类型前缀和大写的具有相应含义的英文单词构成,前缀及各单词之间以下划线连接。如:圆周率:dec_PI,其定义格式为:const dec_PI=3.14159专业名:str_Professional_NAME,其定义格式为:const str_ Professional _NAME=“计算机科学与技术”3、对象命名 对象名由标识对象的前缀和具有相应含义(或含义相近)的英文单词构成,前缀与各单词之间以下

54、划线连接;单词构成复杂的,可用汉语拼音头组合而成;静态文本对象可用前缀与数字的结合。如:“确定”按钮命名为:cb_ok“取消”按钮命名为:cb_cancel表示姓名的“文本框”命名为:sle_name表示姓名的“静态文本”命名可为:st_1设计中涉及的控件对象及其前缀表:表6.2 控件对象前缀前缀控件对象名称说明cbCommandButton命令按钮stStaticText静态文本sleSingleLineEdit单行编辑器pPicture图片tvTreeView树形视图lvListView列表视图cbxCheckBox复选框rbRadioButton单选按钮6.2.2 模块设计1、登录窗体的实现(1)登录窗口功能描述登录窗口用于对进入系统的人员进行身份识别和权限级别的确认。对未在系统注册的使用人员进行限制,非法进入三次便自动退出。对已在系统注册的人员,在正确输入用户编号、用户名和密码后,便进入系统主窗口,同时根据用户的权限级别开放主窗口中的菜单的相应功能,并禁止不相关的功能。登录窗口模块功能表为: 表6.3 用户登录功能编号1.2功能名

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论