<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    設計文檔?

    做軟件以來,這個話題一直是自己很郁悶的一個地方,我們來看看軟件開發的過程,軟件開發的過程無論是采用傳統的瀑布、如今的迭代等方式都是一個需求-->設計-->實現的過程,在這整個過程當中,每個環節都要有個完成的標識,并且需要成為下一環節的前置條件、參考依據,這個時候通常的做法都是通過提供文檔的方式,但是在我所經歷的開發當中,我最郁悶的也是這點,需求這部我沒什么疑問,我覺得產生需求文檔是必須的,但其實就我所經歷的開發來看,我認為需求文檔對于用例最好不是僅僅依賴于描述,描述是沒人會仔細去看的,而最好是UI原型圖,這樣對于用例的表達會清晰些,當然,有些復雜的部分仍然需要通過描述的方式。
    來看設計部分,在這個部分我一直就覺得有些疑問,一直以來都不是很認同在設計的輸出就是要提供一份詳細、規范的設計文檔,在我看來,設計確實是進行實現的前提條件,這毫無疑問,但真的就一定要通過一份詳細的設計文檔來做到這點嗎?我覺得設計中最重要的設計理念的表達,而對于設計理念我覺得最佳的表達方式仍然是圖形,而這個圖形一定要采用規范的象UML這些來表示嗎?我并不是那么的認同,我覺得設計圖最重要的就是要表現出自己的意思,至于你用什么圖形來表示我不覺得有什么重要,只要設計人員認為那是他最擅長表達自己設計意圖的工具就行,沒必要在工具這件事上浪費設計人員太多的時間,并且造成了限制,設計的評審我覺得是有必要做的,這時我覺得大家可能會問,沒有文檔怎么辦,怎么評審?我覺得評審的人是為了讓同行的設計人員能夠根據目前設計人員對圖形的一個解釋來準備的了解設計人員的設計意圖,并且根據自己的經驗相應的給設計人員一些建議;其次,從簡單設計角度上來講,我覺得設計是一個不斷充實和完善的過程,設計是一個典型的求解過程,就象一道數學題,通常來說,也許會有N中解法,每個不同程度的人看到的解法也許是不一樣的,但首先能解出來這就是一個成功,其次才是看這個解法有什么可以改進的地方,我現在做設計的時候就是首先采用自己目前能想到的最簡單的解決方案,在做同行評審的時候也許有些同行能給出些建議,如果沒有的話,通常來說我會先按照這個簡單的解決方案先做,在實現后其實就會發現目前這個實現方案的一些問題,即使當時沒發現,在添加新功能的時候也會發現,這個時候依賴重構開始進行調整,其實我覺得只有這樣一個設計才能慢慢的被完善、被誕生,應該說,不同程度的設計師的區別就在于設計出來的東西所被完善時投入的精力和造成的影響,我相信沒有哪個設計出來就是那么好的,在這種情況下,通常就會出現一個問題,就是最后實現形成的設計和最初的設計有很多的不同,這個時候是不是意味著在開發的過程中應該一直去更新、維護設計文檔呢?所以我覺得最初的設計文檔不需要為了規范投入那么大的精力, 但不意味著不要,需要的是一份能夠表達設計意圖的文檔,最重要的是圖形化的表達,大家認為呢?或者說大家都是怎么做的呢?還有就是這種時候正規的設計文檔什么時候出呢?^_^,缺少文檔時有的一個問題是怎么樣將設計意圖準確的表達給開發人員,這部的做法在XP中通常不存在,因為XP中設計是大家一起做的,在傳統的情況下我覺得更多的是依賴設計人員和開發人員的頻繁交流以及對于代碼的code review。
    但缺少設計文檔在公司的運作中通常會出現一個問題,就是領導們的不放心,領導們會覺得怎么經過了這個階段沒啥正式的產物,領導們會認為設計圖這些是不足以證明這個階段的完善的,郁悶,造成總是和領導形成矛盾,這也怪自己在安排任務時通常缺少這個正規的設計文檔的編寫過程,這個過程真的有這么必要嗎?疑問中......

    ps:順便說下現在自己從設計到實現的一個步驟,在設計時首先我會根據目前的需求得出問題域,這個時候開始進行設計,對問題域進行求解,這個時候會給一個自己能想到的最簡單的解決方案,注意,既然是解決方案就以為著首先要能解決問題,簡單的解決方案不等于簡陋的解決方案,在提供這個解決方案后開發人員實現后我會對code進行review,而這個時候review經常會發現設計中值得改善的地方,這個時候開始對設計進行重構,詳細設計一般要在迭代完成時才能最終形成.....覺得這樣的方法挺好的,^_^,自己在做實現的時候現在的做法都是先把測試代碼寫完后,寫設計的時候會先隨意的寫,寫完在通過測試后開始對代碼進行重構,這個時候開始把之初的長方法首先進行重構為小方法,重構完后開始做封裝的考慮,形成對象模型,在對象模型形成后開始考慮繼承、多態的引入,最后開始考慮設計模式的引入,一般這個時候最終的詳細設計才得以形成,我覺得這個時候是體現一個設計師水平的時候,一個優秀的設計師在設計之初就能想到很多,預見的很遠,使得設計在設計之初就能足夠的完善,而不需要通過太多的重構形成最終的設計,而一個普通的設計師也許最初只是能給出一個解決方案,但畢竟是可行的解決方案,在設計實現的過程時才逐漸的發現設計的不足,這個時候通過重構進行的完善,對設計師來講也是一種很好的積累,所以來說,在完成設計后最好是能多找人交流交流,^_^,喜歡這個方法.......

    posted on 2006-01-06 21:19 BlueDavy 閱讀(3137) 評論(4)  編輯  收藏 所屬分類: 系統設計

    評論

    # re: 設計文檔? 2006-01-07 12:26 wzr

    何時創建設計文檔最好?是在整個團隊結束項目時,這是最后一項工作。這樣的文檔能夠精確地反映出團隊離開時的實際設計情況,而且這樣的文檔對新來的團隊大有幫助。

    ——這是Robert C. Martin(即Bob大叔)在UML For Java Programmers書中所寫的。

    向領導們宣傳XP思想,也是設計人員的一項重要工作。XP最講究溝通,領導們也是溝通的對象。
    第一步:有事沒事,向領導們介紹一些軟件工程方面的專家,當然要挑選支持XP方法的“大佬們”。
    第二步:等領導們熟知這些專家的大名,就可以用他們的“語錄”幫教領導了。比如,上面的那一句。  回復  更多評論   

    # re: 設計文檔? 2006-01-07 20:04 brokendoor

    奇跡不是一夜之間就憑空而來的,外星人也不行。
    對于設計文檔,不可不寫,因為“千里之行,始于足下”。
    更不可寫完就完了,因為這可是“千里之行”啊!
    即使是開寶馬,也不是一下就到的了的,中途總要加點油什么的.......:)  回復  更多評論   

    # re: 設計文檔? 2006-01-08 01:16 nake

    寫的不錯,“而這個圖形一定要采用規范的象UML這些來表示嗎?”
    如果你的團隊沒人會uml你就不用uml,一支筆一張紙就可以了。大的軟件我覺得還是要把許多過程規范起來。簡單的就沒必要了,比較規范是要成本的。  回復  更多評論   

    # re: 設計文檔? 2006-01-09 09:23 走過看看

    Bob大叔的實戰水平太差,基本上寫些demo程序都會出問題。他的那本“敏捷軟件開發”是這類書里面代碼邏輯錯誤最多的,真不知道是怎么混出道的。可能比較善于動嘴皮子或寫書?
    他說的話聽聽就行,不必當真。  回復  更多評論   

    公告

     









    feedsky
    抓蝦
    google reader
    鮮果

    導航

    <2006年1月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    統計

    隨筆分類

    隨筆檔案

    文章檔案

    Blogger's

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 青青草原精品国产亚洲av| 亚洲熟妇无码八AV在线播放| 精品亚洲aⅴ在线观看| 久久WWW免费人成—看片| 免费人成在线观看视频播放| 青草久久精品亚洲综合专区| 免费少妇a级毛片| 美女视频黄频a免费| 亚洲av午夜精品一区二区三区 | 亚洲妇女水蜜桃av网网站| 中文字幕成人免费视频| 亚洲欧洲日产专区| 亚洲成在人线aⅴ免费毛片| 亚洲色欲色欲www在线播放 | 亚洲精品岛国片在线观看| 五月天婷婷免费视频| 亚洲中文久久精品无码ww16| 久久99毛片免费观看不卡| 亚洲国产精品久久久久婷婷老年| xxxxx免费视频| 亚洲精品无码高潮喷水A片软| 国产乱弄免费视频| 黄床大片免费30分钟国产精品| 国产成人亚洲精品91专区手机| 精品国产免费一区二区三区香蕉| 亚洲人成网站日本片| 好爽好紧好大的免费视频国产| 美女巨胸喷奶水视频www免费| 亚洲A∨无码无在线观看| 久久久久久久91精品免费观看| 美女黄网站人色视频免费| 亚洲AV无码专区电影在线观看 | 91短视频免费在线观看| 亚洲成a人片在线不卡一二三区| 亚洲乱码中文字幕手机在线 | 亚洲精品和日本精品| 亚欧在线精品免费观看一区| 美女露隐私全部免费直播| 久久精品国产亚洲AV无码娇色 | 日批日出水久久亚洲精品tv| 日韩免费观看一区|