標籤:
背景IT已經成為當代企業必不可少的競爭手段,從無到有到標配,可以說以後不懂IT的就是文盲這句一點也不過,而軟體開發是個複雜工程,零零碎碎各種理論工具和技巧,一言難盡。本文意在言簡意賅,簡述軟體開發流程當中重要的環節,以此思路作為明燈,以更好地思考和完成工作。 開始
IT業務系統的開發(APP、網站,大中小型業務系統等等)生命週期大致可用一張圖簡單概括下:
無論那個環節都互相影響,產品和開發相對更緊密一些,運營相對獨立,不斷迭代產品直到產品周期終結
需求
產品是來解決問題的,所以做產品之前要做需求分析,需求分析影響產品的設計和開發,所以很重要,應該力求保證做該做的事。如下:
- 使用者的需求:源於廣大使用者的需求,如小米有了MIUI後,各種系統的改進和建議就上來了,匯聚成新功能和最佳化需求;
- 頭腦風暴:幾個人圍在一起突發奇想(喬布斯和庫克坐一起談笑說做一部手機:於是有了"談笑風(phone)生")
- 需求文檔:通過最終分析論證形成文檔(產品我想做這些東東,解決什麼問題,但是只是記錄願景,具體細化在產品設計環境)
設計
根據需求文檔定下來的需求設計產品的過程,並且迴圈迭代產品,直到產品生命週期終結,這個不但適用軟體產品,其他產品也是適用的,如一個遊戲APP的周期可能就1到2年時間,iphone一般是1年一型號),產品設計一般有如下步驟:
- 功能設計(功能模組,商務邏輯,流程圖等)
- 原型設計(UI風格,基本介面元素,產出物:PSD檔案等物料)
- 互動設計(控制項樣式,功能跳轉,效果,產出物:互動UI圖)
- 產品設計文檔:以上產出物的匯總文檔,與物料一同交由開發人員進行產品開發
設計必須考慮到每個細節:如介面表達,功能跳轉,各種邏輯情況等
開發
根據設計文檔實現產品功能,技術是複雜的,但是也是有條理的,可以按一下步驟循序漸進
- 讀懂需求文檔和產品設計文檔(有問題可以修訂下最終版)
- 確定技術要點(如各種實現架構,系統架構,各種指標,技術選型等等)
- 萬用群組件設計(如APP開發:UI(樣式設定,基礎控制項等),架構(網路,工具庫等),資源管理(字元,圖片,聲音))
- 功能開發(開發工具、技術運用,技巧等)
- 測試(單元測試,整合測試等)
- 上線 (跟蹤反饋,需求完畢)
開發應盡量最大限度配合設計和需求,遇到不合理或者更好的實現應及時提出,避免走彎路
運營
推動產品的過程,如使用者活躍度,體驗滿意度,盈利能力等,暫不詳細講述。
最後
- 專案管理(關鍵字:計劃,甘特圖,參與人天,裡程碑,deadline,上線)
- 文檔能力(一份言簡意賅的清晰的文檔能減少資訊孤島和溝通成本)
軟體開發雜談之從需求到上線---valen