web項目開發的(de)一般流程
發表時(shí)間:2018-7-16
發布人(rén):融晨科技
浏覽次數:61
1.需求确定
2.分析與設計
(1)架構分析與設計
(2)業務邏輯分析
(3)業務邏輯設計
(4)界面設計
3.開發環境搭建
4.開發-測試-開發-測試
5.文檔編纂
各個(gè)階段過程都是(shì)有文檔的(de),需求有需求的(de)文檔,設計有設計的(de)文檔,測試也(yě)有測試的(de)文檔.
首先來(lái)看需求确定:
需求确定
通過各種手段确定系統的(de)功能與性能
功能:用戶維護、物料維護….
性能:可同時(shí)支持 n 個(gè)并發訪問,并且響應時(shí)間不(bù)高于(yú) m 毫秒…
手段:
頭腦風暴 (brain storm)
會議
詢問
原型 – 界面原型、業務原型…
本階段是(shì)項目開發的(de)最重要(yào / yāo)階段
在(zài)web項目中,通常界面設計會在(zài)本階段進行
分析與設計
一:架構分析與設計
邏輯架構
3層架構、n層架構…
MVC…
Model 1 or Model 2
…
物理架構
Web服務器的(de)分布
數據庫服務器的(de)分布
…
技術解決方案的(de)确定
Java / .NET
Open Source / 商業
…
二.業務邏輯分析:(使用UML畫出(chū)活動圖啊,流程圖等)
業務邏輯分析
根據需求分析業務邏輯
有哪些人(rén)會使用本系統
他(tā)們會使用本系統做什麽
通常他(tā)們使用本系統的(de)步驟是(shì)什麽樣的(de)
會有哪些明顯的(de)類來(lái)支撐本系統的(de)運行
會有哪些不(bù)同的(de)提示會返饋給用戶
…
本階段與需求的(de)确定密切相關,通常在(zài)确定需求的(de)時(shí)候就(jiù)會進行相關的(de)分析
在(zài)此階段可以(yǐ)用UML圖畫出(chū)高層用例-每個(gè)功能的(de)用例-編寫用例文檔
三.業務邏輯設計
業務邏輯設計
根據需求的(de)分析來(lái)确定具體的(de)類
确定類的(de)屬性
确定類的(de)接口(方法)
确定類之(zhī)間的(de)關系
确定用戶操作流程在(zài)設計上(shàng)的(de)反映
進行數據庫的(de)設計
不(bù)同的(de)項目步驟可能不(bù)盡相同
…
四.界面設計
界面設計
設計系統的(de)界面風格
顔色、style
設計系統的(de)具體“模拟”界面
能夠從頭走到(dào)尾
方便進行需求的(de)确定
方便JSP程序員的(de)開發
…
開發環境搭建:
開發環境搭建
開發工具的(de)确定
配置管理工具的(de)确定
測試工具的(de)确定
文件服務器/配置服務器等的(de)确定
…
開發-測試-開發-測試
開發-測試-開發-測試
按照設計進行開發
迅速開發原型
進行叠代開發
提早進行測試
單元測試(白盒測試)就(jiù)是(shì)知道(dào)代碼,知道(dào)如何實現的(de)人(rén)進行的(de)測試
黑盒測試(功能性測試、驗收測試)
性能測試
易用性測試
…
DRP的(de)開發一個(gè)小流程如下:
分析階段:
一:畫用例圖分爲(wéi / wèi)高層用例圖和(hé / huò)功能用例
二:對每一個(gè)功能用例進行用例文檔的(de)編寫:(模闆如下)
這(zhè)裏對修改密碼這(zhè)個(gè)功能用例進行分析
【目的(de)】
用戶可以(yǐ)修改自己的(de)密碼
【輸入】
舊密碼
新秘密
确認密碼
【輸出(chū)】
正常情況:輸出(chū)修改密碼成功信息
異常情況:輸出(chū)相關錯誤信息
【約束】
前置條件:用戶成功登錄到(dào)系統
後置條件:無
特殊約束:
爲(wéi / wèi)了(le/liǎo)更好的(de)保護用戶口令,以(yǐ)“*”方式顯示
用戶輸入的(de)密碼至少6位
修改成功後,待該用戶下一次登錄時(shí),修改生效
【處理流程】
三:處理流程用UML圖的(de)活動圖來(lái)畫.
四:界面的(de)設計和(hé / huò)畫界面
五:邏輯架構設計等
六:數據庫設計 :
如何設計表?
a) 發現領域中的(de)概念,理清領域中概念之(zhī)間的(de)關系,将其映射成表
b) 盡量遵循數據庫設計範式
i. 第一範式:有主鍵,具有原子(zǐ)性,列不(bù)可分隔
ii. 第二範式:完全依賴,沒有部分依賴
iii. 第三範式:沒有傳遞依賴
c) 主鍵設計最好采用單一主鍵,最好不(bù)要(yào / yāo)采用複合主鍵,盡量使用沒有業務語義的(de)字
段作爲(wéi / wèi)主鍵(如:Oracle的(de)Sequence來(lái)維護一個(gè)主鍵),主鍵一般建議使用數值性,
會提高檢索效率
d) 關于(yú)冗餘字段的(de)問題,應該根據需求的(de)具體情況是(shì)否加入
e) 最好加入外鍵約束(在(zài)開發階段最好不(bù)要(yào / yāo)設置外鍵約束,運行階段加入外鍵約束)
f) 如果做通用性産品,最好不(bù)是(shì)使用數據庫特性的(de)功能,除非特殊情況
g) 如果數據量非常大(dà),并且頻繁的(de)根據相關字段查詢,最好建立索引
注意點:資金流,物流,信息流,如一級分銷商到(dào)二級分銷商那就(jiù)是(shì)一個(gè)物流,資金怎麽流向的(de).從這(zhè)兩個(gè)得到(dào)我們的(de)信息流.所有的(de)信息管理系統幾乎都是(shì)這(zhè)樣的(de).
七:到(dào)了(le/liǎo)開發階段了(le/liǎo),那麽先初始化數據庫裏面最基礎的(de)數據