Beta阶段事后分析
项目 | |
---|---|
这个作业属于哪个课程 | https://bbs.csdn.net/forums/buaa-ase2023?typeId=2469180 |
这个作业的要求在哪里 | https://bbs.csdn.net/topics/615769171 |
我们在这个课程的目标是 | 学习并实践软件工程开发的方法论。在把握整体流程和内容要素的基础上实践细节,培养开发技术、开发思维、团队协作等能力。 |
这个作业在哪个具体方面帮助我们实现目标 | Beta阶段事后的Postmortem,总结和反思整个软件开发中的优点和不足。 |
一、设想和目标
我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
BUAAMapForum致于为BUAA的同学们提供详细的、可视化的、可交互的、丰富的BUAA地图浏览功能,并且为同学们提供交流讨论学校的内容和设施的平台。主要功能点描述如下:
- BUAAMapForum提供登录注册全流程,并且支持邮箱验证
- 在地图上进行标记,以钉子(Pin)的形式展示北航学院路校区的各种不同的点位,并且对点位加入详细信息描述(如Tag、位置描述、图片等)。当然,展示的内容可以进一步扩展。
- 用户和管理员可以以不同的权限对钉子进行操作
- 普通用户可以创建并维护私人钉子,可以修改钉子信息、上传图片,可以将自己的钉子申请公开;对于公共钉子,若发现存在问题或者是信息丢失,用户可以进行反馈
- 管理员可以创建并维护公共钉子,同时能够审核用户的私人钉子公开申请
- 论坛全流程。用户在论坛中以Tag和Pin为维度进行讨论,并且能够举报破坏社区和谐的内容;管理员可以实现论坛的维护和管理。除此之外,我们也配置了自动审核功能,可以对图片、文本的敏感信息进行过滤
- 个人主页功能。查看自己的钉子,帖子,回复以及消息,并且提供一定的管理和跳转服务
- 移动端适配。除管理功能外,其他的功能均提供移动端的服务
详细的功能描述、典型用户和典型场景在功能规格说明书中进行了描述,并且在本阶段已经能够满足所有场景需求。
我们达到目标了么?
-
从结果的角度出发
在功能规格说明书V2.0中,我们定义了Beta阶段需要完成的任务,我们在Beta阶段发布声明中,详细描述了各个预先商定好的功能的出口情况,并且记录了一些额外完成的任务。除此之外,我们对软件进行软件具有一定的用户使用量,并且得到了用户的支持和反馈,做出了一个能够被用户接收、使用的产品
-
从实践的角度出发
我们在9周左右的时间内,对敏捷开发流程进行了初步的实践。我们对软件设计流程、代码管理流程、文档管理流程、自动化部署流程、前后端协作流程、软件测试流程、敏捷会议流程、敏捷开发流程、软件发布流程等多个软件工程流程进行了实践,对敏捷开发流程有了初步的认知和体会
-
从团队的角度来看
我们通过长期的沟通交流和合作,形成了一个能够共同完成挑战,克服困难的团队。尽管我们仍旧有许多需要提升的地方,但是我们有足够的自信确定我们并不是一群“乌合之众”,而是一个”团队“
用户量,用户对重要功能的接受程度和我们事先的预想一致么?我们离目标更近了么?
我们的软件在Beta阶段实现了多方面的突破,用户日活为Alpha阶段的两倍左右,这超出了我们的预期。不过用户的注册量距离预期有小小的距离,这是多方面原因导致了,我们在Beta阶段发布声明中对这一点进行了反思。从整体上来说我们达到了最初的目标,尤其是移动端的适配,对我们的用户活跃量起到了非常大的帮助和提升。
根据不少用户的使用反馈(有熟人,也有陌生人),我们的产品的确能够帮助用户解决问题。
有什么经验教训?如果历史重来一遍,我们会做什么改进?
-
作为一个团队,沟通是非常重要的。尽管我们进行了更加详细的设计,但是对API的讨论可能依旧存在一些不足;另外,在进行前端页面搭建的时候,设计能力强的同学可以给设计能力相对较弱的同学更多的指导,这样可以减少修改的次数
-
安全性设计不足。在Beta阶段当中,我们遇到了一些安全性问题,包括删除、修改内容没有鉴权,出现XSS富文本注入风险等
-
我们可以更好地准备一些宣发的资料,包括海报、文档网站等等。在Alpha阶段的基础上,我们在B站上发布了视频进行宣发,并且为移动端准备了二维码。不过在听取了其他团队的汇报后,我们发现有不少值得借鉴的宣发方法
-
移动端开发。
尽管我们完成了BUAAMapForum对移动端的适配,但是我们认为我们并没有执行一个非常规范的移动端开发流程。在本次开发中,我们将一个模块的PC端和