1、实 验 报 告课程名称: 软件工程实验项目: 网上图书销售系统姓 名: XXX专 业: 计算机科学与技术班 级: 计算机XXX班学 号: XXXX指导教师: XXX计算机科学与技术学院实验教学中心XXXX年XX月XX日目 录第一章: 需求分析31.1 可行性分析研究31.2 用户需求51.3 使用范围51.4 业务流程分析5第二章: 需求分析建模62.1实体-联系图设计62.2系统数据流图92.3数据字典10第三章: 概要设计123.1 系统模块总体结构设计123.1.1学生学籍管理系统的处理流程图: 123.1.2总体结构和外部模块设计13第四章 详细设计134.1 登陆模块设计134.2
2、主界面设计134.3 学籍管理模块设计184.3.1. 学生学籍管理系统的增加记录184.3.2学生学籍管理系统的删除记录184.3.3学生学籍管理系统的修改记录184.3.4学生学籍管理系统的查询记录18第五章: 测试与维护195.1 系统测试195.2系统的运行与维护19第六章 设计心得体会21第七章 参考文献22第一章: 需求分析学生学籍管理工作是学校管理工作的重要组成部分, 现在相当一部分学校的学生学籍管理工作仍沿用手工方式。随着学校规模的扩大、 学生人数的增加, 效率低下、 容易出错的手工方式越来越不适应实际管理工作的需要, 利用计算机技术和数据库技术设计开发学生学籍管理系统、 实现
3、学生学籍管理工作的自动化成为学生管理部门的迫切需要。学生学籍管理工作主要是学生基本情况的管理包括学生学籍变动的管理( 转入、 转出、 休学、 复学、 退学、 调班、 外出借读、 借读、 留级或跳级) 、 学生成绩的管理和教师基本信息管理和教课的管理, 主要包括数据输入、 修改、 删除、 追加、 查询、 统计和打印报表等功能, 学生学籍管理系统要能高效、 准确地完成这些功能, 并要达到界面美观友好、 使用方便。1.1 可行性分析研究经济上可行性: 现在, 计算机的价格已经十分低廉, 性能却有了长足的进步。而本系统的开发, 为学校的工作效率带来了一个质的飞跃, 为此主要表现有以下几个方面: 第一,
4、 本系统的运行能够代替人工进行许多繁杂的劳动; 第二, 本系统的运行能够节省许多资源; 第三, 本系统的运行能够大大的提高学校的工作效率; 第四, 本系统能够使敏感文档更加安全, 等等。另一方面, 就学校自身来说,它也是需要这样一个软件的。我们在计算机还没有普及之前,信息都必须经过在纸上填写来实现, 这样既浪费时间又容易出错,。随着信息时代的来临, 我们的各项工作都要讲求效率, 成绩和学籍管理也不例外, 这就为作者的软件提供了使用群体。因此, 本系统在经济上是可行的。技术上可行性: 当前,全国计算机越来越普及,几乎每个学校都配有计算机,为这套软件提供了硬件环境。以计算机为基础的管理系统使教师和
5、管理者摆脱了那种繁杂、 易错的记录及管理方式, 经过计算机以及配套的软件, 用户能够采用全新的方式从不同的地方存取各种信息。从客户/服务器方式上发展起来的框架结构为我们提供了开发本系统的基础。为了本系统的开发作者特对学校进行了深入的调查研究。学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。使用VB作为系统开发的开发软件, 它作为一种现代的编程语言, 提供完善的指令控制语句、 类与对象的支持及丰富的数据类型, 给开发高性能系统提供的保障为开发满足客户要求的系统, 保证了代码的模块化要求, 而代码模块化的提高, 非常有利于以后对新系统的扩展与修改。综上所述, 本系统的设计与开发在技
6、术上和硬件设备上的条件都是满足的, 因此, 它在技术上是可行的。运行上可行性: 本系统能够运行在各种操作系统之上, 就是说市场上流行的操作系统都能够支持。另外, 本系统为一个小型的学生学籍管理系统, 所耗费的资源非常的小, 学校的电脑无论是硬件还是软件都能够满足条件, 因此, 本系统在运行上是可行的。用户使用可行性:本系统的操作简单, 有计算机基础的人无需培训即可使用, 即使是没有计算机基础的人只需经过简单的培训就能够很熟练的使用本系统。系统运行后, 就用户方而言, 由于用户使用本系统时, 不会也不必关心系统内部的结构及实现方法, 即对用户来说是透明的, 因此本系统对用户而言, 是定位在界面友
7、好、 操作方便、 功能齐全的原则上的, 用户只需简单的用鼠标点击各界面上的选项卡或按钮就能执行相应的功能, 就管理者而言, 关心的是如何处理各种数据, 只要把用户的信息输入计算机, 管理者就可运行相应的后台程序进行处理。而以上的这些功能都能在所选择的开发环境中用所选择的开发工具来实现。因此说本系统在用户使用可行性上是没有问题的。因此, 它在用户使用上是可行的。1.2 用户需求此系统专门为高校学籍管理所设置, 用与教务处管理学生的学籍情况, 并进行相应的调整, 同时也可用于一些老师, 学生经过系统查询一些学生资料, 成绩等信息。系统主要用于管理学生信息, 管理学生从进校开始, 到毕业离校的一切学
8、籍变动的管理, 同时管理学生的成绩。因此需要设置用户权限, 分为一般用户和管理员, 管理员是系统的管理人员, 能够进行系统内的任何操作, 查询, 修改, 删除, 学生的学籍变动等操作。一般用户为访问系统用户, 能够是老师, 也能够是学生, 但权限上受到控制, 只能够查询一些资料, 如学生的档案, 学生的成绩等信息, 而不能对这些信息进行修改, 删除等操作, 更不能对学生的学籍变动进行调整等操作。1.3 使用范围本系统适用于教育界, 大学, 中学的学生学籍的管理, 它是比较完善的系统管理软件, 可对学生进行学籍管理, 成绩管理, 对学生的学籍能够随时输入、 输出、 查找, 调整, 经过本系统软件
9、, 能帮助教研人员利用计算机, 快速方便的对学生学籍管理进行管理、 输入、 输出、 查找的所需操作, 使散乱的人事管理能够具体化, 直观化、 合理化。因此此软件使用范围广, 开发的意图主要是为了教学办公室对学生学籍的管理更方便; 减轻管理人员的工作负担, 使学校的学籍管理工作能够更加的完善。1.4 业务流程分析首先, 由学生处根据学校相关规定和学生成绩招录新生, 并建立新生入学档案和修改学籍管理信息中的数据。接着有教务处组织编排班级和组织教师进行教学。完成一学期的教学后, 由教务处组织学生进行期末考试, 并对学生期末成绩进行统计和分析。再由各系根据教务处统计分析的结果评定奖学金、 填制成绩单。
10、最后再由学生处根据教务处统计分析的学生成绩结果修改学籍管理信息。并最终完成毕业学生的毕业登记、 填制毕业登记表和修改学籍管理信息。第二章: 需求分析建模2.1 实体-联系图设计学生实体E-R图学 生学号性别出生日期家庭地址姓名班级图2-1学生实体E-R图学生转出实体E-R图学生转出学号时间新转入的学校名转出备注原因图2-2学生转出实体E-R图学生休学E-R图休学学号时间原因备注图2-3学生休学实体E-R图学生复学实体E-R图复学学号新学号新的班级号时间学期原因备注图2-4学生复学实体E-R图学生退学实体E-R图退学学号时间原因备注图2-5学生退学实体E-R图学生外出借读实体E-R图外出借读学号
11、时间原因学校名备注图2-6 学生外出借读实体E-R图学生调班实体E-R图调班学号原来班级调入班级原因姓名备注图2-7学生调班实体E-R图学生留级( 跳级) 实体E-R图留级( 跳级) 学号新学号新的班级年时间原因备注图2-8学生留级( 跳级) 实体E-R图各实体之间的E-R图转出休学复学退学外出借读留级( 跳级) 调班学生图2-9各实体之间的E-R图2.2 系统数据流图总体数据流图 2-1当管理员使用系统时的数据流图 2-2 学生使用时的数据流图 2-32.3数据字典 数据流名称: 管理员登录信息 简 述: 管理员登录用户信息数据流来源: 管理员 数据流去向: 管理员信息判断 数据流组成: 管
12、理员用户名+密码 数据流名称: 学生信息 简 述: 对学生的信息进行查询, 增加, 修改, 删除处理数据流来源: 对学生信息进行的各种操作 数据流去向: 学生信息 数据流组成: 学号+姓名+所在班级+所在年级+性别+出生年月+国家+省份+城市+身份证号码+是否在校 处理逻辑名称: 管理员登录信息判断 简 述: 判断管理员的登录信息是否正确输入的数据流: 管理员登陆信息 处理描述: 根据用户提供的管理员信息, 判断该信息是否正确, 如果正确, 则能够进行下一步操作, 否则返回。 输出的数据流: 管理员登录信息 处理逻辑名称: 查看学生信息 简 述: 查看学生的个人信息输入的数据流: 学生信息 处
13、理描述: 根据提供的学生的初步信息, 查询学生的全面信息 输出的数据流: 查询的信息 处理逻辑名称: 增加学生信息 简 述: 增加学生的个人信息输入的数据流: 学生信息 处理描述: 根据提供的学生的初步信息, 增加一个学生的信息 输出的数据流: 学生信息 处理逻辑名称: 修改学生信息 简 述: 修改学生的个人信息输入的数据流: 学生信息 处理描述: 修改选中学生的各种信息 输出的数据流: 学生信息 处理逻辑名称: 删除学生信息 简 述: 删除学生的个人信息输入的数据流: 学生信息 处理描述: 删除选中的学生的信息 输出的数据流: 学生信息 处理逻辑名称: 学生登录信息 简 述: 学生登录用户信
14、息数据流来源: 学生 数据流去向: 学生帐号信息判断 数据流组成: 学生用户名+密码 数据流名称: 学生信息简 述: 学生的信息来源: 对学生自己的信息进行查询 去向: 学生信息查询 组成: 学生名+学生登录密码等 处理逻辑名称: 学生登录信息判断 简 述: 判断学生录信息是否正确输入的数据流: 学生的登录信息 处理描述: 根据用户提供的学生信息, 判断该信息是否正确, 如 果正确, 则能够进行下一步操作, 否则返回。 输出的数据流: 学生登录信息 处理逻辑名称: 查看自己的信息 简 述: 查看学生自己的各种信息第三章: 概要设计3.1 系统模块总体结构设计在登录窗口中是对使用系统人的身份的识
15、别, 如果是系统管理员, 则拥有修改、 插入、 追加、 删除、 保存数据的权利, 并可对能使用本系统人员进行管理。普通用户则只能进行查询、 打印、 页面设置、 打印预览等简单功能。在各个学籍管理和学籍变动管理窗口中都有对数据的备份功能。3.1.1学生学籍管理系统的处理流程图: 开始进入主界面退出Y退出N选择相关操作退出进行相关操作YN继续相关操作图3-1 学生学籍管理系统的处理流程图3.1.2总体结构和外部模块设计学生学籍管理系统学生学籍信息增加模块学生学籍信息删除模块学生学籍信息修改模块学生学籍信息查询模块学生学籍信息全部显示模块退出 图3-2 模块设计图第四章 详细设计4.1 登陆模块设计
16、系统登录模块主要完成对登录系统的用户进行验证, 只有合法的用户才能够进入系统。另外, 为了防止用户无限期地输入错误的用户名或密码, 在系统登录模块中增加了限制登录次数的功能。允许用户最多登录的次数( 这里为3次) , 如果超过, 则显示提示信息, 并结束应用程序。4.2 主界面设计主界面是应用程序的主体, 也是应用程序的门面, 它设计的好坏将直接影响用户的第一感觉, 如果主界面设计得很糟糕, 则不论应用程序的其它部分设计得多么细致, 用户都不能或不愿意使用它。因此, 在设计主界面时应保持界面的简洁性和明确性。学生学籍管理系统的主界面, 用户能够在主界面上选择增加记录、 删除记录、 修改记录、
17、查询记录、 显示全部记录、 退出6个操作。4.2.1登陆模块设计系统登录模块主要完成对登录系统的用户进行验证, 只有合法的用户才能够进入系统。另外, 为了防止用户无限期地输入错误的用户名或密码, 在系统登录模块中增加了限制登录次数的功能。允许用户最多登录的次数( 这里为3次) , 如果超过, 则显示提示信息, 并结束应用程序。如图4-1。图4-1 登录界面4.2.2 主界面设计主界面是应用程序的主体, 也是应用程序的门面, 它设计的好坏将直接影响用户的第一感觉, 如果主界面设计得很糟糕, 则不论应用程序的其它部分设计得多么细致, 用户都不能或不愿意使用它。因此, 在设计主界面时应保持界面的简洁
18、性和明确性。如图4-2。图4-2 主界面4.2.3 学籍管理模块设计该模块能够实现对现有学生学籍管理系统档案中的专业, 学号, 性别, 民族等学生基本信息的记载情况的查看, 而且能够对这些信息进行添加, 修改或删除。新生入学时能够添加学生的学籍信息, 等到毕业离校的时候能够删除这些信息。如图4-3。图4-3 学籍管理模块4.2.4 成绩管理模块设计该模块能够实现对学生成绩的录入, 修改, 而且能够添加课程名称。如图4-3。图4-3 成绩管理模块4.2.5 查询管理模块设计该模块能够实现对学生学籍和学生成绩的查询。能够经过一定条件的查找设置到符合条件的报表的数据源来实现打印等功能。图4-4 学籍
19、查询模块图4-5 成绩查询模块4.3 学籍管理模块设计该模块能够实现对现有学生学籍管理系统档案中的专业, 学号, 性别, 民族等学生基本信息的记载情况的查看, 而且能够对这些信息进行添加, 修改或删除。新生入学时能够添加学生的学籍信息, 等到毕业离校的时候能够删除这些信息。4.3.1. 学生学籍管理系统的增加记录学生学籍管理系统的增加记录界面, 用户能够在这里面填写所要添加的学生学籍信息。填写好所有信息后, 用户可点击确定按钮, 就把该学生的学籍信息录入到数据库中。若该学生的信息以录入到数据库中, 则出现如图5-3的画面。若还没录入到是数据库中, 则出现如图5-4的画面。点击退出, 则返回主界
20、面。4.3.2学生学籍管理系统的删除记录学生学籍管理系统的删除记录界面, 用户能够输入要删除学生学籍信息的学号, 若该学生是存在的, 则点击确定, 会跳出一对话框, 提示用户到底要不要删, 具体如图5-6所示, 点击确定, 显示删除成功, 如图5-7因此。若该学生是不存在的, 则会跳出一提示信息。4.3.3学生学籍管理系统的修改记录学生学籍管理系统的修改记录界面, 用户若想修改有错误的学生学籍信息, 可进入此界面。用户必须先输入该学生的学号, 然后点击查询, 就能够看到该学生的全部的学籍信息。用户若想修改, 可修改编辑框中的信息, 全部改好后, 点击修改。若填写的格式, 规范都符合要求, 就能
21、修改成功4.3.4学生学籍管理系统的查询记录学生学籍管理系统的查询记录界面, 用户若想要查看某同学的学籍信息, 能够进入到此界面中。输入想要查询学生的学号, 点击确定, 就能够查询了。若是该学号不存在, 则出现如图5-12所示。若存在, 就能够看到该学生的的全部学籍信息。4.3.5学生学籍管理系统的显示全部信息学生学籍管理系统的显示全部信息界面, 也就是在主界面上。用户想要查看全部学生的学籍信息, 可点击主界面上的全部记录按钮, 则能够在主界面的下方显示出数据库全部学生的学籍信息4.3.6学生学籍管理系统的退出界面 此界面就是主界面, 退出只是上面的一个功能按钮。用户进行各种操作后, 若想退出
22、学生学籍管理系统, 可点击主界面上的退出按钮, 就能推出本系统第五章: 测试与维护5.1 系统测试在开发本系统时, 为了使系统能够稳定运行, 对本系统进行了有针对性的全面测试, 采取的方式是: ( 1) 菜单项测试: 为了保证每一项下拉菜单能够正确实现系统设计的功能, 我把相关的基础数据, 基本上全部输入到本系统中, 并对每一个菜单项重复进行了增加、 删除、 修改等操作, 从而保证了菜单级功能的正确实现。菜单项包括: 系统管理菜单, 学籍管理菜单, 成绩管理菜单, 查询管理菜单。分别对其进行测试。( 2) 数据跟踪: 完成菜单项测试后, 我又对系统内的每一个数据进行了跟踪。经过实践证实, 说明
23、该功能完全正常, 对其它的功能模块也进行了类似的设置。( 3) 综合测试: 在以上测试的基础上对系统功能进行了整体的测试, 依次来检验系统功能是否符合系统设计的要求。 对本系统进行了重复多次的测试。已完全符合系统设计的要求, 测试成功。5.2系统的运行与维护 管理信息系统在完成系统实施、 投入正常运行之后, 就进入了系统运行与维护阶段。本系统运行: 首先启动Windows /XP, 将本系统拷贝到硬盘相应地目录下, 配置好数据库。运行”学生学籍管理系统.exe”即可。 系统维护的目的是保证管理信息系统正常而可靠地运行, 并能使系统不断得到改进和提高, 以充分发挥作用。换言之, 系统维护就是为了
24、保证系统中的各个要素随着环境的变化始终处于最新的、 正确的工作状态。系统维护的工作量往往是很大的, 其费用大约占整个生命周期的60%, 因此我们必须对系统维护给予足够的重视。1、 系统维护的内容 按照维护对象的不同, 系统维护的内容可分为以下几类: ( 1) 系统应用程序维护 ( 2) 数据维护 ( 3) 代码维护 ( 4) 硬件设备维护 2、 系统维护的类型系统维护的重点是系统应用软件的维护工作, 按照软件维护的不同性质, 能够划分为下面四种类型: ( 1) 纠错性维护: 诊断和修正系统中遗留的错误。( 2) 适应性维护: 使系统适用环境的变化而进行的维护。( 3) 完善性维护: 为满足用户
25、的需求而进行的维护。( 4) 预防性维护: 为将要发生的变化或调整而进行的主动性维护。 3、 系统维护的组织与管理系统维护工作, 首先必须建立一个维护组织, 确定进行维护工作所应遵循的原则和规范化的过程, 另外还应建立一套适用于具体系统维护过程的文档及管理措施, 以及进行复审的标准。根据系统维护的组织管理, 一般维护过程如下: ( 1) 维护人员提出维护个性建议或要求。 ( 2) 管理部门进行审批, 并对修改带来的影响作出充分的估计。 ( 3) 根据审批的修改方案进行相关的修改并作严格的测试。 ( 4) 更新文档资料的相关部分。 4、 本系统的维护模块本系统的维护功能主要是为保证系统能够正常的
26、运行。第六章 设计心得体会经过此次课程设计使我对软件工程有了更进一步的了解, 从中学到了不少东西。RUP( Rational Unfiend Process) 将软件工程划分为四个阶段包括: 初始阶段、 细化阶段、 编码与测试、 实施与维护。在初始阶段我们主要做的工作是编写可行性分析报告(可能涉及企业调研), 但由于条件限制, 并未参与企业调研工作; 接下来从获取的信息中抽取出关键字; 创立用例图, 用的工具为Jude画出用例图; 画出用例图后编写用例规约; 之后绘制类和对象的关系图(其中”_”代表私有的, ”+”代表公有的)用到的工具为Office_Visio_Pro_ ; 此阶段最后就是编
27、写需求规格说明书, 需求规格说明书的内容比较多, 花的时间也相对多些, 由于这个课程设计是一个精简的文档, 因此写的比较简略。细化阶段我们花的时间是最多的吧, 包括有: (概要设计、 详细设计、 数据库)说明书、 数据字典。我们采取分工形式进行编写文档, 可是我们此次设计比较简略, 写到的部分都不完善。详细设计是内容最多的, 当中设计页面设计部分, 由于时间有限做的也比较粗糙, 很多功能都不完善, 此处时序图省略了。 数据库说明书中的逻辑及物理模型图这里省略了, 用到的工具是Rational rose。经过Sybase.PowerDesigner工具还能够生产数据库表结构, 可是我们做的由于编
28、码方面没做因此生成表结构省略了, 数据字典我们做的也是文字说明。编码测试阶段, 我们编码实现由于此课程设计没做要求因此, 编码方面没做, 我们主要是编写此系统的文档部分, 因此测试只是以简单的文字进行描述, 而实际并未进行操作, 测试是在一个项目中很重要的环节, 它决定你的产品能否有效。实施与维护阶段, 我们这个系统并未完成, 因此没有实施和维护一说。但维护时长期的工作, 需要在客户实际使用中进行。这次课程设计我们大概花了1个多星期去准备文档, 小组成员的分工合作最终完成了这次课程设计。虽然不完善, 可是学到了很多东西, 这是我的收获。我个人觉得软件工程不是一朝一夕能学好的, 需要在以后的工作
29、中不断的去研究, 积累经验, 才能更好的做出完美的系统, 不论在系统花费时间和完善方面, 一份好的文档对此都是有益的。软件工程是非常重要的学科, 我也将不断的去学习。第七章 参考文献【1】林陈雷,郭安源,葛晓东.教育信息化系统开发实例导航M.北京,人民邮电出版社, .【2】张立科.数据库开发技术与工程实践 M.北京,人民邮电出版社, .【3】张红军, 王虹等.Visual basic 6.0 中文版高级应用与开发指南M.北京,人民邮电出版社, .【4】伍俊良.VB课程设计与系统开发案例M.北京,清华大学出版社, .【5】姚巍.Visual Basic数据库开发及工程实例M.北京,人民邮电出版社, .