項(xiàng)目管理經(jīng)驗(yàn)

概述

富有責(zé)任心,對結(jié)果負(fù)責(zé)。

1、項(xiàng)目生命周期

以下主要針對敏捷開發(fā)

1、迭代前的準(zhǔn)備階段

需求列表收集
確定迭代需求
原型設(shè)計
需求規(guī)格說明書

2、概念與迭代計劃

工時評估

熟悉業(yè)務(wù)和技術(shù),初步評估。

制定開發(fā)計劃

計劃要和成員進(jìn)行仔細(xì)溝通,確保大家認(rèn)同

使用禪道進(jìn)行跟蹤,每個任務(wù)項(xiàng)在禪道上進(jìn)行錄入,每天研發(fā)人員填寫當(dāng)天的任務(wù)完成情況,多天的任務(wù)需要填寫任務(wù)百分比。
http://demo.zentao.net/my/

3、開發(fā)階段

開發(fā)設(shè)計文檔

編碼與代碼review

風(fēng)險管理
質(zhì)量原理

4、測試階段

單元測試,自測試

報告提測

5、發(fā)布階段

2、團(tuán)隊(duì)建設(shè)

1、團(tuán)隊(duì)文化

團(tuán)隊(duì)文化建設(shè)關(guān)乎成員工作的狀態(tài),積極性,穩(wěn)定性。團(tuán)隊(duì)活動,茶話會,關(guān)心成員生活狀態(tài)。

2、梯形團(tuán)隊(duì)

1個高級研發(fā)帶領(lǐng)2個初級研發(fā)。

3、工作替補(bǔ)

各個模塊要有主責(zé)任人,主責(zé)任人對自己的模塊負(fù)責(zé)。同時也要下意識培養(yǎng)副負(fù)責(zé)人。避免因人員請假、離職對項(xiàng)目帶來沖擊。
推薦:培養(yǎng)初級研發(fā)作為次負(fù)責(zé)人。
責(zé)任人輪換:模塊負(fù)責(zé)人跨模塊熟悉模塊內(nèi)容。

4、人員儲備

學(xué)習(xí)、預(yù)研新的技術(shù),業(yè)務(wù)。為新業(yè)務(wù)的開展儲備人才。

3、關(guān)于提升開發(fā)效率、保障項(xiàng)目交付進(jìn)度的實(shí)踐

1、層次劃分,模塊劃分要清晰——架構(gòu)設(shè)計

前后端沒有分離,無法專注于前端展示和后端邏輯的開發(fā)。同時前后端存在耦合,也不利于前端靜態(tài)資源的部署。軟件開發(fā)發(fā)展到今天,應(yīng)該不存在這種情況。

模塊的劃分不清晰,各模塊間耦合度高。對一個模塊的修改,可能影響其他模塊,對研發(fā)人員你的要求高,需要對整個系統(tǒng)熟悉后,才能需改代碼,稍不注意就會引出新的問題。

邏輯層次的劃分:controller、service、dao、bean的定義、對內(nèi)的接口、對外的接口
同一模塊的開發(fā)也要清晰的劃分層次結(jié)構(gòu),逐層調(diào)用,不跨級調(diào)用。各層要有清晰的交互對象。比如cotroller只能通過調(diào)用service層的接口,而不能直接調(diào)用dao層接口對數(shù)據(jù)進(jìn)行處理。

2、歷史系統(tǒng)

若歷史系統(tǒng)本身存在不規(guī)范,邏輯混亂的問題?;诖讼到y(tǒng)進(jìn)行擴(kuò)展開發(fā),因?yàn)楸仨毐WC對原系統(tǒng)的兼容,效率的提升是較為困難的。在一定程度的衡量后,可考慮全量重構(gòu)。

3、遵循編碼規(guī)范

編碼規(guī)范參考阿里的java開發(fā)規(guī)范。
代碼格式規(guī)范可使用idea默認(rèn)的樣式,提交前要確保格式化,保持團(tuán)隊(duì)所有人代碼格式統(tǒng)一。
重點(diǎn)強(qiáng)調(diào):面向?qū)ο缶幊痰囊粋€核心思想是封裝,組件化。方法要保持單一職責(zé),最直觀的體現(xiàn)在方法的精簡,建議一個方法的代碼行數(shù)在15行左右。

4、任務(wù)分解(WBS)、統(tǒng)籌方法、團(tuán)隊(duì)協(xié)作

找到存在前后關(guān)聯(lián),必須串行執(zhí)行的事情,其他做盡最大化的并行執(zhí)行。涉及到迭代的交叉,團(tuán)隊(duì)的協(xié)作和資源的協(xié)調(diào)。

需求規(guī)劃,需求分析等可在迭代開始前完成。正式進(jìn)入迭代后,團(tuán)隊(duì)其他成員即可一起進(jìn)入開發(fā)狀態(tài)。要不然所有人都等一兩個人,那真是大大的浪費(fèi)。

迭代的交叉:在保證研發(fā)質(zhì)量的前提下,上一迭代的研發(fā)任務(wù)完成后,在測試階段,研發(fā)人員即可進(jìn)入下一階段迭代的需求分析,設(shè)計階段。

團(tuán)隊(duì)協(xié)作:合理規(guī)劃產(chǎn)品、UI設(shè)計、前端、后端的工作任務(wù)協(xié)調(diào)。后端在編碼前,先確定接口定義,并出具mooc接口,前后同時開發(fā),同時降低聯(lián)調(diào)的時間。后端在交付接口時,要對接口進(jìn)行自測試以及測試環(huán)境測試,避免接口聯(lián)調(diào)時的出現(xiàn)各種問題。同時后端需要先出接口文檔,建議使用showdocc.com。

5、溝通與反饋

溝通分為多種形式的溝通,包括與上級領(lǐng)導(dǎo),同級組織間,與下級成員的溝通。項(xiàng)目經(jīng)理要促成這種溝通,及時了解項(xiàng)目的動態(tài)。

在招聘中體現(xiàn)為不光重視技術(shù)能力,溝通,性格也需要重點(diǎn)考察。

其形式包括

會議:高效會議,拒絕形式化,會議記錄,形成決議,問題閉環(huán)。

各項(xiàng)目階段的特定會議,比如需求宣講、需求規(guī)格(原型)評審會議;計劃制定與目標(biāo)對齊;設(shè)計評審會議;show case演示;測試報告總結(jié);項(xiàng)目復(fù)盤經(jīng)驗(yàn)總結(jié)等。

迭代開發(fā)的晨會(10分鐘左右),掌握項(xiàng)目實(shí)際進(jìn)展情況。周例會等。

報告:以郵件、周報等形式,發(fā)送每日工作階段進(jìn)展;每周進(jìn)度情況,總結(jié),問題與求助,下周計劃等。

及時反饋:主要針對項(xiàng)目成員,遇到困難或不確定因素要及時反饋,尋求幫助或者計劃調(diào)整。杜絕將問題留到最后一刻再反饋,因?yàn)檫@是影響整個團(tuán)隊(duì)計劃安排的。

6、使用工具軟件提高生產(chǎn)效率

idea
最智能,最好用的ide,沒有之一。同時還建議用默認(rèn)的快捷鍵,1周左右即可熟悉過來。

禪道

一款非常好用的項(xiàng)目過程管理軟件,可以完整的跟蹤到項(xiàng)目需求、計劃任務(wù)、缺陷管理等整個項(xiàng)目生命周期。同時具有強(qiáng)大的統(tǒng)計功能,實(shí)現(xiàn)項(xiàng)目可視化

git

版本管理工具,具有強(qiáng)大的分支管理能力,同時idea與其進(jìn)行了完美的兼容。要用好也要遵循一些使用規(guī)范。

分支規(guī)范

gitlab、碼云

遠(yuǎn)程倉庫可視化git管理工具,相當(dāng)于中央倉庫,類似于github。測試,生成等線上環(huán)境的代碼要通過它進(jìn)行統(tǒng)一管理和構(gòu)建。

gitlab可以自己在內(nèi)網(wǎng)搭建。

若可以接受公網(wǎng)代碼管理,也可使用碼云。

genkis

支持構(gòu)建、部署、自動化, 滿足任何項(xiàng)目的需要,徹底解放雙手。

比如我們代碼編寫完成后,可以通過它自動進(jìn)行代碼拉取,編譯,構(gòu)建,部署。讓開發(fā)人員專注于業(yè)務(wù)開發(fā)。

7、使用成熟框架

Java開發(fā)發(fā)展到今天,在最近的10年里,發(fā)生了翻天覆地的變化。從最初的jsp+java,到MVC前后分離,struts,Struts2框架的出現(xiàn),再到Spring,SpringMVC的出現(xiàn),再到今天的SpringBoot,微服務(wù)解決方案的SpringCloud等框架的出現(xiàn)。每個框架的出現(xiàn)都是為了解決以前的一些痛點(diǎn),提升研發(fā)的效率,讓研發(fā)人員不再糾結(jié)一堆混亂的邏輯,繁雜的配置。從而解放出來關(guān)注自己的業(yè)務(wù)。

所以我們要用先進(jìn)的框架,給自己省事,體驗(yàn)先進(jìn)框架給我們帶來的絲滑的感覺。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容