2010-07-29 57 views
2

我遇到了一個新項目的問題,它開始難以在我的腦海中包含整個事物並將其移動。雖然我仍然爲大部分編程工作做到這一點,但我知道物理手段可以幫助很大。什麼是你最喜歡的方法來概念化一個項目?

你用什麼方法?

3個想法,我能想到的是:

  1. 使用保麗龍球,以顯示類關係
  2. 使用白板繪製出出主意
  3. 使用某種軟件(也許更多?)這有助於繪製出您的想法

回答

0

白板/紙張。

通常紙張 - 白板有被同事消滅的習慣!

我已經嘗試過多次使用某種軟件來幫助設計/規劃階段,但是我還沒有找到使這項工作成爲可能的軟件。

0

通讀完整的需求(PRD)。可以寫下你的解釋(ERD)。 然後取一個白板/紙,

  • 先繪製高層次塊爲 項目。
  • 然後你可以擴大這些塊 個別進一步簡化它們。
  • 不斷重複這些,直到你得到全部 從要求 覆蓋的細節。

可能有一些相同的軟件,但從來沒有使用過。

0

我曾經在一家公司實習過,我們會在一張紙上寫上班名,並將它們貼在我們的額頭上。純粹的愚蠢。你只有兩條手臂來表示交互,並且通常沒有足夠的開發者來代表你所有的類。我很驚訝,因爲缺乏人才,我們沒有與上帝的對象(閱讀你的反設計模式)結束!

白板和可擦寫標記(不是Sharpie,我以前見過這個錯誤!)是我走的路。理解UML表示法在團隊中工作時有很大幫助,因爲您都在使用和理解相同的符號。只是不要進入關於正確表示法的爭論,因爲這浪費寶貴的時間!

最終,您可能希望將其移入可爲您的代碼生成/更新框架框架的程序。有時你的IDE已經足夠了(Visual Studio類圖),有時你可能需要專用軟件插入IDE(Rational Software Architect w/Eclipse)。

作爲一個關於如何去解決這個問題的忠告......確保你(以及你可能擁有的任何其他隊友)對這些用例有一個全面的理解。只要您和您的團隊全面瞭解您的軟件的使用方式,就不一定需要記錄這些內容。如果你對你的工作非常認真,你會記錄下這些。另外,不要以爲這一切都必須按順序完成。像開發一樣,軟件設計是迭代的......儘管這並不是說這個過程應該是完全隨機的和非結構化的。用例會給你提示你需要創建的類。例如,如果「用戶註冊帳戶」是一個用例,則您已經知道您需要一個類來表示一個帳戶。如果創建帳戶時,您意識到用戶可以添加帳單地址和送貨地址,每個地址都有街道名稱,郵政編碼(加拿大ftw)和電話號碼,您將知道您需要Address類。

相關問題