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