# 《需求获取说明书》

## 1. 引言

### 1.1 背景介绍

本项目旨在开发一个个人和小型组织的任务与目标管理系统，融合目标拆解、任务执行、社交互动和资源共享等功能，帮助用户实现学习和成长的闭环。项目基于 Web 平台开发，提供清晰的目标规划、任务追踪、成就系统与社交化激励机制。

随着远程办公、自主学习的普及，用户对于目标设定、任务管理的需求逐渐上升。市面现有工具（如Todoist、Notion）缺乏社交与成长路径引导功能，无法满足“目标驱动-社交激励-资源协作”的完整成长需求。

### 1.2 欲解决问题

- 用户目标设定缺乏清晰引导，难以持续推进。
- 任务管理割裂，缺乏目标驱动与反馈机制。
- 缺乏成长过程记录与激励，难以坚持。
- 学习资源零散，无法在好友圈内共享与推荐。

### 1.3 软件创意

- “目标拆解智能助手”辅助用户为目标生成可行的子目标与任务。
- 融合社交功能（如好友圈、附近的人、资源分享等），形成成长型社交平台。
- 引入“成长路径”系统，以时间轴形式记录用户成就、任务完成、目标达成等关键节点。
- 使用 Redis GEO 实现“附近的人”模块，Redis Stream 结合规则引擎处理成就判断逻辑，提升性能与扩展性。
    

---

## 2. 系统的组成和部署

### 2.1 系统部署图

（略，可用 PlantUML 或 draw.io 绘制）

### 2.2 组成部分描述

| 组件      | 描述                                                    |
| ------- | ----------------------------------------------------- |
| Web 客户端 | 使用 Vue 3 + Vite构建，目标看板、朋友圈、资源中心、成长时间轴等 UI 展示。         |
| 后端服务    | 基于 Spring Boot 3 构建，使用 MyBatis + Redis + MySQL 处理业务逻辑 |
| 数据库     | MySQL 存储用户、目标、任务、成就、资源等核心数据；Redis 用于 GEO 位置数据、事件流缓存等。 |
| 其他      | 使用 Jenkins 实现自动化部署，运行于 CentOS 7 环境下。                  |

---

## 3. 软件系统的功能描述

### 3.1 软件功能分析

#### 典型用户识别及分析

| 角色          | 理由                                    |
| ----------- | ------------------------------------- |
| 个人用户（自我成长者） | 他们是目标设定和任务管理的直接使用者，注重效率和成长反馈。         |
| 学生用户        | 有清晰的阶段性目标（如考试、论文），对“资源推荐”、“成就鼓励”功能敏感。 |
| 社群管理员/导师    | 希望组织成员高效协作，关注团队目标进度和激励反馈。             |

#### Use Case 模型图

（略，推荐使用 UML 工具绘制）

#### 典型用户需求表格

| 用户角色 | 需求/行为                  |
| ---- | ---------------------- |
| 个人用户 | 创建目标与任务、查看进度、完成任务、查看成就 |
| 学生用户 | 获取任务建议、推荐学习资源、分享完成状态   |
| 导师   | 查看组员目标、发布资源、点赞评论       |

---

### 3.2 软件功能列表

| 编号  | 功能名    | 功能描述                | 优先级 | 重要性 | 工作量 |
| --- | ------ | ------------------- | --- | --- | --- |
| F1  | 目标管理   | 创建、编辑、拆解目标，支持父子关系   | 高   | 高   | 中   |
| F2  | 任务管理   | 创建、编辑、完成任务，关联目标     | 高   | 高   | 中   |
| F2  | 资源分享   | 分享/推荐学习资源、点赞评论      | 中   | 高   | 中   |
| F3  | 成就系统   | 自动记录用户成长事件，展示时间轴    | 中   | 中   | 高   |
| F4  | 智能任务生成 | 使用 AI 接口协助用户拆解目标    | 中   | 中   | 高   |
| F5  | 好友系统   | 添加好友、查看好友进度         | 中   | 中   | 中   |
| F6  | 附近的人   | 使用 Redis GEO 显示附近用户 | 低   | 中   | 中   |
| F7  | 资源分享   | 分享/推荐学习资源、点赞评论      | 中   | 中   | 中   |
| F8  | 通知与提醒  | 成就解锁、任务提醒等通知机制      | 中   | 高   | 低   |

---

## 4. 需求获取方法与过程

### 4.1 方法一：问卷调查

#### 选择理由：

便于广泛获取潜在用户的行为习惯和功能偏好，适合进行初期功能收敛。

#### 实施过程：

- 设计调查问卷，涵盖任务使用习惯、目标设定频率、是否期望社交互动等。

#### 原始数据

（见附录A）

#### 分析方法：

使用统计分析（频数、柱状图），筛选高频提及的功能与痛点。

#### 得出结论：

本研究表明，CoSphere 的核心用户群体为**在校学生**，他们普遍存在 **目标管理需求但执行力较弱**，因而 需要 **进度跟踪、社交激励及资源共享** 等功能来提高学习效率。移动端应用最受青睐，同时 PC 端仍有一 定用户需求。 
为满足用户需求，CoSphere 应重点开发 **目标管理、数据可视化、社交互动及学习资源共享** 等核心功 能，并结合 AI 智能推荐优化用户体验。未来可通过持续优化功能设计及交互体验，提升用户活跃度，使 CoSphere 成为高效的学习与目标管理平台


### 4.2 方法二：用户访谈

#### 选择理由：

适合深入理解用户使用流程、情绪痛点和功能期望，发现问卷无法捕捉的深层需求。

#### 实施过程：

- 选择 6 名来自高校、自学圈、远程团队的用户进行半结构化访谈。
    
- 提问范围包括过往工具使用经验、功能需求、期望界面等。
    
#### 分析方法：

采用扎根理论初步编码，归纳出功能主题与用户情绪词汇。

#### 得出结论：

- 成就反馈能有效增强持续使用意愿；
    
- 用户希望看到好友的进度形成正反馈；
    
- 社区内容需与任务/目标强绑定，避免娱乐化。
    

---

## 5. 功能优先级排序与理由

|功能编号|优先级理由|
|---|---|
|F1 / F2|系统核心功能，必须优先完成以支撑后续模块|
|F3|提升用户留存与反馈感，建议优先建设|
|F5|社交基础设施，支撑好友动态、资源分享等|
|F4|创新亮点功能，能提升吸引力与差异化，但需后期集成以降低初期风险|
|F6 / F7|附加价值功能，适合稳定期迭代上线|
|F8|提高用户活跃度与交互性，适中优先级|

---

## 附录

### 附录A：问卷数据


![[调查问卷1.png]]
![[调查问卷2.png]]
![[调查问卷3.png]]