《社团管理系统》详细设计说明书演示教学Word格式文档下载.docx
《《社团管理系统》详细设计说明书演示教学Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《《社团管理系统》详细设计说明书演示教学Word格式文档下载.docx(25页珍藏版)》请在冰豆网上搜索。
1.3定义
USECASE
用例
会员
社团管理系统中合法的注册用户
游客
未注册或者未登录的社团管理系统平台浏览者
管理员
系统的管理者
1.4参考资料
[1]天极网新技术研究室.ASP.NET完全入门.人民邮电出版社,2001.6
[2]SanjeevRohilla等著,陈君等译.ADO.NET专业项目实例开发.中国水利水电出版社,2003.5
[3]启明工作室编著.ASP.NET网络应用系统开发与实例.人民邮电出版社,2005.7
[4]王华杰,李律松孙一波等编著.C#数据库开发技术.清华大学出版社,2003.2
[5]攀建编著.ASP.NET+ADO.NET项目开发实例.清华大学出版社,2004.1
[6](美)A.RussellJones著,高春蓉等译.ASP.NET从入门到精通.电子工业出版,2002.1
[7]ScottWorley著,王文龙刘湘宁译.ASP.NET技术内幕.人民邮电出版社,2002.4
[8]RussBasiura等著,杨浩译.ASP.NETWeb服务高级编程.清华大学出版社,2003.2
[9](美)AngshumanChakraborti等著,唐云深,赵世华等译.NETFramework专业项目实例开发..中国水利水电出版社,2003.6
[10]ScottAllen等著.C#数据库入门.郝启堂张哲峰译.清华大学出版社,2003.2
[11](美)微软公司著.NET框架1.1类库参考手册.清华大学出版社,2004.1
[12]SteveWalther著.ASP.NET:
Tips,Tutorials,andCode.电子工业出版社,2003.7
[13](美)JeffreyRichte著.Microsoft.NETFrameworks.清华大学出版社,2003.4
[14]AlexHomer等.ASP.NETWebFormsProgramming.清华大学出版社,2003.1
2.总体设计
2.1需求概述
社团管理系统需要满足来自三方面的需求,这三个方面分别是会员、社团和管理员。
会员的需求是查询院系各社团的活动情况、会员参加的各个社团情况及会员信息的修改;
社团需对会员参加社团、注销社团的基本情况进行操作;
社团管理系统的管理员的功能最为复杂,包括对会员、社团的活动等各方面的信息进行管理和统计,及系统状态的查看、维护并生成会员社团统计表。
会员可以直接查看参加社团及社团活动情况,会员可以根据本人学号和密码登录系统,还可以进行对本人参加社团情况的查询和维护部分个人信息以及各社团的活动安排等相关信息。
一般情况下,会员只应该查询和维护本人的参加社团情况和个人信息,若查询和维护其他会员的信息,就要知道其他会员的学号和密码。
这些是很难得到的,特别是密码,所以不但满足了会员的要求,还保护了会员的个人隐私。
社团工作人员有修改会员个人信息的权限,所以需对工作人员登陆本模块进行更多的考虑。
在此系统中,社团工作人员可以为会员加入社团或是登陆记录,并打印生成相应的报表给用户查看和确认院系管理人员功能的信息量大,数据安全性和保密性要求最高。
本功能实现对会员参加各社团相关信息的查询和统计、工作人员和管理人员信息查看及维护。
社团管理员可以浏览、查询、修改、统计社团的基本信息;
浏览、查询、统计和修改会员参加社团活动的基本信息,设计不同用户的操作权限和登陆方法对所有用户开放的会员信息查询和个人部分信息维护查看个人情况信息维护会员个人密码根据注册的情况对数据库进行操作并生成报表。
社团管理系统的数据流程:
首先由社团工作人员或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入处理,然后保存信息到数据库中。
有权限的人可以对这些库信息进行修改和删除处理。
所有用户均可以进行信息查询和统计,没有权限用户还可以基于注册界面进行注册,来参加相应的社团。
2.2软件结构
本程序采用B/S架构,并使用了四层逻辑结果,如图1所示:
图1系统结构示意图
以下为用户社团管理系统流程图,也是我们的核心工作流程图,如图2所示:
图2系统流程图
3.程序描述
3.1功能
工作流程为:
打开该系统网站,普通浏览者能浏览、阅读和社团信息及新闻,能进行注册,注册后为网站准会员,系统管理员登录进入新闻后台管理区,可以进行如下管理:
●社团信息管理
◆删除和修改社团信息
◆对已有社团进行部门管理
◆对社团章程管理
◆对社团的活动信息进行管理
◆添加社团(注:
授权码最为重要,它将在社团注册时为唯一识别码)
●管理员信息管理
◆添加管理员
◆修改或删除管理员信息
●新闻管理
◆公告管理(添加、删除和修改)
◆新闻管理(添加、删除和修改)
●用户管理
◆个人用户管理(添加、删除和修改)
◆协会用户管理(添加、删除和修改)
●下载管理
◆表格管理(修改和删除)
◆资料管理(删除和修改)
◆添加信息(添加下载资料)
●留言管理
◆个人留言管理(回复和删除留言)
●图片管理
◆添加图片
◆删除图片
◆修改图片
●实用信息管理
◆添加使用信息
●系部管理(添加、删除和修改系部)
3.2性能
该系统操作简单、界面友好:
完全控件式的页面布局,使得社团信息及新闻的录入工作更简便,为用户提供方便快捷的社团管理及相关信息的发布,更将作为一个向外部展示本学校的社团建设成就。
即时可见:
对社团信息的处理(包括录入、修改、删除)将立即在主页的对应栏目显示出来,达到“即时发布、即时见效”的功能;
系统运行应该快速、稳定、高效和可靠;
在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。
3.3运行环境及设备要求
设备
客户机硬件要求:
具有PentiumIII处理器以上且满足以下要求的计算机:
最低64MB内存,最小2.1GB硬盘。
服务器硬件要求:
最低256MB内存,最小8GB硬盘。
支持程序
客户端
操作系统:
Windows98/NT/2000/XP或更高版本
浏览器:
IE5.0以上或Netscape同等版本以上
服务器
Windows2000Server或者Windows2003Server
Web服务器:
MSIIS
应用服务器:
IIS、COM+等企业级应用服务器
数据库:
SQLSERVER
3.4算法
重要算法及部分代码
Web用户控件
该系统中创建了两个Web用户控件Foot.ascx和Head.ascx,在首页、新闻动态、社联简介、资料下载等页面的HTML代码里都进行了引用,调用方式为:
%@RegisterSrc="
../WebControl/Head.ascx"
TagName="
Head"
TagPrefix="
uc1"
%>
../WebControl/Foot.ascx"
Foot"
uc2"
@Register指令注册用户控件,同时把属性TagName(标签名)和TagPrefix(标签前缀)添加到@Register指令中,Src属性表示该用户控件相对于父页面的相对地址。
用户控件也是服务器端控件,还必须在用户控件代码中添加Runat=server属性,用法如下:
uc1:
HeadID="
Head1"
runat="
server"
/>
uc2:
FootID="
Foot1"
其中Head.ascx用户控件作用是显示导航栏Flash按钮,Foot.ascx用户控件作用是显示底部相关网站信息等。
用户控件是非常易于代码重用的,可以把许多相关功能和用户界面封装在一个用户控件中,然后在任何需要该功能的地方重用此控件。
通用类代码
在所有相关页面显示文件和Web用户控件的代码隐藏文件.aspx.cs或.ascx.cs中,通过对数据访问类的引用(以创建类实例方式),调用数据访问类里的相应函数完成相关功能,如建立数据库连接、打开和关闭数据库、对数据库执行查询、插入、删除和更新操作、页面登陆检验等。
此处列举Dbhelp类(数据访问类)中主要函数的源码:
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;
usingSystem.Text;
usingSystem.Text.RegularExpressions;
///<
summary>
///Dbhelp的摘要说明
/summary>
publicclassDbhelp
{
protectedstaticstringcon=ConfigurationManager.ConnectionStrings["
connstr"
].ToString();
publicSqlConnectionconn=newSqlConnection(con);
//publicSqlConnectionconn=newSqlConnection("
DataSource=.;
InitialCatalog=Studentdatabase;
uid=sa;
pwd=123456;
"
);
#region用户登录验证
///<
///验证用户是否是合法用户
paramname="
sql"
>
接受SQL语句<
/param>
returns>
/returns>
publicintCheckLogin(stringsql)
{
try
SqlCommandcmd=newSqlCommand(sql,conn);
if(conn.State==ConnectionState.Closed)
conn.Open();
}
intresult=(int)cmd.ExecuteScalar();
returnresult;
catch(Exceptionex)
HttpContext.Current.Response.Write(ex.Message);
throw;
#endregion
#region用户信息提