㈠ 一個網站的開發流程是怎樣的
在這里,我們拋開商務層的項目識別、項目論證、投標、簽合同等環節,僅從軟體項目的生命周期開始談。
一個完整的網站項目生命周期一般分為可行性分析(計劃)、需求分析、軟體設計(概要設計、詳細設計)、編碼(含單元測試)、測試、運行維護等幾個階段。下面就這幾個階段做簡要介紹。
一、可行性分析
這部分主要是分析公司技術可行性、人力資源儲備、財務儲備等方面的分析。由於對我們開發人員關系不大,這里暫略。
二、需求分析
這部分開始就是網站建設的重點工作,通常被認為是一件最困難的工作。需求分析概括來講就是這個網站應該「做什麼」,因該具有什麼樣的功能,解決什麼樣的問題。通常是開發組人員和用戶多次交流以便了解用戶的需求。比如用戶需要網站首頁展示什麼東西、用戶可以注冊賬號、可以充值會員、可以放視頻等需求,反復確認記錄後按某種模板整理成冊。期間伴隨著一些文檔的產生如《需求調研計劃》、《需求規格說明書》等。但軟體項目有一個特點就是「漸進明細」,意思就是用戶不可能在一開始就確定項目的需求,需要在項目完成的過程中逐步明確。於是才有了與用戶各種扯皮的現象,「需求又改變了」這也是大多數程序員工作抱怨和調侃的來源。
三、軟體設計
需求完成後,就開始網站設計了。這一部分主要做網站概要設計、網站詳細設計以及資料庫設計等工作。內容主要就是確定網站的運行環境、技術架構以及根據需求理出系統功能結構,並初步描述出每個功能的設計規則及流程,初步設計資料庫表等。
四、編碼
這一環節就是程序員接觸得最多的內容了,就不多講了。大致就是根據項目經理劃分的模塊為每個人分配開發任務,並定期評審,定期給用戶演示交流以確保項目實際進度與用戶需求不會偏差太多。
五、測試
由於軟體項目越來越大,IT崗位中單獨衍生出測試人員這一細分崗位。測試環節最好由第三方測試,因為如果項目團隊成員自己來測試會下意識的往正確的業務邏輯走,從而不能很好的測出系統的缺陷。測試環節按不同的手段又分為黑盒測試、白盒測試、靜態測試、動態測試、壓力測試等。測出的缺陷提交給開發團隊修正。
六、運維
系統上線後就進入運行維護的階段。沒有哪個系統上線後就是完美的,這也是運維存在的必要性。能多數情況下在企業和客戶簽訂合同的時候會包含一定時間的免費運維期,比如兩年,兩年後運維需另收費。運維由專人負責。運維的主要目的是解決實際使用中產生的bug、修改小的變更需求、維護伺服器穩定等。