2.3. 产品和用例

当前版本 9.x 正在更新中,请阅读稳定版 8.x

产品

项目开始前,先来讲解下我们要开发的项目。

LaraZhihu 是我们整套课程构建的项目名称,这是一个允许提问题、写回答、做评论的系统。我们将以该项目为基础,来搭建项目的代码测试。通过此项目实战,我们将会学习如何使用一些测试工具,如 PHPUnit 和 Laravel 框架提供的测试套件,来编写单元测试以及集成测试。

本章节将简单从产品用例的角度上分析 Zhihu 的需求,好让大家对我们即将开发的项目有个基础的概念。

1. 角色

在我们的 LaraZhihu 里,会出现以下角色:

  • 游客 —— 没有登录的用户;
  • 用户 —— 注册用户,可以参与互动,例如提问题,写回答以及评论他人的问题和回答。

2. 信息结构

主要信息有:

  • 用户 —— 模型名称 User;
  • 问题 —— 模型名称 Question;
  • 分类 —— 模型名称 Category;
  • 回答 —— 模型名称 Answer;
  • 评论 —— 模型名称 Comment。

3. 动作

角色和信息之间的互动称之为『动作』,动作主要有以下几个:

  • 创建 Create;
  • 查看 Read;
  • 编辑 Update;
  • 删除 Delete。

4. 用例

下面我们以不同角色来讲解 LaraZhihu 的用例。

4.1 游客

  • 游客可以看到问题列表;
  • 游客可以看到问题详情及其回答;
  • 游客可以看到问题以及回答的评论。

4.2用户

4.2.1 对问题的操作

  • 用户可以创建问题;
  • 用户可以推荐、不推荐别人创建的问题;
  • 用户可以关注创建的问题;
  • 用户可以回答别人创建的问题;
  • 用户可以评论别人创建的问题。

4.2.2 对回答的操作

  • 用户可以赞同、不赞同别人的回答;
  • 用户可以评论别人创建的回答。

4.2.3 对账户的操作

  • 用户可以通过邮箱确认账户真实性;
  • 用户可以上传头像图片。

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
发起讨论 只看当前版本


暂无话题~