基于linux的聊天软件可行性研究报告(编辑修改稿)内容摘要:

一张如下的矩阵图说明各项功能需求的实现同主要模块的分配关系: (声明,由于表格地问题,本来包含在“用户聊天管理”的子模块“好友管理”放在了“用户聊天管理”单元格下,请老师谅解。 ) 模块 1 模块 2 „模块 3 登陆管理 注册 登陆 退出 用户信息管理 维护个人资料信息 修改个人资料信息 更新个人状态信息 用户聊天管理 查看好友状态信息 查看好友资料信息 通过服务器发送聊天信息 查看聊天记录 好友管理 查找 添加 删除 人 工处理过程: ( 1)开始使用时,人工的 在注册,登陆,和退出之间选择操作。 ( 2)人工输入 想要修改或更新的信息资料,状态信息; ( 3)人工进行 根据 ID 进行查找,添加,删除好友的操作。 ( 4)人工进行 查看好友状态信息,资料信息,通过服务器发送消息,查看聊天记录的操作。 软件结构图: HIPO 图如下: 即 时 聊 天 软 件用 户 登 陆 管 理用 户 信 息 管 理 用 户 聊 天 管 理注册登陆退出维护个人资料信息更新个人状态信息查看好友状态信息好友管理通过服务器发送聊天信息查看聊天记录查看好友资料信息查找添加删除修改个人资料信息 3 数据库结构设计 顶层 ER 数据库包含在服务器中。 第二层 ER 图 客户端 服务器 交互管理 N 1 客户端 1 客户端 2 服务器 信息交互 信息管理 信息管理 M N M N 1 1 题目 详细设计说明书 作者: 李波文、黄颢 时间: 1 引言 ............................................................................................................................ 28 编写目的 ........................................................................................................... 28 背景 .................................................................................................................. 28 2 程序 1(标识符)设计说明 ................................................................ 错误 !未定义书签。 程序描述 ........................................................................................................... 28 功能 .................................................................................................................. 29 性能 .................................................................................................................. 29 输人项 ..................................................................................... 错误 !未定义书签。 输出项 ..................................................................................... 错误 !未定义书签。 算法 ........................................................................................ 错误 !未定义书签。 流程逻辑 ................................................................................. 错误 !未定义书签。 1 引言 编写目的 说明编写这份详细设计说明书的目的,指出预期的读者。 就是将设 计拿给不同的人去写编码,写出来的程序处理流程相同 .后续的评审或者是有人接替你的工作,只要查看详细设计,就能清楚你当时是怎样设计这些流程的。 项目背景 说明: a. 基于 Linux 聊天系统; b. 本项目的任务由 Linux 聊天开发小组就开发、面向广大 Linux 用户和运行该程序系统的 及以上。 2 程序描述 逐个模块给出以下说明 客户端 : 注册功能 :新用户的注册申请 登陆功能 :输入正确的帐号与密码 ,发送登陆请求到服务器端 ,经服务器端的验证成功登陆或返回错误信息 . 显示功能 :用不同的标示显示在 线的好友和不在线好友 ,并显示相关功能的按键框方便用户的操作 . 聊天 :用户可以选择文字或语音聊天 .还可以给好友发送图片 ,文档资料 . 聊天记录的管理功能 :用户可以选择上传或者查看聊天记录 . 好友管理功能 :可以根据帐号查找好友 ,添加好友 ,删除好友 . 服务器端 : 注册信息处理功能 :系统受理用户请求信息随机返回给用户一个帐号 ,并把受理的信息送到用户信息数据库中存储 . 登陆信息处理功能 :对用户的帐号与密码信息进行验证 ,如果正确就返回正确信息 ,否则返回登陆失败信息 ,并提示用户重新输入登陆信息 . 系统返回信息处理功能 :对系 统返回的信息进行处理 ,并给用户相关提示 . 用户请求信息处理功能 :对用户发出查找好友 ,添加好友 ,删除好友 ,聊天 ,上传聊天记录以及查看聊天记录的信息进行处理 ,向系统发出相关信息 ,并向用户返回相关信息 . 算法 详细算法描述见下面 程序逻辑 详细描述模块实现的算法,可采用 NS 图 1 客户端: 判断接受参数 地址解析函数 创建 socket 登录部分 获取收发服务端口号 发送消息给服务器 文件传送部分 文件传送部分: Y 消息是否私消息且正文为 sendfile N 传送地址及文件名 Exit(1) 打开读取文件 Put name N sendbyte=send() Y Exit( 1) Len=登陆消息 N 是否已登录 Y 登陆 exit 调用 connect 函数 While len0 传文件 读文件 传送完毕发送 sendover 2 服务端: (1)线程函数: 文件接收部分: Y ==sendfileamp。 amp。 ==PRIVATEMESSAGE N While( 1) 接收文件 发送文件 Exit(1) Y sendover N break 循环收发消息 Y End 线程 N N Quit 服务端 Y 结束进程 打印接受消息 关闭服务器 =PUBLICMESSAGE =PRIVATEMESSAGE 判断在线人员 把私人消息发给指定客户端 发消息给在线人员 文件接收 (2)主函数: 判断函数 初始化在线人员 绑定函数 blind While( 1) 客户端连接 登录 登录部分: 接收名字 Y Y 名字是否已经被在线人员使用 N nameexist=1 nameexist==0 发送 nameexist 给客户端 发送 loadsuccess 给客户端 Exit( 0) 增加用户,使用户处于在线状态 增加新用户到空位中 给每个在线用户发送有新用户登录的消息 增加一个线程来为新登录的客户端服务 3 显示端: display 主函数 获取消息队列号 running = 1 调用 listen 函数 while(running) 打开队列 接收消息 Y msg==end N running = 0 文件接收 文件接收: Y Msg== sendfile N 输出要把接收文件保存的位置和文件名 exit 创建文件 while(1) 打开消息队列 接收消息队列中的消息 Y sendover N break 写消息 提示还在接 收文件 题目 编码与截图 作者: 黄颢。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。