团队作业第六次——团队Github实战训练
作业格式
- 课程名称:软件工程1916|W(福州大学)
- 作业要求:团队作业第六次—团队Github实战训练
- 团队名称:葫芦娃队
- 作业目标:确定和分析选题,绘制评审表
- github地址:https://github.com/Baka469/live-project
| 队员学号 | 队员昵称 | 博客地址 |
|---|---|---|
| 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/ |
组员分工
- 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 |
团队作业第六次——团队Github实战训练的更多相关文章
- 团队作业第六次—团队Github实战训练
作业描述 课程 软件工程1916|W(福州大学) 团队名称 修!咻咻! 作业要求 团队作业第六次-团队Github实战训练 团队目标 搭建一个相对公平公正的抽奖系统,根据QQ聊天记录,完成从统计参与抽 ...
- 团队作业第六次—团队Github实战训练(追光的人)
所属课程 软件工程1916 作业要求 团队作业第六次-团队Github实战训练 团队名称 追光的人 作业目标 搭建一个相对公平公正的抽奖系统,根据QQ聊天记录,完成从统计参与抽奖人员颁布抽奖结果的基本 ...
- 团队作业第六次-团队Github实战训练
格式描述 课程名称:软件工程1916|W(福州大学) 作业要求:项目系统设计与数据库设计 团队名称:为了交项目干杯 GitHub地址:地址 作业目标:搭建一个相对公平公正的抽奖系统,根据QQ聊天记录, ...
- 团队Github实战训练
班级:软件工程1916|W 作业:团队Github实战训练 团队名称:SkyReach Github地址:Github地址 贡献比例表 队员学号 队员姓名 此次活动任务 贡献比例 221600106 ...
- bug终结者 团队作业第六、七周
bug终结者 团队作业第六.七周 作业要求:团队作业第六.七周 博客编辑:20162322 朱娅霖 一.修改<需求规格说明书> <需求规格说明书>2.0版(即初稿) <需 ...
- 团队作业八——第二次团队冲刺(Beta版本)第7天&项目汇总
项目汇总 第一天:http://www.cnblogs.com/newteam6/p/6879383.html 第二天:http://www.cnblogs.com/newteam6/p/688078 ...
- 团队作业八——第二次团队冲刺(Beta版本)第6天
团队作业八--第二次团队冲刺(Beta版本)第6天 一.每个人的工作 (1) 昨天已完成的工作 简单模式逻辑代码涉及与相关功能的具体实现 (2) 今天计划完成的工作 修改完善注册登录内容界面,编辑错题 ...
- 团队作业八——第二次团队冲刺(Beta版本)第5天
团队作业八--第二次团队冲刺(Beta版本)第5天 一.每个人的工作 (1) 昨天已完成的工作 完成界面跳转界面. (2) 今天计划完成的工作 简单模式逻辑代码涉及与相关功能的具体实现 (3) 工作中 ...
- 团队作业八——第二次团队冲刺(Beta版本)第4天
团队作业八--第二次团队冲刺(Beta版本)第4天 一.每个人的工作 (1) 昨天已完成的工作 做一下用户注册的功能和登录功能. (2) 今天计划完成的工作 完成界面跳转 (3) 工作中遇到的困难 界 ...
随机推荐
- linux笔记_day04
1.cat 连接并显示 -n 显示行号 -E END 显示行尾 2.tac 从后往前显示 3.ctrl +C 4.more 向后翻 到最后会退出 5.less 翻到最后不退出 常用 支持b k sp ...
- Ubuntu/Debian 8 安装 Intel realsense 摄像头驱动
## Make Ubuntu/Debian Up-to-date1. sudo apt-get update && sudo apt-get upgrade && su ...
- CEdit使用(Edit Control控件)
CEdit使用(Edit Control控件) 编辑框只读 属性 Read Only等于 True,就有了只读效果 密码框 属性 Password 等于 True,就有了密码效果 获取值/赋予值 Up ...
- R-CNN论文详解(转载)
这几天在看<Rich feature hierarchies for accurate object detection and semantic segmentation >,觉得作者的 ...
- 003_Linux的Cgroup<实例详解>
为什么要有cgroup Linux系统中经常有个需求就是希望能限制某个或者某些进程的分配资源.也就是能完成一组容器的概念,在这个容器中,有分配好的特定比例的cpu时间,IO时间,可用内存大小等.于是就 ...
- sqlyog通过跳板机ssh连接mysql数据库
方法一: 方法二: 在跳板机上启动sh脚本做ssh端口转发,客户端配置连接 10.0.0.1的8306端口即可 jdbc:mysql://10.0.0.1:8306/testdb?useUnicode ...
- Linux常用命令3(压缩和解压缩总结)
tar命令 解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName gz命令 解压1:gunzip FileName.gz 解压2:gzip ...
- STM32F412应用开发笔记之七:片上ADC的应用测试
在我们的应用项目中需要采集一些模拟量,这些量使用MCU自带的ADC就可以满足要求.在NUCLEO-F412ZG实验板上的STM32F412ZG有一个16通道的ADC,我们试验用它采集几个数据. 在NU ...
- VeeValidate配置中文的两种方法
使用VeeValidate时遇到的问题,下面是我找到的一些解决办法: VeeValidate一直报错早不到addlocale方法 解决办法:1.卸载掉当前版本,重新安装低版本如2.0.0-rc.25 ...
- 激活函数--(Sigmoid,tanh,Relu,maxout)
Question? 激活函数是什么? 激活函数有什么用? 激活函数怎么用? 激活函数有哪几种?各自特点及其使用场景? 1.激活函数 1.1激活函数是什么? 激活函数的主要作用是提供网络的非线性建模能力 ...