先來聽一個故事:html
二戰期間,英國國防部發現參戰的飛機不免捱上高射機槍的槍子兒,受限於飛機重量和成本,他們只能在一處安裝裝甲加強防護力。可是在位置選擇上犯了難:應該把裝甲裝在什麼位置?java
數學家對戰鬥中返回的戰機做了一項統計,發現39%的彈孔在機翼上,60%在機身,1%在發動機部位。因而他們給出答案:裝在發動機部位。git
國防部官員們不得其解:不應是彈孔最多的機身上嗎?數學家說,統計已經很清楚了,發動機中彈的飛機,大部分都飛不回來了。我的認爲成功不可複製,失敗或可避免;全部的成功都不是必然的;成功都同樣,失敗各不一樣;失敗的項目也許值得你警醒。程序員
不久前遇到一個比較棘手的軟件項目,爲公司帶來很大的麻煩,爲了不你們也重蹈覆轍,如今將我的心得與經驗教訓總結以下:github
不在多,在精,在強,每一個人能獨當一面,以人爲本;智力密集型工做單我的的水平比勞動密集型工做更加突出。數據庫
避免過快的人員更迭,檢討公司制度。編程
軟件開發團隊要穩定發展,他們的成功依賴於高效的信息傳遞和領導能力。精進高效的團隊是公司最寶貴的財富。避免外行管理內行。架構
有目的有計劃的作事情,項目管理者監控項目計劃進度,進度的把控比制定工做計劃更難。項目計劃作出詳細合理的進度表,提升項目經理的計劃意識,採用進度和計劃嚴格一致,增強對計劃、進度進行有效的評估。作出進度滯後的應對辦法,把握主次。不要爲計劃而計劃,把握粒度。框架
如功能設計思路、類的命名、窗體命名、變量命名、數據庫命名、註釋、風格、主色彩、輔助色彩等。
勤於整理代碼與文檔,複用;對於開發者來講複用是終極目標,複用的最大敵人是變化。
如git,開源免費的有coding.net、阿里雲等。
世界上沒有任何事情是絕對成功的,要作好項目失敗的準備,作最壞的打算,盡最大的努力。
含需求、設計、編碼、測試、進度管理等功能。
1. 需求管理:項目的需求變動,跟蹤,控制
2. 資源管理: 項目的可利用的資源(人力,物力,財力)
3. 計劃管理: 包括成員管理和權限分配,日程排定,工做時間管理,里程碑設置
4. 進度管理: 日曆,工做流,項目路線圖和Gantt甘特圖
5. 測試管理: 項目軟件缺陷Bug狀態跟蹤,反饋
6. 文檔管理: 發佈文檔文件,存儲文件,集成源代碼管理與git,svn
7. 信息管理: 活動統計報表,項目報表的導入和導出功能,信息篩選,預警和郵件提示
8. 共享管理:技術分享,團隊新聞,Wiki和論壇等功能
0、ZenTaoPHP 輕量級的PHP項目管理開發框架,以開源的項目管理軟件
下載:http://www.zentao.net/download
1.Dotproject 基於php 免費開源
2.Redmine 基於Ruby和Rails框架 免費開源
官網:http://www.redmine.org/
在線演示站點:http://demo.redmine.org/
3.Trac 基於Python 表明有FogBugz 免費和商業
官網:http://trac.edgewall.org/
4.MS Project 微軟項目 C/S架構 項目單一,功能少
官網:http://www.microsoft.com/project/en/us/default.aspx
5.Jira + Confluence 基於Java 收費模式 包含Bug追蹤和Wiki
官網:http://www.atlassian.com/software/jira/
在線演示站點:http://jira.fangwai.net/secure/Dashboard.jspa
6.ActiveCollab 基於php 曾經開源
官網:http://www.activecollab.com/
7.Basecamp 基於商業運做模式 曾經項目管理界老大
官網:http://basecamphq.com/
8.BugFree 國產軟件 ,使用MS的軟件開發流程規範
9.XPlanner 採用極限編程開發(XP)流程
官網:http://www.xplanner.org/
不要作先後沒有聯繫的項目(也就是公司沒有任何能夠複用的資源)、謹慎被屢次轉包的項目、小而精的項目、與現金、人事有關的項目。
對於大而全的項目把握住用戶的痛點,找出系統的核心需求,分期,分批開發; 關鍵需求與用戶共同畫出產品原型。
制定有效的溝通制度,提升溝通意識,採起多方面的溝通方法,不要單一的口頭溝通,採起有效的書面溝通,好比郵件、文件傳遞等方式,對於未及時收取郵件形成的損失責任歸屬。除了郵件外,重要文件須要電話提醒和回執等。與客戶談需求時能夠錄音、錄視頻、拍照等多種手段
有時客戶並不知道本身要什麼,把能夠分析出解決辦法後讓客戶選擇
麻雀雖小五臟俱全,小項目謹慎選擇
完成一部分、測試一部分、驗收一部分;迭代。。。迭代。。。
可賣服務,賣產品,賣技術,賣運維等,換一種掙錢的思路
項目不忙時組織學習,寫本身的技術博客,分享知識,關注各大技術論壇,如博客園,csdn,javaeye;有博客的程序員通常都不會太差;要實實在在的技術,不要被一些線下的活動拖累,名頭很大的人不必定適合你。
系統中包含基礎功能;簡單功能應該經過平臺自動生成,加快項目進度
關注開源社區,如github,oschina,codeplex,儘可能讓項目去匹配公司現有的資源,警戒白手起家的項目
更換系統架構,但也不推薦每天吃老本,建議隔代升級。不要跟風,技術選擇項是不要考慮如今流行什麼,而要考慮須要什麼,適合什麼。 通常的客戶對你用什麼技術實現是不關心的。
天下功夫惟快不破
請猛擊:《一種絕對提升開發水平的方法》
輪流、30分鐘、每一個人都有份、先準備並整理成博客筆記、分享乾貨
包括團隊成員的配備問題、項目計劃控制和協調機制生搬硬套PMP,不符合公司企業文化和體制機制、團隊老是關注項目的忙碌而不是項目的成果、組織沒有明確的受權,權責不匹配、喜歡照搬過去的項目經驗來管理如今的項目,忽視了項目的惟一性、缺少高層領導的支持和投入;
包括項目經理不具有業務知識,行業知識和項目知識,缺少軟技能,面對壓力沒法作出關鍵決策,沒法看到問題的本質,沒法從全局提出系統性解決方案從而推進項目的發展,不能隨時就環境作出調整等;
包括沒有總體思路、對項目各個組成部分以及他們之間的聯繫沒有總體把握、軟硬件沒法進行總體的思考、考慮問題常常是頭疼醫頭,腳疼醫腳、人爲的把項目進行分段,從而沒有預見項目的總體性風險等;
脫離項目實際,濫用各類管理工具、過度重視工具而忽視團隊的建設、爲了管理而管理忽視項目成果、項目經理不關注項目人員的心理素質和能力而一味強調管理技巧和工具、用到的管理太複雜或者太簡單而不適合具體的項目、老是認爲項目管理是一成不變,企圖一套流程打天下的、只關注項目報告而無視項目的實際狀況;
5.3.一、沒有良好的溝通渠道設計;
5.3.二、不主動去激發用戶參與項目的熱情;
5.3.三、靠主觀感受盲目制定項目計劃;
5.3.四、在不瞭解項目具體狀況下對項目盲目下定義;
5.3.五、計劃資源把一切想的太美好,主觀性強;
5.3.六、靠我的感受來分派工做而不是客觀的評估每一個人的能力匹配程度;
5.3.七、對變動沒有實質管理,更可能是體如今文檔上而不是實際工做中;
5.3.八、胡亂控制項目節點,而不是從項目特色自己出發;
5.3.九、缺少對項目失敗的定義以及評估失敗風險;
5.3.十、項目已經失敗的客觀現實面前缺少終止項目的管理機制;
5.3.十一、過度看重項目的當前經濟價值,利令智昏;應該注意項目的附加值,複用價值等。
5.3.十二、項目開發週期多數狀況被低估
總之若是您增強項目管理意識、注意團隊建設,規範開發過程、找準我的與公司的定位、不斷提高開發技術與積累資源、善於總結失敗教訓,這樣將大大提升您項目的成功率。
成功不可複製,失敗或可避免;
逃避不必定躲得過,面對不必定可怕;
時間花在哪裏,你的成就就在哪裏;
固然,項目管理在現實中存在多樣性與複雜性,我說的也許有些不對,歡迎你們補允,我隨時添加,謝謝!