团队作业2-《需求规格说明书》
智能待办事项(To-Do List)管理系统
版本:1.0
日期:2025-04-11
系统简介:
一个支持任务管理、提醒、自动分类的智能 To-Do List 系统,支持 Web 和桌面端同步。
选题内容说明:
项目基于日常需求,每个人都需要管理任务,因此用户需求真实可靠;具备基本功能,如任务添加、分类、提醒,能够被日常使用;解决大学生、开发者、团队管理的时间安排问题,提高生产力;可以加入 个性化 AI 推荐 或 情感化 UI 设计,让用户在使用时产生情感共鸣(如 "温馨提醒"、"鼓励语句")。
系统的真实性、可用性 以及价值所在
-
真实性:系统设计直接源自人们对待办事项管理的迫切需求,并且参考了成熟应用的功能和技术,技术选型和功能设置切实可行。
-
可用性:简洁直观的用户界面、灵活的任务录入与管理、智能化自动提醒与分类、多端数据同步等设计,确保系统易用、响应快速且具备高可操作性。
-
价值:不仅在提高日常工作、学习效率方面有显著作用,还通过情感化的设计和个性化推荐增强用户体验;同时,对于初学者来说,项目开发过程也是一个极具价值的全面技术实践平台
项目目标
-
任务管理
用户可以创建、编辑和删除任务,每个任务包含名称、描述、截止时间等信息。 -
任务分类
系统自动将任务分类(如工作、学习、娱乐),同时允许用户调整分类或添加标签。 -
日程提醒
当任务即将到期时,系统通过邮件或短信发送提醒信息。 -
数据同步
通过网络将 Web 和桌面端数据保持一致,用户在任一端的修改能实时同步到其它设备。
主要功能具体描述
- 任务管理
-
创建任务
用户输入任务名称、描述、截止时间等后点击“添加”,任务保存到系统数据库中。 -
修改任务
用户可以编辑已存在的任务内容,如修改截止时间、更新任务状态(未开始、进行中、已完成)。 -
删除任务
支持单个和批量删除任务。
- 任务分类
-
自动分类
系统分析任务描述关键字,将任务归入“工作”、“学习”、“娱乐”等类别。 -
手动调整
用户可自行改变任务分类或添加自定义标签。
- 日程提醒
- 提醒方式
当任务接近截止时间时,通过邮件和短信给用户发送通知。提醒内容包含任务名称、截止时间及温馨提示。
- 数据同步
- 跨终端同步
用户在 Web 或桌面端的任何操作都自动更新到服务器,其他设备实时同步最新数据。
系统架构
系统主要分为三个部分:
- 前端界面
- Web 端:使用 HTML、JavaScript 构建友好的用户界面。
- 桌面端:使用 C# 开发 Windows 客户端,实现与 Web 系统数据同步。
- 后端服务
- 使用 Python(FastAPI 框架)来开发任务管理和数据同步的 API。
- 负责处理用户请求,实现任务的增、删、改、查等操作。
- 提醒与分类
- 智能分类模块:用 C++ 编写简单的规则或算法,对任务进行初步分类。
- 提醒推送:用 Golang 实现邮件或短信提醒功能,按设定时间进行通知。
用户量预期为:
基础目标:10-50 人(团队成员及其朋友、同学试用)
理想目标:100+ 人(通过社交媒体、小范围推广吸引额外用户)
突破目标:500+ 人(若项目功能较完善,可尝试面向特定群体推广)
团队具体分工
团队角色 | 主要任务 | 负责语言/技术 | 负责人员 |
---|---|---|---|
项目经理 (PM) | 规划项目进度,协调团队工作 | — | 黄娟英 |
前端开发 | Web 界面设计与实现 | HTML、JavaScript | 黄熙儿、杨子俊 |
后端开发 | 任务管理和数据同步 API | Python (FastAPI) | 袁卓妍 |
智能分类模块 | 实现简单的任务自动分类功能 | C++ | 黄娟英 |
提醒推送 | 实现邮件和短信提醒服务 | Golang | 吴其锦 |
用户管理 | 实现用户登录、注册和权限管理 | Java | 夏钦涛 |
桌面端开发 | Windows 客户端设计与开发 | C# | 钟鸣 |
团队项目的git仓库:Xiaoguwei Special Task Force
团队原先计划
周数 | 任务描述 |
---|---|
第6周 | 1. 团队组队、团队博客 |
2. 团队介绍、成员展示、角色分配、选题确定 | |
3. 制定团队计划安排,团队贡献分的规定 | |
第7周 | 1. 需求规格说明书 |
2. 原型设计,队员估计任务难度并学习必要的技术 | |
3. 编码规范完成、平台环境搭建完成、初步架构搭建 | |
第8周 | 1. 原型改进(给目标用户展现原型,并进一步理解需求) |
2. 架构设计,WBS,团队成员估计各自任务所需时间 | |
3. 测试计划 | |
第9、10周 | 1. 团队项目Alpha任务分配计划 |
2. 连续7天的Alpha敏捷冲刺,7篇 每日Scrum Meeting博客+代码提交 | |
第11周 | 1. 用户反馈+测试计划改进 |
2. 团队Alpha阶段个人总结 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | |
第12周 | 1. 团队项目Alpha博客:事后分析 |
团队改进计划
周数 | 任务描述 |
---|---|
第6周 | 1. 团队组队、团队博客 |
2. 团队介绍、成员展示、角色分配、选题确定 | |
3. 制定团队计划安排,团队贡献分的规定 | |
第7周 | 1. 需求规格说明书 |
2. 原型设计,队员估计任务难度并学习必要的技术 | |
3.平台环境搭建完成、初步架构搭建 | |
第8周 | 1. 原型改进(给目标用户展现原型,并进一步理解需求) |
2. 架构设计,WBS,团队成员估计各自任务所需时间,进行编码规范 | |
3. 测试计划 | |
第9、10周 | 1. 团队项目Alpha任务分配计划 |
2. 连续7天的Alpha敏捷冲刺,每日博客+代码提交 | |
第11周 | 1. 小组讨论,用户反馈+测试计划改进 |
2. 团队Alpha阶段个人总结 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | |
第12周 | 1. 团队项目Alpha博客:事后分析 |
Issue管理
组员感想
黄娟英 | 作为项目经理和负责智能分类模块的同学,我感受到整个项目管理与分工的重要性。通过协调大家的工作,学到了如何更高效地沟通和解决问题。 |
---|---|
黄熙儿 | 在负责 Web 前端开发过程中,我不仅掌握了 HTML 与 JavaScript 的基础知识,还学会了如何设计简洁直观的用户界面。 |
杨子俊 | 参与项目前端部分的开发让我体会到了用户体验设计的重要性。通过与团队密切沟通,我学会了如何将用户需求转化为具体的交互设计。 |
袁卓妍 | 负责后端 API 的开发,让我深刻体验到服务接口对整个系统稳定运行的关键作用。我进一步熟悉了 Python 编程,同时也锻炼了在团队中协同开发的能力。 |
吴其锦 | 在实现邮件和短信提醒功能时,我不仅学习了 Golang 的网络编程,还感受到了如何设计一个高效的消息通知系统。 |
夏钦涛 | 参与用户管理模块的开发,让我认识到安全性和权限管理在实际项目中的重要性。通过实现用户登录、注册和权限校验,我对 Java 编程有了更实际的应用。 |
钟鸣 | 在桌面端客户端开发中,我不仅实践了 C# 的开发技能,还学会了如何与后端进行数据同步。整个项目让我感受到跨平台数据协同工作的复杂性,也激发了我在软件设计和问题解决方面的热情。 |
|