1、课程设计学生社团管理系统 学生: 学号:E-Mail:目录序言2第1 章 系统开发背景及组织结构分析21.1 系统开发背景21.2 组织结构分析21.3 可行性分析3第2 章 需求分析42.1 系统目标42.2 功效需求分析4第3 章 用例建模53.1 参与者53.2 用例53.3 绘制用例图63.4 用例具体描述7第4 章 系统分析124.1 概念模型124.1.1 名词识别法找类124.1.2 类和类之间关系124.1.3 类职责124.1.4 类图134.2 关键动态模型144.2.1 次序图144.2.2 状态图154.2.3 活动图17第5 章 系统设计185.1 代码设计185.2
2、 数据库设计195.2.1 概念结构设计(CDM 图)195.2.2 物理结构设计(PDM 图)215.3 输出设计295.4 输入设计315.5 构件图325.6 布署图32课程设计总结33序言第1 章 系统开发背景及组织结构分析1.1 系统开发背景当今信息化时代已经不可逆转,网络管理成为一个新兴经济模式,网上社团管理含有很好发展前景和较高实用性。信息化是企业同世界接轨一个肯定方向,因为计算机事业不停发展,使得计算机得以推广和普及。对应计算机应用系统也不停被大家所接收,大大缩减了大家工作量,提升了工作效率,给企业带来了巨大收益。有利于降低管理成本,有益于社团、组员和管理,经过网站管理社团信息
3、利于提升社团形象。设计本网站意在社团管理安全性,方便管理者和学生使用。经过计算机对社团管理,既能方便社团网站使用者,缩短时间,又有利于降低成本、强化内部管理、提升社团形象。1.2 组织结构分析高校学生社团管理系统关键包含登录、加入社团、留言、社团组员管理、公布公告、社团管理、社团管理员变更、社团活动管理等功效模块,系统基础功效模块图1.1所表示:图1.1 系统基础功效模块图该社团管理基础功效具体描述以下:(1) 登录: 全部学生均可登录到社团管理网站查看更新个人信息,含有某社团管理权限学生能够进入该社团进行社团管理。管理员登录进行社团和学生管理。(2) 留言: 已登录学生能够进入全部社团留言板
4、进行留言,和其它人员交流。(3) 加入社团: 已登录学生能够查看正在招募团员社团,查看信息,并申请加入。(4) 组织活动: 社团管理人员能够填写活动申请表组织社团活动,待管理员审核经过,发出活动通知。(5) 社团公告管理: 社团管理员发出公告通知社团组员。全部学生全部可浏览。(6) 社团活动管理: 管理员对社团组织活动申请进行审核,将审核结果反馈给对应社团。(7) 社团管理员更换: 当社团管理员需要发生交替时,管理员对社团管理员社团权限重新分配。(8) 学生信息管理:管理员可增删改社团组员信息,按要求对学生信息进行检索。1.3 可行性分析关键从以下多个方面分析1、经济可行性分析开发该系统所需相
5、关资料能够经过已存在相关系统进行调查采集,所需其它应用软件、硬件系统也易于取得。所以,开发成本较低。而引进使用本系统后和传统方法相比,含有高效率、低成本、高质量特点,能够节省不少人力、物力及财力。所以,从经济角度来看,该系统可行。2、技术可行性分析 技术可行性要考虑现有技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发需求等。本网站调试相对简单,目前计算机硬件配置也完全满足开发需求,所以在技术上是绝对可行。3、运行可行性运行可行性是对组织结构影响,现有些人员和机构及环境对系统适应性及人员培训补充计划可行性。目前信息化技术已经相当普及,各类操作人员水平全部有相当高度,所以在运行上是可行。4
6、、法律可行性全部技术资料全部为正当。开发过程中不存在只是产权问题。未剽窃任何网站,不存在侵犯版权问题。开发过程中未包含任何法律责任。总而言之,本系统开发从经济上、从技术上。从法律上全部是完全可靠。第2 章 需求分析2.1 系统目标高校社团管理系统关键为了学生愈加好了解社团、和社团间互动、缩减加入社团创建社团步骤,同时社团管理人员方便、有序对高校社团人员管理,提升社团影响力和高效率。2.2 功效需求分析该系统含有以下功效:学生用户能够登录到社团网站,实现更新自己信息,查看社团信息,加入社团,退出社团,创建社团,查看社团活动、社团留言等功效。假如学生用户含有某一社团管理权限,该学生能够对该社团进行
7、加入社团审批,退出社团审批,公布公告,打印社团组员信息,组织活动等功效。管理员登录含有对学生进行管理,社团审批,社团活动审批,社团管理,打印社团信息,打印学生信息,社团责任人跟换等功效。第3 章 用例建模3.1 参与者使用该系统学生;含有社团管理权限学生;管理和维护系统管理人员。其中社团管理员由在校学生担任。图3.1 参与者3.2 用例表3.1 特征合并成用例参与者特征用例学生用户按要求输入用户登录信息,点击登录,系统对用户账户密码进行验证登录用户按需求更新自己个人信息更新个人信息用户按需求选择加入或退出社团加入社团,系统显示申请表,用户按要求填写申请申请加入/退出社团用户按需求填写创建社团申
8、请表系统将提交结果返回给用户,并通知用户等候管理员审核创建社团申请用户按需求编辑留言信息公布留言社团管理员用户按需求填写活动申请信息等候管理员审核组织社团活动新建档案,用户按需求填写档案信息资料存档社团管理员填写公告信息公布公告社团管理员对社团组员请求进行审核审核系统管理员统管理员对活动状态进行管理更改活动状态管理社团活动社团管理员按要求填写权限变更申请,系统管理员审核更换社团责任人系统管理员对学生信息进行操作社团组员管理按条件打印出学生信息打印报表3.3 绘制用例图用例图图3.3 用例图3.4 用例具体描述表3.4.1 用户登录用例描述用例用户登录简明描述不一样用户含有不一样功效参与者学生、
9、管理员前置条件含有有效登录账户主事件流进入登录页面,用例开始实施用户按要求输入用户登录信息,点击登录,系统对用户账户密码进行验证,验证经过依据用户权限进入含有对应功效界面,用户实施其它操作备选事件流用户名密码错误,系统给犯错误提醒,用户进入登录页面重新输入或进行密码找回操作后置条件假如用例成功,用户进入个人功效界面,不然系统状态不发生改变表3.4.2 更新个人信息用例描述用例更新个人信息简明描述用户更新个人信息参与者学生、管理员前置条件含有有效登录账户主事件流已经登录用户,当用户进入个人界面时候,用例开始实施用户按需求更新自己个人信息用户点击更新操作系统更新用户信息并将操作结果返回给用户备选事
10、件流信息更新失败,系统给出提醒,用户按提醒重新输入信息后置条件假如用例成功,刷新个人信息,不然系统状态不发生改变表3.4.3 申请加入/退出社团用例描述用例申请加入/退出社团简明描述学生退出加入社团参与者学生前置条件含有有效登录账户、账户类型为学生类型主事件流已经登录用户,当用户进入社团信息界面时候,用例开始实施用户按需求选择加入或退出社团加入社团,系统显示申请表,用户按要求填写申请用户提交申请表,提交成功系统给出提醒,并通知用户审核完成时间。审核成功通知用户。备选事件流提交申请失败,系统给出提醒,用户按提醒重新输入信息,审核失败,用户重新按要求提交申请。后置条件假如用例成功,更新已加入社团信
11、息,不然系统状态不发生改变表3.4.4 创建社团申请用例描述用例创建社团申请简明描述学生创建社团参与者学生前置条件含有有效登录账户主事件流已经登录用户,当用户选择创建社团功效时候,用例开始实施用户按需求填写创建社团申请表用户点击提交系统将提交结果返回给用户,并通知用户等候管理员审核审核成功,用户拥有进入该社团管理界面权限,并统计社团信息备选事件流申请表提交失败,系统给出提醒,用户按提醒重新输入信息,审核失败,用户重新提交申请。后置条件假如用例成功,用户权限改变,不然系统状态不发生改变表3.4.5 公布留言用例描述用例公布留言简明描述用户能够公布留言参与者学生前置条件含有有效登录账户主事件流已经
12、登录用户,当用户进入社团信息界面时候,用例开始实施用户按需求编辑留言信息用户点击提交操作系统更新留言板信息备选事件流信息提交失败,系统给出提醒,用户按提醒重新编辑信息,再次提交后置条件假如用例成功,刷新留言板信息和个人留言统计,不然系统状态不发生改变表3.4.6 组织社团活动用例描述用例组织社团活动简明描述拥有社团管理权限学生组织社团活动参与者社团管理员前置条件用户含有有效登录账户且含有社团管理权限主事件流已经登录社团管理员,当进入社团活动管理界面时候,用例开始实施用户点击申请社团活动用户按需求填写活动申请信息用户点击提交操作提交成功,系统给出提醒,并将通知用户等候系统管理员审核审核成功,系统
13、通知用户,并统计活动信息备选事件流活动申请表提交,系统给出提醒,用户按提醒重新输入信息后置条件假如用例成功,更新社团活动,不然系统状态不发生改变表3.4.7 资料存档用例描述用例资料存档简明描述对社团部分关键信息进行存档参与者社团管理员前置条件用户含有有效登录账户且含有社团管理权限主事件流已经登录社团管理员,当进入社团档案管理界面时候,用例开始实施用户点击新建档案用户按需求填写档案信息用户点击提交操作存档成功,系统给出提醒,并更新档案信息备选事件流存档失败,系统给出提醒,用户按提醒重新输入信息后置条件假如用例成功,更新社团档案,不然系统状态不发生改变表3.4.8 公布公告用例描述用例公布公告简
14、明描述社团管理员公布公告参与者社团管理员前置条件用户含有有效登录账户且含有社团管理权限主事件流已经登录社团管理员,当进入社团公布公告界面时候,用例开始实施用户点击公布公告用户填写公告信息用户点击提交操作公布成功成功,系统给出提醒,并更新公告栏信息备选事件流公布公告失败,系统给出提醒,用户按提醒重新输入信息后置条件假如用例成功,更新公告栏,不然系统状态不发生改变表3.4.9 管理社团活动用例描述用例管理社团活动简明描述系统管理员对社团活动进行管理参与者系统管理员前置条件含有有效系统管理员账户主事件流已经登录系统管理员,进入社团活动管理界面时候,用例开始实施系统显示全部社团活动,系统管理员对活动状
15、态进行管理更改活动状态,更改成功系统更新用户信息并将操作结果返回给系统管理员备选事件流活动状态更新失败,系统给出提醒,用户按提醒重新活动状态后置条件假如用例成功,刷新活动状态信息,不然系统状态不发生改变表3.4.10 更换社团责任人用例描述用例更换社团责任人简明描述社团职位变更参与者社团管理员、系统管理员前置条件用户含有有效登录账户和对应权限主事件流已经登录社团管理员,进入权限变更界面时候,用例开始实施社团管理员按要求填写权限变更申请用户点击提交操作系统管理员对权限变更申请进行审核,经过审核,系统管理员进行权限变更操作,操作成功,系统将信息返回给社团并将操作统计存档系统更新社团组员信息备选事件
16、流权限更换表提交失败,系统给出提醒,用户按提醒重新输入信息系统管理员权限更换失败,系统将失败原因返回后置条件假如用例成功,更新社团权限信息,不然系统状态不发生改变表3.4.11 学生信息管理用例描述用例学生信息管理简明描述对学生信息进行增删改查参与者系统管理员前置条件含有有效管理员账户主事件流已经登录系统管理员,进入学生管理界面时候,用例开始实施用户按需增删改查学生信息操作成功,系统对操作进行提醒更新显示信息备选事件流信息增删改查失败,系统给出提醒,用户按提醒重新增删改查信息后置条件假如用例成功,刷新学生信息,不然系统状态不发生改变表3.4.12 打印报表用例描述用例打印报表简明描述系统管理员
17、按需求查看学生参与者系统管理员前置条件含有有效管理员账户主事件流已经登录系统管理员,进入学生管理界面时候,用例开始实施用户按需求筛选学生信息筛选成功,系统对操作进行提醒并更新显示信息用户点击打印操作系统将学生信息输出到表格输出成功,系统对操作给出提醒备选事件流信息筛选失败,系统给出提醒,用户按提醒重新筛选信息信息输出失败,系统给出提醒,用户按提醒重新输出信息后置条件假如用例成功,更新页面显示信息并输出学生信息,不然系统状态不发生改变第4 章 系统分析4.1 概念模型4.1.1 名词识别法找类发觉类最常见方法就是“名词识别法”,在“需求特征列表”基础上进行分析,将全部名词及名词短语列表,这就是备
18、选类。经过名词识别法能够确定本系统候选类有:学生、社团、系统管理员、社团管理员、社团活动、留言、职位、公告、档案、指导老师4.1.2 类和类之间关系确定了候选类以后,应该对其之间关联关系进行分析。依据“需求特征列表”及前面相关信息不难得悉:(1)学生类能够包含社团管理员(2)社团组员能够由学生、社团管理员组成(3)学生、社团管理员、系统管理员是关键实体,学生能够留言和查看社团信息每个学生全部有一个职位(4)学生和职位、社团、留言存在关联关系。每个学生能够加入多个社团,每个学生有多个职位;一个学生能够有多条留言(5)社团和公告、档案、社团活动、指导老师是直接关联4.1.3 类职责类职责就是类所维
19、护知识(组员属性)和能够实施行为(组员方法)。依据前面需求信息,能够取得很多类组员属性。(1) 学生:包含学号、学生姓名、登录密码、专业、联络方法、加入社团、QQ、性别、年级、政治面貌、爱好、才艺。(2) 职位:职位ID、职位名称、备注(3) 公告:公告ID、社团ID、社团名称标题、内容、学号、姓名、时间、状态(4) 社团留言:留言ID、社团ID、留言人ID、内容、时间(5) 社团:社团ID、社团名称、社团介绍、活动地点、创建时间、指导老师号、会长学号、状态ID、所属学院、招募状态(6) 指导老师:老师职员号、姓名、所属学院、负责社团、联络方法(7) 管理员:管理员ID、登录面貌、联络方法、所
20、属学院(8) 更换社团管理员:更换统计ID、社团ID、职位、原责任人ID、现责任人ID、更换原由、凭证、时间(9) 社团活动:活动ID、社团ID、社团名称、活动专题、活动内容、参与人员、活动时间、活动地点、状态ID、所需经费(10) 存档管理:存档ID、社团ID、电子路径、非电子路径、存档时间、责任人ID、备注(11) 财务管理:账单ID、社团ID、活动ID、申请人ID、金额、原由、时间4.1.4 类图图4.1 类图4.2 关键动态模型4.2.1 次序图4.2.1.1 登录次序图表4.2.1.2 加入社团次序图4.2.1.3 活动申请次序图4.2.2 状态图(1)学生登录状态图4.2.2.1
21、学生登录状态图(2)社团加入申请状态图4.2.2.2 社团加入申请状态图(3)活动申请状态图4.2.2.3 活动申请状态图4.2.3 活动图在商务建模层次,活动图可用于在业务单元等级上对更高等级业务过程进行建模,比如企业目前在怎样运作业务,或业务怎样运作等,显示关键业务步骤。在具体处理步骤层次,活动图也常被用来描述一个用例处理步骤,或对低等级内部类操作进行建模,用于表示在处理某个活动时,两个或更多类对象之间过程控制流。图4.2.3 构件图第5 章 系统设计5.1 代码设计1 学生代码设计学生代码采取11 位字符编码,由学生注册时系统按要求生成比如:第一个注册学生编号是120 0306 0101
22、,120表示年级、0306、表示专业、0101表示所在班级2 社团代码设计社团代码采取11 位字符编码,前三位字符代表创建年,中间四位字符字表示所属学院,最终四位表示社团次序。XXX X X X X X X X X比如:创建社团编号是120 0300 0101。3 管理员代码设计管理员代码采取11位字符编码,前三位字符代表创建年,中间四位字符字表示所属学院,最终四位表示职员次序XXX X X X X X X X X比如:创建管理员编号是120 0006 0101。4 公告表代码设计管理员代码采取11位字符编码,自增。XXX X X X X X X X X比如:公布编号是000 0006 010
23、1。5 指导老师代码设计指导老师代码采取11位字符编码,前三位字符代表创建年,中间四位字符字表示所属学院,最终四位表示职员次序XXX X X X X X X X X比如:创建指导老师编号是120 0006 0101。6 社团活动代码设计社团活动代码采取11位字符编码,前三位字符代表创建年,中间四位字符字表示所属社团,最终四位表示活动序号XXX X X X X X X X X比如:创建社团活动编号是120 0006 0101。7 档案代码设计档案代码采取11位字符编码,前三位字符代表创建年,中间四位字符字表示社团,最终四位表示档案次序XXX X X X X X X X X比如:创建档案编号是12
24、0 0006 0101。8 财务代码设计财务代码采取11位字符编码,前三位字符代表创建年,中间四位字符字表示所属学院,最终四位表示账单次序XXX X X X X X X X X比如:创建财务编号是120 0006 0101。5.2 数据库设计5.2.1 概念结构设计(CDM 图)本系统抽象出实体有: 学生、社团留言、社团、职位、公告、管理员、活动、指导老师、财务、档案。学生和社团是多对多关系、学生和留言是一对多关系、学生和职位是一对多关系、社团和活动是一对多关系,财务和活动是一对一关系、社团和指导老师是一对一关系,社团和档案是一对多关系。PowerDesigner 绘制出CDM图图所表示:图5
25、.1 CDM图5.2.2 物理结构设计(PDM 图)图5.2 PDM图 表名学生表主键学号索引字段学生姓名序号字段名称数据类型(精度范围)许可为空Y/N唯一Y/N默认值约束条件说明1学号Long characters (11)NY主键2学生姓名varchar(20)NN3登录密码varchar(20)NN4专业Variable characters (20)NN5联络方法Long characters (11)NN6加入社团数目intNN7性别Char(2)NN8年级Char(2)NN9政治面貌Char(12)NN10QQvarchar(12)YN11爱好varchar(50)YN12才艺va
26、rchar(50)YNsql脚本create table StudentTable ( StuNumber varchar(11) not null, AdminID varchar(11) null, StuName varchar(20) not null, PWD varchar(20) not null, Profession varchar(20) not null, Phone varchar(11) not null, AssociationsNum int not null, QQ varchar(12) null, Sex char(2) not null, Grade ch
27、ar(6) not null, Political char(4) not null, Hobby varchar(50) null, Talent varchar(50) null, constraint PK_STUDENTTABLE primary key nonclustered (StuNumber)go/*=*/* Index: StudentManagement_FK */*=*/create index StudentManagement_FK on StudentTable (AdminID ASC)go表名社团表主键社团ID索引字段社团名称序号字段名称数据类型(精度范围)许
28、可为空Y/N唯一Y/N默认值约束条件说明1社团IDvarchar(50)NY主键 2社团名称varchar(50)NN外键3药品名称varchar(50)NN外键4药品剂量varchar(50)NN外键5药品价格moneyNN外键6医生姓名varchar(50)NN7日期dateNNSql脚本CREATE TABLE dbo.处方(处方编号 varchar(50) NOT NULL,用户姓名 varchar(50) NOT NULL,药品名称 varchar(50) NOT NULL,药品剂量 varchar(50) NOT NULL,药品价格 money NOT NULL,医生姓名 varc
29、har(50) NOT NULL,日期 date NOT NULL, CONSTRAINT PK_处方 PRIMARY KEY CLUSTERED (处方编号 ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY表名社团留言表主键留言ID索引字段所属社团序号字段名称数据类型(精度范围)许可为空Y/N唯一Y/N默认值约束条件说明1留言IDvarchar(11)
30、NY主键2所属社团varchar(20)NNSql脚本create table AssociationMessageTable ( MessageID varchar(11) not null, Affiliated Society varchar(20) not null, constraint PK_ASSOCIATIONMESSAGETABLE primary key nonclustered (MessageID)表名职位表主键职位ID索引字段职位序号字段名称数据类型(精度范围)许可为空Y/N唯一Y/N默认值约束条件说明1职位IDvarchar(2)NY主键2职位varchar(10)
31、NN3备注varchar(50)NNSql脚本create table JobTable ( PositionID varchar(2) not null, PositionName varchar(10) not null, Remarks varchar(50) not null, constraint PK_JOBTABLE primary key nonclustered (PositionID)表名管理员表主键管理员ID索引字段管理员序号字段名称数据类型(精度范围)许可为空Y/N唯一Y/N默认值约束条件说明1管理员IDvarchar(11)NY主键2登录密码varchar(20)NN
32、3状态IDchar(10)NN4联络方法varchar(11)NN5所属院系varchar(20)NN6管理员姓名varchar(20)NNSql脚本create table AdminTable ( AdminID varchar(11) not null, PWD varchar(20) not null, StateID char(10) null, Phone varchar(11) not null, Faculty varchar(20) not null, AdminName varchar(20) not null, constraint PK_ADMINTABLE prima
33、ry key nonclustered (AdminID)表名社团表主键社团ID索引字段社团名称序号字段名称数据类型(精度范围)许可为空Y/N唯一Y/N默认值约束条件说明1社团IDvarchar(11NY主键2老师职员号varchar(11NN3管理员IDvarchar(11NN4社团名称varchar(20)NN5会长名称varchar(20)NN6社团介绍varchar(100)NNN7创建时间datetimeNN8活动地点varchar(50)NN9所属社团varchar(20)NNSql脚本/*=*/create table AssociationTable ( Association
34、ID varchar(11) not null, TeacherID varchar(11) not null, AdminID varchar(11) null, AssociationName varchar(20) not null, President name varchar(20) null, Interduce varchar(100) not null, CreateTime datetime null, ActivePlace varchar(50) null, Faculty varchar(20) not null, constraint PK_ASSOCIATIONTA
35、BLE primary key nonclustered (AssociationID)表名公告表主键公告ID索引字段标题序号字段名称数据类型(精度范围)许可为空Y/N唯一Y/N默认值约束条件说明1公告IDvarchar(11NY主键2标题varchar(11NN3内容varchar(11NNSql脚本/*=*/create table AnnouncementTable ( NoticeID varchar(11) not null, Title varchar(100) not null, Content varchar(1000) not null, constraint PK_ANNO
36、UNCEMENTTABLE primary key nonclustered (NoticeID)表名指导老师表主键老师职员号索引字段老师姓名序号字段名称数据类型(精度范围)许可为空Y/N唯一Y/N默认值约束条件说明1老师职员号varchar(11NY主键2社团IDvarchar(11NN3所属学院varchar(20)NN4联络方法varchar(11)NN5老师姓名varchar(20)NNSql脚本create table TeacherTable ( TeacherID varchar(11) not null, AssociationID varchar(11) null, Affi
37、liatedCollege Affiliated Affiliated varchar(20) not null, Phone varchar(11) not null, TeacherName varchar(20) not null, constraint PK_TEACHERTABLE primary key nonclustered (TeacherID)表名社团活动表主键活动ID索引字段管理员ID序号字段名称数据类型(精度范围)许可为空Y/N唯一Y/N默认值约束条件说明1活动IDvarchar(11NY主键2社团IDvarchar(11NN3管理员IDvarchar(11)NN4活动专题varchar(50)NN5活动内容varchar(100)NN6参与人员varchar(20)NN7活动时间datetimeNN8活动地点varchar(50NN9活动经费float(4)NNSql脚本create table ActiveTable ( ActiveID varchar(11) not null, AssociationID varchar(11) null, AdminID varchar(11) null, T