软工网络15团队做业7——Alpha冲刺之过后诸葛亮

设想和目标

咱们的软件要解决什么问题?是否认义得很清楚?是否对典型用户和典型场景有清晰的描述?

  • 解决大学生利用碎片化时间来学习英语单词,备考相应英语等级考试。
  • 微信程序的b名字叫“背背佳”,里面MVP功能就是单词学习,辅助功能也是围绕单词学习,因此是定义的很清楚。
  • 咱们的典型用户就是大学生,典型场景就是大学生在本身的课余时间等碎片化时间,能够随时拿起手机进行单词学习。

和上一个阶段相比,团队软件工程的质量提升了么? 在什么地方有提升?具体提升了多少?如何衡量的?

  • 相对我的阶段,结对编程阶段,软件工程的质量提升了不少。好比说:
    1.最突出的就是咱们有一个项目能够上线,有必定的用户量。虽然只用MVP功能,还不够完善。
    2.有体系化的编程规范文档。
    3.有最后的BUG分析,功能测试,来完善咱们的项目。、
  • 提升了一大截,以上的3点都是衡量标准。

咱们达到目标了么(原计划的功能作到了几个? 按照原计划交付时间交付了么? 原计划达到的用户数量达到了么?)

  • 相比咱们alpha初期定下的目标,咱们是有不少功能没有实现的,原计划有4部分,以下图。由于功能太多,能力和时间有限,最后只实现了主要功能,和部分辅助功能。
  • 原计划是达到30个用户量。目前截至5月15日有14个用户。不过从统计图看,5月16日用户量有所增长。

用户量, 用户对重要功能的接受程度和咱们事先的预想一致么? 咱们离目标更近了么?

找了几个试用者进行访问。对主要g功能的接受度和咱们预想一致,可是咱们还但愿这个单词微信小程序有几处不一样于其余单词程序的亮点,目前尚未实现(辅助功能),用户也很期待。咱们离目标更近了。前端


计划

是否有充足的时间来作计划?

  • 有充足的时间来作计划,由于刚开学的前几周,老师就已经把她本学期的教学计划告诉咱们了,并且咱们住的比较近,因此就很方便讨论计划。

团队在计划阶段是如何解决同事们对于计划的不一样意见的?

  • 若是有小组成员跟团队大部分红员的意见不一样的话,咱们就会采起先让该成员分析一下她的这个见解的优势在哪里,而后咱们说一下咱们见解的优势所在,最后你们一块儿讨论,作到取长补短。

你原计划的工做是否最后都作完了? 若是有没作完的,为何?

  • 最后咱们的计划大部分是作完了,还剩下好友PK以及遗忘曲线尚未实现,这是由于在初期的时候,咱们错误的估计了时间,致使最后任务很是多,老师也有在博客下面评论建议咱们先作主要功能,因此咱们最后讨论决定,先实现学习模块与打卡的功能,剩下的在Beta阶段实现。

有没有发现你作了一些过后看来不必或没多大价值的事?

  • 有,就是单词本文件,当时咱们在前端和端都有放置单词文件,最后实现的时候发现前端根本没有必要放,由于直接从后端调用便可。

是否每一项任务都有清楚定义和衡量的交付件?

  • 不是,由于咱们有时候遇到什么错误可能会当即修改,这样就可能致使跟刚开始商量的不同,因此不是每一项都有清楚定义和衡量的交付件。

是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为何没有估计到?

  • 项目出现最大的之外就是数据库的问题,冲刺开始的几天,负责后端的咱们就开始纠结与数据库的问题,没有成功,最后使用的是文件。
  • 没有预料到的风险就是小程序的发布,体验版发布后,电脑上运行是正常的,可是在手机上页面却跳转不了。至于为何没有估计到,是由于这个风险就是个意外,咱们都没有想过竟然还有这种结果。

在计划中有没有留下缓冲区,缓冲区有做用么?

  • 有啊,由于冲刺阶段咱们有一个体测,缓冲区的做用就是给予队员调整本身和决定接下来如何肯定学习计划的做用。

未来的计划会作什么修改?(例如:缓冲区的定义,加班)

  • 有修改,团队讨论后决定把PK这个功能去掉,新增一个收藏单词的功能。接下来的冲刺,咱们应该仍是会留有必定的缓冲区的,由于若是没有缓冲区真的太累了,这学期课程比较多,每一个人还须要为本身接下来的实习或者其余事情作准备。至于要不要加班,这个是弹性的,效率高的话就不用,万一哪天太拖沓了,那就知道加班了。


资源

咱们有足够的资源来完成各项任务么?

  • 从技术上来讲,咱们所学的java,数据库的语言的基础能够方便咱们去看懂微信小程序专门的开发语言WXML等
  • 从工具上来讲,咱们使用了微信开发工具专门的平台,同时用微信程序开发教程资源,方便咱们学习和研究。
  • 从人员上来讲,咱们有6我的,分工明确,各有所长,各司其职,配合度高。

各项任务所需的时间和其余资源是如何估计的,精度如何?

  • 各项任务所需的时间是从我的的能力,以及分配模块的难度来估计的。
  • 从此次开发过程当中,仍是因为能力时间有限,没有能和设想的同样实现的很完美。由于须要学习一个新的语言,再去开发。因此精度不是很高。但后面通过调整,助攻主要功能,效率一下就提上去了。

测试的时间,人力和软件/硬件资源是否足够? 对于那些不须要编程的资源 (美工设计/文案)是否低估难度?

因为Alpha阶段冲刺时间较短,咱们花大量的时间在开发上,因此测试时间安排的不够。对于美工设计,咱们并无低估它的难度,也知道咱们作的远远不够好。java

你有没有感到你作的事情可让别人来作(更有效率)?

没有。咱们团队的每一个人都是不可缺乏的一份子。linux


变动管理

每一个相关的员工都及时知道了变动的消息?

是的。由于咱们团队成员住的比较近,并且咱们在社交网络上的联系也很紧密,一有变动信息,咱们或是面对面通知,或是及时讨论组通知。ios

咱们采用了什么办法决定“推迟”和“必须实现”的功能?

咱们预期想要实现的功能有好友pk,可是技术难度较高,且遵从老师建议,决定推迟实现。而咱们小程序的核心就是单词学习,因此词库的引入单词的学习是必须实现的。数据库

项目的出口条件(Exit Criteria – 什么叫“作好了”)有清晰的定义么?

  • 点击单词的时候具有语音播放功能
  • 复习统计功能要完善
  • 增长单词本中的向上按钮
  • 添加设置功能,好比能够清除缓存

对于可能的变动是否能制定应急计划?

有。还没搭建服务器的时候,将词库放在前端,服务器搭建完后,就将词库转移到后端。编程

员工是否可以有效地处理意料以外的工做请求?

能。当咱们队员出现没办法解决的问题的时候,咱们都会积极协做帮忙,尽可能作到在最短的时间内解决问题。小程序


设计/实现

设计工做在何时,由谁来完成的?是合适的时间,合适的人么?

设计工做在敏捷开发前的就作了原型设计。后期实际开发时,前端根据需求对负责的页面进行修改。由于开发人员是最后实现软件界面的,因此是比较合适的人。后端的结构设计也是由实际后端开发者设计的。后端

设计工做有没有碰到模棱两可的状况,团队是如何解决的?

最初设计时包括单词pk的模块,后来实际开发时才估计出时间不够,考虑要不要先放弃这个功能。后来团队开会讨论,最后队员一致同意先作好MVP功能,砍掉pk功能。微信小程序

团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其余工具来帮助设计和实现?这些工具备效么?

小程序java后端运用了单元测试(jnuit)来帮助设计与实现。能确保能正确获取前端数据,和提取存储的单词。缓存

什么功能产生的Bug最多,为何?在发布以后发现了什么重要的bug? 为何咱们在设计/开发的时候没有想到这些状况?

单词的读取和调用接口翻译显示功能的Bug最多。由于这块涉及的数据传递较多,小程序的接口调用比较严格,数据传递时后期发现开发时小程序在开发工具上调试成功,可是实际真机调试时数据传递跟微信开发工具显示的结果却不一致。设计/开发前没考虑到,真机调试会和微信开发工具结果不一致,手机调试结果也会跟上传体验的版本不一致,只能边作边发现问题。

代码复审(Code Review)是如何进行的,是否严格执行了代码规范?

代码复审主要是检查各行代码,添加注释,删除无关代码,好比后期未用到的方法等,增长可读性。代码规范咱们遵循了四格缩进,“{ }”字符的放置位置等都执行了代码规范。


测试/发布

团队是否有一个测试计划?

有,可是没有很规范。

  • 功能测试:邀请用户体验小程序的功能并反馈
  • 易用性测试:用户界面的直观易用性
  • 兼容性测试:在几种Android和ios版本上进行兼容性测试
  • 安装测试:邀请微信用户经过搜索或扫码形式安装体验小程序

是否进行了正式的验收测试?

是,有邀请同窗等做为用户和测试队员对软件总体的功能在发布平台上进行测试。

团队是否有测试工具来帮助测试?

有,能够利用微信开发者工具测试,后端利用junit单元测试。可是压力测试工具在linux平台安装后没法正常使用。

团队是如何测量并跟踪软件的效能的?从软件实际运行的结果来看,这些测试工做有用么?应该有哪些改进?

咱们经过邀请室友、朋友或者假扮用户来测试并跟踪软件的效能,由于是微信小程序,从受权开始,到每一个功能都体验一遍,并询问反馈或得出结论,再根据这些来继续改进完善。这些测试工做是有用的,在作以前以为可能不会有什么明显的效果,可是真的去测试后发现要改进的仍是不少,有一些仍是以前没有发现的。而咱们找到的改进有:界面不够完善/功能有所欠缺/用户操做有时有偏差

在发布的过程当中发现了哪些意外问题?

咱们团队在发布小程序时,由于是第一次操做,因此最开始会一直卡在证书方面,后面查阅了不少也问了其余已发布程序的团队。后来发布好了后,发现不能经过关键字查找小程序,可是能够经过完整的名字查找小程序。


总结

你以为团队目前的状态属于 CMM/CMMI 中的哪一个档次?

CMM/CMMI一共分为五个等级,(1)初始级(initial);(2)可重复级(Repeatable);(3)已定义级(Defined);(4)已管理级(Managed);(5)优化级(Optimizing)。
而我认为咱们团队目前状态属于第4和第5级之间。

你以为团队目前处于 萌芽/磨合/规范/创造 阶段的哪个阶段?

我认为团队目前处于规范的状态;虽然已经有了一个有了主要功能的英语单词学习小程序出来,可是还须要调和整理一下以前所作过的,把以前所作过的规范好,以方便新功能的开发。

你以为团队在这个里程碑相比前一个里程碑有什么改进?

对于团队来讲,你们的凝聚力要比前一个里程碑时强不少,自觉性、自主性、学习能力都有所提升。
对于项目来讲,改进很大,由于上一个里程碑时咱们只有形没有状,通过了ALPHA阶段后,咱们把状的架构支撑起来了,就有了一个较完整的结构体。这应该是最大的改进了。

你以为目前最须要改进的一个方面是什么?

目前最须要改进的方面应该是对于小程序的附加功能。如今咱们的小程序能够背单词,可是其余附加功能还不够完善,咱们是但愿作出一个知足大多数用户需求的微信小程序。

对照敏捷开发的原则, 你以为大家小组作得最好的是哪几个原则? 请列出具体的事例。

①主张简单:咱们作微信小程序而不是APP的目的之一就是为了用户群体能简单操做,因此咱们在架构模型的时候,就很简单的只分为三大模块,其中只有一个模块为主要功能,尽量的保持模型的简单。
②拥抱变化:主要功能不变,但是附加功能能够有所改变,因此在“个人”界面中咱们保留了几处空白为了以后进行开发,用户需求是一直持续并会改变的。
③不管团队内外,面对面交流始终是最有效的沟通方式:教师布置的任务中就有一个每日站立会议,这个会议虽然用时不长,你们都把每日任务简要陈述,可是也就这十分钟左右的会议让你们都知道了今天的主要进展会到哪一步让你们都清楚整个项目的进程。

项目管理之过后诸葛亮会议照片

成员贡献

名字 角色 团队贡献排序 可验证的贡献
曾艺佳 PM 1 主要框架支撑者
徐璐琳 PL 2 分担PM开发指定与跟踪
祁泽文 PL 3 分担PM开发指定与跟踪
王 兴 PL 4 分担PM开发指定与跟踪
吴 玲 MDE 5 项目产品模块设计者
郭琪容 MDE 6 项目产品模块设计者
相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息