1、西安文理学院计算机科学系 课程设计报告- 1 -第一章 课题背景1.1 开发背景随着校园文化的不断丰富,大学里各种社团越来越多,社团活动也越来越频繁,社员也越来越多,而且大学生退社,入社比较频繁,社团管理就显得非常繁琐而又复杂的的事情,如果采用人工管理,对管理员来说将是一件很头疼的事情。设计开发高效的社团管理系统就显得颇为重要。为了提高效率,充分利用计算机资源,同时也让我们把我们所学的只是运用到实际生活中,锻炼开发设计项目的经验,尤其是我们计算机专业大学生,由于缺乏具体项目经验,毕业之后普遍感到知识不能转化为能力。课程设计可以锻炼我们理论联系实际的能力,为今后工作做铺垫。社团管理系统中包含许多
2、内容,有社员的基本信息录入,删除,新增社团,社员的录入,社团信息的发布,统计报表的打印等等。社团管理系统是一种典型的信息管理系统(MIS) ,其开发主要包括后台的数据库的建立、维护以及前端的相应应用程序的开发两个方面的内容,数据库的建立和维护主要要求其管理数据的一致性、完整性、安全性等特点,而前台的应用程序开发则要求做到各项功能要完备、操作要简便、易学易用等特点。1.2 选题说明信息资源已成为社会及高校重要的财富和资源,建立一个满足高校社团管理需要的信息系统,也是高校近年来不断壮大的迫切需要。长期以来,我校一直使用传统的人工记录方法管理社团,这种管理方式存在着许多缺点,如效率低,浪费时间,容易
3、出错丢失等。且时间一长,将产生大量的文件和数据,这对于查找、更新、维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥越来越重要的作用。本系统最大的特点是通用性、简单操作性和方便性。随着学校社团的增多,社团管理人员的负担也越来越重,为提高工作效率,实现无纸化办公,使工作更有条理、更方便、更快捷,而开发出这套公社团管理系统。西安文理学院计算机科学系 课程设计报告- 2 -设计基本思路 1 实用性:最大限度地满足实际工作的需要、充分考虑各业务层次、各管理环节数据处理的实用性,把满足用户的操作作为第一要素进行考虑。用户接口
4、和操作界面设计尽可能做到界面美观大方,操作简便易懂实用。2 可扩展性与可维护性:为适应将来的发展,学生公社团理信息系统应具有良好的可扩展性和可维护性。软件设计尽可能模块化、组件化,使应用系统可灵活配置,适应不同的情况。安全可靠性。3 应用软件与数据库系统的设计要做到安全可靠,防止非法用户的入侵。数据库的备份策略恰当,以防灾难性事故发生。4 用户界面舒适性:用户界面应当直观、明了、条理清晰。实现“傻瓜型”管理,易学、易用、易管理。数据库完整性 5 对于数据库的设计,遵循一致性、完整性、安全性、可伸缩性原则。6 便捷性:社团管理员和学生可以根据自己的账号查询,从而保证系统便捷性。1.3.需求分析随
5、着学生选社,退社的频率的增加,开发一个简单易用实用的社团管理系统对提高社团管理的效率显得尤为重要。本题目主要功能是实现学校社团的信息化管理本系统设计要求随着大学生校园文化的不断丰富,各种学生社团应运而生, ,对所有学生社团进行统一管理。分两种管理权限,一般用户和管理员,一般用户可以对社团信息进行查询、浏览;管理员可以对社团信息进行录入和维护,可以对社团成员进行增加、修改和删除,可以进行社团以及成员信息进行查询、统计和生成报表等。系统需要实现的功能和操作,系统要求分权限管理,分两种管理权限,一般用户和管理员,一般用户可以对社团信息进行查询、浏览;管理员可以对社团信息进行录入和维护,可以对社团成员
6、进行增加、修改和删除,可以进行社团以及成员信息进行查询、统计和生成报表等。查询:可以对学生所在的社团进行查询,也可根据具体输入进行查询。更新:由于要进行社团信息管理,用户需注册,填写有关信息,管理员可以增加社团,如果社员不再参加社团可以选择删除,从而从数据库中删除其有关记录。西安文理学院计算机科学系 课程设计报告- 3 -第二章 设计简介及设计方案论述2.1 总体设计2.1.1 流程图通过对需求分析的研究,可以得到如图 2-1 所示的社团管理系统总体流程图,其中通过验证身份分别给予用户不同的权限,普通用户只能查看和修改自己的个人信息,查看社团信息,管理员可以对社团和社员进行管理以及报表的生成。
7、管理员拥有的功能流程图如图 2-2 所示,社员拥有功能如图 2-3 所示。图 2-1 主界面流程图图 2-2 管理员管理权限图西安文理学院计算机科学系 课程设计报告- 4 -图 2-3 社员管理权限图2.2 数据库设计2.2.1 数据库 ER 图通过以上分析,可以知道学生所拥有的属性为学号、姓名、性别、年龄、系院、电话号码、操作权限,社团所有的属性为社团编号、社团名称、成立时间、主要活动,其中学生和社团通过选社建立联系,可以用学号和社团编号来建立次联系。具体 ER 图如 2-4 所示。图 2-4 数据库 ER 图2.2.2 数据库详细设计按要求可以设计三个表,分别为学生信息表,社团信息表,和学
8、生选社团表,在学生信息表中存放着学生的基本信息,包括学号,姓名,性别,年龄,所在系院,拥有权限,电话号码,具体表结构如表 2-1 所示。社团信息表中存放着社团的基本信息,包括社团编号,社团名称,成立时间,主要活动,具体设计结构如表 2-2 所示。学生选社团表包括学生的学号和所选社团的编号两项,选社学生 社团主要活动成立时间社团名称社团编号电话号码学号操作权限系院年龄性别姓名所在社团社员界面查看我的信息修改我的信息查看我的社团退出系统西安文理学院计算机科学系 课程设计报告- 5 -具体设计如表 2-3 所示。其中学生信息表、社团信息表和学生选社团表之间通过学生信息表中的学号字段,社团信息表中的社
9、团编号字段建立联系。具体数据库学生表信息如图 2-5 所示,社团表信息如图 2-6 所示,学生选社团数据库信息如图 2-7 所示。表 2-1 学生信息结构表字段名 字段说明 类型 宽度 备注userID 学号 数字型 4 设为主码username 姓名 字符型 40 不能为空usersex 性别 字符型 4 只能为男或女userage 年龄 数字型 4 不能为空userdep 所在系院 字符型 40 不能为空userright 拥有权限 数字型 2 0 表示普通用户 1 表示管理员usertel 电话号码 数字型 20 不能为空图 2-5 学生表截图表 2-2 社团信息结构表字段名 字段说明
10、类型 宽度 备注ST_DI 社团编号 数字型 4 作为主码ST_NAME 社团名称 字符型 40 不允许重名ST_TIME 社团成立时间 数字型 4 不允许为空ST_EVENTS 主要活动 字符型 400 不允许为空图 2-6 社团表截图西安文理学院计算机科学系 课程设计报告- 6 -字段名 字段说明 类型 宽度 备注ST_ID 社团编号 数字型 4 和 userID 共同作为主码userID 学生编号 数字型 4 和 ST_ID 共同作为主码表 2-3 学生选课结构表图 2-7 学生选课表截图2.3 系统方案论述通过对系统要实现的功能及数据库的设计,该系统可已使用 Microsoft Vis
11、ual C+ 6.0 作为开发环境,数据库使用 Microsoft SQL Server 开发。西安文理学院计算机科学系 课程设计报告- 7 -第三章 详细设计3.1 整体功能模块设计整体功能包括权限的设置,用以呈现给社员和管理员以不同的界面,相应的拥有不同的权限。其中通过判断学生信息表中的权限值来查看该用户拥有的权限。当管理员登录到系统的时候,将拥有社团管理,社员管理以及报表生成等权限,而当社员登录到系统的时候其只能查看自己的信息,修改自己的信息和查看自己所选的社团等功能。3.1.1 登录设计 数据库设计通过建立一个学生信息表命名为 admin 给其中添加信息,其中 userright 属性
12、有两个值,当其为 1 时认定为管理员,当其为 0时认定为普通用户,学生表具体参数设计如图 3-1 所示,社团表具体参数设计如图 3-2 所示,学生选社表具体参数设计如图 3-3 所示。图 3-1 学生表参数图 3-2 社团表参数图 3-3 学生选社团表参数西安文理学院计算机科学系 课程设计报告- 8 - 界面设计利用 Microsoft Visual C+ 6.0 来作为开发工具,具体登录界面如图 3-4 所示。图 3-4 登陆界面图3.1.2 用户操作界面设计社员拥有的操作很有限,只能对自己的信息进行查看和修改,以及社团信息的查看,具体界面如图 3-5 所示。图 3-5 用户操作界面图西安文
13、理学院计算机科学系 课程设计报告- 9 -3.1.3 管理员操作界面设计管理员可以对社团信息进行录入和维护,可以对社团成员进行增加、修改和删除,可以进行社团以及成员信息进行查询、统计和生成报表等。其中在社团管理中管理员可以查看社团信息,添加新社团,修改社团信息,和删除社团,在社员管理中管理员可以查看社团社员信息,给社团添加新社员和删除社员等权限。当管理员登录到系统的时候将给管理员呈现的界面如图 3-6 所示。当管理员进入社团管理界面的时候将呈现的界面如图 3-7 所示,当管理员进入社员管理的时候将给管理员呈现的界面如图 3-8 所示。图 3-6 管理员登录窗体西安文理学院计算机科学系 课程设计
14、报告- 10 -图 3-7 管理员管理社团图 3-8 管理员管理社员西安文理学院计算机科学系 课程设计报告- 11 -第四章 设计结果及分析4.1 登陆结果通过查看学生表里的权限值来呈现不同的窗体,拥有不同的操作,具体及代码如下,可能出现的结果如图 4-1 所示。Adodc1.ConnectionString = s1Adodc1.RecordSource = “select * from admin where username=“ & Trim(txtUserName.Text) & “Adodc1.RefreshIf Adodc1.Recordset.RecordCount 0 Then
15、If Adodc1.Recordset.Fields(0) 0 ThenDataGrid1.Visible = TrueEnd IfIf Adodc1.Recordset.RecordCount = 0 ThenMsgBox “找不到你要的记录“, vbOKOnly + vbinfromationEnd IfText1.Text = “Text1.SetFocus西安文理学院计算机科学系 课程设计报告- 14 -图 4-2 查询操作4.3 添加记录管理员可以添加社团或社员,通过程序可以对数据库里的表实现增删改查,具体增加记录代码如下,管理员添加了一个新社员的截图如图 4-3 所示。Adodc1
16、.CommandType = adCmdTableAdodc1.RecordSource = “admin“Adodc1.RefreshAdodc1.Recordset.AddNewAdodc1.Recordset.Fields(“userID“).Value = Trim(Text5.Text)Adodc1.Recordset.Fields(“username“).Value = Trim(Text6.Text)If Text3.Text “ ThenAdodc1.Recordset.Fields(“userage“).Value = Trim(Text7.Text)End IfIf Opt
17、ion1.Value ThenAdodc1.Recordset.Fields(“usersex“).Value = “男“Else西安文理学院计算机科学系 课程设计报告- 15 -Adodc1.Recordset.Fields(“usersex“).Value = “女“End IfAdodc1.Recordset.Fields(“userdep“).Value = Trim(Text8.Text)Adodc1.Recordset.Fields(“usertel“).Value = Trim(Text9.Text)Adodc1.Recordset.UpdateMsgBox “注册成功! “Ad
18、odc1.CommandType = adCmdTableAdodc1.RecordSource = “sa“Adodc1.RefreshAdodc1.Recordset.AddNewAdodc1.Recordset.Fields(“ST_ID“).Value = Trim(Text5.Text)Adodc1.Recordset.Fields(“userID“).Value = Trim(Text10.Text)Adodc1.Recordset.UpdateMsgBox “社员添加成功!“End If图 4-3 添加社员西安文理学院计算机科学系 课程设计报告- 16 -4.4 修改记录管理员可
19、以修改社团活动,通过程序可以对数据库里的表实现增删改查,具体修改社团代码如下,修改图如图 4-4 所示。Adodc1.ConnectionString = s1Adodc1.CommandType = adCmdTextAdodc1.RecordSource = “select * from Shetuan where Shetuan.ST_NAME=“ & Trim(Text7.Text) & “Adodc1.RefreshAdodc1.Recordset.Fields(“ST_TIME“).Value = Trim(Text4.Text)Adodc1.Recordset.Fields(“S
20、T_EVENTS“).Value = Trim(Text5.Text)Adodc1.Recordset.UpdateAdodc1.RefreshMsgBox “修改成功 “图 4-4 修改社团西安文理学院计算机科学系 课程设计报告- 17 -4.5 删除记录管理员可以删除不存在的社团,通过程序可以对数据库里的表实现增删改查,具体删除记录代码如下,截图如图 4-5 所示。Adodc1.RecordSource = “select * from Shetuan where ST_NAME=“ & Trim(List1.Text) & “Adodc1.RefreshDim I As IntegerF
21、or I = 1 To Adodc1.Recordset.RecordCountAdodc1.Recordset.DeleteAdodc1.Recordset.UpdateAdodc1.Recordset.MoveFirstNext IMsgBox “删除成功 “List1.RemoveItem List1.ListIndex图 4-5 删除社团西安文理学院计算机科学系 课程设计报告- 18 -总 结经过两个星期的构思与设计,在知道老师的精心直到下,同学的帮助下,本系统已经设计完毕。其使用功能基本符合所给要求,具有一定的实用性。在本次系统整个开发之处,由于进行了初期的需求分析和可行性研究,以及
22、后来的总体设计和数据库设计,因此开发过程相对来说还是比较顺利的。通过此次的系统开发,我不仅巩固了对 Visual Basic,SQL Server2000 的使用,而且学到了很多书本上所没有学到过的知识,对软件工程的一整套管理方法也有了或多或少的认识。由于时间比较仓促,加上本人软件设计经验的不足,因此,在分析问题、解决问题时显得不够严密、完善,还需要在以后的学习中不断地改进和完善。在这次的课程设计中,我深深地体会到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的态度以及较高的分析问题、解决问题的能力,还需要团队的合作,而我在很多方面还有欠缺。西安文理学院计算机科学系 课程设计报告- 19 -西安文理学院计算机科学系 课程设计报告- 20 -参考文献1 王珊,萨师煊. 数据库系统概论.M. 北京:机械工业出版社, 2006. 2 李世杰. VB 程序设计案例汇编 .M. 北京:清华大学出版社, 2010.3 周中雨.信息管理系统开发实例导航.M. 北京:人民邮电出版社, 2005.