《IT項目管理與職業生涯規劃大型論壇》中國.蘇州
免費報名:http://www.hdb.com/party/b8an2.html?hdb_pos=manager_info
在我轉産品之前,雖然我混迹IT行業,做過實施和售前,也跟研發打過交道,但我一直都不知道一個軟件是怎麽開發出來的。直面客戶,扛着壓力,在對程序一無所知的情況下,很容易産生一些想法:爲什麽産品的結果是這樣?爲什麽産品開發的速度不能再快一點?爲什麽程序員經常加班?他們都在忙些什麽?測試是不是就是每天忙着點點程序看會不會報錯?
所以本文面向的對象是,适合和我當初一樣對軟件開發一無所知的IT從業者(或者有興趣者),另外也歡迎我的程序員小夥伴和測試小夥伴,因爲你們也懂這個過程,所以我們可以作更多探讨,這個過程中我們可能會發現大家對同一件事的理解并不一緻,也許經過碰撞,我們能共創智慧的果實。
一、開發流程圖
爲使流程更清晰,本圖省略了各環節的評審,如有更好的表現形式,歡迎提出建議。
二、過程産物及要求
本表主要列出開發階段需要輸出的過程産物,包括産物名稱、成果描述、負責人及備注,即誰、在什麽時間、應該提供什麽内容、提供内容的基本方向和形式是什麽。
項目啓動階段
産物名稱成果描述負責人
調研文檔了解項目背景,了解項目幹系人目标方向産品經理
團隊組建确認團隊人員及配置産品總監
業務梳理明确項目的目标、角色、各端口及模塊産品經理
需求階段
産品原型産品的線框圖産品經理
需求概要基于線框圖,作技術評估,達成業務理解的一緻性研發工程師
項目裏程碑确認項目重大時間節點研發項目 經理
項目開發計劃梳理各階段、各端口的開發計劃研發項目經理
項目任務分解表将計劃分配到團隊研發項目經理
設計階段
界面效果圖及标注基于線框圖,作效果圖,須适量考慮交互内容UI設計師
UI設計規範在UI界面基礎上,輸出主要界面的設計規範UI設計師
需求規格基于效果圖,明确業務實現細節,消除對最終成果理解的不一緻研發工程師
概要設計功能實現的可視化,有助于理清思路,減少技術盲區和低級缺陷,實現并行開發,提高效率研發工程師
通訊協議通信協議是指雙方實體完成通信或服務所必須遵循的規則和約定研發工程師
表結構設計确認要建的數據庫表及其表結構研發工程師
開發階段
産品代碼代碼
測試階段
測試用例明确測試方案,包括測試模塊、步驟、預期測試工程師
測試結果報告輸出測試結果測試工程師
用戶手冊系統操作手冊測試工程師
常規文檔
項目周報每周開發内容及下周開發計劃研發項目經理
測試周報每周測試内容及下周測試計劃測試工程師
評審會議紀要評審的過程文檔整體團隊
三、過程說明
項目啓動
産品經理和項目幹系人确定項目方向,産品型項目的幹系人包括公司領導、産品總監、技術總監等,項目的話則包括客戶方領導、主要執行人等。
公司領導确認項目組團隊組成,包括産品經理、研發項目經理、研發工程師、測試團隊等。
明确項目管理制度,每個階段的成果産物需要進行相應的評審,評審有相應的《會議紀要》;從項目啓動起,研發項目經理每周提供《項目研發周報》;測試階段,測試工程師每周提供《項目測試周報》。
産品經理進行需求調研,輸出《需求調研》文檔。需求調研的方式主要有背景資料調查和訪談。
産品經理完成《業務梳理》。首先,明确每個項目的目标;其次,梳理項目涉及的角色;再來,每個角色要進行的事項;最後,再梳理整個系統分哪些端口,要有哪些業務模塊,每個模塊再包含哪些功能。
需求階段
進入可視化産物的輸出階段,産品經理提供最簡單也最接近成品的《産品原型》,線框圖形式即可。在這個過程中還可能産生的包括業務流程圖和頁面跳轉流程圖。業務流程圖側重在不同節點不同角色所進行的操作,頁面跳轉流程圖主要指不同界面間的跳轉關系。
産品經理面向整個團隊,進行需求的講解。
研發項目經理根據需求及項目要求,明确《項目裏程碑》。根據項目裏程表,完成《産品開發計劃》,明确詳細階段的時間點,最後根據開發計劃,進行《項目任務分解》,完成項目的分工。
研發工程師按照各自的分工,進入概要需求階段。《概要需求》旨在讓研發工程師初步理解業務,評估技術可行性。
設計階段
UI設計師根據産品的原型,輸出《界面效果圖》,并提供界面的标注,最後根據主要的界面,提供一套《UI設計規範》。UI設計規範主要是明确常用界面形式尺寸等,方便研發快速開發。UI設計常涵蓋交互的内容。
研發工程師在界面效果圖,輸出《需求規格》,需求規格應包含最終要實現的内容的一切要素。
研發工程師完成《概要設計》、《通訊協議》及《表結構設計》,及完成正式編碼前的一系列研發設計工作。
開發階段
研發工程師正式進入編碼階段,這個過程雖然大部分時間用來寫代碼,但是可能還需要進行技術預研、進行需求确認。
編碼過程一般還需進行服務端和移動端的聯調等。
完成編碼後需要進行功能評審。
測試階段
測試工程師按階段設計《測試實例》,未通過的流程測試提交至Jira,分配給相應的開發人員調整。
研發工程師根據測試結果修改代碼,完成後提交測試,測試通過後完成。
測試工程師編寫《測試結果報告》,包括功能測試結果、壓力測試結果等。
測試工程師編寫系統各端口的《操作手冊》、維護手冊等。
系統上線
與客戶或者上級達成一緻後,系統進行試運行,穩定後上線。
最後,以上内容僅限于我所在公司,不代表絕對專業意見,不知道其他行業的IT小夥伴和我們是否一樣呢,歡迎與我交流
本文轉自:人生如輕塵栖弱草
以上内容爲原創,轉載請标明來源,謝謝。