标签:修改 版本升级 ade 访问权限 合作 基础功 失败 交互 body
目录
1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
我们软件解决的问题是:人们日常并行事项越来越多,而人的记忆是有限的,我们的记忆罐头这款
备忘录可以有效的提醒和安排日常事务,并且提供众多便捷、智能、实用的功能。
已经定义的十分清楚。(详情可参见需求分析报告)
典型用户为:学生党和工作党。(在需求分析课堂展示中已有描述。)
典型场景:佩佩和小柯的故事。(在需求分析课堂展示中已有描述。)
2.我们达到目标了么(原计划的功能做到了几个? 按照原计划交付时间交付了么?
已达到目标,原计划功能已完成6个:备忘录的基础使用、天气分析、智能提醒、App使用分析、语音输入、智能识别短信。剩下1个需在Beta版本完成:形成语音输入小浮标。
在Alpha版本规定时间完成交付。并进行Alpha版本课堂展示。
3.原计划达到的用户数量达到了么?
4.用户量, 用户对重要功能的接受程度和我们事先的预想一致么? 我们离目标更近了么?
5.有什么经验教训? 如果历史重来一遍,我们会做什么改进?
你原计划的工作是否最后都做完了? 如果有没做完的,为什么?
-在alpha版本的原计划的数据库初始化和接口的实现任务最后都完成了,剩下的是beta版本的用户登入和云端备份的实现;原计划的前端功能都已经实现,现在缺少的是页面的精修,在美观上还需要改进。
有没有发现你做了一些事后看来没必要或没多大价值的事?
-在android stdio的下载上花费了很长时间,至少有两天,出现各种问题。以及在代码整合的过程中,出现有些人代码可以运行,但是有些不能运行的情况。在软件的问题上出现很多错,但是有很费时。项目初始计划是做服务器上的数据库和接口,但是这样会导致手机在没有网络的情况之下,加载不出数据,整个软件会处于不能使用的状态,这和我们这样一个备忘录app的用户使用场景出入很大。发现问题之后决定将数据库部署在本地。还有就是接口设计的时候,其实有些功能前端可以直接实现的,不需要对应的接口,常常设计出前端不需要的接口;
是否每一项任务都有清楚定义和衡量的交付件?
-在后端部分,数据库和接口的设计我们是有在需求文档中做了详细的规划,根据软件的原型和需求,规范地设计数据库和细致地设计接口的,数据库表结构和接口需求明确之后才进行的代码实现,所以在于整个项目的开发中,任务和进度是很精确的,也提供测试样例作为参考。
是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为什么没有估计到?
-后端部分,是先根据原型和需求,数据库表结构和接口需求明确之后才进行的代码实现的,按照文档一步步实现的,期间由于对java和AndroidStudio开发的不熟悉,有时在数据库初始化和sql语句上出现问题;风险的话因为做的功能是相对简单和基础的部分,可能在安全系数和数据库版本升级的部分没有做的详尽;对于将来服务器安全部分会考虑加强安全性的途径;
在计划中有没有留下缓冲区,缓冲区有作用么?
将来的计划会做什么修改?(例如:缓冲区的定义,加班)
-计划的实施都是在大家都有空的时候,一起进行的。各自在平时有空的时候自行学习和code,也会互相分享经验,任务完成的也相对高效紧凑,没怎么需要加班;一起code的时候,一般都是任务完成到预期进度才各回各家;将来的计划,我觉得这种状态挺不错的(毕竟大家有不同的课业需要兼顾),可能会多一项在固定时间互相交流学习内容和实现思路,这样对接下来计划的实现思路会更加明确;不过在每天的任务中难免存在难度无法做完的情况,我们会选择熬夜完成项目。
我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
-对于后端能实现来说,由于第一次做,对于任务量的不熟悉,在分配任务的之后,会导致有的成员天天埋头苦干,有的则无所事事,还有就是不同成员在学习重复的知识,这样使任务的完成度参差不齐,也降低效率;如果历史重来一遍,会对任务进行详尽的分析,明确技术难点和工作量,然后进行任务分派,在提高效率上应该会有所成效;同时,我们可能会选择多增加代码规范性的了解,在页面的设计上也会稍加改进。
我们有足够的资源来完成各项任务么?
各项任务所需的时间和其他资源是如何估计的,精度如何?
测试的时间,人力和软件/硬件资源是否足够?对于那些不需要编程的资源 (美工设计/文案)是否低估难度?
你有没有感到你做的事情可以让别人来做(更有效率)?
-我觉得我做的事情,让一个心思缜密的组员都能做的不错。
有什么经验教训? 如果历史重来一遍, 我们会做什么改进?
-分配任务的时候会对任务进行详尽的分析,明确技术难点和工作量,然后进行任务分派,能够让大家都轻松高效的完成项目
每个相关的员工都及时知道了变更的消息?
我们采用了什么办法决定“推迟”和“必须实现”的功能?
项目的出口条件(Exit Criteria – 什么叫“做好了”)有清晰的定义么?
对于可能的变更是否能制定应急计划?
员工是否能够有效地处理意料之外的工作请求?
我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
原型的设计工作是卉卉做的,之后迭代是丹丹完成的。原型的设计工作在团队选题报告之后重新设计的,一方面让新队员卉卉熟悉了我们的项目,我们认为让她来做是比较合适的。(卉:界面丑其实是我的锅orz)
数据库和接口的设计是由后端部分的家灿和卉卉在选题报告之后一起讨论完成的。
设计工作有没有碰到模棱两可的情况,团队是如何解决的?
负责的原型设计的同学在群里发布了很多版本,其他组员也提了许多意见,最终确定了最终版本。
后端的设计工作在后面的代码实施阶段遇到了一些分歧,也是通过后端组内讨论解决的。
团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么?
-后端是在Androidstudio里进行的单元测试,后端同学表示Androidstudio自带的测试环境比较方便也挺好用的。
比较项目开始的 UML 文档和现在的状态有什么区别?这些区别如何产生的?是否要更新 UML 文档?
-差距还是比较大的,区别是在开发过程中发现UML文档的东西不适应项目的开发,需要改变。需要更新UML文档以适应。
什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况?
-基础功能中的备忘录展示,因为对android开发不熟悉,自定义控件的使用不熟悉,导致书写的过程出现很多问题。发布之后,语音插入之后完成时间是已过期,删除功能不完善。开发的时候因为alpha版本时间有点赶,未进行完整的测试。
代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
-无,并未严格执行代码规范。
我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
-学到了如何开发一个项目的全部流程,以及如何有效的分工。同时,每个组员对前后端的交接有了完整的理解。如果历史能重来,我们会在一开始就进行代码规范,以及代码复审,这才是软工实践的最大意义。以及合并时采用GitHub,让合并更加高效。
团队是否有一个测试计划?为什么没有?
是否进行了正式的验收测试?
团队是否有测试工具来帮助测试?
团队是如何测量并跟踪软件的效能的?从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?
在发布的过程中发现了哪些意外问题?
我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
团队的每个角色是如何确定的,是不是人尽其才?
团队成员之间有互相帮助么?
当出现项目管理、合作方面的问题时,团队成员如何解决问题?
每个成员明确公开地表示对成员帮助的感谢:
我感谢++青元++同学对我的帮助, 因为某个具体的事情: 分享前端界面和交互过程的理解,有助于接口的设计和实现。
我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?
你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?
你觉得团队在这个里程碑相比前一个里程碑有什么改进?
你觉得目前最需要改进的一个方面是什么?
对照敏捷开发的原则, 你觉得你们小组做得最好的是哪几个原则? 请列出具体的事例。
成员 | 比例 |
---|---|
绪佩 | 13% |
青元 | 13% |
宇恒 | 7% |
恺琳 | 7% |
政演 | 6.5% |
一好 | 6.5% |
丹丹 | 7% |
鸿杰 | 11% |
家伟 | 11% |
家灿 | 9% |
卉卉 | 9% |
标签:修改 版本升级 ade 访问权限 合作 基础功 失败 交互 body
原文地址:https://www.cnblogs.com/dalegac/p/10055790.html