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

作业格式

队员学号 队员昵称 博客地址
041602421 der himmel https://www.cnblogs.com/wenghaoo
221600225 wuliaoBoring https://www.cnblogs.com/wuliaoBoring/
221600424 BW.LIN https://www.cnblogs.com/lbwblog/
221600432 QZY https://www.cnblogs.com/nuomituanzi/ 组长
221600431 OFY https://www.cnblogs.com/ofy666/
221600434 北风5620 https://www.cnblogs.com/beifeng5620/
221600435 XBN https://www.cnblogs.com/xbnhhh/

超时提交的原因:一个是分工时没有严格要求代码规范的注释,导致后期调试bug花费比较多的时间,而是部分组员知识量不足,花费了许多时间在教学使用github,还有就是心态烦躁,影响了效率,以后应该以合理的心态,去处理各种问题。

组员分工

  • 221600424

    • 抽奖算法设计与开发
    • 抽奖算法的测试
    • 随笔编写
  • 221600431

    • 项目GUI界面设计
    • 随笔编写
  • 22160434

    • 项目GUI界面设计
  • 221600225

    • 过滤算法设计与开发
    • 过滤算法的测试
    • 文件数据处理代码讨论
  • 041602421

    • 文件的读取块的代码编写
    • 文件数据的处理
  • 221600432

    • 整合项目的测试
    • 对项目进行整合处理
    • 文件数据处理代码讨论
  • 221600435

    • 随笔编写
    • 文件数据处理代码讨论

Github提交日志截图


程序运行截图

抽奖信息设置界面



抽奖结果展示界面


程序运行环境

windows 10,C#


基础功能的实现

  • 抽奖算法
    算法设计思路:采用加权随机算法,每位抽奖的参与者都有一定的权重,那么权重高的参与者自然有更高的概率获奖。但是为体现公平性每位参与者最多获得一次奖。
    具体实现:先从奖池中选择一件奖品,然后再计算出所有当前所有参与者的权重总和sum,然后在1到sum之间随机选择一个数R,之后遍历整个集合,统计遍历的项的权重之和,如果大于等于R,就停止遍历,选择遇到的项,选择此项为获奖者。获奖者获奖后,奖品从奖池去除或减少(一种奖品可能不止一个),获奖者也放弃继续抽奖的资格。

附加功能的实现

  • 数据挖掘
    使用python编写脚本,结合matplotlib、PIL、seaborn等python库,对qq聊天记录进行分析,从年月日的角度把统计得到的数据进行可视化,生成发言统计图如下:



    对统计过程中的热词进行了整理,生成热词云图:

遇到的困难及解决方法

  • 041602421

    • 困难:在数据处理时想要用正则表达式来进行匹配编写,但是对正则表达式不熟悉导致调试很久
    • 解决方法 :通过百度以及与组员一起讨论,最后通过正则表达式进行正确的匹配。
  • 221600225

    • 困难:在进行过滤算法的编写过程中,对C#的语法不够熟练。
    • 解决方法 :在看书和百度还有同学的讨论下最后慢慢熟练编写起来。
  • 221600424

    • 困难:对github的使用不太熟练,在实训过程中有时pull、push、同步远程仓库时出错
    • 解决方法 :熟能生巧,多用几次后对github的使用有了更加深刻的理解
  • 221600431

    • 困难:对C#窗体程序的不熟悉,导致写GUI时不好对textbox等控件的输入进行错误检测
    • 解决方法 :百度和与同学讨论
  • 221600432

    • 困难:时间紧张,没有要求并严格执行好代码规范,函数接口规范,导致调bug花了许多时间,自己分工也不够合理
    • 解决方法 :下次要改进分工安排,提前写好规范要求文档。
  • 221600434

    • 困难:对VS2017连接配置GITHUB不熟悉。
    • 解决方法 :现学现用,孰能生巧,后面查阅博客解决了
  • 221600435

    • 困难:在与组员讨论数据处理时对正则表达式不够熟悉。
    • 解决方法 :通过百度以及讨论最后得出正确的式子。
  • 马后炮

    • 没有如果,没有那么。
    • 如果再来一次重来的机会,那么我要多学点东西装会逼。
    • 如果还有一次重来的机会,那么我一定好好学习代码。
    • 如果时间利用更高效的话,整合对接功能就不会那么仓促了。

  • 组员工作贡献比例:
学号 姓名 此次作业任务 贡献比例
221600432 邱志勇 整合项目的测试、对项目进行整合处理、文件数据处理代码讨论 0.14
041602421 翁昊 文件的读取块的代码编写、文件数据的处理 0.13
221600225 林鹏飞 过滤算法设计与开发、过滤算法的测试文件、数据处理代码讨论 0.15
221600424 林滨伟 抽奖算法设计与开发、抽奖算法的测试、附加功能的设计与实现 0.20
221600431 欧福源 项目GUI界面设计、随笔编写 0.13
221600434 吴何 项目GUI界面设计 0.13
221600435 徐炳南 随笔编写、文件数据处理代码,测试代码 0.12


PSP表格

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

  • 221600225 林鹏飞
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划
- Estimate 估计这个任务需要多少时间 360 280
Development 开发
- Analysis 需求分析 (包括学习新技术) 50 40
- Design Spec 生成设计文档 25 15
- Design Review 设计复审 20 15
- Coding Standard 代码规范 (为目前的开发制定合适的规范) 35 20
- Design 具体设计 15 10
- Coding 具体编码 90 80
- Code Review 代码复审 20 15
- Test 测试(自我测试,修改代码,提交修改) 55 45
Reporting 报告
- Test Report 测试报告 20 15
- Size Measurement 计算工作量 10 5
- Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 15 15
合计 355 275

  • 221600424 林滨伟
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划
- Estimate 估计这个任务需要多少时间 365 285
Development 开发
- Analysis 需求分析 (包括学习新技术) 55 40
- Design Spec 生成设计文档 20 15
- Design Review 设计复审 25 20
- Coding Standard 代码规范 (为目前的开发制定合适的规范) 40 25
- Design 具体设计 15 10
- Coding 具体编码 95 80
- Code Review 代码复审 15 15
- Test 测试(自我测试,修改代码,提交修改) 60 50
Reporting 报告
- Test Report 测试报告 25 15
- Size Measurement 计算工作量 5 5
- Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 10 10
合计 365 285

  • 221600431 欧福源
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划
- Estimate 估计这个任务需要多少时间 325 260
Development 开发
- Analysis 需求分析 (包括学习新技术) 40 30
- Design Spec 生成设计文档 20 20
- Design Review 设计复审 15 10
- Coding Standard 代码规范 (为目前的开发制定合适的规范) 35 30
- Design 具体设计 20 15
- Coding 具体编码 100 85
- Code Review 代码复审 20 15
- Test 测试(自我测试,修改代码,提交修改) 40 25
Reporting 报告
- Test Report 测试报告 20 15
- Size Measurement 计算工作量 5 5
- Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 10 10
合计 325 260

  • 221600432 邱志勇
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划
- Estimate 估计这个任务需要多少时间 345 260
Development 开发
- Analysis 需求分析 (包括学习新技术) 50 40
- Design Spec 生成设计文档 30 20
- Design Review 设计复审 20 10
- Coding Standard 代码规范 (为目前的开发制定合适的规范) 45 30
- Design 具体设计 25 15
- Coding 具体编码 80 75
- Code Review 代码复审 25 15
- Test 测试(自我测试,修改代码,提交修改) 35 25
Reporting 报告
- Test Report 测试报告 20 15
- Size Measurement 计算工作量 5 5
- Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 10 10
合计 345 260

  • 221600434 吴何
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划
- Estimate 估计这个任务需要多少时间 325 280
Development 开发
- Analysis 需求分析 (包括学习新技术) 35 40
- Design Spec 生成设计文档 20 20
- Design Review 设计复审 30 15
- Coding Standard 代码规范 (为目前的开发制定合适的规范) 40 35
- Design 具体设计 25 15
- Coding 具体编码 90 80
- Code Review 代码复审 30 20
- Test 测试(自我测试,修改代码,提交修改) 25 25
Reporting 报告
- Test Report 测试报告 15 15
- Size Measurement 计算工作量 5 5
- Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 10 10
合计 325 280

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

原文地址:https://www.cnblogs.com/beifengtuanzi/p/10752067.html