项目名称:大学生信用培养平台
主要功能:
用户管理模块的功能描述如下表所示。
编号 | 名称 | 描述 |
---|---|---|
1 | 注册 | 未注册过的用户使用邮箱进行账号注册 |
2 | 登录 | 用户输入账号和密码进行登录系统 |
3 | 找回密码 | 用户通过获取邮箱验证码进行重置密码 |
4 | 修改个人资料 | 用户在个人中心对个人的基本资料及头像进行修改 |
活动管理模块的功能描述如下表所示。
编号 | 名称 | 描述 |
---|---|---|
1 | 发布活动 | 用户根据自己的需求在对应的活动模块中填写活动的相关信息,并发布 |
2 | 报名活动 | 用户在自己感兴趣的模块中查看其他用户发布的活动,对感兴趣的活动进行报名 |
3 | 同意报名 | 活动发起者收到报名的消息提示,对报名的人员进行审核,同意或拒绝报名 |
4 | 开始活动 | 活动凑齐全部的人员后,活动发起者可以开始活动 |
5 | 结束活动 | 线下开展完活动后,活动发起者可以结束活动 |
6 | 评价活动 | 当一个活动结束后,活动的所有参与者可以对活动进行评价,对活动的参与者进行互评 |
人员分工:
人员 | 分工 |
---|---|
陶涛 | 用户管理模块,其中包括用户的登录、注册、找回密码、个人中心、修改用户信息等功能 |
范媛媛 | 系统首页,各类活动分页展示,活动详情及论坛 |
苏华 | 活动发布,报名及通过报名信息 |
赵晓南 | 活动开展,结束,评价及信用分值的计算 |
工作量比例:
陶涛(24%)、苏华(26%)、范媛媛(24%)、赵晓南(26%)
进度:
系统规划阶段 | 预期计划 | 现实进展 |
---|---|---|
系统界面框架的总体设计 | 2018.11.16-2018.11.18 | 2018.11.16-2018.11.18 |
用户管理模块的开发和测试 | 2018.11.19-2018.11.22 | 2018.11.19-2018.11.23 |
活动管理模块的开发和测试 | 2018.11.20-2018.11.25 | 2018.11.20-2018.11.26 |
综合测试 | 2018.11.26-2018.11.27 | 2018.11.26-2018.11.28 |
项目总结 | 2018.11.27-2018.11.27 | 2018.11.28-2018.11.28 |
项目验收演示 | 2018.11.28-2018.11.28 | 2018.11.28-2018.11.28 |
过程体会
本次项目开发过程中,我们遇到了很多困难和挫折,在编程中有为了解决一个Bug反反复复修改代码花去整整一天,也有在需求设计阶段,为了能更能适应用户的需要,苦思冥想一个功能用去一晚上,更有在项目综合测试阶段,突然发现一个新的bug的绝望和无助。但是,尽管这个过程非常艰难,我们也都坚持过来了,同时,我们也从中获益良多。我们更加坚信“你付出了多少你就能得到多少,尽管可能不一定是正比,但是却也不会亏待你”。
通过这个项目我们学到许多原来未曾接触过关于项目开发方面的经验和教训:
- 第一,需求理解要透彻,需求关乎项目要做什么,要达到什么样的结果,需要在需求阶段理解清楚,做到心中有数。另外需求是工作量评估的基础,要想工作量评估适当且充分,不出现大幅度偏差,就需要客观理解需求。
- 第二,工作量评估做到群策群力,我们会把整体计划拆分成细小的功能点,然后按照组员的特点,分配到具体的开发负责人。由于很多功能点都是互相关联,单方面评估往往不能反应真实的情况,因此我们会召集专门的评估会议,对某一个功能点由对应的开发负责人和相关的人员一起来确定,确保大家的信息对称。
- 第三,代码质量控制摆到重中之重,良好的代码质量需要工程师付出很多的努力,这些努力都是值得的,为后期测试、BUG诊断、扩展等降低了难度,减少不必要的时间花费。
- 第四,单元测试要完全覆盖,开发人员做单元测试,一是检查自己的代码是否有缺陷,做到对自己代码负责;二是可以站在测试的角度去思考问题,可以减少后期测试不必要的测试点,让项目进度整体可控。
- 第五,保持团队成员的积极性,工作都是人做出来的,组员的工作积极性是项目好坏的决定性因素。做好项目,先必须让团队氛围良好。让每一人都具备主人翁意识,都可以有自己发展的空间,在自己的领域里有所建树,这也是我们团队能在中后期赶上进度的根本原因,因为大家整个项目开发过程中都保持了强大的积极性,乐在其中。
- 第六,项目开发过程中往往是曲折往复的,需要我们的耐心和决心。按时完成一个项目,不管大小,都代表了一种做成事情的能力,比项目本身更重要,它让我们对未来做成更多事充满了信心。
下阶段展望
- 通过Alpha冲刺阶段的磨合,队员之间配合逐渐默契,希望Beta阶段能继续保持团队的积极性。
- Alpha冲刺阶段我们的注意力主要集中在coding上,测试方面主要就是对当日实现的功能进行简单的测试,以及最后项目整合完成后的测试,前期并没有做测试的一个整体规划,希望下一阶段能在测试这块下点功夫。