管理信息系统课程设计--学生的系统_第1页
管理信息系统课程设计--学生的系统_第2页
管理信息系统课程设计--学生的系统_第3页
管理信息系统课程设计--学生的系统_第4页
管理信息系统课程设计--学生的系统_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

辽 宁 工 业 大 学 管理信息系统设计课程设计报告(论文)题目: 学生信息管理系统的分析与设计 院(系): 软件学院 专业班级: 软件工程113班 学 号: 学生姓名: 安凯辰 指导教师: 王彦华 教师职称: 讲 师 起止时间: 2012.5.28-2012.6.8 课程设计(论文)任务及评语院(系):软件学院 教研室:软件教研室学 号学生姓名安凯辰专业班级软件工程113班课程设计(论文)题目学生信息管理系统的分析与设计课程设计(论文)任务管理信息系统课程设计作为独立的教学环节,是电子商务专业集中实践性环节系列之一,是学习完管理信息系统课程并进行完专业实习后进行的一次全面的综合练习。任务:采用结构化的系统开发方法,应用具体的计算机语言(如VB、java、c#)和数据库(SQLserver、oracle)等技术,按照软件工程的思想,开发一个实用的中小型管理信息系统,完成餐饮管理系统的分析设计实施工作,实现该系统餐饮管理等功能,并结合分析设计过程,撰写系统设计说明书(课设报告)。1根据课程设计时间选择适当规模大小的设计课题。采用专业实习的调研内容作为课程设计选题。2根据合理的进度安排,按照系统开发的流程及方法,踏实地开展课程设计活动。3课程设计过程中,根据选题的具体需求,在开发各环节中撰写相关的技术文档,最后提交详细的课程设计报告。4开发出可以运行的管理信息系统,通过上机运行检查。5设计说明书要求文档齐备,步骤全整,流程正确,说明详细,具有可操作性。指导教师评语及成绩成绩: 指导教师签字: 2012 年 6 月 12 日辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)目 录第1章 系统分析11.1需求分析11.2系统的可行性分析11.3业务流程图11.4 数据流图21.5数据字典3第2章 系统设计52.1程序设计52.2数据库设计6第3章 系统实施103.1程序实现103.2数据库实现12第4章 课设总结14参考文献15第1章 系统分析1.1需求分析学生信息管理系统是对学校学生管理工作进行处理的一个计算机系统。信息管理是学校管理中最为繁琐的一项工作,因而有必要对此进行简化并用计算机管理来代替人工管理。本学生信息管理系统模块是为了实现学校人力资源的优化和对学生信息管理的科学管理而设计的,通过运用本系统,可以更加有效的管理学生信息,其中包括学生的基本信息,信息并且具有信息的增加,查询,修改等功能。1.2系统的可行性分析1.技术可行性本系统的开发环境是基于Windows 2000的中文操作系统,采用面向对象的编程工具Visual Basic 6.0(以下简称VB),后台数据库是SQL Server 2000。考虑到本系统属于小型数据库系统,并且不会有很大的数据量访问,笔者决定采取本地数据库访问和编程方法,以达到对数据库快速方便地访问。Visual Basic 6.0是专门为Microsoft的32位操作系统设计的,可用来建立32位的应用程序。在Windows 9X 或 Windows NT 环境下,用Visual Basic 6.0的编译器可以自动生成32位应用程序。这样的应用程序在32位操作系统下运行,速度更快,更安全,并且更适合在多任务环境下运行。Visual Basic 是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows 环境下的各类应用程序。2.经济可行性本系统虽然需要有良好的整体规划,而且还需要专业人员进行系统的运行阶段的维护与管理,所以系统开发需要大量的先期投入,但是今后系统的使用会给用户带来很大的方便。从提高工作效率而避免各种直接或间接的经济损失角度来看,软件实际能够起到的作用会远远大于投入的开发费用。故从经济上是完全可行的。总之,这个系统的经济效益远远大于开发成本。3.操作可行性对于用户来说,合理方便的功能设计和快捷的操作,足可以满足各种用户的不同需求,同时也方便了管理员的内部管理。总之,这个系统的经济效益远远大于开发成本。硬件上,满足要求的计算机的配置不用很高;软件上,采用Windows系列操作系统,对管理员稍做培训即可掌握,操作上是可行的。1.3业务流程图 1.工作流程图: 学籍管理毕业审查成绩管理选课人才培养方案教师管理教学计划教务管理教学评估排课实际开课 图1.1系统工作流程图2.系统业务流程图:系统业务流程图业务流程图是系统分析和描述系统的重要工具,是业务流程调查结果的图形化表示,它反映了系统各机构的业务处理过程和它们之间的业务分工与联系,以及连接各机构的物流、信息流的传递和流通的关系。学生登记表学生档案学籍入学通知院系班级考试成绩教务处奖惩信息学生成绩毕业证书学分管理制度图1.2系统业务流程图1.4 数据流图画数据流图的基本目的是利用它作为交流信息的工具。分析员把他对现有系统的认识或对目标系统的设想用数据流图描绘出来,供有关人员审查确认。由于在数据流图中通常仅仅使用四种基本符号,而且不包括任何有关物理实现的细节,因此,绝大多数用户都可以理解和评价它。数据流图如图1.3所示:学生管理教师D1登陆性息P1.1登陆S1D2权限性息 P1.2判定权限S2S3D3教师性息D4学生信息 P1.3维护教师性息 P1.4维护学生信息S7S8S6 P1.5课程管理P1.7成绩管理S4D7成绩信息 S5D6开课信息D5班级信息P1.6数据处S10S9S11 图1.3 数据流图1.5数据字典数据字典是关于数据信息的集合,也就是对数据流图中包含的所有元素定义的集合。任何字典最主要的用途都是供人查阅不了解的条目的解释,数据字典的作用也正是在软件分析和设计过程中给人提供关于数据的描述信息。数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用。只有数据流图和对数据流图精确的定义放在一起,才能共同构成系统的规格说明。 由于元素太多我们只对其中主要的元素定义说明。数据字典的主要用途是作为分子阶段的主要工具。在数据字典中建立一组严密一致的定义很有助于改进分析员和客户之间的通信,因此将消除很多可能的误解。数据字典包含的每个数据元素的控制信息是很有价值的。因为列出了使用一个给定的数据元素所有程序,很容易估计改变一个元素将产生的影响,并且能对所有受影响的程序或模块做出相应改变。数据库数据字典不仅是每个数据库的中心。而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。由于暂时还没有自动的数据字典处理程序,我们采用卡片形式书写数据字典,每张卡片上保存描述一个数据元素的信息。这种做法较好的实现了上述要求,特别是更新修改起来很方便,能够单独处理每个数据元素的信息。每张卡片上包含的信息有:以下是数据流图中主要元素的数据字典卡片: 表1.1年级管理信息数据结构名称:年级管理信息别名:含义说明:管理年级的添加,查询,删除的信息数据结构组成:年级编号+年级名称位置:基本信息设置表1.2班级管理信息数据结构名称:班级管理信息别名:含义说明:管理班级的添加,查询,删除的信息数据项的组成:年级+班级+教室+年制+专业+班主任+备注位置:基本信息设置表1.3课程管理信息数据结构名称:课程管理信息别名:含义说明:存储用户的基本课程设置以及班级课程设置的信息。数据项的组成:年级编号+班级编号+学期+课程名称位置:基本信息设置数据结构名称:成绩管理信息别名:含义说明:负责成绩的添加,浏览等信息。数据项的组成:学号+学期+类型+课程名称+分数位置:基本信息设置表1.4成绩管理信息第2章 系统设计2.1程序设计1.概要设计:学生信息管理分为年级信息管理,学籍信息管理,班级信息管理,成绩信息管理,课程信息管理,查询管理。总体设计功能图如下:成绩信息管理查询管理学生信息管理系统班级信息管理学校年级设置学籍信息设置班级信息设置学籍信息管理成绩信息设置课程信息设置年级课程开设课程信息查询课程信息管理成绩信息查询班级信息查询学校信息设置学籍信息管理年级信息管理 图2.1整体功能模块图2.详细设计:详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,得出系统的精确描述,直接翻译成用某种程序设计语言书写的程序。举例说明该系统登录窗体的实现。系统首先进入登陆界面,输入正确的用户名和密码后,正常登陆系统界面,如图所示: 图2.2 系统登陆界面图“确定”按钮的Click事件代码:Private Sub Command1_Click() Dim mrc As ADODB.Recordset txtsql = select username from userinfo where username= & Trim(Text1.Text) & Set mrc = ExecuteSQL(txtsql) If mrc.EOF = True Then MsgBox 用户名错误!, vbExclamation + vbOKOnly, 警告 Text1.SetFocus Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) Exit Sub End If username = mrc.Fields(0) txtsql = select username from userinfo where password= & Trim(Text2.Text) & Set mrc = ExecuteSQL(txtsql) If mrc.EOF = True Then MsgBox 密码错误!, vbExclamation + vbOKOnly, 警告 Text2.SetFocus Text2.SelStart = 0 Text2.SelLength = Len(Text2.Text) Exit Sub End If MDIForm1.Show End Sub2.2数据库设计1.概念设计在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。利用E-R方法进行数据库的概念设计,可分成三步进行:首先设计局部E-R模式,然后把各局部E-R模式综合成一个全局模式,最后对全局E-R模式进行优化,得到最终的模式,即概念模式。E-R模型中包括“实体”、“联系”和“属性”等三个基本成分,下面分别介绍这三个基本成分。实体:实体是客观世界中存在的且可相互区分的事物。实体可以是人也可以是物,可以是具体事物,也可以是抽象概念。例如,学生、课程、老师等都是实体。联系:客观世界中的事物彼此间往往是有联系的。例如,教师与课程间存在“教”这种联系,而学生与课程间则存在“学”这种联系。联系可分为三种,分别是一对一联系、一对多联系和多对多联系。属性:属性是实体或联系所具有的性质,通常一个实体有若干个实体属性来刻画。联系也可能有属性。E-R模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:N,M:N,还是1:1等。还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系,等等。班级信息表的E-R图包括如下信息:班号、年级编号、年级名称、班主任编号等。班号年级编号年级名称班主任编号班级 图2.3班级E-R图课程信息的E-R图包括如下信息:课程编号、课程名称、课程类型、课程描述。课程课程编号课程名称课程类型课程描述图2.4课程E-R图成绩信息表的E-R图包括如下信息:考试编号、学生学号、课程编号、分数。成绩考试编号学生学号课程编号分数图2.5成绩E-R图总体E-R图包括:学校信息表、学院信息表、教师信息表、学生信息表、课程信息表和成绩表。图2.5整体E-R图图2.6 总体E-R图2逻辑设计概念设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS支持,为了能够建立起最终的物理系统,我们还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义约束、规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户字模式。数据库逻辑结构的设计分为两个步骤:1、将概念设计所得的E-R图转换为关系模型。2、对关系模型进行优化。按照关系模型转换的原则和规范化理论的原则,将概念设计所得的E-R图转换为关系模型。学生(学号,姓名,性别,班级,出生年月,家庭住址,邮政编码,联系电话,入学时间)在学生的关系模式中,学号为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,用户的名字为这个关系模式的决定因素,而它本身又是关系模式的码。所以,此关系模式属于BC范式。班级(班级名称,年级,教室,年制,专业,班主任,备注)在班级信息的关系模式中,班级名称为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,班级名称为这个关系模式的决定因素,而它本身又是关系模式的码。因此,此关系模式属于BC范式。根据规范化理论的要求,一般数据库设计要达到第三范式,而BCNF是对第三范式的修正,比第三范式要求更加严格,能够保证数据库设计的科学性。课程管理(课程的名称,年级,专业,学期,年制,备注)在课程管理的关系模式中,课程的名称为主码,其它非主属性完全依赖于码,并且既不存在部分函数依赖,也不存在传递函数依赖,另外,课程的名称为这个关系模式的决定因素,而它本身又是关系模式的码。同样,此关系模式也属于BC范式。3.物理设计在数据库中创建索引时,查询所使用的索引信息存储在索引页中。连续索引页由从一个页到下一个页的指针链接在一起。当对数据的更改影响到索引时,索引中的信息可能会在数据库中分散开来。重建索引可以重新组织索引数据(对于聚集索引还包括表数据)的存储,清除碎片。这可通过减少获得请求数据所需的页读取数来提高磁盘性能。 在 SQL Server 2000 中,如果要用一个步骤重新创建索引,而不想删除旧索引并重新创建同一索引,则使用 CREATE INDEX 语句的 DROP_EXISTING 子句可以提高效率。这一优点既适用于聚集索引也适用于非聚集索引。 以删除旧索引然后重新创建同一索引的方式重建聚集索引,是一种昂贵的方法,因为所有二级索引都使用聚集键指向数据行。如果只是删除聚集索引然后重新创建,则会使所有非聚集索引都被删除和重新创建两次。一旦删除聚集索引并再次重建该索引,就会发生这种情形。通过在一个步骤中重新创建索引,可以避免这一昂贵的做法。在一个步骤中重新创建索引时,会告诉 SQL Server 要重新组织现有索引,避免了删除和重新创建非聚集索引这些不必要的工作。该方法的另一个重要优点是可以使用现有索引。第3章 系统实施3.1程序实现程序实现主要是代码在编译器中运行得到的结果,管理员输入学号,考试编号或班号通过与数据库进行连接进行成绩的查询。实现具体功能窗口如图所示:图3.1成绩信息查询窗体图成绩信息查询窗体代码如下:Private Sub Form_Load()Set ResultQuery = New OpenRsResultGrid.FormatString = |学号|姓名|班号|课程编号|课程名称|考试编号| 分数ResultQuery.rsDK1 select s.student_id,student_name,class_no,c.course_no,course_name,exam_no,result from result_info r inner join student_info s on r.student_id=s.student_id inner join course_info c on r.course_no=c.course_noIf ResultQuery.rs1.EOF Then ResultGrid.Clear ResultGrid.FormatString = |学号|姓名|班号|课程编号|课程名称|考试编号|分数Else Set ResultGrid.DataSource = ResultQuery.rs1 ResultGrid.FormatString = |学号| 姓名|班号|课程编号|课程名称|考试编号|分数End IfResultQuery.rsDK1 select * from class_infoWhile Not ResultQuery.rs1.EOF cboClassNo.AddItem ResultQuery.rs1!Class_no ResultQuery.rs1.MoveNextWendResultQuery.rsDK1 select distinct course_name from course_infoWhile Not ResultQuery.rs1.EOF cboCourseName.AddItem ResultQuery.rs1!course_name ResultQuery.rs1.MoveNextEnd Sub前台VB与后台SQL数据库的类初始化连接代码如下:Private Sub Class_Initialize() On Error GoTo DbnotOpen Set cnSIMS = New ADODB.Connection With cnSIMS .Provider = conProvide .ConnectionString = conString .ConnectionTimeout = 10 .Open Set rst = New ADODB.Recordset End With Exit SubDbnotOpen: If Err = - Then Set cnSIMS = Nothing MsgBox 连接后台数据库失败! & vbCrLf & vbCrLf & 请检查配置是否完好,数据库Sims_four是否存在?, vbOKOnly + vbInformation, 学生信息管理系统 End End IfEnd Sub3.2数据库实现数据库实现通过数据字段、关系图、存储过程和触发器实现等各部分的功能实现的。1.数据字段 :通过班级信息表,课程信息表,成绩表可以清楚的了解班级的班号、年级编号、班主任编号、课程名称、课程类型、考试分数等信息。 表3.1班级信息表序号TableName(表名)FieldName(字段)FieldType(字段类型)IsPrimaryKey 1为主键1class_Infoclass_Nochar(3) NOT NULL1 2class_Infograde_Nochar(10) NULL 0 3class_Infouser_idvarchar(10) NULL 0 表3.2课程信息表序号TableName(表名)FieldName(字段)FieldType(字段类型)IsPrimaryKey 1为主键1course_infocourse_Noint NOT NULL1 2course_infocourse_Namevarchar(30) NULL 0 3course_infocourse_typechar(20) NULL 0 4course_infocourse_desvarchar(60) NULL 0 表3.3成绩信息表序号TableName(表名)FieldName(字段)FieldType(字段类型)IsPrimaryKey 1为主键1gradecourse_infograde_Nochar(8) NULL 0 2gradecourse_infocourse_Noint NULL 0 2.关系图:以关系型为目标将E-R实体图中概念模型映射为关系模型,如图所示:图3.2系统关系图3.存储过程程序及其功能:存储过程 my on 作用:将VB从客户端得到的值通过输入参数传递到存储过程,再通过存储过程将数据写入要修改的表中Create procedure my on student(student_name char(50) student_id char(8), address char(200), tele_number int(8), minzu char(20), department char(50), student_gender bit(1), birth_date datetime(8) AS Insert into 学生基本信息(student_id,student_name,gender, birth_date)values(student_id,student_name,gender,birth_date)Insert into 学生更多信息(minzu,birth_date,department )values( minzu,birth_date,department) GO4.触发器程序及其功能:触发器,对于“学生基本信息”表中的插入操作进行计数,从而动态统计学生的人数。CREATE TRIGGER tr_1 ON student after INSERT AS update 学新人数 set 人数 = 人数+1 Go当每进行完一次插入操作后,触发器更新人数信息,使其自加一 CREATE TRIGGER tr_2 ON student after delete AS update 学新人数 set 人数 = 人数-1 当每进行完一次删除操作后,触发器更新人数信息,使其自减一。程序通过读取表“学生人数“中的数据来得到当前本系统所

温馨提示

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

评论

0/150

提交评论