局域网聊天项目需求说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
鼎嵌计算机技术咨询有限公司
35天暑期培训班
局域网聊天软件项目需求说明书
[S1.2]
拟制人罗老师
审核人陈老师
批准人陈老师
[二零一五年六月二十八日]
目录
1、引言 (2)
1.1编写的目的 (2)
1.2背景 (2)
2、任务概述 (2)
2.1目标 (2)
2.2假定和约束 (2)
3、需求分析 (3)
3.1功能分析 (3)
3.2 隐含需求 (3)
3.3性能分析 (5)
4、运行环境规定 (5)
4.1设备 (5)
4.2支持软件 (5)
4.3开发工具 (5)
1、引言
1.1编写的目的
本需求说明旨在对实现局域网内聊天的办公软件构架的业务需求、用户需求、功能需求做逐一分析;并对各模块接口、运行环境、性能需求做出可行方案。
本需求分析为开发人员之间提供共同的协议而创立基础,对门锁监控系统功能的实现作使命描述,是系统开发的依据,也是用户检验本系统运行的依据。
1.2背景
公司办公人员在进行沟通时,目前较为方便的是直接使用QQ进行通讯,但由于QQ 不仅仅拥有办公功能,还具有更多的社交功能,影响员工工作时的专注度。因此需要将功能强大的QQ进行裁剪,仅实现局域网内的聊天功能,限制员工访问外网。提升工作的专注度。
2、任务概述
2.1目标
通过对该系统的开发,满足公司对办公通讯的要求,既要满足沟通需要,又要能够防止在基本沟通需求上,访问外部网络,影响工作效率,也就是要满足一能够实现局域网内聊天的一个功能。
2.2假定和约束
所有办公人员电脑限制接入外网,并且所有办公人员的电脑全部接入在由网络管理员建立的局域网中,IP地址为静态分配,操作系统为LINUX桌面发行版。
3、需求分析
3.1功能分析
3.1.1登陆界面
1、账号输入框:用来输入用户名,并自动记录,下次打开直接显示在账号输入框中。
2、密码输入框:用来输入用户密码。
3、注册账号按钮:点击后模拟登陆公司局域网服务器注册。
4、找回密码按钮:点击后模拟登陆公司局域网服务器提交密码找回申请。
5、登陆按钮:点击后验证用户名和密码并登录到联系人界面。
3.1.2联系人界面
1、窗体顶部显示自身头像与用户名。
2、联系人列表:显示联系人用户名,添加新联系人时显示在此列表,删除联系人时从此列表消失,双击联系人弹出聊天界面。
3、添加联系人输入框:用以填写需要添加的用户名。
4、添加按钮:添加联系人输入框中的用户名。
5、删除按钮:删除联系人列表中选定的用户名。
3.1.3聊天界面
1、消息输入窗口:用以用户输入文本消息。
2、历史消息窗口:显示用户与联系人之间的消息记录。
3、发送按钮:点击后,消息输入窗口的文本发送到对方。
3.1.4 服务器
1、实现一个多客户端链接的TCP服务器用以接收客户端发来的消息,并安用户名选择转发到的客户端。
3.2 隐含需求
3.2.1登陆界面
1、记住密码勾选按钮:办公电脑一般是同一个人使用,也许用户厌烦了每天输入密码,因此要实现一个记住密码的功能。
2、自动登陆勾选按钮:也许用户需要一个更简单的操作(比如年龄较大,或者对计算机操作不熟的人),只需要双击打开程序图标的时候就能自动登陆,因此要实现一个自动登陆功能。
3、登陆状态设置:模拟实现登陆状态在线,隐身等功能。
4、输入密码不显示:由于密码不能直接可见,因此输入的密码要用●代替输入回显的字符。
3.2.2联系人界面
1、分组管理:添加联系人后,用户会有分类管理的需求,因此需要实现分组管理。
2、设置在线状态:模拟实现切换在线状态的功能。
3、保存联系人列表:每次都要重新添加联系人是很繁琐的事情,因此实现保存联系人列表。
3.2.3聊天界面
1、消息来源提示:为了区分用户与联系人之间的消息来源,例如
小王:
你好!
2、消息时间:实现消息发送与接收时间,对应用户则为发送时间,对于联系人对象则为接收时间,例如
小王:2015-3-2
你好!
3.2.4通用需求
1、背景添加公司信息:为了不让登陆界面单调,公司相关信息的图片/Logo在各界面中。
2、界面一致性:为了不破坏整体风格一致性,去除标题栏。添加背景一致风格的两个按钮,实现最小化,关闭窗口,并在按钮中添加图片,美化按钮与窗口背景风格一致。
3、用户易识别性:按钮添加图片后,损失了一定的按钮提示功能,在鼠标进入按钮区域,离开按钮区域时表现的区别不大。因此需要实现捕获相应信号,并让按钮有一些略微的差别表现。
4、窗口拖拽:去除标题栏失去窗口拖拽功能,但该功能仍然重要,因此要实现该功能。
3.3性能分析
要求能够即时通信,并且服务器消耗的硬件资源越少越好,具体表现为
1、CPU的占用率越少越好。
2、内存的使用越少越好。
因此需要对服务器的设计进行思考。
用linux命令TOP查看,硬件资源使用率。
4、运行环境规定
4.1设备
PC机。
4.2支持软件
VM虚拟机软件,Ubuntu10.04操作系统,VIM编辑器,gcc编译器。
4.3开发工具
GNU C语言,GTK2.0软件包,LINUX C语言API接口,Makefile项目管理工具。