团队作业第六次——团队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) 工作中遇到的困难 界 ...
随机推荐
- SpringBoot集成Dubbo
(1).新建一个普通Maven项目,用于存放一些公共服务接口及公共的Bean等. 项目: 公共Bean: package cn.coreqi.entities; import java.io.Seri ...
- AutoMapper中用户自定义转换
Custom Type Converters Sometimes, you need to take complete control over the conversion of one type ...
- 【Mysql sql inject】【入门篇】SQLi-Labs使用 part 2【12-14】
这几关主要是考察POST形式的SQLi注入闭合 ## Less-12 - POST - Error Based- Double quotes- String ### 1)知识点 主要考察报错注入中的双 ...
- oracle分区分表
(1) 表空间及分区表的概念表空间: 是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中,但主要存放的是表, 所以称作表空间.分区表: 当表中的数据量不断增大,查询数据的速 ...
- SSH原理与运用:远程登录
一.什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录. 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会 ...
- .NET CORE 1.1 迁移到.NET 2.0正式版
以下操作参考官方文档 1:首先你需要升级到最新版的VS 2017 15.3 升级的地方在VS右上角有个黄色的更新提醒,如果没有请挂VPN或者重新下载一个新的. 2:第二步 和之前改.NET Frame ...
- 超级wifi
超级wifi (super wi-fi)是相对于现有的wifi提出的改进版,执行响应的 802.11af标准. 802.11af 标准是2014年2月提出的,它的主要特点是"建议在电视频率之 ...
- Ext需要的文件目录
使用ext版本信息:ext-4.1.1a <!-- 下面是引入文件需要导入的文件信息 ext-all.css ext-all.js --><link rel="styles ...
- Spark学习之Spark安装
Spark安装 spark运行环境 spark是Scala写的,运行在jvm上,运行环境为java7+ 如果使用Python的API ,需要使用Python2.6+或者Python3.4+ Spark ...
- 错误代码 1045 Access denied for user 'root'@'localhost' (using password:YES)
1 前言 现象是用MySQL 5.7 Command Line Client可以使用root账号进入,但是其它navicat,phpsqladmin,mysql workbench,heidisql用 ...