欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
使用用例捕獲業(yè)務(wù)需求(IBM developerWorks 中國)

導致區別的七個(gè)原則





級別: 高級

Thomas Behrens, 首席技術(shù)官, Alpheus解決方案

2005 年 2 月 15 日

來(lái)自Rational Edge:這篇文章基于Simpay,一個(gè)通過(guò)移動(dòng)電話(huà)操作的支付系統,的業(yè)務(wù)需求工程項目的經(jīng)驗,大致描繪了關(guān)于捕獲業(yè)務(wù)需求的七個(gè)實(shí)用原則。

假定你已經(jīng)有需求工程規范的一些經(jīng)驗,而且你突然面對一個(gè)包括多個(gè)公司,并跨越不同商業(yè)領(lǐng)域的重大業(yè)務(wù)需求方案。開(kāi)始在你的心里出現問(wèn)題:用例是否會(huì )在這個(gè)項目中使用?我應如何決定用例粒度的正確層次?我應如何構建用例模型?我必須裁剪標準的 IBM? Rational Unified Process 或 RUP以達到交付標準嗎?這篇文章提供Alpheus,一位國際性的IT顧問(wèn),如何在Simpay(一個(gè)可共同操作的手持電話(huà)支付系統)組織需求工程項目 1 中應對這些問(wèn)題。它提取我們在項目中所學(xué)到的,成為七個(gè)實(shí)用的原則,它將舉例說(shuō)明你怎樣在你自己的業(yè)務(wù)需求計劃中取得成功。

該論述假定讀者對需求工程,使用用例及對RUP的基本協(xié)議,有很好的理解。

Simpay 是關(guān)于開(kāi)發(fā)聯(lián)合現在分段的手持電話(huà)支付市場(chǎng)的、能共同操作支付的全新架構的第一步 2 。圖 1 顯示業(yè)務(wù)上下文的概觀(guān)。Simpay 占領(lǐng)這上下文的中心位置,使用開(kāi)放的接口,來(lái)整合手持電話(huà)商業(yè)要求者(代表多個(gè)零售商及[或] 內容供應者)和手持電話(huà)操作者(代表并認證最終客戶(hù)),成為在線(xiàn)金融交易。Simpay 為支付認證,結算并解決手持電話(huà)操作者與手持電話(huà)商業(yè)要求者之間的資金流,提供服務(wù)。 3

圖 1: Simpay 商業(yè)上下文概觀(guān)

業(yè)務(wù)需求過(guò)程被嵌入到一個(gè)把支付解決方案(如Simpay 產(chǎn)品)轉變進(jìn)入市場(chǎng)的大型過(guò)程中。產(chǎn)品展現了一個(gè)使用手動(dòng)或自動(dòng)過(guò)程的、從頭建造的、新業(yè)務(wù)。由于預算必須控制得恰到好處,因此決定延期實(shí)現確切的自動(dòng)化過(guò)程,直到業(yè)務(wù)已經(jīng)被建模。

整體項目及商業(yè)特性可以摘要為:

  • 多公司(Orange,Telef a M es,T-Mobile和Vodafone)
  • 重視規模方面(支持約二億八千萬(wàn)客戶(hù))
  • 擁有虛擬團隊的多國公司
  • 持有名譽(yù)方面的潛在影響
  • 覆蓋多重專(zhuān)家領(lǐng)域(舉例來(lái)說(shuō),無(wú)線(xiàn)通通訊,財政服務(wù))
  • 規則加強器,擁有多種不同的法律約束

這些特性表達了許多關(guān)于建立所有企業(yè)涉眾、共同的、一致的業(yè)務(wù)需求集合的重要性和可見(jiàn)性。

我們介紹一個(gè)與RUP 4 結合的過(guò)程,跨越Simpay從商業(yè)想法到產(chǎn)品部署的項目生命周期。我們把活動(dòng)和交付產(chǎn)物映射到 RUP的四個(gè)階段(初始,精化,構建和產(chǎn)品化)及它們各自的里程碑。RUP 活動(dòng)和交付產(chǎn)物最初剪裁為軟件開(kāi)發(fā)過(guò)程,然而項目已經(jīng)有一個(gè)非常寬泛的范圍(舉例來(lái)說(shuō),一個(gè)交付產(chǎn)物是新公司的建立,如Simpay Ltd.)。然而,活動(dòng)和交付產(chǎn)物有時(shí)大幅度地偏離 RUP 。而且,這個(gè)與 RUP最佳實(shí)踐相反的進(jìn)程,并不是可重復的。 5 然而,許多個(gè)別交付產(chǎn)物在重復的/增量的基礎上產(chǎn)生,提供早期的評審,驗證和質(zhì)量保證,以及偶爾依靠早期的活動(dòng)啟動(dòng)。

當我們想要在業(yè)務(wù)層次上捕獲需求,而不指定特定交付產(chǎn)物是手動(dòng)的或自動(dòng)的,我們使用 RUP 業(yè)務(wù)建模規范作為我們的參考規范,并用需求工程的一些元素進(jìn)行強化。對于我們定制的交付產(chǎn)物結構,參見(jiàn)文章的補充內容。

實(shí)踐原則

下面,我們將討論由我們的經(jīng)驗總結的實(shí)踐原則。他們將會(huì )幫助你:

  • 為你的業(yè)務(wù)需求尋找正確的邊界(原則 1:得到正確范圍)
  • 適當結構化你的用例模型(原則 2:向你的用例目標和原則挑戰; 原則3:使用需求屬性決定最好的用例模型)
  • 進(jìn)一步詳細說(shuō)明你的業(yè)務(wù)需求(原則 4:分而治之:通過(guò)業(yè)務(wù)參與者分解)
  • 適當描述你的業(yè)務(wù)用例(原則 5:用例描述:闡明“ 是什么”,而不是“如何做”)
  • 連接你的業(yè)務(wù)用例,避免冗余,并確認你的需求(原則 6:提出域模型和原則7:使用實(shí)體的生命周期)

原則 1:確定正確范圍

需求管理的目的是為了確定正確范圍。邊界在哪里呢?誰(shuí)在里面而誰(shuí)在外面呢?這是更高層次的抽象,更為重要的。在范圍方面很小的變化,就可能會(huì )帶來(lái)與企業(yè)所有者相關(guān),將要開(kāi)展的工作,及項目運行的最后期限的重大影響。

讓我們回顧圖 1,這次把它當作一個(gè)市場(chǎng)視圖。 6 這個(gè)視圖顯示購買(mǎi)(購物相互作用)和付款相互作用;它也顯示Simpay作為支付中介?,F在,比較圖1與圖2。除了使用不同的記號(UML)之外,圖 2 顯示兩個(gè)不同的語(yǔ)境。上面一個(gè)是具有銷(xiāo)售功能的商人的語(yǔ)境,它在購買(mǎi)商品用例中表現。下面的一個(gè)是 Simpay 擁有的支付功能,用請求支付用例表現。 7

如果你認真地看,你將會(huì )看到這個(gè)特征把Simpay從市場(chǎng)視圖分為兩個(gè)部分:Simpay 產(chǎn)品和和 Simpay 有限公司。當我們發(fā)現 Simpay 產(chǎn)品不僅僅Simpay有限公司(也就是,中心實(shí)體)需要,也被移動(dòng)操作者、及移動(dòng)商家要求者實(shí)體需要時(shí),這種區別是必要的。同時(shí),這些實(shí)體識別到產(chǎn)品的功能;因此,所有的三方都在項目范圍內。

這是在斤斤計較嗎?不!它幫助我們清晰地建立項目邊界。這意謂著(zhù)我們可以從早期開(kāi)始,就能避免不必要的討論。在事后,這些區別可以看得很清楚,除了新的業(yè)務(wù)活動(dòng),為涉及到需求活動(dòng)的當事者確定邊界。然而,這是值得研究的工作。

圖 2: 商業(yè)語(yǔ)境和 Simpay 語(yǔ)境

原則 2: 挑戰你的用例目標

一旦你確定了你的范圍,你可以開(kāi)始確定用例和參與者。一個(gè)通常的問(wèn)題是用例模型爆炸式快速增長(cháng),特別當你正在業(yè)務(wù)需求的抽象層工作的時(shí)候。很快的,你將會(huì )發(fā)現你需要表達很多內容。從字面上,停留在你的用例模型的頂層以避免“700 用例并發(fā)癥”。如果你的用例模型正在爆炸式增長(cháng),你應該挑戰你的用例粒度。對于 Simpay來(lái)說(shuō),在最高抽象層,我們以大約二十種主要用例作為結束。記住,一個(gè)用例傳遞值的一些東西給參與者;它為參與者實(shí)現一個(gè)目標。確保所有用例目標都在相同的層次上,并且對于業(yè)務(wù)建模來(lái)說(shuō)所有目標都在抽象層上。

有一個(gè)來(lái)自 Simpay 語(yǔ)境的具體實(shí)例。支付可以立刻實(shí)現——支付授權 8 和支付捕獲 9 同時(shí)發(fā)生,或延期實(shí)現——授權在捕獲之前發(fā)生。圖 3 顯示了一個(gè)可能的用例圖。然而,請注意用例所表現的目標并不在同一層次。商家的目標是接受支付。他必須服從管理規則,并把支付事務(wù),分離為捕獲之后的獨立授權,這可能不是他樂(lè )意的。同時(shí),你被迫表達在請求支付授權和請求支付捕獲之間的一些關(guān)系。一個(gè)簡(jiǎn)單的解決方案是把這兩個(gè)用例,結合為一個(gè)稱(chēng)為Request Deferred Payment的用例。 10 你以更少的用例完成,并進(jìn)一步得到易于理解的用例建模。

如果在授權和捕獲之間有一個(gè)長(cháng)的時(shí)間間隙,那是什么呢?這你無(wú)須關(guān)心!時(shí)間間隙并不是你分隔用例的指示器;尤其是業(yè)務(wù)用例可以是長(cháng)期運轉的。決定是否分隔用例的本質(zhì)標準是他們的目標是否不同。

導致用例膨脹的另外一個(gè)危險是我稱(chēng)之為“睡蓮并發(fā)癥狀”。當你為一個(gè)用例找到一種變化的時(shí)候,它就開(kāi)始了;在 Simpay 例子中,它可能是支付發(fā)生的通道(例如,SMS,WAP)。你可能馬上被我們例子中的多用途用例所誘惑(要求使用WAP,SMS等方式立即支付)。也可能存在更多的維數。很快地,你就可以像睡蓮覆蓋池塘一樣,覆蓋你的用例圖。相反地,向目標挑戰。如果你做些分析,你將會(huì )發(fā)現目標對于所有這些用例都是相同的。把焦點(diǎn)集中在本質(zhì)的用例上,稍后你會(huì )知道表現這些變更的更好的方法(舉例來(lái)說(shuō),在用例描述的特別需求部分)

同時(shí), 當你確定支持目標,如維護重要的業(yè)務(wù)實(shí)體,把它們排除在外,使之獨立并使用自己的圖支持用例包。

圖 3:不同的目標層次

原則 3:使用需求屬性決定最好的用例模型

需求屬性包含需求信息。優(yōu)先級:顯示一個(gè)需求 對于 商業(yè)用戶(hù)有多重要。迭代:表明需求分配到哪個(gè)迭代。穩定度:指出哪些需求可能遭受變更。還有更多的屬性,但是,讓我們把目光集中到上述三個(gè)屬性上。請確定你在堅持不懈地為你的用例捕獲這些屬性。為什么呢?因為他們可以使你的過(guò)程變成更輕松。特別地,你將時(shí)常會(huì )有關(guān)于如何構建用例模型 11 的多種選擇;當你這樣做時(shí),用上述的屬性定位你的用例模型。這將產(chǎn)生最少的重構工作,并聚焦于你的工作。

實(shí)際上,考慮下列的指導方針以決定你的選擇:

  1. 如果任何的這些指導方針違背原則2,并導致用例增加,不要應用指導方針!
  2. 如果兩個(gè)用例有不同的優(yōu)先級,避免合并它們。
  3. 如果兩個(gè)用例被分配到不同的迭代中,避免合并它們。
  4. 如果兩個(gè)用例具有不同的穩定性等級,避免合并它們。
  5. 不要為取得不穩定用例的模型花太多時(shí)間;這個(gè)功能可能根本上不需要改變?,F在,把焦點(diǎn)集中在穩定用例上,以得到正確的模型。

記?。耗闳绾沃貥嬘美P蛯?huì )影響其它的工作。業(yè)務(wù)用戶(hù)將不得不找到適合新模型的方法,對于不同的可交付變量的追蹤也將需要被更新。從一開(kāi)始就正確地構建模型,也將節省其他人的時(shí)間。

在上面的例子中,我們堅決反對把延期和即付功能,歸并到一個(gè)單一用例中(如,請求支付),因為“初始Simpay開(kāi)發(fā),可以而且也會(huì )包括延遲的或直接的支付”可能很快會(huì )被產(chǎn)生;無(wú)論選擇哪種支付機制,其它的將是以后版本的范圍。這種用例反復屬性的變化,導致分裂為即付請求和遲延支付請求。

原則 4:分解和規則 – 通過(guò)業(yè)務(wù)參與者分解

現在你有一個(gè)結構良好并可以理解的業(yè)務(wù)用例模型。接下來(lái)你要往哪里去呢?一件重要的事情是 不要 把功能分解到你的用例模型中;即,不要把你的用例打破成較小的部分。這樣的部分將會(huì )變成孤立的,違反用例步驟的最重要的優(yōu)點(diǎn)之一:在參與者的目標語(yǔ)境中呈現需求。相反地,答案是遞歸地在當前語(yǔ)境中,基于用例步驟重新應用。

讓我們回過(guò)頭看看圖 3。底部的 Simpay 產(chǎn)品語(yǔ)境顯示由Simpay 有限公司,移動(dòng)操作者和移動(dòng)商業(yè)要求者實(shí)現的Simpay 產(chǎn)品。這些實(shí)體的 RUP 術(shù)語(yǔ)是 業(yè)務(wù)參與者 。這些業(yè)務(wù)參與者合作完成 Simpay 產(chǎn)品功能。一個(gè),二個(gè),或所有的業(yè)務(wù)參與者都參與每個(gè) Simpay 產(chǎn)品用例。通過(guò)這一信息,你可以為每個(gè)業(yè)務(wù)參與者(由Simpay產(chǎn)品語(yǔ)境分配的)產(chǎn)生一個(gè)語(yǔ)境。每個(gè)語(yǔ)境由下面二者建立:(1)通過(guò)業(yè)務(wù)參與者劃分用例,和(2)從現有的業(yè)務(wù)參與者派生出新的參與者。這個(gè)過(guò)程在圖 4 中舉例說(shuō)明,它為移動(dòng)操作者顯示了一個(gè)實(shí)例結果。帶有兩段用例和一個(gè)新參與者(Simpay 有限公司)的新的移動(dòng)操作者語(yǔ)境已經(jīng)由更高抽象層派生出來(lái)?,F在你能分開(kāi)控制(相互調用)新的語(yǔ)境。 12

這與功能分解有什么不同嗎?是的!取替在Simpay 產(chǎn)品語(yǔ)境(不是由參與者目標激發(fā)的)創(chuàng )建孤立的部分的是,你已經(jīng)用新參與者表現的精確目標,創(chuàng )建了更小的域??纯匆苿?dòng)操作者語(yǔ)境的結果。明顯地,Simpay 有限公司代表移動(dòng)業(yè)務(wù)需求方(依次代表貿易商)做這些事情。然而,移動(dòng)操作者的領(lǐng)域是自我包含的;它不需要了解Simpay 有限公司參與者做什么。相反地,功能分解方式將把用例分解成許多部分:獲得商業(yè)細節;進(jìn)行外匯交易;授權支付;捕獲支付。哪種方式更適合管理方案范圍呢?

圖 4: 業(yè)務(wù)參與者劃分。 點(diǎn)擊這里放大。

原則 5: 用例描述:陳述“是什么”,而非“如何做”

很幸運;我們擁有感興趣的業(yè)務(wù)代表,他們很快地就適應了用例方式,和有能力的技術(shù)隊伍,他們的目標是把需求自動(dòng)翻譯成科技規范。然而,如同它被生成一樣,業(yè)務(wù)代表盡可能地由狀態(tài)激發(fā),而且科技隊伍對于強加于他們之上的不必要的限制因素感到不安。用例通過(guò)描述產(chǎn)品做什么來(lái)展現需求,以達到參與者的目標?!?做什么 ”和“ 如何做 ”間的產(chǎn)品活動(dòng)是人們特別是全球性的分布化團隊不太清楚的一些事情,誤解是正常的。這里有四種類(lèi)型的指導方針可以幫助我們避免這些錯誤:

業(yè)務(wù)需求交付產(chǎn)物的結構

Simpay 產(chǎn)品( 如這里所示)業(yè)務(wù)需求的可交付文檔,采用了UML類(lèi)圖結構。過(guò)程框架和功能架構是高層次的業(yè)務(wù)需求文檔,相當于針對 Simpay 產(chǎn)品的RUP業(yè)務(wù)視圖和業(yè)務(wù)用例模型。在產(chǎn)品定義中捕獲詳細說(shuō)明的業(yè)務(wù)需求,產(chǎn)品定義是接近于三個(gè)業(yè)務(wù)參與者(在Simpay中作為實(shí)體引用):Simpay有限公司,移動(dòng)操作者和移動(dòng)業(yè)務(wù)需求方)的業(yè)務(wù)用例模型的文檔集。對于 Simpay 有限公司,產(chǎn)品定義捕獲了在RUP中引用、作為業(yè)務(wù)分析模型的東西。標準的 RUP 交付產(chǎn)物內容已經(jīng)被修改,因為:

  • 業(yè)務(wù)需求存在于兩個(gè)抽象層面上(例如,Simpay 產(chǎn)品和移動(dòng)電話(huà)操作者或Simpay 有限公司或移動(dòng)業(yè)務(wù)需求方)
  • 在第二個(gè)抽象層上要求兩個(gè)不同層的細節:
    a)一個(gè)層次是為 Simpay 有限公司確切描述,如何建立業(yè)務(wù)需求,或者通過(guò)技術(shù)解決方案自動(dòng)實(shí)現,或者由操作者手動(dòng)編寫(xiě)。
    b)另一個(gè)層次主要是為移動(dòng)操作者和移動(dòng)業(yè)務(wù)需求方,描述設計準則(不包括個(gè)別實(shí)體)。
  1. 特定的自然語(yǔ)言表達有技術(shù)內涵。(舉例來(lái)說(shuō),回路)。如果你使用這些表達,確定他們在作為技術(shù)設計建議時(shí)不會(huì )被誤解。
  2. 業(yè)務(wù)用例描述商業(yè)流;它們決定誰(shuí)是信息的來(lái)源,以及誰(shuí)是目標。它們沒(méi)有暗示流的技術(shù)實(shí)現。沒(méi)有明確定義信息是否要推或拉,信息交換是批量的或在線(xiàn)的,是否要使用緩存。這樣的技術(shù)性的決斷主要關(guān)聯(lián)到非功能需求。確定人們理解業(yè)務(wù)用例中的詞,例如聯(lián)系、請求,不要為基本的技術(shù)交流基礎設施暗示技術(shù)約束。
  3. 爭取涉及參與者及產(chǎn)品間的簡(jiǎn)單交流模式。嘗試遵照同步請求/響應 13 溝通模型。這暗示一個(gè)請求的響應在用例描述持續情況下,或者被接收,或者不被接收(舉例來(lái)說(shuō),在超時(shí)的情況下)。當用例已經(jīng)在它的描述中繼續前進(jìn)時(shí),它不可能接受響應。請求的表達是充分的,并且它簡(jiǎn)化了描述。應強調的是,它并不暗示同一模型的技術(shù)性實(shí)現。
  4. 當你為用例步驟編號時(shí),人們通常認為你正在下令應該如何完成功能。 14 然而,用例步驟的順序通常僅僅關(guān)系到參與者的下一個(gè)交互。當在這樣一組步驟的特定順序被托管時(shí),請習慣于跟隨明確的狀態(tài)。

交流這些指導方針是重要的。對于 Simpay 來(lái)說(shuō),我們在產(chǎn)品概述文檔(見(jiàn)頁(yè)面邊欄)捕獲它們。在RUP中最適合做這件事的地方是用例模型,指導方針文檔。更為重要的是,如果你正工作于定制的過(guò)程之中,要有一個(gè)試驗。選取一個(gè)用例,并努力與整個(gè)隊伍前進(jìn)一致,這樣每個(gè)人都會(huì )對你將如何生成事務(wù)及管理期望,感到滿(mǎn)意。

原則 6:提出域模型

在 RUP 中一個(gè)域模型(見(jiàn)圖 5)被定義為:在域的語(yǔ)境中捕獲最重要類(lèi)型的對象。域模型是業(yè)務(wù)分析模型的一個(gè)子集,業(yè)務(wù)分析模型包含描述業(yè)務(wù)參與者(見(jiàn)原則4)和業(yè)務(wù)實(shí)體如何獲得用例功能的業(yè)務(wù)用例實(shí)現。域模型很有用,即使你不提出業(yè)務(wù)用例實(shí)現。它通過(guò)為你的用例描述提供具有精確含義的通用詞匯術(shù)語(yǔ),來(lái)連接你的各個(gè)用例。域模型確保相同的術(shù)語(yǔ)指向相同的業(yè)務(wù)實(shí)體。正好也捕獲如下類(lèi)型的需求:

  • 業(yè)務(wù)實(shí)體和它們的多樣性之間的聯(lián)系(舉例來(lái)說(shuō),一個(gè)移動(dòng)用戶(hù)使用一個(gè)或多個(gè)移動(dòng)電話(huà))
  • 限制因素(舉例來(lái)說(shuō),一個(gè)支付不能夠超過(guò)一個(gè)特定的數值)和推導規則(舉例來(lái)說(shuō),利息計算),尤其當這些不僅僅與一個(gè)用例相關(guān)時(shí)

結構化你的域模型文檔,為這一信息(見(jiàn)到圖 5)加入占位符。在我的經(jīng)驗中,業(yè)務(wù)用戶(hù)對這些細微改進(jìn)的形式感到相當滿(mǎn)意,而且它為你提高穩定性和完全性檢驗:

  • 所有的業(yè)務(wù)實(shí)體及它們的屬性是否都已經(jīng)定義?
  • 你是否已經(jīng)捕獲了所有的聯(lián)系?
  • 所有涉及的業(yè)務(wù)實(shí)體是否至少在一個(gè)用例中?
  • 所有涉及的業(yè)務(wù)實(shí)體是否都存在于域模型的用例中?

當創(chuàng )造域模型的時(shí)候,除了根據常識和你的讀者偏好之外,你能使用下列的指導方針:

  1. 使用圖幫助描述,尤其是顯示業(yè)務(wù)實(shí)體間的彼此聯(lián)系。
  2. 寧愿冗余的泛化;否則,你可以從你的業(yè)務(wù)用戶(hù)那里要求。
  3. 對于簡(jiǎn)單的關(guān)系類(lèi)型使用屬性;否則,你將會(huì )使你的圖混亂。
  4. 當屬性的類(lèi)型會(huì )明顯避免制造困惑時(shí),忽略它們。
  5. 如果識別符(比如用戶(hù)ID)與商業(yè)無(wú)關(guān),忽略它們。
  6. 只有當參與者名字有助于澄清語(yǔ)境的時(shí)候,才使用它們。否則,意味著(zhù)把業(yè)務(wù)實(shí)體作為參與者命名,以避免弄亂你的圖。
  7. 產(chǎn)生相關(guān)條目的簡(jiǎn)單導航技巧。域模型將會(huì )時(shí)常被用于查找信息。對于 Simpay來(lái)說(shuō),我們使用IBM Rational Rose為域模型捕獲信息,使用IBM Rational SoDa來(lái)產(chǎn)生簡(jiǎn)單的導航文檔。

一個(gè)域模型如何與一個(gè)術(shù)語(yǔ)表相關(guān)聯(lián)?一個(gè)術(shù)語(yǔ)表定義了項目中使用的重要術(shù)語(yǔ)。以這個(gè)定義為基礎,一個(gè)域模型是術(shù)語(yǔ)表中術(shù)語(yǔ)的一個(gè)子集。但要避免冗余:在術(shù)語(yǔ)表或域模型中定義一個(gè)條目,但是不要在兩者里面都下定義。通常,當你知道更多關(guān)于你的商業(yè)域時(shí),術(shù)語(yǔ)從術(shù)語(yǔ)表轉移到域模型。然而,你的術(shù)語(yǔ)表對于那些不存在于業(yè)務(wù)實(shí)體中的術(shù)語(yǔ),仍然是有用的交付產(chǎn)物內容。

圖 5:域模型圖和相關(guān)文本。 點(diǎn)擊這里放大。

原則 7: 使用實(shí)體生命周期

實(shí)體生命周期在商業(yè)規范中未得到充分利用,但是,一個(gè)好的解決方案是可用的:UML狀態(tài)圖。 你為什么要使用這些,以及它們如何關(guān)聯(lián)到用例?業(yè)務(wù)實(shí)體(舉例來(lái)說(shuō),一個(gè)移動(dòng)使用者)通常有跨用例的生命周期。一個(gè)在狀態(tài)之間的用例過(guò)渡(通常是不同的,狀態(tài)圖給一個(gè)統一視圖,它關(guān)于你的重要業(yè)務(wù)實(shí)體在哪里,如何被操縱。圖 6 顯示一個(gè)關(guān)于移動(dòng)使用者業(yè)務(wù)實(shí)體的例子。轉變表現了維護移動(dòng)用戶(hù)的用例 15 ,并在不同狀態(tài)間轉化它。

作為一個(gè)分析師,你也可以使用狀態(tài)圖保持你的需求集的一致性和完整性。我的業(yè)務(wù)實(shí)體是如何成為實(shí)物的呢?我是否已經(jīng)錯過(guò)了一個(gè)重要的狀態(tài)?我是否已經(jīng)描述我的用例中支持的所有轉變的所有狀態(tài)?我是否錯過(guò)了影響轉變的特別條件?

限定最重要的業(yè)務(wù)對象的生命周期,而在你的文檔中描寫(xiě)所有狀態(tài)。你的用例將以正確定義的域模型術(shù)語(yǔ),描述涉及的這些狀態(tài),在保持可讀性的情況下,把歧義從你的規范中排除。一個(gè)用例描述(涉及到圖 6 所示的實(shí)例)會(huì )如下被看到:

4. 移動(dòng)操作者確認移動(dòng)用戶(hù)并未被禁止。

這種禁止狀態(tài) 指明了移動(dòng)用戶(hù)所處的狀態(tài),并為狀態(tài)展現了一個(gè)非常精確的定義。依賴(lài)參數選擇,你可以使用格式來(lái)強調文本中的狀態(tài)。

生命周期最好作為由業(yè)務(wù)實(shí)體定義(如圖5所示)耦合的附錄,置于域模型中。你能夠使用IBM Rational Rose來(lái)維護狀態(tài)圖并文檔化狀態(tài),而且你也可以使用IBM Rational SoDa 產(chǎn)生易于操縱的文檔。

采用這種方式,當你把實(shí)體生命周期置于業(yè)務(wù)用戶(hù)之前時(shí),你可以就像技師 16 一樣,在沒(méi)有做出需求時(shí),平衡使用它們的好處。

一個(gè)對于未來(lái)的調查:通過(guò)模型驅動(dòng)架構, 17 你將會(huì )獨立于一個(gè)特定的平臺,受益于預先指定的精確性態(tài)。除此之外,可運行的 UML 將會(huì )使你可以在你開(kāi)始著(zhù)手不惜代價(jià)的細分你的需求之前,確認你前面的模型。

圖 6:狀態(tài)圖:手機用戶(hù) -- 生命周期





回頁(yè)首


總結

用例是捕獲業(yè)務(wù)需求的一個(gè)優(yōu)秀的方法。只要你定義適當的抽象層,以支持可理解及可追蹤的全部細節,他們就可以通過(guò)大的項目很好地伸縮。僅僅增加用例的數目并不起作用。確認你的需求的業(yè)務(wù)用戶(hù),會(huì )對基于用例的方法感到非常舒服。關(guān)于這種方法,精心描述你的自動(dòng)化業(yè)務(wù)用例,讓技術(shù)需求的技術(shù)團隊通常更容易被接受。

因此,如果你被分配了一個(gè)復雜的業(yè)務(wù)需求項目,不要絕望。通過(guò)應用用例方法于需求工程,一個(gè)由可靠的開(kāi)發(fā)過(guò)程及本文中呈現的原則,細化支持的方法,你就能克服許多挑戰,并使方案成功。正如我所做的,你甚至可能已經(jīng)發(fā)現,它是一個(gè)令人滿(mǎn)意的實(shí)踐。





回頁(yè)首


感謝

我很感謝在 Simpay 中的人們,因為他們在本文中描述的方法中所承擔的工作。特別是Tim Jones,Simon Richards,Martin Rugfelt 和 Jim Wadsworth。特別感謝我的同事Martin Elliffe提供了有幫助的說(shuō)明及建議。





回頁(yè)首


腳注

1在這該文章中,我使用需求工程,作為業(yè)務(wù)需求工程一個(gè)簡(jiǎn)稱(chēng)。

2本文所用的例子來(lái)源于寬泛的Simpay語(yǔ)境。一些已經(jīng)被簡(jiǎn)化了,僅僅用來(lái)論證要點(diǎn)和要求的觀(guān)察保密性。因此,請讀者不要把這些例子,理解為真實(shí)的Simpay活動(dòng)。

3更多關(guān)于 Simpay 商業(yè)模型的細節,見(jiàn) www.simpay.com。

4更多關(guān)于 RUP 的細節,見(jiàn) Philippe Kruchten的《The Rational Unified Process. 》,Addison-Wesley,2000及 http://www-306.ibm.com/software/awdtools/rup/index.html。

5非迭代交付的主要障礙是,IT解決方案和它的操作者是由第三方轉包,并通過(guò)一組法律合同集成到整個(gè)過(guò)程的事實(shí)。一個(gè)迭代過(guò)程會(huì )在這些法律合同中增加重要的復雜性。

6盡管不是與RUP關(guān)聯(lián)的標準4+1 視圖的一部分,但這一視圖是基本的。在最后,你不得不出售你的產(chǎn)品。

7兩個(gè)語(yǔ)境有很明顯的關(guān)系。作為在商業(yè)語(yǔ)境中購買(mǎi)產(chǎn)品用例的一部分,商業(yè)觸發(fā)器支付請求使用 Simpay 語(yǔ)境中的例子。

8商人確定手機使用者能支付和為他儲備的貨幣。

9商人請求應支付給他的金額。

10實(shí)際上,你甚至可以更進(jìn)一步考慮,并有一個(gè)獨立的支付請求用例:我們的確決定反對它。理由是范圍管理, 但是繼續向下看。

11我不在這里討論擴大并包括聯(lián)系。以我的經(jīng)驗,最好在你的業(yè)務(wù)用例模型中避免這些聯(lián)系。

12在《 The Object Advantage》(Addison-Wesley,1995,第173頁(yè)),E.A. Jacobsen 介紹了一個(gè)算法,用于映射一個(gè)業(yè)務(wù)用例模型到一個(gè)系統用例模型。這里使用一個(gè)類(lèi)似的算法,把一個(gè)業(yè)務(wù)用例模型映射到不同語(yǔ)境中的另一個(gè)業(yè)務(wù)用例模型。

13在確定的環(huán)境中,你可能有一個(gè)不存在響應的請求。如果響應沒(méi)有業(yè)務(wù)含義,這與被提議及將被使用的模型完全一致。

14相反地,我強烈建議你使用一個(gè)有細密紋理的編號樣式,作為用例描述。它允許你改良一致性、完整性檢查及參照。

15如果一個(gè)用例在多種狀態(tài)間轉換為業(yè)務(wù)實(shí)體。你可以轉換為備選流或一組步驟(舉例來(lái)說(shuō),使用標簽或你用例描述的數字記號)。

16讓我強調一下,它們可能看起來(lái)象技師,但是它們不是技師,因為它們僅僅書(shū)寫(xiě)商業(yè)決策的文檔。

17更多關(guān)于模式驅動(dòng)架構的細節,參見(jiàn) http://www.omg.org/mda 和 Behrens,Richards的《 StateLator in Advanced Information Systems Engineering》,Springer,2000。





回頁(yè)首


參考資料

  • 您可以參閱本文在 developerWorks 全球站點(diǎn)上的 英文原文。




回頁(yè)首


關(guān)于作者

Thomas Behrens 是Alpheus(www.alpheus.com)的技術(shù)總監和需求工程市場(chǎng)方面的頭。他宣傳在建立解決方案之前,需要了解并定義它,主要在技術(shù)驅動(dòng)環(huán)境中。他在電訊和財務(wù)服務(wù)領(lǐng)域已經(jīng)領(lǐng)導了大量的需求項目。由于作為 IBM Rational Rose的首批用戶(hù)之一,他對于IBM Rational工具和這種訓練的相關(guān)過(guò)程非常專(zhuān)業(yè)。他在軟件工業(yè)中作為不同的角色有14年的經(jīng)驗。Thomas 是一個(gè)認證 IBM 講師。他從德國慕尼黑的陸??杖姶髮W(xué)獲得計算機科學(xué)的學(xué)位。

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
OO系統分析員之路--用例分析系列(一)
Rose實(shí)例:構造銀行業(yè)務(wù)模型
UML業(yè)務(wù)建模實(shí)例分析
IT售前咨詢(xún)白皮書(shū)——分析客戶(hù)需求
對use case的一點(diǎn)理解——by Vega
本人對于“用例”的一些理解和總結
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久