做业格式
超时提交的缘由:一个是分工时没有严格要求代码规范的注释,致使后期调试bug花费比较多的时间,而是部分组员知识量不足,花费了许多时间在教学使用github,还有就是心态烦躁,影响了效率,之后应该以合理的心态,去处理各类问题。python
组员分工
- 221600424
- 221600431
- 22160434
- 221600225
- 过滤算法设计与开发
- 过滤算法的测试
- 文件数据处理代码讨论
- 041602421
- 221600432
- 整合项目的测试
- 对项目进行整合处理
- 文件数据处理代码讨论
- 221600435
Github提交日志截图

程序运行截图
抽奖信息设置界面

抽奖结果展现界面

git
程序运行环境
windows 10,C#github
基础功能的实现
- 抽奖算法
算法设计思路:采用加权随机算法,每位抽奖的参与者都有必定的权重,那么权重高的参与者天然有更高的几率获奖。可是为体现公平性每位参与者最多得到一次奖。
具体实现:先从奖池中选择一件奖品,而后再计算出全部当前全部参与者的权重总和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表格
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 |
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 |
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 |
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 |
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 |
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 |
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 |