2014-11-04 60 views
4

是否有可用於捕獲到一個文本格式,這是很容易被人理解存在於UML序列圖中的信息的形式語言?正式語言UML序列圖

在我們的地方,很多時候軟件要求在其中難以審查,驗證其正確性,並進行更改複雜的序列圖來指定。另外恕我直言,程序員寧願從明確的需求文本表示中實現,而不是從龐大的多頁圖中實現。

回答

4

(1),也能夠表達在UML序列信息的專有幾乎是正式文本格式語言程序員圖理解(並且還可以通過一些其他的人)。

我的意思是設計和Steve Hanov實現的語言,實例的綜合列表可在https://www.websequencediagrams.com/examples.html,我一直強調的一個例子下面,這樣就可以得到可讀性的想法:

enter image description here

(2)但是,當心,你(或其他人)可以寫在任何語言不好,不可讀的,代碼(文本或圖形),並改變語言不會自動改變你的(或別人的)習慣是一個自動使代碼更好,更可讀,更易維護

(2.1)寫下「要求的明確文本表示」,例如,以客戶批准的用例形式不是一件容易做的事情,也不是容易學習的東西,只是語言的改變不會改善它。 (參見例如Stack Overflow: From user stories to sequence diagram一些更多的指針)

(2.2)目標受衆(讀者)的UML序列圖不僅是程序員也少了技術性風險承擔者對他們的照片可能價值數千字。在我看來,讓程序員的Java僞代碼,甚至可以通過一個工具,如果需要逆向工程爲UML序列圖(見Stack Overflow: how to generate sequence diagram from Java source code或谷歌:「Java的序列圖」一些更多的指針)是更好的,然後試圖找到/創造一個序列圖特定語言

(2.3)有肯定的是有助於通過使用技巧,例如縮放,超鏈接,摺疊/展開塊讀取大UML設計工具,調諧細節的顯示水平和有紙張尺寸等A3 or A2可以將典型的多頁面圖轉化爲單頁面圖


從你的描述似乎在你的地方,你有工藝問題,你最好問在https://softwareengineering.stackexchange.com/help/on-topic

我可以在這裏左右問什麼話題一個問題嗎?

程序員堆棧交易所是問答&一種用於軟件開發的專業人士和學生及相關領域誰感興趣的關於軟件開發的概念性問題得到專家解答網站。

如果您有疑問...

  • 軟件要求
  • 軟件架構和設計
  • ...
  • 開發方法和流程
  • 軟件工程管理
  • ...
+0

對一個有趣的問題的一個有趣和深思熟慮的答案。 – BobRodes 2014-11-06 22:27:50

2

xmojmr的方法是記錄用例場景的有效方法,如果您的序列圖很混亂,可能是因爲它們沒有充分的文檔記錄。正如xmojmr所說,一張圖片勝過千言萬語,但有時幾百個字真的有助於解釋圖片!我想分享一些你可能會發現有幫助的背景。

我看到描述需求的過程有三個層次,其中用例情景是第三個層次。頂層是一個用例圖,它顯示了系統中的不同用例以及使用該系統的利益相關者如何交互。下一級是這些用例中的每一個的細節。我爲此使用了一個「用例敘述」。第三個層次是每個單獨的路徑(「用例場景」)。

第二層和第三層之間存在很多混淆。部分原因在於它們在一定程度上一起運行,例如,通過用例分析相關的成功和失敗路徑是一種情況而不是兩種情況是合理的。至少,我寧願把它們當作一種場景。

我更喜歡使用活動圖來記錄用例敘述。雖然在序列圖(至少2.0版本)中幾乎可以做任何事情,但IMO發散行爲,決策樹和並行行爲在活動圖中比在序列圖中更明顯。因此,每個用例需要一個活動圖,然後是用例中每個單獨場景的一個序列圖。

在您的過程中,它看起來像序列圖不伴隨正式用例場景文檔。如果你谷歌「用例場景」,你會發現一些這樣的例子。但是,請記住,很多示例實際上都記錄了我稱之爲「敘述」的內容。

我在湯姆彭德的UML聖經(威利出版,2003年)使用的術語。另一本很棒的書是Alistair Cockburn的寫作有效使用案例here是一個很好的樣本。

+1

也許在我們的地方,我們並沒有真正使用序列圖來達到它們的預期目的。我們主要用它來記錄協議/接口。但恕我直言,沒有任何一個UML圖真的看起來適合這個目的。 – Ajoy 2014-11-07 15:35:58

+0

@Ajoy在這種情況下,請看[uml-diagrams.org:UML協議狀態機圖](http://www.uml-diagrams.org/protocol-state-machine-diagrams.html)。我同意Bob的觀點,即UML活動圖很有用,而且[「沒有這樣的東西作爲一個最好的UML圖來展示它」](http://stackoverflow.com/a/23301076/2626313) – xmojmr 2014-11-07 16:18:15