人脸情绪识别系统第一次迭代总结
設(shè)想和目標(biāo):
1. 我們的軟件要解決什么問(wèn)題?是否定義得很清楚?是否對(duì)典型用戶和典型場(chǎng)景有清晰的描述?
問(wèn)題定義:目前有一種情感維度理論,我們要用機(jī)器學(xué)習(xí)的方式給出人臉的維度值。
典型場(chǎng)景1:用戶通過(guò)視頻文件輸入,軟件需要輸出視頻中每一幀人臉情緒的維度值。
典型場(chǎng)景2:用戶通過(guò)本地?cái)z像頭實(shí)時(shí)獲取人臉數(shù)據(jù),軟件需要實(shí)時(shí)給出情緒維度值。
2. 我們達(dá)到目標(biāo)了么(原計(jì)劃的功能做到了幾個(gè)? 按照原計(jì)劃交付時(shí)間交付了么? 原計(jì)劃達(dá)到的用戶數(shù)量達(dá)到了么?)
場(chǎng)景一的功能實(shí)現(xiàn)了,但只是在代碼階段,沒(méi)有做到易操作的客戶端上。場(chǎng)景二功能還未實(shí)現(xiàn)。
3. 和上一個(gè)階段相比,團(tuán)隊(duì)軟件工程的質(zhì)量提高了么? 在什么地方有提高,具體提高了多少,如何衡量的?
有所提高,軟件質(zhì)量和團(tuán)隊(duì)合作都有提高。現(xiàn)階段客戶端界面更加美觀,團(tuán)隊(duì)合作更加緊密,合理根據(jù)成員特性分配相應(yīng)任務(wù)。
4. 用戶量, 用戶對(duì)重要功能的接受程度和我們事先的預(yù)想一致么? 我們離目標(biāo)更近了么?
重要功能和預(yù)想一致,但用戶體驗(yàn)未達(dá)到預(yù)期。
有什么經(jīng)驗(yàn)教訓(xùn)? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
除了學(xué)會(huì)了很多技術(shù),更重要的是知道了如何更好的團(tuán)隊(duì)合作。如果重新來(lái)過(guò),我們客戶端肯定會(huì)利用開(kāi)源模板和框架以加快開(kāi)發(fā),以及團(tuán)隊(duì)合作的任務(wù)任務(wù)分配會(huì)更加細(xì)化,
不會(huì)像之間一樣籠統(tǒng),因?yàn)槿蝿?wù)劃分不細(xì)每周會(huì)議上很難評(píng)估。
計(jì)劃
1. 是否有充足的時(shí)間來(lái)做計(jì)劃?
一開(kāi)始對(duì)項(xiàng)目需要的技術(shù)和難道不夠了解,導(dǎo)致第一次迭代計(jì)劃不合理。
2. 團(tuán)隊(duì)在計(jì)劃階段是如何解決同事們對(duì)于計(jì)劃的不同意見(jiàn)的?
共同商議投票決定。
3. 你原計(jì)劃的工作是否最后都做完了? 如果有沒(méi)做完的,為什么?
都有安排做,但有些未完成,因?yàn)橛行﹥?nèi)容涉及的技術(shù)比較難。
4. 有沒(méi)有發(fā)現(xiàn)你做了一些事后看來(lái)沒(méi)必要或沒(méi)多大價(jià)值的事?
有,有些工作做了一半發(fā)現(xiàn)可以以更簡(jiǎn)單的方式實(shí)現(xiàn)。
5. 是否每一項(xiàng)任務(wù)都有清楚定義和衡量的交付件?
沒(méi)有細(xì)致的分配任務(wù),大多任務(wù)都是籠統(tǒng)的一句話:實(shí)現(xiàn)什么什么功能,具有什么輸入什么輸出,也沒(méi)有衡量交付件。
6. 是否項(xiàng)目的整個(gè)過(guò)程都按照計(jì)劃進(jìn)行,項(xiàng)目出了什么意外?有什么風(fēng)險(xiǎn)是當(dāng)時(shí)沒(méi)有估計(jì)到的,為什么沒(méi)有估計(jì)到?
按計(jì)劃進(jìn)行。
7. 在計(jì)劃中有沒(méi)有留下緩沖區(qū),緩沖區(qū)有作用么?
沒(méi)有留緩沖區(qū)。緩存區(qū)可以解決出現(xiàn)的計(jì)劃之外的難題。
8. 將來(lái)的計(jì)劃會(huì)做什么修改?(例如:緩沖區(qū)的定義,加班)
之前規(guī)劃的第二階段功能可能不能實(shí)現(xiàn)。
我們學(xué)到了什么? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
項(xiàng)目前了充分了解才能做出合理的計(jì)劃;任務(wù)布置一定要詳細(xì),并且要有衡量交付件。
資源
1、? 我們有足夠的資源來(lái)完成各項(xiàng)任務(wù)么?
- 時(shí)間不足,訓(xùn)練集比較大,訓(xùn)練的速度慢,沒(méi)有更好的硬件環(huán)境,導(dǎo)致神經(jīng)網(wǎng)絡(luò)模型優(yōu)化緩慢
- 總的技術(shù)水平不足導(dǎo)致人力資源不夠,隨著知識(shí)的學(xué)習(xí)而有所改善
2、 各項(xiàng)任務(wù)所需的時(shí)間和其他資源是如何估計(jì)的,精度如何?
- 項(xiàng)目開(kāi)始時(shí)由于對(duì)項(xiàng)目不熟悉,時(shí)間與資源估計(jì)不到位
- 精度不足,經(jīng)驗(yàn)與知識(shí)的不足,導(dǎo)致許多任務(wù)沖突,而拖累了進(jìn)度
3、 測(cè)試的時(shí)間,人力和軟件/硬件資源是否足夠? 對(duì)于那些不需要編程的資源 (美工設(shè)計(jì)/文案)是否低估難度?
- 簡(jiǎn)單整合之后進(jìn)行了測(cè)試,發(fā)現(xiàn)存在不少bug,測(cè)試時(shí)間不夠
- 硬件資源不足,網(wǎng)絡(luò)模型的測(cè)試較為花費(fèi)時(shí)間
- UI的設(shè)計(jì)一般,最后采用了網(wǎng)絡(luò)上的模板
4、 你有沒(méi)有感到你做的事情可以讓別人來(lái)做(更有效率)?
- 任務(wù)的分工我們是按照不同人擅長(zhǎng)的技術(shù)而進(jìn)行的分配,基本不存在這個(gè)問(wèn)題
5、 有什么經(jīng)驗(yàn)教訓(xùn)? 如果歷史重來(lái)一遍, 我們會(huì)做什么改進(jìn)?
· 時(shí)間估計(jì)不足,python與jsp的整合難度估計(jì)不到位
- 更加注重前端的設(shè)計(jì),以及前后端的連接問(wèn)題,而不是把重心放在后臺(tái)網(wǎng)絡(luò)模型,由于硬件的限制而拖慢了項(xiàng)目的進(jìn)程
?
?變更管理1.???????每個(gè)相關(guān)的員工都及時(shí)知道了變更的消息?
都可以及時(shí)知道,這是因?yàn)槲覀兠恐芏紩?huì)召開(kāi)不定期的小組會(huì)議,就現(xiàn)階段遇到的問(wèn)題進(jìn)行討論和解決,這使得我們每位小組成員都很清晰地知道我們的項(xiàng)目進(jìn)度;我們還有一個(gè)項(xiàng)目日志,記錄著修改代碼的時(shí)間以及操作人,便于進(jìn)行管理,同時(shí)每個(gè)小組成員都會(huì)擁有一份代碼,保證代碼不會(huì)丟失。
2.???????我們采用了什么辦法決定“推遲”和“必須實(shí)現(xiàn)”的功能?
我們小組采用了集中討論并且尋求有類似項(xiàng)目經(jīng)驗(yàn)的學(xué)長(zhǎng)以及老師的意見(jiàn)和建議的方法來(lái)決定“推遲”和“必須實(shí)現(xiàn)”的功能;其中,最重要的一點(diǎn)還是我們以項(xiàng)目的核心算法為核心來(lái)確定其為“必須實(shí)現(xiàn)”的功能,類似于部署到服務(wù)器上為“推遲”功能。
3.???????項(xiàng)目的出口條件(Exit?Criteria)是否得到清晰的定義?
“出口條件”,其實(shí)就是項(xiàng)目有沒(méi)有達(dá)到設(shè)計(jì)的標(biāo)準(zhǔn),也就是說(shuō)項(xiàng)目能不能滿足用戶的各種需求,在我們小組的項(xiàng)目中,是直接奔著用戶的需求去做的,也和用戶(也就是老師)就行了很多溝通,能實(shí)現(xiàn)人臉情緒識(shí)別,所以Exit?Criteria得到了很好地滿足。
4.???????對(duì)于可能的變更是否能制定應(yīng)急計(jì)劃?
基本沒(méi)有,雖然在項(xiàng)目中每個(gè)人都有自己的分工,但是每周召開(kāi)的小組會(huì)議以及遇到問(wèn)題無(wú)法解決及時(shí)討論,再加上項(xiàng)目開(kāi)始的前期,整個(gè)小組都是集中一起在學(xué)習(xí)項(xiàng)目的核心算法內(nèi)容,每個(gè)小組成員都對(duì)項(xiàng)目的整體框架有著大致清晰的把握,所以對(duì)于可能的變更,小組內(nèi)部經(jīng)過(guò)短時(shí)間的討論就能制定一個(gè)簡(jiǎn)易的應(yīng)急計(jì)劃。
5.???????員工是否能夠有效地處理意料之外的工作請(qǐng)求?
每個(gè)人的分工是由每周的進(jìn)行的小組討論總結(jié)決定的,在分工的過(guò)程中,是根據(jù)每個(gè)人的能力以及空余時(shí)間情況,相對(duì)公平科學(xué)合理的分配的,對(duì)于處理意料之外的工作請(qǐng)求,PM也會(huì)先召開(kāi)小組會(huì)議,在根據(jù)實(shí)際情況來(lái)處理這個(gè)意料之外的工作請(qǐng)求。
?
設(shè)計(jì)/實(shí)現(xiàn)
1. 設(shè)計(jì)工作在什么時(shí)候,由誰(shuí)來(lái)完成的?是合適的時(shí)間,合適的人么?
整體設(shè)計(jì)是在項(xiàng)目開(kāi)始時(shí)討論設(shè)計(jì)出來(lái)的,后續(xù)多次小組討論,與老師交流對(duì)原有設(shè)計(jì)進(jìn)行修改,調(diào)整;在迭代時(shí)對(duì)設(shè)計(jì)進(jìn)一步優(yōu)化,美化。設(shè)計(jì)工作非一蹴而就,全組成員都為設(shè)計(jì)工作貢獻(xiàn)了一份心力。
2. 設(shè)計(jì)工作有沒(méi)有碰到模棱兩可的情況,團(tuán)隊(duì)是如何解決的?
有。就看具體執(zhí)行的人是如何解決的,有的解決得好,大家并不知道出過(guò)問(wèn)題;有的經(jīng)常拿出來(lái)討論,大家討論解決問(wèn)題。功能需求方面的問(wèn)題則是同指導(dǎo)老師交流,征求老師的意見(jiàn)和需求,最終敲定需要實(shí)現(xiàn)的功能和滿足用戶的需求。
3. 團(tuán)隊(duì)是否運(yùn)用單元測(cè)試(unit test),測(cè)試驅(qū)動(dòng)的開(kāi)發(fā)(TDD)、UML, 或者其他工具來(lái)幫助設(shè)計(jì)和實(shí)現(xiàn)?這些工具有效么?
運(yùn)用了騰訊敏捷開(kāi)發(fā)平臺(tái)(TAPD)記錄項(xiàng)目,建立周計(jì)劃與總結(jié)文檔安排每周工作和總結(jié)每周的成果。還對(duì)每個(gè)階段每個(gè)人要完成的總體功能了進(jìn)行了規(guī)劃與安排。較為有效,實(shí)現(xiàn)了對(duì)項(xiàng)目工作實(shí)時(shí)追蹤與記錄。
4. 什么功能產(chǎn)生的Bug最多,為什么?
前后臺(tái)的連接方面問(wèn)題較多,主要是因?yàn)榍芭_(tái)用Java編寫,后臺(tái)功能代碼是用Python編寫的。不同程序語(yǔ)言間的交互連接還是有困惑之處。
5. 代碼復(fù)審(Code Review)是如何進(jìn)行的,是否嚴(yán)格執(zhí)行了代碼規(guī)范?
代碼復(fù)審是小組交換審查,主要還是代碼變量、函數(shù)、類命名的問(wèn)題,大家寫代碼搭建框架時(shí)都專注于功能是否完成,命名方面注意的很少,大多命名都不太符合規(guī)范;部分代碼可能來(lái)源于網(wǎng)絡(luò)的開(kāi)源代碼,只關(guān)心能不能用,結(jié)果對(duì)不對(duì),哪管命名是否符合檢查要求。再就是注釋問(wèn)題,有的地方缺乏注釋,有的地方注釋又太多,影響對(duì)代碼的閱讀。
?
測(cè)試/發(fā)布
1.團(tuán)隊(duì)是否有一個(gè)測(cè)試計(jì)劃?為什么沒(méi)有?
暫時(shí)沒(méi)有,因?yàn)榫幊踢^(guò)程中就包含了測(cè)試
2.是否進(jìn)行了正式的驗(yàn)收測(cè)試?
第一次迭代驗(yàn)收
3.團(tuán)隊(duì)是否有測(cè)試工具來(lái)幫助測(cè)試?
暫時(shí)沒(méi)有
4.團(tuán)隊(duì)是如何測(cè)量并跟蹤軟件的效能的?從軟件實(shí)際運(yùn)行的結(jié)果來(lái)看,這些測(cè)試工作有用么?應(yīng)該有哪些改進(jìn)?
自行進(jìn)行了數(shù)據(jù)的測(cè)試,測(cè)試工作有用,我們發(fā)現(xiàn)項(xiàng)目中還存在一些bug,有待修復(fù),我們也發(fā)現(xiàn)一些功能實(shí)現(xiàn)效果體驗(yàn)欠佳,有待完善與優(yōu)化。
?
?
團(tuán)隊(duì)的角色,管理,合作
1. 團(tuán)隊(duì)的每個(gè)角色是如何確定的,是不是人盡其才?
根據(jù)每個(gè)人已掌握的技術(shù)和感興趣的方向安排的,可以說(shuō)是人盡其才了。
2. 團(tuán)隊(duì)成員之間有互相幫助么?
在會(huì)議上和共同討論技術(shù)時(shí)都是互相幫助,回去后在團(tuán)隊(duì)群里的需求幫助可能缺少。
3. 當(dāng)出現(xiàn)項(xiàng)目管理、合作方面的問(wèn)題時(shí),團(tuán)隊(duì)成員如何解決問(wèn)題?
讓沒(méi)人人說(shuō)出自己的理由和利弊,大家投票表決。
總結(jié)
1,你覺(jué)得團(tuán)隊(duì)目前的狀態(tài)屬于 CMM/CMMI 中的哪個(gè)檔次?
處于初始階段
2,你覺(jué)得團(tuán)隊(duì)目前處于 萌芽/磨合/規(guī)范/創(chuàng)造 階段的哪一個(gè)階段?
磨合階段
3,你覺(jué)得團(tuán)隊(duì)在這個(gè)里程碑相比前一個(gè)里程碑有什么改進(jìn)?
主要體現(xiàn)在團(tuán)隊(duì)合作上會(huì)更加熟練和合理
4,你覺(jué)得目前最需要改進(jìn)的一個(gè)方面是什么?
任務(wù)布置不夠細(xì)化,沒(méi)有合理的衡量指標(biāo)
轉(zhuǎn)載于:https://www.cnblogs.com/Davidhwj/p/10104603.html
總結(jié)
以上是生活随笔為你收集整理的人脸情绪识别系统第一次迭代总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java提高班(六)反射和动态代理(JD
- 下一篇: bzoj 3365: [Usaco200