1、1 背景和可行性分析1.1 背景分析在校园中常常会出现多种多样寻物启事,学生们丢东西各式各样,其中不乏雨伞、钱包及证件等关键物品,尤其是证件丢失问题比较严重,因为办取证件时间比较长,步骤比较繁琐,所以丢失以后便会给丢失者造成巨大麻烦。为了方便失主寻求丢失物品,拾主归还捡拾物品和减轻失物招领中心管理员工作负担。我决定开发一个失物招领系统,失主能够经过网络进入到本系统,查询自己丢失物品是否已被好心人拾到并交给了招领中心;管理员可经过本系统对失物信息、报失信息、留言等信息方便地进行管理。1.2 可行性分析管理可行性学校重视信息技术应用,对信息系统建设大力支持,学校各类基层业务人员对信息化也持主动态度
2、。同时,为了迎接新系统到来,系统所需各类人员大多需要继续充实相关知识,这能够经过系列培训处理。经济可行性学校含有强大网络系统、网络架构和网络管理能力,同时学校相关领导高度学校信息化建设。另外,失物招领系统比较简单,开发和维护费用全部不高,对学校而言,完全能够承受。系统投入运行后,将更方便进行失物招领,更易于查询,能够减轻学校职员负荷,方便广大学生们寻回失物,提升效率,直接和间接带来一定经济效益,造福于广大学生。技术可行性学校网络科学技术雄厚,失物招领系统比较简单,开发技术上不存在难题。结论依据以上可行性分析,学校能够立即开始失物招领系统开发。在整个系统开发过程中,需要针对不一样人员有放矢地进行
3、培训。在系统分析过程中,需要进行管理方法变革、组织结构调整、业务步骤重组。2 系统分析2.1 组织结构职能分析2.1.1组织结构图2.1.2职能分析管理员:报失者向失物招领中心提供报失信息,管理员进行报失物品信息添加、修改和删除工作;捡拾者向失物招领中心提供捡拾物品信息,管理员进行捡拾物品信息添加、修改和删除工作;负责将失物招领信息和报失物品信息进行部分公开和统计用户在留言板留言;用户管理:由管理员进行增加或删除用户,并授予用户对应权限;对数据库信息不定时进行维护。捡拾者:向失物招领系统管理员提供所捡拾物品相关信息,如失物名称、特点、捡拾地点、捡拾时间、领取状态(默认为未领取)、捡拾人信息(姓
4、名及联络方法)、对应存放地点立即间等。报失者:向失物招领系统管理员提供所报失物品相关信息,如失物名称、特点、丢失地点、丢失时间、报失人信息(姓名及联络方法)、对应存放地点立即间等。2.2 业务步骤分析2.2.1业务步骤图2.2.2 步骤分析 管理员端:管理员在进入该系统以后,首先显示是登录界面。管理员需键入自己账号和密码信息,点击登录以后,系统会自动检测输入信息正确性,若正确无误,则系统提醒并显示登录成功信息,并进入下一业务步骤;若出现错误,则提醒管理员重新输入账号和密码。管理员登录成功以后,将对新增失物和已寻回失物信息进行更新,并从数据库中调取新增失物信息和失主信息,进行配对,然后查看信息板
5、上面留言信息,并整剪公布到系统公告栏。管理员登录以后更新全部信息将保留进数据库并显示相关提醒。 报失者端:报失者在进入该系统以后,首先显示是登录界面。报失者需键入自己账号和密码信息,点击登录以后,系统会自动检测输入信息正确性,若正确无误,则系统提醒并显示登录成功信息,并进入下一业务步骤;若出现错误,则提醒报失者重新输入账号和密码。报失者登录成功以后将要进行业务包含失物查询、失物信息登记、信息板留言等。全部这些信息全部将保留进数据库并显示相关提醒。 捡拾者端:捡拾者在进入该系统以后,首先显示是登录界面。捡拾者需键入自己账号和密码信息,点击登录以后,系统会自动检测输入信息正确性,若正确无误,则系统
6、提醒并显示登录成功信息,并进入下一业务步骤;若出现错误,则提醒捡拾者重新输入账号和密码。捡拾者登录成功以后将要进行业务包含捡拾物品信息登记、捡拾物品信息查询等。全部这些信息全部将保留进数据库并显示相关提醒。2.3数据步骤分析2.3.1数据流图2.3.1.1登陆数据流图2.3.1.2查询数据流图2.4 数据库设计2.4.1 E-R图绘制依据实际业务分析,该失物招领系统E-R模型以下:2.4.2关系模式设计以上E-R图,能够转换为以下关系模式:用户(用户名、用户权限、密码)失物信息(丢失(捡拾)时间、详情描述、公布时间)详情描述(类型、公布时间、丢失(捡拾)时间、详情描述、联络人信息)搜索结果(丢
7、失(捡拾)时间、类型、公布时间、统计数量、详情描述)2.4.3数据库表设计本系统采取SQL-Sever数据库设计表,依据功效模块划分及相关信息分类能够建立4个表,分别为用户信息表(user_info)、失物招领信息表(pick_info)、失物报失信息表(lost_info)、留言信息表(leaveword_info)。表格信息以下:表4-2-1 用户信息表(user_info)列名数据类型长度备注User_IDInt主键Namevarchar40用户名Passwordvarchar25密码QQInt20QQEmailvarchar40邮箱地址PhoneInt20电话号码表4-2-2 失物招领
8、信息表(pick_info)列名数据类型长度备注User_IDInt主键Pick_namevarchar40失物名称Pick_traitvarchar25失物特点Pick_placevarchar100捡拾地点Pick_timeDatetime捡拾时间Pnamevarchar10捡拾人姓名Pcontact_wayvarchar20捡拾人联络方法Store_placevarchar10对应存放地点SdateDatetime上交物品日期Store_timeDatetime存放时间Hand_wayvarchar30处理方法表4-2-3 失物报失信息表(lost_info)列名数据类型长度备注User
9、_IDInt主键Lost_namevarchar40报失物品名称Lost_traitvarchar25报失物品特点Lost_placevarchar100丢失地点Lost_timeDatetime丢失时间Lnamevarchar10报失人姓名Lcontact_wayvarchar20报失人联络方法LdateDatetime报失日期timeDatetime报失时间表4-2-4 留言板信息表(leaveword_info)列名数据类型长度备注Whole_IDInt主键Namevarchar40用户名contextvarchar25留言内容PhoneInt20电话号码DateDatetime留言时间
10、3 系统设计3.1系统功效结构分析3.1.1系统总功效划分模块图3.1.2系统子功效模块分析3.1.2.1管理端子功效模块管理端子系统关键是给失物招领中心管理员提供功效,它分为登录管理、报失信息管理、失物信息管理、信息公布管理和用户管理,管理员必需首先经过登录认证以后才能实现以下功效。 功效模块图: 功效模块描述: 登录管理:登录管理负责管理端登录,管理端人员(管理员)登录到管理端必需经过登录界面,输入自己用户名和密码,然后系统判定这个用户权限,然后再许可其实现其它功效。活动图以下:报失信息管理: 关键工作:完成报失信息添加、修改和删除工作; 实施者:管理员 前置条件:管理员已登录系统; 后置
11、条件:若信息维护成功,则数据库中报失信息库随之改变,此时用户能够对报失信息进行查询; 基础路径:a) 进入报失信息管理界面,首先展示已经有报失信息; b) 点击每项信息能够具体浏览报失物品信息,同时也可对信息进行修改; c) 添加信息时,输入报失物品名称、特点、丢失地点、时间、报失人信息(姓名、联络方法)、报失时间(以天计); d) 可删除选择信息。失物信息管理: 关键工作:完成捡拾物品信息添加、修改和删除等工作; 实施者:管理员; 前置条件:管理员已登录系统; 后置条件:若信息维护成功,则数据库中失物信息库随之改变,此时用户能够对失物信息进行查询; 基础路径:a) 进入失物信息管理界面,首先
12、展示已经有失物信息; b) 点击每项信息能够具体浏览失物信息,同时也可对信息进行修改; c) 添加信息时,输入失物信息进行添加,输入失物名称、特点、捡拾地点、时间、领取状态(置为未领取)、捡拾人信息(姓名及联络方法)、对应存放地点及存放时间(以天计); d) 可删除选择信息。信息公布管理: 关键工作:输出部分失物信息,提供查询和用户留言等功效,部分失物信息公布以后,用户能够查询到失物名称、特点及丢失时间地点等相关信息; 实施者:管理员; 前置条件:管理员已登录系统; 后置条件:若信息公布成功后,则数据库中信息随之改变,失者可经过网络看到部分失物信息,也可对这些失物进行查询和在留言板上留言; 基
13、础路径:a)进入失物管理界面对失物信息进行管理;b) 系统自动调用数据库信息,显示相关信息; c) 管理员可点击某项信息(包含留言信息)对其进行增删改; d) 提供信息查询功效。 用户管理: 关键工作:进行权限管理,在用户界面对用户进行添加和删除工作; 实施者:管理员; 前置条件:管理员已登录系统; 后置条件:若用户信息维护完成,则用户对应信息将统计到数据库中; 基础路径:a) 进入用户管理界面,显示现在系统用户; b) 点击不一样用户,可显示这个用户信息; c) 可增加用户,也可删除用户。3.1.2.2用户端子功效模块报失者报失时可在查询系统中输入自己所要报失物品相关信息(如名称、特点、丢失
14、地点等信息),然后进行查询即可,若有,则会显示失物信息;若无,则会对信息进行登记。捡拾者可将捡拾物品交给管理员并提供相关信息(如捡拾地点、时间等),由管理员对捡拾物品信息进行录入。用户端关键功效是报失、失物信息查询、留言等。 功效模块图: 功效模块描述:报失: 关键工作:系统提供失主报失信息栏,对报失信息进行录入; 实施者:失主; 前置条件:失主已登录进入系统; 后置条件:可对物品进行报失; 基础路径:a) 失者登录到系统,显示部分失物信息、留言信息等;b) 选择报失栏,填写报失信息。查询: 关键工作:查询分为一般查询和高级检索,方便失主对物品信息查询; 实施者:失主; 前置条件:失主已登录进
15、入系统; 后置条件:对部分物品信息进行查询; 基础路径:a)失者登录到系统,显示部分失物信息、留言信息等;b)选择查询项目,浏览相关信息。留言: 关键工作:失主在留言板上留言; 实施者:失主; 前置条件:失主已登录进入系统; 后置条件:在留言板上进行留言; 基础路径:a) 失者登录到系统,显示部分失物信息、留言信息等; b) 打开留言板输入留言信息。3.2 输入输出设计3.2.1输入设计系统采取两种输入方法,键盘输入方法和校园卡识别方法。对于报失者和捡拾者本人信息(姓名、专业班级等)数据输入,可采取校园卡识别方法自动输入到系统。3.2.2输出设计以屏幕输出方法进行输出。3.3界面设计系统界面设
16、计应简练、统一。4 系统实施部分4.1程序框图图4.1.1登录界面图4.1.2管理端界面图4.1.3失主端界面4.1.4失物展厅界面4.2 源程序代码using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace 失物招领系统 publ
17、ic partial class Form1 : Form public Form1() InitializeComponent(); private void btnLogin_Click(object sender, EventArgs e) string connStr = server=.;database=失物招领系统DB;Integrated Security=True; if (radioButton2.Checked = true) using (SqlConnection conn = new SqlConnection(connStr) string sql = selec
18、t userPassword,times from LibraryUser where userName = name; using (SqlCommand cmd = new SqlCommand(sql, conn) cmd.Parameters.AddWithValue(name, textBox1.Text); conn.Open(); using (SqlDataReader dr = cmd.ExecuteReader() if (dr.Read() string pwd = druserPassword.ToString(); int times = Convert.ToInt3
19、2(drtimes); dr.Close(); if (times = 3) MessageBox.Show(重试次数超出3次); else string update = ; if (pwd = textBox1.Text) update = update LibraryUser set times = 0 where userName= + textBox1.Text + ; else MessageBox.Show(密码错误!还剩 + (3 - times - 1) + 次输入机会); update = update LibraryUser set times = times + 1 w
20、here userName= + textBox1.Text + ; cmd.CommandText = update; cmd.ExecuteNonQuery(); else MessageBox.Show(用户名不存在); else MessageBox.Show(请选择权限); private void pictureBox1_Click(object sender, EventArgs e) private void label1_Click(object sender, EventArgs e) private void textBox1_TextChanged(object sen
21、der, EventArgs e) if (textBox1.Text = ) button1.Enabled = false; MessageBox.Show(请输入用户名,警告); else button1.Enabled = true; private void textBox2_TextChanged(object sender, EventArgs e) if (textBox2.Text = ) button1.Enabled = false; MessageBox.Show(请输入密码, 警告); else button1.Enabled = true; private void
22、 button1_Click(object sender, EventArgs e) if (radioButton1.Checked = true) if (textBox1.Text = admin & textBox2.Text = 123456) 管理端 f = new 管理端(); f.Show(); else MessageBox.Show(用户名错误或密码错误n请重新输入); else if (radioButton2.Checked = true) if (textBox1.Text = xiaohong | textBox1.Text = xiaoming | textBox
23、1.Text = xiaohua | textBox1.Text = xiaoli) & textBox2.Text = 123456) 失主端 n = new 失主端(); n.Show(); else MessageBox.Show(用户名错误或密码错误n请重新输入); private void button2_Click(object sender, EventArgs e) private void radioButton1_CheckedChanged(object sender, EventArgs e) 4.3模拟运行数据使用管理员账号密码(账号:admin;密码:123456)
24、登录系统,界面以下,以后便进入管理员系统界面。 在数据库中添加相关失物和用户信息,便可显示在管理员系统界面中,管理员可对这些数据进行增删改操作,以下图: 输入后台数据库保留相关用户账号密码信息(比如账号:xiaohong;密码:123456),便可进入用户系统界面,登陆界面以下图所表示: 用户进入系统以后可进行失物登记等,图所表示: 在用户界面右上角有一“失物查询”按钮,点击该按钮便可查询该系统中登记全部失物信息,图所表示:5 附录及参考资料参考文件: 教材:王虎等主编:管理信息系统;武汉理工大学出版社,出版 教科书:Andrew Stellman & Jennifer Greene著 Hea
25、d First C#;中国电力出版社出版 教科书:Karli Watson & Christian Nagel 著 C#入门经典;清华大学出版社出版baidu文库相关文档:失物招领系统可行性分析汇报 教科书:郝安林 & 康会光 & 牛小平 & 李乃文 等编著 Sql Sever基础教程和试验指导;清华大学出版社出版本科生课程设计成绩评定表姓 名孙涵性 别男专业、班级信管1101课程设计题目:失物招领系统课程设计答辩或质疑统计:成绩评定依据:评 定 项 目评分成绩1选题合理、目标明确(10分)2设计方案正确,含有可行性、创新性(30分)3设计结果(比如:硬件结果、软件程序)(30分)4态度认真、学习刻苦、遵守纪律(15分) 5设计汇报规范化、参考文件充足(不少于5篇)(15分)总 分最终评定成绩(以优、良、中、及格、不及格评定)指导老师签字: 7月 10 日