改进需求分析书

需求规格说明书

该项目是一个基于TCP用QT开发的五子棋对战系统。
项目仓库地址

1.1面向用户分析

五子棋是一种简单的休闲游戏,主要面向不需要高强度消耗、高耗时的网络用户。
对于本项目,目标人群精确至需要在游戏的同时进行社交的用户,他们需要在保证游戏正常运行的同时,直接在游戏中对话的功能。

  1. 用户画像:
    使用电脑
    常需要短暂放松
    周边有需要社交的对象
  2. 用户需求
    需要短时间快速放松
    需求游戏的同时进行社交
    不希望繁杂的页面设计
  3. 用户示例
职业 使用场景 使用原因
大学生 寝室 赶作业或期末复习期间放松、打发时间
同项目者 工作室 缺乏灵感,需一边放松一边交流

1.2功能性需求

1.2.1 功能设计图

1.2.2 详细描述

本系统功能性需求分为基本功能需求和网络功能需求

基本功能需求-游戏本体:

  1. 棋盘的初始化
    对棋盘进行初始化,即一张15*15规格的无棋子的正方形网线棋盘。

  2. 下棋操作
    用户点击棋盘,对点击所在坐标属于的棋盘下棋点发送下棋操作。

  3. 判断下棋是否合法
    判断待下棋点是否已经存在棋子,判断发送的坐标位置是否超出棋盘范围。

  4. 判断是否输赢
    进行下棋操作成功后,对该棋进行dfs、bfs等其他算法操作,判断该棋子是否已经构成五连棋子及以上,即可判断胜负。

拓展需求

  1. 用户账号密码注册
    用户可以在客户端进行注册,账号密码发送给服务器端进行保存。

  2. 进行账号密码登录客户端
    用户在登录客户端时,输入账号密码,服务器端对其进行验证,若全部正确则运行进入。

  3. 账号包含用户名、胜率等信息
    服务器端记录每个账号的用户名、对战结果的胜负等信息。

网络功能需求:

  1. 客户端提供房间号进行游戏
    服务器端建立多个房间号给客户端使用,客户端可以挑选其中任一房间进入对局。

  2. 对战时可以请求悔棋
    客户端提供下棋方悔棋一步操作。

  3. 对战时可以请求和棋
    客户端提供下棋方和棋操作。

  4. 对战时可以发送文字
    客户端提供文字框给用户发送文字。

  5. 切换下棋手
    黑方下棋操作完成且为获胜后,下棋手切换为白方。白方下棋操作完成且为获胜后,下棋手切换为黑方。

  6. 监听
    服务器端对客户端连接进行监听并连接。

1.3技术需求

  • C/C++语言基础
  • QT的基础知识
  • QT的UI使用
  • QT中TCP协议的使用、socket的使用

1.4预期的用户数量

  • 预期的用户数量为200
  • 分析:一局对局中包含的用户为2个,本团队目前预期创建100个房间供用户进行五子棋对战,即预期的用户数量为200。

1.5阐述系统

1.5.1真实性

五子棋是一种常见的博弈游戏,操作简单,且内容不复杂,只需要完成有五颗棋子连接即可获胜,所以项目的制作不算太复杂。

1.5.2可用性

用户可以登录游戏客户端,进入相应的房间号与局域网内对手进行五子棋对战。

1.5.3价值

该系统为用户提供一个休闲娱乐的平台进行五子棋游戏的对战。

posted @ 2024-05-04 22:27  云下成伞  阅读(17)  评论(0编辑  收藏  举报