【软工实践】团队Git现场编程实战

组长博客链接

博客链接

组员职责分工

队员 职责分工
恩泽 进行任务的划分与安排,调用API,负责餐饮商铺及商圈信息的获取
金海 解析API返回的json数据,提取有关信息
君曦 部分算法编写
季城 协助编写API的查询并按评分排序
银山 寻找api查找最热商圈
雅芳 前端和数据可视化with钰蕙,主要是ui和可视化图象
钰蕙 Android前端
秋琴 爬取数据,数据可视化的实现
雅辉 博客
婉怡

github 的提交日志截图


使用超时提交的v2.0版本。

改进情况:

  • 修复运行中断的bug,美化界面UI,实现数据可视化展示。

反思:

  • 本次团队现场编程的时间很短,而我们最开始定的实现内容太过复杂,导致编程过程中不断地简化最终要实现的功能,在讨论协商的过程中浪费了太多的时间。
  • 对接口的规范化不够严格,多人协同开发时,能够让队友轻松地调用自己的接口尤为重要。本次编程中多次出现了接口设计不规范,导致其他人调用过程中浪费太多时间去理解和改进。

程序运行截图

商圈检索程序

餐饮店铺检索程序

程序运行环境

eclipse、AS、IDEA

GUI界面

基础功能实现

福州最受欢迎的商圈(参考人气)

人均消费50以下的最佳(性价比最高)的前五家美食餐厅(参考评价与价格)

人均消费50-100的最佳(性价比最高)的前五家美食餐厅(参考评价与价格)

人均消费100-150以下的最佳(性价比最高)的前五家美食餐厅(参考评价与价格)

人均消费200以上的最佳(性价比最高)的前五家美食餐厅(参考评价与价格)

福州最佳美食聚集地

福州服饰类综合评分最高的商圈

鼓励有想法且有用的功能

想要实现

  • 点击商铺即可调出地图展示位置信息
  • 实现自动规划路线功能
  • 在地图中可视化的展示商圈的热度,例如高德地图中展示景点的热力图

遇到的困难及解决方法

恩泽

  • 困难:

    • 第一次团队现场编程,对成员任务的划分不够清晰,导致很多队员并不明确自己的工作,这个锅要背
    • 虽然提前搞好了API的调用,但是面对不同的需求时如何合理地传回数据,尽可能减少他人的工作量,速度不够快,完成的不够到位
    • 通宵押题导致思维不在状态,精神不够专注
  • 解决办法:

    • 队员不断反馈自己的任务进度情况,根据完成的方向是否符合项目要求对任务分工进行微调
    • 与其他队员沟通,确认需要的数据格式,尽可能快的完成数据的传送
    • 保持交流,防止入睡

金海

  • 困难:

    • 对json解析时由于没有做异常处理,程序有时会出错,无法得到json对象的数据内容
  • 解决办法:

    • 添加判断语句进行异常处理

君曦

  • 困难:

    • 将得到的json格式和类对象的序列化和反序列化
    • “性价比”这个问题如何评判即如何判定
  • 解决办法:

    • 通过百度,看博客以及小组成员的讨论,最终也算是解决了这个问题吧
    • 因为是分区间的,所以就直接将价格/评分,这样当这个值越小,则说明性价比越高

季城

  • 困难:

    • 尝试了美团点评、京东云、宙斯、支付宝等很多API的调用,但是在实施过程中发现要么要注册公司要么要入驻审核,三个小时以内不要说可以连上API了,审核都通过不了,唯一免费的百度地图API没有提供评分和排序。
    • 也很想插手多做点事情,但我发现之前落下太多了,已经跟不上团队了,惭愧。
  • 解决办法:

    • 通过借材料进行学习和了解,上网搜索
    • 和团队成员沟通
    • 调用百度地图的API,队友自己设计评分和排序的算

银山

  • 困难:

    • 找不到相应的api能直接返回热门商圈数据
  • 解决办法:

    • 好像并没有解决,大多api都需要应用验证,基本都掉用不了。使用基本的爬虫又会遭到美团的反爬。最后只能暴力搜索百度地图数据

雅芳

  • 困难:

    • 不会python爬虫,和秋琴学姐尝试了GitHub开源码,出现了一大堆问题
    • 数据可视化选用了echarts插件,但是那个代码是js的,搞不太懂
  • 解决办法:

    • 百度,美团和大众点评都试了一下,好不容易有个没有报错的代码输出为空。为。空。○| ̄|_ 还好组里双线程并进,其他人用百度api解决了一些问题
    • 大概看了一下js的语法,后来钰蕙说那个代码可以转成java的看

钰蕙

  • 困难:

    • 数据可视化的实现
    • eclipse代码导入Android Studio时代码不适配,大量报红
  • 解决办法:

    • 导入百度Echarts框架,数据可视化图表类型贼多,(虽然来不及接数据155551
    • 用了最傻的办法就是直接在Android Studio上改,注释掉了挺多原代码,在as上重新解析json等等,但是这就导致最后来不及改完,没有可以直接展示的成果,下次前后端合作的时候应该先协调好,才不会浪费了很多不该浪费的时间和精力

秋琴

  • 困难:

    • 爬虫的时候报错数据爬取不下来。
    • 可视化的时候横纵轴的坐标单位不知道怎么添加
  • 解决办法:

    • 之前学过爬虫是很基础的,没有很好的掌握导致了爬虫写的很慢,查看网页源码来判断为什么爬取不下来。最后发现美团的店铺信息所在的网站不支持把数据爬取下来(网页链接没有规律,只是一个数字序列)
    • 作图的时候就只有横纵坐标的数值,并没有单位和说明,可爱的雅芳学姐真是棒,两三下就找到了解决方法,真的是太可爱了!

雅辉

  • 困难:

    • 我的困难很单一:我啥都不会
  • 解决办法:

    • 帮组里各位学长学姐整理博客,没有软件能力支持就提供硬件支持

马后炮

由于本次现场编程开发进度低于预期,给每位同学一个一句话吐槽机会……

恩泽:如果昨天没有通宵押题,那么今天就会精神很多

金海: 如果能够调用口碑的API,难么问题就会更好解决

君曦:如果一开始能够冷静下来,大家一起分析清楚的话,那么可能就不会一次次地改需求了。

季城:如果题量可以减少并且更加合理,那么这次的编程体验感也不会那么差。

银山:如果再给我一点时间,那么我还是做不出来。

雅芳:如果美团和大众点评大方一点,那爬虫就不会那么困难了。

钰蕙:如果先用gson帮助算法转json数据,那么我们就能按时做出来!

秋琴:如果美团点评能够让我们爬虫的话,那么我们就不会步履维艰了。

雅辉:如果我不那么菜,那么我就可以多做点事了。

评估每位组员的贡献比例

姓名 任务工作量(60) 个人参与度(10) 完成及时性(10) Leader评分(20) 得分(100) 贡献比例(%)
恩泽 54 10 10 18 92 11.4
秋琴 56 10 10 19 95 11.8
雅芳 54 10 10 18 92 11.4
钰蕙 56 10 10 20 96 11.9
银山 45 6 10 15 76 9.4
季城 45 8 10 15 78 9.7
君曦 52 10 10 18 90 11.2
金海 52 10 10 18 90 11.2
雅辉 50 10 10 18 88 10.9
婉怡 5 0 0 5 10 1.2

PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 30 25
· Estimate · 估计这个任务需要多少时间 30 25
Development 开发 540 885
· Analysis · 需求分析 (包括学习新技术) 100 200
· Design Spec · 生成设计文档 60 120
· Design Review · 设计复审 40 45
· Coding Standard · 代码规范 (为目前的开发制定合适的规范) 20 20
· Design · 具体设计 190 250
· Coding · 具体编码 100 200
· Code Review · 代码复审 10 20
· Test · 测试(自我测试,修改代码,提交修改) 20 30
Reporting 报告 110 105
· Test Repor · 测试报告 10 10
· Size Measurement · 计算工作量 40 50
· Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 60 45
合计 680 1015

学习进度表

第N周 新增代码(行) 累计代码(行) 本周学习耗时(小时) 累计学习耗时(小时) 重要成长
1 103 103 14 14 学会了十三水的玩法,对原型设计有了一定的基础
2 400 503 10 24 学习C# winform开发,完善具体设计思路
3 1313 1816 30 54 实现核心算法“自动分牌”
4 1153 2969 22 76 界面设计与代码实现,完成各窗体与接口的实现
5 0 2969 15 91 详细了解商业计划书以及产品介绍视频的制作
6 0 2969 20 111 学习了UML类图的绘制,了解需求规格说明书的书写
7 200 3169 13 124 学习了百度地图、高德地图、口碑API的调用,积累了团队现场编程的经验
posted @ 2019-11-02 21:50  阿泽Libertas  阅读(301)  评论(8编辑  收藏  举报