团队作业第六次——alpha阶段问题总结随笔

豌豆射手团队团队作业第六次——alpha阶段问题总结随笔

这个作业属于哪个课程 课程地址
这个作业要求在哪里 作业地址
团队名称 豌豆射手
这个作业的目标 完善项目及答辩 编写代码规范 编写冲刺 测试 总结随笔
作业正文 ....
其他参考文献 ....

1 设想和目标

豌豆射手项目主要是主打设计一款提供用户可以在空闲时间内使用项目对影视,音乐,电视剧等等网络热门内容进行分享,并且可以在项目中分享对应的资源,让更多的用户参与到项目的使用当中,可以积极参与讨论,分享自己对与一些热门内容的看法和讨论话题。

1.1 预定功能

  • 登陆注册
  • 主页分享
  • 查看最新的标签
  • 评论点赞
  • 话题讨论
  • 资源分享
  • 广场
  • 作品讨论
  • 搜索

1.2 目前进度

这些功能大部分已经实现,不过整个项目存在一些细节处的bug,计划在在beta阶段进行解决,主要存在的问题有由于小组内大家对于前端框架vue的了解程度不同,所以在开发的过程中,有部分代码时使用html所编写的,这部分内容需要进行修改,将这部分变成vue框架所编写的代码,一些存在的问题:点击标签又跳入到登陆界面,搜索功能等一些功能

2 计划

2.1 时间安排

项目在五一假期阶段开始的第一阶段的冲刺计划,每天晚上十点左右进行当天项目的总结,以及所有组员讨论第二天的计划,以及今天所遇到的问题,将问题与组员进行分享,可以有效地避免大家都遇见同样的问题,冲刺阶段的时间比较紧张,小组内大部分成员都是从开始学习框架,然后进入编写代码的过程,所以对框架的掌握程度不深,所以在编写时经常出现bug,编写效率比较低,以至于我们在冲刺阶段的后期,没有留出足够的时间对项目进行测试

2.2 任务完成度

整个项目的完成度还算是比较符合团队的目标,小组内成员都很好的完成了在开始时分配的任务,存在的bug预计在beta阶段将所有问题解决,并且对项目做出完善性总结

2.3 风险

整个项目因为需要使用到以前从未接触的vue框架,所以组员在学习框架时,花费了一定的时间,所以导致我们组实际上手编写代码的时间比较不足,但是由于一开始有安排出缓冲区,所以在第一阶段,完成了大部分任务

3 资源

3.1 资源分配


我们小组在分析项目时将整个项目的开发过程分为如上图的八个部分,每个部分都是都由一位组员来进行开发,因为相互之间还不是非常熟悉,水平不一样,这样的方法只能保证大家的工作量接近,但是却不是最有效率的分工方法,一些能力强的组员,对于分配的任务,很快就可以完成,而对于一些组员可能要求就过大,导致在后期,一些组员已经完成了工作,而还有一些组员刚刚学习完框架,才开始编码工作,导致编码的效率周期会被拉长,而一些组员在项目讨论时提出,以前没有接触过前端开发的框架,需要一段时间的学习,由于这个问题所以导致我们的的进度会稍微比较缓慢,但是组员利用缓冲时间,比如说加班看视频,学习框架,熬夜等等方法,在后面的编码阶段,也积极与其他组员讨论,避免了很多错误,所以在后期开发时提高了效率,才能够在第一阶段结束之前完成整体项目的开发进度

3.2 测试的时间,人力和软件/硬件资源是否足够?

测试时间,一开始整个项目预留了大约两天的时间来对项目进行测试,但是由于一些原因,时间变得有些来不及,所以测试工作做的并不完善,在一开始设计时没有考虑好这个问题,但是在编码过程中,每位组员都有对自己开发项目的功能有做出测试,边开发边测试,所以大部分功能都可以正常运行,但是会存在一部分整合之后所产生的bug。小组一共有九个人,在整体项目的开发过程中,没有出现人员不足的情况,软硬件资源也没有产生

4 变更管理

4.1 “推迟”和“必须实现”的功能

项目在冲刺阶段每天晚上都会有组织会议,对组员提出的问题进行反馈,统一解决,也就意味着每个组员都可以是及时了解到项目的整体进展以及做出变更的话,小组成员可以及时了解,及时改变,不至于在后期才发现,导致浪费大量的时间。对于一些功能会根据会议情况,根据组员的反馈来进行调整,然后大家投票决定这个功能是否需要推迟开发,而对于项目主要的功能,我们会集中整组的力量对该模块进行攻克,保证这部分功能可以很好地完成

5 设计/实现

5.1设计工作

  • 原型部分根据一开始的设计由三个小组成员完成,完成后由大家进行修改
  • 前端部分大部分按照原型设计来实现,后面再由一个整合,统一整体风格
  • 后台接口部分先有前端组员提出所需要的接口,再有后端同学设计实现
  • 最后整体的风格再由一位组员进行整合,统一整体风格

5.2代码复审

组员在开发项目时,充分利用了单元测试的功能,尽可能的避免了产生bug,编码完成一部分即利用单元测试对代码进行测试,由于单元测试,所以整体项目在功能部分没有产生大的问题,完成整个项目以后,由组员对自己负责的代码进行复审,从而确保符合代码规范

6 测试/发布

6.1 测试计划

小组在阶段冲刺之前已经设计好了冲刺时的测试计划,小组成员在开发自己所负责功能时利用单元测试,测试该部分是否存在问题,边开发边测试,然后整个项目完成以后,整合完成以后,在留出一到两天的时间,进行白黑盒测试,进行回归测试,力争在第一阶段就将整体功能完整开发,在beta阶段可以完善一些其他的内容。

6.2 测试工具

测试工具 测试功能
postman插件 利用postman插件检查后端提供的接口是否能够正确接收和传递数据库当中的数据
mocha 一款js测试框架,可以提供简单的测试结构,并且可以添加第三方库。
nyc 这是一个检查代码测试覆盖率的工具,可以详细的查看有关覆盖率的报告
karma Karma是一个基于Node.js的JavaScript测试执行过程管理工具,可以添加各种插件来增加测试的功能
chrome浏览器 测试界面是否符合原型设计

7 团队的角色,管理,合作

在阶段冲刺之前,小组就展开讨论,怎样将项目划分,怎么样分配任务,决定按照模块来进行划分以后,就由每位组员自由挑选一个模块来进行设计实现。在编码过程中,如果有组员遇见一些问题,就会把问题分享在群里,让大家一起讨论解决,充分提高了开发的效率,也让其他人避免了这个错误。

8.会议讨论

  我们参考了邹欣老师的博客《现代软件工程讲义 11 项目管理 - 事后诸葛亮会议》,所以决定开一次总结会议,为了避免像大多数学校里的软件工程项目结束后大家一哄而散, 一些诺言像"我一定会补上文档的", “我们还会继续开发的”...成了撤退时的疑兵之计,等烟尘散去,同学们早跑没影了,我们按照博客内容互相讨论,下面是我们会议讨论的部分内容:
  回顾过去:

问题 怎么办
为什么没有实现取消点赞 当时发现了这个问题,但是没时间
在测试阶段发现的的问题吗 是自我调适的时候发现的问题
按照原计划交付时间交付了么? 原计划达到的用户数量达到了么? 交付了,没达到
什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况? 评论区,比较复杂
我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 定义明晰,但功能太多,比较乱
是否有充足的时间来做计划? 有时间,但是分配有点不合理
你原计划的工作是否最后都做完了? 如果有没做完的,为什么? 大部分完成,一些细节没处理
有没有发现你做了一些事后看来没必要或没多大价值的事? 有些页面似乎功能重复
是否项目的整个过程都按照计划进行? 基本上
用户测试的时间,人力和软件/硬件资源是否足够? 测试不足

  展望未来:

预期 怎么做
之前自己任务的问题 个人解决
分配不公 有任务大的成员自觉提出,组长重新分配
缓冲区 多留几天缓冲
争取尽善尽美 大家加油

  会议图片:
忘记截图

9 总结

当前我们的团队正处于磨合阶段,经过这一次的整体开发,整个团队更加熟悉对方,也更加清楚每个人的擅长的地方,在beta阶段可以更好地安排任务分配,做到人尽其才。我们团队在善于激励项目人员,给他们以所需要的环境和支持,并相信他们能够完成任务原则以及无论是团队内还是团队间,最有效的沟通方法是面对面的交谈原则上做得最好,有效的减少了问题,增加了团队的协作能力,增加了凝聚力。对于代码质量,我们在后面的阶段会加强代码复审的,严格执行代码规范。

组员 过程体会
余嘉宸 通过这次软工实践冲刺过程的学习,深刻的领悟到很多东西。前期工作做的越充分,后期开发也会相对轻松;同时,开发过程中遇到的很多没有学过的东西,需要自己具备足够的学习能力,并且能够找到资料来自学,自学过程中也会遇到很多困难;遇到困难需要沉着冷静,要具备能够有效解决问题的方法,可以询问同学,也可以网上查找解决办法;再者,也就是与人沟通的能力,前后端交流,前端遇到相同的问题互相询问,共同解决;开发过程很辛苦,但过程越痛苦,步履维艰,努力后的结果就会觉得越满足。
温杰 以前没有开发过项目,也不太了解网页的数据是怎么动态渲染上去的,这次是第一次使用vue框架,学到了许多新知识和工具。和队友的配合也很好,在遇到问题的时候也可以及时解决。认识到了自己的动手能力有许多不足,以后要多多练习
王泽宇 在这次alpha冲刺当中我负责编写前端的话题页面、话题详情页面和推荐页面。在编写的过程之中我发现了我对web相关技术很大的缺漏,而且学习能力、学习效率也没有自己想象当中的那么强、那么高。这是我在进行任务的时候对自己能力的高估,导致了在完成任务的进度和效率上不是很理想,这些是需要改进的。且在这次冲刺当中我也发觉了前期设计工作的重要性。
郑廷健 一个人在做的时候,面对问题找其他人帮忙比较繁琐,还需要先给别人解释自己的设计,而团队下可以很好的实现互帮互助。原本一个自己团队分配的工程,由于知识有限,困扰了两天,结果队友好心接受了过去,加快了作业进度
李舸 通过这次团队alpha冲刺阶段,我不仅学习了新的知识技能,尝试了新的框架,还锻炼了沟通协作能力,与队友磨合的更加默契。刚开始冲刺时,由于没有接触过vue框架,我学习起来较为吃力,常常碰壁。虽然许多问题百度或请教同学可以得到解决,但仍然效率很低。希望在今后的学习工作中能先打好基础,克服这方面的困难。团队合作方面,我们每天晚上都会进行视频会议,讨论进度,分享经验,遇到困难也会及时进行沟通,一起解决。我们深知团队合作中沟通的重要性,这让我们团队得以顺利完成此次冲刺。总的来说,这次冲刺让我收获颇丰,希望团队在今后的开发合作阶段继续一起努力,一起进步,顺利完成此次“豌豆射手”项目。
何瑞晨 这次的前端开发经历很宝贵.刚开始对前后端的分离没什么概念,就一头莽进去这自己那一块的视图,所以没有做好准备工作,后期进度跟不上拖后腿了.这么晚开始数据读取的原因是感觉前端的数据导入比较简单,结果发现在配置和框架的兼容性很重要,也是比较难的点.在跨域和vue如何导入html这个地方卡了很久,这个就是没做好充分准备的地方.不过在找解决办法的过程中我也学会了很多东西.还有我对如何对后端提出需求这个方面概念也比较模糊,在我读取数据的时候才发现当初提的要求不全面.然后又因为自 己以前没有啥大项目的开发经验,对接口的使用不熟悉,所以做的过程中总是断断续续的提问题,对自己的需要的数据没有一个整体概念.在这次的项目开发过程中我学到了很多东西.从整个项目的流程,到前后端的合作,以及自己开发时候需要考虑的东西都有了更多的了解.总的来说,这一次的项目开发是很宝贵难忘的一段经历.
伍燕文 在本次冲刺当中学习到了有关vue前端框架的一些基础知识,虽然只掌握了皮毛,但是相信在后面的学习当中会花更多的时间去学习熟练这门知识
原文地址:https://www.cnblogs.com/insist01/p/12963745.html