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

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

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

    每日一得

    不求多得,只求一得 about java,hibernate,spring,design,database,Ror,ruby,快速開發
    最近關心的內容:SSH,seam,flex,敏捷,TDD
    本站的官方站點是:顛覆軟件

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      220 隨筆 :: 9 文章 :: 421 評論 :: 0 Trackbacks
    key words: 如何做設計 設計步驟
    轉自robin

    一。需求分析(抽象Use case + 分析Use case之間的關系)

    分析軟件需求,以用戶的角度來使用軟件,找出發生的scenerio,抽象成為一個一個Use Case,分析出Use Case之間的關系,這一步是非常重要的,這一步做好了,設計就成功了一半。Use Case的抽象有一些可以遵循的原則,這里不詳細談。

    然后用語言描述每一個Use Case,描述用戶使用一個Use Case發生的主事件流以及異常流。

    這樣就完成了需求分析階段。

    二。概要設計(找出實體 + 分析實體類之間的關系 + 提取控制類 + 畫序列圖)

    接下來做概要設計,針對每個Use Case,讀Use Case的描述,看事件流,找出所有的實體類,這也有一些可以遵循的原則,例如找出所有的名詞,畫表格排除等等方法。

    然后分析實體類之間的關系,是包含,聚合還是依賴,是1:1,還是1:n,還是其他....,根據這些關系,就可以得出實體類和別的實體類想關聯的屬性,然后再找出每個實體類本身重要的屬性。

    然后再次分析Use Case的事件流,一方面check實體類的設計是否合理,另一方面你可以找出動詞,分析對實體類的控制邏輯,這樣就可以可以設計出業務控制類,一般你可 以一個實體類一個控制類,也可以業務邏輯相關的實體類由一個Facade Session Bean(非EJB含義)來統一控制,這里面的控制類的顆粒度就由你自己來掌握了。一般來說先可以設計一些細顆粒度的控制類,然后再按照模塊,用粗粒度封 裝細顆粒度的控制類,提供給Web層一個Facade。

    然后你可以畫序列圖,就是用序列圖來表達事件流,在這個過程中,你需要不斷回到類圖,給控制類添加方法,而序列圖就是控制類的方法調用。

    至此,你已經在Rose里面完成了概要設計,當然你不可能一次設計完善,會有很多次迭代,因此你不能一開始把類設計的太詳細,只抓住主要的屬性和方法,特別需要注意的是,是抽象的設計,不要用具體的編程語言來表達類。

    三。實施(結合xdoclet和Schema工具自動生成代碼)

    然后你就可以拋開Rose了,轉到Eclipse+Togehter里面,根據那些類,規劃一下package層次,然后在Together里面進行類的詳細設計,所有需要的屬性一一寫上,當然你還是不可能一下把所有的屬性方法寫全,不過沒有關系,把重要的寫好就行了。

    然后類框架已經生成好了,給所有的實體類加上xdoclet,然后生成hbm,然后用Hibernate的ExportScheme生成DDL,運行一遍自動創建好所有的表。這樣所有的實體相關類全部做好了。

    你現在就集中精力把控制類那些方法里面的代碼填寫上就OK了,在這個過程,你會發現有些實體類缺屬性,沒有關系,加上屬性,然后寫好xdoclet,運行一遍,自動生成hbm,自動創建好表,然后繼續寫你的方法,也有可能你發現控制類缺方法,那么就加上。

    基本上實體類就是getter/setter,和少量的實體相關方法,所有的控制邏輯都寫在控制類里面。

    最后你的軟件就基本寫好了,用Eclipse生成好一堆你的testCase運行測試,反復修改,除bug。

    看看使用OOAD的設計思路,是多么的爽的事情阿!你只需要把精力放到Use Case的抽象,實體類的關系總結,控制類的歸納。而當你使用Eclipse+Together之后,你所需要寫的代碼只不過是控制類的方法實現代碼,其 他的都已經生成好了。另外可能需要寫少量工具類。


    posted on 2006-09-20 09:02 Alex 閱讀(956) 評論(1)  編輯  收藏 所屬分類: design 、建模

    評論

    # re: [zt]做設計的步驟 2009-01-02 14:17 it_com
    寫的很好,這其實也是我一直想總結的東西,就是這樣的了!  回復  更多評論
      

    主站蜘蛛池模板: 亚洲av乱码一区二区三区| 亚洲精品线路一在线观看 | 亚洲欧洲日韩极速播放| 18禁黄网站禁片免费观看不卡| 亚洲人成网站在线观看播放| 一级特黄录像免费播放肥| 日韩亚洲变态另类中文| 久久av免费天堂小草播放| 自拍偷自拍亚洲精品情侣| 免费无码av片在线观看| 亚洲国产精品国自产电影| 91大神免费观看| 一本天堂ⅴ无码亚洲道久久| 好爽好紧好大的免费视频国产| 菠萝菠萝蜜在线免费视频| 国产亚洲午夜高清国产拍精品 | 亚洲国产日韩精品| 欧洲精品免费一区二区三区 | 另类小说亚洲色图| 国产亚洲精品无码拍拍拍色欲| 色播在线永久免费视频网站| 亚洲精品福利视频| 免费A级毛片无码免费视| 日韩亚洲人成网站| 亚洲啪啪综合AV一区| 国产精品免费高清在线观看| 亚洲综合精品香蕉久久网97| 67194熟妇在线永久免费观看 | 亚洲网红精品大秀在线观看| 国产91色综合久久免费分享| 亚洲av色香蕉一区二区三区| 久久亚洲中文字幕精品一区四| 亚洲欧洲免费视频| 成人区精品一区二区不卡亚洲| 亚洲Av无码国产情品久久| 国产偷伦视频免费观看| 亚洲精品国产精品国自产网站 | 亚洲人成亚洲人成在线观看| 91成年人免费视频| 免费人成大片在线观看播放电影 | 精品久久久久久久免费人妻|