• 【软工实践】团队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的调用,积累了团队现场编程的经验
  • 相关阅读:
    jquery实现奇偶行赋值不同css值
    Android短信批量插入速度优化的思考与尝试
    Android短信列表的时间显示
    短信优先级及有效期
    模拟器收短信和接电话的方法
    Android:Perferences的使用
    留个脚印
    Android电池电量更新 BatteryService(转)
    Android号码匹配位数修改
    CDMA SMS pdu解码
  • 原文地址:https://www.cnblogs.com/azeLibertas/p/11784382.html
Copyright © 2020-2023  润新知