今天是7月20號对粪,21號也就是明天即項(xiàng)目內(nèi)測時(shí)間右冻,團(tuán)隊(duì)的小伙伴們正在緊鑼密鼓敲代碼。
在項(xiàng)目開發(fā)過程幾點(diǎn)體會
昨天CEO同學(xué)過來問進(jìn)度著拭,然而我并不能清晰的知道現(xiàn)在的進(jìn)度纱扭,只能每個(gè)人都說一下自己的進(jìn)度。
我們團(tuán)隊(duì)是一個(gè)全椑苷冢化的團(tuán)隊(duì)乳蛾,但是目前還是每個(gè)人開發(fā)一塊,造成單點(diǎn)延遲鄙币。全椝嘁叮化團(tuán)隊(duì)一個(gè)重要目標(biāo)就是解決單點(diǎn)性能瓶頸。
在開發(fā)的安排上十嘿,首先過于樂觀的估算了后臺編輯頁面的開發(fā)量因惭,其次小程序和PC編輯端開發(fā)開始的遲了些。
在開發(fā)過程中绩衷,前端對后端的接口設(shè)計(jì)其實(shí)沒有仔細(xì)了解蹦魔。對于RESTful不太熟悉;
總結(jié)問題
開發(fā)工作量估算偏差太大勿决;
開發(fā)進(jìn)度不透明乒躺;
單點(diǎn)開發(fā)瓶頸低缩;
團(tuán)隊(duì)默契度太低娜遵,無效溝通太多;
沒有一條明確的路是通往成功的壤短,我們能做的是繞過所有已知或者預(yù)知的坑设拟,繞不過去就填平。
我的個(gè)人經(jīng)驗(yàn):
首先我經(jīng)歷的每一個(gè)團(tuán)隊(duì)都有很多問題久脯,反正是不可能有一個(gè)完美的團(tuán)隊(duì)纳胧,成功可能也不需要完美吧。但是我可以明確的感覺到曾經(jīng)做的好的團(tuán)隊(duì)和不好的團(tuán)隊(duì)的差距帘撰。我覺得好的團(tuán)隊(duì)和做的做的不好的團(tuán)隊(duì)一個(gè)主要差別在于:認(rèn)識自己和勇于改變跑慕。
然后我們聊一聊敏捷和Scrum,敏捷開發(fā)是軟件工程學(xué)的的一個(gè)開發(fā)模式,主要思想是以靈活的迭代方式快速實(shí)現(xiàn)產(chǎn)品摧找。敏捷開發(fā)是一套理論核行,Scrum是敏捷開發(fā)理論下的一套實(shí)施方案。包括站立會蹬耘、燃盡圖芝雪、任務(wù)估算、產(chǎn)品驗(yàn)收等综苔。我之前的團(tuán)隊(duì)有嚴(yán)格遵守Scrum的惩系,也有模仿形式的。在早期我是推崇敏捷開發(fā)的如筛,后來經(jīng)歷了很多團(tuán)隊(duì)堡牡,看到了很多問題,也思考了一些杨刨,最終覺得敏捷開發(fā)和Scrum都不是銀彈悴侵。每個(gè)團(tuán)隊(duì)都有自己的特點(diǎn)和問題,所以我不贊同團(tuán)隊(duì)嚴(yán)格的Scrum化拭嫁,但是我們需要借鑒Scrum的一些優(yōu)秀的方式來解決現(xiàn)在的問題可免。
再聊聊軟件開發(fā)和團(tuán)隊(duì)。如果我們看到一個(gè)團(tuán)隊(duì)里的成員在工作中都是積極的做粤,都是有主人翁精神的浇借,那么毋庸置疑,這個(gè)團(tuán)隊(duì)一定是個(gè)不錯(cuò)的團(tuán)隊(duì)怕品。這代表團(tuán)隊(duì)成員不是被動執(zhí)行妇垢,而是主動思考和執(zhí)行,團(tuán)度的創(chuàng)造力肉康,執(zhí)行力和凝聚力自然是高出普通團(tuán)隊(duì)一大截闯估。那么這樣的團(tuán)隊(duì)從何而來?毋庸置疑吼和,這跟團(tuán)隊(duì)leader絕對相關(guān)涨薪。那是什么特質(zhì),讓一個(gè)leader領(lǐng)導(dǎo)如此團(tuán)隊(duì)炫乓?當(dāng)我讀了《How Google Works》后受到一些啟發(fā):賦能+求實(shí)刚夺。當(dāng)埃里克主張做KPI考核機(jī)制的時(shí)候,佩奇問當(dāng)有了KPI末捣,員工能不能完成的比KPI更出色侠姑,埃里克想了一下之后便放棄了KPI機(jī)制。求實(shí)在于團(tuán)隊(duì)勇于面對當(dāng)前狀況箩做,直面真實(shí)莽红,做有效的事情。Get到重點(diǎn)之后邦邦,leader要以身作則安吁,塑造一個(gè)這樣的環(huán)境或者說文化。千萬不要指望團(tuán)隊(duì)每個(gè)人自帶小馬達(dá)圃酵,環(huán)境塑造個(gè)人柳畔。比如埃里克剛剛進(jìn)入Google時(shí)候想要一個(gè)獨(dú)立的、整潔的辦公室郭赐,但是好不容易搞了一間不大的屋子薪韩,第二天便有一個(gè)工程師擠進(jìn)了他的辦公室,這打破了埃里克幾十年的職業(yè)認(rèn)知捌锭,但是這件事最終贏得了他的贊賞俘陷。再比如Google的每周五問答會,員工可以直接問高層任何問題观谦,可以很尖銳拉盾。所以Google在創(chuàng)造這種積極的工作環(huán)境或者文化方便做的很好。這并不是說模仿Google就能走向成功豁状,而是優(yōu)秀自有優(yōu)秀的原因捉偏,值得借鑒的還是要借鑒的倒得。
說了那么多,以上的問題該怎么辦夭禽?
關(guān)于開發(fā)時(shí)間估算霞掺。公司一般有兩種開發(fā)時(shí)間設(shè)定方式,一種是根據(jù)產(chǎn)品功能開發(fā)量讹躯,開發(fā)團(tuán)隊(duì)給出完成需要時(shí)間菩彬,第二種是領(lǐng)導(dǎo)根據(jù)公司計(jì)劃給定一個(gè)開發(fā)完成時(shí)間。兩種沒有合理不合理之分潮梯,但是在產(chǎn)品實(shí)現(xiàn)和開發(fā)時(shí)間估算上要采用不同策略骗灶。對于開發(fā)時(shí)間估算Scrum提供了一個(gè)很好的方案,團(tuán)隊(duì)一起對產(chǎn)品(產(chǎn)品經(jīng)理也參與)功能進(jìn)行拆分秉馏,變成開發(fā)任務(wù)耙旦,拆分時(shí)候傾向與將開發(fā)任務(wù)拆分足夠小,這樣在拆分的時(shí)候?qū)岩恍╇[形開發(fā)任務(wù)也挖掘出來沃饶,避免在開發(fā)過程中才被發(fā)現(xiàn)母廷。在產(chǎn)品功能拆分成開發(fā)任務(wù)后,進(jìn)行開發(fā)任務(wù)復(fù)雜度的估算糊肤,用最簡單的任務(wù)做單位1琴昆,以斐波那契數(shù)列做估算,切記不要把任務(wù)跟時(shí)間聯(lián)系起來馆揉。在估算復(fù)雜度后根據(jù)最簡單任務(wù)時(shí)間乘上復(fù)雜度就是任務(wù)實(shí)現(xiàn)時(shí)間业舍。在第一種開發(fā)團(tuán)隊(duì)給出完成時(shí)間的情況下,開發(fā)團(tuán)隊(duì)根據(jù)自己情況升酣,安排迭代周期和每個(gè)迭代完成的目標(biāo)舷暮,每個(gè)迭代目標(biāo)驅(qū)動。在公司給定開發(fā)時(shí)間的情況下噩茄,對產(chǎn)品功能排序下面,做最重要的功能,根據(jù)任務(wù)拆分绩聘,每個(gè)功能開發(fā)時(shí)間也是大概確定的沥割。 !T淦小机杜!另外其實(shí)在開發(fā)過程中有許多不能確定的開發(fā),比如有些框架沒有接觸過衅谷,就像這次的Egg.js和mongoose我就沒用過椒拗,就不能確保開發(fā)時(shí)間,在這種必須要卻不能確定時(shí)間的應(yīng)該根據(jù)經(jīng)驗(yàn)給出大體復(fù)雜度然后在開發(fā)過程中根據(jù)個(gè)人情況隨時(shí)調(diào)整。整體經(jīng)驗(yàn)豐富的團(tuán)隊(duì)要更能準(zhǔn)確掌握時(shí)間蚀苛。最后切記時(shí)間只作為開發(fā)團(tuán)隊(duì)開發(fā)進(jìn)度指導(dǎo)在验,目的讓進(jìn)度透明,每個(gè)人心中有數(shù)枉阵,不作為強(qiáng)制要求译红。
開發(fā)進(jìn)度不透明,在開發(fā)任務(wù)拆分后兴溜,配上適當(dāng)?shù)娜急M圖和站立會,開發(fā)進(jìn)度將會公司內(nèi)部透明耻陕;
單點(diǎn)開發(fā)拙徽。全棧化是解決單點(diǎn)瓶頸的有效方式诗宣,全棧開發(fā)也是互聯(lián)網(wǎng)技術(shù)開發(fā)團(tuán)隊(duì)的趨勢膘怕。隨著移動互聯(lián)網(wǎng)過程中技術(shù)的快速發(fā)展,各種技術(shù)方案都已經(jīng)成型召庞,各種開源代碼實(shí)現(xiàn)了我們大部分需求岛心,大量的云服務(wù)解決了基礎(chǔ)問題,可以說今天的開發(fā)者是站在巨人的肩膀上寫代碼篮灼,要學(xué)會拿來用忘古,學(xué)會甄別優(yōu)劣,不要自己創(chuàng)造輪子诅诱。如果開發(fā)卡在了一個(gè)點(diǎn)上髓堪,那么我們就要思考,是不是有辦法讓團(tuán)隊(duì)里的人也參與進(jìn)來娘荡,比如CI化已經(jīng)卡在運(yùn)維一周了干旁,是不是可以讓運(yùn)維開放賬號,我們自己來做炮沐。
關(guān)于團(tuán)隊(duì)合作争群。用簡單的規(guī)則消除不必要的溝通,如使用RESTful接口規(guī)則消除大量接口定義的歧義大年,相信經(jīng)過1.0的開發(fā)换薄,在1.1及以后團(tuán)隊(duì)對與接口的理解將會更暢通。原則就是多溝通好過不溝通鲜戒,不用溝通好過多溝通专控。
最后思考,如何讓團(tuán)隊(duì)對產(chǎn)品負(fù)責(zé)遏餐,而不是一個(gè)人對產(chǎn)品負(fù)責(zé)伦腐。。
七月特困失都,睡不醒柏蘑,希望八月來碗雞血幸冻。