管理信息系统实验报告_第1页
管理信息系统实验报告_第2页
管理信息系统实验报告_第3页
管理信息系统实验报告_第4页
管理信息系统实验报告_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1、学生学号 实验课成绩学 生 实 验 报 告 书实验课程名称开 课 学 院指导教师姓名学 生 姓 名学生专业班级学年 第 学期实验项目名称系统分析实验者专业班级同组者实验日期一、 实验目的、意义1) 熟悉业务流程图、数据流程图、数据字典的绘制。2) 树立正确的系统分析思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。3)针对一个企业应用软件系统,运用系统分析的过程与方法,结合一个模拟或真实企业的业务过程,分析该软件的业务处理过程及软件功能,复习、巩固、管理信息系统的系统分析知识,提高系统分析实践能力。二、 实验基本原理与方法 系统分析思想,软件工程的基本原理和方法三、 实验内

2、容及要求选择一个工业企业或较能全面反映系统分析全过程的实际案例,对以下内容进行全面讲解。 1)企业概述与组织结构分析 2)业务流程图 3)数据流分析 4)数据字典 5)系统分析报告四、 实验方案或技术路线(只针对综合型和设计型实验)1)业务流程图2)数据流程图3)功能分析图4)数据字典5)数据加工处理的描述五、实验原始记录(可附加页)(程序设计类实验:包括原程序、输入数据、运行结果、实验过程发现的问题及解决方法等;分析与设计、软件工程类实验:编制分析与设计报告,要求用标准的绘图工具绘制文档中的图表。系统实施部分要求记录核心处理的方法、技巧或程序段;其它实验:记录实验输入数据、处理模型、输出数据

3、及结果分析)学生信息管理系统设计(一)、需求分析随着社会的进步,各种信息量也逐渐增加,包括在学校内,对学生的信息管理就是一个很重要的环节。对于新录入的学员要及时增添其相关信息到学校数据库,而对于已经毕业的学员也要及时删除。同时,在校学生的信息还可以随时进行更新编辑,以便保证数据的完整性和正确性。此学生信息管理信息系统是面向大学的管理系统,其目的是对学校内的学生,班级,系和学会进行统一有序的管理。1)系统涉及到的各实体以及实体之间的关系如下:学生学号, 姓名,性别,宿舍区, 班号,系号, 学会名班级班号,人数,入校年份,系号系 系号,系名 ,系办公室号 ,人数学会学会名,人数,成立年份,地点经过

4、分析,有两个问题:学会和学生之间是多对多的关系 学生,班级和系形成了循环的主外键的关系,这对于级联删除和级联插入时会出现问题。所以,最终将各个实体表整合如下:学生学号, 姓名,性别,宿舍区, 班号班级班号,人数,入校年份,系号系 系号,系名 ,系办公室号 ,人数学会学会名,人数,成立年份,地点学会成员学号,学会名2)面向的对象有后台管理员和前台注册的用户,他们的权限也不相同,权限范围如下:管理员权限:注册成为管理员后,可以对系,班级,学生,学会以及学会成员分别进行添加,删除,查询和修改,只要符合条件和逻辑便可以将数据写进数据库中,并保证数据没有冗余。同时可以对自己的密码进行修改。普通用户权限:

5、注册成为普通用户后,可以对每个学生的综合信息进行查询,但不能进行添加,删除以及修改操作。进行查询显示的信息使用的是视图,是将学生,班级,系,学会成员四张表进行连接生成的。同时,用户同样可以对自己的密码进行修改。3)存储过程的应用:在普通用户进行信息查询的时候使用了存储过程,用于显示所有学生的相关信息,是基于视图操作的。4)触发器:触发器应用在普通用户注册上,当用户注册的用户名为“管理员”或者是“admin”时,自动在用户名前加上“user_”以便产生歧义。其组织结构图如下:相关数据流图如下(1)管理员活动流图:(2)普通用户数据流图:数据字典:(1) 数据结构:学生含义说明:定义了一个学生的信

6、息结构:组成:学号, 姓名,性别, 出生年月,宿舍区, 班号,系号,学会名数据项:学号含义说明:唯一标识一个学生类型:整型长度:4(2) 数据流:管理员对所有信息进行管理以及普通用户对信息进行查询说明:表示每一位登录者的操作(3) 处理过程: 各项操作(4) 定义一个视图,用于显示普通用户查询的学生信息(5) 定义一个存储过程,用于对视图中的学生信息进行查询(6) 定义一个触发器,用于对普通用户注册的限制,有些用户名不能注册(二)、结构设计1概念结构设计根据需求,得到的e-r图如下:2.逻辑结构设计:根据以上e-r图可得一下关系模型:学生(学号, 姓名,性别,宿舍区, 班号,系号, 学会名)班

7、级(班号,人数,入校年份,系号)系 (系号,系名 ,系办公室号 ,人数)学会(学会名,人数,成立年份,地点)属于(学号,班号)拥有(班号,系号)加入(学号,学会名)经过化简合并后得到最后的关系模型:学生(学号, 姓名,性别,宿舍区, 班号)班级(班号,人数,入校年份,系号)系 (系号,系名 ,系办公室号 ,人数)学会(学会名,人数,成立年份,地点)学会成员(学号,学会名)根据以上关系,建立各表如下:学生:班级:系:学会:学会成员:管理员,用户登录信息:关系图如下:六、实验结果与讨论通过本次课程设计,我在很多方面都有了提高。首先,我掌握了visual s 2005和sql se

8、rver2000两个软件的基本使用,可以将自己学到的理论知识借助工具应用到实践。其次,我又接触了另一种语言,拓宽了我的知识,可以以不同于以前的方式制作网页,创建网站。在编程上有了进一步的提高,对于编程的格式以及一些编程思想都有了相应的提升。在数据库方面,尤其巩固了sql语句,可以实现增删查改的功能,能编写存储过程,触发器,并能正确的将其应用到程序中;在对各个表的分析过程中,充分利用e-r图,可以将各种关系冗余去除。另外,了解了项目开发的各种工作步骤和流程,可以独立完成一个中小型项目,提高了动手能力,学会了自己学习一种陌生的语言,并在思想上有了项目的概念,对以后的学习和工作都十分有帮助。在实验过

9、程中也遇到了一些问题,但或经过和同学讨论,或自己研究,或上网查询,最后都将问题一一解决了,这点又让我对自己有了进一步的肯定,所有问题都是可以解决的,只要肯努力。总之,这次的课程设计真的让我获益匪浅。 实验项目名称系统设计实验者专业班级同组者实验日期一、 实验目的、意义1)熟悉代码设计、数据存储设计、输入输出设计等环节。2)进一步树立正确的系统设计、实施思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力二、 实验基本原理与方法 软件工程的基本原理和方法。三、 实验内容及要求结合实验2中系统分析的案例,对以下内容进行全面讲解。代码设计、数据存储设计、功能结构图设计、处理流程图设计

10、、输入输出设计等。讲解内容包括基本原理、使用工具、工具的使用及注意事项等。四、 实验方案或技术路线(只针对综合型和设计型实验)1)功能结构图设计2)新系统信息处理流程设计3)输出设计(主要指打印输出设计)4)存储文件格式设计(数据库结构设计)5)输入设计(主要指数据录入界面设计)6)代码设计(职工证号和部门代号)7)程序设计说明书五、实验原始记录(可附加页)(程序设计类实验:包括原程序、输入数据、运行结果、实验过程发现的问题及解决方法等;分析与设计、软件工程类实验:编制分析与设计报告,要求用标准的绘图工具绘制文档中的图表。系统实施部分要求记录核心处理的方法、技巧或程序段;其它实验:记录实验输入

11、数据、处理模型、输出数据及结果分析)学生成绩信息管理系统(一)、需求分析学生成绩管理是高等学校教务管理的重要组成部分,其内容较多,为了简化设计,要求设计的管理系统能够完成以下几种功能:(1) 学生注册登记;(2) 登记学生成绩;(3) 修改学生成绩;(4) 打印一个班级学生的单科成绩;(5) 求出每个学生一学期中各科的平均成绩;(6) 打印某一课程成绩处于指定分数段内的学生名单;(7) 学生可以查询自己的成绩。1、数据模型数据模型的三个因素为数据对象、属性以及关系。用实体-关系图来建立数据模型。确定系统实体:首先分析学生成绩管理系统的用户要求,找出该系统应该包括的实体。显然,学生、课程和成绩都

12、是系统的实体,并且可以初步定义它们的属性。管理员虽然是系统的用户,但其信息与系统处理无关,因此不用作为实体。另外,由于成绩信息包含了选课信息,因此选课信息不用单独记录。最终,确定系统的实体是学生、课程和成绩。接着,我们分析这些实体之间的关联关系。从实际情况得知,一个学生可以选多门课程,一门课程也可以有多个学生选修,但每个学生选一门课程必须有一个成绩。根据上述分析,我们得到如图所示的实体关系图。实体属性定义:学生:学号、姓名、性别、出生年月、名族、入学年月、班级课程:课程编号、课程名称、课程学分、课程类别、课程学时成绩:学号、课程编号、分数、考核日期图2-1 学生实体属性图2-2 课程实体属性图

13、2-3 成绩实体属性图2-4 实体-关系图2、功能模型用数据流图来建立功能模型。本系统涉及到的业务工作主要是:学生管理、系别管理、成绩管理和课程管理等方面,系统界面可以分为管理员界面和普通用户界面,整个系统划分为下面的信息:学生基本信息(学号,姓名,性别,出生年月等);学生成绩(学号,姓名,各科成绩等);学生课程信息(学号,姓名,考试课程名)。教务人员或管理员进入管理界面后,可以输入学生的基本信息、成绩和课程信息,而学生进入普通用户界面后可以查询自己的成绩,整体数据流图如图2-5所示图2-5 整体数据流图对上面的学生成绩管理模块展开如下图2-6所示。图2-6 学生成绩管理展开后的数据流图对查询

14、学生成绩展开如下图。图2-7 查询部分的数据流图绘制第0层dfd的时候,将整个系统看成一个加工,然后找出作用于该加工的外部实体,以及相应的数据输入和输出。对于学生成绩管理系统而言,整个系统就是一个加工学生成绩管理。从用户的需求描述可知,教务人员是数据的源点,学生是数据的终点。另外,教务人员需要录入学生信息、课程信息和成绩,说明学生信息、课程信息和成绩是数据流;同样,查询请求和查询结果也是数据流。根据上述分析,得到如图所示的第0层dfd。绘制下一层数据流图时,细化第0层的加工学生成绩管理,从而描述系统的主要功能。从第0层dfd得知,学生信息是教务人员需要录入的一个信息,因此加入一个加?quot;

15、录入学生信息,同样得到录入课程信息、登记成绩两个加工。另外,数据流查询请求和查询结果应该由加工查询成绩来完成。这样,我们用录入学生信息、录入课程信息、登记学生成绩和查询学生成绩四个加工代替第0层的学生成绩管理,同时增加这些数据流对应的数据存储,即学生、课程和成绩,最后得到如图所示的第1层dfd。为了继续进行分解,我们分析第1层dfd中的加工查询学生成绩。学生查询成绩时需要提供合法性检查,因此,查询学生成绩可以分解为合法性检查和查询成绩两个处理步骤,从而形成如图所示的第2层dfd。3、 行为模型用状态转换图来建立行为模型。在学生成绩管理系统中,学生成绩信息需要采取安全措施,我们可以采取登录方法避

16、免非法使用系统。这样,该系统存在登录、正常和出错等状态的转换。启动系统之后,系统处于登录状态。在这种状态下,学生或管理员可以进行登录或取消登录。如果取消登录,系统直接退出;如果登录失败,系统进入出错处理状态,在显示错误信息后,又重新回到登录状态;如果登录成功,系统进入正常 状态,即显示操作界面(管理员操作界面或普通用户操作界面),当用户退出。系统整体的状态转换图如图2-8所示。图2-8 状态转换图(二)、概要设计1 学生成绩管理软件的数据结构学生成绩一般都是以班级为单位进行管理的,一个班级用一个结点来表示。考虑到插入和删除的方便,这些以班级为单位的结点用链表方式组成一个主目录。每个结点有四个域

17、:(1) 班级代号;(2) 课程情况;(3) 学生情况;(4) 班级顺序链。课程情况应能反映出大专生所学过的全部课程。因课程是逐年增多的,所以采用链表结构以便能不断插入新的课程。该班学过的课程构成一个课程链表,所以班级结点中的课程情况用课程链表表示。学生情况主要反映学生的学号,姓名,每学期学生的成绩情况。因为学号总是顺序排列的,所以选用一个结构体数组作为反映学生情况的登陆记表。该数组的下标值接上班级结点中的班级号就是学号。例如,设每班学生数不超过40个人,班级号为9612,某学生在登记表中相应分量的下标值为26,则该学生的学号为961226。另外,学生成绩管理要分6个学期,所以在学生登记表中,

18、开设6个指针域,每个指针指向该生某学期某门课程学成绩的结点。各结点结构如下所示:(1) 主目录中班级的结点为:班级号 课程链 班级顺序链 学生登记表(2) 课程链表中的结点:课程代号 学期号 二叉树链 课程顺序链(3) 分数链表中的结点为:左链 学号 课程代号 成绩分数顺序 右链为了便于登记和查询学生的成绩,选择二叉排序来存放学生的成绩。每个班级的每门课程对应一棵二叉树。通过主目录中班级结点的课程链找到指定的课程结点,再通过课程结点中的二叉树指针指向该门课程的成绩二叉排序树。另外通过主目录中班级结点的学生登记表中的学期指针,指向该学生本学期某门课程的分数结点,并以分数结点的分安数顺序链勾链该生

19、各门课程的成绩。在登记成绩和查询分数时,都要用到课程代号。课程代号和课程名称是一一对应的。为了简化程序,课程名称和代号对照表设计为一个向量,向量的下标值就作为课程代号,而向量中的元素就是课程名称,这样可以省去代号域。1 各模块的功能和实现学生成绩管理的相关功能由对应的函数来实现。(1)用户登陆用户进入登陆界面后,输入账号密码,系统会连接到数据库进行验证,若为管理员,则进入管理员界面,执行相应的操作;若为普通用户(学生),则进入普通用户界面。(2) 学生注册登记学生入学后,首先应是注册登记。从登陆界面可以进入注册界面,注册时应先检查该学生所在班级是否已经登入主目录,未登入则若调用新结点后登陆入主

20、目录。然后将新调入的班级结点中对应域赋初值,最后再读入学生的学号和姓名并一一填入学生登记表。这样就完成了一个班级的注册和登记工作。(3)登记学生成绩学生注册后才可以登记成绩,所以先要检查这个班级是否已经注册,班级中是否有这个学生。在确认有此学生后,登记该生成绩。这时需完成两个操作。一个查询课程代号,另一个是将成绩填入二叉树。这两个操作分别用两个函数来实现: 查询课程代号; 插入二叉排序树。有了这两个函数,登记学生成绩的工作可以很方便地完成。首先查处课程代号,调用课程结点,填入课程代号和学期号;再在二叉树链域中置初值为null,将课程结点插入为课程链表的头结点。接着读入每个学生的学号和成绩,每个

21、学生的每门课程都生成一分数结点插入到相应课程的二叉树中。同时,还要将该分数结点链入该生这学期各科成绩的分数链表中。学生登记表中的学期指针域中存放该分数链表的头结点地址。(4)修改学生成绩若登记的学生成绩有错误,则调用修改学生成绩的函数便可以加以修改。修改时从主目录出发,查到班级,再从学生登记表中查对学号和姓名,再在与学期匹配的学期指针域中取得该生的学生链表的头指针,然后搜索分数链表,查到指定课程的分数结点,就可修改成绩。(5)打印一个班级学生的单科成绩由于学生成绩是用二叉树排序树来存储的,所以采用中序遍历的方法就可以按次序打印出学姓名和成绩。在打印了程序中,从主目录开始查到班级号,就可以从课程

22、结点的二叉树链域中取得成绩二叉排序树的头指针;然后调用中序遍历了程序就可进行打印,同时可求出平均成绩和各个分数段的人数。求出每个学生一学期中各科的平均成绩此了程序从主目录查对班级号开始,通过学生登记表中每个学生的学期指针取得各自的分数链表的头指针。顺着分数链就可求出该生本学期各科的平均成绩。打印某一课程成绩处于指定分数段内的学生名单对二叉树序树进行中序遍历,但遍历时应判断当前成绩是否处于分数段内而决定是否打印。(6)学生查询成绩学生从登陆界面输入账号密码后,系统连接到数据库检查该用户是否注册等信息,若信息正确,则进入普通用户界面,然后调用查询函数即可查看成绩。由以上分析,学生成绩管理系统可以分为三个模块:用户登录及注册模块、普通用户功能模块、管理员功能模块,如图3-1所示,管理员可以完成学生成绩的登记、修改、打印功能,而学生可以完成成绩的查询功能。图3-1 系统总体结构图(三)、详细设计系统总体流程图如图4-1所示。图4-1 系统总体流程图系统的部分模块设计流程图如下,其中矩形代表“处理”,菱形代表“选择”,箭头代表“控制流”,圆代表“连接”。图4-2 登录

温馨提示

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

评论

0/150

提交评论