诸葛亮
目錄設(shè)想和目標(biāo)計(jì)劃資源變更管理設(shè)計(jì)/實(shí)現(xiàn)測(cè)試/發(fā)布團(tuán)隊(duì)的角色,管理,合作總結(jié):貢獻(xiàn)分全組討論的照片
設(shè)想和目標(biāo)
1.我們的軟件要解決什么問(wèn)題?是否定義得很清楚?是否對(duì)典型用戶和典型場(chǎng)景有清晰的描述?
我們軟件解決的問(wèn)題是:人們?nèi)粘2⑿惺马?xiàng)越來(lái)越多,而人的記憶是有限的,我們的記憶罐頭這款
備忘錄可以有效的提醒和安排日常事務(wù),并且提供眾多便捷、智能、實(shí)用的功能。
已經(jīng)定義的十分清楚。(詳情可參見(jiàn)需求分析報(bào)告)
典型用戶為:學(xué)生黨和工作黨。(在需求分析課堂展示中已有描述。)
典型場(chǎng)景:佩佩和小柯的故事。(在需求分析課堂展示中已有描述。)
2.我們達(dá)到目標(biāo)了么(原計(jì)劃的功能做到了幾個(gè)? 按照原計(jì)劃交付時(shí)間交付了么?
已達(dá)到目標(biāo),原計(jì)劃功能已完成6個(gè):備忘錄的基礎(chǔ)使用、天氣分析、智能提醒、App使用分析、語(yǔ)音輸入、智能識(shí)別短信。剩下1個(gè)需在Beta版本完成:形成語(yǔ)音輸入小浮標(biāo)。
在Alpha版本規(guī)定時(shí)間完成交付。并進(jìn)行Alpha版本課堂展示。
3.原計(jì)劃達(dá)到的用戶數(shù)量達(dá)到了么?
原定計(jì)劃中未對(duì)用戶數(shù)量做出明確定義。用戶量還需要在Beta版本完成之后進(jìn)行推廣獲取。
4.用戶量, 用戶對(duì)重要功能的接受程度和我們事先的預(yù)想一致么? 我們離目標(biāo)更近了么?
暫時(shí)還未進(jìn)行推廣,因此還沒(méi)有用戶量。離目標(biāo)更近一步。
5.有什么經(jīng)驗(yàn)教訓(xùn)? 如果歷史重來(lái)一遍,我們會(huì)做什么改進(jìn)?
團(tuán)隊(duì)共享。
計(jì)劃
你原計(jì)劃的工作是否最后都做完了? 如果有沒(méi)做完的,為什么?
-在alpha版本的原計(jì)劃的數(shù)據(jù)庫(kù)初始化和接口的實(shí)現(xiàn)任務(wù)最后都完成了,剩下的是beta版本的用戶登入和云端備份的實(shí)現(xiàn);原計(jì)劃的前端功能都已經(jīng)實(shí)現(xiàn),現(xiàn)在缺少的是頁(yè)面的精修,在美觀上還需要改進(jìn)。
有沒(méi)有發(fā)現(xiàn)你做了一些事后看來(lái)沒(méi)必要或沒(méi)多大價(jià)值的事?
-在android stdio的下載上花費(fèi)了很長(zhǎng)時(shí)間,至少有兩天,出現(xiàn)各種問(wèn)題。以及在代碼整合的過(guò)程中,出現(xiàn)有些人代碼可以運(yùn)行,但是有些不能運(yùn)行的情況。在軟件的問(wèn)題上出現(xiàn)很多錯(cuò),但是有很費(fèi)時(shí)。項(xiàng)目初始計(jì)劃是做服務(wù)器上的數(shù)據(jù)庫(kù)和接口,但是這樣會(huì)導(dǎo)致手機(jī)在沒(méi)有網(wǎng)絡(luò)的情況之下,加載不出數(shù)據(jù),整個(gè)軟件會(huì)處于不能使用的狀態(tài),這和我們這樣一個(gè)備忘錄app的用戶使用場(chǎng)景出入很大。發(fā)現(xiàn)問(wèn)題之后決定將數(shù)據(jù)庫(kù)部署在本地。還有就是接口設(shè)計(jì)的時(shí)候,其實(shí)有些功能前端可以直接實(shí)現(xiàn)的,不需要對(duì)應(yīng)的接口,常常設(shè)計(jì)出前端不需要的接口;
是否每一項(xiàng)任務(wù)都有清楚定義和衡量的交付件?
-在后端部分,數(shù)據(jù)庫(kù)和接口的設(shè)計(jì)我們是有在需求文檔中做了詳細(xì)的規(guī)劃,根據(jù)軟件的原型和需求,規(guī)范地設(shè)計(jì)數(shù)據(jù)庫(kù)和細(xì)致地設(shè)計(jì)接口的,數(shù)據(jù)庫(kù)表結(jié)構(gòu)和接口需求明確之后才進(jìn)行的代碼實(shí)現(xiàn),所以在于整個(gè)項(xiàng)目的開(kāi)發(fā)中,任務(wù)和進(jìn)度是很精確的,也提供測(cè)試樣例作為參考。
是否項(xiàng)目的整個(gè)過(guò)程都按照計(jì)劃進(jìn)行,項(xiàng)目出了什么意外?有什么風(fēng)險(xiǎn)是當(dāng)時(shí)沒(méi)有估計(jì)到的,為什么沒(méi)有估計(jì)到?
-后端部分,是先根據(jù)原型和需求,數(shù)據(jù)庫(kù)表結(jié)構(gòu)和接口需求明確之后才進(jìn)行的代碼實(shí)現(xiàn)的,按照文檔一步步實(shí)現(xiàn)的,期間由于對(duì)java和AndroidStudio開(kāi)發(fā)的不熟悉,有時(shí)在數(shù)據(jù)庫(kù)初始化和sql語(yǔ)句上出現(xiàn)問(wèn)題;風(fēng)險(xiǎn)的話因?yàn)樽龅墓δ苁窍鄬?duì)簡(jiǎn)單和基礎(chǔ)的部分,可能在安全系數(shù)和數(shù)據(jù)庫(kù)版本升級(jí)的部分沒(méi)有做的詳盡;對(duì)于將來(lái)服務(wù)器安全部分會(huì)考慮加強(qiáng)安全性的途徑;
在計(jì)劃中有沒(méi)有留下緩沖區(qū),緩沖區(qū)有作用么?
將來(lái)的計(jì)劃會(huì)做什么修改?(例如:緩沖區(qū)的定義,加班)
-計(jì)劃的實(shí)施都是在大家都有空的時(shí)候,一起進(jìn)行的。各自在平時(shí)有空的時(shí)候自行學(xué)習(xí)和code,也會(huì)互相分享經(jīng)驗(yàn),任務(wù)完成的也相對(duì)高效緊湊,沒(méi)怎么需要加班;一起code的時(shí)候,一般都是任務(wù)完成到預(yù)期進(jìn)度才各回各家;將來(lái)的計(jì)劃,我覺(jué)得這種狀態(tài)挺不錯(cuò)的(畢竟大家有不同的課業(yè)需要兼顧),可能會(huì)多一項(xiàng)在固定時(shí)間互相交流學(xué)習(xí)內(nèi)容和實(shí)現(xiàn)思路,這樣對(duì)接下來(lái)計(jì)劃的實(shí)現(xiàn)思路會(huì)更加明確;不過(guò)在每天的任務(wù)中難免存在難度無(wú)法做完的情況,我們會(huì)選擇熬夜完成項(xiàng)目。
我們學(xué)到了什么? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
-對(duì)于后端能實(shí)現(xiàn)來(lái)說(shuō),由于第一次做,對(duì)于任務(wù)量的不熟悉,在分配任務(wù)的之后,會(huì)導(dǎo)致有的成員天天埋頭苦干,有的則無(wú)所事事,還有就是不同成員在學(xué)習(xí)重復(fù)的知識(shí),這樣使任務(wù)的完成度參差不齊,也降低效率;如果歷史重來(lái)一遍,會(huì)對(duì)任務(wù)進(jìn)行詳盡的分析,明確技術(shù)難點(diǎn)和工作量,然后進(jìn)行任務(wù)分派,在提高效率上應(yīng)該會(huì)有所成效;同時(shí),我們可能會(huì)選擇多增加代碼規(guī)范性的了解,在頁(yè)面的設(shè)計(jì)上也會(huì)稍加改進(jìn)。
資源
我們有足夠的資源來(lái)完成各項(xiàng)任務(wù)么?
有足夠的資源來(lái)完成各項(xiàng)任務(wù)。團(tuán)隊(duì)人才濟(jì)濟(jì)。
各項(xiàng)任務(wù)所需的時(shí)間和其他資源是如何估計(jì)的,精度如何?
各項(xiàng)任務(wù)所需時(shí)間及其他資源是詢問(wèn)前輩的經(jīng)驗(yàn)以及在開(kāi)發(fā)過(guò)程中不斷更新考量估計(jì)的,精度不太準(zhǔn)確,出現(xiàn)超時(shí)完成任務(wù)的情況。
測(cè)試的時(shí)間,人力和軟件/硬件資源是否足夠?對(duì)于那些不需要編程的資源 (美工設(shè)計(jì)/文案)是否低估難度?
并未低估文案和美工設(shè)計(jì)的難度,在最開(kāi)始的時(shí)候便分配了專員負(fù)責(zé)這兩個(gè)模塊。測(cè)試時(shí)間安排不太合理,暫未分配測(cè)試時(shí)間。
你有沒(méi)有感到你做的事情可以讓別人來(lái)做(更有效率)?
-我覺(jué)得我做的事情,讓一個(gè)心思縝密的組員都能做的不錯(cuò)。
有什么經(jīng)驗(yàn)教訓(xùn)? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
-分配任務(wù)的時(shí)候會(huì)對(duì)任務(wù)進(jìn)行詳盡的分析,明確技術(shù)難點(diǎn)和工作量,然后進(jìn)行任務(wù)分派,能夠讓大家都輕松高效的完成項(xiàng)目
變更管理
每個(gè)相關(guān)的員工都及時(shí)知道了變更的消息?
如果有變更的消息的話,員工們都能從員工群里面獲取實(shí)時(shí)的變更消息,此外在相關(guān)員工的小組群里面也會(huì)有變更消息的提醒,這樣保證了每個(gè)相關(guān)的員工都能夠及時(shí)知道變更的消息。
我們采用了什么辦法決定“推遲”和“必須實(shí)現(xiàn)”的功能?
在項(xiàng)目初期,員工們對(duì)于自己負(fù)責(zé)部分的功能有粗淺了解之后,員工們根據(jù)功能的實(shí)現(xiàn)難度判斷功能屬于“推遲”或“必須實(shí)現(xiàn)”的功能,然后在開(kāi)會(huì)期間提出該議題(若無(wú)提出,默認(rèn)“必須實(shí)現(xiàn)”),經(jīng)過(guò)討論(參照功能是否為必須實(shí)現(xiàn)的主要功能、關(guān)鍵功能)后,采取集體投票的方式最終決定該功能屬于“推遲”或“必須實(shí)現(xiàn)”的功能!
項(xiàng)目的出口條件(Exit Criteria – 什么叫“做好了”)有清晰的定義么?
對(duì)于我們的項(xiàng)目,我們首先規(guī)定了一些基本功能,在最后完工時(shí),這些基本功能就是我們的項(xiàng)目的出口條件。
對(duì)于可能的變更是否能制定應(yīng)急計(jì)劃?
是的!俗話說(shuō)計(jì)劃趕不上變化,我要以不變應(yīng)萬(wàn)變,根據(jù)自己所學(xué)的和所看的書(shū)結(jié)合實(shí)際情況,做出判斷。接著進(jìn)行羅列出可行的計(jì)劃,然后進(jìn)行選擇,選出比較好的幾個(gè)應(yīng)急計(jì)劃,再對(duì)各個(gè)計(jì)劃、各種方案的優(yōu)缺點(diǎn)以及成本進(jìn)行篩選。
員工是否能夠有效地處理意料之外的工作請(qǐng)求?
我們的員工在收到意料之外的工作請(qǐng)求時(shí),會(huì)先確認(rèn)其來(lái)源的需求,在確認(rèn)無(wú)誤并沒(méi)有異議的情況下,能夠合理協(xié)調(diào)自己的安排以滿足目前的總體需求。
我們學(xué)到了什么? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
首先,每個(gè)員工在技術(shù)知識(shí)方面都或多或少有所收獲,或是前端頁(yè)面方面、或是后端接口編寫方面等,此外我們的每個(gè)員工都對(duì)一個(gè)app的開(kāi)發(fā)流程有了一定的了解,而不是負(fù)責(zé)某一部分就只了解該部分的內(nèi)容;其次,我們積累了一些開(kāi)發(fā)經(jīng)驗(yàn),在某些問(wèn)題的解決上有了解決方法;此外,我們還認(rèn)識(shí)到了軟件開(kāi)發(fā)團(tuán)隊(duì)中員工之間的團(tuán)結(jié)協(xié)作和交流溝通是十分重要的,如果一個(gè)團(tuán)隊(duì)能夠團(tuán)結(jié)協(xié)作并積極地交流溝通,那么這個(gè)團(tuán)隊(duì)的狀態(tài)是健康積極的,軟件的開(kāi)發(fā)便能順利愉悅地進(jìn)行,相反地,如果一個(gè)團(tuán)隊(duì)有大大小小的各種矛盾,那么這個(gè)團(tuán)隊(duì)的狀態(tài)是不健康的,甚至很可能影響到軟件開(kāi)發(fā)的進(jìn)度。如果歷史重來(lái)一遍,我們會(huì)請(qǐng)教有過(guò)項(xiàng)目開(kāi)發(fā)經(jīng)驗(yàn)的學(xué)長(zhǎng)或?qū)W姐更具體的開(kāi)發(fā)流程細(xì)節(jié),更好更快地完成我們項(xiàng)目的分工部分,為開(kāi)發(fā)過(guò)程中的“bug”留下更充足的時(shí)間;其次,我們會(huì)更加注重開(kāi)發(fā)的“規(guī)范化”,比如每?jī)商鞂憣W(xué)習(xí)總結(jié),將開(kāi)發(fā)過(guò)程中遇到的問(wèn)題的可行解決方法寫成技術(shù)文檔等;此外,我們會(huì)在團(tuán)隊(duì)成員之間的團(tuán)結(jié)協(xié)作和積極交流方面做得更好!
設(shè)計(jì)/實(shí)現(xiàn)
設(shè)計(jì)工作在什么時(shí)候,由誰(shuí)來(lái)完成的?是合適的時(shí)間,合適的人么?
原型的設(shè)計(jì)工作是卉卉做的,之后迭代是丹丹完成的。原型的設(shè)計(jì)工作在團(tuán)隊(duì)選題報(bào)告之后重新設(shè)計(jì)的,一方面讓新隊(duì)員卉卉熟悉了我們的項(xiàng)目,我們認(rèn)為讓她來(lái)做是比較合適的。(卉:界面丑其實(shí)是我的鍋orz)
數(shù)據(jù)庫(kù)和接口的設(shè)計(jì)是由后端部分的家燦和卉卉在選題報(bào)告之后一起討論完成的。
設(shè)計(jì)工作有沒(méi)有碰到模棱兩可的情況,團(tuán)隊(duì)是如何解決的?
負(fù)責(zé)的原型設(shè)計(jì)的同學(xué)在群里發(fā)布了很多版本,其他組員也提了許多意見(jiàn),最終確定了最終版本。
后端的設(shè)計(jì)工作在后面的代碼實(shí)施階段遇到了一些分歧,也是通過(guò)后端組內(nèi)討論解決的。
團(tuán)隊(duì)是否運(yùn)用單元測(cè)試(unit test),測(cè)試驅(qū)動(dòng)的開(kāi)發(fā)(TDD)、UML, 或者其他工具來(lái)幫助設(shè)計(jì)和實(shí)現(xiàn)?這些工具有效么?
-后端是在Androidstudio里進(jìn)行的單元測(cè)試,后端同學(xué)表示Androidstudio自帶的測(cè)試環(huán)境比較方便也挺好用的。
比較項(xiàng)目開(kāi)始的 UML 文檔和現(xiàn)在的狀態(tài)有什么區(qū)別?這些區(qū)別如何產(chǎn)生的?是否要更新 UML 文檔?
-差距還是比較大的,區(qū)別是在開(kāi)發(fā)過(guò)程中發(fā)現(xiàn)UML文檔的東西不適應(yīng)項(xiàng)目的開(kāi)發(fā),需要改變。需要更新UML文檔以適應(yīng)。
什么功能產(chǎn)生的Bug最多,為什么?在發(fā)布之后發(fā)現(xiàn)了什么重要的bug? 為什么我們?cè)谠O(shè)計(jì)/開(kāi)發(fā)的時(shí)候沒(méi)有想到這些情況?
-基礎(chǔ)功能中的備忘錄展示,因?yàn)閷?duì)android開(kāi)發(fā)不熟悉,自定義控件的使用不熟悉,導(dǎo)致書(shū)寫的過(guò)程出現(xiàn)很多問(wèn)題。發(fā)布之后,語(yǔ)音插入之后完成時(shí)間是已過(guò)期,刪除功能不完善。開(kāi)發(fā)的時(shí)候因?yàn)閍lpha版本時(shí)間有點(diǎn)趕,未進(jìn)行完整的測(cè)試。
代碼復(fù)審(Code Review)是如何進(jìn)行的,是否嚴(yán)格執(zhí)行了代碼規(guī)范?
-無(wú),并未嚴(yán)格執(zhí)行代碼規(guī)范。
我們學(xué)到了什么? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
-學(xué)到了如何開(kāi)發(fā)一個(gè)項(xiàng)目的全部流程,以及如何有效的分工。同時(shí),每個(gè)組員對(duì)前后端的交接有了完整的理解。如果歷史能重來(lái),我們會(huì)在一開(kāi)始就進(jìn)行代碼規(guī)范,以及代碼復(fù)審,這才是軟工實(shí)踐的最大意義。以及合并時(shí)采用GitHub,讓合并更加高效。
測(cè)試/發(fā)布
團(tuán)隊(duì)是否有一個(gè)測(cè)試計(jì)劃?為什么沒(méi)有?
測(cè)試計(jì)劃分為四個(gè)方面:
測(cè)試壁紙是否可以自動(dòng)生成
可自助選擇壁紙格式,字號(hào)大小,字號(hào)顏色,自動(dòng)生成桌面壁紙
測(cè)試快遞,車票信息是否可以自動(dòng)生成
接受車票,快遞信息,生成備忘信息
測(cè)試是否可以新建備忘信息
測(cè)試語(yǔ)音轉(zhuǎn)文字功能
測(cè)試刪除選中功能
測(cè)試反饋功能
測(cè)試桌面控件功能
在測(cè)試過(guò)程中,及時(shí)消除bug和解決軟件閃退問(wèn)題。
是否進(jìn)行了正式的驗(yàn)收測(cè)試?
app在桌面可安全開(kāi)啟,并完成測(cè)試計(jì)劃提到所有功能,有視頻展示。
團(tuán)隊(duì)是否有測(cè)試工具來(lái)幫助測(cè)試?
測(cè)試計(jì)劃分為前端,后端兩個(gè)部分。
前端測(cè)試?yán)肁ndroid studio進(jìn)行build,build成功后按三角運(yùn)行按鈕,電腦與安卓機(jī)利用數(shù)據(jù)線相連,授予USB訪問(wèn)權(quán)限,運(yùn)行成功后,創(chuàng)作界面會(huì)在安卓機(jī)自動(dòng)顯現(xiàn)。
后端利用Android studio里的junit進(jìn)行測(cè)試,測(cè)試失敗會(huì)顯示錯(cuò)誤。
團(tuán)隊(duì)是如何測(cè)量并跟蹤軟件的效能的?從軟件實(shí)際運(yùn)行的結(jié)果來(lái)看,這些測(cè)試工作有用么?應(yīng)該有哪些改進(jìn)?
我們的后端已經(jīng)寫了一份單元測(cè)試來(lái)進(jìn)行測(cè)量并跟蹤軟件的效能。從實(shí)際運(yùn)行結(jié)果來(lái)看,這些測(cè)試工作是非常有用的。我們應(yīng)該適當(dāng)?shù)刎S富測(cè)試文件的內(nèi)容。
在發(fā)布的過(guò)程中發(fā)現(xiàn)了哪些意外問(wèn)題?
由于我們?cè)诖虬麬PK的過(guò)程中,想要將所有的部分調(diào)整到最好,導(dǎo)致沒(méi)有將APK打包好。
我們學(xué)到了什么? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
我們對(duì)前端,后端的部分從一無(wú)所知或者只知道大概,到對(duì)整個(gè)開(kāi)發(fā)流程和APP有了很詳細(xì)的了解。并且明白了如何融入一個(gè)團(tuán)隊(duì)中,將團(tuán)隊(duì)變得更好。
我們會(huì)對(duì)隊(duì)員分工進(jìn)行更詳細(xì)得調(diào)整,將所有人都加入到開(kāi)發(fā)工作的熱情中。
團(tuán)隊(duì)的角色,管理,合作
團(tuán)隊(duì)的每個(gè)角色是如何確定的,是不是人盡其才?
團(tuán)隊(duì)成員之間有互相幫助么?
當(dāng)出現(xiàn)項(xiàng)目管理、合作方面的問(wèn)題時(shí),團(tuán)隊(duì)成員如何解決問(wèn)題?
每個(gè)成員明確公開(kāi)地表示對(duì)成員幫助的感謝:
我感謝 _______<姓名>______對(duì)我的幫助, 因?yàn)槟硞€(gè)具體的事情: _____________________。
我們學(xué)到了什么? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
總結(jié):
你覺(jué)得團(tuán)隊(duì)目前的狀態(tài)屬于 CMM/CMMI 中的哪個(gè)檔次?
你覺(jué)得團(tuán)隊(duì)目前處于 萌芽/磨合/規(guī)范/創(chuàng)造 階段的哪一個(gè)階段?
你覺(jué)得團(tuán)隊(duì)在這個(gè)里程碑相比前一個(gè)里程碑有什么改進(jìn)?
你覺(jué)得目前最需要改進(jìn)的一個(gè)方面是什么?
對(duì)照敏捷開(kāi)發(fā)的原則, 你覺(jué)得你們小組做得最好的是哪幾個(gè)原則? 請(qǐng)列出具體的事例。
貢獻(xiàn)分
| 成員 | 比例 |
|---|---|
| 緒佩 | 13% |
| 青元 | 13% |
| 宇恒 | 7% |
| 愷琳 | 7% |
| 政演 | 6.5% |
| 一好 | 6.5% |
| 丹丹 | 7% |
| 鴻杰 | 11% |
| 家偉 | 11% |
| 家燦 | 9% |
| 卉卉 | 9% |
全組討論的照片
總結(jié)
- 上一篇: CLAHE
- 下一篇: 算法实践--最小生成树(Kruskal算