豬肉價歷史最高

秒速賽車規律

來源騰涼︰ www.sblunwen.com 作者露蚊伎︰anne 發布時間典︰2019-02-08 論文字數公茶︰0字
論文編號懦︰ sb2019020814502524839 論文語言短怯︰- 論文類型習︰-
1. 軟件工程的發展 計算機從剛開始被發明到現在芍棘譚,經過了廣泛的發展和研究暑講,也變得越來越好突蟲,其中瓷,由于計算機技術帶給人們越來越多的便利顱,使得人們更趨向于研發計算機應用軟件跟技
1. 軟件工程的發展
計算機從剛開始被發明到現在勃賄,經過了廣泛的發展和研究糖劫伎,也變得越來越好賒安藕,其中沫健奔,由于計算機技術帶給人們越來越多的便利臨嚏識,使得人們更趨向于研發計算機應用軟件跟技術惺檢,為人們提供更多的服務傻寫體。但是鬼尾,有一段時間之內火脊互,計算機軟件的發展遠遠落後于整個計算機行業的發展態勢參縷惕。計算機軟件在應用的過程中遇到了許多問題和危機諒,給整個計算機系統的發展帶來了聞疲害慷雇咕。因此芯,面對此類問題的出現萌蹋,人們開始逐漸研發並構建軟件工程篙,使得軟件逐漸向對象軟件進行開發[1]靡僵佛。
為了能使軟件在發展的過程中更為具體和系統錯蹬仁,軟件行業的專家Booch攜十、Jacobson和Rumbaugh早在1995年就開始在彼此的研究方案和概念中進行相互分析舅,並汲取對方理論中的可取之處猛倒估,進行更為系統的研究部,在此基礎上卡苦鶴,將軟件的應用和分析進行了範圍上的擴充青腹,使模型變得更為廣泛和抽象瞧販。為了方便人們進行理解杉,此後又提出了建立統一的語言UML鎢,後來又出現了為了方便軟件規範化的開發軟件RUP郝凹圖。
計算機使用技術在日常生活的方方面面都得到了相應的使用純,而且現在對計算機技術的需求也不斷擴大規尼, 各個學校也開始逐漸開設計算機應用管理技術桑,但是在信息管理者的方面來說急欠,計算機在應用起來並不是十分順暢徐百。因為讀者在進行計算機信息的讀取時琺漂會,需要采用相應的管理條件和硬件條件乾膩笆,讀取不同的信息需要不同的管理要求韌斥懼。因此奪,就需要系統同時具備兩種不同的交互功能簍,也要有發布系統的功能涵。另外糞舉膏,在設計方面需要給人們耳目一新的感覺慨滔,使人們能感到美的體驗襲。當前采用的系統就是根據人力資源管理所需要的進行設計的史豹,能夠符合大部分管理者的要求慷楞,因此為了能夠是全部的管理信息得到開發和應用郎操,需要在功能上進行更大的擴展濕鄧,使系統在應用起來能夠更加具體爽擄橙、方便[2]固娶。
2. 軟件開發方法
2.1 軟件生命周期法
軟件生命周期指的是整個軟件從開始進行使用到最終完全無法操作的整個過程污苗。此周期主要包括以下幾個階段曬︰軟件計劃縣、需求分析房祁、系統設計挽、編碼的實現嚏容夕、對系統的設計和檢測以及維護運行等階段[3]
在進行各個階段的測試過程中跋,需要確定好我們最終的目標繞。其中灘,對軟件進行功能的描述和使用淑垮,對軟件進行限制曝,並對其進行相應的說明梢,使該項工作能夠得到較為理想的結果坪戒茶。
在需求分析階段[4]嗽傲,主要是使用系統化的分析方法對軟件的功能和結構進行描述箋勁,盡可能地捕捉用戶權婚陸,尤其是最終用戶的期望和約束杉。這一般分為系統概要設計階段和系統詳細設計階段兩部分溯。前者是從系統整體結構出發迷覽骨,將系統的功能模塊劃分出來牆繭遼,並定義其主要的輸入和輸出磕勾縛,而具體的處理過程放在下一階段進行迪雹淨。在詳細設計階段菠悄,要對上一階段劃分出來的各個模塊進行具體的描述莢錨寫,這時需要定義一些數據結構或文件格式訃煩檔,甚至是函數的名稱秸鉑、參數等信息筒茨緩。其中對數據庫的邏輯設計和物理設計也屬于這一階段入鄉。
在編碼階段[5]逞,主要的工作集中在對程序設計語言進行評估和選擇俱襯,選擇合適的開發工具和IDE牡強,並在此基礎之上進行代碼開發臼,完成系統預定的各個功能模塊絡泥岔。
在測試階段[6]捐角,主要的原則是證明軟件中存在錯誤或隱患泊捷詞,而不是證明軟件的正確性煎。排除錯誤是測試的主要目的祈,錯誤包括沒有實現功能或功能沒有按照業務要求進行孟、性能沒有達到預定的期望守、存在某些不能再現的情形等部。測試一般有三個階段碗︰單元測試頭扒、組裝測試和系統測試祈。單元測試又叫單體測試殺認,是對系統實現的每個功能模塊進行單獨的測試井毋膽。功能模塊可以是一個函數搗封稜,也可以是一個封裝的類或組件卷,根據模塊的代碼進行強項調用進行測試惋。組裝測試是根據功能模塊的劃分粒度不同而產生的戊締立,是將需要進行配合才能實現的功能拼裝提來澈籌,組成更加完善的功能模塊握澄,對其進行輸入輸出的測試燎穿。系統測試時針對整個運行的系統進行的磊逃客,要測試系統的功能熾、業務流程喊讓、安全性徑、負載性能等劃,是從用戶使用的角度進行的測試酪範。
一般情況下舍拱,比較保險的開發方式是將軟件測試嵌入到軟件的編碼過程中瑞,兩者交叉進行 [7]牆認俯。
在對系統進行維護和運行時賈,首先要把系統安裝到實際的客戶使用環境中去婁蹭僚,按照客戶的條件進行系統的試運行慨。這里主要根據用戶的業務需求駕羨勉,對系統各個功能模塊進行操作來鱗薔,觀察系統是否按照業務的標準進行輸入結果吶,並達到合理的運行效率頓。這種試運行是對系統安全性的測試槍晤伯,這個階段輸出的系統日志是非常重要的駒泉,它可以為系統發現錯誤後的修改提供重要的線索反。這一階段可以持續的時間很長貉看酥,直到該軟件系統不再使用詳飯唬。
傳統的瀑布模型[8] 將軟件開發分為以下幾個階段蝕脯筆︰制定計劃沃、需求分析賒、軟件設計寂技捻、編碼爬、測試瀝春、運行與維護毛席墟。這是一個非常有價值的軟件開發管理模型玻康剎。每個階段都是承上啟下的零斯,嚴格按照模型規定的開發順序進行先駱,可以避免很多返工的事情發生搓笑壤。每個階段都應具有完善的質量保證體系抨棚壩,為下一階段提供有利的支撐碴刺船。在上一階段沒有完成相應的開發條件前互京,一般不允許進行下一階段的開發祿。
2.2 原型法
在大型工程設計中經常使用樣機呻鈴,建造樣機主要有兩個目的[9]且紗逝︰第一是檢驗關鍵設計方案的正確性;第二是檢驗系統是否真正滿足用戶的需要莢。在計算機硬件系統開發中鈕,每一種新產品的問世幾乎都離不開樣機的制造陛。對于軟件系統阮佃,構造原型系統(相當于工程中的樣機)的目的是使用戶通過原型系統的實踐而獲得關于未來的系統將怎樣為他們工作的更具體更直接的概念另怒豢,從而可以更準確地提出和確定他們的要求磁塑栓。
采用構造原型系統策略的主要理由是[10]金︰由于人類對事物的認識是一個由淺入深藉、由拿嶠裕糊到清楚地過程邪輩糜,因此不能預先確定所有的需求;在用戶和軟件開發人員之間存在著交流的障礙;用戶可以通過一個實在的模型獲得感性認識匹,以確定需求;在開發過程中重復和反復是必要地和不可避免的;目前有快速建立原型系統的工具可以選用宋入肺。
用戶在使用了原型系統後就能夠指出系統中的哪些特性是他們所喜歡的如市潮,哪些特性是他們所不能接受的陵,以及他們還需要哪些新的功能缽零。在用戶需求的基礎上開發出來的經過實踐檢驗的系統更可能真正地滿足用戶的需要[11]棘惱。
原型法開發模型如圖2-2所示嘉。
2.3 面向對象軟件工程
在1981年後親,隨著面向對象的程序設計語言Smalltalk-80出現後擾夾並,使得該技術得到很大的提升汞,而且隨著技術的不斷發展和成熟撬兄箍,此種方式產生了綜合的工程學體系虱。而該工程學的主要發展方法就是面向對象進行軟件開發[12]柬慕。
面向對象進行軟件的開發是以一種全新的設計概念和系統程序進行設計和使用緩,該技術是根據對象鈍彩虛、類怖淳穿、繼承綿、封裝和消息等最基本的概念及程序進行設計[13]瞥寢。
該工程的主要思想是根據人們考慮事物的基本方法和慣用方式進行構造諱般緘,軟件系統能夠將現實中所遇到的問題和實體之間進行聯系靖硼,形成客觀實體的真實對象卷擦備。
在軟件工程學的範疇內肉,對象設、類爸烯、通信和繼承共同構成面向對象[14].在計算機應用系統中藕版撐,將應用軟件實現面向對象的工程軟件磁埂臀,其中包含對對象進行分析(OOA)款、設計(OOD)欣河、變成(OOI)潰痴、測試(OOT)和維護(OOSM)等逢貌。
3. 統一軟件工程RUP
軟件工程的三個要素[15]是工具瓣賀、方法和過程徽。軟件過程是指開發軟件所需要完成的活動構成的框架糧烽備。在每個活動期間蹬怯瓷,都要通過某些工具采用一些方法齡、技術構造工作產品(如計劃館誣、文檔嗅嘯培、模型委湘叭、代碼趟揀、測試用例和書冊等)孝槐。
軟件工程使用某些工具江聚,采用某種方法貫,按照某種過程開發軟件系統鯉橋。如圖3-1所示是工具烷場、方法和過程在開發時的關系[16]雌渦。
工具層為軟件過程和方法提供了自動或半自動的支持;方法層在技術上說明了需要如何去開發軟件;軟件過程提供一個活動框架計刺妊,在這個框架下可以建立一個軟件開發的綜合計劃[17]齲。
采用有效的軟件過程是實現軟件成功開發的前提踏愛臂。當前流行的軟件過程有[18]擔︰
(1)Rational Unified Process(RUP)
(2)OPEN Process
(3)Object-Oriented Software Process(OOSP)
(4)Extreme Programming(XP)
(5)Catalysis
(6)Dynamic System Development Method(DSDM)
其中煩冉賒,RUP(統一軟件過程)既是一個軟件過程慮爛,更是一個軟件過程框架玫尉猩。它可以適合不同規模涉陝切、各種類型的軟件項目開發連財雖。在實際的應用過程中酸懈悄,可以根據自己的需要對這個標準進行裁剪盾培呂。統一軟件過程把UML建模語言有機地結合到一起玻哎,非常適合采用面向對象軟件技術進行軟件項目開發[19]接。
統一軟件過程有三個突出的特點塘縷︰用例驅動搞、以架構為中心鮑紛胺、采用迭代和增量模型橢碩。
(1)所有的軟件開發都是用戶需求驅動的狸。統一軟件開發過程采用用例來描述用戶需求銑酮,同時提供一套方法把用例轉化為設計的類圖舊,進一步變成最終的程序代碼疆湯。在整個軟件開發過程中廂,要求用例是可跟蹤的弊弟,也就是說紹,無論是設計階段還是實現階段的產品差,都可以找到相應的需求綽。用例還可以作為用戶測試和驗收最終軟件產品的標準[20]替。
(2)框架描述了系統的核心部分倫送挪,它實現了用戶的核心需求少,包括了系統中最重要的靜態和動態特征盯七。架構刻畫了系統的整體設計朝,它舍棄了細節部分供淺需,突出了系統的重要特征菜不。統一軟件過程提供了創建框架的相應方法和過程隊,可以幫助分析人員和設計人員很好地完成構架的設計[21]討鉀標。
(3)統一軟件過程采用迭代和增量的開發方式弟剃,把一個軟件產品劃分成多個較小的部分凜翁驚,每一次完成一個部分桂間嘛,每次要迭代部分是產品的一個增量部分獺。每個增量部分的生產過程是受控的[22]葦潛。
迭代過程的好處是疵肩︰把一個復雜的系統分解成多個簡單的系統;提高軟件項目的可控性;降低軟件開發的風險;有效地應對需求變更肛翠。
3.1 RUP簡介和特點
傳統的瀑布開發模型是一個一維的模型泊鎢,開發過稱被劃分為多個連續的階段[23]剔皮襲。
統一軟件開發過程(Rational Unified Process縫,RUP)是一個程序開發方法夯,它以面向對象為主要手段咸,而且是基于網絡的[24]牆。RUP可以指導所有層次和各個方面的程序開發涪舷撇,可以指定模板或模塊嘔寸監。除了RUP之外乖撐討,還有一些類似的方法吩肝,例如面向對象的軟件過程豌,它是在軟件開發中注重過程貿巍,定義開發的各個階段陷接速、技術和實際成果靜,並結合其他開發組件詭,形成一個比較齊全的框架恐超。
在RUP中琶,對軟件開發模型中包括了軟件生命周期和核心工作流滅,這些組成了一個二維的空間模型疙查橡。如下圖所示傲祭朗,它包括時間維糧,也就是橫坐標匪苫,工作流用縱軸表示[25]便。RUP開發模型如圖3-2所示桿翹。
RUP有以下六個特點[26]規頂狠︰
(1)迭代式開發比里。在軟件開發過程中擄適溪,有個很難的過程本,即在開發早期就收集到所有的用戶需求烹。而在實際的開發過程中侍笨粉,用戶的需求是不斷發生變化的浪惠,並且有時變化的程度會很大貌遂。所謂的迭代式開發酪箍,就是在注重每次開發的當前需求律親漸,在用戶的需求不斷增加或變化時管思懈,開發也隨之變化蜂孔淬,並形成新的產品辦設富。這樣做可以最大限度地降低項目風險攀逞,還可以使得項目開發處于一種階段性成長模式駿甲。
(2)管理需求蓮省。確定系統的需求是一個連續的過程擬郴,開發人員在開發系統之前不可能完全詳細地說明一個系統的真正需求宮壘。RUP描述了如何提取實季、組織系統的功能和約束條件並將其文檔化鹿疤,用例和腳本的使用已被證明是捕獲功能性需求的有效方法便蘆。
(3)基于組件的體系結構聖鈔淘。組件使重用成為可能帝賃,系統可以由組件組成踢戊擬。基于獨立的層圭攏、可替換的規糕森、模塊化組件的體系結構有助于管理復雜性共嗅,提高重用率色躊。RUP描述了如何設計一個有彈性的太癌、能適應變化的淪、易于理解的甕揩龐、有助于重用的軟件體系結構呻忻蠢。
(4)可視化建模蹋返形。可視化建模的目的是幫助人們更直觀地理解系統剩,這可以使用RUP與UML結合來實現好始。通過這樣的建模勿,可以將很復雜的系統變得簡單易懂嚷 ,並且也可以是基于組件或模塊化地描述系統試講半,方便對系統進行更深層次地分析黨芒磨。
(5)軟件質量控制翠。在軟件開發整個過程中彤侮,對質量的管理和控制是至關重要的惺吵鯨,基于RUP的軟件開發肝,可以很方便地做到這一點寶,基于模型的系統開發可以在關鍵點對系統的質量進行檢測挫濘涕。
(6)控制軟件變更蔚測豹。迭代式開發中如果沒有嚴格的控制和協調覽,整個軟件開發過程很快就陷入混亂之中烤李躬,RUP描述了如何控制捆鮮肝、跟蹤畝塊、監控交剿攪、修改以確保成功的迭代開 發扭達避。RUP通過軟件開發過程中的制品郡鐮,隔離來自其他工作空間的變更擎,以此為每個開發人員建立安全的工作空間眠兼。
 
3.2 RUP中的核心工作流
RUP中由核心工作流和核心支持工作流組成亥,其中核心工作流有六個凌欠健,分別是商業建模揮奈檄、需求嘿突、分析和設計忿壽戳、實現嬌撕、測試和部署罐。三個核心支持工作流是配置和變更管理孝泌、項目管理和環境翱賞草。[27]
通過這九個工作流的配合絞,可以在軟件生命周期中通過迭代的方式被復用拇,這類似與傳統的瀑布模型的幾個階段凌酸弛,但是最根本的不同在于傳統的模型對工作流的復用僅限于在一個開發循環中昧狄,而不是在某個工作流中咳。
(1)商業建模
它可以描述一個軟件項目的開發構思揭衰嘆,基于這個構思菲嫌悸,可以對商業開發的初步設想加以實例化露頓,用一種更加具體的方式表達出來善蕉蔣,例如可以定義一些過程靶燎斷、角色或功能等屠柏舵。
(2)需求
需求描述了系統設想的功能祈髓,這里指的是抽象層次的功能僚凹,而不是具體的搭師。通過需求工作流帛淺,可以使得系統最初設計者與開發者之間建立起共識汾涵荊,對系統的目標和約束進行定義並成果化琺堅,限定系統的範圍縷。
(3)分析和設計
分析和設計是建立在對系統進行商業建穆呵  和需求建模基礎之上的歲薪,對系統的各個細節進行具體的描述晌瘦,並限定系統的環境情、性能和優化策略盎。這里的設計並不是對源代碼的設計皚紹里,而是將系統的功能模塊以包的形式給出舞廈串,也有可能有子系統諧噬痘,整個系統的設計就是建立在這些功能包和子系統的支持下穩懷缺,描述系統的協作和實現用例檄創伎。值得注意的是奮淳級,可以通過分析和設計來描述系統的一些動作共屯、狀態和抽象的性能懂,使得系統的特點更加明顯亢,便于對系統進行更深入的開發和優化線。這里描述的系統結構式可以變化的嚼篩,也方便對系統就行修改繞,加強系統的健壯性螺擄竿。
(4)實現
實現工作流可以是一種層次化系統或子系統描述計泄,這種描述可以定義到代碼的結構奈負泉,也可以以組建的形式實現系統的功能模塊及其實例爸粒蕉。實現的目的不是運行系統棋邊椿,而是使得模塊設計的結果更加可塑化途旁,對組建可以進行測試和評價雙淳璃,系統可以在實現的工作中以動作描述的方式運行呈礁濃。
(5) 測試
測試工作流主要針對系統設計的協作而進行抱那,具體來說是驗證系統功能需求的實現古提扇,以及反饋結果是否滿足需求的格式郝。在這一過程中謂,可以用迭代的方式對系統進行測試患,這樣使得更多的缺陷及早地暴露出來赤蓖淒,這位系統開發降低了客觀的成本涪。測試的方法有很多具,最常用的是基于模型的測試淬,定性地判斷系統的健壯性和可靠性俯揉。
(6)部署
當系統設計到測試階段之後壇,可以將一個相對完整的系統進行發布和部署抽郎難,這里面向的最終用戶搔姜。部署工作流要實現的是根據最終用戶的活動來調試系統的配置濫斯攤,保證系統按照用戶的需求進行待運行奶,避免與最終客戶的行為產生很大的反差繁畢弗。部署工作流還有一個重要的作用是幫助用戶規範合理的工作方式彪,也就是使用系統的目的還在于完善工作質量繪。
(7)配置和變更管理
配置和變更管理的目的是讓系統給最終用戶帶來更加可靠的性能鄉,為此需要管理大量的系統運行環境數據和系統日志信息儈,這些信息可以幫助維護人員發現系統的問題晦,並在不斷變化的系統實際用例中更加正確地指導用戶使用系統羔許徊。這其實是一種並行的管理方法笨激,既不妨礙最終用戶使用系統的正常功能捆,又能不斷監視系統的運行狀態事擂統。
(8)項目管理
項目管理工作流是針對項目開發人員和配合人員的毋量砷,其主要目的是平衡系統參與人員的工作矛盾和時間安排炯。它強調從整體上統籌系統開發勁,為系統部署軟件框架擦奧、人力框架和服務框架提渴,並以一種高效的管理方式監控系統開發的各個階段和模塊炒培。
(9)環境
環境工作流是一種輔助性的工作流敲,但往往又是最常用的工作流弛黎薊。它可以支持系統各個開發階段和模塊的工具盼莫盾、耗材祁堡壬、人力等迷虹蝦,也可以調節項目的活動計劃熾鏡,在過程中不斷對項目的推進產生必要的物質和精神上的支持辛杯甲。
3.3 RUP中的迭代模型
在RUP過程中蓖誕,可以把每個階段的任務分成多個部分扦鯨,采用多次迭代完成每個階段的任務容寶妥。每一次完整的迭代包含9個工作流銅錯,迭代有可能只包含部分工作流癸鈔。每一次迭代建立一個可執行的軟件產品(版本)澆弓,每次迭代產生的軟件產品是最終產品的一個子集[28]錘烹瘁。圖3-3是RUP中某個階段的迭代開發模型低親賭。
與傳統的瀑布模型相比較梳,迭代開發的優點如下五︰
(1)由于把軟件系統分成多個獨立部分口蔑,采用增量開發當沒,降低了開支的風險上。
(2)由于是迭代開發敘示碘,每次迭代產生出一個完整的軟件產品睫斷勿,降低了產品無法按照既定進度進入市場的風險凳仕。
(3)由于采用迭代開發背勘廂,多小組可以並行工作捅年翠,加快了整個開發工作的進度甸叛。
3.4 RUP中的核心工作流
(1)需求工作流[29]
需求工作流開始前煥,首先要對業務建模嚎竿,業務建模就是對業務組織扮嗣水、業務內容和業務流程進行建模冪環。業務模型為需求工作打下基礎熬。
需求捕獲通過對業務內容進行描述蹈碳輛、整理捷辭,確立業務實體及其關系;確定業務系統的功能要求;確定實現功能要求的實體間的交互關系悸謄。將用戶需求精確化電、完備化欽。大部分需求工作集中在初始和細化階段嗎,在細化階段後期曬甕詩,需求捕獲的工作量大幅下降輕。
ヾ工作產品
執行需求捕獲工作流時般拜,軟件開發人員開發的主要UML制品有淖朝愁︰用例模型;軟件體系構架描述唯,用包圖(由用例構成的包)描述軟件系統的宏觀組織和結構;術語表;用戶界面原型桶。
ゝ軟件開發人員
參與需求捕獲階段的軟件開發人員有歧寥︰系統分析人員;用例描述人員;用戶界面設計人員;構架設計師湃。
ゞ主要活動
需求捕獲的工作流主要包括確定參與者和用例(概要描述)愛淬、區分用例的優先級惶、詳細描述用例冊募、構造用戶界面原型以及構造用例模型5個活動慧久撤。
A)確定參與者和用例秋屑郴。確定參與者和用例的目的是界定系統的範圍勞,確定哪些參與者將與系統進行交互少敝杏,以及他們將從系統中得到哪些服務(用例);捕獲和定義術語表中的公用術語身穗,這些是對系統功能進行詳細說明的基幢侍胰睢,如圖3-4所示勘捅賄。
圖3-4 確定參與者用例
確定參與者和用例的過程通常包括4個步驟窘︰確定參與者晦、確定用例形、簡要描述每個用例和概要描述用例模型辨。實際中醇監,這些步驟通常是並發執行的導。
B)區分用例的優先級瘁。區分用例的優先級是為了決定用例模型中哪些用例需要在早期的迭代中進行開發(包括分析膏、設計師、實現等)冀,以及哪些用例可以在隨後的迭代中進行開發陀慚。如圖3-5所示鼎藍。
圖3-5 區分用例的優先級
C)詳細描述用例說。詳細描述用例的主要目的是為了詳細描述事件流史摧斑。這個活動包括建立用例說明吭聳、確定用例說明中包括的內容和對用例說明進行描述的三個步驟掛習洞,最終的結果以圖或文字的用例的詳細說明加,如圖3-6所示劑臼惠。
圖3-6 詳細描述用例
D)構造用戶界面原型零。在系統分析人員建立起用例模型煉,確定了誰是用戶以及他們要用系統做什麼後筏念販,接下來的工作就是要著手設計用戶界面辱。這個活動由邏輯用戶界面設計該、實際用戶界面設計和構造原型兩部分組成鉛,最終的結構是一個用戶界面簡圖和用戶界面原型邪系尉,如圖3-7所示鏡祁。
圖3-7 構造用戶界面原型
E)構造用例模型悄塊。構造用例模型的主要目的是忱田︰整理用例間的關系澗憊夏,分離包含用例和擴展用例;補充用例說明刑柑。這個活動由確定共享的功能性說明鄉曬丘、確定補充和可選功能說明千,以及確定用例之間的其他關系三部分組成狸苗。在確定系統用例和參與者之後恭突,系統分析人員可以重新整理用例之間的關系融甜,使模型更易于理解和處理拌扣般,如圖3-8所示噸。
圖3-8 構造用例模型
(2)分析工作流[30]
主要的分析任務從初始階段的尾期開始陳,與需求一樣頹頓,分析工作流主要集中在細化階段祈戒畏,細化階段的大部分活動是捕獲需求吶醬,並進行需求分析奇礬,分析工作與需求捕獲在很大程度上重疊飽甲霜。
ヾ工作產品
在分析工作流期間呢紗胸,主要的UML制品有扇︰分析模型;分析類茫莫,對業務模型中的類圖或對象圖中的類進行加工處理後的類;用例實現肩昧,實現用例的順序圖特 ,即由哪些對象相互協作來完成用例的功能;分析包保,分析階段用包來描述未來的系統組成和結構;構架模型翰,通過包圖來描述軟件體系完冉。
ゝ軟件開發人員
在分析工作流期間炬板典,參與的軟件開發人員有架構設計師通吾、用例工程師和構件工程師聯。
ゞ主要活動
分析工作流主要包括架構分析誓習淌、分析用例噬患、分析類和分析包四個活動趣攫。
A)架構分析肉。架構分析的目的是通過分析包釁芭翁、分析類擬礬粗,並結合系統約束和特殊需求耪天妨,以包的格式表示系統架構鹿,以文本格式描述構架嗜,如圖3-9所示曬兩菩。
圖3-9 架構分析
B)分析用例埠銑。分析用例的目的在于找到實現用例的對象短,通過對象間的協作實現用例的功能;用例實現用協作圖來描述距權鉛,具體的輸入和結構如圖3-10所示臘渾。
圖3-10 分析用例
C)分析類坊叛。分析類的目的在于依據分析類在用例實現中的角色來確定它的職責儲,確定分析類的屬性及其關系壽臼。具體的輸入和結果如圖3-11所示寬聰附。
圖3-11 分析類
D)分析包空擱履。分析包的目的在于確保該分析包的合理性和相對獨立性搓,確保該分析包包含完整的用例場黃鉗。一般說來檄灰創,分析包的活動是傻世浪︰定義和維護包與其他包的依賴攣,確保包中包含恰當的類鍛,然後限制對其他包的依賴擴。具體的輸入和結果如圖3-12所示礎迷茨。
圖3-12 分析包
 
4. 統一建模語言UML
統一建模語言(Unified Modelling Language, UML)是用來對軟件密集系統進行可視化建模的一種語言辛亨來。是為面向對象開發系統的產品進行說明齒架、可視化和文檔編制的一種標準語言嚏婪蒜。
4.1 UML的定義
作為一種建模語言頸枯紅,UML是一個標準的圖形化建模語言新竄擦,由一系列圖形符號組成田,並具有特定的含義袖。它包括UML語義和UML表示方法兩部分掛悄。
UML語義疏拆︰描述了基于UML的精確元模型定義僧。為了使得描述UML各類組合的準確意義煩,定義了UML的元模型湊,即所有的用UML語言描述的模型都是基于這些元模型基礎之上的蓉贍遷,使得這類語言簡單鯨起、一致和通用經欣。
UML表示方法拳︰定義了UML圖形符號的表示方法蕉橙,為系統建模提供了標準的使用規則差,建立在UML元模型的基礎之上迷燦帽,使用特定的表示方法代表特定的描述語義奶笆擒。
4.2 UML的主要特點
從整體來看乒騷,統一建模語言UML有三個主要的特點醬丟︰
(1) UML是建在一些之前先進的軟件設計方法基礎之上的綽狠筏,包含了諸如Booch等方法的思想勉龜庇。
(2)面向對象的開發方法和非面向對象的開發方法都是軟件開發過程中必不可少的方法伙忍塑,這些在UML中都有體現小鵲棺。
根據面向對象開發方法發展起來的UML表示方法缸,使用了大量的圖形化的描述方式教覽挎。作為一種軟件設計語言惺饋犯,UML可以直觀地進行系統描述甚至是行為描述賈煌你。在使用的符號凌炭,都是經過精心篩選出那些在軟件系統開發中最常用賴德,也是最具有代表性的描述方式扦,也包括一些重新定義的符號居巫哨,適用于特殊的系統描述電脊岡。
(3)新的方法在不斷發展的UML中層出不窮
在UML發展的過程中貉盜尚,由于新的開發思想和方法的出現摳,需要對UML定義的描述方法進行不斷更新菲肯,在這個過程中楮蜂河,新加入了諸如模板辜、過程餡虎、並發吮焙、細化等概念和方法的提出部盎,並給出了相應的描述符號的定義娟讀。UML是不斷發展的語言間豆,因此松款紀,UML可以隨著軟件工程的發展不斷推陳出新尚。
UML雖然是非常實用並且是不斷發展的語言策泥糧,但是在目前定義的UML描述方法中儡據蔚,仍然有一些方法有待人們在實踐中去驗證巍驚。
4.3 UML的體系結構
UML是一種建立在公共機制上的程序設計語言辣垢,構造元素瓦蒲笆、規則和公共機制構成了UML體系燈鼻遂。其中構造元素是描述事物和行為的基本元素壤,而規則是約束這些基本元素組合方式的約束搔甫慌,它們一起構成各種各樣的UML圖坊。
UML語言的組成結構範沮,如圖4-1所示顴疵。
(1)構造元素
構造元素包括基本元素蔥、關系和圖市警拖。這三種元素代表了軟件系統或業務系統中的某個事物或事物間的關系硼海。
(2)規則
構造元素具有命名賭、範圍嫡鋪、可見性女疆步、完整性和執行等屬性脊捅甦,規則是對軟件系統或業務系統中某些事物的約束或規定卵。
(3)公共機制
公共機制包括詳述婚、修飾烯姬、通用劃分以及擴展機制孔偶,它是指只用于軟件系統或業務系統中每個事物的方法或規則肝揭。
4.4 UML的建模機制
使用UML語言進行建模持虛閥,需要幾種圖的配合才能構建比較完整的UML模型平辭,這些圖分別是戀濺︰
(1)類圖
類圖(Class Diagram)是最常用的UML圖攤,它可以顯示出類侯、接口以及它們之間的靜態結構和關系扇桿,通常用來描述系統的結構稼騁郝。類圖中的關系包括依賴關系(Dependency)餞坊巫、泛化關系(Generalization)苦竣、關聯關系(Association)和實現關系(Realization)淡笨。類圖常用來描述業務或軟件系統的組成彩禽、結構和關系稼。可通過為系統詞匯建模型塹慶百、模型化簡單的協作和模型化一個邏輯數據庫模式來使用類圖揉噴。類圖中的元素有類羔、接口蚊朝洗、協作替亮艘、關系燦鵝、注釋襯、約束和包了。關系把類芭貳衡、協作迫究、接口連接在一起構成一個圖身父李,注釋的作用是對某些類和接口進行注釋梧魄頻,約束的作用是對某些類的接口進行約束捻七。
(2)對象圖
對象圖(Object Diagram)顯示了一組對象和它們之間的關系藉黔。使用對象圖可以說明數據結構闖試賦、類圖中的類或組件等實例的快照九。對象圖和類圖一樣良捂攫,反映了系統的靜態過程林抨掠,但它是以實際的或原型化為基礎來表達對象間的關系匹辯。對象圖顯示某時刻對象和對象之間的關系馳。一個對象圖可看成一個類圖的特殊實例冀,實例和類可在對象圖中同時表示系。
對象圖是類圖的一個實例匈雇,這個實例是在某一時刻才會出現的駛窖,在這一點上吝,對象圖與類圖十分相似攻隸。但是也有不同之處拜傳轎,對象圖中的類是被實例化的華,可以由多個對象同時出現蹬濤,而類圖中則沒有對象委雹漏,只是表示出對象的抽象層次盧呻。對象是類在某個時刻才會被實例化的賦,因此盒,對象圖在系統中出現的時間也是有局限的汕咕蹄。
(3)用例圖
用例圖是外部參與者所能觀察到的系統功能的模型圖薪寐。呈現了一些參與者和一些用例面史習,以及它們之間的關系沫隨鈉,主要用于對系統郊控、子系統或類的功能行為進行建模頒湊。
用例圖展示了用例之間以及用例與參與者之間是怎樣相互聯系的粒。對系統息、子系統或類的行為進行了可視化弓溺噶,使用戶能夠理解如何使用這些元素亮,並使開發者能夠實現這些元素瑟五。用例圖主要用來描述用戶的功能需求鞍涂。UML側重從最終用戶的角度來理解軟件系統的需求甦淪,強調誰在使用系統及系統可以完成哪些功能充。用例分析技術是一種公認有效的用戶需求獲取寇舞、分析和描述技術淺蔽徊。用例圖描述了用例側掣、參與者及其關系年,可以包括注釋紛獎陶、約束星紋。
(4)交互圖
在描述系統中托涼,對象之間通過消息進行通信的圖就是交互圖喜梳惜,包括四種類型罵客,分別是順序圖靈壇、通信圖母、定時圖和交互概觀圖桶胎觀。
順序圖也成時序圖塑,它描述了系統中對象間通過消息進行的交互烙棺,強調了消息在時間軸上的先後順序咐割醬。表明了由哪些對象通過消息相互協作來實現用例的功能頗,標識消息發生交互的先後順序唐闌。順序圖中的元素包括對象蕉裸斑、生命線倉擔、控制焦點和消息謀僕蘑。消息表示了對象間的通信賴,生命線表示了對象的生存期擄渙,控制焦點表示對象正在執行一些活動舅泡。
通信圖顯示了一系列對象和這些對象之間的聯系嚇辨,以及對象間發送和接收的消息危。對象通常是命名或匿名的類的實例世詳,也可以代表其他事物的實例澳借,如協作兢頃認、組件和節點頰。使用通信圖可以說明系統的動態情況廠,強調對象在交互行為中承擔的角色琺。包括對象瓣、消息和鏈討形。消息表示了對象之間的通信透毫,對象通過鏈連接在一起堵。
定時圖是一種特殊的順序圖殿凌,在UML2.0中胸,引入了一種新的交互圖來解決著重表示定時約束的問題洞。如果要表示的交互具有很強的時間特性失,例如實時控制系統中館,最好用定時圖建模灸撓氖。
(5)活動圖
活動圖是描述系統或業務的一系列活動構成的控制流刺騙,它描述了系統從一種活動轉換到另一種活動的整個過程雞,說明了系統的活動控制流程涎瑰嚇,常用于對業務過程電皇忿、工作流和用例實現進行建模拴藉崗。活動圖的元素包括節點瑞、終點湃、活動共節點賀喊、轉換鉤、分支與監護條件孰、分岔與匯合樊台。其中儈眯幸,轉換聚賞、分支顧、分岔與匯合把多個活動節點連接在一起論。
5. 參考文獻
[1] Farida K, Meslati D, Tamzalit D. An approach based on extending the RUP for dealing with anticipated changes in ontogenetic software systems[J]. International Journal of Computer Applications in Technology, 2015, 51(4).
[2] Estañol M, Queralt A, Sancho M R, et al. Specifying Artifact-Centric Business Process Models in UML[M] Business Modeling and Software Design - 4th International Symposium, BMSD 2014, Luxembourg, Luxembourg, June 24-26, 2014, Revised Selected Papers. 2015:62-81.
[3] 杜雲梅,李師賢. RUP估算過程模型[J]. 計算機科學,2013,06:21-28.
[4] Evans A, Lano K, France R, et al. Meta-Modeling Semantics of UML[J]. Computer Science, 2014.
[5] 李傳煌,王偉明,施銀燕. 一種UML軟件架構性能預測方法及其自動化研究[J]. 軟件學報,2013,07:1512-1528.
[6] 柴玉梅,馮秋燕,王黎明. 基于UML模型和OCL約束的類間交互測試用例生成方法研究[J]. 電子學報,2013,06:1242-1248.
[7] Evans A, France R, Lano K, et al. Developing the UML as a Formal Modelling Notation[J]. Computer Science, 2014, 19(98):297--307.
[8] 余久久. 面向教學軟件的RUP改進模型的設計研究[J]. 電化教育研究,2012,04:76-81+84.
[9] 王宇華,印桂生. 基于本體的需求模型到UML模型轉換方法[J]. 哈爾濱工程大學學報,2012,06:735-740.
[10] 徐亮,張莉,樊志強. 一種基于UML的實時工作流建模方法研究[J]. 計算機研究與發展,2010,07:1184-1191.
[11] 韓德帥,楊啟亮,邢建春. 一種軟件自適應UML建模及其形式化驗證方法[J]. 軟件學報,2015,04:730-746.
[12] Evans A, France R, Lano K, et al. Meta-Modelling Semantics of UML[M] Behavioral Specifications of Businesses and Systems. Springer US, 2014:45-60.
[13] 何耀光,康汶,詹先信,溫筱群. 基于UML的電子商務在線銷售系統分析與設計[J]. 計算機與現代化,2011,02:171-174.
[14] Rumpe B. A Note on Semantics (with an Emphasis on UML)[J]. Eprint Arxiv, 2014(3):187-190.
[15] 殷永峰,鄭本燾,陸民燕,倪紅英. 基于UML實時擴展的嵌入式軟件測試用例生成技術[J]. 系統工程與電子技術,2011,03:694-699.
[16] Broy M, Crane M L, Dingel J, et al. 2, nd, UML 2 Semantics Symposium: Formal Semantics for UML[C] International Conference on MODELS in Software Engineering. Springer-Verlag, 2014:318--323.
[17] 張琛,段振華,田聰. 基于事件確定有限自動機的UML2.0序列圖描述與驗證[J]. 軟件學報,2011,11:2625-2638.
[18] 郭婧,吳軍華. 面向方面的UML建模[J]. 計算機工程與設計,2011,12:4260-4264.
[19] 布寧,劉玉嶺,連一峰,黃亮. 一種基于UML的網絡安全體系建模分析方法[J]. 計算機研究與發展,2014,07:1578-1593.
[20] 文媛媛. 基于RUP過程和Web的四川職業技術學院固定資產管理系統設計[D].電子科技大學,2012.
[21] 鄧容. RUP方法在新浪微博測試管理中的應用和實踐[D].蘭州大學,2012.
[22] 侯秀美. 基于UML的電子商務系統建模及應用研究[D].南昌大學,2012.
[23] Ahmad G, Soomro T R, Brohi M N. XSR: Novel Hybrid Software Development Model (Integrating XP, Scrum & RUP)[J].  2014, 4:126-130.
[24] 張琛. 基于UML2.0模型的測試與驗證方法[D].西安電子科技大學,2012.
[25] Akhunzada A, Gani A, Hussain S, et al. Towards experiencing the pair programming as a practice of the Rational Unified Process (RUP)[C] Sai Intelligent Systems Conference. IEEE, 2015.
[26] 頌詵 基于RUP的輕量級軟件過程實踐[D].北京交通大學,2013.
[27] Cabot J, Clarisó R, Riera D. On the verification of UML/OCL class diagrams using constraint programming[J]. Journal of Systems & Software, 2014, 93:1-23.
[28] 李嚴. 使用UML和RUP構建面向對象的網絡訂票模型[D].吉林大學,2013.
[29] 賈婷婷. RUP方法在電子政務系統中的研究與應用[D].北京郵電大學,2013.
[30] 竺曉梅. 基于RUP的軟件測試質量管理的研究與實現[D].復旦大學,2013.
 

原文地址瘡︰http://www.mtyxo.com/wxzs/24839.html楔勺躲,如有轉載請標明出處搗屑,謝謝妮含佳。

您可能在尋找文獻綜述方面的範文譬,您可以移步到文獻綜述頻道(http://www.mtyxo.com/wxzs/)查找


秒速賽車 秒速賽車網 秒速賽車網站 秒速賽車直播 秒速賽車開獎直播賽車 秒速賽車開戶 秒速賽車開獎網 秒速賽車官網 秒速賽車官網開獎 秒速賽車 秒速賽車查詢 秒速賽車開獎結果查詢 秒速賽車開獎查詢 秒速賽車開獎結果 秒速賽車 秒速賽車預測 秒速賽車開獎預測 秒速賽車走勢圖 秒速賽車走勢 秒速賽車預測分析 北京秒速賽車 北京賽車網址 北京賽車官網 北京賽車開獎 北京賽車平台 秒速賽車 北京秒速賽車 秒速賽車pk10 賽車pk10開獎 pk10開獎