BlogJava 聯系 聚合 管理  

          Blog Stats

          隨筆檔案

          文章檔案


          年度最佳UML/MDA工具

          trufun Plato/Kant

          2012年2月14日 #

          trufun1  9:35:38
          UML開課啦
          trufun1  9:37:40
          上堂課征求意見結果如下:
          trufun1  9:38:48
          1.有人提的語音等方式不適合上班的大部分網友
          trufun1  9:39:20
          2.以實戰項目為主
          trufun1  9:42:58
          結論:1.還是采用目前的方式教學,2.開展實戰項目征集
          trufun1  9:46:45
          下面是需求征集表,希望大家下載后傳給我
          trufun1  9:48:08
                       UML建模推廣課程討論題目
          網友稱呼        工作單位    
          題目    
          需求片段    要求:1.有一定深度,2.替換掉單位等不宜公開信息
          需求描述:

          分析要求:    

          trufun1  9:52:11

          今天的課程是講解楚凡科技的軟件過程模型TUP

          =============歡迎訪問www.trufun.net下載免費UML2工具試用=================


          ============歡迎加入Trufun家園交流群討論UML2應用問題================


          trufun1  9:57:12
          在UML建模出現之后,這些模型都聲稱支持建模過程
          trufun1  10:01:45
          但是國際omg組織并沒有指定該何種過程模型
          trufun1  10:06:44
          西安楚凡科技在總結其他模型的基礎上,提出了一種適合中小軟件企業的過程模型TUP
          trufun1  10:11:48

          trufun1  10:14:30
          如圖所示:整個建模過程從水平方向分為三個階段,13個活動
          trufun1  10:16:10
          垂直方向分為兩個過程
          trufun1  10:18:51
          TUP的每個階段都包括一系列目標、若干重要的焦點活動、若干建模成果以及一個組織活動的方法和一個階段結束的里程碑。
          trufun1  10:21:21
          比如:草圖階段的主要目標是獲取和定義用戶需求,主要包括以下幾個方面:
          n    確定客戶高層需求;
          n    確定主要的用戶業務需求;
          n    確定軟件的范圍;
          n    確定軟件系統的實現目標;
          n    確定架構雛形。trufun1  10:24:00
          焦點:草圖階段的重點是交流活動和建模活動,在建模活動中除了UML建模以外,可能還有原型建模。
          trufun1  10:26:58
          草圖階段的主要成果

          n    生成了系統映像;
          n    生成了架構雛形;
          n    建立了主要分析類模型;
          n    建立了主要流程的活動圖模型;
          n    建立了系統用例圖模型。
          trufun1  10:28:18
          草圖階段的里程碑:確定了軟件的范圍和目標,并取得客戶的認可
          trufun1  10:31:12
          下面對TUP過程模型有什么問題可以提問
          trufun1  10:31:26
          下面對TUP過程模型有什么問題可以提問
          trufun1  10:34:16
          過程模型說簡單一點,就是告訴你應該先做什么,后作什么
          trufun1  10:36:54
          就象往墻上釘一幅畫一樣,OMG只告訴你有畫,釘子,榔頭,漿糊,刷子
          trufun1  10:41:02
          是用釘子還是用漿糊,omg并沒有告訴你,就象是用活動圖表示,還是用序列圖表示,并沒有國際標準
          trufun1  10:47:58
          TUP就是告訴大家怎樣從頭到尾進行軟件建模
          trufun1  10:51:26
          怎樣由粗到精,由表及里尋找需求背后的業務模型
          trufun1  10:56:01
          TUP有很多特點:比如簡化了RUP中的許多概念,大家知道概念多了交流起來容易混淆
          trufun1  11:00:05
          比如RUP中與系統交互的有干系人,代理人,用戶,角色,系統參與者,而TUP只有一個關鍵的概念角色,明確的表示了交互和邊界的含義
          trufun1  11:07:53

          所以TUP實用、簡單,學起來,使用起來容易


          =========歡迎訪問www.trufun.net下載免費UML2工具試用=============


          ==========歡迎加入Trufun家園交流群討論UML2應用問題=============


          trufun1  11:10:19
          今天的內容理論性比較強,不是很多網友的關注點,這一點我在以往教學中是清楚的
          trufun1  11:18:11
          提不出問題沒關系,當你看不懂RUP的書,不知道怎樣在開發中建模,想想還有TUP就可以啦
          trufun1  11:26:23
          另外,如果大家希望實戰分析的內容有針對性,不妨把那個需求征集表填一下,可以是自己不明白的需求,也可以是自己希望學習的內容
          trufun1  11:31:33
          上學期的案例都是我準備的,上節課征集意見時,大家還是希望講實戰的項目,要學習,需要大家配合
          IS印象(20474992)  11:33:22
          這樣子講沒什么感覺
          trufun1  11:34:18
          你希望這樣
          trufun1  11:34:33
          你希望怎樣
          樂百氏(3)  11:34:49
          老師完整地操作一遍,大家圍觀,隨時提出問題。
          trufun1  11:35:23
          大家可以提出自己的實際案例,我們來實時操作分析
          trufun1  11:40:57
          今天的課程就到這里,888
          QQ熊(2) 2012/2/7 11:45:09
          能否提供一個安例呢?(從需求收集--》需求分析--》需求設計)
          有整個方案的詳細分檔么?
          trufun1 2012/2/7 11:46:25

          trufun1 2012/2/7 11:46:56
          你設想一個發給我
          QQ熊(2) 2012/2/7 11:49:13
          好的。

          =========歡迎訪問www.trufun.net下載免費UML2工具試用==============


          ===========歡迎加入Trufun家園交流群討論UML2應用問題============
          posted @ 2012-02-14 15:26 trufun 閱讀(230) | 評論 (0)編輯 收藏

          中國人最常用的UML工具介紹(摘自論壇投票結果和網友)


          第一名:Rational Rose。大名鼎鼎,史上最有名、最無可替代的UML產品,以至于,大多數將之等同于UML工具,正如將可樂等同于可口可樂。需要指出的是,自從 Rational被IBM收購之后,Rational Rose已經成為歷史,作為UML1.4標準的產物,現在已經不升級。其替代品是IBM的其他產品,如IBM RSA, RSD等。


          第二名:IBM Rational RSA。無可置疑,IBM的旗艦產品,通過和IBM其他產品的協調,支持軟件開發的全生命周期開發。唯一的缺陷,是出奇的笨重,和出奇的龐雜昂貴(不唯一了?)。


          第三名:Trufun Kant Studio。作為國產唯一的UML工具,據說是最易用的UML工具,目前在國內大多數高校取得了廣泛的應用。對企業和高校而言,其最獨特的殺傷性武器是 支持廣泛實用性強,而且幫助企業引入TUP實訓和咨詢,一步到位解決產品和具體應用問題。


          第四名:EA。EA的特點就是沒特點,除了便宜和好像要啥有啥外,沒有讓人印象深刻的地方,可能這就是低價產品之道。說起來,倒像我曾經呆過的系統集成企業,招標時,沒有我不會做的,沒有比我更便宜的,呵呵。


          第五名:StarUML。用Delphi能做到這種程度,StarUML作者絕對是個Delphi牛人,只可惜此開源項目不知為何中止,可惜啊。如果能夠繼續的話,估計其他UML工具都沒有活路了。

          其他還有一些不太常用的,以后有時間再說,如ArgoUML, PowerDesigner, Visual UML等。

          以上評價僅代表個人觀點,如有異議,歡迎來信來函討論。
          posted @ 2012-02-14 15:25 trufun 閱讀(301) | 評論 (0)編輯 收藏

          2012年2月9日 #

          即 日起,凡是購買Trufun最新版本Trufun Kant Studio一站式開發平臺4套(39600元)的企業或者團隊,均可獲贈Trufun Plato企業版最新版本6套和3天定制企業內訓課程(價值63000元),所獲贈企業內訓課程內容可以根據Trufun所提供培訓課程并結合企業項目特 點進行定制,更有機會加入Trufun高級TUP過程培訓內容,本次活動名額有限,僅限10名,以簽訂合同順序為準,機不可失,時不再來??!

          訪問官網了解更多www.trufun.net
          來電來信咨詢  029-88346234   trufun*a*trufun.net 
          posted @ 2012-02-09 13:10 trufun 閱讀(190) | 評論 (0)編輯 收藏

          2011年12月27日 #

          trufun1  9:28:06
          UML開課啦,今天討論組件圖
          --(3)  9:28:23
          好呀好呀
          trufun1  9:31:49
          簡單講,組件是一個可獨立運行的、代表一個業務的二進制代碼
          --(3)  9:32:21
          組件必須是可獨立運行的嗎?
          --(3)  9:32:31
          如果不可以獨立運行,是不是就不叫組件?
          守護者(4)  9:32:32
          trufun1  9:33:42
          這是標準的解釋
          --(3)  9:34:23
          有意外情況?
          守護者(4)  9:34:27
          組件也可以是一個 可執行 可調用的 模塊吧
          --(3)  9:34:33
          非獨立運行的組件出現?
          守護者(4)  9:34:41
          不一定都是可執行的吧
          承懿<5>  9:35:36
          那把非標準的講一下,通俗點吧

          ========歡迎訪問www.trufun.net網站查看更多交流群討論內容===============
          =========歡迎訪問www.trufun.net網站免費下載UML2建模工具使用============
          =========歡迎加入trufun qq交流群討論UML應用問題=======================

          trufun1  9:35:52
          面向過程,面向對象之后就是面向組件
          守護者(4)  9:36:08
          我有自己工作積累的獨立模塊  這不是可以獨立運行的   也應該算做是組件吧
          --(3)  9:36:50
          等下啊,問句題外話,你們在黑龍江,有專門的培訓機構嗎?想去系統的學習一下
          守護者(4)  9:36:54
          我以前做過一點 面向 字符串  也是一種 呵呵
          --(3)  9:37:00
          吉林也成,遼寧也行,東三省都行
          trufun
          系統學習參加trufun公開課或者企業內訓都可以
          trufun1  9:40:28
          組件有一個很重要的特征是有接口
          trufun1  9:42:28
          一個生產產品的企業從外部看就是組件
          守護者(4)  9:42:52
          怎么講 是說將其完全封裝嗎
          trufun1  9:43:54
          這里不是封裝,而是抽象
          trufun1  9:44:54
          如計算機,cpu,內存條都是組件
          守護者(4)  9:44:59
          面向接口 我覺得 不就是 將行為抽象 將實現封裝嗎
          守護者(4)  9:45:11
          恩  
          一米陽光(6)  9:45:49
          面向接口  我發現通過繼承也可以實現接口的功能 這又是什么呢
          承懿<5>  9:46:04
          守護者(4)  9:44:59
          面向接口 我覺得 不就是 將行為抽象 將實現封裝嗎
          我覺得也是這個的
          trufun1  9:46:08
          組件是物理實現抽象表達
          守護者(4)  9:46:34

          trufun1  9:47:19
          如cpu實際上是對cpu板子的抽象
          trufun1  9:48:03
          當然,物理軟件也可抽象成組件

          --(3)  9:48:07
          若干個可獨立工作的組件,通過接口組裝在一起,就變成了一個整體的系統,可以這么理解吧?
          一米陽光(6)  9:48:21
          意思 一個組件就是一段獨立的代碼?
          trufun1  9:49:29
          一般講,組件是具體的制品構成
          一米陽光(6)  9:49:53
          不依托其他 條件存在的?
          trufun1  9:49:55
          組件是抽象的
          trufun1  9:50:15
          制品是實例化的
          trufun1  9:50:36
          獨立
          trufun1  9:51:27
          代碼(exe,dll) 是制品的一種
          一米陽光(6)  9:51:36
          那么這么理解 行不行  組件 就是一個類  制品就是一個實例對象? 比如 new object?
          承懿<5>  9:51:40
          曉得了
          ========歡迎訪問www.trufun.net網站查看更多交流群討論內容===============
          =========歡迎訪問www.trufun.net網站免費下載UML2建模工具使用============
          =========歡迎加入trufun qq交流群討論UML應用問題=======================
          守護者(4)  9:52:06
          組件  比類的粒度要大得多 層面也不一樣 小米
          trufun1  9:52:09
          有點類似
          承懿<5>  9:52:26
          我原來在另外一家公司 的時候他們的部件加載就是加載dll直接運行的
          守護者(4)  9:53:45
          我自己以前工作的內容 也集成過一個DLL  自己寫程序時  也會  當組件來用 但是單位的程序就不行了
          trufun1  9:55:24
          組件又被分為執行組件、部署組件、產品組件
          trufun1  9:57:27
          希望大家多提問題
          --(3)  10:02:06
          組件只能是單獨存在的吧?不會出現組件下面還有小組件存在的這種情況吧?
          --(3)  10:02:14
          是不是要把組件給細分到最小化?
          trufun1  10:02:18
          我問大家一個問題,什么是組件架構,由那些組件組成?
          trufun1  10:02:34
          組件可以包含組件
          守護者(4)  10:07:08
          SOA算嗎  將組件封裝成服務
          --(3)  10:07:09
          那為什么直接細分成最小化呢?
          trufun1  10:07:24
          一般講,由容器組件、粘結組件和產品組件構成
          守護者(4)  10:08:32
          容器 最簡單的理解就是 namespace  或者 說是 package
          trufun1  10:09:41
          舉例:網頁中,容器組件是什么?粘結組件是什么,產品組件是什么?
          守護者(4)  10:09:57
          粘結組件?
          trufun1  10:10:38
          粘接
          守護者(4)  10:11:04
          網頁中,容器組件就是網頁所在的鏈接
          產品組件 就是所用到的外部DLL 或者是 頁面控件組件
          trufun1  10:11:19
          不大對
          守護者(4)  10:11:49
          粘結組件不知道 但是從字面上看是不是就是 鏈接自己程序和 外部程序的適配器呢
          一米陽光(6)  10:12:28
          我覺得怎么個html 就是容器組件
          trufun1  10:12:34
          字打別了為粘接
          trufun1  10:13:18
          html為粘接組件
          守護者(4)  10:13:44
           tru 能給個鏈接嗎  我也學習一下
          trufun1  10:14:11
          其他呢?
          trufun1  10:14:27
          你正在學
          承懿<5>  10:14:36
          網頁中的容器組件最大的是body
          承懿<5>  10:14:52
          小的div table這些都是窗口組件
          trufun1  10:15:08
          那不是組件,是tag

          承懿<5>  10:16:12
          不明白,這些也稱為標簽,但是里面能放東西啊
          trufun1  10:16:32
          頁面中的廣告,圖片是產品組件
          守護者(4)  10:17:05
          廣告,圖片?
          守護者(4)  10:17:17
          那就是說成型的東西 哦
          trufun1  10:17:24
          可獨立執行
          守護者(4)  10:17:37
          那如果我應用了第三方 控件的話 也算是  產品組件吧
          trufun1  10:17:43

          守護者(4)  10:18:03
          哦 
          守護者(4)  10:18:11
          那 粘結組件 呢
          trufun1  10:18:16
          頁面本身是容器組件
          守護者(4)  10:18:20
          不是 適配器嗎
          守護者(4)  10:18:42
           是說 調用產品組件的 組件就是粘結組件嗎
          trufun1  10:18:46
          粘接組件為html

          守護者(4)  10:19:00
          那js呢
          一米陽光(6)  10:19:00
          那asp.net 里面的控件算不算組件?
          trufun1  10:19:18
          產品組件
          守護者(4)  10:19:35
          ajax 都算是產品組件 對吧
          trufun1  10:19:42

          一米陽光(6)  10:19:47
          trufunwu 老師 你回答的是 我的還是 守護者的?
          trufun1  10:23:57
          誰能舉java中組件架構的例子?
          --(3)  10:24:49
          老師,提問一下:組件,是不是要用在開發上?在需求設計,是不是用不到?
          守護者(4)  10:25:10
           
          trufun1  10:25:27
          經常用
          trufun1  10:25:51
          在實現階段,不是分析階段
          --(3)  10:26:30
          哦,那就對了。我理解的沒錯誤
          trufun1  10:26:33
          組件,是實現階段的工作
          trufun1  10:26:52
          組件,是實現階段的工作
          --(3)  10:26:54
          實現階段不歸我這負責,怪不得聽不懂和理解不了
          守護者(4)  10:27:07
          那--  你負責什么?
          --(3)  10:27:17
          還是舉這個例子
          守護者(4)  10:27:25
          那--  你負責什么?
          --(3)  10:27:44
          我只管網頁中有什么內容,內容如何排布,網頁之間的調整,數據是怎么來的,怎么沒的
          --(3)  10:28:04
          至少這個網頁是怎么作的,不歸我管
          --(3)  10:28:10
          至于
          守護者(4)  10:28:44
          美工?
          --(3)  10:28:50
          就是說,我只管一盤菜的用料,但是先放油還是先放蛋,不歸我管
          --(3)  10:28:54
          不是美工
          --(3)  10:29:18
          需求設計及概要設計
          --(3)  10:29:24
          需求分析
          --(3)  10:30:15
          給程序員定量的鹽、油、蛋、菜,然后告訴他們最終的味道是什么樣的
          守護者(4)  10:30:18
          需求分析 需求設計及概要設計 你管這些嗎
          --(3)  10:30:25
          用這些原理怎么炒,是他們的事情
          守護者(4)  10:30:41
          怎么炒是詳細設計
          守護者(4)  10:30:52
          只有 代碼產出才是程序員的事情
          trufun1  10:31:23
          下面討論一下什么是端口?
          --(3)  10:31:26
          我們沒有詳細設計人員。。。程序員兼著,小公司,沒辦法,而且黑龍江這破地方,想找個合適的詳細設計人員,基本上不大可能
          一米陽光(6)  10:31:42
          我一直弄不明白 詳細設計要寫多么細  概要設計需要多么細
          --(3)  10:32:05
          樓上的,我的想法是這樣
          --(3)  10:32:43
          比如一個系統,概要設計負責把系統的業務流程、數據流程、界面流程給設計好,就可以了
          --(3)  10:32:54
          詳細設計管的是實現流程
          trufun1  10:33:09
          return
          --(3)  10:33:09
          程序管的是按實現流程去干活
          --(3)  10:33:33
          聽老師的
          trufun1  10:34:16
          下面討論一下什么是端口?
          守護者(4)  10:34:26
          端口?   接口吧
          trufun1  10:34:54
          不同吧
          --(3)  10:35:20
          感覺不同
          守護者(4)  10:35:57
          端口是 電腦上的硬件端口嗎
          trufun1  10:36:39
          軟件的定義
          X易X平X(7)  10:36:41
          端口的內涵包含接口,是接口內涵的衍生,也是負責程序間互相訪問通信的
          X易X平X(7)  10:37:00
          能這樣理解吧!
          守護者(4)  10:37:27
          端口是硬件 接口是軟件  挨不上吧
          --(3)  10:38:07
          端口也是軟件,不是硬件
          trufun1  10:38:15
          提供接口和需求接口組合就叫端口
          X易X平X(7)  10:39:06
          還是老師的話精煉
          承懿<5>  10:39:07
          那就是成對的才叫端口對吧
          trufun1  10:39:53
          是的,如收、發
          --(3)  10:40:16
          接口是只發,或只收?
          承懿<5>  10:40:19
          哦,曉得了
          守護者(4)  10:42:29
          :9001、:9003  這種在http協議后的不就是端口嗎
          一米陽光(6)  10:43:08
          這個不同吧
          承懿<5>  10:43:10
          軟件設計應該跟這個不屬于同一個范疇
          trufun1  10:43:21
          糊搞(8)  10:41:38
          特定的幾組組件選擇性提供的業務接口?
          trufun1  10:42:15
          叫服務
          trufun1  10:46:55

           trufun1  10:49:12
          從上圖找出前面的概念
          trufun1  10:53:09
          今天的案例:找組件和接口
            子系統信息流
          其他系統都要查看庫存情況,歷史異動情況,未來異動情況,采購子系統收貨,銷售子系統發貨都要影響庫存,生產子系統向庫存存貨,庫存子系統向生產子系統供 貨,銷售子系統向生產子系統提供訂單和銷售預測,采購子系統向財務子系統產生應付賬款,銷售子系統向財務子系統產生應收帳款。
          trufun1  10:54:38
          不難,請踴躍發言
          webmaster(344593239)  10:57:35
          快下課了~~~~~~~~~~~~~~
          感恩的心(157323704)  10:57:42
          不知道從哪里說起,呵呵
          webmaster(344593239)  10:57:45
          大家有問題快點討論哦~~
          --(3)  10:58:59
          太有深度了,目前還在消化與不理解中
          trufun1  10:59:11
          其他系統都要查看庫存情況,中的其他系統是帶有需求接口的產品組件,
          trufun1  10:59:46
          需求接口為查看庫存
          trufun1  11:00:36
          那只是提高大家識圖的例子
          承懿<5>  11:00:48

          trufun1  11:01:03
          從網上找的
          trufun1  11:02:28
          歷史異動情況,未來異動情況都是需求接口
          trufun1  11:05:33
          產品組件為采購組件,銷售組件,生產組件,財務組件
          trufun1  11:10:40
          采購子系統收貨,銷售子系統發貨都要影響庫存,組件有3,1采購組件,2.銷售組件,3,庫存組件
          接口有4個,采購組件的收貨提供接口,銷售組件的發貨提供接口,庫存組件收貨需求接口,庫存組件的發貨需求接口
          trufun1  11:13:32
          看來大家對組件的應用這里還不熟悉
          守護者(4)  11:13:49
          是呀
          --(3)  11:14:09
          相當不熟悉!
          --(3)  11:14:34
          太有深度了
          ========歡迎訪問www.trufun.net網站查看更多交流群討論內容===============
          =========歡迎訪問www.trufun.net網站免費下載UML2建模工具使用============
          =========歡迎加入trufun qq交流群討論UML應用問題=======================

          守護者(4)  11:14:51
          上層結構的圖  中小型的項目 一般用不到呀
          守護者(4)  11:15:02
          大公司的話 程序員也用不到 只有設計人員能看到
          --(3)  11:15:14

          trufun1  11:15:16
          組件是架構層面的東西
          --(3)  11:15:40
          在實際工作中,用不上呀。起碼小公司用不上
          守護者(4)  11:16:37

          trufun1  11:17:01
          其實開發語言周圍到處有這些應用,只是大家不做組件開發
          守護者(4)  11:18:42
          ? 是嗎  能細說下嗎
          trufun1  11:19:08
          比如控件
          trufun1  11:19:37
          開發人員沒有不用的
          trufun1  11:19:49
          第三方組件等
          感恩的心(157323704)  11:20:22
          類似于com組件?
          trufun1  11:20:43

          trufun1  11:23:06
          這是我給的結果,僅供參考
          trufun1  11:23:31

          trufun1  11:25:16
          僅供參考
          守護者(4)  11:24:53

          守護者(4)  11:25:03
          這說明了 五個組件的關系
          守護者(4)  11:25:06
          以及功能
          trufun1  11:25:32
          接口
          守護者(4)  11:26:15
          恩  對象編程吧 接口是必須的
          trufun1  11:26:45
          子系統接口
          --(3)  11:26:51
          這看明白了許多
          trufun1  11:29:01
          還有問題嗎?
          --(3)  11:29:39
          組件與子系統的區別,能給說一下嗎?
          trufun1  11:30:39
          ,子系統是組件的一種類型,往往比組件更
          大的組合。子系統本身不會被實例化(抽象的),但其內容組件可以被實例化
          --(3)  11:30:57
          明白了
          --(3)  11:31:59
          在設計中,不能把需求抽象成子系統,但可以把需求抽象成組件,是這樣吧?子系統是由組件構成的
          trufun1  11:33:12
          子系統是分解出來的,組件是實現出來的
          --(3)  11:33:48
          思考。。。
          trufun1  11:34:49
          下次討論部署圖,記住帶著問題來
          trufun1  11:37:48
          888
          --(3)  11:38:01
          感謝
          ========歡迎訪問www.trufun.net網站查看更多交流群討論內容===============
          =========歡迎訪問www.trufun.net網站免費下載UML2建模工具使用============
          =========歡迎加入trufun qq交流群討論UML應用問題=======================
          posted @ 2011-12-27 15:36 trufun 閱讀(272) | 評論 (0)編輯 收藏

          2011年12月20日 #

          trufun0  9:31:11
          狀態圖是序列圖分析的延伸
          trufun0  9:36:30
          為啥要要研究對象的狀態呢,因為對象只有在某種狀態下,才能對某種外部事件發出響應
          talenter(1)  9:38:57

          talenter(1)  9:39:10
          講完這個 發題目 :)
          trufun0  9:39:48
          比如學生處在上課狀態,只有產生聽課的行為,而不能產生睡覺的行為
          清水(1)  9:41:31

          =============歡迎訪問www.trufun.net免費下載UML2建模工具Trufun Plato=======================

          trufun0  9:43:05
          聽到下課鈴這個外部事件,處在上課狀態的學生可以發生狀態改變,處在下課狀態的學生,則不會發生狀態改變
          talenter(1)  9:43:16
          恩 狀態轉換
          清水(1)  9:44:38

          清水(1)  9:45:05
          在實際中問題往往是 該設置多少個狀態才算合適
          talenter(1)  9:45:35
          狀態轉換都有事件參與吧
          trufun0  9:46:03
          是的
          trufun0  9:48:46
          事件是什么?
          talenter(1)  9:48:57
          消息
          talenter(1)  9:48:59
          ?
          talenter(1)  9:49:05
          動作?
          trufun0  9:49:26
          對,消息,也就是方法
          talenter(1)  9:49:46

          trufun0  9:51:22
          一個對象有多少狀態呢
          清水(1)  9:52:30
           
          trufun0  9:57:26
          答案:一個對象有無數個狀態
          talenter(1)  9:58:08
          無數個?  可預知的有限吧
          trufun0  9:58:26
          狀態用對象的屬性來表示
          清水(1)  10:09:28
          對象狀態的劃分 很重要吧
          清水(1)  10:09:39
          一個問題是  一些中間狀態要不要記錄
          trufun0  10:09:42
          我們只關心那些對我們感興趣的某個事件發出某種行為的狀態
          trufun0  10:14:02
          今天的案例:                靚號狀態   
          “靚號”能被鎖定,被鎖定的“靚號”不能被其它用戶再鎖定。被鎖定的靚號如果在15分鐘內沒被用戶租用,則還回到初始狀態,可以再被(其他)用戶鎖定。被 鎖定的“靚號”可以被租用,租用到期后能被系統預留(即為先前的用戶保護起來),預留一個月后如用戶未續租,則此“靚號”可以被其他人鎖定或租用。在租用 狀態下的“靚號”,如果被同一用戶累積租用超過半年,則可以買斷。被買斷后,此“靚號”變成普通號。
          trufun0  10:14:39
          分析出狀態,事件,監護條件,效果
          talenter(1)  10:16:06
          初始狀態   租用狀態  鎖定狀態  預留狀態  買斷狀態 結束狀態(普通號)
          talenter(1)  10:17:11
          畫個圖比較好。
          trufun0  10:17:23
          還有?
          trufun0  10:17:41
          先分析,后畫圖
          talenter(1)  10:18:50
          狀態找不出來了。
          trufun0  10:19:48
          狀態分析先找到分析對象
          talenter(1)  10:23:06
          靚號  就是分析對象吧?
          trufun0  10:23:37

          =============歡迎訪問www.trufun.net免費下載UML2建模工具=======================

          talenter(1)  10:24:26
          買斷狀態 就作為結束狀態   
          talenter(1)  10:24:37
          初始狀態   租用狀態  鎖定狀態  預留狀態  買斷(結束)狀態
          trufun0  10:25:22
          普通號為最終狀態,結束狀態是單獨的
          talenter(1)  10:26:05
          哦 買斷是個動作
          trufun0  10:26:15
          找到對象后找屬性
          talenter(1)  10:27:14
          累積租用超過半年
          trufun0  10:28:05
          累計租期是一個屬性
          trufun0  10:32:07
          九頭鳥的奮斗(705543728)  10:30:10
          靚號的屬性只有兩種 :預留和非預留

          trufun0  10:31:01
          是否已預留是一個屬性
          talenter(1)  10:33:42
          是否鎖定是個屬性
          trufun0  10:33:56
          是否買斷是一個屬性
          talenter(1)  10:34:01

          talenter(1)  10:34:18
          是否租用也是個
          trufun0  10:34:33

          trufun0  10:39:47
          下面大家找事件
          talenter(1)  10:40:31
          鎖定  租用   預留  買斷
          trufun0  10:40:44
          鎖定是一個外部事件
          talenter(1)  10:40:54
          解鎖  
          talenter(1)  10:41:02

          talenter(1)  10:41:25
          應該找什么事件?
          trufun0  10:41:50
          鎖定是一個外部事件
          trufun0  10:42:08
          你找的對
          talenter(1)  10:42:25
          哦 哈
          talenter(1)  10:43:27
          鎖定 解鎖  租用  解除租用  預留 解除預留 買斷
          trufun0  10:46:05
          其他人發出的鎖定是外部事件,號碼接收到這個事件后,變為已鎖定狀態,內部的是否鎖定屬性變為是

          trufun0  10:54:43
          第一個狀態是什么?
          talenter(1)  10:55:14
          初始
          trufun0  10:56:51

          trufun0  11:00:50
          靚號”能被鎖定,被鎖定的“靚號”不能被其它用戶再鎖定,這句話中狀態,事件,效果,及屬性值?
          talenter(1)  11:04:56
          狀態就是鎖定   屬性 是否鎖定
          talenter(1)  11:05:04
          事件:還是鎖定動作。
          talenter(1)  11:05:12
          效果? 提示?
          trufun0  11:05:34
          事件為其他人鎖定
          trufun0  11:06:43
          效果就是對象接收事件后的動作
          talenter(1)  11:08:39
          沒效果
          talenter(1)  11:08:59
          其他人鎖定   和  自己鎖定 當成一個事件就好吧?

          trufun0  11:09:00
          效果為拒絕鎖定
          talenter(1)  11:09:07

          trufun0  11:13:34
          被鎖定的“靚號”是監護條件,意思是不是所有對象對此事件都響應
          talenter(1)  11:14:45
           哦 好
          trufun0  11:20:00
          被鎖定的靚號如果在15分鐘內沒被用戶租用,則還回到初始狀態,可以再被(其他)用戶鎖定,這句話的狀態,事件,效果
          trufun0  11:24:11
          狀態有兩個,已鎖定狀態和初始狀態
          trufun0  11:26:28
          事件為未租用
          trufun0  11:29:22
          效果是回到初始狀態的回到行為
          trufun0  11:32:04
          可以再被(其他)用戶鎖定,是遷移后狀態的內部行為
          trufun0  11:33:34
          剩下的網友自己分析
          talenter(1)  11:34:24
             看來大家都很忙啊
          talenter(1)  11:34:34
          偶今天也比較忙 哈哈  不過學到了不少
          trufun0  11:35:17
          這是我的觀點,僅供參考
          trufun0  11:35:37
           
          talenter(1)  11:36:28
          很清晰啊
          talenter(1)  11:37:26
          老師辛苦 。
          trufun0  11:40:54
          下次討論組件圖,記住帶著問題來
          posted @ 2011-12-20 17:08 trufun 閱讀(387) | 評論 (0)編輯 收藏

          trufun4  9:24:30
          UML開課啦,今天講狀態圖
          啃鐵鼠<4>  9:29:47
          好啊
          trufun4  9:30:05
          上堂的序列圖是反映多個對象之間的交互,而狀態圖是反映單個對象內部的交互
          =============歡迎訪問www.trufun.net免費下載UML2建模工具=======================
          trufun4  9:30:41
          狀態圖是序列圖分析的延伸
          啃鐵鼠<4>  9:32:03
          注意哪些地方了?又怎么來應用了?為什么要使用狀態圖來分析了?
          trufun4  9:33:16
          很好,看來你思考了
          webmaster(1)  9:34:21
          大家要多多配合老師的話題積極發言,老師會講的更深入些,
          trufun4  9:35:35
          為啥要要研究對象的狀態呢,因為對象只有在某種狀態下,才能對某種外部事件發出響應
          啃鐵鼠<4>  9:36:36
          是不是說,處在該狀態下只能處理該狀態的事件,其他狀態的事件就不能處理了?
          trufun4  9:37:13
          是的
          啃鐵鼠<4>  9:38:13
          可如果這樣,某個對象會不會出現很多很多的狀態,豈不是狀態處理很繁瑣和麻煩了
          =============歡迎訪問www.trufun.net免費下載UML2建模工具=======================
          trufun4  9:43:56
          聽到下課鈴這個外部事件,處在上課狀態的學生可以發生狀態改變,處在下課狀態的學生,則不會發生狀態改變
          啃鐵鼠<4>  9:44:52
          該怎么來劃分狀態了?
          trufun4  9:45:38
          一個對象有多少狀態呢
          承懿<2>  9:45:42
          下課-->上課(上課鈴響)
          承懿<2>  9:45:49
          反過來下課鈴響
          承懿<2>  9:46:17
          事件驅動狀態改變
          trufun4  9:46:42
          事件是什么?
          承懿<2>  9:47:26
          上課鈴和下課鈴
          承懿<2>  9:47:34
          響就是事件
          trufun4  9:48:08
          用面向對象說實質
          trufun4  9:50:39
          talenter(3)  9:48:57
          消息
          talenter(3)  9:49:05
          動作?
          trufun4  9:49:26
          對,消息,也就是方法
          啃鐵鼠<4>  9:51:25
          消息怎么會是方法了?
          啃鐵鼠<4>  9:51:52
          應該與運行的系統驅動方式有關吧?
          承懿<2>  9:51:55
          在objective c中消息就是方法
          承懿<2>  9:52:10
          這兩個好像可以互稱
          啃鐵鼠<4>  9:52:17
          windows系統消息和方法是兩個概念
          trufun4  9:52:33
          你可能沒學前面的課,可以查查以往的記錄
          承懿<2>  9:52:33
          windows中消息是message
          承懿<2>  9:52:40
          方法是對象調用的方法對吧
          啃鐵鼠<4>  9:52:58
          是的
          trufun4  9:53:00
          是的
          啃鐵鼠<4>  9:53:15
          通過消息映射實現的消息與方法的綁定
          啃鐵鼠<4>  9:54:11
          在windows下,消息==事件
          W-inds(5)  9:54:20
          trufunwu老師,可不可以整理下以往的教學啊...整理成一個文件。
          trufun4  9:54:24
          調用事件,消息,方法是從不同角度看問題的同一個函數
          啃鐵鼠<4>  9:54:36
          是的
          啃鐵鼠<4>  9:56:10
          所處的層次不同叫法不同,都是為實現驅動機制叫法不同
          trufun4  9:56:45
          答案:一個對象有無數個狀態
          一米陽光(6)  9:58:26
          我想問個db的問題 有誰對這塊熟嗎
          trufun4  9:58:33
          狀態用對象的屬性來表示
          一米陽光(6)  10:00:55
          trufunwu 老師 會數據庫嗎
          webmaster(1)  10:01:12
          每期的討論記錄都在網站論壇里面整理發布了
          trufun4  10:01:13
          什么問題
          webmaster(1)  10:01:26
          在論壇中的qq交流群記錄中,大家可以查閱
          一米陽光(6)  10:02:09
            有父子關系的表這么設計 有沒有問題?
          一米陽光(6)  10:02:35
          我以前一直這么設計的 剛才查資料 有人說這種不符合數據庫范式
          trufun4  10:04:10
          不規范
          承懿<2>  10:04:37
          第二個里面怎么兩個pk?
          trufun4  10:05:02
          就這個問題
          一米陽光(6)  10:05:09
          一個Pk吧 截得別人的圖
          一米陽光(6)  10:05:42
          等下 我重新截個圖
          trufun4  10:06:42
          違反主鍵和外鍵是整體關聯,而不是部分關聯
          一米陽光(6)  10:08:20
          這樣子嗎?
          trufun4  10:09:24
          return
          一米陽光(6)  10:10:02
          好像在子集合中把父表主鍵作為主鍵 就會出現2個pk
          trufun4  10:10:45
          課后交流此問題
          一米陽光(6)  10:10:58
          哦 好的
          trufun4  10:11:20
          我們只關心那些對我們感興趣的某個事件發出某種行為的狀態
          trufun4  10:13:01
          今天的案例:                靚號狀態   
          “靚號”能被鎖定,被鎖定的“靚號”不能被其它用戶再鎖定。被鎖定的靚號如果在15分鐘內沒被用戶租用,則還回到初始狀態,可以再被(其他)用戶鎖定。被 鎖定的“靚號”可以被租用,租用到期后能被系統預留(即為先前的用戶保護起來),預留一個月后如用戶未續租,則此“靚號”可以被其他人鎖定或租用。在租用 狀態下的“靚號”,如果被同一用戶累積租用超過半年,則可以買斷。被買斷后,此“靚號”變成普通號。
          trufun4  10:16:07
          分析出狀態,事件,監護條件,效果
          一米陽光(6)  10:17:38
          作業交到那里啊
          trufun4  10:17:54
          討論
          啃鐵鼠<4>  10:20:36
          看起來好復雜啊
          trufun4  10:21:36
          跟我學分析,最后畫成圖,簡單
          承懿<2>  10:21:55
          可惜我用的mac系統
          承懿<2>  10:21:59
          沒uml工具
          一米陽光(6)  10:22:25
          trufunwu  狀態圖里面有沒有回到起點的流程?
          trufun4  10:23:08
          用楚凡的,不但教用工具,而且教分析,多好
          一米陽光(6)  10:23:41
          呵呵   
          webmaster(1)  10:23:52
          trufun產品支持跨平臺,mac操作系統沒問題
          一米陽光(6)  10:24:23
          個人用戶怎么收費啊....
          trufun4  10:28:45
          聯系網管
          承懿<2>  10:29:44
          我就做一個系統用了UML之后就沒用過了
          trufun4  10:29:46
          talenter(3)  10:27:14
          累積租用超過半年
          trufun4  10:28:05
          累計租期是一個屬性
          一米陽光(6)  10:29:52
          又沒vs 環境下的免費版 我上網站看了下 只看到eclipse免費版
          trufun4  10:30:26
          先試用
          trufun4  10:31:43
          九頭鳥的奮斗(705543728)  10:30:10
          靚號的屬性只有兩種 :預留和非預留
          trufun4  10:31:01
          是否已預留是一個屬性

          守護者(7)  11:02:50
          屬性 是靚號
          一米陽光(6)  11:03:05
          靚號 是對象吧?
          守護者(7)  11:03:07
          鎖定狀態也可以成為鎖定
          trufun4  11:03:15
          屬性是是否鎖定
          守護者(7)  11:03:23
          靚號可以是號的子類 也可以是號的屬性
          守護者(7)  11:03:27
          都是可以的
          守護者(7)  11:03:38
          靚號也可以分成靚號和普通號
          trufun4  11:03:38
          號碼為屬性
          守護者(7)  11:04:18
          屬性和子類多代表著不同 可以根據當前的需要變化
          trufun4  11:05:18
          事件為其他人鎖定
          守護者(7)  11:05:51
          恩  這里的事件在實現上可以定義成 方法或者委托都OK
          一米陽光(6)  11:06:26
          @守護者  定義成方法我理解 定義成委托 我不大理解 能解釋下嗎
          守護者(7)  11:06:51
           什么地方不理解
          守護者(7)  11:07:12
          是不理解委托本身 還是不理解 為什么可以定義成委托?
          trufun4  11:07:19
          效果就是對象接收事件后的動作
          trufun4  11:08:31
          效果為拒絕鎖定
          守護者(7)  11:08:44
          定義成delegate后 可以 創建event來自的觸發委托  不知道怎么解釋行不行
          一米陽光(6)  11:09:35
          屬性:  號碼  是否鎖定 是否靚號 鎖定人,鎖定開始時間
          事件: 發起鎖定
          效果: 1.已經鎖定 拒絕鎖定
                2.沒有鎖定 改變鎖定狀態
          這樣?
          守護者(7)  11:10:04
          而且很多情況下  如果 暴露類和方法是緊耦合的  定義成delegate后  可以有效減除耦合   一米陽光這么說了解了吧
          守護者(7)  11:11:22
          狀態在很多時候 都是在異步的時候用的   同步就不說了  太多了
          trufun4  11:12:35
          被鎖定的“靚號”是監護條件,意思是不是所有對象對此事件都響應
          守護者(7)  11:13:35
          不是 從低耦合的角度來說  應需要特定的觸發吧
          一米陽光(6)  11:13:50
          @守護者
          我不大理解 為什么 要 有效減除耦合

          我以往的經驗中 定義了委托后,就可以在程序的執行流程中插入另外的執行代碼
          守護者(7)  11:14:05
          要是我的話  就是用  delegate在域上面做控制 或者
          trufun4  11:14:14
          耦合是設計的概念
          守護者(7)  11:14:24
          使用代理模式來操作
          守護者(7)  11:14:50
          耦合和內聚是 設計理念
          啃鐵鼠<4>  11:15:08
          低耦合就是為了設計的簡單
          守護者(7)  11:15:08
          委托的使用 誰都會 小米
          守護者(7)  11:15:17
          告訴我你為什么會使用委托
          一米陽光(6)  11:15:26
          恩 是用過 但是不知道為什么要用
          守護者(7)  11:15:29
          使用的動機什么
          守護者(7)  11:15:50
           如果 不知道動機為什么要用  
          守護者(7)  11:16:10
          那你讓后面維護你代碼的后來人怎么維護呢
          一米陽光(6)  11:16:31
          我使用委托的情況 都是因為要操作本身以外的對象
          守護者(7)  11:16:43
          我在程序的每一行代碼都是用動機的 沒動機的代碼我寧愿不寫
          守護者(7)  11:17:00
          操作本身以外的對象
          有很多方式 為什么就是用委托呢
          承懿<2>  11:17:13
          講一下委托的具體實例
          承懿<2>  11:17:16
          舉一個聽聽
          守護者(7)  11:17:24
          也可以調用  代理  觀察者  繼承  很多方式呀
          承懿<2>  11:17:29
          有可能我用過,但是我不知道
          承懿<2>  11:17:35
          代理曉得
          守護者(7)  11:17:39
          為什么單單使用委托
          承懿<2>  11:17:39
          觀察者也曉得
          承懿<2>  11:17:48
          delegate
          承懿<2>  11:17:53
          講一下嘛
          一米陽光(6)  11:17:59
          可以不用關心 外部對象 的操作 過程 結果
          守護者(7)  11:18:11
          承  去網上看看得多是
          trufun4  11:18:27
          被鎖定的靚號如果在15分鐘內沒被用戶租用,則還回到初始狀態,可以再被(其他)用戶鎖定,這句話的狀態,事件,效果
          守護者(7)  11:18:36
           定義成接口也可以看不到 操作過程
          承懿<2>  11:18:39
          你說的那個不用關心操作過程的那個不是建造者模式嗎
          守護者(7)  11:18:47
          咋不用Interface呢
          一米陽光(6)  11:19:28
          rufun4  11:12:35
          被鎖定的“靚號”是監護條件,意思是不是所有對象對此事件都響應

          我的理解是 所有的對象都響應,然后根據屬性返回不同結果
          守護者(7)  11:20:58
          呵呵  觀察者也可以呀  通過觀察狀態進行雙向依賴   
          一米陽光(6)  11:21:03
          @守護者

          我可能表達的有誤
          這么說吧
          我使用委托 主要是引發event
          告訴外部對象  你可以執行某某操作了
          至于怎么操作,要不要操作 本身不去管

          一米陽光(6)  11:21:33
          建造者模式 我以前還真沒有了解過
          守護者(7)  11:21:49
           這才是我要問的  有時候為了接觸雙向依賴 才需要委托
          守護者(7)  11:22:29
          而且定義event后 委托能后自動觸發   在一定的場合下能帶來便利
          一米陽光(6)  11:22:31
          @守護者 我被繞糊涂了
          trufun4  11:22:41
          狀態有兩個,已鎖定狀態和初始狀態
          守護者(7)  11:22:49
           其實我就是在問你委托的使用動機
          守護者(7)  11:23:03
          因為 很多方式都能表達消息的傳遞
          承懿<2>  11:23:11
          像android的AlertDialog就是典型的建造者模式
          trufun4  11:23:21
          狀態有兩個,已鎖定狀態和初始狀態
          守護者(7)  11:23:21
          不同情況下  最佳方案不一樣 這就是我要問的
          承懿<2>  11:23:22
           
          守護者(7)  11:23:52
          trufunwu  我把狀態 用繼承放在子類也表達 也OK吧
          承懿<2>  11:24:06
          你不需要知道里面是怎么實現的,傳入不同的參數得到不同的界面
          承懿<2>  11:24:16
          里面的建造過程很復雜
          一米陽光(6)  11:25:31
              剛才說的這些 我沒有得到一個結論 我做的對不對  我該怎么做  為什么要這么做
          trufun4  11:25:56
          事件為未租用
          一米陽光(6)  11:27:36
          我真暈了  有沒有基礎書 我去啃啃
          trufun4  11:28:43
          效果是回到初始狀態的回到行為
          一米陽光(6)  11:29:53
          復位行為 我更容易理解  回到行為 有點繞 呵呵
          trufun4  11:31:01
          可以再被(其他)用戶鎖定,是遷移后狀態的內部行為
          trufun4  11:33:11
          剩下的網友自己分析
          守護者(7)  11:33:38
          呵呵
          守護者(7)  11:34:04
          tru 通過狀態 給大家引了很多模式上的話題呀  呵呵
          trufun4  11:34:16
          謝謝
          trufun4  11:36:09
          這是我的觀點,僅供參考
          trufun4  11:36:55
           
          守護者(7)  11:37:15
          build模式    一個系統 沒幾個  除非是超級類  但是我設計的軟件  多沒有大型類 有也本大而化小了
          守護者(7)  11:37:37
          我寫過一個有關代碼的寫過規則 當然 是以前項目制定的  可以去看看
          守護者(7)  11:37:51
          150行 以內的類能大到什么地方去呢  呵呵
          trufun4  11:41:08
          下次討論組件圖,記住帶著問題來
          守護者(7)  11:42:49
          這圖 是系統級的了  話題有點大
          一米陽光(6)  11:43:09
          trufunwu  已租用 和 已續租 為什么是2個狀態?
          守護者(7)  11:43:29
          不做上層設計的話 一般不會用到組件圖
          守護者(7)  11:44:14
          這樣子能區分租用是 第一次租 續租  是第N次租
          trufun4  11:44:41
          對事件的響應(行為)不同
          一米陽光(6)  11:46:12
          是不是一個要記錄開始時間 一個不用記錄?
          守護者(7)  11:46:20
          很有可能第二以后在租用 就會打折 打折的話 和全款 就是不同的行為  所以狀態會不一樣的
          trufun4  11:46:52
          屬性討論已談過,有租期
          一米陽光(6)  11:47:40
          根據 租期  來決定是否買斷 是吧
          trufun4  11:48:26
          是的
          posted @ 2011-12-20 17:07 trufun 閱讀(299) | 評論 (0)編輯 收藏

          2011年12月13日 #

          trufun1 9:38:26
          UML開課啦,今天討論序列圖
          talenter(2) 9:39:22
          即使不會 每次都踴躍參加
          trufun1 9:44:24
          用例是反映用戶和系統之間的交互,那系統是如何響應用戶動作呢?
          talenter(2) 9:44:58
          清水 你回答吧
          talenter(2) 9:47:58
          用例是反映用戶和系統之間的交互,那系統是如何響應用戶動作呢?
          trufun1 9:48:02
          系統通過內部對象通信,來完成系統響應,用序列圖來反映這個過程
          trufun1 9:59:29
          我給大家一個借書實際例子,這是網友上次要求的
          trufun1 10:00:36
          用例“借書”描述如下:
          1.圖書管理登錄圖書管理系統,進入借閱界面。
          2.輸入是否預定的信息、需要借閱的書或雜志的標題、借閱者, 最后點擊“借閱”按鈕。
          3.如果借閱者沒有預定:
          h 確定標題
          h 確定該標題下有效的書目
          h 確定借書者
          h 圖書館將書借出
          h 登記一個新的借閱
          4.如果借閱者有預定:
          h 確定借書人
          h 確定標題
          h 確定該標題下有效的書目
          h 圖書館將相應的書目借出
          h 登記一個新的借閱
          h 取消預定
          5.系統顯示一個成功借閱記錄。

          trufun1 10:02:47
          大家討論一下怎樣用序列圖表示這個過程?
          咖啡刀(232778741) 10:02:54
          呵呵  這個例子用了很久了吧
          talenter(2) 10:03:28
          經典的例子  猶如 hello world
          trufun1 10:03:38
          眾口難調
          trufun1 10:04:27
          也歡迎大家出題
          trufun1 10:06:29
          先找角色
          trufun1 10:09:30
          hawk(4)  10:04:51
          需要借閱者和圖書管理系統
          trufun1  10:06:36
          先找角色

          ==================歡迎登錄www.trufun.net下載免費UML2建模工具===============

          trufun1  10:08:16
          借閱者不是角色
          trufun1  10:09:19
          圖書管理員是角色
          talenter(2) 10:10:51
          操作員是 圖書管理員
          trufun1 10:12:18
          再找界面類
          talenter(2) 10:13:02
          登錄界面
          talenter(2) 10:13:09
          借閱界面。
          talenter(2) 10:13:33
          預定界面
          trufun1 10:13:40
          好,還有?
          talenter(2) 10:13:48
          圖書顯示界面
          trufun1 10:14:01
          很好
          talenter(2) 10:14:03
          借閱記錄界面
          talenter(2) 10:14:39
          還有嗎?
          talenter(2) 10:14:59
          借書人(讀者)
          talenter(2) 10:15:06
          借書人(讀者)信息界面?
          trufun1 10:15:43
          good
          隱身<4> 10:17:51
          畫用例圖為什么要找“界面”?
          talenter(2) 10:18:17
          時序圖吧
          隱身<4> 10:18:57
          哦,沒看清楚,
          trufun1 10:19:19
          接著找控制類
          talenter(2) 10:19:32
          隱身 你找控制累啊
          talenter(2) 10:19:50
          登錄驗證類型。
          trufun1 10:20:22
          新手可看以前的記錄
          trufun1 10:21:43
          還有?
          talenter(2) 10:21:49

          talenter(2) 10:21:50
          繼續找
          talenter(2) 10:22:21
          忘記控制類是個啥概念來
          堅持(4) 10:22:40
          規則
          talenter(2) 10:22:41
          信息顯示控制類(借閱成功否)
          trufun1 10:23:04
          對流程,驗證
          talenter(2) 10:23:05
          預定否控制類
          堅持(4) 10:23:22
          控制類就是規則  人 事 物 規則中的規則
          talenter(2) 10:23:28
          你們找啊
          talenter(2) 10:23:29
          堅持
          堅持(4) 10:23:39
          ???
          talenter(2) 10:23:48
          堅持 你找啊 你也是老師?
          trufun1 10:23:50
          借閱類
          隱身<4> 10:24:16
          時序圖是在類圖之前畫還是之后畫?
          trufun1 10:24:47
          一般在后面,可看楚凡TUP
          隱身<4> 10:25:39
          控制類我覺得應該是是一些對象吧,而抽象出來的對象可能每個人的都不一樣,所以時序圖也不盡相同。
          trufun1 10:26:13
          所以 登錄驗證和借閱規則是兩個控制類
          trufun1 10:26:41
          先找類,后面說對象
          trufun1 10:28:48
          再找實體類
          trufun1 10:31:10
          書是不是
          trufun1 10:31:40
          標題是不是
          trufun1 10:31:54
          還有?
          talenter(2) 10:32:11
          標題不是
          talenter(2) 10:32:14
          書是
          talenter(2) 10:32:18
          借閱者 應該也是吧
          talenter(2) 10:33:15
          管理員也是個
          trufun1 10:33:39
          是的
          堅持(4) 10:33:41
          哦,原來是在上課呀
          堅持(4) 10:33:42
          呵呵
          talenter(2) 10:34:10
          書  借閱者  管理員    借閱記錄(?)
          talenter(2) 10:34:38
          對啊 堅持 每周二授課啊  你積極點啊。。 學習還不積極。
          堅持(4) 10:35:03
          哈哈,不好意思,剛剛上來沒搞清狀況
          trufun1 10:35:06
          還有預定實體
          talenter(2) 10:35:56
          :)
          talenter(2) 10:36:32
          找完了嗎?
          隱身<4> 10:36:40
          圖書館算不算一個?
          talenter(2) 10:37:13
          圖書館就一個對象
          堅持(4) 10:37:15
          不算
          talenter(2) 10:37:29
          我感覺  都行吧。。 太廣泛了。。
          trufun1 10:37:39
          在該序列圖被抽象掉
          trufun1 10:38:34
          無需和此對象通信
          trufun1 10:39:22
          下面我找消息流
          talenter(2) 10:40:11
          消息流找的思路是?
          talenter(2) 10:40:14
          流轉?
          talenter(2) 10:40:52
          登錄   查找,確認   借出  還有半個取消預訂? 這些算吧?
          堅持(4) 10:41:34
          遲到的同學小聲問一下,題目在哪里呢  
          talenter(2) 10:42:00
          我給大家再發一遍
          talenter(2) 10:42:20
          trufun1 10:00:36
          用例“借書”描述如下:
          1.圖書管理登錄圖書管理系統,進入借閱界面。
          2.輸入是否預定的信息、需要借閱的書或雜志的標題、借閱者, 最后點擊“借閱”按鈕。
          3.如果借閱者沒有預定:
          h 確定標題
          h 確定該標題下有效的書目
          h 確定借書者
          h 圖書館將書借出
          h 登記一個新的借閱
          4.如果借閱者有預定:
          h 確定借書人
          h 確定標題
          h 確定該標題下有效的書目
          h 圖書館將相應的書目借出
          h 登記一個新的借閱
          h 取消預定
          5.系統顯示一個成功借閱記錄。
          trufun1 10:42:26
          注意現在開始前面的類都實例化成對象了
          talenter(2) 10:42:48
          都是具體的東東了?
          talenter(2) 10:42:53
          老師 指點12
          trufun1 10:46:15
          .“圖書管理登錄圖書管理系統,進入借閱界面”,可以單獨成為一個登陸序列圖,在這里只要引用就可以了
          trufun1 10:48:54
          .“輸入是否預定的信息、需要借閱的書或雜志的標題、借閱者, 最后點擊“借閱”按鈕”是角色和界面在通信
          talenter(2) 10:49:37
          學習ing
          trufun1 10:52:46
          ”3.如果借閱者沒有預定,4.如果借閱者有預定“,是那個對象和那個對象在通信?
          talenter(2) 10:53:35
          角色和控制類?
          talenter(2) 10:53:47
          不做借閱者不是角色
          talenter(2) 10:54:10
          借閱者和 預訂實體通信
          trufun1 10:55:33
          是借閱控制對象和預定實體類在通信
          talenter(2) 10:56:05
          哦  控制對象和 預訂實體  說成借閱者不對了  哈哈
          trufun1 10:59:48
          “確定標題”是那個對象和那個對象在通信?
          talenter(2) 11:01:05
          書和?
          talenter(2) 11:01:30
          管理者?
          trufun1 11:01:35
          不對
          talenter(2) 11:01:42
          有書對吧?
          trufun1 11:01:50
          沒有
          talenter(2) 11:03:09
          不懂了
          trufun1 11:03:32
          是借閱控制對象和標題對象在通信
          talenter(2) 11:04:36
          標題 抽象了個實體?
          talenter(2) 11:04:58
          標題 不是書的一部分? 組成部分?
          堅持(4) 11:05:10
          看抽象的粒度了
          堅持(4) 11:05:36
          你可以認為標題僅僅是書的一個屬性
          talenter(2) 11:06:07
          標題抽象 怎么抽象?
          堅持(4) 11:06:07
          也可以認為它是一個獨立的對象,可以擁有自己的信息和行為
          trufun1 11:06:30
          不是,圖書館不但有書,還有雜志等,是對這些的總稱
          talenter(2) 11:07:05
          這個標題不是書的標題?
          talenter(2) 11:07:18
          確定標題  是確定是書還是雜志?
          talenter(2) 11:07:21
          還是小說?
          堅持(4) 11:07:46
          4.如果借閱者有預定:
          h 確定借書人
          h 確定標題
          h 確定該標題下有效的書目
          h 圖書館將相應的書目借出
          h 登記一個新的借閱
          h 取消預定
          這個鏈路下,標題并不是書的一部分
          trufun1 11:07:50

          talenter(2) 11:08:23
          ok
          trufun1 11:09:26
           “確定該標題下有效的書目”是那個對象和那個對象在通信?
          talenter(2) 11:09:54
          標題和書?
          trufun1 11:10:29
          很好
          talenter(2) 11:11:20
          這種在實現上怎么弄呢?
          talenter(2) 11:11:25
          標題是個對象
          talenter(2) 11:11:28
          書是個對象
          talenter(2) 11:11:41
          對象之間有關聯  哪個負責去確定呢?
          trufun1 11:11:42
          最后我說
          trufun1 11:12:22
          不是關聯是消息鏈
          talenter(2) 11:13:01
          哦  怎么通過消息鏈去實現?
          talenter(2) 11:13:12
          我們在實現的時候怎么去組織代碼?
          trufun1 11:13:52
          甲調乙的方法實現消息通信
          talenter(2) 11:14:58
          傳遞的參數呢
          trufun1 11:15:08
          這是個例子
          talenter(2) 11:15:22
          從標題確定書目  應該是標題調用書目的方法吧。
          trufun1 11:15:51
          消息中的參數,就是方法中的參數
          trufun1 11:16:00

          talenter(2) 11:16:07
          好比 書目有個方法是 根據標題查書  這樣子的話就要把標題當做參數傳遞吧?
          trufun1 11:16:37
          是的
          talenter(2) 11:16:58
          從類的關系上來說是關聯吧  
          talenter(2) 11:17:37
          為啥說不是關聯是消息鏈那  是不是角度不一樣 或者再不通的圖例中不一樣。  
          trufun1 11:18:23
          在動態和靜態中叫法不同
          堅持(4) 11:19:10
          關聯是靜態關系
          trufun1 11:19:18

          talenter(2) 11:19:19
          哦 好的
          talenter(2) 11:19:39
          謝謝。
          talenter(2) 11:19:49
          堅持 你能主動回答問題吧
          talenter(2) 11:21:08

          talenter(2) 11:21:13
          我想學習
          talenter(2) 11:21:21
          我感覺學習下還是不錯的  機會難得。
          trufun1 11:22:26
          “確定借書者”是那個對象和那個對象在通信?
          talenter(2) 11:23:57
          借閱控制對象和借閱者實體類在通信
          talenter(2) 11:25:37
            學著學著就有點會 但是還不太會。
          trufun1 11:26:04
          不錯啦
          talenter(2) 11:26:19
          謝謝
          trufun1  11:48:46
          下次講狀態圖,記住帶著問題來

          ==================歡迎登錄www.trufun.net下載免費UML2建模工具===============
          posted @ 2011-12-13 16:01 trufun 閱讀(379) | 評論 (0)編輯 收藏

          初學UML者,應該避免這樣一種誤解――認為就是由參與者和用例構成的用例圖就是用例模型,用例圖只是在總體上大致描述了系統所能提供的各種服務, 讓我們對于系統的功能有一個總體的認識。但用例圖并非如此,在用例圖中我們還需要針對每一個用例描述它的詳細信息,這些信息包含在用例規約中,因此用例模 型應該是由用例圖和每一個用例的詳細描述――用例規約所組成的。每一個用例的用例規約都應該包含以下內容:

          l       簡要說明 (Simple):簡要介紹該用例的作用和目的。

          l       基本流 (Basic Path):表示用例正常的場景。在基本流中系統執行一系列活動步驟來響應參與者提出的服務請求。

          l       異常流 (Exception) 描述與該用例相關的非功能性需求(包括性能、可靠性、可用性和可擴展性等)和設計約束(所使用的操作系統、開發工具等)。

          l       前置條件 (PreCondition) 執行用例之前系統必須所處的狀態。

          l       后置條件 (PostCondition) 用例執行完畢后系統可能處于的一組狀態。

          l       備選流(Alternate)描述用例發生過程中偶爾或者異常發生的場景。

          在UML2建模工具中都有提供針對用例的相關描述內容,下面我們以Trufun Plato UML2建模工具為例進行具體案例的用例描述(可到www.trufun.net上免費下載)。

          用例規約基本上是用文本方式來表述的,為了更加清晰地描述用例的事件流,也可以選擇使用狀態圖、活動圖或時序圖來輔助說明(具體可參考Trufun 其他框圖操作)。如活動圖有助于描述復雜的決策流程,狀態轉移圖有助于描述與狀態相關的系統行為,序列圖適合于描述基于時間順序的消息傳遞。

          比如用戶pose機上取款用例,可以對該用例進行相關的場景描述。


          Trufun Plato UML2建模工具還可以根據以上的用例場景描述,生成的標準的需求用例規約文檔,下圖是TrufunPlato UML2建模工具生成的用例規約文檔的word文檔結構圖。操作步驟:菜單項“UML建模”—》“導出”—》“導出為文檔”,在彈出對話框中選擇模板為 “需求/用例實現規約”,其他根據自己需要進行設置,系統將自動生成我們所需要的word文檔。

          posted @ 2011-12-13 16:01 trufun 閱讀(704) | 評論 (0)編輯 收藏

          2011年11月21日 #

          一.基于UML2標準的活動圖模型

          活動圖可以通過一系列操作將業務流程或者軟件進程以工作流的形式表示出來,使用活動圖可以描述多種類型的流程:

          可以表示用戶和系統之間的業務流程或者工作流;

          可以表示某一個用例執行的順序步驟;

          可以表示軟件組件之間的交互流程。

          這里我們通過舉例,應用Trufun Plato建模工具針對一個用例的活動過程來進行描述,具體操作步驟:選擇Trufun模型瀏覽器中已經創建好的用例,右鍵菜單選擇“新建框圖”—“創建 活動圖”,或者選擇當前繪圖區需要進行詳細活動圖描述的用例,右鍵菜單選擇“新建框圖”—“創建活動圖”。如下兩圖


          Trufun Plato UML2建模工具進行繪制(可到www.trufun.net上免費下載)。

          二  活動圖

          創建活動圖之后,Trufun Plato工具會自動展開活動圖的繪圖區和工具框如下圖Trufun Plato提供的活動圖工具框:每一個活動元素的具體含義和詳細操作步驟可以參考http://www.trufun.net/helponline/x/。


          基本活動圖元素:一般一個活動圖基本要包含活動、控制流、判斷、合并、分支這些元素,活動用來表示流程中的某個活動或者步驟,控制流表示活動之間的 控制順序,判斷用于不同條件產生不同結果的轉移,合并和分支用于多個并行活動之間。Trufun Plato按照UML2標準提供了具有明確含義的30多種活動,可根據實際情況選擇應用。

          活動圖的創建也并非事無巨細,不需要面面俱到,對于活動圖中共用的部分,也可以作為一個獨立的活動圖,然后在其他活動圖中嵌套利用,比如下面的流程 圖就可以把銀行卡的校驗部分,就可以作為一個單獨的活動圖,其在用戶的轉賬、取款、查詢、存款過程中都需要用到。對于特別復雜的流程,或者那些希望在一副 活動圖中展示所有流程細節的,那么選擇在活動圖中引入子活動圖,就是一種非常方便的方法,否則我們所展示的活動圖流程將使人非常難以看全和理解。


          不同的活動圖用在項目的需求、分析、設計過程中,所關注和創建的內容也是不同的。本過程也可以在需求開始時候簡單處理,幫助參與者理清相關的流程即可,如下圖:


          使用分區(泳道):Trufun Plato建模工具中,提供分區作為活動圖劃分的泳道,每條泳道代表整個工作流程的某個部分的職責,該職責由組織的某個部門來執行,泳道之間的排序不會影 響其語義,每個活動狀態都會屬于一條泳道范圍,而數據流和控制流則可以在不同泳道之間流轉。

          posted @ 2011-11-21 15:19 trufun 閱讀(1017) | 評論 (0)編輯 收藏

          2011年11月9日 #

          討論中所用到UML2建模建模工具為trufun plato,可到www.trufun.net官方網站免費下載!歡迎大家加入trufun家園2qq:15851850交流群,有trufun支持現場解答相關UML應用問題


          海東青(1)  10:37:13

           海東青(1)  10:37:28
          其它的動作是否可以呢
          CK(2)  10:38:14
          這么去想:你是銷售員,讓你平白無故去錄入銷售單,你愿意嗎
          CK(2)  10:38:25
          沒事在那輸單子
           海東青(1)  10:38:45
          可是這是工作啊,誰讓他賺這份錢了呢
          CK(2)  10:38:57
          至少不能夠作為第一層業務用例
          CK(2)  10:39:05
          第一層應該是銷售商品
           海東青(1)  10:39:04

          trufun3  10:39:10
          入庫管理,庫存盤點
           海東青(1)  10:39:58

           海東青(1)  10:40:23
          對,銷售商品的概念要大多了
          trufun3  10:40:36
          我覺得是
           海東青(1)  10:40:49
          比如去庫房取貨等動作
          trufun3  10:41:00
          可以再分低級用例
           海東青(1)  10:41:21
          那么,就是這么說,這些用例圖是不能體現各種表單字樣的唄
          trufun3  10:41:40
          如銷售訂單管理,銷售退貨,銷售統計
           海東青(1)  10:42:19
          trufun3  10:41:40
          如銷售訂單管理,銷售退貨,銷售統計
          你說的這些應該是現低級用例唄
          trufun3  10:43:06

          trufun3  10:43:36
          銷售管理是高級用例,相當于子系統
           海東青(1)  10:44:54

          trufun3  10:45:48

          trufun3  10:46:07
          但圖畫錯了
           海東青(1)  10:46:34
          差什么呢
          trufun3  10:46:53
          高級和低級用例之間不是單向關聯
          trufun3  10:47:19
          而是包含擴展關系
          Edoox(4)  10:47:55
          包含和擴展是兩個關系吧?
           海東青(1)  10:48:07

          Edoox(4)  10:48:15
          高級和低級用例應該使用包含關系
           海東青(1)  10:48:23
          這是包含,包含和擴展是什么區分概念呢
          trufun3  10:49:07
          包含是必須做,擴展是可選做
           海東青(1)  10:49:19
          哦,明白
          Edoox(4)  10:49:39
          包含,比如使用入庫管理功能必須要登錄系統,
           海東青(1)  10:50:13
          那每個動作都有這個登錄系統的動作,不能集中到一個用例中去嗎?
          trufun3  10:50:29
          是的
           海東青(1)  10:50:32
          有些系統的查詢是不需要登錄系統的
          trufun3  10:50:47
          作為其他用例的包含用例
           海東青(1)  10:51:08
          如醫院住院費用查詢,只需要輸入住院號,查詢就可以了,還有網站,只有管理員才登錄
          trufun3  10:52:10

           海東青(1)  10:52:35
          這個圖,默認都需要登錄,不可以嗎?
          trufun3  10:53:18
          不行
           海東青(1)  10:53:32
          比如,銷售商品部分,包含登錄系統
          那入庫管理,也包含登錄系統,那我豈不是要action后面都要包含一個登錄系統的動作
          trufun3  10:54:34
          一般是單點登錄,做一個就可以了
          Edoox(4)  10:55:11
          建議按角色劃分下,一個角色所執行的用例都應該包含系統登錄用例
          trufun3  10:55:28
          如果是各個子系統都有自己登陸入口,當然要畫了
          trufun3  10:56:09
          畫業務用例圖
           海東青(1)  10:57:47

           海東青(1)  10:58:04
          Edoox(4)  10:55:11
          建議按角色劃分下,一個角色所執行的用例都應該包含系統登錄用例

          是這樣的畫法嗎?:
          trufun3  10:58:22
          很好
          Edoox(4)  11:01:58
          good
          trufun3  11:02:35
          Edoox,你有問題嗎?
           海東青(1)  11:03:15
          ,以我的示例,能幫助大家理解一下這個用例圖,是最好的啦,不行,直接畫到底,有時間大家就討論一下,直到類圖,呵呵,不知道大家能否幫忙到底啊
          trufun3  11:03:42
          下次討論類圖
          Edoox(4)  11:03:45
          一般,人員應該抽象為系統用戶,其他的人員都可以繼承這個系統用戶,凡是系統用戶都執行系統登錄用例。
          trufun3  11:05:00
          當然可以,設計沒有標準答案
          trufun3  11:05:31
          只要有道理就可以
          trufun3  11:06:57
          系統用戶不是抽象出來的
          trufun3  11:07:32
          而是一個實實在在的對象
          trufun3  11:08:00
          可以在實現系統外,也可以在實現系統內
          Edoox(4)  11:09:26
          恩,有道理
           海東青(1)  11:10:32
          有道理
          trufun3  11:10:47

          trufun3  11:12:27
          用例圖是誰發明的?
           海東青(1)  11:13:38
          我又改了一下,感覺庫存盤點跟入庫單管理是一個層次的,大家再評評
           海東青(1)  11:13:40

          trufun3  11:14:22
          進步很大
           海東青(1)  11:14:30

           海東青(1)  11:14:53
          下午再細化一下,準備考慮詳細內容
          trufun3  11:14:58

          trufun3  11:15:19

           海東青(1)  11:15:23
          先工作一會兒啊,哈哈,受益匪淺啊
          trufun3  11:15:44

          trufun3  11:19:05
          記住下次帶問題來
           海東青(1)  11:19:42
          好的
           海東青(1)  11:19:52
          肯定很多的問題
          trufun3  11:20:09
          888
           海東青(1)  11:20:14
          這個用例圖畫完了,下一個應該是什么圖呢,肯定不是直接到類圖了吧
          trufun3  11:20:53
          是的
           海東青(1)  11:21:02
          我想是不是序列圖呢
           海東青(1)  11:21:14
          部署圖是什么時候畫的呢
          trufun3  11:21:40
          按理論應該是活動圖
           海東青(1)  11:22:08
          好,謝謝了
          CK(2)  11:27:15
          個人感覺,訂貨單管理不屬于庫存管理,屬于采購管理。
          另外你這個訂貨單是指你的用戶向你訂貨,還是你向供應商訂貨,有歧義
           海東青(1)  11:28:01
          是根據缺貨生成的訂貨單
           海東青(1)  11:28:10
          應該放店主那兒,對吧
          CK(2)  11:40:29
          根據缺貨生成的訂貨單,那屬于采購的業務
          CK(2)  11:40:38
          應該屬于采購員的職責
          CK(2)  11:40:51
          你少一個角色
          trufun3  11:41:38
          這里的角色是庫管
          trufun3  11:42:13
          也可以是銷售員
          trufun3  11:42:55
          銷售訂單可以轉化為采購訂單
          trufun3  11:43:40
          庫存要貨單也可轉化為采購訂單
          trufun3  11:43:54
          角色不是采購員
          CK(2)  11:45:04
          你的“訂貨單管理”,管理的是訂貨單,不是缺貨單
          CK(2)  11:45:12
          這2個是可以轉化,但是不是一個業務實體
          CK(2)  11:45:30
          你如果在這里沒分清,到后面抽出業務實體,定義系統對象的時候,就會模糊
          CK(2)  11:46:13
          庫管可以產生“原料需求清單”,也可以叫做“缺貨單”。這個單子可以作為產生“采購清單”的數據來源,但是不代表他們是一個東西
          CK(2)  11:47:08
          我認為還是分清楚點好。特別是做一些大的項目,看的更明顯。

          比如貨物可能有替代性,你缺少A,不一定采購A,可能采購B,C代替之
          trufun3  11:47:16
          訂貨單里沒講清楚,是采購訂貨單,還是銷售訂貨單
          Edoox(4)  14:43:04
          CK的業務經驗很豐富,概念很清晰。
          深藍醫生(45383850)  14:44:40
          不錯,受教 

           

          ==================歡迎加入UML交流群討論相關問題===================
          posted @ 2011-11-09 11:48 trufun 閱讀(232) | 評論 (0)編輯 收藏

          僅列出標題  下一頁
          主站蜘蛛池模板: 临汾市| 德江县| 肥乡县| 宣武区| 咸阳市| 锡林郭勒盟| 宜良县| 木里| 登封市| 荣成市| 上杭县| 万年县| 克什克腾旗| 德保县| 封丘县| 马鞍山市| 贵定县| 攀枝花市| 邵东县| 林芝县| 延长县| 涡阳县| 贡觉县| 潮安县| 长葛市| 铜鼓县| 阳山县| 浙江省| 鄂伦春自治旗| 南宁市| 武宁县| 于田县| 潼南县| 榆树市| 盐津县| 张北县| 颍上县| 尼勒克县| 平安县| 龙海市| 和田县|