團隊做業第六次—團隊Github實戰訓練(追光的人)

所屬課程 軟件工程1916
做業要求 團隊做業第六次—團隊Github實戰訓練
團隊名稱 追光的人
做業目標 搭建一個相對公平公正的抽獎系統,根據QQ聊天記錄,完成從統計參與抽獎人員頒佈抽獎結果的基本流程。

目錄


組員職責分工前端

隊員學號 隊員博客 這次做業任務
221600219 小墨 創建github數據庫,協助修改bug;
221600240 真·大能貓 數據庫編程;
221600212 kilig GUI編程;
221600235 fishkk 算法設計;
221600236 巴啦啦魔仙 算法設計;
221600103 lc 博客編寫,輔助編程;
221600205 星夜、痕 過濾數據;

github 的提交日誌截圖git


程序運行截圖github


GUI界面算法


基礎功能實現sql


  • 實現完整GUI界面
  • 設置抽獎事件、文案、規則
  • 設置參與抽獎關鍵詞,全部發某個關鍵詞的用戶可參與,好比:#我要參與換組活動#、#我要紅包#、#我愛軟工實踐#、#我要當學習委員#
    數據庫

  • 抽獎活動文案
  • 抽獎發言時段
    編程

  • 抽獎過濾規則
    • 過濾掉平時不發言的同窗
    • 過濾掉助教和老師
  • 獎品列表
    dom

  • 獲獎名單
    學習

  • 提供不過濾、普經過濾、深度過濾等知足不一樣用戶需求的抽獎功能選項
    測試

  • 抽獎算法設計思路
    • 經過Java爬蟲處理輸入的text聊天記錄,過濾掉系統消息。將聊天記錄存入到兩張數據庫的表中,一張記錄聊天信息(index,date,name,qqNumber,key_changeGroup,key_redPackets,key_iLoveSEP),一張記錄用戶聊天頻率用於深度過濾(qqNumber,name,chatTotalRecords,normalChatRecords)。
    • 不過濾:經過sql語句
      select distinct chatrecord.qqNumber,chatrecord.name,userinfo.chatTotalRecords from chatrecord left join userinfo on chatrecord.qqNumber=userinfo.qqNumber where date between ? and ? and key_changeGroup=1;
      篩選出符合要求的用戶存入ArrayList 中;
  • 初步過濾:在不過濾的基礎上經過增長sql語句 and not (chatrecord.name like'助教%' or chatrecord.name like'教師%')
    篩選非助教,非教師的用戶

  • 深度過濾:在初步過濾的經過sql語句userinfo.normalChatRecords>10
    篩選出發送非抽獎消息次數多於10次的用戶
  • 隨機lucknumbers生成:

    • 經過Date now = new Date();

      long nowtime =now.getTime();
      獲取1970至今的毫秒數
    • 經過使用系統時間做爲隨機數種子生成隨機數
      Random r=new Random();
      int ran1=r.nextInt(1000);

      使用雙隨機的方式生成lucknumbers: int lucknum=(int) (sum%(peoplenum));

      若獎品數大於參與人數,則返回全部用戶的序列號。

遇到的困難及解決方法


  • 在讀取文件的過程當中出現亂碼的現象,通過逐一排查後發現是數據庫的編碼格式不正確,改成utf8mb4以後順利解決問題。
  • 沒有與前端溝通好,致使編寫數據庫接口時多寫了一些沒有必要的接口卻少了必要的接口;以及少了必要的字段。經過及時的溝通而後順利解決了上述問題

每位組員的貢獻比例:


隊員學號 隊員博客 貢獻佔比
221600219 小墨 11%
221600240 真·大能貓 16%
221600212 kilig 16%
221600235 fishkk 16%
221600236 巴啦啦魔仙 16%
221600103 lc 9%
221600205 星夜、痕 16%

PSP表格


小墨

PSP2.1 Personal Software Process Stages 預估耗時(分鐘) 實際耗時(分鐘)
Planning 計劃 10 20
•EStimate • 估計這個任務須要多少時間 10 20
Development 開發 160 140
• Analysis • 需求分析 (包括學習新技術) 20 20
• Design Spec • 生成設計文檔 0 0
• Design Review • 設計複審 0 0
• Coding Standard • 代碼規範 (爲目前的開發制定合適的規範) 10 30
• Design • 具體設計 20 30
• Coding • 具體編碼 60 30
• Code Review • 代碼複審 10 20
• Test • 測試(自我測試,修改代碼,提交修改) 30 10
Reporting 報告 40 30
• Test Repor • 測試報告 10 10
• Size Measurement • 計算工做量 10 10
• Postmortem & Process Improvement Plan • 過後總結, 並提出過程改進計劃 20 10
合計 210 190

真·大能貓

PSP2.1 Personal Software Process Stages 預估耗時(分鐘) 實際耗時(分鐘)
Planning 計劃 10 10
• Estimate • 估計這個任務須要多少時間 10 10
Development 開發 30 45
• Analysis • 需求分析 (包括學習新技術) 20 30
• Design Spec • 生成設計文檔 0 0
• Design Review • 設計複審 10 10
• Coding Standard • 代碼規範 (爲目前的開發制定合適的規範) 10 10
• Design • 具體設計 20 35
• Coding • 具體編碼 180 250
• Code Review • 代碼複審 60 60
• Test • 測試(自我測試,修改代碼,提交修改) 25 30
•Reporting •報告 0 0
• Test Report • 測試報告 0 0
• Size Measurement • 計算工做量 15 15
• Postmortem & Process Improvement Plan • 過後總結, 並提出過程改進計劃 5 10
合計 395 490

kilig

PSP2.1 Personal Software Process Stages 預估耗時(分鐘) 實際耗時(分鐘)
Planning 計劃
•EStimate • 估計這個任務須要多少時間 500 240
Development 開發
• Analysis • 需求分析 (包括學習新技術) 120 120
• Design Spec • 生成設計文檔 30 30
• Design Review • 設計複審
• Coding Standard • 代碼規範 (爲目前的開發制定合適的規範) 20 20
• Design • 具體設計
• Coding • 具體編碼 240 180
• Code Review • 代碼複審 30 120
• Test • 測試(自我測試,修改代碼,提交修改) 60 50
Reporting 報告
• Test Repor • 測試報告 30 30
• Size Measurement • 計算工做量 30 30
• Postmortem & Process Improvement Plan • 過後總結, 並提出過程改進計劃 30 20
合計 590 600

fishkk

PSP2.1 Personal Software Process Stages 預估耗時(分鐘) 實際耗時(分鐘)
Planning 計劃
•EStimate • 估計這個任務須要多少時間 60 80
Development 開發
• Analysis • 需求分析 (包括學習新技術) 60 60
• Design Spec • 生成設計文檔 60 40
• Design Review • 設計複審 120 110
• Coding Standard • 代碼規範 (爲目前的開發制定合適的規範) 60 50
• Design • 具體設計 120 120
• Coding • 具體編碼 120 150
• Code Review • 代碼複審 60 120
• Test • 測試(自我測試,修改代碼,提交修改) 60 50
Reporting 報告
• Test Repor • 測試報告 40 50
• Size Measurement • 計算工做量 30 20
• Postmortem & Process Improvement Plan • 過後總結, 並提出過程改進計劃 60 50
合計 790 850

巴啦啦魔仙

PSP2.1 Personal Software Process Stages 預估耗時(分鐘) 實際耗時(分鐘)
Planning 計劃
•EStimate • 估計這個任務須要多少時間 500 240
Development 開發
• Analysis • 需求分析 (包括學習新技術) 120 120
• Design Spec • 生成設計文檔 30 30
• Design Review • 設計複審
• Coding Standard • 代碼規範 (爲目前的開發制定合適的規範) 20 20
• Design • 具體設計
• Coding • 具體編碼 240 180
• Code Review • 代碼複審 30 120
• Test • 測試(自我測試,修改代碼,提交修改) 60 50
Reporting 報告
• Test Repor • 測試報告 30 30
• Size Measurement • 計算工做量 30 30
• Postmortem & Process Improvement Plan • 過後總結, 並提出過程改進計劃 30 20
合計 590 600

lc

PSP2.1 Personal Software Process Stages 預估耗時(分鐘) 實際耗時(分鐘)
Planning 計劃
•EStimate • 估計這個任務須要多少時間 100 275
Development 開發
• Analysis • 需求分析 (包括學習新技術) 20 25
• Design Spec • 生成設計文檔 40 40
• Design Review • 設計複審 10 10
• Coding Standard • 代碼規範 (爲目前的開發制定合適的規範) 30 30
• Design • 具體設計
• Coding • 具體編碼 80 80
• Code Review • 代碼複審
• Test • 測試(自我測試,修改代碼,提交修改) 20 25
Reporting 報告
• Test Repor • 測試報告
• Size Measurement • 計算工做量 10 15
• Postmortem & Process Improvement Plan • 過後總結, 並提出過程改進計劃 20 10
合計 270 275

星夜、痕

PSP2.1 Personal Software Process Stages 預估耗時(分鐘) 實際耗時(分鐘)
Planning 計劃         
•EStimate • 估計這個任務須要多少時間    240  640  
Development  開發         
• Analysis • 需求分析 (包括學習新技術)   180    240 
• Design Spec • 生成設計文檔    30   20 
• Design Review • 設計複審       
• Coding Standard • 代碼規範 (爲目前的開發制定合適的規範)    30    30
• Design • 具體設計        
• Coding • 具體編碼    240   240 
• Code Review • 代碼複審    60  120  
• Test • 測試(自我測試,修改代碼,提交修改)  60   50  
Reporting 報告        
• Test Repor • 測試報告  30    30 
• Size Measurement • 計算工做量   30    30 
• Postmortem & Process Improvement Plan • 過後總結, 並提出過程改進計劃    30  20  
    合計   630     780
相關文章
相關標籤/搜索