团队现场编程

  • 值得一看的补充版本演示视频
  • 程序版本连接及说明
    • 按时提交版本
      • 以基础功能为主
      • github连接:first version
      • 测试环境说明
        • 本程序在python 3.6以上环境下运行
      • 操做说明:
        • 键入抽奖关键词,支持:#我要红包#或“我要换组“或”我支持调课“
        • 键入抽奖关键词后,必须按回车向后台提交关键词
        • 选择或键入抽奖时段
        • 点击”抽奖“按钮,开始抽奖
        • 点击”中止“按钮,抽奖完成
        • 得到抽奖名单
    • 超时完善版本
      • 在基础功能基础上,完善并整合了附加功能
      • github连接:final version
      • 测试环境说明
      • 操做说明:
        • 键入抽奖关键词,支持:#我要红包#或“我要换组“或”我支持调课“
        • 键入抽奖关键词后,必须按回车向后台提交关键词
        • 选择或键入抽奖时段
        • 点击”抽奖“按钮,开始抽奖
        • 点击”中止“按钮,抽奖完成
        • 得到抽奖名单,并输出数据分析图
  • 组员职责分工
    • 后敬甲(组长):文案设计、现场协调、进度跟进
    • 葛亮:原型界面设计
    • 黄泽:GUI界面制做
    • 婧茹:附加功能设计
    • 刘浩:GUI界面制做
    • 泽明:随机算法设计+筛选算法设计
    • 文斌:附加功能设计
  • github 的提交日志截图
  • 程序运行截图
    html

  • 程序运行环境前端

    python 3.6.2python

  • GUI界面
    c++

  • 基础功能实现
    • 实现了抽奖资格的筛选,算法分为如下几回筛选:
      • 删除掉不含抽奖关键词的发言记录(包括空记录发言)
      • 删除掉包含抽奖关键词的系统发言记录
      • 删除不在抽奖时间段内的发言记录
      • 统计发言频率,删除发言次数低于必定数量的同窗的发言记录
    • 随机抽取算法
      • 首先随机从1-20之间随机生成两个数a,b
      • 定义函数变换:如a*b,a^b,e^ab。这再对这两个数a,b机型随机函数变换。重复n次,最后的值可能大于QQ号数,因此对所取到的值取余。对应文本处理中返回的set的n个下标元素(即qq号)。取过的qq号就从set中删除,避免重复。
  • 附加功能实现
    • 在提交版本中,未完成完整的附加功能;
    • 在以后完善的版本中,完成了如下数据分析功能:
      • 按时间对聊天记录进行分析,生成群聊活跃度分析图
      • 对聊天内容进行分析,随机生成群聊词汇云图
      • 结果如图:
  • 遇到的困难及解决方法
    • 后敬甲
      • 困难:在最初开始的时候,编程语言没有统一好,没有很仔细地考虑整合代码的问题,致使最后的算法没法整合,早上的工做不少都打了水漂。
      • 解决方法:是本身的问题,须要好好反思,在实践课结束之后,和你们留下来开会,冷静下来,从新定了方案。通过了半个下午+整个晚上的团队编程,有了最后的结果!你们一块儿努力的感受很棒,在此感谢各位队友!
    • 葛亮
      • 困难:原型设计在沟通上出了问题,实际使用的图片和界面的尺寸、图标位置发生了些冲突。
      • 解决方案:经过耐心地和队友沟通,修改了原型和图片的尺寸,使图片和界面相契合。
    • 黄泽
      • 困难:以前没有接触过Python Tkinter,现学现卖存在困难。
      • 解决方案:跟着教程走,刚就完事儿了!
    • 婧茹
      • 困难:以前没有接触过Python算法,对数据分析不熟悉。
      • 解决方案:不会就百度,百度不了就请教文斌小哥哥~
    • 刘浩
      • 困难:对前端的工做不够熟悉,在这次编程以前仅仅停留在初步了解的阶段,作起来不太顺手。
      • 解决方案:疯狂baidu+疯狂调试
    • 泽明
      • 困难:算法需求须要多层次划分,文本中QQ昵称和抽奖时间段限制很差作。
      • 解决方案:算法对文本进行相似于流水线处理,QQ昵称难以处理,由于时间限制,只能很遗憾地选择不处理昵称,用QQ号来代替。
    • 文斌
      • 困难:自动分享的功能,能够作到自动发送文本消息给我的QQ,但没法作到发送生成的图片给QQ群。
      • 解决方案:选择放弃了这个功能,选择新的功能:对获奖名单生成数据云图和分析群聊活跃度。
  • 团队做业贡献比git

成员 分工 贡献比
敬甲 进度协调+需求分析+博客、文案撰写 13
葛亮 界面原型设计 12
黄泽 界面制做 14
靖茹 附加功能实现 12
泽明 随机算法实现+筛选算法实现 17
文斌 附加功能实现 15
刘浩 界面制做+代码分工 17
  • PSP表格
PSP Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 40 60
•Estimate •估计这个任务须要多少时间 300 900
Development 开发 250 800
•Analysis •需求分析 (包括学习新技术) 150 200
•Design Spec •生成设计文档 30 20
•Design Review •设计复审 0 0
•Coding Standard •代码规范(为目前的开发制定合适的规范) 30 40
•Design •具体设计 20 30
•Coding •具体编码 300 700
•Code Review •代码复审 0 0
•Test •测试(自我测试,修改代码,提交修改) 30 60
Reporting 报告 0 0
•Test Repor •测试报告 0 0
•Size Measurement •计算工做量 10 20
•Postmortem & Process Improvement Plan •过后总结, 并提出过程改进计划 30 45
合计 1200
  • 学习进度条
第N周 新增代码(行) 累计代码(行) 本周学习耗时(小时) 累计学习耗时(小时) 重要成长
4 0 340 5 25 Leangoo工具学习
5 300 640 15 40 哈希算法、优先队列、结构体等c++内容复习
8 0 640 10 50 d代码方面暂无
10 0 640 5 55 Github代码管理学习、leangoo工具完善
11 100 740 10 65 主要是和团队编程,学习了些python基础
相关文章
相关标签/搜索