软件工程概论
实验报告
东北大学秦皇岛分校
第二篇:西北工业大学 软件与微电子学院 Windows程序设计综合训练 实验报告 实验五 需求分析说明书
文档编号:01
版本号:V1.0
基于TCP和UDP的服务器/客户端程序
需求分析
项目名称: 基于TCP和UDP的服务器/客户端程序
编写人:
审核人:
项目开发单位:服务器/客户端程序开发小组
基于TCP和UDP的服务器/客户端程序需求分析
1项目引言...............................................................3
1.1编写目的.........................................................3
1.2基线.............................................................3
1.3参考资料.........................................................3
2需求概述...............................................................3
2.1系统目标.........................................................3
2.2用户的特点.......................................................3
2.3假定的约束.......................................................4
3需求规定...............................................................4
3.1功能需求.........................................................4
3.1.1用例1:TCP服务器端........................................4
3.1.2用例2:TCP客户机端........................................4
3.2数据需求.........................................................5
3.2.1用例、对象与类的关系.......................................5
3.2.2类的描述...................................................5
3.2.3类与类的关系...............................................5
3.2.4网络与设备需求.............................................5
3.3其他需求........................................................5
3.3.1界面需求...................................................5
3.3.2性能需求...................................................6
3.3.3安全需求...................................................6
3.3.4操作需求...................................................6
4尚未解决的问题.........................................................6
1项目引言
1.1编写目的:
客户端服务器是一种网络架构,它把客户端与服务器区分开来。每一个客户端软件的实例都可以向一个服务器或应用程序服务器发出请求。TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层协议。UDP:用户数据报协议。UDP用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用 UDP 协议。服务器和客户端能够通过TCP和UDP进行数据传输,以便于人们共享信息与资源。
编写本报告主要是为了模拟开发系统的系统功能,系统总体需求及对开发系统的可行性进行分析,为决策者及系统开发人员提供是否开发该系统的依据和建议。
1.2基线:
此文档是基于TCP和UDP的服务器/客户端程序初始版本,暂无其他版本。
1.3参考资料:
Windows程序设计》第二版,王艳平,10.1~10.3
《VC++深入详解》,孙鑫,第14章
《Visual C++6.0程序设计从入门到精通》11.1~11.4
2.需求概述
2.1系统目标:
使用MFC以及Win32网络API技术,编写一个TCP服务器/客户端程序,服务器端能接收多个客户端的连接请求,并能够区分不同的客户端,连接成功后,服务器能接收客户端发过来的文本信息并显示,客户端在本地能够显示自己的发送信息,信息的发送模式为TCP和UDP。
2.2用户的特点:
用户有一定的专业的计算机知识,只需一个简易的交互界面进行信息文本的输入和显示,进行信息的交流。
2.3假定的约束:
必须在CPU频率大于2G Hz;内存大于1G;硬盘空间在1G以上的PC机上运行。PC机上能够运行TCP/IP协议 。
3. 需求规定
3.1功能需求:
(1)服务器端能接收多个客户端的连接请求,并能够区分不同的客户端;
(2)连接成功后,服务器能接收客户端发过来的文本信息并显示,客户端在本地能够显示自己的发送信息,信息的发送模式为TCP和UDP,两种均要实现。
3.1.1用例1:TCP服务器端
简要描述:在服务器端口的文本框中输入服务器端口号,并点击“开启服务”,服务器开始运行。
参与者:服务器端,客户端
执行者:服务器端,客户端
前置条件:运行程序,进入TCP服务器端界面
事件流:
1.运行程序,进入TCP服务器端界面
2.服务器端口号只能为1024~65535之间的数
3.输入正确的服务器端口号,按“开启服务”按钮,服务器正常运行
4.未输入服务器端口号,按“开启服务”按钮,提示端口号错误信息
后置条件:无论用户输入任何信息,按“退出”按钮,关闭此窗体,服务器关闭
3.1.2用例2:TCP客户机端
简要描述:输入正确的服务器地址与服务器端口号,连接至服务器
参与者:服务器端,客户端
参与者:服务器端,客户端
前置条件:运行程序,进入TCP客户端界面
事件流:
1.运行程序,进入TCP客户端界面
2.TCP客户端界面上的服务器地址应填入运行TCP服务器端的PC机的IP地址,TCP客户端界面上的服务器端口应与TCP服务器端的PC机上所填端口号一致
3.输入正确的TCP服务器地址和TCP服务器端口号,按“连接服务器”按钮,与服务器进行连接
4.未输入TCP服务器地址或者未输入TCP服务器端口,点击“连接服务器”按钮后,会出现“请输入服务器地址!”或者“端口号错误!”的提示信息
后置条件:无论用户输入任何信息,按“退出程序”按钮,关闭此窗体,退出程序
3.2数据需求
3.2.1用例、对象与类的关系
3.2.2类的描述
服务器类:class CMyApp : public CWinApp(BOOL InitInstance();)
class CMainDialog : public CDialog(CMainDialog(CWnd* pParentWnd = NULL);)
3.2.3类与类的关系
CMainDialog类使用AddClient和RemoveClient函数来管理客户列表;AddClient函数用于向列表中添加新的成员;
RemoveClient函数用于从列表中移除指定成员。
3.2.4网络和设备需求
PC机最低配置:2G Hz以上CPU;1G以上内存;1G自由硬盘空间;
VC++6.0或者更高版本VC++;
3.3其他需求
3.3.1界面需求
界面关系:运行TCP服务器端程序——>TCP服务器端界面——>在TCP服务器端口处输入端口号——>点击“开启服务”按钮——>运行TCP客户端程序——>TCP客户端界面——>在TCP客户端界面上相应处添入TCP服务器端口号以及TCP服务器端IP地址——>点击“连接服务器”按钮。
TCP服务器
TCP客户端
UDP服务器
UDP客户端
3.3.2性能需求
(1)服务器端能接收多个客户端的连接请求,并能够区分不同的客户端;
(2)连接成功后,服务器能接收客户端发过来的文本信息并显示,客户端在本地能够显示自己的发送信息,信息的发送模式为TCP和UDP,两种均要实现。
3.3.3安全需求
基于网络与个人电脑安全相关
3.3.4操作需求
程序运行能被工作人员快速掌握并使用
4.尚未解决的问题
无法进行文件传输。