宿舍管理系统设计报告
宿
舍 管 理 系 统
专 业: 计算机科学与技术 班 级: 087051 指导教师: 叶水仙
组员:朱雪梅,尹艳文,王钰丹
潘蓉,郭娇,包效婷
2011 年 5 月3 日
宿舍管理系统
第一章 绪论
1.1 引言
该系统是由管理员通过系统管理学生信息,能根据学生学号、院系、寝室号等来查询学生的其他相关信息,新生入住能录入新生的住宿信息,能查询房间的信息如入住人数、人员、费用等。学生遇毕业退学等原因能删除其住宿信息,同时,备忘一些信息,记录非寝室住宿人员的出入登记,并能进行查询相关登记记录。
系统采用C#语言编写,利用功能强大的Microsoft Visual studio 2008作为开发工具,用SQL Server 2008作为数据库存储数据。 1.2系统模块 用户登录模块 学生信息查询模块 学生信息添加模块 房间查询信息模块 新信息的增加模块 删除信息模块 登记外来访问人员 对有关信息进行备忘 报修登记(尚未设计该模块) 1.3 设计思想
根据初步对宿舍相关信息的了解的进行设计 1.4 系统框架
采用.net framework3开发类库中windows Form 窗体应用程序,作为系统框架,在vs2008开发环境中,利用各个控件,进行相关模块的设计,在系统中进行对数据的一些基本操作。
可行性研究和需求分析
2.1可行性分析
本系统作为单机运行,需要相关的配置,操作系统为windows XP系统或更高的版本,利用sql server2000或更高的版本作为数据存储和数据操作的数据库,配置Microsoft .NET Framework 3.0 或3.5版本其重要组成部分有ASP.NET (支持可 Web 访问的应用程序的开发)ADO.NET (允许应用程序访问相关的其他类型数据)Windows Forms(支持建立 Windows 应用程序的图形用户界面 (GUI)),从技术上来讲是可行的 2.2 经济可行性 无
2.3系统需求分析 2.3.1 任务概述
对于目前还是利用人工进行宿舍的信息管理,改进在电脑上进行操作,提供一个良好的,快捷的,易操作的的平台。
用户不需要任何技术背景, 无须具备网络方面的知识, 只要能按要求输入关键字。
2.3.2用户对系统的要求
宿舍楼管理员能查询宿舍楼的有相关信息,包括某一学号的学生在宿舍楼中住宿的详细信息,报修的相关信息,外来人员的登记的情况。以利于对整个宿舍楼的全面管理。
当学生基本信息发生变化时,宿舍楼管理员能对其进行修改。比如,某些同学搬走或已毕业,则他在本宿舍楼中相应的记录就应该删去;或者学生转换专业,他们记录中院系的信息也要作相应的修改等等。当宿舍楼的电话号码发生变更时,宿舍楼管理员能根据有关证明做出修改等等
2.3.3需求规定
由于本系统尚未设计组册模块,系统只有普通用户,没有权限限制 2.4 系统设计
2.4.1 系统流程图
2.4.2数据字典
2.4.3数据流图
2.4.4概念结构设计 系统E-R 图为
学生 —— 寝室
学生——寝室——访人
第三章 总体设计
3.1数据库设计
实体关系表示设计
数据库sqlserver 库名Dormitory
管理员信息表(name_Table)
房间信息表(Room_Table)
学生信息表(Student_Table)
外来人员信息 Com_Table
3.2系统概要设计 3.2.1需求规定
● ●
输入输出要求 时间要求
界面风格:要求整体界面美观,有清晰的层次感,布局简洁、合理。 时间需求:在软件方面,响应时间,更新处理时间都比较快且迅速,系统响应时间不能超过10秒。
● 灵活性要求
灵活性:当用户需求,如操作方式,运行环境,结果精度,数据结构等其他软件接口等发生变化时,设计的软件能做出适当调整,灵活性非常大 3.2.2基本设计概念神处理流程 3.2.3系统出错处理
3.3系统主要模块的界面设计
界面主要含有两个部分,登录界面和主页面,登录界面用于用户登录到主页面去,登录到主页面后,进行各项操作 3.3.1登录界面
3.3.2登录后主页面
3.3.3操作界面
3.4主要功能编码实现 3.4.1登录实现
用户登录界面中用户名选项和密码为数据库中已经存在的用户名和密码,所以用户只需选择相应的用户名和相应的密码即可,
string sql = "server=jjaqq-pc;database=Dormitory;uid=sa;pwd=123456"; SqlConnection conn = new SqlConnection (sql); //实例sqlconnection 变量conn conn.Open(); //打开连接
SqlCommand cmd = new SqlCommand ();//sqlcommand用于向sql server发送sql 语句,位于 SqlCommand cmd = new SqlCommand命名空间 cmd.Connection = conn;
cmd.CommandText = "select * from name where name='" + this .login.Text.Trim() + "'and password='" + this .pwd.Text.Trim() + "'" ; cmd.CommandType = CommandType .Text;
SqlDataReader reader = cmd.ExecuteReader(); if (reader.Read()) {
this .Hide(); //用户名和密码匹配成功则隐藏登录界面 f2.Show(); //显示主页面 } else {
MessageBox .Show(" 用户名或密码错误! ", " 提示" ); }
conn.Close(); //关闭数据库连接
3.4.2系统主界面
系统的主界面是系统的所有功能的入口, 主要由菜单栏、功能模块树形等
组成
如:来访登记代码实现如下
string sql = "server=jjaqq-pc;database=Dormitory;uid=sa;pwd=123456"; SqlConnection conn = new SqlConnection (sql); conn.Open(); try {
string num = "select * from Student_Table where 所住寝室='" this .room_Box.Text.Trim() + "'and 姓名='"+this .name2_Box.Text.Trim()+"'" ; SqlCommand cd = new SqlCommand (num, conn);
cd.CommandType = CommandType .Text; SqlDataReader dr=cd.ExecuteReader();
//string s = Convert.ToString(cd.ExecuteReader()); dr.Read();
if (!dr.HasRows) //此处验证所找人的姓名是否所在填写的寝室内 {
MessageBox .Show(" 请确定所访人员和寝室号是否有误" ); } else {
conn.Close(); //先将上面用DataReader 打开的数据库关闭
string insertSql = "insert into Com_Table values('" + this .num_Box.Text + "','"
+ this .name1_Box.Text + "','" + this .name2_Box.Text + "','" + this .room_Box.Text + "','" +this .time_Box.Text+"');" ;
SqlCommand cmd = new SqlCommand (insertSql, conn);
cmd.CommandType = CommandType .Text; //sqlcommand用于向sql server发送sql 语 conn.Open();
cmd.ExecuteNonQuery();
MessageBox .Show(" 登记完成" );
}
修改用户信息如下
string sql = "server=jjaqq-pc;database=Dormitory;uid=sa;pwd=123456";
SqlConnection conn = new SqlConnection (sql);
conn.Open();
try
{
if (user_Box.Text.Trim()=="" )
{
MessageBox .Show(" 用户名不能为空" );
}
else
{
if (newPwd_Box.Text != secondPwd_Box.Text) //验证两次输入书否相同 {
label5.Text = " 两次输入密码不一致!" ;
}
string num = "select * from [name] where name='" +
this .user_Box.Text + "'and password='"+this .pwd_Box.Text+"'" ;
SqlCommand cd = new SqlCommand (num, conn);
cd.CommandType = CommandType .Text;
SqlDataReader dr = cd.ExecuteReader();
dr.Read(); //先验证输入密码是否有误
if (!dr.HasRows)
{
label7.Text = " 密码错误!" ;
}
else
{
conn.Close();
SqlCommand cmd = new SqlCommand ();
cmd.Connection = conn;
cmd.CommandText = "update [name] set password='" +
this .newPwd_Box.Text.Trim() + "'where name='" +
this .user_Box.Text.Trim() + "'" ;
cmd.CommandType = CommandType .Text;//让语句以SQL 语句执行 conn.Open();
cmd.ExecuteNonQuery();
label7.Hide();
label5.Hide();
MessageBox .Show(" 修改成功!" );
}
第四章 安装与使用说明
4.1 用途
4.1.1功能
4.1.2性能
(1)精度
要按照严格的数据格式输入,否则系统不给予响应进行处理。
(2)时间特性要求
等待服务器连接的时间不超过20秒。
(3)灵活性
用户通过单击页面上的相关按扭或输入关键字就可以完成各项操作。
4.2 运行环境
4.2.1硬件设备
无特殊要求,一般计算机即可
4.2.2服务器
该系统软件是属于本地运行,无需架设服务器
4.2.3软件需求
操作系统:Windows 操作系统(XP 或win7)
数据库系统:SQL server 2008以上版本
已安装.NET franework 3.0以上版本的环境
4.3 安装步骤
在已装好sql server 2008的电脑上,打开sql server 在数据库中导入 Dormitory 数据库 在打开vs2008 打开解决方案资源管理器,添加数据库连接测试,再在文件中找到“宿舍管理系统.exe ”可执行文件,运行即可
第五章 系统测试
参考文献:《软件工程导论》
C#
无 第六章 总结 第四版 清华大学出版 《C#开发实战宝典》王小科 编著 清华大学出版社 《C#开发大全》刘丽霞 编著 清华大学出版 百度知道 与.net 开发网 http://developer.51cto.com/net/