武汉科技大学城市学院课程设计报告课程名称信息系统分析与设计题目教材管理系统学部信息工程学部专业信息管理与信息系统班级信管(1)班姓名李明指导教师彭璐2011 年11 月20 日课程设计评分表信息系统分析与设计课程设计任务书题目:学生在校学习的数据库系统设计1.课程设计教学条件要求:VISO+界面设计语言(JAV A/VB/HTML)2. 课程设计任务1、设计内容设计一个学生在校学习的数据库系统设计,该系统的用户由一般用户和管理员组成,然后不同的用户拥有不同的权限,各自完成各自的管理功能,首先是欢迎页面,然后选择登录,登录的时候首先要判断用户的身份,合法的用户然后进入到系统主页面中,不同的用户看到不同的系统功能。
用sql server2000创建后台数据库,然后利用程序设计语言(JSP)编写程序实现对数据库的操作,按照要求完成所有的功能和模块。
2、学生在校学习的数据库系统设计主要功能(1)用户管理:用户登录页面(2)管理员管理:学生教师主管部门数据存储:课程表点名表教师情况成绩统计表成绩表数据流:选课记录课程成绩表学生名单缺课记录3、学生在校学习的数据库系统表单(可以按照需求增加)Teacher(Tno,Tname,Tsex)Stu_BaseInfo(Sno,Sname,Ssex,Classroom)Department(Dno,Dname)Course(Cno ,Cname,Period,Semester)Classroom(CLno,,Clname,Depart)Grade(Sno,Cno,Grade)Teaching(Tno,Cno)3、课程设计报告书主要内容:1、需求分析:包括系统概述,具体分析,用户需求等需求描述2、系统概要设计:包括系统用例图、系统结构图、数据定义3、详细设计:包括系统设计系统设计方案,对应的类的设计,界面设计关系4、测试方案:包括黑盒测试,单元测试压力测试等不同设计方案的选择5、课程设计体会:6、参考文献:按正确格式列出3篇以上的参考文献4. 课程设计要求(1)学生按时到课程设计指定地点签到,遵守课程设计纪律。
(2)学生独立完成课程设计任务。
指导教师分时段验收学生完成的阶段任务。
(3)学生按时提交课程设计成果和打印的课程设计报告书5.课程设计参考资料[1] 张海藩.软件工程导论.北京:清华大学出版社,2009[2] 毕硕本,卢桂香.软件工程案例教程.北京:北京大学出版社,2009[3] [美]Echel,B C#编程思想(第三版).北京:机械工业出版社,2005撰写者:伍永豪指导导师:彭璐目录1需求分析: (1)1.1系统概述 (1)1.2具体分析 (1)1.3用户需求 (2)2系统概要设计: (3)2.1系统用例图如下: (3)2.2系统结构图: (3)2.3数据定义: (5)3详细设计: (6)3.1数据处理封装图: (7)3.2系统设计: (9)4测试方案: (13)4.1黑盒测试 (13)4.2连接数度测试: (13)4.3负载测试 (14)4.4压力测试 (15)5课程设计体会 (16)6参考文献 (18)1需求分析:1.1系统概述开发教材管理系统的目的就是充分利用计算机和现代办公软件,摆脱传统办公工具,用计算机实现集中方便的管理工作,把学校教材科的工作人员从繁重的体力劳动中解脱出来以达到提高工作效率和质量,最终实现教材管理的全面自动化为和现代化。
因此系统主要实现教材管理信息的入库、出库、需求的输入等;教材管理各种信息的查询、修改等;教材采购报表的生成以及各系各部门的教材需求管理等需求分析是数据库设计的基础,其错误将影响到整个设计。
需求分析也是令设计人员感到最繁琐和困难的一个阶段;设计任务:调查应用领域,对各种应用的信息要求和操作要求,进行详细分析,形成需求分析说明书。
当系统管理员想进入系统时,在登录窗体中输入用户名和密码,点击确定按钮,就可进入教材管理系统的主窗体界面,主窗体界面,管理员就可以进行如下的工作:(1)通过订书单来确定所需要的订书。
(2)把订书单和库存做比较得出还需要订阅的书的名称、数量等。
(3)把所需要订阅书导出到订书表,通过订书表向各出版社订书。
(4)当所需要的书到货后,把它们存入库存,更新库存数据库。
(5)比较新库存和订书单,导出各学生,各班级,各系的发报表。
1.2具体分析1、系统管理模块:首先是对本系统的操作用户设置权限以及用户基本信息的添加、修改、删除其次是设置有系统初始化,能够在系统出现问题或者有大量错误、冗余数据时进行初始化设置,使系统恢复期初始状态;2、书费管理模块:财务科根据学生订书情况和教材费用收缴学生订书费用,并记录相应的数据;3、教材出入库模块:教材科根据学生订书数量和教材基本信息想学生发放教材的出库管理和向书商下达供书订单并打印教材报表,便于用户直接查看;4、综合查询模块:根据用户的类型和需求查询教材的库存信息,班级信息以及费用收缴信息;5、统计分析模块:录入班级信息闭和教师单位信息并设置打印报表功能供用户查看然后操作员根据订书情况统计分析学生买书的人数比例和学生不购买教材的原因分析,一次给校方提供相应的数据,便于改进学校的教材管理措施,满足学生对教材的需求;6、帮助模块:介绍本系统的相关信息和操作指南。
1.3用户需求普通用户:主要分为学校的学生和老师。
可以通过查询了解本系统内相关教材的信息,可以通过客户端直接订购教材。
管理员:可以对教材信息进行添加、删除、查询、修改等功能。
可以添加、删除普通用户,修改用户信息。
管理书籍信息、书费信息、出入库信息、单位信息以及库存信息2系统概要设计:2.1系统用例图如下:该图介绍系统的主要用户所能完成的主要功能,同时也对系统的主要功能进行了介绍,以便用户能准确的了解系统的主要信息。
管理员图2.1系统用例图2.2系统结构图:该图从宏观的角度介绍了系统的各个功能模块,然后逐步细化,将系统各个功能一一展开,使用户对系统的信息有一个整体的了解。
图2.2系统结构图2.3数据定义:1数据库定义:介绍系统所含有的表,以及表的字段等相关信息,通过此图,可以宏观的了解系统的各个表之间的关联。
图2.3数据库结构图2数据库字段说明:以下的表格是对系统内各表的字段的详细说明,通过这些表格可以对数据库内的各个表的基本信息有一个整体的了解。
表2-1 Teacher表结构Teacher Tno Tname Tsex表2-2 Stu_BaseInfo表结构Stu_BaseInfo(Sno)Sname Ssex表2-3 Course表结构Course课程编号(Cno)课程名字Cname上课时段Period表2-4 Classroom表结构Classroom表单:主要字段有教室编号(CLno)、教室名字(Clname)、地点(Depart)、表2-5 Grade表结构Grade表单:主要字段有学生编号(Sno)、课程编号(Cno)、年级(Grade)表2-6 Teaching表结构Teaching表单:主要字段有教师编号(Tno)、课程名(Cno)3详细设计:根据以上的概要设计对本系统的问题描述、系统模块的规划、系统结构的设计以及对数据库的设计,其系统的规划就比较清晰了。
此系统的设计语言我采用了jsp+strust+jdbc的设计模式。
使用现在比较流行的三层结构模式架构。
此系统采用mvc模式进行设计,以此其中包含了大量的数据处理类,在这里我也无法给予具体的定义,只能描述其大概的功能,我将采用简单的图形表示一个类,只是给出相应的说明;由于并要求编码实现,所以对于具体的界面也就是视图,在这里只做简单的描述,对于各个页面的布局和规划我无法阐述清楚,在这里我将使用一个简单的图形予以表示,其基本的功能我将给予简单的说明。
对于控制器,我也只能用一个图形表示,具体的功能只要看图与图之间的联系就一目了然。
所有的具体设计图示如下:3.1数据处理封装图:1,查询类的封装:这些类负责处理用户所需要的报表,这些类分别提供了一些方法处理用户所需的数据查询操作。
图3.1查询封装图2,数据库表处理的类的封装:在下图中所示的静态图中,connection类负责专门连接数据库并且被其他数据库表处理类使用。
userCommand类负责处理针对user表的所欲操作,此类提供了七个公有方法供其他类或方法来调用以处理与user表的交互。
类似的我还编写了针对book表和user表的类,用以处理对这两个表交互。
由于篇幅所限其他的几个表在这里略去,当实现的方法与上面提供的几个类类似。
图3.2数据库结构封装3.2系统设计:1,总框架图:描述了系统的基本结构和模块之间的调用关系,在下图中所示的反映了整个系统的模块间的关系,同样他也解释了与此系统相关的各个角色的使用权限。
如:普通用户只能查看教材的信息和修改个人的注册信息。
管理员则可以借此教材管理系统对教材信息进行添加、删除、修改、查询,以及对系统内各种用户的信息进行修改和删除操作。
图3.3总框架结构图1、分类设计图—BookManage:教材信息的显示页面图3.4分类设计图—BookManage3分类设计图—userManage:管理用户,设置用户的角色以及管理用户的权限。
图3.5分类设计图—userManage4分类设计图—DepartmentManage:管理单位信息,对单位信息进行显示和处理。
图3.6分类设计图—DepartmentManage5分类设计图—CostOfBookManage:书费管理,处理对缴纳书费和退还书费的处理。
图3.7分类设计图—CostOfBookManage6分类设计图—StorageManage:教材出入库管理:对教材的入库和出库进行处理。
图3.8分类设计图—StorageManage4测试方案:4.1黑盒测试主要验证系统的外在功能是否准确,在测试过程中要多次逐一验证系统的每一项功能,记录下系统的每次执行情况,将结果记录在表格一中。
在测试构成中要注意链接是否正确,图形是否正确显示、网页上显示的内容是否正确可靠以及整体的网站风格是否一致等等。
表4.1用例4.2连接数度测试:由于本系统是给予web的B/S系统,所以连接的速度是一项和重要的指标。
有些问题可能在单机上检测往往很正常,但一但上了服务器却会发生莫名其妙的问题。
因此必须将这样的问题在测试阶段加以解决。
在web应用技术中,数据库骑着重要的作用,数据库为web应用系统的管理、运行、查询盒实现用户对数据存储的请求等提供空间。
在web应用中,最常用的数据库类型是关系数据库,可以使用sql对信息进行处理。
而连接速度问题导致的问题往往会影响到数据库的查询。
在使用了数据库的web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误盒输出错误。