目录
一、需求规格说明书
1.1 引言
1.1.1编写目的
为明确软件需求、安排项目规划与进度、组织软件开发与测试,撰写本文档。
1.1.2产品说明
- 产品名称:解忧杂货店
- 产品类型:微信小程序
- 界面语言:简体中文
- 使用年龄:12岁以上人士
- 产品功能:提供一个社交平台,允许用户通过写信的方式来倾诉自身的烦恼或分享自己的心情。
1.2 项目阐述
1.2.1产品功能
借由《解忧杂货店》的灵感参考,用户在平台上可以通过写信的方式进行倾诉或解惑,系统会为其随机匹配一个用户。为了与如今盛行的聊天功能做出区别,平台上并没有好友私聊功能,写信和回信是用户唯一的交流方式。一方面保留了书信交流的仪式感,另一方面也能有效防止信息泛滥的弊端。
1.2.2预期用户量
我们小程序面向的是少众用户且推广渠道有限,系统预期用户量为2000。
1.2.3真实性
人们的日常生活离不开社交,各种社交产品成千上万,本产品的真实性不言自明。
1.2.3可用性
本产品面向广大的年轻用户群体而开发,早已熟悉QQ,微信,微博等各类社交应用,因此这些用户对本产品的学习成本很低。而且该群体在生活的过程中容易受到来自学习、生活、工作等各方面压力的影响,一个简约的倾诉平台更利于用户接受。
1.2.4产品价值
在这样一个信息爆炸的时代,每天我们打开手机都会收到各种广告信息的侵袭、看到各类群聊的消息提醒,体会到来自社会生活中的压力。在很多时候,我们不便把自己的烦恼与亲朋好友倾诉,各大社交平台上广告纵横,自己的情绪也不能得到有效的缓解。
我们回归初衷,打造一款远离喧嚣,专注于内心真情实感,纯粹的文字表达的微信小程序。在平台中,用户不会收到繁杂的信息推送,私密的信件分享倾诉给用户树洞般的倾诉体验,让用户在倾诉的同时能够保证自己的用户信息不被泄露。本产品的价值就在于此。
1.2.5产品情怀
本产品的切入点是信件这种原始且具有仪式感的写作方式,以解忧杂货店为名,辅以写信的倾诉方式,更加能够让用户表达自己的真情实感。
1.3 面向用户分析
本产品主要是打造一个纯粹的解忧社交平台,让人们用文字去表达自己的真情实感。主要面向用户的年龄区间是15至36岁。这些用户包含在校学生(高中生、大学生)、应届毕业生、大多数在职人员,他们在生活、压力、工作中各有烦恼。一个简约的书信平台能够让用户快速上手,慢生活的书信和人们长期所处的快生活形成对比,在写信的同时既能倾诉自己的烦恼,也能有效减缓自身的压力。
1.4 功能需求分析
1.4.1功能结构图
1.4.2具体功能列表
功能 | 详细描述 |
---|---|
登录注册 | 用户进入小程序,获取用户的微信信息,并根据用户微信名确定用户笔名 |
用户信息管理 | 用户之间并不能查看彼此的信息,在用户信息管理中只允许用户更改笔名 |
通知 | 用户收到新信件时进行提醒,用户看完信件后状态发生改变 |
书写信件 | 书写新的信件,选择信件的信纸和信封的样式 |
发送信件 | 系统随机为用户匹配一名收信的笔友,并记录信件发送的时间 |
收信广场 | 展示用户最新收到的10封信件 |
发信箱 | 用户删除信件、用户发送新信件 |
草稿箱 | 用户查看草稿、用户编辑草稿、用户更新草稿、用户发送草稿 |
收件箱 | 用户删除信件、用户查看信件、用户回复信件 |
数据统计 | 使用平台多少天、发送多少信件、接收多少信件 |
1.5 技术需求分析
1.5.1 前端技术选型
技术项 | 具体技术 |
---|---|
编程语言 | JavaScript、WXML、WSS |
开发框架 | 原生微信小程序 |
代码版本控制 | git |
运行环境 | Android微信客户端、iOS微信客户端 |
css预编译语言 | WXSS |
1.5.2 后端技术选型
技术项 | 具体技术 |
---|---|
编程语言 | Java |
通信协议 | HTTP |
JDK版本 | 1.8 |
数据库 | MySQL 8.0,Redis 6.0.8 |
代码版本控制 | git |
web服务器 | Tomcat 9.0.29 , |
服务器技术 | docker |
技术框架 | springboot 2.2.2,mybatis-plus 3.3.2,Maven 3 |
二、团队计划和分工
2.1 团队Github仓库
2.1.1 仓库地址
https://github.com/Loiterers/Listener
2.1.2 issue截图
2.2 团队计划
2.2.1 修正前团队计划
周次 | 开发内容 |
---|---|
6 | 确定团队成员,各成员*选题 |
7 | 1.团队开会确定选题,完成团队介绍博客 |
2.进行需求分析,写需求文档 | |
3.原型设计,设计第一版UI,队员估计任务难度并学习必要的技术 | |
4.确定编码规范、平台环境搭建完成、初步架构搭建 | |
5.确定前后端接口文档 | |
8 | 1.查看原型是否要进行改进 |
2.前后端继续编程,继续完善功能 | |
3.制订测试计划 | |
9、10 | 1. 团队项目Alpha任务分配计划 |
2.连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 | |
11 | 1.用户反馈+测试计划改进 |
2. 团队Alpha阶段个人总结 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 |
2.2.2 修正后团队计划
周次 | 开发内容 |
---|---|
6 | 确定团队成员,各成员*选题 |
7 | 1.团队开会确定选题,完成团队介绍博客 |
2.进行需求分析,写需求文档 | |
3.原型设计,设计第一版UI,队员估计任务难度并学习必要的技术 | |
4.确定编码规范、平台环境搭建完成、初步架构搭建 | |
5.确定前后端接口文档 | |
8 | 1.团队协作交流,学习git知识 |
2.根据功能需求,进一步确定需求文档 | |
3.UI确定小程序主页面样式 | |
4.UI确定信纸信封的格式,结合前端队员设计第二版UI | |
5.前端对已经敲定的UI画面进行代码实现 | |
6.后端队员建立团队github仓库,并建立相应的分支 | |
7.根据需求文档初步设计数据库表 | |
8.后端成员初步实现用户信息的管理书写信件、发送信件的代码实现 | |
9 | 1.前端队员和UI确定好页面样式,实现前端页面开发 |
2.后端成员完成发信箱、草稿箱、收件箱的功能实现 | |
3.根据功能实现进度,商量项目二次功能优化和开发,并确定需求文档 | |
10 | 1. 团队项目Alpha任务分配计划 |
2.根据上周的需求文档,进行工作分配,进行为期7天的敏捷开发 | |
3.连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 | |
11 | 1.用户反馈+测试计划改进 |
2. 团队Alpha阶段个人总结 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 |
2.2.3 矫正计算方法
- 根据“先核心再次要,先易后难”的原则,把项目每周的任务分配进行了细化,让项目的工作分配显得更加合理。
三、本周进展和总结
3.1 本周分工情况
任务 | 关键内容 | 负责人 |
---|---|---|
git相关知识学习 | 学会代码的提交和下载 | 全体成员 |
UI设计 | 完成信纸样式的选定以及主页面的设计 | 王博誉 |
前端实现 | 根据已经确定的页面样式进行基本的代码实现 | 郭子芊 |
数据库的设计 | 根据需求初步确定数据库表,包含用户信息,收发信件的表等 | 刘奕池、谭嘉明、谢智杰、陈漫婷 |
项目的基本搭建 | 配置好项目的基本环境,确定好分包和使用的技术,部署服务器 | 刘奕池、谭嘉明、谢智杰、陈漫婷 |
初步代码实现 | 尝试初步实现用户信息的管理书写信件、发送信件的代码实现 | 刘奕池、谭嘉明、谢智杰、陈漫婷 |
本周博客 | 完成本周博客内容 | 谭嘉明、刘奕池 |
完成与感想汇报 | 汇报这周的完成情况 | 全体成员 |
3.2 上周工作感想
成员名称 | 本周感想 |
---|---|
刘奕池 | 第一次进行团队合作完成编程项目,我主要工作是负责项目的统筹规划以及部分代码的编写,相信在这次合作的过程中我们都会有自己的收获。 |
谭嘉明 | 虽然这个团队项目挑战不小,但是我还是会尽自己所能,发挥最好,与团队一起完成这荐任务! |
谢智杰 | 第一次进行团队项目,虽然很不熟悉,但我还是会尽自己努力把它完成。 |
王博誉 | 这次的团队项目是我第一次团队合作完成项目,虽然很难,但是我们组内都很积极,也十分认真的完成自己负责的内容,希望经过这次团队项目,我能进一步提高自己的能力 |
郭子芊 | 本次团队项目前期准备基本理想完成,在这一周的时间里,我们小组进行了多次讨论最终确定好了具体实施方案,并进行了团队分工。人多力量大,大家各尽其职,积极完成项目工作,体验到了一个产品孵化的不易 |
陈漫婷 | 这次团队合作很开心,团队分工明确,交流顺畅。 |