社团管理系统详细设计说明书.docx
- 文档编号:29009801
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:16
- 大小:35.16KB
社团管理系统详细设计说明书.docx
《社团管理系统详细设计说明书.docx》由会员分享,可在线阅读,更多相关《社团管理系统详细设计说明书.docx(16页珍藏版)》请在冰豆网上搜索。
社团管理系统详细设计说明书
<社团管理系统>
详细设计说明书
[(版本号)]
拟制人
审核人
[年月日]
1.引言
编写目的
本说明书在概要设计的基础上,对信息发布系统的各模块、程序分别进行了实现层面上的要求和说明。
项目背景
项目全称:
厦门理工学院社团管理系统
项目发起者:
09软件工程2班DWLGY小组
项目开发者:
09软件工程2班DWLGY小组
项目用户:
厦门理工的广大师生
定义
USECASE
用例
会员
社团管理系统中合法的注册用户
游客
未注册或者未登录的社团管理系统平台浏览者
管理员
系统的管理者
参考资料
[1]天极网新技术研究室.完全入门.人民邮电出版社,
[2]SanjeevRohilla等著,陈君等译.专业项目实例开发.中国水利水电出版社,
[3]启明工作室编著.网络应用系统开发与实例.人民邮电出版社,
[4]王华杰,李律松孙一波等编著.C#数据库开发技术.清华大学出版社,
[5]攀建编著.+项目开发实例.清华大学出版社,
[6](美)Jones著,高春蓉等译.从入门到精通.电子工业出版,
[7]ScottWorley著,王文龙刘湘宁译.技术内幕.人民邮电出版社,
[8]RussBasiura等著,杨浩译.Web服务高级编程.清华大学出版社,
[9](美)AngshumanChakraborti等著,唐云深,赵世华等译.NETFramework专业项目实例开发..中国水利水电出版社,
[10]ScottAllen等著.C#数据库入门.郝启堂张哲峰译.清华大学出版社,
[11](美)微软公司著.NET框架类库参考手册.清华大学出版社,
[12]SteveWalther著.:
Tips,Tutorials,andCode.电子工业出版社,
[13](美)JeffreyRichte著.Frameworks.清华大学出版社,
[14]AlexHomer等.WebFormsProgramming.清华大学出版社,
2.总体设计
需求概述
社团管理系统需要满足来自三方面的需求,这三个方面分别是会员、社团和管理员。
会员的需求是查询院系各社团的活动情况、会员参加的各个社团情况及会员信息的修改;社团需对会员参加社团、注销社团的基本情况进行操作;社团管理系统的管理员的功能最为复杂,包括对会员、社团的活动等各方面的信息进行管理和统计,及系统状态的查看、维护并生成会员社团统计表。
会员可以直接查看参加社团及社团活动情况,会员可以根据本人学号和密码登录系统,还可以进行对本人参加社团情况的查询和维护部分个人信息以及各社团的活动安排等相关信息。
一般情况下,会员只应该查询和维护本人的参加社团情况和个人信息,若查询和维护其他会员的信息,就要知道其他会员的学号和密码。
这些是很难得到的,特别是密码,所以不但满足了会员的要求,还保护了会员的个人隐私。
社团工作人员有修改会员个人信息的权限,所以需对工作人员登陆本模块进行更多的考虑。
在此系统中,社团工作人员可以为会员加入社团或是登陆记录,并打印生成相应的报表给用户查看和确认院系管理人员功能的信息量大,数据安全性和保密性要求最高。
本功能实现对会员参加各社团相关信息的查询和统计、工作人员和管理人员信息查看及维护。
社团管理员可以浏览、查询、修改、统计社团的基本信息;浏览、查询、统计和修改会员参加社团活动的基本信息,设计不同用户的操作权限和登陆方法对所有用户开放的会员信息查询和个人部分信息维护查看个人情况信息维护会员个人密码根据注册的情况对数据库进行操作并生成报表。
社团管理系统的数据流程:
首先由社团工作人员或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入处理,然后保存信息到数据库中。
有权限的人可以对这些库信息进行修改和删除处理。
所有用户均可以进行信息查询和统计,没有权限用户还可以基于注册界面进行注册,来参加相应的社团。
软件结构
本程序采用B/S架构,并使用了四层逻辑结果,如图1所示:
图1系统结构示意图
以下为用户社团管理系统流程图,也是我们的核心工作流程图,如图2所示:
图2系统流程图
3.程序描述
功能
工作流程为:
打开该系统网站,普通浏览者能浏览、阅读和社团信息及新闻,能进行注册,注册后为网站准会员,系统管理员登录进入新闻后台管理区,可以进行如下管理:
社团信息管理
删除和修改社团信息
对已有社团进行部门管理
对社团章程管理
对社团的活动信息进行管理
添加社团(注:
授权码最为重要,它将在社团注册时为唯一识别码)
管理员信息管理
添加管理员
修改或删除管理员信息
新闻管理
公告管理(添加、删除和修改)
新闻管理(添加、删除和修改)
用户管理
个人用户管理(添加、删除和修改)
协会用户管理(添加、删除和修改)
下载管理
表格管理(修改和删除)
资料管理(删除和修改)
添加信息(添加下载资料)
留言管理
个人留言管理(回复和删除留言)
图片管理
添加图片
删除图片
修改图片
实用信息管理
添加使用信息
系部管理(添加、删除和修改系部)
性能
该系统操作简单、界面友好:
完全控件式的页面布局,使得社团信息及新闻的录入工作更简便,为用户提供方便快捷的社团管理及相关信息的发布,更将作为一个向外部展示本学校的社团建设成就。
即时可见:
对社团信息的处理(包括录入、修改、删除)将立即在主页的对应栏目显示出来,达到“即时发布、即时见效”的功能;
系统运行应该快速、稳定、高效和可靠;
在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。
运行环境及设备要求
设备
客户机硬件要求:
具有PentiumIII处理器以上且满足以下要求的计算机:
最低64MB内存,最小GB硬盘。
服务器硬件要求:
具有PentiumIII处理器以上且满足以下要求的计算机:
最低256MB内存,最小8GB硬盘。
支持程序
客户端
操作系统:
Windows98/NT/2000/XP或更高版本
浏览器:
IE以上或Netscape同等版本以上
服务器
操作系统:
Windows2000Server或者Windows2003Server
Web服务器:
MSIIS
应用服务器:
IIS、COM+等企业级应用服务器
数据库:
SQLSERVER
算法
重要算法及部分代码
Web用户控件
该系统中创建了两个Web用户控件和,在首页、新闻动态、社联简介、资料下载等页面的HTML代码里都进行了引用,调用方式为:
<%@RegisterSrc="../WebControl/"TagName="Head"TagPrefix="uc1"%>
<%@RegisterSrc="../WebControl/"TagName="Foot"TagPrefix="uc2"%>
@Register指令注册用户控件,同时把属性TagName(标签名)和TagPrefix(标签前缀)添加到@Register指令中,Src属性表示该用户控件相对于父页面的相对地址。
用户控件也是服务器端控件,还必须在用户控件代码中添加Runat=server属性,用法如下:
HeadID="Head1"runat="server"/> FootID="Foot1"runat="server"/> 其中用户控件作用是显示导航栏Flash按钮,用户控件作用是显示底部相关网站信息等。 用户控件是非常易于代码重用的,可以把许多相关功能和用户界面封装在一个用户控件中,然后在任何需要该功能的地方重用此控件。 通用类代码 在所有相关页面显示文件和Web用户控件的代码隐藏文件.或.中,通过对数据访问类的引用(以创建类实例方式),调用数据访问类里的相应函数完成相关功能,如建立数据库连接、打开和关闭数据库、对数据库执行查询、插入、删除和更新操作、页面登陆检验等。 此处列举Dbhelp类(数据访问类)中主要函数的源码: usingSystem; using; using; using; using; using oString(); publicSqlConnectionconn=newSqlConnection(con); InitialCatalog=Studentdatabase;uid=sa;pwd=123456;"); #region用户登录验证 0) =[0].Rows[0][0].ToString(); =("selecttop5Name,Activity,IDfromLeague_TablewhereIntActivity=1orderbyIDdesc"); ();0) =[0].Rows[0][0].ToString(); =("select*fromShowImage"); ="Id";下载页面代码: 1)实现下载功能代码: 从数据库中读取文件路径: stringnum=[0].Rows[0][0].ToString(); stringFilePath=[0].Rows[0][1].ToString(); 判断数据库文件类型: if()=="Word文件") { filetype="DownLoad_Doc"; filepostfix=".doc"; } elseif()=="Excel表格") { filetype="DownLoad_xls"; filepostfix=".xls"; } stringfileName=num+filepostfix;言本实现代码: usingSystem; using; using; using; using; usingpartialclassMessage: Dbhelpdh=newDbhelp(); publicstringsql="selecttop5*fromMassageorderbyIddesc";efaultView; =ps; (); } #endregion protectedvoidBtnMassage_Click(objectsender,EventArgse) {图片管理页面代码: 填充图片信息代码: protectedvoidDLBinit(stringsql) {efaultView; =ps; (); } 删除图片信息代码: protectedvoidGridView1_RowDeleting(objectsender,GridViewDeleteEventArgse) {); stringsql="select*fromShowImagewhereId='"+id+"'"; DataSetds=(sql); stringfilename=[0].Rows[0][1].ToString(); try { string[]value=('/'); filename=value[2].ToString(); } catch(Exception) { ("删除失败! "); return; } 物理删除图片代码: stringfilepath=("~")+"/ShowImage/"+filename; if(filepath))+"'"; DataSetds=(sql); stringname=[0].Rows[0][0].ToString(); stringfilepath=("~")+"\\DownLoad_Doc\\"+name+".doc"; if(filepath)) {); sql="deleteDownLoadwhereId='"+id+"'"; if(sql)>0) { DataBinit(); } } else { ("删除失败! "); return; } } 添加下载资料信息代码: usingSystem; using; using; using; using; using; publicpartialclassWeb_Admin_AdminSource: stringfilepath=""; stringfilepostfix=""; Dbhelpdh=newDbhelp(); protectedvoidPage_Load(objectsender,EventArgse) { (); } protectedvoidBtnSubmit_Click(objectsender,EventArgse) {); try {oc") { ("请附加正确的Word文件"); return; } } elseif=="Excel表格") { if(filepostfix! =".xls") { ("请附加正确的Excel表格"); return; } } /../"+filepath+"/"+filename; FileInfofileinfo=newFileInfo(str); longfilesize=/1024)/1024; if(filesize>20) {//限制文件大小不能超过20兆 ("对不起,文件大小不能超过20MB! "); return; } //将所上传文件信息上传到数据库中 stringsql="insertintoDownLoad(DName,DType)values('"+name+"','"++"')"; if(sql)>0) { ("上传成功! "); } else { ("上传失败! "); return; } } catch(Exceptionex) { ; throw; } } #region获取文件路径 protectedvoidGetFilePath() { if=="Word文件") { filepath="DownLoad_doc"; } elseif=="Excel表格") { filepath="DownLoad_xls"; } } #endregion protectedvoidBtnCancel_Click(objectsender,EventArgse) { //(""); } } 程序逻辑 逻辑模型就是把概念模型,即E-R图,转换为与数据模型相符合的逻辑模型——关系模型。 E-R图向关系模型转换,首先要进行数据的规范化。 所谓规范化是指在一个数据结构中没有重复出现的项组。 规范化是在关系数据库中减少数据冗余的过程。 具体E-R图向关系模型转换的结果如下所示,其中带下划线的为关键码: 普通会员: (会员编号、所属社团、姓名、届时、加入时期、职位、性别、出生日期、所在班级、所在系、寝室号、电话号码、备注) 社团: (社团编号、社团全称、社团负责人、社团创始人、主管单位、成立日期、社团性质、社团简介、备注) 活动表: (活动编号、活动主题、日期、审核状态、活动负责人、社联监查人员、承办单位、活动内容、备注) 社联: (社联届时、社联负责人、办公地点、联系电话、备注) 社团评优表: (社团编号、届时、总得分、备注) 财务: (社团编号、届时、金额、收入支出性质、经手人、日期、备注)系统E-R图 数据库设计 数据库设计 该系统使用SQLSERVER作为应用程序的数据库,建立了有16张数据表,下面主要介绍以下9张具有代表性的表: Administration表用于存储管理员帐户的信息,AssociationInfor表用于存储协会部门信息,Depart表用于存储学院系部信息,DownLoad表用于存储下载资料的存储路径信息,LeagueLogin_Table表用于存储社团注册信息,LeagueRule表用于存储协会章程信息,Massage表用来存储留言信息,News表用来存储新闻信息,ShowImage表用来存储新闻图片的存储路径, 在6个数据表中,介绍一下新闻表和账户表如下: Administration表如表3-6-1所示: 表3-6-1管理员信息表 Id为该表主键,Name为管理员名称,Pwd为密码。 AssociationInfo表如表3-6-2所示: 表3-6-2社团部门表 Id为该表主键,Department部门,Duty为部门职责,Rules协会章程。 Depart表如表3-6-3所示: 表3-6-3系部表 ID为该表主键,DepartName为系部名称,SpecialityName为所属系部的专业名称。 DownLoad表如表3-6-4所示: 表3-6-4资料下载表 Id为该表主键,Dname为资料标题,Dtimes为上传时间,Dtype为文件类型,DfileFhpoto为文件存储路径。 LeagueLogin_Table表如表3-6-5所示: 表3-6-5社团注册表 ID为该表主键,LeagueName为社团名称,LeaguePwd为密码,Name为负责人姓名,TeacherName为知道老师姓名,BiuldTime为成立时间,Depart为社团所属系别,Speciality为所属专业,Phone为社团联系电话,CheckCode为授权码,IntRule判断社团章程章程是否添加。 LeagueRule表如表3-6-6所示: 表3-6-6社团章程表 Id为该表主键,Name为章程所属社团名称,Rules为社团章程。 Massage表如表3-6-7所示: 表3-6-7留言信息表 Id为该表主键,Name为留言者名称,Times为留言时间,Contents为留言内容,Reply为管理员的回复内容。 News表如表3-6-8所示: 表3-6-8新闻表 NewID为该表主键,Name为新闻主题,Time为新闻发布时间,Viscera为新闻内容。 ShowImage表如表3-6-9所示: 表3-6-9图片信息表 Id为该表主键,FilePhotoPath为图片存储路径,PhotoName为图片名称。 测试要点 软件测试就是在软件投入运行之前对软件的需求分析、设计规格说明和编码实现的最终审核,是保证软件质量的关键因素。 即软件测试是为了发现错误而执行程序的过程。 当模块设计完成并经过编译没有错误之后,便要进行调试和测试,这是程序设计中一个非常重要的环节,只有通过在不同的应用环境下反复调试和测试,才能确保能实现其预期的目标和保障系统的可靠性,实用性的提高。 以下我选取登陆系统测试举例。 首先进入登陆页面,如果漏输用户名、权限、密码任何一个而登录,则跳出消息提示: “请检查用户名、密码、权限是否为空”;若输入用户名与权限、密码不符,则跳出消息提示: “请查看用户名、密码或用户权限是否正确,重新输入”;用户名、权限及密码输入正确,不同身份进入不同的界面。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 社团 管理 系统 详细 设计 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)