組長博客連接html
本次做業博客連接前端
咱們的軟件要解決什麼問題?是否認義得很清楚?是否對典型用戶和典型場景有清晰的描述?python
咱們達到目標了麼(原計劃的功能作到了幾個? 按照原計劃交付時間交付了麼? 原計劃達到的用戶數量達到了麼?)?c++
用戶量, 用戶對重要功能的接受程度和咱們事先的預想一致麼? 咱們離目標更近了麼?git
有什麼經驗教訓? 若是歷史重來一遍, 咱們會作什麼改進?web
是否有充足的時間來作計劃?算法
學期初即公佈了本學期項目的安排,所以咱們團隊有充足的時間對Alpha衝刺任務作出了計劃和安排。sql
團隊在計劃階段是如何解決同事們對於計劃的不一樣意見的?數據庫
咱們團隊的民主氛圍比較濃厚,咱們團隊會一塊兒討論你們提出的不一樣意見。編程
你原計劃的工做是否最後都作完了? 若是有沒作完的,爲何?
是否每一項任務都有清楚定義和衡量的交付件?
在真正開始項目以前,咱們對項目進行過程當中將會遇到的各項任務不可以作到徹底的估計和衡量,隨着項目的推動,咱們對於各項任務的認識愈發得清晰了起來,基本上對每一項的任務都作出了清楚的定義並制定了衡量的交付件。
是否項目的整個過程都按照計劃進行,項目出了什麼意外?有什麼風險是當時沒有估計到的,爲何沒有估計到?
項目的總體進展大體按照着計劃進行,咱們對前端開發工具PyQt的低估是咱們項目進行過程當中出現的最大意外。PyQt的學習難度,好比設計難度高、學習資料少是咱們沒有估計到的風險,沒有估計到的一部分緣由在於學習時間短,實踐經驗少;另外一部分緣由在於真正進行項目的開發以前沒有對它進行充分的瞭解。
在計劃中有沒有留下緩衝區,緩衝區有做用麼?
咱們在計劃上預留下了兩至三天的時間緩衝區,這個預留的緩衝區對咱們項目的最終完成起了很大的做用。
未來的計劃會作什麼修改?(例如:緩衝區的定義,加班)
未來的計劃中將會留下更多的緩衝區用以解決發生在乎料以外的狀況,以及更好地完善產品;進一步改善任務的分工安排,優化團隊間的合做, 提升團隊的工做效率,避免沒必要要的「加班」。
咱們學到了什麼? 若是歷史重來一遍, 咱們會作什麼改進?
在本次團隊衝刺中, 咱們團隊合力完成了Alpha版本的發佈,在這一過程當中咱們初次經歷了團隊的共同開發,認識到了計劃對整個項目方向和進度的重要性。若是歷史重來一遍,咱們會事先作好更加完善的計劃,並在項目進行中根據實際狀況及時對計劃作出修正。
咱們有足夠的資源來完成各項任務麼?
在經歷了初期的需求報告調研以及項目展現後,咱們組通過總結認爲有如下幾大塊的任務:
發現問題(需求或痛點)並將其表述清楚,並轉化爲規範的文檔
經過討論溝通等模式來對發現的問題進行解構、分析
基於分析給出可行的方案和思路,並聚合成各個功能
將各個功能細化,造成包括但不限於原型、UML等形式的文檔供開發使用
對項目的開發分爲界面、美工、數據庫、後端、算法等分支進行協同開發
撰寫記錄項目開展進度的文檔、以及進行展現的文檔
經過PPT、視頻、海報、圖片、文案對項目進行全方位的展現和推廣
對開發的代碼進行復查、測試
經過高效的工具和模式來保證團隊成員間的高效合做
團隊內須要有威望的成員(如PM)和人性化的制度進行項目管理,模塊合併來保證項目的順利完工
而這些任務目前來講,雖然和理想的、完美主義的目標相比仍然有差別,但就實現的角度來講完成得不錯。就資源和緣由來看:
組內的成員都對軟件工程這門課十分上心,毫不會敷衍了事
成員們都具備高效的學習能力,可以在短暫的時間上手新的技能和技術
團隊的交流和合做氛圍十分良好友善,成員都是儒雅隨和的TYPE
分工十分明確,項目的管理和協做並無出什麼大的紕漏
組內成員都很是有想法創意,並有相應地能力去實現這些創意
全員強迫」讓成員們對本身工做質量要求都很高,各項任務完成度很高,質量也處於較高的水準
組長具備良好的技術和豐富的經驗,對本身不妥協不放棄,能及時幫組員填坑
由於某些緣由,團隊有十分穩定的場地以供協做
各項任務所需的時間和其餘資源是如何估計的,精度如何?
精度方面大多數任務的估計與實際工做量不會誤差過多,在界面方面有必定的誤差
測試的時間,人力和軟件/硬件資源是否足夠? 對於那些不須要編程的資源 (美工設計/文案)是否低估難度?
但因爲PyQT的特性,致使設計稿和界面有必定差距
你有沒有感到你作的事情可讓別人來作(更有效率)?
團隊若是能更加高效地使用好GitHub,能在代碼的管理上更加高效
對項目任務的分塊工做量估計不夠精準,致使一部分的人力資源浪費
有什麼經驗教訓? 若是歷史重來一遍, 咱們會作什麼改進?
變動管理
每一個相關的員工都及時知道了變動的消息?
團隊的計劃和任務分配都會同步到團隊的協做管理平臺--Leangoo,即便偶爾有成員缺席會議,也能經過Leangoo即便知道團隊的任務變動。
咱們採用了什麼辦法決定「推遲」和「必須實現」的功能?
咱們團隊綜合衡量了現階段所能投放在項目上的時間以及成員的能力,分析了現有的開源項目所能提供的技術支持,結合產品開發前期咱們作的大量的用戶需求分析,最終決定必須實現基本的軟件運行環境和核心功能「熱詞分析」、「單項好友檢測」,將「關鍵詞提醒」和「羣發祝福」推遲到Beta版本實現。
項目的出口條件(Exit Criteria – 什麼叫「作好了」)有清晰的定義麼?
作好數據庫等的安全防禦措施,保證用戶數據的安全性,並制定完善的用戶隱私政策
對於可能的變動是否能制定應急計劃?
每日彙報各人任務進度
員工是否可以有效地處理意料以外的工做請求?
咱們學到了什麼? 若是歷史重來一遍, 咱們會作什麼改進?
設計/實現
設計工做在何時,由誰來完成的?是合適的時間,合適的人麼?
設計工做有沒有碰到模棱兩可的狀況,團隊是如何解決的?
團隊是否運用單元測試(unit test),測試驅動的開發(TDD)、UML, 或者其餘工具來幫助設計和實現?這些工具備效麼?
咱們暫時沒有進行單元測試,咱們會在beta階段加入對每一個模塊的測試!咱們使用了UML進行輔助設計。
比較項目開始的 UML 文檔和如今的狀態有什麼區別?這些區別如何產生的?是否要更新 UML 文檔?
主要的變化是在數據庫上的變動,數據庫的結構有發生變化。
什麼功能產生的Bug最多,爲何?在發佈以後發現了什麼重要的bug? 爲何咱們在設計/開發的時候沒有想到這些狀況?
團隊以前碰到的BUG主要是在對wxpy進行整合的過程當中,主窗口假死的BUG;以後咱們使用了多進程通訊的方式,在使用多進程通訊方式的過程當中,又出現瞭如窗口關閉後wxpy進程沒法跟着關閉等BUG。固然,界面開發過程當中也出現了不少BUG。
代碼複審(Code Review)是如何進行的,是否嚴格執行了代碼規範?
咱們沒有很好地進行代碼複審(慚愧),代碼規範咱們儘可能的遵循PEP8的編程規範。
咱們學到了什麼? 若是歷史重來一遍, 咱們會作什麼改進?
學到了多進程通訊、PyQt的使用(很麻煩,須要手寫各類類間的繼承)、wxpy的使用、sqllite數據庫的使用等
團隊的每一個角色是如何肯定的,是否是人盡其才?
根據本身的興趣以及掌握的技術來分配,相對來講能達到人盡其才的程度
團隊成員之間有互相幫助麼?
有,事實上不少困難時是團隊一塊兒攻克的
當出現項目管理、合做方面的問題時,團隊成員如何解決問題?
擺出事實,而後闡述問題出如今哪,而後一塊兒尋找解決方案
我感謝 __ <張揚> _對個人幫助, 由於我自己開發經驗爲0,代碼基礎也不好,在學習還有參與到項目的過程當中張揚一直很耐心,給予了我不少的幫助。
你以爲團隊目前的狀態屬於 CMM/CMMI 中的哪一個檔次?
初始級。工做無序,項目進行過程當中常放棄當初的計劃。管理無章法,缺少健全的管理制度。開發項目成效不穩定,項目成功主要依靠項目負責人的經驗和能力,他一但離去,工做秩序面目全非。
整組有部分人員沒有分配合理的工做,或者未能交出合理、可用的工程任務。主要的工做都集中在個別成員中。當我的的工做完成後,不能及時的分配接下來進行的任務,只能組員自行安排可行的任務。
你以爲團隊目前處於 萌芽/磨合/規範/創造 階段的哪個階段?
磨合階段。團隊成員開始逐漸熟悉和適應團隊的工做方式,面對問題和衝突,可以進行有效的溝通,解決問題。可是問題仍然存在。
你以爲團隊在這個里程碑相比前一個里程碑有什麼改進?
從進程通訊和界面編寫的坑中爬了出來
你以爲目前最須要改進的一個方面是什麼?
第一組 | 第二組 | 第三組 | 第四組 | 第五組 | 第六組 | 本組 | 第八組 | 第九組 | |
---|---|---|---|---|---|---|---|---|---|
本組對其評分 | 81 | 77 | 68 | 75 | 66 | 81.5 | 85 | 81 | 53 |
對本組的評分 | 79 | 79 | 77 | 60 | 80 | 74 | 85 | 77 | 75 |
去除最高總分,最低總分,求平均分後,獲得:
本組的現場答辯得分:(79+79+77+80+74+77+75)/7=77.28
問:答辯中提到pyqt的教程數量不多,是否pyqt自己就存在開發的侷限才使得它的教程數量少呢?
問:答辯中提到,pyqt對部分組員太難了,是否考慮分配組員完成其餘任務?
問:用戶使用大家的軟件是否須要配置相應的運行環境?
問:既然是掃描微信登錄,爲何還要弄申請帳號呢?
問:關鍵詞提醒功能是在電腦端提醒仍是手機微信提醒呢?
問:可否對QQ信息來執行相關的功能呢?
問:關於封號的問題,是否有一個具體明確的解決方案,仍是到時候選擇棄用網頁端呢?
問:對於界面是否有想過優化
問:是否考慮與用戶簽定隱私協議
注:該組在規定時間內未對我組提出任何問題,故不作回答。
問:關於界面的問題,是否有考慮在後期從新換一種語言寫界面?若是不換,如何考慮組員的分工問題
問:電腦睡眠狀態時,軟件可否正常運行?
問:如何解決聊天記錄可能泄露的問題?
問:在alpha版本僅實現了部分功能,是否存在分工不合理現象?
問:是否有考慮在後續版本中增長帳號密碼登陸微信的方式?
問:在beta階段是否會考慮對已實現功能的優化?
問:大家說網上的資料不多不少須要本身手寫,那麼對於後期如何有效提高團隊的總體效率呢?
問:後期對於組內的分工方面是否還要更細緻一點?
問:對於ui界面準備如何美化?
問:當前實現的功能較少,是否存在團隊分配不合理的狀況?
問:掃描登錄微信功能是否安全,是否能夠安全?
問:所說的PyQt和wxpy的坑,打算如何越過,有沒有具體的計劃?
建議:美化界面,提高用戶操做體驗。
建議:網頁端微信封號的問題可否改善。
建議:UI 配色應統一美觀。
建議:排除掉一些常常用的而且不是用戶須要獲取的詞。
建議:封號問題以前已經有人提過解決方案了,隱私問題原來小組有說過能夠之後尋求專業人士幫助,我以爲還能夠跟用戶簽定協議,以避免沒必要要麻煩。
建議:推出更多功能,增長用戶體驗。
建議:能夠多去參考一下一些熱門展品的UI以及配⾊
建議:但願後面能支持對QQ的熱詞分析。
建議:先初步實現各項功能再進行後續的迭代和優化
建議:優化交互界面的細節
建議:實現經過帳號密碼來登陸微信以及增長對 qq 的支持根據用戶實際需求改進功能
建議:但願後續可以分工分配的更加合理
建議:無建議。
PSP2.1 | Personal Software Process Stages | 預估耗時(分鐘) | 實際耗時(分鐘) |
---|---|---|---|
Planning | 計劃 | 5 | 5 |
· Estimate | · 估計這個任務須要多少時間 | 5 | 5 |
Development | 開發 | 0 | 0 |
· Analysis | · 需求分析 (包括學習新技術) | 0 | 0 |
· Design Spec | · 生成設計文檔 | 0 | 0 |
· Design Review | · 設計複審 | 0 | 0 |
· Coding Standard | · 代碼規範 (爲目前的開發制定合適的規範) | 0 | 0 |
· Design | · 具體設計 | 0 | 0 |
· Coding | · 具體編碼 | 0 | 0 |
· Code Review | · 代碼複審 | 0 | 0 |
· Test | · 測試(自我測試,修改代碼,提交修改)0 | 0 | 0 |
Reporting | 報告 | 90 | 120 |
· Test Repor | · 測試報告 | 0 | 0 |
· Size Measurement | · 計算工做量 | 30 | 60 |
· Postmortem & Process Improvement Plan | · 過後總結, 並提出過程改進計劃 | 60 | 60 |
合計 | 95 | 125 |
第N周 | 新增代碼(行) | 累計代碼(行) | 本週學習耗時(小時) | 累計學習耗時(小時) | 重要成長 |
---|---|---|---|---|---|
1 | 0 | 0 | 12 | 12 | 學習構建之法的前面部份內容 |
2 | 200 | 200 | 21 | 33 | 學習需求開發模型,鞏固c++編程基礎 |
3 | 200 | 400 | 22 | 55 | 學習原型工具墨刀,鞏固c++ |
4 | 570 | 970 | 43 | 98 | 鞏固結構體鏈表知識,學習STL map的使用,學習vs的調試功能使用方法 |
5-9 | 0 | 970 | 200 | 298 | 學會了需求分析,UML類圖的設計,增加了團隊配合的經驗,學習了思惟導圖的繪製 |
10 | 50 | 1020 | 10 | 308 | 初步接觸了python以及wxpy庫 |
11 | 100 | 1120 | 10 | 318 | 接觸了pyqt |
12 | 200 | 1320 | 12 | 330 | 進一步熟悉了python代碼的編寫以及項目中須要用到的庫 |