福大软工1816 · 团队现场编程实战(抽奖系统)

Posted sxzhangyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了福大软工1816 · 团队现场编程实战(抽奖系统)相关的知识,希望对你有一定的参考价值。

福大软工1816 · 团队现场编程实战(抽奖系统)

队员职责分工

团队成员 分工
张扬 预处理算法、抽奖算法、解决其他问题、本次博客撰写
韫月 "创建抽奖活动"页面的开发、“已发布”“已结束”等页面的动态生成
愈明 "创建抽奖活动"页面的开发、弹窗交互
文婧 "已发布"、"已结束"页面的开发
地秀 "已发布"、"已结束"页面的开发
全炯 各个页面的整合、页面切换、使用QSS进行美化
俊彦 辅助预处理算法的开发、辅助抽奖算法的设计
李翔 数据库搭建、数据库接口设计、Github合并的管理
加伟 数据库搭建、数据库接口设计
泽波 随机算法设计

github 的提交日志截图

技术分享图片

技术分享图片

技术分享图片

技术分享图片

程序运行截图

由于我们对pyqt的不熟悉,最终未能开发出可用的GUI(没整合到一起)。我们开发出了以下功能:

  • 带有权重计算的自适应抽奖算法

    技术分享图片

    技术分享图片

  • 对聊天记录的处理算法(预处理算法)

  • 抽奖活动创建页面

    技术分享图片

  • 弹窗式三页面切换功能

    技术分享图片

  • 基于中文分词技术的聊天内容分析并生成词云

    技术分享图片

  • 基于对Smart QQ抓包的实时聊天记录保存模块

    技术分享图片

  • 用于支持抽奖系统的数据库模块

    技术分享图片

  • 简单的已发布、已结束界面

    技术分享图片

    程序运行环境

    • Python 3.6
    • 依赖库PyQt5qqbotjiebawordcloud

GUI界面

  • 初始页面

    技术分享图片

  • 创建活动页面

    技术分享图片

基础功能实现

仅实现后台算法,未实现GUI部分

  • 抽奖算法

    技术分享图片

    技术分享图片

附加功能实现

  • 聊天记录分析并生成词云(对某OpenCV图像处理群聊天记录的分析结果)

    技术分享图片

  • QQ聊天记录自动爬取

    技术分享图片

    鼓励有想法且有用的功能

遇到的困难及解决方法

  • 张扬

    • 遇到的困难:团队对PyQt的不熟悉
    • 解决方法:问题一时间得不到解决,只能说大家的学习程度还不够,后面要接着学。
  • 文婧

    • 遇到的困难:遇到的最大的困难是对PyQt的不熟悉,没法用它写出自己想要的界面。
    • 解决方法:上网搜教程,问队友,但是最终还是没办法解决这个困难,没能实现自己负责的界面,非常对不起团队。
  • 韫月

    • 遇到的困难:
      1.从前端到后端的继承不熟悉
      2.组件的动态生成不熟悉
      3.总之pyqt不熟悉
      4.pycharm的.ui转.py的功能突然ERROR
    • 解决方法:
      还能怎么办,找度娘啊啊啊啊!
      疯狂找案例,疯狂搬砖,疯狂Ctrl+R试运行,疯狂传ui文件给队友再接收py文件
  • 愈明

    • 困难1:最初设计GUI界面时,对产品功能分析不够明确,导致初版界面逻辑混乱。
      解决方法:通过和队友讨论,更加明确产品功能,重新规划界面,解决了问题。
    • 困难2:对pyqt具体编程不够熟悉,导致ui界面设计进展缓慢。
      解决方法:现场学习教程,请教队友,努力加快进度。
  • 地秀

    • 用pyqt设计界面,但是pyqt不是非常熟练

    解决方法:这是非常难受的一件事情,只好一边百度一边做设计

    • UI设计的时候,.ui文件转成.py文件,要在pycharm安装插件,但是一直安装不成功

    解决方法:按照百度的方法,一步一步操作,但是不对,只好一遍一遍重复操作,最后发现是自己粗心,英文字母打错了,以后可以直接复制就直接复制吧┭┮﹏┭┮

  • 泽波

    • 遇到困难:python使用不熟悉,配置有问题
  • 全炯

    • 困难
      PyQt掌握的情况并不够好,会和能在短时间内做出来是两个概念。
      讨论和设计必不可少,但要建立在较好掌握的情况下,否则合并的时候会很痛苦
    • 解决
      知耻而后勇,奋力掌握并精通
      更加注重细节
      要学会找轮子
  • 俊彦

    • 困难:
      PyQt掌握不好
    • 解决:
      转向协助后端代码的开发
  • 李翔

    • 遇到的困难:数据库接口需要有返回值时的语句出现问题,SQL语句的传参问题
  • 加伟

马后炮

  • 俊彦:如果往前推几天,那么我会多放一些时间来进行PyQt的学习
  • 李翔:如果没有这次现场编程开发,那么我就任然菜的安详
  • 愈明:如果再给我一次机会,我一定不会选择进实验班orz
  • 文婧:如果可以回到过去,那么我一定边看教程边动手
  • 韫月:没有马后炮,一切都是自己太菜了
  • 张扬:如果可以重来,我想重新考虑一下要不要选这门课

PSP表格

个人PSP

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

学习进度表

个人学习进度条

第N周 新增代码(行) 累计代码(行) 本周学习耗时(小时) 累计学习耗时(小时) 重要成长















以上是关于福大软工1816 · 团队现场编程实战(抽奖系统)的主要内容,如果未能解决你的问题,请参考以下文章

福大软工1816 · 团队现场编程实战(抽奖系统)

福大软工1816 · 团队现场编程实战(抽奖系统)

福大软工1816 · 团队现场编程实战(抽奖系统)

福大软工1816 · 团队现场编程实战(抽奖系统)之 拖鞋旅游队

福大软工 · BETA 版冲刺前准备(团队)

[福大软工] Z班——Beta现场答辩反馈