设想和目标
- 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
我们的软件目标是解决多人协同的场景下,信息与内容管理较为繁琐的问题;典型的用户场景描述如下:
用户类型 | 使用场景 | 产品期望 |
---|---|---|
教师 | 工作日全天于办公室/教室/会议室、周末晚上于办公室/家,线上线下结合使用产品。使用发布课程内容、组织学生考核、音视频会议、日程管理等功能。 | 高效工作、协同管理课程组与科研课题组 |
大学生 | 每天于教室/宿舍/会议室不定时使用产品。使用群聊、日历、会议等功能。 | 远程上课;高效小组讨论、推进项目进展 |
业界成员 | 工作日全天于办公室/会议室,周末不定时,线上线下结合使用产品。使用IM通讯、日程管理、工作台、音视频会议等功能。 | 高效愉悦地办公 |
- 我们达到目标了么(原计划的功能做到了几个?按照原计划交付时间交付了么?原计划达到的用户数量达到了么?)
基本达到了目标,原有的功能基本实现,除了一些对于服务器要求较高的比如音频与视频会议等内容;按照原计划时间交付了;没有达到预期的用户数量,因为宣传时发现我们的产品主要针对团队协作,但是能接收到宣传的主要为个人用户,较难引起他们的兴趣。
- 和上一个阶段相比,团队软件工程的质量提高了么?
相比alpha阶段质量有所提高,在alpha阶段展示后,大家对之前进行了总结,同时学习了其他组对于项目的管理,使得我们的开发流程有了改进,主要表现在将测试与发布版本隔离,开启更多分支进行开发,经过测试后,再由专人进行合并并发布到正式服务器上。这样减少了之前偶尔会遇到的互相干扰的情况,同时可以保证正式服务器一直可用。
4.用户量, 用户对重要功能的接受程度和我们事先的预想一致么? 我们离目标更近了么?
用户量偏少,但是用户对于我们功能的接收程度与预期比较相符;用户对于我们的杀手功能评价较高,以及虽然少于预期,但是也拥有了一定规模的用户,回顾学期初的目标,基本达到了预期。
5.有什么经验教训? 如果历史重来一遍, 我们会做什么改进?
对于功能的计划可以更加细致,我们在后期开发的时候遇到了一些瓶颈,比如对于核心功能实现后如何进一步提升用户体验,大家在计划时经历了多次修改,以及功能的设计在实现时发现可行性较低。这些都会影响开发的效率,可以进行改进。
计划
- 是否有充足的时间来做计划?
beta阶段我们的计划较为清晰,留有两周的开发时间和一周的测试时间并在测试时间进行beta阶段的用户推广活动。我们在开发阶段按照功能模块划分,依据任务的树形关系结构以及重要程度进行时间划分,前期以核心功能为主,时间较后核心功能的附加功能和延展功能。
- 团队在计划阶段是如何解决同事们对于计划的不同意见的?
主要通过团队群中交流或者当面进行交流,遇到不同的意见我们会提出,在整个团队进行分析,通过整体来进行协商和利弊分析,最终达成整个团队都比较满意的结果。
- 你原计划的工作是否最后都做完了? 如果有没做完的,为什么?
并没有完全做完,原因如下:
- 我们在计划阶段的视频内容和语音内容难以开展,因为服务器成本的限制和资源限制,物理环境难以允许我们开发支持视频和语音实时传输的平台,所以只能限于文字和图片的交流。
- 时间很紧张,团队成员并不都在学校,也有同学在准备自己实验室的科研和论文,无法按照理想情况下的“极限开发”要求进行,所以整个团队的整体开发时间周期要小于beta的预计时间
- 任务分配并不完全合理,太过于局限在前后端的任务分离,但是我们后续采用模块化开发对功能进行更加细致的划分,并采用pingcode进行任务管理,任务的进度和状态会更加清晰
- 有没有发现你做了一些事后看来没必要或没多大价值的事?
- 对一些前端的展示细节过于较真,导致功能的开发进度受阻。我们希望能完成基本功能后在进行细节处理,并且专门安排