• 1.77 MB
  • 2022-04-22 11:31:54 发布

学生社团联合会管理系统的数据库设计计划书.doc

  • 48页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'学生社团联合会管理系统的数据库设计计划书目录1.项目背景……………………………………………………….31.1选题背景……………………………………………………………31.2系统目标和实现技术………………………………………………32.需求分析………………………………………………………42.1业务流程分析………………………………………………………42.2数据流程分析………………………………………………………122.3数据字典……………………………………………………………172.4表结构………………………………………………………………303.概念结构设计………………………………………………….343.1CDM…………………………………………………………………353.2关系模式……………………………………………………………354.逻辑结构设计………………………………………………….365.物理结构设计………………………………………………….366.总结………………………………………………………………497.参考文献…………………………………………………………4948 1.项目背景1.1选题背景随着大学生活的不断丰富,社团活动成为当今大学生体验生活的不可缺少的一环。加入社团,同学们不仅可以参加各种精彩活动,丰富自己的课余生活,而且可以由此锻炼自己的能力,促进人与人之间的人际关系,进一步展示大学生阳光,积极向上的一面。然而,随着学生社团规模的不断扩大,社团管理变得越来越复杂。活动审批流程冗余繁琐,每申请一个活动,申请人要反复跑到社团联合会办理相关手续;各社团资金使用情况完全不透明,不单单社团会员不知道社团资金如何使用了,各社团理事会成员亦很难知晓;校团委通过社团联合会对各社团每学年都有考评,根据考评情况,对各社团进行星级评议,分为五星级社团、四星级社团、三星级社团以及没有星级的社团,评分过程也同样出现相互不透明的情况,各社团对自己社团、其他社团如何得的分,很难了解,由此造成了社团与社团之间、社团与社团联合会之间的很多误解和矛盾,同时,星级评议打分涉及社团活动评分、各种会议考勤、各种细节加分,牵涉面广、部门多,社联组织部通过手动操作,管理难度大。这些,都是社团活动管理长期存在的问题。本系统着眼于社团管理,旨在简化活动的审批流程;通过对活动资金的记录,增加资金使用透明度,方便广大师生对于社团活动资金走向的监督;通过系统的加减分操作机制,增加星级评议制度的公开公正性,记录活动内容和得分,方便学期期末社团的星级考评,同时同学们也可以轻松地看到社团的得分情况。本系统由三类用户组成,团委老师,社团联合会成员,协会会长;团委老师的功能包括对活动的最终审核,对活动,资金所有细节查看及管理,拥有本系统最高的管理权限。社团联合会成员的功能包括对活动的审批和打分,对资金的审批的功能,协会会长的功能包括对活动的申请及活动得分情况,资金审核情况的查看等功能。1.2系统目标和实现技术1.2.1系统功能目标本系统主要实现三大板块功能:1、社团活动申请、审核、审批、打分通过网络一体化实现。2、社团联合会对各社团星级评比打分一体化公开。3、各社团财务状况公示。4、打开系统直接查看功能。系统用户分为团委指导老师,社团联合会成员,各社团会长等角色。社团联合会成员又分为:主席、副主席、办公室主任、策划部部长、组织部部长、财务部部长、外联部部长、文娱部部长、宣传部部长、新闻部部长(注:系统管理员账号系统自动确定,不可添加、删除;其他角色根据“所属单位”及“角色名”两字段均只有一人)。其中,团委指导老师、社团联合会主席、副主席、办公室主任角色固定,不能添加、删除。每一任到期后将帐号、密码告诉下一任,以便继续使用。团委指导老师具有社团活动申请的审批、其他角色使用系统的监督两权限。社团联合会主席、副主席具有对社团联合会其他角色各种操作的否决权限。办公室主任、策划部部长、组织部部长、财务部部长、外联部部长、文娱部部长、宣传部部长、新闻部部长,均具有对各社团进行星级评比加减分的权限。其中,社团联合会办公室主任又单独具有除以上角色外的所有角色的添加、删除、修改,用户注册批准,通知活动已审批通过且书面审批已完成的社团到社团联合会领取书面申请手续,添加社团,添加社团学年信息五权限;策划部部长单独具有活动策划审核权限;组织部部长单独具有对各社团活动进行打分(打分后通过加减分权限对各社团星级评比进行加减分操作),星级评比加减分审核(只有审核通过,各部门加减分操作才能生效),安排各活动打分人员三权限;财务部部长单独具有各社团资金的管理权限。48 各社团会长具有活动申请,本社团资金管理有误上诉权限。图1.1系统功能目标图1.2.2实现技术基于WINDOWS7操作系统,利用PowerDesigner作为设计工具,使用MicrosoftSQLServer2005为数据库管理工具。在PowerDesigner中建立的概念模型生成物理模型,在通过ODBC连接到数据库中,建立关系图。2.需求分析2.1业务流程分析2.1.1添加用户业务流程分析分析说明:添加用户操作分为申请和办公室主任添加两种,用户可以自行申请成为系统用户,但需经过社联办公室主任的审核,必需是对应部门部长和协会会长办公室主任才可能审核通过。办公室主任也可直接添加用户。具体流程如图2.1所示:48 图2.1添加用户业务流程图2.1.2添加社团信息业务流程分析分析说明:每正式注册一个社团,办公室主任需添加该社团信息及社团学年信息;同时,每学年初,办公室主任需添加所有社团的学年信息。学年信息具本内容,见表结构。具体流程如图2.2所示:图2.2添加社团信息业务流程图2.1.3活动申请业务流程分析48 分析说明:活动申请业务首先由协会会长填写活动信息,上传活动策划,每天社联策划部部长审核各社团上传的策划,策划审核不通过填写不通过原因,通知相应协会;策划审核通过的则由团委指导老师审批该活动,审批不通过同样填写不通过原因,通知相应协会,审批通过后,该协会应发送各种申请表到社联办公室主任处,由办公室主任统一打印完成各种手续,手续办理完成,在系统上生成通知,通知对应协会到社联办公室领取办理好盖章手续的申请表。具体流程如图2.3所示:图2.3活动申请业务流程图2.1.4策划部策划审核业务流程分析分析说明:策划部部长每天社联策划部部长审核各社团上传的策划,策划审核不通过填写不通过原因,通知相应协会;策划审核通过的则由团委指导老师审批该活动。48 具体流程如图2.4所示:图2.4策划部策划审核业务流程图2.1.5团委活动审批业务流程分析分析说明:策划审核通过后由团委指导老师审批该活动,审批不通过同样填写不通过原因,通知相应协会,审批通过后,该协会应发送各种申请表到社联办公室主任处。具体流程如图2.5所示:图2.5团委活动审批业务流程图48 2.1.6办公室通知拿已盖章纸制申请表业务流程分析分析说明:团委指导老师活动审批通过后,社团将各申请表文档发给社联办公室主任,办公室主任待各申请表手续办理完成,在系统中生成完成通知,各会长看到通知后,到社联办公室领取。具体流程如图2.6所示:图2.6办公室通知拿已盖章纸制申请表业务流程图2.1.7组织部考核活动业务流程分析分析说明:组织部部长安排近期举行的活动的考核人员,考核人员参加到活动当中,对活动进行打分,将所打分数交由组织部部长,由组织部部长每周统一将各活动所得分数添加到系统中。具体流程如图2.7所示:48 图2.7组织部考核活动业务流程图2.1.8加减分及加减分审核业务流程分析分析说明:社联各部长可根据具体情况对各社团进行加减分操作,需填写加减分相应信息,由社联组织部统一审核,只有审核通过的才能完成加减分操作。具体流程如图2.8所示:48 图2.8加减分及加减分审核业务流程图2.1.9财务管理业务流程分析48 分析说明:社联财务部部长对各协会已报销的资金进行登记,各社团可对各账目进行核对,如发现有误,可进行申诉,要求修改,财务部长根据实际情况进行修改。具体流程如图2.9所示:图2.9财务管理业务流程图48 2.2数据流程分析2.2.1顶层数据流程图2.10顶层数据流程图2.2.2用户登录数据流程图2.11用户登录数据流程图48 2.2.3用户注册数据流程图2.12用户注册数据流程图2.2.4后台管理数据流程图2.13后台管理数据流程图2.2.5加减分数据流程48 图2.14加减分数据流程图2.2.6办公室审核注册数据流程图2.15办公室审核注册数据流程图2.2.7策划审核数据流程图2.16策划审核数据流程图48 2.2.8组织部活动考核数据流程图2.17组织部活动考核数据流程图2.2.9财务报销数据流程图2.18财务报销数据流程图48 2.2.10会长申请活动及资金查看数据流程图2.19会长申请活动及资金查看数据流程图2.2.11活动申请数据流程图2.20活动申请数据流程图2.2.12资金勘误申诉数据流程48 图2.21资金勘误申诉数据流程图2.2.13团委活动审批数据流程图2.22团委活动审批数据流程图2.3数据字典2.3.1数据流描述数据流编号:F1数据流名称:用户信息简述:用户为注册而填写的信息数据流来源:用户数据流去向:登陆与注册数据项组成:用户名+用户密码+电子邮件+职务+性别数据流量:5条/分钟高峰流量:20条/分钟数据流编号:F2数据流名称:社团联合会部长简述:社团联合会各个部长用户名和密码数据流来源:登录与注册数据流去向:后台管理数据项组成:用户名+用户密码数据流量:5条/分钟高峰流量:20条/分钟48 数据流编号:F3数据流名称:协会会长简述:协会会长的用户名和密码数据流来源:登陆与注册数据流去向:活动申请查看及资金修改数据项组成:用户名+用户密码数据流量:5条/分钟高峰流量:20条/分钟数据流编号:F4数据流名称:办公室部长审核意见简述:办公室部长数据流来源:后台管理数据流去向:登录与注册数据项组成:会员名+会员审核状态数据流量:5条/天高峰流量:10条/天数据流编号:F5数据流名称:活动申请及策划信息简述:会长填写活动申请并提交策划书数据流来源:活动申请查看及资金修改数据流去向:后台管理数据项组成:活动名称+活动时间+活动地点+活动目的+活动人数+策划书数据流量:5条/天高峰流量:10条/天数据流编号:F6数据流名称:活动不通过原因简述:审核未通过时向协会会长发送失败信息数据流来源:后台管理,团委最终审核数据流去向:活动申请查看及资金修改数据项组成:活动名称+失败原因数据流量:5条/天高峰流量:10条/天数据流编号:F7数据流名称:审核通过信息简述:活动申请成功信息数据流来源:后台管理,团委最终审核,活动信息表数据流去向:团委最终审核,活动申请查看及资金修改,活动查看数据项组成:活动名称+审核状态数据流量:5条/天高峰流量:10条/天48 数据流编号:F8数据流名称:团委老师简述:团委老师用户名和密码数据流来源:登录与注册数据流去向:图案为最终审核数据项组成:用户名+用户密码数据流量:1条/分钟高峰流量:20条/分钟数据流编号:F9数据流名称:用户名及密码简述:用户名及密码数据流来源:用户数据流去向:登陆数据项组成:用户名+用户密码数据流量:5条/分钟高峰流量:20条/分钟数据流编号:F10数据流名称:财务部部长简述:财务部部长用户名和密码数据流来源:用户数据流去向:财务部资金审核数据项组成:用户名+用户密码数据流量:5条/分钟高峰流量:20条/分钟数据流编号:F11数据流名称:办公室部长简述:办公室部长用户名和密码数据流来源:用户数据流去向:注册审核数据项组成:用户名+用户密码数据流量:5条/分钟高峰流量:20条/分钟数据流编号:F12数据流名称:策划部部长简述:策划部部长用户名和密码数据流来源:用户数据流去向:策划部活动审核数据项组成:用户名+用户密码数据流量:5条/分钟高峰流量:20条/分钟数据流编号:F1348 数据流名称:组织部部长简述:组织部部长用户名和密码数据流来源:用户数据流去向:组织部考核数据项组成:用户名+用户密码数据流量:5条/分钟高峰流量:20条/分钟数据流编号:F14数据流名称:社团联合会主席,副主席,各部门部长简述:社团联合会主席,副主席,各部门部长用户名和密码数据流来源:用户数据流去向:日常加减分操作及查询数据项组成:用户名+用户密码数据流量:5条/分钟高峰流量:20条/分钟数据流编号:F15数据流名称:加减分信息简述:用户为注册而填写的信息数据流来源:日常加减分操作及查询,加分扣分表数据流去向:加分扣分表,日常加减分操作及查询数据项组成:协会ID,协会名称,加减分数量,加减分理由数据流量:5条/天高峰流量:10条/天数据流编号:F16数据流名称:组织部考核结果简述:组织部审核的协会加分扣分结果,存入年度得分表数据流来源:组织部考核数据流去向:协会年度评比总分表数据项组成:协会ID+协会名称+得分数据数据流量:1条/分钟高峰流量:5条/分钟数据流编号:F17数据流名称:未通过活动简述:协会申请但未获得审批通过的活动数据流来源:活动查看数据流去向:查看未通过活动数据项组成:活动名称+策划部审核状态+失败原因数据流量:5条/天高峰流量:10条/天数据流编号:F1848 数据流名称:资金报销情况简述:用户为注册而填写的信息数据流来源:资金报销表数据流去向:协会名称+活动名称+报销资金+报销情况数据流量:5条/天高峰流量:10条/天数据流编号:F19数据流名称:活动名称简述:协会申请的活动名称数据流来源:查看策划数据流去向:查看活动具体信息数据项组成:活动名称+策划部审核状态数据流量:5条/天高峰流量:10条/天数据流编号:F20数据流名称:未举办的活动信息简述:未举办的活动信息数据流来源:活动信息表数据流去向:查看活动具体信息数据项组成:协会ID+协会名称+活动名称+活动地点+活动时间+活动内容数据流量:1条/分钟高峰流量:5条/分钟数据流编号:F21数据流名称:注册申请简述:用户为注册而填写的信息数据流来源:用户数据流去向:注册数据项组成:用户名+用户密码+电子邮件+职务+性别数据流量:1条/分钟高峰流量:10条/分钟数据流编号:F22数据流名称:协会信息简述:协会的相关信息数据流来源:协会信息表数据流去向:用户注册处理数据项组成:协会ID+协会名称数据流量:5条/天高峰流量:10条/天数据流编号:F23数据流名称:待审核的用户信息简述:用户为注册而填写的信息48 数据流来源:用户数据流去向:用户注册处理数据项组成:用户名+用户密码+电子邮件+职务+性别数据流量:5条/天高峰流量:10条/天数据流编号:F24数据流名称:活动考察人员安排信息简述:被安排跟活动的人员调配信息数据流来源:活动考核安排数据流去向:社联干事数据项组成:干事名单数据流量:5条/天高峰流量:20条/天数据流编号:F25数据流名称:未举办的活动信息简述:未曾举办活动的信息数据流来源:活动信息表数据流去向:活动考核安排数据项组成:协会名称+活动名称+活动地点+活动时间数据流量:5条/天高峰流量:10条/天数据流编号:F26数据流名称:活动得分信息简述:社联干事对活动的打分记录数据流来源:社联干事数据流去向:活动信息表数据项组成:活动名称,得分数据流量:5条/天高峰流量:20条/天数据流编号:F27数据流名称:资金审核信息简述:协会的资金报销记录数据流来源:财务部资金审核数据流去向:填写资金报销流水账数据项组成:协会名称+资金数量+报销理由数据流量:5条/天高峰流量:10条/天数据流编号:F28数据流名称:资金勘误信息简述:协会会长填写的有关资金报销勘误的信息数据流来源:资金勘误表,填写资金勘误申请48 数据流去向:财务部资金勘误修改,资金报销表数据项组成:协会名+资金勘误信息数据流量:5条/天高峰流量:10条/天数据流编号:F29数据流名称:协会资金信息简述:协会年度剩余资金信息数据流来源:资金报销表,资金核查数据流去向:资金核查,协会学年资金信息数据项组成:协会名+资金信息数据流量:5条/天高峰流量:10条/天数据流编号:F30数据流名称:申请活动信息简述:协会会长在申请活动时填写活动相关信息数据流来源:填写活动申请数据流去向:活动信息表数据项组成:协会ID+协会名+活动名称+活动日期+活动地点+活动内容+审批情况+得分情况数据流量:5条/天高峰流量:10条/天数据流编号:F31数据流名称:策划书简述:策划书数据流来源:填写活动申请数据流去向:提交策划书数据项组成:策划书数据流量:5条/天高峰流量:10条/天2.3.2处理逻辑的描述处理逻辑编号:P1处理逻辑名称:登录与注册输入的数据流:F1处理:负责用户登录与注册功能输出的数据流:F2,F3,F8处理频率:10条/次处理逻辑编号:P2处理逻辑名称:后台管理输入的数据流:F2处理:社联各个部们的职能运转,包括活动审批,评分,注册审批,财务管理等。输出的数据流:F4,F6,F7处理频率:100条/次48 处理逻辑编号:P3处理逻辑名称:活动申请查看及资金修改输入的数据流:F3处理:协会会长的职能运转,包括活动申请,资金勘误查看等。输出的数据流:F5处理频率:100条/次处理逻辑编号:P4处理逻辑名称:团委最终审核输入的数据流:F7,F8处理:团委对协会活动进行最终的审核,通过后活动方可执行。输出的数据流:F6,F7处理频率:10条/次处理逻辑编号:P1.1处理逻辑名称:注册输入的数据流:F1处理:新用户对身份注册功能输出的数据流:F1处理频率:10条/次处理逻辑编号:P1.2处理逻辑名称:登录输入的数据流:F9处理:不同用户的登录功能输出的数据流:F2,F3,F8处理频率:10条/次处理逻辑编号:P1.1.1处理逻辑名称:阅读注册规则输入的数据流:F21处理:判断用户是否同意注册规则输出的数据流:认同,不认同处理频率:10条/次处理逻辑编号:P1.1.2处理逻辑名称:选择用户类型输入的数据流:认同处理:用户注册时选择自己的用户类型输出的数据流:F1处理频率:10条/次处理逻辑编号:P1.1.3处理逻辑名称:注册(待审核)输入的数据流:F148 处理:用户提起注册,并咱存入数据库,等待管理员审核输出的数据流:F1处理频率:10条/次处理逻辑编号:P2.1处理逻辑名称:日常加减分及查询输入的数据流:F14,F15处理:各个部门的部长及主席对协会日常工作查分及加分减分输出的数据流:F15处理频率:50条/次处理逻辑编号:P2.2处理逻辑名称:注册审核输入的数据流:F11处理:办公室部长对用户的注册进行审核输出的数据流:F4处理频率:10条/次处理逻辑编号:P2.3处理逻辑名称:策划部活动审核输入的数据流:F12处理:策划部对协会活动的策划阅读及审核输出的数据流:F6,F7处理频率:20条/次处理逻辑编号:P2.4处理逻辑名称:组织部考核输入的数据流:F13处理:组织部对协会的活动及日常工作考核,并纳入得分总表输出的数据流:F16处理频率:20条/次处理逻辑编号:P2.5处理逻辑名称:财务部资金审核输入的数据流:F10处理:财务部对报销资金进行审核入库输出的数据流:处理频率:10条/次处理逻辑编号:P2.1.1处理逻辑名称:查询加减分功能输入的数据流:F14,F15处理:主席和部长对协会加减分进行查询输出的数据流:处理频率:1条/次48 处理逻辑编号:P2.1.2处理逻辑名称:加减分功能输入的数据流:F14,F22处理:主席和部长对协会加分扣分输出的数据流:F15处理频率:5条/次处理逻辑编号:P2.2.1处理逻辑名称:判断用户信息是否合法输入的数据流:F11,F23处理:办公室部长判断用户注册信息是否合法输出的数据流:F23处理频率:10条/次处理逻辑编号:P2.2.2处理逻辑名称:判断用户是否是部长或会长输入的数据流:F23处理:办公室部长判断用户是否是部长或会长输出的数据流:F4处理频率:10条/次处理逻辑编号:P2.3.1处理逻辑名称:检查策划书输入的数据流:F12处理:策划部部长对活动策划进行检查,并作出审批意见输出的数据流:F6,F7处理频率:1份/次处理逻辑编号:P2.4.1处理逻辑名称:加减分审核输入的数据流:F13处理:组织部部长对协会平时加减分情况审核和入库输出的数据流:F16处理频率:20条/次处理逻辑编号:P2.4.2处理逻辑名称:活动考核安排输入的数据流:F13,F25处理:组织部部长对跟活动的人员进行安排输出的数据流:F24处理频率:5个/次处理逻辑编号:P2.4.3处理逻辑名称:活动得分确认功能输入的数据流:F26处理:组织部部长对每次跟活动的人的打分进行确认入库48 输出的数据流:F16处理频率:5个/次处理逻辑编号:P2.5.1处理逻辑名称:财务部资金审核输入的数据流:F10,F22处理:财务部对协会报销资金情况进行审核输出的数据流:F27处理频率:10个/次处理逻辑编号:P2.5.2处理逻辑名称:财务部资金勘误修改输入的数据流:F10,F28处理:财务部对协会的勘误资金情况进行审核输出的数据流:F27处理频率:10个/次处理逻辑编号:P2.5.3处理逻辑名称:填写资金报销流水账输入的数据流:F27处理:财务部部长填写资金报销流水账输出的数据流:F20处理频率:10个/次处理逻辑编号:P2.5.4处理逻辑名称:填写资金修改流水账输入的数据流:F27处理:财务部部长填写资金修改流水账输出的数据流:F20处理频率:10个/次处理逻辑编号:P2.5.5处理逻辑名称:资金核查输入的数据流:F29处理:财务部长对资金进行核查输出的数据流:F29处理频率:10个/次处理逻辑编号:P3.1处理逻辑名称:活动申请输入的数据流:F3处理:协会会长填写活动申请内容输出的数据流:处理频率:5个/次处理逻辑编号:P3.248 处理逻辑名称:活动查看输入的数据流:F3,F7处理:协会会长能够查看活动审核信息输出的数据流:F17处理频率:5个/次处理逻辑编号:P3.3处理逻辑名称:资金查看输入的数据流:F3,F18处理:协会会长能对协会剩余资金进行查看输出的数据流:处理频率:10条/次处理逻辑编号:P3.4处理逻辑名称:资金修改输入的数据流:F3处理:协会会长对资金有勘误的权利输出的数据流:处理频率:3条/次处理逻辑编号:P3.5处理逻辑名称:查看未通过的活动输入的数据流:F6,F17处理:协会会长能查看未通过的活动信息输出的数据流:处理频率:10条/次处理逻辑编号:P3.1.1处理逻辑名称:填写活动申请输入的数据流:F3处理:协会会长填写活动申请信息输出的数据流:F30,F31处理频率:5条/次处理逻辑编号:P3.1.2处理逻辑名称:提交策划书输入的数据流:F31处理:协会会长向策划部提交策划书输出的数据流:F5处理频率:5条/次处理逻辑编号:P3.4.1处理逻辑名称:填写资金勘误申请输入的数据流:F3处理:协会会长填写资金勘误申请输出的数据流:F2848 处理频率:5条/次处理逻辑编号:P4.1处理逻辑名称:查看策划输入的数据流:F8,F7处理:团委老师对策划最终审核输出的数据流:F19处理频率:10个/次处理逻辑编号:P4.2处理逻辑名称:查看活动具体信息输入的数据流:F19,F20处理:团委老师对活动情况最终审核输出的数据流:F6,F7处理频率:10个/次2.3.3数据存储的描述数据存储编号:D1数据存储名称:用户表简述:记录用户信息数据存储组成:用户ID+密码+用户姓名+所属单位+角色名+是否已审核关键字:用户ID相关联的处理:P1数据存储编号:D2数据存储名称:加分扣分表简述:加减分详情表数据存储组成:加减分ID+加减分数+被操作社团+学年+添加本信息用户+加减分原因+是否通过审核关键字:加减分ID相关联的处理:P2数据存储编号:D3数据存储名称:协会年度评比总分表简述:社团学年信息表数据存储组成:社团名+学年+会长姓名+会长电话+社团人数+总分+总资金+已使用资金+上一年星级评议等级关键字:社团名,学年相关联的处理:P2数据存储编号:D4数据存储名称:协会信息表简述:社团学年信息表数据存储组成:社团名关键字:社团名相关联的处理:P248 数据存储编号:D5数据存储名称:活动信息表简述:活动信息表数据存储组成:活动ID+活动名称+主办社团+活动开始时间+活动结束时间+活动地点+学分单数+资金预算+策划是否通过+团委审批是否通过+书面手续是否已完成+活动考核人+活动得分关键字:活动ID相关联的处理:P2数据存储编号:D6数据存储名称:活动申请失败表简述:活动不通过原因表数据存储组成:ID+不通过审批的活动ID+不通过原因+是否确认不通过关键字:ID相关联的处理:P2,P4数据存储编号:D7数据存储名称:资金报销表简述:协会资金报销表数据存储组成:账目ID+使用资金数+使用明细+操作社团+学年关键字:账目ID相关联的处理:P2数据存储编号:D8数据存储名称:资金勘误表简述:账目有误申请修改数据存储组成:账目ID+有误的账目ID+有误原因+是否已更改关键字:账目ID相关联的处理:P22.3.4外部实体的描述外部实体编号:S1外部实体名称:用户简述:所有登录或注册该系统的人输入的数据流:无输出的数据流:F1外部实体编号:S2外部实体名称:社联干事简述:社团联合会干事输入的数据流:F24输出的数据流:F262.4表结构2.4.1系统用户表SystemUser48 含义:用于本系统后台应用的角色确定。系统管理员有权限对任何角色进行添加,团委指导老师只能由系统管理员进行添加,社联主席、副主席、办公室主任则只能由团委老师添加。办公室主任负责直接添加其他角色,审核用户申请。系统管理员拥有本系统所有权限,团委指导老师则拥有除添加自身角色外的所有权限,社联主席、副主席拥有除添加团委指导老师、社联主席、副主席、办公室主任,团委审批活动以外的所有权限。其他角色只有自身相对应的权限。表2.1系统用户表字段名含义数据类型备注UserID用户ID(学号、教师号)CHARNOTNULL主码Password密码NCHAR(20)NOTNULLUserName用户姓名NVARCHAR(10)NOTNULLDepartName所属单位(社联、团委、社团)NVARCHAR(50)NOTNULL外码(社联、团委看作社团身份在社团表中出现)AssociationInfm表RoleName角色名NVARCHAR(50)NOTNULL外码UserRoleName表IsCheck是否已审核CHAR(1)NULLY或N(审核通过改了Y,不通过改为N并删除)2.4.2角色表UserRoleName含义:确定角色名,添加系统用户时,角色选择由下拉菜单关联到本表中选。表2.2角色表字段名含义数据类型备注RoleName角色名NVARCHAR(50)NOTNULL主码团委指导老师、社联主席、社联副主席、组织部部长、外联部部长、办公室主任、宣传部部长、文娱部部长、新闻部部长、财务部部长、策划部部长、会长、系统管理员2.4.3社团信息表AssociationInfm含义:用于存储社团名(社团联合会、团委都看作一个社团)表2.3社团信息表字段名含义数据类型备注AssociationName社团名NVARCHAR(50)NOTNULL主码2.4.4社团学年信息表AssociationInfmYear含义:用于存放各社团某一学年的相关信息,其中,总分、总资金、已使用资金三个字段内容对于各社团都相当重要,为本系统管理中最关键的值之一。表2.4社团学年信息表48 字段名含义数据类型备注AssociationName社团名NVARCHAR(50)NOTNULL主码,外码AssociationInfm表SchoolYear学年INTNOTNULL主码,外码SchoolYear表PresidentName会长姓名NVARCHAR(10)NOTNULLPresidentPhone会长电话CHAR(11)NULLMemberNum社团人数INTNULLTotalScore总分INTNOTNULL初始值为0分TotalFunds总资金MONEYNOTNULL没有则为0UseFunds已使用资金MONEYNOTNULL没有则为0StarGrade上一年星级评议等级VARCHAR(4)NOTNULL五星、四星、三星、无星2.4.5学年表SchoolYear表2.5学年表字段名含义数据类型备注SchoolYear学年INTNOTNULL主码(20102011表示2010—2011学年)2.4.6活动信息表ActivityInfm含义:活动从申请到策划审批到团委活动审批到办公室催促交各种书面手续文档到活动打分最后到活动得分都信息全在此表中表明。表2.6活动信息表字段名含义数据类型备注ActivityID活动ID自增INTIDENTITY(1,1)NOTNULL主码ActivityName活动名称NVARCHAR(100)NOTNULLAssociationName主办社团NVARCHAR(50)NOTNULL外码AssociationInfmYear表StartTime活动开始时间DATE&TIMENOTNULLEndTime活动结束时间DATE&TIMENOTNULLSpace活动地点NVARCHAR(100)NOTNULLCreditFormNum学分单数INTNOTNULL不要学分单则为0FundsNum资金预算MONEYNULLIsProposalAgree策划是否通过CHAR(1)NULLY或N(默认值为空,待审核,审核不通过,生成不通过原因记录,并删除本行活动申请记录)IsLeagueAgree团委审批是否通过CHAR(1)Y或N48 NULL(默认值为空,待审核,审核不通过,生成不通过原因记录,并删除本行活动申请记录)IsProcedureDone书面手续是否已完成CHAR(1)NULLY或N(默认值为空,待审核)CheckPurson活动考核人NVARCHAR(10)NULLScore活动得分INTNULL0-502.4.7活动不通过原因表ActivityDisReason含义:策划审批及团委活动审批中,活动未审批通过,将原因录入本表,以便活动申请人进行查询。申请人查询了解后,本行信息自动删除。表2.7活动不通过原因表字段名含义数据类型备注DisActivityIDID自增INTIDENTITY(1,1)NOTNULL主码ActivityID不通过审批的活动IDINTNOTNULL外码ActivityInfm表DisReason不通过原因NVARCHAR(500)NOTNULL大体原因IsRight是否确认不通过CHAR(1)NULLY或N(默认值为NULL,确认后改为Y)2.4.8加减分详情表ScoreOperate含义:社团联合会对社团的星级评议得分进行任何操作,均在本表中存储。用以各社团查询全年得分的明细。添加详情信息后,并未对社团学年信息表总分进行更改,需待组织部审核通过后,其相应的加减分数才会在社团常年信息表中得以实现。表2.8加减分详情表字段名含义数据类型备注ScoreOperateID加减分ID自增INTIDENTITY(1,1)NOTNULL主码Score加减分数INTNOTNULL正数表加分,负数表减分AssociationName被操作社团NVARCHAR(50)NOTNULL外码AssociationInfm表SchoolYear学年INTNOTNULL外码SchoolYear表UserID添加本信息用户CHAR(11)NOTNULL外码SystemUser表ScoreOprReason加减分原因NVARCHAR(500)NULLIsRight是否通过审核CHAR(1)NULLY或N(默认值为NULL,确认后改为Y,不确认则删除该行记录)48 2.4.9加减分不通过原因表ScoreDisOptReason含义:加减分组织部审核未通过,需填写不通过原因,存入本表,通过ScoreOperateID找到填写该加减分记录用户,在该用户下次登陆时,行成通知告知。表2.9加减分不通过原因表字段名含义数据类型备注DisScoreOptIDID自增INTIDENTITY(1,1)NOTNULL主码ScoreOperateID对应的不通过的加减分记录的IDINTNOTNULL外码ScoreOperate表DisReason不通过原因NVARCHAR(500)NULLIsDeal是否已处理CHAR(1)NULLY或N(默认值为NULL,确认后改为Y)2.4.10资金报销表FundsAccount含义:社联组织部用于向所有社团公布各社团使用资金明细,凡从社联领走资金,社联即填写本表。且使用掉的资金直接累加到社团学年信息表中。表2.10资金报销表字段名含义数据类型备注AccountID账目ID自增INTIDENTITY(1,1)NOTNULL主码FundsNum使用资金数MONEYNOTNULLUseReason使用明细NVARCHAR(500)NULLAssociationName操作社团NVARCHAR(50)NOTNULL外码AssociationInfm表SchoolYear学年INTNOTNULL外码SchoolYear表2.4.11账目有误表FundsAccountWrong含义:如果某社团在查询本社团使用资金信息中有误,可向社联财务部提出,以便社联进行修改。社联财务部修改后,生成通知,下次对应社团查询时,加以显示,表明已将错误修改。表2.11账目有误表字段名含义数据类型备注AccountWrongIDID自增INTIDENTITY(1,1)NOTNULL主码AccountID有误的账目IDINTNOTNULL外码FundsAccount表WrongReason有误原因NVARCHAR(500)NULLIsDeal是否已更改CHAR(1)NULLY或N(默认值为NULL,确认后改为Y)3.概念结构设计48 3.1CDM图3.1概念结构设计CDM图3.2关系模式SystemUser(UserID,Password,UserName,DepartName,RoleName,IsCheck)外码:DepartName,RoleNameUserRoleName(RoleName)AssociationInfm(AssociationName)AssociationInfmYear(AssociationName,SchoolYear,PresidentName,PresidentPhone,MemberNum,TotalScore,TotalFunds,UseFunds,StarGrade)外码:AssociationName,SchoolYear,SchoolYear(SchoolYear)ActivityInfm(ActivityID,ActivityName,AssociationName,StartTime,EndTime,Space,CreditFormNum,FundsNum,IsProposalAgree,IsLeagueAgree,IsProcedureDone,CheckPurson,Score)外码:AssociationNameActivityDisReason(DisActivityID,ActivityID,DisReason,IsRight)外码:ActivityIDScoreOperate(ScoreOperateID,Score,AssociationName,SchoolYear,UserID,ScoreOprReason,IsRight)外码:AssociationName,SchoolYear,UserID48 ScoreDisOptReason(DisScoreOptID,ScoreOperateID,DisReason,IsDeal)外码:ScoreOperateIDFundsAccount(AccountID,FundsNum,UseReason,AssociationName,SchoolYear)外码:AssociationName,SchoolYearFundsAccountWrong(AccountWrongID,AccountID,WrongReason,IsDeal)外码:AccountID4.逻辑结构设计图4.1逻辑结构设计PDM图5.物理结构设计/*==============================================================*//*DBMSname:MicrosoftSQLServer2005*//*Createdon:2011/6/2923:51:54*//*==============================================================*/altertableActivityDisReasondropconstraintFK_ACTIVITY_RELATIONS_ACTIVITYgoaltertableActivityInfmdropconstraintFK_ACTIVITY_RELATIONS_ASSOCIATgo48 altertableAssociationInfmYeardropconstraintFK_ASSOCIAT_ASSOCIATI_ASSOCIATgoaltertableAssociationInfmYeardropconstraintFK_ASSOCIAT_ASSOCIATI_SCHOOLYEgoaltertableFundsAccountdropconstraintFK_FUNDSACC_RELATIONS_SCHOOLYEgoaltertableFundsAccountWrongdropconstraintFK_FUNDSACC_RELATIONS_FUNDSACCgoaltertableScoreDisOptReasondropconstraintFK_SCOREDIS_RELATIONS_SCOREOPEgoaltertableScoreOperatedropconstraintFK_SCOREOPE_RELATIONS_SCHOOLYEgoaltertableScoreOperatedropconstraintFK_SCOREOPE_RELATIONS_SYSTEMUSgoaltertableScoreOperatedropconstraintFK_SCOREOPE_RELATIONS_ASSOCIATgoaltertableSystemUserdropconstraintFK_SYSTEMUS_RELATIONS_USERROLEgoifexists(select1fromsysindexeswhereid=object_id("ActivityDisReason")andname="Relationship_5_FK"andindid>0andindid<255)dropindexActivityDisReason.Relationship_5_FKgo48 ifexists(select1fromsysindexeswhereid=object_id("ActivityInfm")andname="Relationship_2_FK"andindid>0andindid<255)dropindexActivityInfm.Relationship_2_FKgoifexists(select1fromsysindexeswhereid=object_id("AssociationInfmYear")andname="AssociationInfmYear2_FK"andindid>0andindid<255)dropindexAssociationInfmYear.AssociationInfmYear2_FKgoifexists(select1fromsysindexeswhereid=object_id("AssociationInfmYear")andname="AssociationInfmYear_FK"andindid>0andindid<255)dropindexAssociationInfmYear.AssociationInfmYear_FKgoifexists(select1fromsysindexeswhereid=object_id("FundsAccount")andname="Relationship_8_FK"andindid>0andindid<255)dropindexFundsAccount.Relationship_8_FKgoifexists(select1fromsysindexeswhereid=object_id("FundsAccountWrong")andname="Relationship_9_FK"andindid>0andindid<255)dropindexFundsAccountWrong.Relationship_9_FKgoifexists(select148 fromsysindexeswhereid=object_id("ScoreDisOptReason")andname="Relationship_7_FK"andindid>0andindid<255)dropindexScoreDisOptReason.Relationship_7_FKgoifexists(select1fromsysindexeswhereid=object_id("ScoreOperate")andname="Relationship_10_FK"andindid>0andindid<255)dropindexScoreOperate.Relationship_10_FKgoifexists(select1fromsysindexeswhereid=object_id("ScoreOperate")andname="Relationship_11_FK"andindid>0andindid<255)dropindexScoreOperate.Relationship_11_FKgoifexists(select1fromsysindexeswhereid=object_id("ScoreOperate")andname="Relationship_12_FK"andindid>0andindid<255)dropindexScoreOperate.Relationship_12_FKgoifexists(select1fromsysindexeswhereid=object_id("SystemUser")andname="Relationship_1_FK"andindid>0andindid<255)dropindexSystemUser.Relationship_1_FKgoifexists(select1fromsysobjects48 whereid=object_id("ActivityDisReason")andtype="U")droptableActivityDisReasongoifexists(select1fromsysobjectswhereid=object_id("ActivityInfm")andtype="U")droptableActivityInfmgoifexists(select1fromsysobjectswhereid=object_id("AssociationInfm")andtype="U")droptableAssociationInfmgoifexists(select1fromsysobjectswhereid=object_id("AssociationInfmYear")andtype="U")droptableAssociationInfmYeargoifexists(select1fromsysobjectswhereid=object_id("FundsAccount")andtype="U")droptableFundsAccountgoifexists(select1fromsysobjectswhereid=object_id("FundsAccountWrong")andtype="U")droptableFundsAccountWronggoifexists(select1fromsysobjectswhereid=object_id("SchoolYear")andtype="U")droptableSchoolYeargo48 ifexists(select1fromsysobjectswhereid=object_id("ScoreDisOptReason")andtype="U")droptableScoreDisOptReasongoifexists(select1fromsysobjectswhereid=object_id("ScoreOperate")andtype="U")droptableScoreOperategoifexists(select1fromsysobjectswhereid=object_id("SystemUser")andtype="U")droptableSystemUsergoifexists(select1fromsysobjectswhereid=object_id("UserRoleName")andtype="U")droptableUserRoleNamego/*==============================================================*//*Table:ActivityDisReason*//*==============================================================*/createtableActivityDisReason(DisActivityIDnumericnotnull,ActivityIDnumeric(1,1)notnull,DisReasonvarchar(500)notnull,IsRightchar(1)null,constraintPK_ACTIVITYDISREASONprimarykeynonclustered(DisActivityID))godeclare@CmtActivityDisReasonvarchar(128)select@CmtActivityDisReason=user_name()executesp_addextendedproperty"MS_Description","活动不通过原因表","user",@CmtActivityDisReason,"table","ActivityDisReason"48 go/*==============================================================*//*Index:Relationship_5_FK*//*==============================================================*/createindexRelationship_5_FKonActivityDisReason(ActivityIDASC)go/*==============================================================*//*Table:ActivityInfm*//*==============================================================*/createtableActivityInfm(ActivityIDnumeric(1,1)notnull,AssociationNamevarchar(50)notnull,ActivityNamevarchar(50)notnull,StartTimedatetimenotnull,EndTimedatetimenotnull,Spacevarchar(100)notnull,CreditFormNumnumericnotnull,FundsNummoneynull,IsProcedureDonechar(1)null,IsProposalAgreechar(1)null,IsLeagueAgreechar(1)null,CheckPursonvarchar(10)null,Scorenumericnull,constraintPK_ACTIVITYINFMprimarykeynonclustered(ActivityID))godeclare@CmtActivityInfmvarchar(128)select@CmtActivityInfm=user_name()executesp_addextendedproperty"MS_Description","活动信息表","user",@CmtActivityInfm,"table","ActivityInfm"go/*==============================================================*//*Index:Relationship_2_FK*//*==============================================================*/createindexRelationship_2_FKonActivityInfm(AssociationNameASC)go48 /*==============================================================*//*Table:AssociationInfm*//*==============================================================*/createtableAssociationInfm(AssociationNamevarchar(50)notnull,constraintPK_ASSOCIATIONINFMprimarykeynonclustered(AssociationName))godeclare@CmtAssociationInfmvarchar(128)select@CmtAssociationInfm=user_name()executesp_addextendedproperty"MS_Description","社团信息表","user",@CmtAssociationInfm,"table","AssociationInfm"go/*==============================================================*//*Table:AssociationInfmYear*//*==============================================================*/createtableAssociationInfmYear(AssociationNamevarchar(50)notnull,SchoolYearnumericnotnull,PresidentNamevarchar(10)notnull,PresidentPhonechar(11)null,MemberNumnumericnull,TotalScorenumericnotnull,TotalFundsmoneynotnull,UseFundsmoneynotnull,StarGradevarchar(4)notnull,constraintPK_ASSOCIATIONINFMYEARprimarykey(AssociationName,SchoolYear))go/*==============================================================*//*Index:AssociationInfmYear_FK*//*==============================================================*/createindexAssociationInfmYear_FKonAssociationInfmYear(AssociationNameASC)go/*==============================================================*//*Index:AssociationInfmYear2_FK*//*==============================================================*/createindexAssociationInfmYear2_FKonAssociationInfmYear(SchoolYearASC48 )go/*==============================================================*//*Table:FundsAccount*//*==============================================================*/createtableFundsAccount(AccountIDnumeric(1,1)notnull,SchoolYearnumericnotnull,FundsNummoneynotnull,UseReasonvarchar(500)null,constraintPK_FUNDSACCOUNTprimarykeynonclustered(AccountID))godeclare@CmtFundsAccountvarchar(128)select@CmtFundsAccount=user_name()executesp_addextendedproperty"MS_Description","资金报销表","user",@CmtFundsAccount,"table","FundsAccount"go/*==============================================================*//*Index:Relationship_8_FK*//*==============================================================*/createindexRelationship_8_FKonFundsAccount(SchoolYearASC)go/*==============================================================*//*Table:FundsAccountWrong*//*==============================================================*/createtableFundsAccountWrong(AccountWrongIDnumeric(1,1)notnull,AccountIDnumeric(1,1)notnull,WrongReasonvarchar(500)null,IsDealchar(1)null,constraintPK_FUNDSACCOUNTWRONGprimarykeynonclustered(AccountWrongID))godeclare@CmtFundsAccountWrongvarchar(128)select@CmtFundsAccountWrong=user_name()executesp_addextendedproperty"MS_Description","账目有误表",48 "user",@CmtFundsAccountWrong,"table","FundsAccountWrong"go/*==============================================================*//*Index:Relationship_9_FK*//*==============================================================*/createindexRelationship_9_FKonFundsAccountWrong(AccountIDASC)go/*==============================================================*//*Table:SchoolYear*//*==============================================================*/createtableSchoolYear(SchoolYearnumericnotnull,constraintPK_SCHOOLYEARprimarykeynonclustered(SchoolYear))godeclare@CmtSchoolYearvarchar(128)select@CmtSchoolYear=user_name()executesp_addextendedproperty"MS_Description","学年表","user",@CmtSchoolYear,"table","SchoolYear"go/*==============================================================*//*Table:ScoreDisOptReason*//*==============================================================*/createtableScoreDisOptReason(DisScoreOperateIDnumeric(1,1)notnull,ScoreOperateIDnumeric(1,1)notnull,DisReasonvarchar(500)null,IsDealchar(1)null,constraintPK_SCOREDISOPTREASONprimarykeynonclustered(DisScoreOperateID))godeclare@CmtScoreDisOptReasonvarchar(128)select@CmtScoreDisOptReason=user_name()executesp_addextendedproperty"MS_Description","加减分不通过原因表","user",@CmtScoreDisOptReason,"table","ScoreDisOptReason"go48 /*==============================================================*//*Index:Relationship_7_FK*//*==============================================================*/createindexRelationship_7_FKonScoreDisOptReason(ScoreOperateIDASC)go/*==============================================================*//*Table:ScoreOperate*//*==============================================================*/createtableScoreOperate(ScoreOperateIDnumeric(1,1)notnull,SchoolYearnumericnotnull,UserIDchar(256)notnull,AssociationNamevarchar(50)notnull,Scorenumericnotnull,ScoreOprReasonvarchar(500)null,IsRightchar(1)null,constraintPK_SCOREOPERATEprimarykeynonclustered(ScoreOperateID))godeclare@CmtScoreOperatevarchar(128)select@CmtScoreOperate=user_name()executesp_addextendedproperty"MS_Description","加减分详情表","user",@CmtScoreOperate,"table","ScoreOperate"go/*==============================================================*//*Index:Relationship_11_FK*//*==============================================================*/createindexRelationship_11_FKonScoreOperate(UserIDASC)go/*==============================================================*//*Index:Relationship_10_FK*//*==============================================================*/createindexRelationship_10_FKonScoreOperate(SchoolYearASC)go48 /*==============================================================*//*Index:Relationship_12_FK*//*==============================================================*/createindexRelationship_12_FKonScoreOperate(AssociationNameASC)go/*==============================================================*//*Table:SystemUser*//*==============================================================*/createtableSystemUser(UserIDchar(256)notnull,RoleNamevarchar(50)notnull,UserNamevarchar(10)notnull,Passwordvarchar(20)notnull,DepartNamevarchar(50)notnull,IsCheckchar(1)null,constraintPK_SYSTEMUSERprimarykeynonclustered(UserID))godeclare@CmtSystemUservarchar(128)select@CmtSystemUser=user_name()executesp_addextendedproperty"MS_Description","系统用户表","user",@CmtSystemUser,"table","SystemUser"go/*==============================================================*//*Index:Relationship_1_FK*//*==============================================================*/createindexRelationship_1_FKonSystemUser(RoleNameASC)go/*==============================================================*//*Table:UserRoleName*//*==============================================================*/createtableUserRoleName(RoleNamevarchar(50)notnull,constraintPK_USERROLENAMEprimarykeynonclustered(RoleName))go48 declare@CmtUserRoleNamevarchar(128)select@CmtUserRoleName=user_name()executesp_addextendedproperty"MS_Description","角色表","user",@CmtUserRoleName,"table","UserRoleName"goaltertableActivityDisReasonaddconstraintFK_ACTIVITY_RELATIONS_ACTIVITYforeignkey(ActivityID)referencesActivityInfm(ActivityID)goaltertableActivityInfmaddconstraintFK_ACTIVITY_RELATIONS_ASSOCIATforeignkey(AssociationName)referencesAssociationInfm(AssociationName)goaltertableAssociationInfmYearaddconstraintFK_ASSOCIAT_ASSOCIATI_ASSOCIATforeignkey(AssociationName)referencesAssociationInfm(AssociationName)goaltertableAssociationInfmYearaddconstraintFK_ASSOCIAT_ASSOCIATI_SCHOOLYEforeignkey(SchoolYear)referencesSchoolYear(SchoolYear)goaltertableFundsAccountaddconstraintFK_FUNDSACC_RELATIONS_SCHOOLYEforeignkey(SchoolYear)referencesSchoolYear(SchoolYear)goaltertableFundsAccountWrongaddconstraintFK_FUNDSACC_RELATIONS_FUNDSACCforeignkey(AccountID)referencesFundsAccount(AccountID)goaltertableScoreDisOptReasonaddconstraintFK_SCOREDIS_RELATIONS_SCOREOPEforeignkey(ScoreOperateID)referencesScoreOperate(ScoreOperateID)goaltertableScoreOperateaddconstraintFK_SCOREOPE_RELATIONS_SCHOOLYEforeignkey(SchoolYear)referencesSchoolYear(SchoolYear)go48 altertableScoreOperateaddconstraintFK_SCOREOPE_RELATIONS_SYSTEMUSforeignkey(UserID)referencesSystemUser(UserID)goaltertableScoreOperateaddconstraintFK_SCOREOPE_RELATIONS_ASSOCIATforeignkey(AssociationName)referencesAssociationInfm(AssociationName)goaltertableSystemUseraddconstraintFK_SYSTEMUS_RELATIONS_USERROLEforeignkey(RoleName)referencesUserRoleName(RoleName)go6.总结本系统的设计,需求是根据合作二人在社联、社团的工作经历以及身边在社联、社团工作的朋友的分析提出。有的功能设计方式不见得非常好,如活动申请机制、用户添加机制;有的处理方式明明可以使用更好的方式,也未采纳,如资金公开机制;还有的功能可以继续向更加完善的方向扩展,如社团注册。这些问题,在设计之初就已发现,但依然采用了现在提出的方案,这大部分是因为,合作二人通过分析,认为当前所提出的方案,是现阶段,最符合学校团委、社团及社联系统使用需求的方案。当然,合作二人的分析具有相对局限性,还望大家批评指正。参加本次课程设计,最大的收获在于,对于数据库的设计方法,思想认识进一步加深。在课程设计之前几个星期,合作二人便已将本数据库设计完成,准备参加学校的数据库设计大赛。因为时间缘故,当时做得比较急,中间有很多问题没有得到解决。通过本次课程设计,对之前思路的进一步分析,一些技术老师的进一步讲解,加上二人的再次修改,现在的设计方案较之先前,有了非常明显的提高。对于本次课程设计,还是存有一定的遗憾,那就是时间太少,很多细节问题还没来得及跟老师一一求解,就得开始答辩,希望自己下来能认真对待自己的劳动成果,将之进一步改善,并努力通过编程实现,以期本设计方案能够真正投入使用。7.参考文献[1]《数据库系统概论》作者:王珊、萨师煊高等教育出版社第三版[2]《PowerDesigner系统分析与建模》作者:赵韶平等清华大学出版社[3]《数据库原理及应用》作者:钱雪忠北京邮电大学出版社2007,8第二版[4]《数据库建模技术》作者:闫河、刘加伶、刘智计算机学院信息管理系48'