《数据库系统》课程设计指导书.docx
《《数据库系统》课程设计指导书.docx》由会员分享,可在线阅读,更多相关《《数据库系统》课程设计指导书.docx(25页珍藏版)》请在冰豆网上搜索。
![《数据库系统》课程设计指导书.docx](https://file1.bdocx.com/fileroot1/2023-4/17/1fafeedf-638e-43dd-9cbe-a3aa92ea4803/1fafeedf-638e-43dd-9cbe-a3aa92ea48031.gif)
《数据库系统》课程设计指导书
《数据库系统》课程设计指导书
一、课程设计的目的和意义
《数据库系统》课程设计是实践性教学环节之一,目的是让学生在掌握数据库的相关理论知识后,将数据库与软件开发相结合,巩固课堂教学内容,使学生掌握数据库系统的基本概念、原理和技术,熟练掌握数据库设计和基于数据库的应用程序开发。
为此,课程要求学生选用主流DBMS,自选某种高级程序设计语言(如:
VC、ASP、jsp、java等),实现一个可在特定环境下正常运行的、规模较小但较为完整的反映数据库应用系统开发过程的系统。
二、设计要求:
掌握设计实现一个完整的产品化导向的数据库应用系统的流程和方法,包括需求分析、数据库设计、应用程序设计;熟练掌握两个主要环节——概念结构设计与逻辑结构设计;熟练的使用SQL语言实现数据库的建立、应用和维护。
熟悉对数据库的操作,包括数据库连接、SQL、完整性约束、索引,以及视图、触发器、存储过程等数据库对象的综合运用;加深对关系数据库、数据库设计、事务等理论知识的理解和掌握;提高学生对软件开发工具的掌握能力,增强学生的编程经验和交流能力。
分散安排2周(合计1周)的时间进行课程设计,以小组为单位,一般4~5人为一组。
采用自由分组、推选组长的形式,由班长将分组情况报到指导教师处,各小组的选题由各小组讨论决定。
要求如下:
(1)要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作。
(2)既要虚心接受老师的指导,又要充分发挥主观能动性。
结合课题,独立思考,努力钻研,勤于实践,勇于创新。
(3)独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计。
(4)课程设计期间,无故缺席按旷课处理;缺席时间达四分之一(两次点名未到)以上者,其成绩按不及格处理。
(5)在设计过程中,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按质、按量完成课程设计。
(6)小组成员之间,分工明确,但要保持联系畅通,密切合作,培养良好的互相帮助和团队协作精神。
三、课程设计选题的原则
课程设计题目以选用学生相对比较熟悉的业务模型为宜,要求通过本实践性教学环节,能较好地巩固数据库的基本概念、基本原理、关系数据库的设计理论、设计方法等主要相关知识点,针对实际问题设计概念模型,并应用现有的工具完成小型数据库的设计与实现。
具体选题见附录。
四、课程设计的一般步骤
课程设计大体分五个阶段:
1、选题与搜集资料:
根据分组,选择课题,在小组内进行分工,进行系统调查,搜集资料。
2、分析与设计:
根据搜集的资料,进行功能与数据分析,并进行数据库、系统功能等设计。
3、程序设计:
运用掌握的语言,编写程序,实现所设计的模块功能。
4、调试与测试:
自行调试程序,成员交叉测试程序,并记录测试情况。
5、验收与评分:
指导教师对每个小组的开发的系统,及每个成员开发的模块进行综合验收,结合设计报告,根据课程设计成绩的评定方法,评出成绩。
五、课程设计内容
针对某个给定的数据库应用问题,全面运用数据库原理课程所学知识,从系统需求分析着手,进行数据库的概念设计、逻辑设计,系统的总体设计和详细的模块设计,最后进行编程、调试。
此外在各个环节中提供相关的图表和文档。
下面是各个设计阶段的具体内容。
1.需求分析
需求分析是数据库系统设计的一个重要的环节。
本阶段应该对整个应用情况作全面的、详细的调查,确定特定数据库应用环境下的设计目标,搜集该应用环境下针对系统设计所需要的基础数据以及对这些数据的具体要求,从而确定用户的需求。
用户对数据库的需求包括:
(1)信息需求。
即在数据库中需要存储哪些数据。
应该根据具体的课题,认真分析有关的要求,确定本设计的信息需求。
(2)处理需求。
即用户要完成什么处理功能等。
在设计中应根据具体的课题要求,确定系统应该实现的功能,一些基本的功能通常是必须具备的,如用户的管理与维护,基本数据的维护,灵活的信息查询等。
系统功能的确定应该充分征求指导教师的意见。
(3)安全性和完整性功能。
这是一个需要与用户不断交流才能逐步确定的需求。
本课程设计不作具体要求,但要求学生在自己的设计中能反映出基本的安全性和完整性功能。
本阶段的设计结果(即系统需求分析)应该在课程设计报告中进行详细描述,作为本课程设计的验收依据之一。
2.数据库的概念结构设计
数据库的概念设计是在需求分析的基础上,利用与用户双方都能理解的形式,设计出数据库的概念模型。
本课程设计要求学生采用E-R方法进行数据库的概念设计。
本设计阶段可分为:
⏹数据抽象。
即根据需求分析的结果,抽取出与本课程设计相关的特性。
⏹设计局部概念模式。
运用E-R方法,设计出系统的各个局部E-R模型。
⏹设计全局概念模式。
通过对局部E-R模型的操作,解决各个E-R模型关于对象定义的不一致问题,以及对各个E-R模型进行合并等,最终形成数据库的全局概念模式。
本阶段的设计结果(局部和全局E-R图)应该在课程设计报告中进行详细描述,应该能够反映该设计的正确性。
3.数据库的逻辑结构设计
数据库逻辑设计的目的是将概念设计阶段设计好的E-R图转换成与具体机器上的DBMS(如SQLServer)所支持的数据模型(如关系模型)相符合的逻辑结构。
鉴于本课程设计的具体环境要求,学生在进行数据库的逻辑结构设计时应该充分考虑特定的数据库环境。
要求学生在本阶段的设计中分两步进行:
●形成初始的关系模式。
即概念设计阶段产生的全局概念模式(E-R图)转换成初始的关系模式。
●关系模式的规范化处理。
为了减少或消除关系模式中存在的数据冗余和操作异常,依据设计所要求的规范级别,按照本课程所学知识,逐一分析各个关系模式是否满足规定的范式要求,不满足的关系模式,应该通过所学的关系模式分解等手段加以改进。
基于关系模式的数据库的逻辑结构的有关描述应该在课程设计报告中给出。
对于每一个关系模式,应该说明其是否已经达到规定的规范要求。
4.系统的设计
运用结构化设计方法,合理设计出满足本课程设计的功能要求的系统结构。
考虑到课程设计的时间限制,简化了本阶段的设计任务要求,具体内容主要包括系统的总体结构设计和详细的功能模块设计,相关的接口设计等。
●系统的总体结构设计应该提供系统概要和完整的系统功能逻辑图。
●详细的功能模块设计应包含每一个功能模块的功能概述、模块的处理流程和特定的处理要求。
●相关的接口设计主要描述相关模块之间的接口信息,包括模块与数据库之间的接口和各个模块之间的接口。
在课程设计报告中应该提供本设计阶段的相关内容。
5.系统的实现与调试
在前面系统的设计的基础上,在特定的环境下,实现系统的开发,是本课程设计最重要的环节。
系统的实现包括以下一些环节:
●建立数据库。
在SQLServer的支持下,利用其SQL企业管理器或直接在SQL查询分析器用SQL语句完成本系统数据库的建立和各个数据表的建立,根据需要也可建立相关数据视图和存储过程。
●应用系统的开发。
在VC、VB、Java、ASP等环境下,实现本系统的开发,包括登录对话框的设计,系统主窗体的设计,系统主菜单的设计,各个功能模块对应子窗体的设计(根据需要,可将一些功能模块合并在同一个窗体中)。
需要注意对窗体设计的合理性,如功能的合理性,布局的合理性,以及层次的合理性。
●系统的运行和调试。
在系统开发的过程中,应该针对每个局部模块进行必要的功能测试,保证每个局部功能的可靠性和正确性。
最后进行系统的整体测试,以保证满足课程设计的要求。
在课程设计报告中应该提供相关的内容,包括数据库的名称、各个数据表的定义,系统主要窗体的说明,以及系统运行的效果图等。
6.总结及致谢
这是对数据库原理课程设计的总结,每个学生都应该客观地对自己的课程设计进行认真总结。
大致包括以下内容:
●课程设计是否达到预定的目标?
●通过本课程设计有哪些收获?
●尚存在哪些不足?
●本课程设计对今后学习和工作的影响等。
●感谢指导老师和团队的同学
7.其他:
参考文献、致谢等。
六、课程设计报告要求
1.写出不少于3000字的课程设计报告。
报告中除了在封面应有题目、班级、姓名、学号和课程设计日期、地点。
2.主要内容及装订顺序:
封面(统一提供)、目录、正文、参考文献
3.正文部分应该包括:
(1)概述
包括:
项目背景、编写目的、设计任务、要求及所用软件环境或工具。
(2)需求分析
问题陈述、需完成的功能。
(3)数据库设计
包括概念设计、逻辑设计、物理设计。
(4)系统设计(每个人可选择2个模块进行)
包括:
功能需求、用户界面设计、程序代码设计与分析、运行结果。
画出软件功能图。
描述每一个功能所完成的任务情况
(5)总结及致谢
(6)参考文献
附录:
程序清单
4.设计报告严禁抄袭,即使是同一小组也不允许雷同,否则按不及格论。
5.课程设计需要提交的内容:
(1)装订完整的课程设计报告
(2)数据库与应用系统(电子提交:
完整的数据库备份文件,源程序)。
七、成绩评定标准
由指导教师根据学生完成任务的情况、课程设计说明书的质量和课程设计过程中的工作态度等综合打分。
成绩评定实行优秀、良好、中等、及格和不及格五个等级。
1.设计报告:
30%
包括论述的全面性、合理性,文字表述的准确性和条理性,以及书写的工整程度等。
2.设计成果:
40%
包括是否达到设计的基本要求,数据库设计是否完整,合理、应用程序、表单的界面是否美观,报表设计是否满足实际需求,以及在验收时能否正确回答与设计有关的问题等。
2.平时考核:
30%
包括考勤、调试程序能力及平时的综合考查。
优:
能实现所选课题所要求的各项功能,设计报告项目齐全,能够说明课题的实现思路与步骤。
电子文档齐全。
良:
能实现所选课题所要求的80%以上功能,电子文档齐全,设计报告项目齐全,能够说明课题的实现方法。
中:
能基本实现所选课题的功能,上交了相关电子文档,设计报告能说明所实现的功能及实现思路。
及格:
能够积极参加课程设计,实现了所选课题的简单功能,设计报告包括基本项目,上交了相关电子文档。
不及格:
设计报告抄袭其它同学,设计任务没有完成。
八、参考选题
1、学生成绩管理系统
基本要求:
可以管理学生的基本信息、班级信息、专业信息、成绩信息、教师信息、课程信息等;
按照一定的条件,查询、统计符合条件的学生、教师信息;至少应该包括每个学生详细信息的查询、按班级、成绩状况查询、按工作岗位查询等,至少应该包括按班级、课程、专业、入学时间等统计学生的信息;
对查询、统计的结果打印输出。
2、教职员工管理系统
基本要求:
管理教职工的基本信息、教师业务档案、职工工资情况、部门信息等;
按照一定的条件,查询、统计符合条件的教师信息;至少应该包括每个教师详细信息的查询、按部门、职称、学历状况查询、按工作岗位查询统计;
对查询、统计的结果打印输出。
3、设备管理系统
基本要求:
参考实验中心的设备管理平台,管理我院所有的实验设备,设备总表、分类表、设备报损表、设备台帐。
4、教师教学资料文档管理系统
教师在教学中需要有许多教学资料,在教学任务完成后必须上交所在系进行归档保存。
所涉及的资料包括教师任课信息、教案(电子、纸质)、听课记录、实验报告、成绩考核表、试卷及标准答案、实践教学资料等
教师信息(编号、姓名、职称、专业、联系电话);班级信息(班级编号、班级名称、简称、班主任)
任课信息(编号、班级代码、课程代码、课时数、考核方式);资料信息(编号、资料名称、资料形式、文件名称、评定等级)
要求:
建立相应的数据库及相关的表、属性、约束等
输入相应的记录(每个表不少于10条以上的记录)
编写进行数据管理的存储过程
利用前台程序对其进行管理
5.小型自选商场商品管理系统
要求:
能对小型自选商场的商品进货、销售、库存等环节进行管理。
主要有:
1)能记录每一笔进货,查询商品的进货记录,并能按月进行统计。
2)能记录每一笔售货,查询商品的销售情况,并能进行日盘存、月盘存。
3)在记录进货及售货的同时,必须动态刷新库存。
4)能查询某个厂商或供应商的信息。
5)设计收银台程序,能根据输入的商品编号、数量,显示某顾客所购商品的清单,并显示收付款情况。
所涉及的表建议如下:
库存(商品ID、名称、型号规格、产地、单位、定价、折扣率、库存数量、最低存量、供应商ID)
售货(售货ID、商品ID、售价、数量、金额、存根号、销售日期)
进货(进货ID、商品ID、进价、数量、金额、进货日期)
供应商(供应商ID、供应商名称、邮编、地址、电话、联系人、联系人电话)
6、小型电子商务网站数据管理系统
假设该网站主要经营各类图书,通过前台程序实现简单的管理功能。
图书(编号、名称、类别、页数、单价、数量、出版社、版次、第一作者、出版年月、内容简介)
类别(类别、名称)
出版商(代号、名称、地址、电话、邮编、联系人)
订单(订单号、客户代码、类别、数量、付款方式、付款标志)
客户(客户代码、姓名、密码、地址、电子邮件、邮编、联系电话)
发货(订单号、发货方式、发货日期)
7、学生学籍管理信息系统
系统的功能要求:
学生档案的管理,即录入、修改、查询、输出学生档案信息,这些信息包括学生基本情况、学生简历情况、学生奖励情况、学生处分情况、学生家庭信息、学生体检情况;
学生学籍管理,录入、修改、查询、输出学生学籍信息,这些信息包括学生奖贷学金情况、学生注册、学生异动情况、学生军训情况、学生毕业情况;
学生成绩管理,录入修改、查询、输出学生入校成绩,各学期、各门课程的成绩信息,并支持按年级、班级等条件的统计。
8、网上校友录后台数据管理
校友录管理(序号、班级名称、毕业学校、专业、毕业年月、管理员帐号、管理员密码)
校友录(编号、用户名、密码、性质、联系电话、电子邮件、邮编)
留言(编号、日期、留言内容、标题)
通信录(编号、姓名、工作单位、通信地址、联系电话、邮编、电子邮件、QQ)
通过前台管理程序,可以添加、删除、显示、更新数据。
9、图书管理
完成图书资料的管理,处理的信息包括图书信息、读者信息、出版社、图书分类、图书借阅等
10、教师教学质量测评数据库系统
1)、静态数据
在校学生的班级名称、班级编号,学生学号、姓名,本校系部编号、名称,各系部教师编号、姓名,当前学期的所有班级的课程(编号)及任课教师(编号),课程编号、课程名称。
2)、动态数据
动态数据同客户端程序负责输入到数据库中,但需要你设计数据表的结构,以便于存储相关数据,要处理的数据包括:
测评类型,各测评类型中包括的评价项目、项目等级划分、项目分值分配。
学生对任课教师的各测评类型中的子项目所做的评价分值。
3)、编写存储过程用于统计测评结果
测评结果应包括:
每位教师各测评类型的得分。
以系部为单位的教师测评结果排名。
本课题附表:
本院教师教学水平测评表、计分方法,师德测评表、计分方法
11、毕业设计文档资料管理数据库系统
毕业设计要使用大量文档资料,包括:
毕业设计课题信息(课题编号、名称、选题教师、课题难度、方向、课题内容等)毕业设计学生选题信息(学号、姓名、课题编号、指导教师)
课题中期检查信息(学号、课题编号、进展情况)答辩信息(学号、答辩成绩)毕业论文指导信息(学号、论文成绩等)学生毕业设计最终成绩信息
请设计合理的数据库表结构,以便存储相应数据,并编写存储过程,用以按指导教师查询其指导的所有学生的论文、答辩、总成绩等数据。
编写存储过程,用以按学生学号或姓名查询该生的论文、答辩、指导教师信息
本课题附表:
课题审批表、学生选题表、论文中期检查表、答辩记录表、论文审阅书、成绩表
12、毕业生管理信息系统
设计要求:
1)信息要求
本系统应该包含与毕业生管理相关的信息,如毕业生基本信息、毕业生就业信息,其中毕业生基本信息应该包括:
毕业生的编号、姓名、性别、民族、籍贯、毕业时间、专业、政治面貌等信息;毕业生就业信息应该包括:
毕业生的编号、就业时间、工作单位、工作性质、职务、地址等。
2)功能要求
本系统的基本功能要求如下:
●毕业生基本信息维护;
●毕业生就业信息维护;
●毕业生就业情况查询(不确定);
●按专业划分的就业情况统计;
●用户管理(含用户权限的设置)
13宾馆客房管理系统
设计要求:
(1)信息要求
本系统应该包含与宾馆客房管理相关的信息,如客房信息、房客信息、当前出租状况等。
其中客房信息应该包括房间的基本信息(如:
编号、床位数、价格、当前状态等);房客信息应该包括房客的基本信息(如:
身份证号码、姓名、性别、租住天数等)。
(2)功能要求
本系统的基本功能要求如下:
●客户信息维护;
●房客信息维护;
●当前出租状况维护;
●房间信息查询(不确定查询);
●房客信息查询(不确定查询);
●用户管理(含用户权限的设置)。
14、通用商品销售管理系统
设计要求:
(1)信息要求
本系统应该包含与商品销售管理相关的信息,如商品信息、库存信息、销售信息等。
其中商品信息应该包括商品的基本信息(如:
条型码、名称、价格、生产厂家等);库存信息应该包括库存的基本信息(如:
条型码、批号、货架号、保持期限、商品数量等)。
(2)功能要求
本系统的基本功能要求如下:
●商品信息维护(包括简单查询);
●库存信息维护(包括简单查询);
●销售信息维护(包括简单查询);
●库存信息汇总、打印;
●销售信息汇总、打印;
用户管理(含用户权限的设置)。
15、图书销售
要求:
主要包括进货、退货、销售、统计功能。
进货:
根据某种书籍的库存量及销售情况确定进货数量,根据供应商报价选择供应商。
输出一份进货单并自动修改库存量,把本次进货的信息添加到进货库中。
退货:
顾客把已买的书籍退还给书店。
输出一份退货单并自动修改库存量,把本次退货的信息添加到退货库中。
统计:
根据销售情况输出统计报表。
一般内容为每月的销售总额、销售量及排行榜。
销售:
输入顾客要买书籍的信息,自动显示此书的库存量。
如果可以销售,打印销售单并修改库存,同时把此次销售的有关信息添加到日销售库中。
16、选课管理系统
主要功能有:
全校选修计划课程管理
全校选修开课课程管理
全校学生选课管理
全校选修课成绩管理
17、班级学生综合测评系统
要求:
对班级学生进行综合测评,排出名次,并能按一定标准和比例确定获奖学金人选;方便查询。
18、人事管理系统
(1)系统功能的基本要求:
员工各种信息的输入,包括员工的基本信息、学历信息、职称等。
员工各种信息的修改;
对于转出、辞职、辞退、退休员工信息的删除;
按照一定的条件,查询、统计符合条件的员工信息;至少应该包括每个员工详细信息的查询、按学历查询、按工作岗位查询等,至少应该包括按学历、婚姻状况、岗位、参加工作时间等统计各自的员工信息;
对查询、统计的结果打印输出。
(2)数据库要求:
在数据库中至少应该包含下列数据表:
员工基本信息表;
员工学历信息表,反映员工的学历、专业、毕业时间、学校、外语情况等;
企业工作岗位表;
企业部门信息表。
19、机票预定系统
(1)系统功能的基本要求:
每个航班信息的输入;
每个航班的坐位信息的输入;
当旅客进行机票预定时,输入旅客基本信息,系统为旅客安排航班,打印取票通知和帐单;
旅客在飞机起飞前一天凭取票通知交款取票;
旅客能够退订机票;
能够查询每个航班的预定情况、计算航班的满座率。
(2)数据库要求:
在数据库中至少应该包含下列数据表:
航班信息表;
航班坐位情况表;
旅客订票信息表;
取票通知表;
帐单。
20、工资管理系统
(1)系统功能的基本要求:
员工每个工种基本工资的设定;
加班津贴管理,根据加班时间和类型给予不同的加班津贴;
按照不同工种的基本工资情况、员工的考勤情况产生员工的每月的月工资;
员工年终奖金的生成,员工的年终奖金计算公式=(员工本年度的工资总和+津贴的总和)/12;
企业工资报表。
能够查询单个员工的工资情况、每个部门的工资情况、按月的工资统计,并能够打印;
(2)数据库要求:
在数据库中至少应该包含下列数据表:
员工考勤情况表;
员工工种情况表,反映员工的工种、等级,基本工资等信息;
员工津贴信息表,反映员工的加班时间,加班类别、加班天数、津贴情况等;
员工基本信息表;
员工月工资表。
附录:
《数据库系统》课程设计示范
课题名称:
图书管理信息系统
1.概述
图书馆是学校的文献信息中心,是为全校教学和科学研究服务的学术性机构,是学校信息化的重要基地。
图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息、图书预约信息等。
人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。
因此需要对书籍信息、读者信息、借书信息、还书信息、图书预约信息等进行统一管理,及时了解各个环节中信息的变更,有利于管理效率的提高,同时为了提高工作效率、服务质量和管理水平,并使图书馆管理人员从繁琐的工作中解脱出来,故开发该图书馆信息管理系统。
1.1设计要求
图书馆信息管理系统数据库用以收集、存储书籍信息、人员(读者、图书管理员)信息、图书借阅信息以及意外处理信息,及时记录存储各个环节信息的变更,以便管理、查询、显示、输出,节约大量人力物力把人们从繁杂的手工记录方式
中解脱出来的同时,有力保障图书馆日常事务的高效运作。
1)信息要求
本系统至少应该包含图书的基本信息、读者的基本信息、读者借阅图书的信息,用户及权限信息等。
2)功能要求
本系统要求能够实现图书卡片的维护、读者信息的维护、图书的借阅登记和归还登记处理(包括超期的罚款处理)、各类信息的查询、用户及其权限的管理等功能。
1.2开发平台简介
本图书馆信息管理系统采用B-S架构,使用JavaEE的技术路线,遵守MVCModel2模型。
Model模型层使用数据库作为持久性储存结构,选用的后台数据库是MySQL5.0。
这是业界领先的开源数据库,在开源产品中具有仅次于Apache服务器的市场占有率。
本数据库开放源代码,具有免费使用,比较稳定的特点,适合于小型系统的持久性存储。
Model使用JavaBeans作为OO层面上的抽象。
View视图层使用JSP技术。
这是JavaEE平台推荐的表现层技术。
图书馆信息管理系统中使用JSP2.0规范,严格控制页面代码中的业务逻辑部分,做到不在HTML代码中混杂Java业务代码,实现了很好的业务和表现的分离。
在这里采用的JSTL标准标签库来达到这一目标。
Controller控制层采用Servlet技术。
页面获取的数据通过Servlet的转发传递给后面的JavaBeans进行数据的封装和与数据库的交互,反馈信息由JavaBeans传递给Servlet,再由Servlet进行转发,从而实现业务逻辑和表现的完全分离。
本图书馆信息管理系统使用struts1.2作为MVC开发框架,整个系统有struts框架作为MVC的后台运行支持。
struts1.2框架是业界最早的也是最稳定和成熟的MVC开发框架,经过时间的洗礼已经被证明是一款很优秀的MVC框架,尽管还存在一些不足之处,但struts已经是可以选择的最好的框架技术。
本图书馆信息管理系统的软件开发平台是MyEclipse6.0GA+Dreamweaver
CS3。
它的软件运行平台是