运动会管理系统设计.docx
《运动会管理系统设计.docx》由会员分享,可在线阅读,更多相关《运动会管理系统设计.docx(25页珍藏版)》请在冰豆网上搜索。
![运动会管理系统设计.docx](https://file1.bdocx.com/fileroot1/2023-7/7/69887781-3b37-4b3e-a5e7-74491dd980d8/69887781-3b37-4b3e-a5e7-74491dd980d81.gif)
运动会管理系统设计
2.1.3赛后管理
2.4数据定义4
4.2.1数据表的定义
4.2.2触发器的定义
5.2.1索引存取方法的选择
5.2.2聚簇存取方法的选择
1系统背景
1.1管理系统概述
管理系统是由管理者与管理对象组成的并由管理者负责控制的一个整体。
管理系统因具体对象不同而千差万别,可以是科学的、经济的、教育的、政治的等。
管理系统的整体是由相对独立的不同部分组成的。
这些部分可以按人、财、物、信息、时间等来划分,也可以根据管理的职能或管理机构的部门设置来划分。
管理工作者如果看不到整体中的各个组成部分就看不清楚整体的结构和格局,就会造成认识上的模糊,从而在工作上分不清主次。
同时任何管理系统都是变化发展着的,而且任何变化和发展都会表现为管理的具体任务和管理目标的实现条件的变化。
1.2系统特色
为了解决在运动会管理和组织所面临的各种问题,开发了这样一套适合运动会的管理系统。
在分析运动会管理需求的基础上,通过比较分析不同的开发模式和特点,系统采用简单实用的Windows环境下的基于浏览器/服务器的模式构建,用SQLServer2005作为后台数据库,提供对数据库的查询、添加、修改、删除等操作来实现信息网上管理,并对信息管理功能进行了详细的分析,以实现动态、交互、高效的网络化信息管理。
系统采用业务流程图,实现了赛前管理、赛中管理、赛后管理三大功能模块。
系统能够对运动员的报名信息进行准确统计,能够有效处理赛程中的实时数据。
系统具有覆盖面广、维护性强、通用性好以及安全性高等优点。
1.3设计目标
为了使系统更好的为高校运动会管理服务,本系统的建立需要实现以下两个目标:
(1)系统具有较广的覆盖面,系统将根据整个运动会组织管理的具体情况量身定制,应该包括运动会管理的各个方面,从比赛项目信息到运动员信息、从报名信息到比赛成绩信息等都应该包含到位。
(2)系统具有较高的安全性我们除了视窗系统本身提供的安全措施外,系统还应该具有以下几项安全性能:
数据库系统的身份核查;系统的登录和身份核查;非登录用户不允许直接进入工作页面。
2
需求分析
2.1系统需求功能分析
2.1.1赛前准备
根据比赛需求,学校制定相关比赛规则和比赛项目,运动员根据比赛规则报名,并确定所要参加的比赛项目。
所有的运动员都需要在报名表上登记个人的基本信息。
由管理人员对参赛的运动员进行编号,生成运动员姓名号码对照表,并根据报名表系统进行自动分组,分道,生成项目分组表。
流程图:
2.1.2赛中管理
赛中管理根据比赛结果,裁判对运动员的进行成绩评定、成绩录入和成绩处理,从而判定出各个比赛项目的名次,并对运动队的成绩和团体总分进行统计,实现智能化成绩处理。
流程图:
2.1.3赛后管理
运动员可以根据自己的院系、姓名、号码等查询自己的成绩,并根据赛前准备和比赛管理阶段所涉及到的各个信息,打印出各种检录表、成绩单及团体总分表、奖牌榜、决赛成绩总表、破记录情况表。
2.2系统功能模块图
2.3
比赛规则
比赛项目
赛前准备
报名(运动员姓名、号码顺序表)
分组分道(项目分组表)
成绩录入
名次裁定
赛中管理
运动员成绩统计
统计团体总分`
破纪录人数统计
成绩查询
记录表
成绩表
团体总分表
奖牌榜
决赛成绩总表
破纪录情况表
2.4系统业务需求分析
经过详细的分析,田径运动会管理系统所实现的最终目标就是要使运动会管理人员的各项工作实现全面的规范化、科学化、自动化、高效化和流程化,使各类信息得到及时、有序的管理。
因此,根据业务需要,运动会管理系统应满足以下的需求:
(1)该系统是田径运动会比赛期间的信息处理系统,同时也是对外发布信息的窗口。
赛会管理人员可以通过发布比赛信息,如比赛准备期间的比赛规则,比赛项目流程信息,比赛期间的各个比赛实时信息等。
因此,该系统必须要有一个简捷的操作界面给管理人员进行操作。
(2)提供报名功能。
运动员的报名信息是一届运动会的关键信息,因此,要给运动员提供一个方便快捷的方式进行报名操作。
(3)运动会期间要进行比赛成绩,排名等信息的录入和发布的操作。
(4)比赛结束后,要为运动会信息管理提供各个比赛项目信息的查询,统计功能,并且将统计结果生成文档,打印为报表。
2.5数据定义
需定义八个数据:
1、用户。
用来记录用户情况,由用户编号、用户名、用户密码组成。
2、项目成绩。
用来记录运动员的各个项目的比赛成绩,由项目编号,项目名称,运动员编号,预赛成绩,预赛排名,决赛成绩,决赛排名组成。
3、比赛成绩。
用来记录学校设置的比赛项目情况,由项目编号,项目名称,项目类型,项目比赛时间组成。
4、班级得分。
用来记录每个班级的得分情况,由项目编号,项目名次,项目得分,班级总分,班级,系别组成。
5、运动员。
用来记录运动员的基本信息和报名信息,由姓名,性别,学号,系别,班级组成。
6、分组分道。
用来记录运动员的分组分道信息,由项目编号,运动员编号,分组号组成。
7、运动员的姓名号码对照。
用来记录运动员的姓名号码对照情况。
由运动员编号,学号,姓名组成。
对上述7种数据定义如下:
(1)
用户
数据项编号
数据项名
含义说明
别名
数据类型
数据长度
取值范围
1
用户编号
记录用户权限情况,用户的唯一标识
YH_ID
CHAR
8
数字
2
用户名
用户的全称
YH_NAME
CHAR
20
任何汉字
3
用户密码
记录用户的登录密码情况
YH_MIMA
CHAR
20
数字或汉字
(2)
项目成绩表
数据项编号
数据项名
含义说明
别名
数据类型
数据长度
取值范围
1
运动员编号
运动员比赛的唯一标识
YDY_ID
Char
8
数字
2
项目编号
项目的编号情况
XM_ID
Char
8
数字
3
项目名称
项目的全称
XM_NAME
Char
20
任何汉字
4
预赛成绩
记录运动员在预赛中取得的成绩
YS_CJ
Char
8
数字
5
预赛排名
记录运动员在预赛中取得的成绩
YS_PM
Char
8
数字
6
决赛成绩
记录运动员在决赛中取得的排名
JS_CJ
Char
8
数字
7
决赛排名
记录运动员在决赛中取得的排名
Js_pm
Char
4
汉字或
数字
(3)
比赛项目表
数据项编号
数据项名
含义说明
别名
数据类型
数据长度
取值范围
1
项目编号
项目的编号情况
Xm_id
Char
8
数字
2
项目名称
项目的全称
Xm_name
Char
20
任何汉字
3
项目类型
记录项目的类型
Xm_lx
Char
12
任何汉字
4
项目比赛预赛时间
记录项目的比赛预赛时间
Xmys_sj
日期型
--
--
5
项目比赛决赛时间
记录项目的比赛决赛的时间
Xmjs_sj
日期型
--
--
(4)
班级总分表
编号
数据项名
含义说明
别名
数据类型
数据长度
取值范围
1
项目编号
项目的编号情况
Xm_id
Char
6
数字
2
项目名次
记录项目的名次情况
Xm_mc
Char
6
汉字或数字
3
项目得分
记录项目的得分情况
Xm_df
Char
6
数字
4
班级总分
记录班级的总得分情况
Bj_zf
Char
6
数字
5
班级
班级的全称
Bj_name
Char
6
任何汉字
6
班级名次
记录班级的名次情况
Bj_mc
Char
6
汉字或数字
(5)
运动员
数据项编号
数据项名
含义说明
别名
数据类型
数据长度
取值范围
1
姓名
运动员的全称
Stu_name
Char
8
任何汉字
2
系别
运动员所在的系别
Stu_xb
Char
20
任何汉字
3
学号
运动员的唯一标识
Stu_xh
Char
12
数字
4
班级
班级的全称
Bj_name
Char
8
任何汉字
5
性别
运动员的性别
Stu_sex
Char
2
男或女
6
项目1
运动员所报项目
Stu_xml
Char
8
任何汉字
7
项目2
运动员所报项目
Stu_xm2
Char
8
任何汉字
(6)
分组分道表
数据项编号
数据项名
含义说明
别名
数据类型
数据长度
取值范围
1
运动员编号
运动员比赛的唯一标识
Ydy_id
自动编号
8
数字
2
项目编号
项目的编号情况
Xm_id
Char
8
数字
3
分组号
运动员分组情况
Fz_id
Char
4
数字
4
分道号
运动员分道情况
Fd_id
Char
4
数字
(7)
运动员姓名号码对照表
数据项编号
数据项名
含义说明
别名
数据类型
数据长度
取值范围
1
运动员编号
运动员比赛的唯一标识
Ydy_id
自动编号
8
数字
2
运动员姓名
运动员的全称
Stu_name
Char
8
任何汉字
3
学号
运动员的唯一标识
Stu_xh
Char
12
数字
3概念结构设计
3.1确定实体和联系
3.1.1实体
学校:
学校编号,学校名称。
比赛项目:
项目编号,项目规则,项目名称,项目类型。
运动员:
运动员编号,姓名,性别,年龄,院系名。
运动队:
运动队编号,运动队名称,队长名。
裁判员:
裁判员编号,姓名,性别,岗位。
成绩:
等级,排名
报表:
报表编号,报表名称,打印时间。
3.1.2联系
制定:
制定人,制定日期。
报名:
比赛细则,人数限制。
参加:
比赛地点,比赛时间,比赛人数。
遣派:
遣派人数。
裁决:
裁决人。
查询:
用户名,密码,查询方式。
评定:
评定规则,评定人。
处理:
处理人。
3.2E-R图设计
NMNMMMMN
NN
NN
MN
M
NM
4逻辑结构设计
4.1将E-R图转化为关系模式
学校(学校编号,学校名称)
比赛项目(项目编号,项目规则,项目名称,项目类型,制定人,制定日期,学校编号)
运动员(运动员编号,姓名,性别,年龄,院系名称,遣派人数,运动队编号)
运动队(运动队编号,运动队名称)
裁判员(裁判员编号,姓名,性别,岗位,项目编号)
成绩(等级,排名,用户名,密码)
报表(报表编号,报表名称,打印时间)
报名(运动员编号,项目编号,比赛细则,人数限制)
参加(运动员编号,项目编号,比赛地点,比赛时间,比赛人数)
裁决(裁判员编号,项目编号,裁决人)
评定(裁判员编号,项目编号,评定规则,评定人)
处理(等级,裁判员编号,处理人)
4.2数据的定义
4.2.1定义数据表
语句如下:
Createtable用户
(
yh_idchar(8)Primarykey,
yh_namechar(20),
yh_mimachar(20)
);
Createtable项目成绩表
(ydy_idchar(8)Primarykey,
xm_idchar(8),
xm_namechar(20),
ys_cjchar(8),
ys_pmchar(4),
js_cjchar(8),
js_pmchar(4),
);
Createtable比赛项目表
(
xm_idchar(8)Primarykey,
xm_namechar(20),
xm_lxchar(12),
xmys_sjdatetime,
xmjs_sjdatetime,
);
Createtable班级总分表
(
xm_idchar(8),
xm_mcchar(4),
xm_dfchar(4),
xm_zfchar(4),
bj_namechar(8)Primarykey,
bj_mcchar(4),
Foreignkey(xm_id)REFERENCES比赛项目表(xm_id)
);
Foreignkey(xm_id)REFERENCES比赛项目表(xm_id)
);
Createtable运动员
(
stu_namechar(8),
stu_xbchar(20),
stu_xhchar(12)Primarykey,
bj_namechar(8),
stu_sexchar
(2),
stu_xm1char(8),
stu_xm2char(8),
Foreignkey(bj_name)REFERENCES班级总分表(bj_name)
);
Createtable分组分道表
(
xm_idchar(8),
ydy_idchar(8)Primarykey,
fz_idchar(4),
fd_idchar(4),
Foreignkey(xm_id)REFERENCES项目记录表(xm_id)
);
Createtable运动员姓名号码对照表
(
ydy_idchar(8),
stu_namechar(8),
stu_xhchar(12)Primarykey,
Foreignkey(ydy_id)REFERENCES运动员(ydy_id)
);
4.2.2定义触发器
部分语句如下:
班级总分表:
CREATETRIGGER班级总分
ON班级总分表
AFTERINSERT
AS
BEGIN
--SETNOCOUNTONaddedtopreventextraresultsetsfrom
--interferingwithSELECTstatements.
SETNOCOUNTON;
--Insertstatementsfortriggerhere
END
GO
比赛项目表:
CREATETRIGGER比赛项目
ON比赛项目表
AFTERINSERT
AS
BEGIN
--SETNOCOUNTONaddedtopreventextraresultsetsfrom
--interferingwithSELECTstatements.
SETNOCOUNTON;
--Insertstatementsfortriggerhere
END
GO
5物理设计
5.1物理设计内容和方法
为了提高系统性能,先根据应用情况将数据的易变部分和稳定部分、经常存取部分和存取频率较低的部分分开在两个磁盘上存放,并且考虑将日志文件单独存放于一个磁盘。
同时,考虑到本系统是多用户的,为了提高效率,可以考虑将最大的表——运动员成绩表分开存放在多个磁盘上。
至于备份的数据和日志文件将保存在磁带中。
一般来说,关系到运动员成绩的表需要经常修改和存取,而关系到运动员、分组分道资料的表相对比较稳定。
本例中,经常存取部分和数据的易变部分如:
运动员成绩报表、破记录情况表、团体总分表和奖牌榜等。
而存取频率较低的部分和稳定部分如运动员分组分道记录表等。
5.2关系模式存取方法选择
5.2.1索引存取方法的选择
在关系“班级总分表”中,以“班级名称”为索引。
在“运动员”中,以“学生学号”为索引。
在关系“裁判表”中,以“裁判编号”为索引。
在关系“用户”中,以“用户编号”为索引。
在关系“比赛项目表”中,以“项目编号”为索引。
在关系“项目成绩表”中,以“项目编号”为索引。
在关系“分组分道表”中,以“项目编号”和“运动员编号”为索引。
5.2.2聚簇存取方法的选择
在各个关系中,运动员编号连接着多个物理快,虽在其所在关系中已经建立了索引,避免了全表扫描,然而再由元组标识去访问数据块时就要存储多个物理块,执行多次操作。
若将含有运动员编号的元组集中存放,则每读一个物理块可得到多个满足查询条件的元组,从而显著减少了访问磁盘的次数,因此在“运动员”及“项目成绩表”等关系中,将运动员编号选做聚簇码。
5.3确定数据库的存取结构
5.3.1确定数据的存放位置
由于数据库数据备份和日志文件备份,只在故障恢复时才使用,而且数据量很大,把它们放在磁带上.在硬件许可的条件下,可以把“运动员”表和其它表放在不同的磁盘,以加快存取速度.也可以把日志文件与数据库对象放在不同的磁盘以改进系统的性能.
5.3.2确定系统配置
在物理设计时对系统配置变量的调整只是初步的,在系统运行时还要根据系统实际运行情况做进一步的调整,以期切实改进系统性能。
6数据库的实现
6.1各个表的建立
6.2各个视图的建立
6.3索引的建立
6.3触发器的建立
7测试方案
7.1系统实现工具简介
SQLServer2000数据库引擎提供完整的XML支持。
它还具有构成最大的Web站点的数据存储组件所需的可伸缩性、可用性和安全功能。
SQLServer2000中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用SQLServer的过程。
SQLServer2000还支持基于标准的、与WindowsDNA集成的程序设计模型,使SQLServer数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分
7.2查询语句的实现
可以通过查询运动员的名字或者学院查询其报名情况。
8总结
通过本次课程设计,不仅使我对课本上的知识有了更深刻的理解,同时也使我认识到课本上的知识是机械的,表面的,要想真正的掌握就必须将其运用到实践中,在实践中加深对它的理解,才能做到彻底的掌握。
把课堂上学到数据库与管理信息系统的知识相结合然后通过自己的课程设计表示出来,加深了对理论知识的理解。
在实际操作过程中虽然不可避免的会犯一些错误,但每次都会有意外的收获,慢慢的感觉课程设计很有意思。
在具体操作中使我在这学期所学的数据库理论知识得到巩固,达到课程设计的基本目的,也发现自己的不足之出与需要提高的地方。
这次课程设计给我提供了很好的实践的机会,实践是对理论学习的一个很好的巩固,而且可以加深对理论知识的认识,使我们学到学到了平时很多书上所不能得到的实践经验,由于实践中碰到许多以前从未碰到过的问题,需要很多新的知识,并且促进对理论知识的学习。
通过这次数据库课程设计,让我们学会了很多平时学不到的东西,让我们有很大的收获。
自评成绩:
参考文献
[1]B.Liu.WebDataMining:
Exploringhyperlinks,contentsandusagedata[M].Springer,2006.
[2]姚天昉,程希文,徐飞玉,等.文本意见挖掘综述[J].中文信息学报,2008,22(3):
71-80.