Alpha- 事后诸葛亮(麻瓜制造者)
目录
预期计划
在Alpha阶段开始之前,我们的预期计划是:从用户登录,发布商品、发布求购信息的基本功能开始做起。用户登录使用输入教务处的账号密码登录。基本界面包括个人界面,商品界面、福大图书馆界面,求购信息界面,商品还包括了搜素查询,分类查询等功能。
现实进展
现Alpha阶段本团队已经将UI基本固定,在Beta阶段大概率不会考虑项目重构,但是会对必要的UI进行修改。目前已实现的功能主要包括商品和求购信息发布浏览、即时聊天和个人信息查看与修改,并且每个功能模块均存在不同程度的Bug。存在还没有实现的必要功能:商品下架,图书馆版块的实际功能,以及对上架商品和收藏商品的管理,搜索功能等。
- 用户模块:
功能 | 进展 |
---|---|
使用教务处账号密码登录 | √ |
修改昵称 | √ |
修改头像 | √ |
修改联系方式 | √ |
- 商品模块:
功能 | 进展 |
---|---|
发布 | √ |
下架 | × |
收藏 | × |
取消收藏 | × |
查看所有商品 | √ |
分类查询 | √ |
关键字查询 | × |
- 图书馆模块:
功能 | 进展 |
---|---|
捐赠 | √ |
租借 | × |
漂流 | (这是新增功能) |
查看所有图书 | √ |
- 求购信息模块:
功能 | 进展 |
---|---|
发布 | √ |
删除 | × |
查看所有求购信息 | √ |
- 聊天模块
功能 | 进展 |
---|---|
点击头像进行聊天 | √ |
团队体会
江郑:
为期一个月的alpha阶段的冲刺阶段算是告一段落了,这两天小组内部开会也对alpha阶段进行了一定程度的总结,有一些缺点例如:
- git使用没有很合理
- 前端和后端组进度没有很契合等
也有一些优点总结例如:
- 基本上每次开会大家都能到场
- 分工明确,内部比较团结,没有大的矛盾
作为一名组员在本次的alpha冲刺阶段完成的任务主要是后端对交易平台需求模块数据库进行编码,完成接口的设计和文档的编写。在这个过程中感觉自己其实有挺多收获的,对于一个项目的开发有了一个大致的了解,对于整个开发的规范化也有了更深的体会,对于团队中出现的一些问题也会想办法去解决,也非常有意义。对自己的成长和学习都有很大帮助,软工在时间的投入上确实挺多的,也能学到其他理论课学不到的东西,有了不一样的感悟。希望在beta阶段团队能更有凝聚力,完成一个质量可靠、可行度较高的系统平台,自己也有较大的收获和成长。
刘双玉
一开始对团队还是有一些抵触,因为是临时凑的一个团队,彼此之间都不怎么熟悉,在团队展示与选题报告时候,任务开始的很晚,时间仓促,最后完成的也不是很好,我就有些失落,对自己小组更没有信心了。就这样到了Alpha编码阶段,大家一开始就约定,冲刺阶段,每周除了周四都要集体编码,最后执行结果还不错,每次最少也有五个人到场。中间经历了一次同学录的小测,我们最后做出了成品。也是小测让我意识到,自己也存在很大问题,不能只怪团队怎么样。摆正心态以后,觉得我们团队还是蛮不错的,尤其是后台三人组,我跟他们相处比较多,看另外两个队友互怼是软工最欢乐的事情了。但是还是有问题存在,像任务分配,我就是很没谱,本来计划写商品发布,然后要集体练习git,再回来写,又发现CI框架忘光了,好,复习框架去,再回来发现建表又有点小问题,又去修改表,自己本来就比较磨叽,没人催,截止日期又还很久远,就一直磨叽。还有沟通交流,在Alpha阶段截止前,我与前端,就只讨论过文件与标签怎么传递的问题,再无交流。
最难忘当然是验收前一天,图书馆接口我前两天夜晚才写完,前一天组长才用,然后就有问题了,在图书是免费租借一段时间还是永久捐赠上面产生了分歧。到那天夜晚11点多,登录又出现bug,我之前商品的接口也有一点小问题,然后图书馆与求购信息是新做出来的功能,也没有GIF,所以大半夜我们组就比较热闹,最终版本的apk,好像三点多发出来,四点多我们在群里面讨论第二天睡迟到怎么办。
最后说一下对我们产品福大易宝的评价,没有什么亮点的功能,算是中规中矩,可能实用性也不是很强,但是,在我心里它是最好的,我还觉得在福大是很有市场的。
不知道那一组给我们的评论:二手市场的安全性不足,对用户影响较大,不敢用。但是作为福大自己的二手市场如果推出我还是很乐意用的。感天动地,谢谢捧场。
符天愉
整个alpha阶段,感觉自己真的现学现用了好多东西。比如说:
- 搭建Linux环境 (之前搭过,但是配置ci+nginx真的花了我一方功夫。(Linux的系统,真的头疼,经常会出现一些不可预知的错误)
- 使用PHP的爬虫(爬虫要学习的知识真多啊,不仅是正则表达式的处理,curl的使用,还有htp的协议分析)
- 使用jwt来实现服务端与安卓端的通信
其实很多东西我是知道要怎么做,但是自己就是没有去切实的实践过,这次alpha阶段切切实实的应用起来了。在团队整个编码过程也学会去与队友更好的沟通和协作了
以前觉得很难的东西,解决了之后,发现也没有那么难。
邓弘立
本人主要负责Android开发,在开发过程中虽然没有遇到太大的难点,但是项目仍然有许多bug,比如UI的刷新和未知原因的闪退。第一次多人合作写项目,我认为自己的实力很重要,但团队良好的沟通和默契的协作更加重要。感觉自己的实践能力有待提高,希望在Beta阶段能有更好的发挥。
汪志彬
软工Alpha阶段只有短短10几天,很快就过去了。我在这10几天里,学到了很多东西:Java面向对象,一些工具的使用,Android基础。自己基础比较不好,没能跟上进度团队成员的进度,他们都有的已经掌握了Android开发,有的掌握后台开发,而我自己只会一些很基础的东西,自己需要加快学习的步伐,同时不懂的地方需要多向身边的人学习。尽管进度有些慢,但是通过这门课还是学到了很多知识,特别是让我渐渐对计算机有了更深的认识和兴趣。
杜宏庆
Alpha阶段开始之前我从负责网页前端调到负责安卓端,开始学习安卓,所以时间很赶。刚开始尝试编写一些简单的UI界面,但是毕竟是初学者,界面比较丑陋,没有被采纳。后来为了跟上团队进度,开始学习网络请求,但是遇到很多问题,所以基本上都是其他成员在做,我在学习和请教。虽然对团队贡献不大,但是从小组其他成员那里学到了很多东西,收获不小。最大的体会就是在各位大神中间感觉自己好菜,自己会的一些东西其实他们早就会了,上学期数据库实践做出来的一个作品自以为很不错,但是跟我们团队做的比起来真是小巫见大巫。所以要不断学习、追赶他们的脚步。
肖小强
- 第一次写类似通讯的app,写的过程中也是碰到一些小坑,写的过程也是尽量在模仿qq这样的ui布局,才发现其实用的那么多的qq,其他在ui上也是有很多门道的,像是虚拟软键盘的升起和落下,就是平时不知道的知识。
- 其次就是本来在自己的github上面开了一个自己的库myim,打算全部写完后,看看用什么方法直接应用过来,结果在之前一直用虚拟机测试都正常,到了真机就老是崩溃。然后只能二次开发,重新在团队的项目上写,浪费了一些时间。
- 自己使用第三方的api,没有充分看过文档和测试,也是在使用过程中走了一些弯路,像是文档里面写明了api其他包含了消息的封装了,我结果自己去重新定义了一下,重复了工作。然后api好像也有些bug,因为自己写的库没有全部写完,为了赶进度直接选择在团队>app上开发,到最后在发现好像有bug,而不是在直接就测试出来,临时查bug也是花了不少时间。
- 之后的任务大概就是:重构代码,完善ui,添加发送图片的功能,稳定功能,解决2个后台同步的问题和重写自己的myim吧
李佳铭
经过了Alpha冲刺,可以说是相当的累了。但是累的同时,也收获了许多知识。从刚开始阅读与Android相关的代码时的一头雾水,到后面通过实践,慢慢开始看得懂代码,也可以写一些较为简单的业务逻辑。多亏了组里两位有安卓经验的同学的不厌其烦的帮助。对于Alpha版本,我的积极性还是挺高的,每次集体编码都有到,然后校运会回家的计划也因此泡汤了。然后,Beta阶段继续加油,继续保持积极性,为团队尽可能做出贡献。
成员分工及工作量比例
分工鱼骨图
工作量比例
成员 | 比例 |
---|---|
李佳铭 | 12% |
杜宏庆 | 7% |
肖小强 | 14% |
汪志彬 | 7% |
江郑 | 14% |
刘双玉 | 14% |
符天愉 | 15% |
邓弘立 | 17% |
会议总结
在昨天(11.27)小组进行了一个小时多的事后诸葛亮会议。
会议的主要内容有:
- alpha阶段小组存在的问题
- 针对存在问题的解决办法
- alpha版本产品存在的问题
下面是会议总结。
存在的问题 & 相应的解决办法
问题1: github使用
严重性:⭐⭐⭐⭐⭐
团队没有很好的把git用起来。并且git分支较乱。
感谢助教的建议:
麻瓜制造者每个分支的commit数都不超过20,基本都是5-10左右,项目发布时未把代码签入到master分支。Github的使用有问题,开了若干个分支做不同feature的开发,既然开了这么多分支就不要Fork了,然而还是Fork了一把...可能导致最后master分支代码目测很难合并。
建议:要不就是每个成员在一个独立的分支上开发,然后发PR到dev分支;要不就是每个成员Fork一下项目,然后直接在dev分支上做改动,再发PR到主项目的dev分支
解决办法:
在beta阶段我们打算将安卓组和后台组单独建立两个仓库,同时直接采用两个分支master/dev开发,并且要求团队人人对项目进展进行git。
问题2: 博客作业
严重性:⭐⭐⭐⭐⭐
将团队的博客交给了不同的人来写,导致分工比较乱,很多需要完成的博客内容都只是简单的实现甚至没有去完成,我们在第1篇冲刺博客中没有很好的完成博客要求的内容,下面的11篇博客也是仿照着第1篇博客来写,导致了我们冲刺博客分数较低。
解决办法:
我们打算在可以将博客交由专门的一个人负责。
问题3 :团队的进度把控
严重性:⭐⭐⭐⭐
安卓组:真正只有两人有过相关经验。其中1人专门负责了app即时聊天的实现,剩下的只有1人(组长)负责app的其他功能实现,而没有相关经验的队友,没有办法在短时间内有输出(还是有部分输出的),因此安卓端进度缓慢。
后台组:三人分别负责了用户/商品/求购三个模块,分工明确,进度早于安卓组。
从而导致了问题:后台在alpha阶段写的接口还有部分没有使用上。
解决办法:
在alpha阶段我们一开始并没有精确的将具体的任务细化,在beta阶段我们打算在一开始就列出来要完成的功能,然后每个人自己认领任务,给出一份beta阶段任务表,每天完成什么。(不懂具体实施起来会不会不实际,但是任务一定要细化,而且在大家面前公开),这样具体的贡献值也比较好评判。
问题4:团队沟通
严重性:⭐⭐⭐⭐
安卓组和后台组的沟通存在问题,对app实现的功能理解不统一,直接导致接口改了又改,造成工作浪费。实现接口时就凭着自己的想法来,缺少必要的沟通。
解决办法:
在编码之前尽量做好沟通,有问题直接提出来,不要等编码实现了之后再来沟通。针对app在后期需要改进/更新的功能,我们还需要进一步再详细计划。
产品问题 & 相应的解决办法
看了各组给我们的意见,有几点想要回复下(可能我们是第一组)
希望能留下卖家的联系方式而不是在APP上直接联系,APP上联系及时性不高。
其实我们的app有留下联系方式的并且直接展示出来了。但是在beta版本我们想要由用户选择是否公开自己的联系方式。
基本功能有,但是有些功能考虑不周全,比如聊天不能输入中文。
其实答辩那天我们想表达的不是聊天不能输入中文,而是模拟器没有自带中文输入法,实际上我们的即时聊天功能是可以做到聊天输入中文的。
可以采用用户实名认证,避免出现纠纷,借书不还等等问题
我们有考虑到这个问题,并且alpha阶段使用教务处登录就是为了解决这个问题。
问题1:UI设计
严重性:⭐⭐⭐⭐⭐
这个问题不仅是在周日答辩中其他小组给我们的意见,整个团队也表示我们的UI还需要进一步改改改改改改改改改改改改改改进。
解决办法:
一个没有专业UI的团队,只能靠每个人一起讨论了。我们打算在完成界面这块,编码人员每完成一个界面,就需要将其发给大家一起讨论,每个人再提出自己的意见并且进行修改。
问题2:功能问题
严重性:⭐⭐⭐⭐⭐
产品的功能比较单一,没有比较突出性的功能
解决办法:
我们打算在图书馆板块加个图书漂流的功能,具体说明等beta阶段。
此外还有登录问题(教务处加了输入验证码验证))/部分模块还有一些功能没有实现(包括搜索功能)/app存在的一些bug等问题,这里就不具体细化了。
最后,虽然团队中还是存在着许多问题,但是团队还是非常团结的,比如我们会一起编码,会一起学习,会一起完成作业,还会在alpha展示前一天晚上一起熬夜到凌晨改bug。