接上文,北京北大青鳥學校學術部提供
14. 合理安排項目計劃
在軟件開發中沒有捷徑可以走。縮短你的在需求分析上花的時間,結果只能是開發出來的軟件不能滿足用戶的需求,必須被重寫。在軟件建模上每節省一周,在將來的編碼階段可能會多花幾周時間,因為你在全面思考之前就動手寫程序。你為了節省一天的測試時間而漏掉了一個bug,在將來的維護階段,可能需要花幾周甚至幾個月的時間去修復。與其如此,還不如重新安排一下項目計劃。
15. 別信賴任何人
大部分程序員認為他們自己比其他人更優秀,他們可能拋棄你設計的模型而用自己認為更好的。 只有良好的溝通才能解決這些問題。要明確的是,不要只依靠一家產品或服務提供商,即使你的公司(或組織)已經在建模、文檔和過程等方面向那個公司投入了很多錢。
16. 證明你的設計在實踐中可行
在設計的時候應當先建立一個技術原型, 或者稱為“端到端”原型。以證明你的設計是能夠工作的。你應該在開發工作的早期做這些事情,因為,如果軟件的設計方案是不可行的,在編碼實現階段無論采取什么措施都于事無補。技術原型將證明你的設計的可行性,從而,你的設計將更容易獲得支持。
17. 應用已知的模式
目前,我們有大量現成的分析和設計模式以及問題的解決方案可以使用。一般來說,好的模型設計和開發人員,都會避免重新設計已經成熟的并被廣泛應用的東西。
北京北大青鳥學校建議大家多看看這個網站:http://www.ambysoft.com/processPatternsPage.html 收藏了許多開發模式的信息。
18. 研究每個模型的長處和弱點
目前有很多種類的模型可以使用。用例捕獲的是系統行為需求,數據模型則描述支持一個系統運行所需要的數據構成。你可能會試圖在用例中加入實際數據描述,但是,這對開發者不是非常有用。同樣,數據模型對描述軟件需求來說是無用的。每個模型在你建模過程中有其相應的位置,但是,你需要明白在什么地方,什么時候使用它們。
19. 在現有任務中應用多個模型
當你收集需求的時候,考慮使用用例模型,用戶界面模型和領域級的類模型。當你設計軟件的時候,應該考慮制作類模型,順序圖、狀態圖、協作圖和最終的軟件實際物理模型。程序設計人員應該慢慢意識到,僅僅使用一個模型而實現的軟件要么不能夠很好地滿足用戶的需求,要么很難擴展。
20. 教育你的聽眾
教給你開發人員基本的建模知識;否則,他們會只看看你畫的漂亮圖表,然后繼續編寫不規范的程序。另外, 你還需要告訴你的用戶一些需求建模的基礎知識。給他們解釋你的用例(uses case)和用戶界面模型,以使他們能夠明白你要表達地東西。當每個人都能使用一個通用的設計語言的時候(比如UML-譯者注),你的團隊才能實現真正的合作。 (北京北大青鳥學校,未完)