首先,軟件app開發來自于一個創意(idea),就是有一個做什么的想法,然后大家坐下來開個會討論一下,來場頭腦風暴,確定主要功能,形成需求文檔,軟件開發文檔中該有些什么功能,一一列舉,以后就按照這個需求去做。
其次,有了需求文檔,目標清晰很多,但還是不夠,這時需要架構師來進行概要設計,軟件分成不同的模塊,再具體到更細節的部分,如數據庫表的編寫。產品經理畫出原型圖,設計或美工根據原型設計UI并切圖,交互設計師設計頁面交互,前端編寫頁面,后端編寫接口供前端調用(ps:小一點的公司可能一人身兼多職)。編碼只是其中的一部分,前期設計好了,那就是體力活。
最后,寫好部分功能后就開始測試,有測試人員就專職測試,沒有就自己人體驗。主要是發現bug并解決bug,修改無明顯問題后交付。
完整的軟件開發步驟:
首先是市場調研,發現用戶有這樣的需求。然后產品經理去整理需求,將用戶的需求轉換成文檔,比如BRD(產品需求文檔), MRD(市場需求文檔), PRD(商業需求文檔)這類的。
如果公司決定做這個需求了,那就開始排期開發,產品經理會先把PRD文檔給到開發(PR)和測試(QA)。開發和測試明白需求后就干活,開發人員做開發,測試人員寫測試用例。
軟件開發平臺" width="550" height="366" title="軟件開發平臺" align="" />
開發人員開發完后會提交測試,這時候測試人員會按照PMD的說明去驗證程序是不是滿足文檔的要求,如果有不滿足的就反饋給開發人員進行修改,直到程序滿足文檔的說明,然后產品經理再驗證。
開發完后的軟件app項目會交給運維,運維將項目部署到服務器上后QA還需要去驗證線上的項目是不是正常,不正常的話需要進行回滾到上一個版本,修復問題后再發布(所以一般都是做灰度發布,就是老版本的項目和新版本同時運行,用戶還是訪問的老版本服務,QA卻能訪問新版本服務)。發布完成后這個開發迭代就算完成了。