上 机 实 验 报 告
课程名称《数据库案例2》
实验名称 企业QQ系统
专业班级 08级计算机科学与技术1、2班
学 号 200840701117、200840701206 组 员 戴璇 、 方婉开 指导教师 刘运城
企业QQ系统
一、 概述 1、 目的
近年来,人们创业的激情愈发高涨,一些大大小小的公司如雨后春笋相继创建,可公司员工之间的管理和交流却成了一个问题。传统的面对面交流效率往往很低且不利于管理,企业通这样类似于QQ的局域网连天工具便应时而生。它可以不用连接Internet,直接在局域网内实现信息的发送。它主要适用于一些中、小型企业的内部通信,可以大大的提高职工的工作效率,是现代企业不可缺少的辅助工具。
2、 开发背景
在一些中小企业(或是学校)中,为了便于职工之间的交流,或是工作信息的传递,局域网企业QQ系统的开发显得十分重要。根据企业的内部结构,开发一个符合本企业工作流程的QQ系统,可以帮助企业快速搭建内部即时通信系统,大幅度提高企业的工作效率,使上级与下级之间的交流更加方便。 3、 程序运行环境
本系统开发平台:Microsoft Visual Studio 2008。 系统开发语言:C#。
数据库管理系统软件:Microsoft SQL Server 2000。 运行平台:Windows XP (SP2) / Windows Server 2003(SPI)。 运行环境:Microsoft.NET Framework SDk v2.0。 分辨率:最佳效果1024*768像素。 二、
需求分析
随着中小型企业的不断发展,在企业内部实现局域网通信是必不可少的。企业QQ系统就是一个非常好的局域通信软件,它可以在职工不移动位置的情况下进行聊天、图片发送、文件传递和视频连接,还可以随时在网络中进行多人对话或网络会议。这样,可以提高企业的工作效率,便于企业内部职工的交流。
三、 系统分析 3.1 系统目标
根据企业对QQ系统的要求,本系统应实现以下目标: 操作简单方便,界面简洁美观。 每个客户端只能注册一次。 可以实现局域网视频。
可以实现多用户的信息通信。 系统运行稳定、安全可靠。 3.2 功能
用户注册功能: 密码管理功能: 用户登录功能 主界面管理功能 视频会议管理功能 聊天管理功能 视频管理功能
语音管理功能 3.3 输入
企业QQ的输入数据包括:
注册数据:服务器IP,端口号,用户名,密码,确认密码; 登录数据:用户 名,密码;
传送数据:文件、字符串、视频信息。 3.4性能需求
性能需求通常包括响应时间、信息量速率、主存容量、磁盘容量、安全性、适应性等方面的需求。
1、响应时间
一般操作的响应时间视用户当前网络速度和用户数量而定,但一般应不超过5秒。系统应能连续不间断运行。
2、主存容量和磁盘需求
现在大部分的计算机的主存容量和磁盘容量都能使用本系统的全部功能。 3. 数据精确度
由于采用数据库技术并且用户的应用领域对数据精确度的要求不是太高,所以这点在系统中表现得比较少,但是用户数据的安全性与正确性是完全保证的,所以对用户的使用没有多大障碍。
3.5 业务流程图
服务器与客户端通信方式业务流程图:
说明:服务器首先启动并在6020端口进行监听,等待连接。客户端发出连接请求,并发出用户信息。服务器验证用户信息返回结果给客户。如果验证成功将好友信息发给客户并通知启动聊天信息接收线程。应用程序就启动成功了。
客户端发送连接请求服务器端验证客户端连接请求启动聊天信息接收线程连接客户端发送好友信息启动聊天信息收发线程
文件传输业务流程:
说明:用户1向用户2发出传送文件请求。并发送文件相关信息等待用户2回应。用户2
接收到请求,回复用户1如果同意接收启动文件接受线程通知用户1可以发送文件了。否则通知用户1不接受。用户1收到回复后做相应的动作。文件开始传送。
用户1发送文件传输请求用户2回应请求启动接收文件线程发送文件接收文件文件传输处理
3.6 数据流程图和数据字典: 用户登录注册流程:
注册信息注册信息注册成功用户登录信息服务器端口号用户名密码验证信息验证不成功验证信息处理验证成功聊天界面窗体
数据源点描述:(注册)
名称:企业职员
简要描述:企业职员注册系统
有关数据流:注册基本信息,密码设置
数据流名词条描述:
1. 数据流名:注册基本信息
说明:服务器IP是对每个电脑的唯一分配 数据来源:公司 数据流向:注册系统
数据流组成:服务器IP,端口号,用户名
2. 数据流名:密码设置
说明:设置密码及确认 数据来源:企业职员 数据流向:登录系统
数据流组成:密码,确认密码
公司职员登录流程:
公司员工登录信息身份验证信息正确的身份信息核实用户信息反馈信息公司员工 数据源点描述:(登录) 名称:企业职员
简要描述:企业职员登录系统 有关数据流:用户名,密码 数据流名词条描述:
1. 数据流名:用户名
说明:每个员工的唯一标志 数据来源:公司员工 数据流向:登录系统 数据流组成:用户名
2. 数据流名:密码
说明:公司员工登录时需要的唯一凭证 数据来源:企业职员 数据流向:登录系统
数据流组成:密码
用户修改个人信息流程:
修改结果用户新密码修改密码新密码 数据源点描述:(修改密码) 名称:用户
简要描述:修改用户密码
有关数据流:用户新密码、修改结果信息 数据流名词条描述:
1. 数据流名:新密码
说明:用户需要两次输入新密码,如果输入合法,则将新密码与用户账号信息中的旧密码替换,若不合法,则不替换。 数据来源:用户
数据流向:修改密码系统 数据流组成:新密码
2. 数据流名:修改结果
说明:用户输入两次个人密码后点击确定后系统将修改结果提示 用户:若输入合法,提示修改成功;若不合法,提示修改错误。 数据来源:修改密码系统
数据流向:修改成功与否提示系统、用户 数据流组成:修改密码成功!(修改密码错误!) 四、 系统设计 1、系统功能结构
根据企业QQ系统的特点,可以将其分为客户端和服务器端两个部分进行设计。客户端主要用于注册、登录和信息的发送等;服务器端主要用于显示在线人员的状态,以及向远程客户端发送信息的一个中转站。
企业QQ系统客户端与服务器端的功能结构图如下图所示。
企业QQ系统客户端服务器端用户注册用户登录QQ窗体文件传递视频传递信息传递服务器窗体
2、数据库设计
2.1 数据库概念设计
经过上诉系统功能分析和需求总结,设计如下面所示的数据项和数据结构。
用户注册表:用于存放注册用户的记录,包括数据项:编号、服务器IP、端口号、用户名、 密码、标识
聊天记录表:用于存放用户聊天信息的记录,包括数据项:聊天日期、聊天信息 2.2 E-R图
根据上面的设计规划出来的实体有用户注册实体、聊天记录实体。 用户实体ER图:
IdLoginPwdUserStateFriendshioPolicyIdUsersNameStarIdAgeBloodTypeIdFaceIdSexNichName
朋友实体ER图:
IDFriendsHostId好友策略实体ER图:
FriendId IdFriendshipPolicyfriendshipPolicy 星座实体ER图:
IdStarStar 血型实体ER图:
IdBloodTypeBloodType 聊天信息实体ER图:
IdFromUseridToUseridBloodTypeMessageMessageStateMessageTypeid消息类型实体ER图:
MessageTime IdBloodTypeMessageType 所有实体之间的关系E-R图如下图所示:
根据以上原则将E-R图转换成的关系模式(其中加粗实下划线代表主键,加粗虚下划线代表
外键)如下:
Users(Id,LoginPwd,FriendshipPolicyId,NichName,FaceId,Sex,Age,Name,StarId,
BloodTypeId)
Friends(ID,HostId,FriendId)
FriendshipPolicy(Id,friendshioPolicy) Star(Id,Star)
BloodType(Id,BloodyType)
Messages(Id,FromUserid,ToUserid,Message,MessageTypeid,MessageState,
MessageTime)
MessageType(Id,MessageType) (2)具体逻辑模型设计
在数据库中,首先创建企业QQ数据库,然后根据数据库的逻辑结构分析创建的2张数据表。 用户表结构: 列名 Id LoginPwd UserState FriendshipPolicyId NichName FaceId Sex Age Name StarId BloodTypeId 好友表结构: 列名 ID HostId FriendId 好友策略表结构: 数据类型 Int Int Int 允许为空 否 否 否 说明 主键、自增 好友关系中主人号码 好友关系中好友号码 数据类型 Int varchar(50) varchar(50) Int Varchar(50) Int Varchar(50) Int Varchar(50) Int Int 允许为空 否 否 否 否 否 否 否 否 是 是 是 说明 主键、自增列 用户登录密码 用户状态 表示好友策略 用户昵称 头像索引 性别 年龄 真实姓名 外键 外键 列名 Id friendshipPolicy 星座表结构: 列名 Id Star 血型表结构: 列名 Id BloodType 聊天信息表结构: 列名 Id FromUserid ToUserid Message MessageTypeid MessageState MessageTime 消息类型表结构: 列名 Id MessageType
数据类型 Int Varchar(50) 允许为空 否 否 说明 主键、自增、标识种子 好友策略的描述 数据类型 Int Varchar(50) 允许为空 否 否 说明 主键、自增、标识种子 星座名称 数据类型 Int Varchar(50) 允许为空 否 否 说明 主键、自增、标识种子 血型名称 数据类型 Int Int Int Varchar(50) Int Int datatime 允许为空 否 否 否 是 否 否 否 说明 主键、自增、标识种子 发信息的用户号码 收信息的用户号码 消息内容 外键 消息状态 消息发送时间 数据类型 Int Varchar(50) 允许为空 否 否 说明 主键、自增、标识种子 消息类型
因篇幅问题不能全部显示,请点此查看更多更全内容