基本上有兩種設計系統的方法。有什麼優點和缺點?我應該什麼時候使用哪個?我應該結合這些方法嗎?怎麼樣?自上而下或自下而上的設計?
回答
粗略地說,自上而下的來自問題空間成子問題的分解,而自下而上的來自組織解空間的部分成更大的塊。
爲了能夠有效地使用自上而下的方法,您需要對問題有非常深刻的理解,即需要掌握堅實的需求。爲了自下而上有效,你需要解決一個衆所周知的「標準」問題,但是在你做對之前確切的組裝可能需要一些實驗。
對於這個問題,您應該閱讀Parnas的輝煌紙A rational design process and how to fake it。答案是:酌情使用兩者。完成後,將所有內容看起來像(在您的規範,設計文檔和用戶文檔中),就好像您完成了自上而下的任何操作一樣。
非常感謝你給出了一個很好的答案,並鏈接到該論文 – 2010-04-29 13:04:14
+1:對於«當你完成後,讓它看起來就像你已經完成一切都自上而下» – ZJR 2010-05-02 20:46:40
您還應該看看敏捷社區的「切片蛋糕」原則。這個原則迫使您專注於爲您的應用程序的每次迭代添加業務價值。您嘗試設計和實現應用程序的垂直切片,並提供它,然後集中在一個片等
下面是詳細介紹了http://blog.energizedwork.com/2005/05/slicing-cake.html
謝謝,我知道迭代,我想難的是如何切片蛋糕,以便添加另一個切片不會像添加幾個以前那麼辛苦。 – 2010-05-02 21:18:51
我覺得你的問題值得長期原則鏈接並闡述了答案。 我建議讀馬丁·福勒的一篇舊文(CFR。「爲設計死了嗎?」),它講述的前期設計和敏捷技術(http://martinfowler.com/articles/designDead.html)
我的經驗就是始終模塊的藍圖架構關係,系統組件之間的交互。有了這個藍圖(在某些項目中可以是高層次),我開始設計/開發模塊/組件。其中一些還可以自下而上開發。
良好的參考總是讚賞:) – 2010-05-24 09:59:14
- 1. 自上而下DP自上而下DP
- 2. 「自上而下的設計討論」
- 3. 自上而下PageViewController
- 4. 自上而下和自下而上解析技術的區別?
- 5. 自上而下或buttom向上?
- 6. 動態規劃:自上而下與自下而上比較
- 7. JQuery手風琴 - 自下而上替代自上而下
- 8. WPF邏輯樹 - 自下而上與自上而下
- 9. 自上而下VS自下而上 - 規範化
- 10. ACL組結構:自上而下還是自下而上?
- 11. 採用自下而上或自上而下搜索從分層數據
- 12. 自下而上歸併
- 13. 摺疊DIV自下而上
- 14. CSS3轉換自下而上
- 15. Android Tabs自下而上
- 16. php樹自下而上
- 17. 自下而上Makeheap算法
- 18. Pygame自上而下滾動
- 19. 自上而下滑塊
- 20. jQuery砌體自下而上
- 21. IOS自下而上動畫
- 22. 自上而下佈局
- 23. 數據倉庫 - 關係/維度建模VS自下而上/自上而下設計之間的區別
- 24. ASP.NET:Web服務設計方法。自上而下和自下而上。有什麼不同?
- 25. 語法:自上而下和自下而上之間的區別? (實施例)
- 26. 如何閱讀PostgreSQL解釋:自上而下還是自下而上?
- 27. 在Angular 2中需要組件,自上而下還是自下而上?
- 28. JavaScript中的默認事件順序是什麼?自上而下或自下而上?
- 29. 如何確定Windows Media Foundation接收器作家是否需要自下而上或自上而下的圖像?
- 30. 建立一個自下而上的堆
這是一個簡短的問題,但我懷疑答案會很長!... – 2010-04-29 12:51:40
我更喜歡從左到右的設計。 – 2010-04-29 12:51:56
@Mitch小麥可能,也部分回答或重定向到一些書籍/論文/文章/博客就足夠了:) – 2010-04-29 12:59:41