福大软工1816 · 团队现场编程实战(抽奖系统)
超时提交版本
备注:须在当前文件夹提供抽奖.txt
-
组员职责分工(5分)
GUI编写 淇、跃安
后台编写 淇、佳炜
算法探索 泓、松、杰
专业辅助(打杂) 裕翔、杰
-
github 的提交日志截图(鼓励小粒度提交)(3分)
- 程序运行截图(5分)
-
程序运行环境(方便助教进行测试。如果是web服务最好了,如果是桌面程序,建议使用GitHub的"Releases"发布程序包,参考这里,不要出现“在我这里能正常运行啊”的情况。如果助教不能运行,仅靠程序运行截图,以下得分再减50%)
Windows10(C#)
-
GUI界面(10分)
-
基础功能实现(35分)
实现完整GUI界面
设置抽奖事件、文案、规则
设置参与抽奖关键词,所有发某个关键词的用户可参与
抽奖活动文案
抽奖发言时段
抽奖过滤规则
抽奖结果公布倒计时
抽奖人数
奖品列表
获奖名单
导出抽奖结果(抽奖话题、中奖人员、对应奖项)
抽奖算法 :
抽奖当时获取系统时间取秒数,以及获取随机数,加入到计算中,通过随机分支至多种不同数学公式进行混淆从而使结果随机性与不可预测性增大,最后取余保证结果位于正确范围内。
举例如下:
Random rd = new Random();
?int d=rd.Next(0,g+1);
`(d+n*n+sec)%g`
-
附加功能实现(20分)
实时倒计时应该挺好看……的吧
-
鼓励有想法且有用的功能(10分)
想法很美好,现实很骨感。想实现通知获奖人的功能,但时间有限。
-
遇到的困难及解决方法(10分)
杰:
不会coding只能干着急,幸好队友给力,最开始我们计划后台使用cpp,前台使用c#,最后在合并过程中出现了问题,趁着大家都有空的时间以C#重写了后台,做出一个勉强能用的版本。
泓:
遇到的困难及解决方法:简单的算法实现比较简单,但是困难的比较难实现。
解决方法:上网百度,有了一些想法,可以增强算法复杂度。
松:
困难:不同种语言写的代码合并
解决方法:没解决。跃安:
代码的合并困难,使用c#开发界面是很容易但是对一些组件还是不熟悉,花了不少时间。
-
马后炮
如果再来一次重来的机会,那么我一定不会选计算机。
如果再来一次重来的机会,那么我要多学点东西装会逼。
如果还有一次重来的机会,那么我一定好好学习代码。
如果还有一次重来的机会,那么我一定好好退掉这门课。
如果还有一次重来的机会,那么我一定慎重选课。
没有如果,没有那么。
裕翔无。
-
评估每位组员的贡献比例(如果没有评估,全组平均后,组长得分减 50%)
淇 25%
跃安 15%
杰 12.5%
佳炜 12.5%
松 10%
泓 10%
裕翔 5%
-
以下部分计入个人得分:
- PSP表格(个人独立发布)(1分)
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 60 | 60 |
· Estimate | · 估计这个任务需要多少时间 | 60 | 60 |
Development | 开发 | 165 | 180 |
· Analysis | · 需求分析 (包括学习新技术) | 30 | 30 |
· Design Spec | · 生成设计文档 | 10 | 20 |
· Design Review | · 设计复审 (和同事审核设计文档) | 10 | 10 |
· Coding Standard | · 代码规范 (为目前的开发制定合适的规范) | 10 | 10 |
· Design | · 具体设计 | 20 | 25 |
· Coding | · 具体编码 | 60 | 60 |
· Code Review | · 代码复审 | 5 | 10 |
· Test | · 测试(自我测试,修改代码,提交修改) | 20 | 15 |
Reporting | 报告 | 185 | 265 |
· Test Report | · 测试报告 | 120 | 180 |
· Size Measurement | · 计算工作量 | 5 | 5 |
· Postmortem & Process Improvement Plan | · 事后总结, 并提出过程改进计划 | 60 | 80 |
合计 | 410 | 505 |
- 学习进度表(个人独立发布)(1分)
第N周 | 新增代码(行) | 累计代码(行) | 本周学习耗时(小时) | 累计学习耗时(小时) | 重要成长 |
---|---|---|---|---|---|
1 | 200 | 200 | 10 | 10 | php学习 |
2 | 100 | 300 | 15 | 25 | 学习Axure RP的基本操作 |
3 | 200 | 500 | 20 | 45 | Python爬虫的编写 |
4 | 300 | 800 | 20 | 65 | php学习 |
5 | 200 | 1000 | 10 | 75 | linux代码学习,需求分析报告学习 |
6 | 300 | 1300 | 15 | 95 | python学习和随机算法的学习 |