团队作业第六次—团队Github实战训练

班级:软件工程1916|W
作业:团队作业第六次—团队Github实战训练
团队名称:Echo
作业目标:完成团队Github实战训练
抽奖地址:http://echo.ituoniao.net/
github地址: https://github.com/huangzhongxin/live-project

目录

团队博客汇总

队员学号 队员姓名 个人博客地址 备注
221600418 黄少勇 http://www.cnblogs.com/huangshaoyong
221600420 黄种鑫 http://www.cnblogs.com/huangzhongxin 队长
221600421 孔伟民 http://www.cnblogs.com/kwm42
221600422 李东权 http://www.cnblogs.com/Ldqblogs
221600425 林弘杰 http://www.cnblogs.com/lhj20190212

组员分工及工作量

学号 姓名 任务 贡献比例
221600418 黄少勇 抽奖算法的具体实现 21%
221600420 黄种鑫 WEB前端的实现 21%
221600421 孔伟民 过滤算法的实现 22%
221600422 李东权 数据预处理 17%
221600425 林弘杰 将文本数据进行结构化处理存为Excel,附加功能的部分实现 19%

github的提交日志截图

程序运行截图


程序运行环境

  • 编程语言
    • 前端:HTML,CSS,JavaScript
    • 后端:Java,python
  • IDE
    • IDEA
    • VSCode

GUI界面


基础功能实现

首先对文本数据进行处理,提取出一条聊天记录的日期,时间,qq号,昵称,内容这些属性,接着就是过滤算法就是首先拿到读好的数据集,其中包含发言记录,每个人的类型(老师or学生)每个人的总发言次数,根据输入的参数:[开始时间,结束时间,发言次数限制,是否过滤老师,关键词],遍历数据集,第一遍把不在指定时间内发言,没有发过抽奖关键字的以及是否过滤老师,统计出区间段内的发言次数,第二次统计出在区间内发言次数达到规定的人,从而过滤出可参加抽奖的人员名单,给后面的处理做准备;而抽奖算法就是筛选好list,生成n(n为中奖总人数)个0到list.size()-1的随机数random,找到第random挑聊天记录,记录QQ和昵称,如过中奖的两条记录的QQ号相同,则从新抽过

附加功能实现

计划用python脚本对聊天记录进行数据分析与挖掘,然后在后端调用脚本生成发言次数,发言时间段,内容云图的图片,可以在后端查看,但由于时间有限,仅实现了生成发言次数,发言时间段,内容云图的图片的脚本,并不能在后端查看,只能手动运行脚本。以下是对数据PlusA.txt和PlusB.txt处理后生成的图片

  • PlusA.txt

    • 发言时间段
    • 发言次数
    • 内容云图
  • PlusB.txt

    • 发言时间段
    • 发言次数
    • 内容云图

从PlusB.txt的内容云图,我们大概可以分析出,该群是一个卖东西的群,而且大概是一个发布二手信息的群,在群里发布信息一般会带有价格,而且可以小刀,就是讲价

遇到的困难及解决方法

  • 黄少勇
    • 抽奖如何实现公平:兼顾发送口令多的人和少的人?选择以每条抽奖记录抽奖而不是以每个QQ号为抽奖依据
  • 黄种鑫
    • 怎么实现picker的滑动?框架组件Bug,在手机上完美使用,电脑上无法正常使用,弃用picker。由于时间有限,改用input输入框实现并加以格式验证
  • 孔伟民
    • 过滤不符合人数的算法有没有更好的选择?目前没有想到更好的想法,时间有限先完成功能参数是否要有默认值?前端会传入必要的参数,不设置默认值
  • 李东权
    • 怎么读取excel表格?根据具体格式是xlsx还是xls,查阅资料,选择合适的数据类型进行处理
  • 林弘杰
    • 怎么将数据可视化?利用python提供matplotlib模块可以很方便的将数据可视化,生成折线图,柱状图,可以很直观的了解到我们要分析数据

一句话吐槽

  • 黄少勇
    • 如果再给我一天,那么我明天再做。
  • 黄种鑫
    • 如果重新来,那么这个作业我不会用这个框架。
  • 孔伟民
    • 如果再给我debug,那么我的bug只会更多。
  • 李东权
    • 如果可以划水,那么我就要划水。
  • 林弘杰
    • 如果再多给我点时间,那么我的云图会更加清晰。

PSP表格

  • 黄少勇
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 60
Estimate 估计这个任务需要多少时间 600 500
Development 开发 500 350
Analysis 需求分析 (包括学习新技术) 0 100
Design Spec 生成设计文档 0 0
Design Review 设计复审 0 0
Coding Standard 代码规范 (为目前的开发制定合适的规范) 0 0
Design 具体设计 0 0
Coding 具体编码 0 0
Code Review 代码复审 0 0
Test 测试(自我测试,修改代码,提交修改) 100 50
Reporting 报告 0 0
Test Report 测试报告 0 0
Size Measurement 计算工作量 0 0
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 0 0
合计 600 500
  • 黄种鑫
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 60
Estimate 估计这个任务需要多少时间 600 400
Development 开发 500 250
Analysis 需求分析 (包括学习新技术) 0 100
Design Spec 生成设计文档 0 0
Design Review 设计复审 0 0
Coding Standard 代码规范 (为目前的开发制定合适的规范) 0 0
Design 具体设计 0 0
Coding 具体编码 0 0
Code Review 代码复审 0 0
Test 测试(自我测试,修改代码,提交修改) 100 50
Reporting 报告 0 0
Test Report 测试报告 0 0
Size Measurement 计算工作量 0 0
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 0 0
合计 600 500
  • 孔伟民
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 60
Estimate 估计这个任务需要多少时间 600 400
Development 开发 500 300
Analysis 需求分析 (包括学习新技术) 0 50
Design Spec 生成设计文档 0 0
Design Review 设计复审 0 0
Coding Standard 代码规范 (为目前的开发制定合适的规范) 0 0
Design 具体设计 0 0
Coding 具体编码 0 0
Code Review 代码复审 0 0
Test 测试(自我测试,修改代码,提交修改) 100 50
Reporting 报告 0 0
Test Report 测试报告 0 0
Size Measurement 计算工作量 0 0
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 0 0
合计 600 500
  • 李东权
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 60
Estimate 估计这个任务需要多少时间 600 300
Development 开发 500 150
Analysis 需求分析 (包括学习新技术) 0 100
Design Spec 生成设计文档 0 0
Design Review 设计复审 0 0
Coding Standard 代码规范 (为目前的开发制定合适的规范) 0 0
Design 具体设计 0 0
Coding 具体编码 0 0
Code Review 代码复审 0 0
Test 测试(自我测试,修改代码,提交修改) 100 50
Reporting 报告 0 0
Test Report 测试报告 0 0
Size Measurement 计算工作量 0 0
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 0 0
合计 600 500
  • 林弘杰
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 60
Estimate 估计这个任务需要多少时间 600 500
Development 开发 500 350
Analysis 需求分析 (包括学习新技术) 0 100
Design Spec 生成设计文档 0 0
Design Review 设计复审 0 0
Coding Standard 代码规范 (为目前的开发制定合适的规范) 0 0
Design 具体设计 0 0
Coding 具体编码 0 0
Code Review 代码复审 0 0
Test 测试(自我测试,修改代码,提交修改) 100 50
Reporting 报告 0 0
Test Report 测试报告 0 0
Size Measurement 计算工作量 0 0
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 0 0
合计 600 500
原文地址:https://www.cnblogs.com/magicNumber/p/10752228.html