天天看點

業務序列圖上等待響應怎麼畫

Alan 2020-5-14 12:41

業務序列圖上等待響應怎麼畫

各位同學,對于1.3 1.6 在需求規約這樣寫

系統請求A系統處理XXX,

系統等待B系統發送分析結果

這樣合理不? 還是要拆成1.6拆成另一個用例,但是使用者對引入系統的期望是回報xxx結果,拆成兩個用例不大恰當

UMLChina潘加宇

所有的消息,往下追究,都是異步的,難道1.1就不需要時間嗎,也可以分兩截來畫。

關鍵是厘清楚從涉衆的視角看,哪些是“不這樣不行”,哪些是“這樣也行”。

如果涉衆認為系統做完1.3,就可以告一段落了,不必再等待,不這樣不行!那就是按照圖上畫。

如果如果涉衆認為系統必須做到1.7才算告一段落,不這樣不行!1.4-1.6是不存在的,因為涉衆不在意。

如果如果涉衆認為系統必須做到1.7才算告一段落,開發團隊設想了一個1.4-1.6的實作方案……想也沒用,因為做需求的時候,開發團隊必須被殺光,系統是外包給外星人做的。

另外業務序列圖上的消息的抽象級别是:“系統之間的協作”,比“對象之間的協作”要大,很可能業務序列圖上的一條消息,就映射某系統的一個用例,然後在分析設計時演化出該系統内對象之間調用的很多條消息。

“系統等待”這樣的語句如果描述的是意念,那就不要寫,除非“等待”是系統必須做的行為(以後可能映射成wait(10000)之類的代碼)。寫清楚外面告訴系統什麼,系統做什麼,系統告訴外面什麼。

圖畫得不錯,自學能畫得這樣,有一定的水準了

Alan 2020-5-14 15:32

了解,謝謝潘老師,我再消化下,涉衆希望是到1.7 這步, 1.4-1.6 畫出來,是之看看答疑裡說錄影機拍到什麼就畫什麼,但是陷入了先實作的細節

UMLChina潘加宇

序列圖一開始照這樣畫也行了,但映射的系統用例就是一個

Alan

嗯嗯,我覺得用例應該一個,書上說箭頭指向系統的就是系統的用例,是以我在這裡就有疑問,沒處理過這種情況

UMLChina潘加宇

對的,序列圖也改過來更好

Alan

雖然A不能響應,但是調用A時,其實是有期待的,這裡應該有擴充?

UMLChina潘加宇

你是說用例規約裡?調用外系統肯定有擴充,因為外系統是不受控制的

Alan

是的,說的是用例規約,在軟體方法的P214 , 如果不從外系統那裡得到任何結果,這個外系統就不是輔執行, 嚴格來說,是不能從A系統得到結果。但涉衆期望在這裡能得到結果

UMLChina潘加宇

有結果啊,這個結果就是對方接收了1.3,擴充條件是:A無響應,而不是A搞不定

Alan

我知道我的問題了, 因為系統調用A後,得不到響應,這個是實作,寫需求時不要考慮實作

UMLChina潘加宇

這裡面還是一樣的,期待到什麼目标。

系統已經發出消息,例如:系統播放一段聲音給外面某人聽,外面這個人聽不聽得到,系統不想管也管不着。

另一種:

系統發出消息,并感覺到外系統已經收到

Alan 2020-5-14 15:59

并感覺到外系統已經收到-----嗯,這裡的感覺外系統已經收到,并不是說要A系統回一個消息包,隻要能感覺外系統即可, 怎麼實作,是開發人員的事

Alan 2020-5-15 9:35

如果如果涉衆認為系統必須做到1.7才算告一段落,不這樣不行!1.4-1.6是不存在的,因為涉衆不在意。----我鄱了下書,這個說法可能不大恰當,業務用例由組織中各個系統的協作完成,要如實反映有哪些系統參與了這個業務用例片斷的實作

沒有1.4,業務用例不能實作,不這樣不行,同時也為下一次改進提供了“現狀”

把1.6修改成虛線,表示消息通知,就像A叫B借錢給C,B->是虛線。這樣修改是否更恰當

業務序列圖上等待響應怎麼畫

UMLChina潘加宇

你這個圖如果說的是現狀的情況,這樣如實描述是對的。外星人來了,也不更改現狀就是如此的事實。

把握好抽象級别就行了

業務序列圖上等待響應怎麼畫
業務序列圖上等待響應怎麼畫