第1章 軟件建模導(dǎo)論_第1頁(yè)
第1章 軟件建模導(dǎo)論_第2頁(yè)
第1章 軟件建模導(dǎo)論_第3頁(yè)
第1章 軟件建模導(dǎo)論_第4頁(yè)
第1章 軟件建模導(dǎo)論_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、2022-2-91頁(yè)考核方法考試采用筆試和平時(shí)成績(jī)相結(jié)合的方法,筆試成績(jī)占70%,平時(shí)成績(jī)占30%。平時(shí)成績(jī)包括作業(yè)和課堂出勤成績(jī)兩部分。2022-2-92頁(yè) Chapter 1 Why We Model完成本章學(xué)習(xí)后,你將能了解:UML的概念軟件開(kāi)發(fā)和建模的面向?qū)ο蠓椒║ML在軟件建模中的應(yīng)用Rational Rose的基本應(yīng)用方法2022-2-93頁(yè)Build a dog house可以由一個(gè)人制造的需求:最小模型簡(jiǎn)單的過(guò)程簡(jiǎn)單的工具2022-2-94頁(yè)Build a house由一個(gè)團(tuán)體建設(shè),并且需要更高的效率、更精確的時(shí)間限制需求模型良好定義的過(guò)程功能強(qiáng)大的工具2022-2-95頁(yè)Bu

2、ild a high-rise office building2022-2-96頁(yè)1.1 Modeling NotationsIt is important to have standard notations for modeling, documenting, and communicating decisionsModeling helps us to understand requirements thoroughly2022-2-97頁(yè)1.1 Modeling NotationsWhat is a model? Simply put, A model is a simplificat

3、ion of reality.A model provides the blueprints of a system.Models may encompass detailed plans, as well as more general plans.Modeling is a proven and well-accepted engineering technique.2022-2-98頁(yè)1.1 Modeling NotationsThrough modeling achieve four aims:Models help us to visualize a system as it is

4、or as we want it to be.Models permit us to specify the structure or behavior of a system.Models help us to communicate the desired structure and behavior of our system. Models help us to document the decisions we have made.Models help us to manage risk.2022-2-99頁(yè)1.1 Modeling NotationsWhy we model? O

5、ne fundamental reason We build models so that we can better understand the system we are developing.We build models of complex systems because we cannot comprehend such a system in its entirety.2022-2-910頁(yè)1.2 UML簡(jiǎn)介概述軟件工程領(lǐng)域在1995年至1997年取得了前所未有的進(jìn)展,其成果超過(guò)軟件工程領(lǐng)域過(guò)去15年來(lái)的成就總和。其中最重要的、具有劃時(shí)代重大意義的成果之一就是統(tǒng)一建模語(yǔ)言 UM

6、L ( Unified Modeling Language)的出現(xiàn)。在世界范圍內(nèi),至少在近10年內(nèi),UML將是面向?qū)ο蠹夹g(shù)領(lǐng)域內(nèi)占主導(dǎo)地位的標(biāo)準(zhǔn)建模語(yǔ)言。2022-2-911頁(yè)1.2 UML簡(jiǎn)介什么是UML?UML (Unified Modeling Language) is a collection of notations used to document software specifications and designs. It is a standard language for writing software blueprints是一種用于對(duì)軟件密集型系統(tǒng)的制品進(jìn)行可視化、詳述

7、、構(gòu)造和文檔化的圖形語(yǔ)言,同時(shí)也可以對(duì)其它非軟件系統(tǒng)建模;UML是一種繪制系統(tǒng)藍(lán)圖的標(biāo)準(zhǔn)語(yǔ)言,給出了統(tǒng)一的標(biāo)記符號(hào),這些符號(hào)可以幫助開(kāi)發(fā)者、最終用戶、領(lǐng)域?qū)<业戎g進(jìn)行很好的交流;The UML is only a language, so it is just one part of a software development method. 2022-2-912頁(yè)1.2 UML簡(jiǎn)介什么是UML?UML是軟件界第一個(gè)統(tǒng)一的建模語(yǔ)言,該方法結(jié)合了Booch, OMT, 和OOSE方法的優(yōu)點(diǎn),統(tǒng)一了符號(hào)體系,并從其它的方法和工程實(shí)踐中吸收了許多經(jīng)過(guò)實(shí)際檢驗(yàn)的概念和技術(shù)。它是一種標(biāo)準(zhǔn)的表示,已成

8、為國(guó)際軟件界廣泛承認(rèn)的標(biāo)準(zhǔn)。它是第三代面向?qū)ο蟮拈_(kāi)發(fā)方法,是一種基于面向?qū)ο蟮目梢暬耐ㄓ?General)建模語(yǔ)言。為不同領(lǐng)域的用戶提供了統(tǒng)一的交流標(biāo)準(zhǔn) UML圖。2022-2-913頁(yè)1.2 UML簡(jiǎn)介UML的形成九十年代中,面向?qū)ο蠓椒ㄒ呀?jīng)成為軟件分析和設(shè)計(jì)方法的主流。1994年10月Jim Rumbaugh和Grady Booch共同合作把他們的OMT和Booch方法統(tǒng)一起來(lái),到1995年成為“統(tǒng)一方法”(Unified Method)版本0.8。隨后,Ivar Jacobson加入,并采用他的用例(User case)思想,到1996年,成為“統(tǒng)一建模語(yǔ)言”版本0.9。1997年1月

9、,UML版本1.0被提交給OMG組織,作為軟件建模語(yǔ)言標(biāo)準(zhǔn)的候選。其后的半年多時(shí)間里,一些重要的軟件開(kāi)發(fā)商和系統(tǒng)集成商都成為“UML伙伴”,如IBM,Mircrosoft,HP等。1997年11月7日被正式采納作為業(yè)界標(biāo)準(zhǔn)。 2022-2-914頁(yè)1.2 UML簡(jiǎn)介UML的應(yīng)用UML應(yīng)用領(lǐng)域很廣泛,可用于軟件開(kāi)發(fā)建模的各個(gè)階段,商業(yè)建模(Business Modeling), 也可用于其它類型的系統(tǒng)。 制造業(yè)、醫(yī)療衛(wèi)生、軍事、航天、游戲等領(lǐng)域。2022-2-915頁(yè)1.2 UML簡(jiǎn)介UML的好處用統(tǒng)一而直觀的圖符來(lái)幫助不同角色(客戶、分析者、設(shè)計(jì)者、實(shí)現(xiàn)者)進(jìn)行良好的溝通。開(kāi)發(fā)的不同階段(分析

10、、設(shè)計(jì)、實(shí)施、測(cè)試)均采用一致的模型,從而保證階段順利切換,以及能夠及時(shí)測(cè)試等。2022-2-916頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-917頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-918頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-919頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?

11、2022-2-920頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-921頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-922頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-923頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-924頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前

12、,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-925頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-926頁(yè)1.1 UML簡(jiǎn)介討論:在開(kāi)發(fā)一個(gè)大型的復(fù)雜的軟件系統(tǒng)之前,如果不對(duì)系統(tǒng)建模就著手開(kāi)發(fā),將會(huì)是一個(gè)什么情形?2022-2-927頁(yè) UML圖示Eight graphical modeling notationsUse Case Diagram 用例圖:業(yè)務(wù)建模與捕獲需求Sequence Diagram 序列圖:強(qiáng)調(diào)時(shí)間順序的交互圖Class Diagram 類圖:類以及類之間的相互關(guān)系Colla

13、boration Diagram 協(xié)作圖:強(qiáng)調(diào)對(duì)象協(xié)作的交互圖State Diagram 狀態(tài)圖:類經(jīng)歷的各種狀態(tài)Activity Diagram 活動(dòng)圖:對(duì)工作流程建模Component Diagram 組件圖:構(gòu)件及其相互依賴關(guān)系Deployment Diagram 部署圖:構(gòu)件在各節(jié)點(diǎn)上的部署2022-2-928頁(yè)1.3 面向?qū)ο蟮母拍顚?duì)象的概念源于用計(jì)算機(jī)程序?qū)ΜF(xiàn)實(shí)世界的復(fù)雜事物進(jìn)行建模的過(guò)程。“面向?qū)ο蟆钡囊馑际侵赴衍浖鳛閷?duì)象的集合進(jìn)行組織。2022-2-929頁(yè)1.3 面向?qū)ο蟮母拍顚?duì)象對(duì)象定義了數(shù)據(jù)(屬性)和行為(操作)。在面向?qū)ο笙到y(tǒng)中,對(duì)象是基本的運(yùn)行實(shí)體。如:一個(gè)人、一個(gè)

14、地方、一個(gè)銀行賬戶、一張數(shù)據(jù)表等。對(duì)象 數(shù)據(jù) 過(guò)程當(dāng)一個(gè)程序執(zhí)行時(shí),對(duì)象通過(guò)彼此發(fā)送消息來(lái)進(jìn)行交互。對(duì)象只需要知道接收到的消息類型和對(duì)象返回的答復(fù)的類型。2022-2-930頁(yè)1.3 面向?qū)ο蟮母拍铑愵惏岩幌盗袑?duì)象共有的特性(屬性和功能)定義為抽象數(shù)據(jù)類型。類是用戶自定義的數(shù)據(jù)類型,與基本數(shù)據(jù)類型如整型、布爾型等類似。對(duì)象是類的類型變量。一旦一個(gè)類被定義了,就可以生成任意多個(gè)屬于這個(gè)類的對(duì)象,這個(gè)過(guò)程叫做實(shí)例化。一個(gè)類是具有相同類型的對(duì)象集合。類考慮對(duì)象的共性,不考慮其特殊性。2022-2-931頁(yè)繼承繼承使一個(gè)類能夠從另一個(gè)類那里獲得一些特性。在這個(gè)過(guò)程中,超類把它的特性賦給了子類。如:繼承

15、是從老對(duì)象生成新對(duì)象的一種代碼重用機(jī)制。繼承的兩個(gè)附加作用:允許擴(kuò)展一個(gè)類,把新的應(yīng)用程序建立在已有的功能之上。允許類似的類共享它們共同的屬性和行為。1.3 面向?qū)ο蟮母拍钌飫?dòng)物植物脊椎動(dòng)物無(wú)脊椎動(dòng)物2022-2-932頁(yè)1.3 面向?qū)ο蟮母拍疃鄳B(tài)性多態(tài)性是指具有多種形式,它提供了使用單一信息調(diào)用許多不同種類行為的能力。如:Shapepaint()Trianglepaint(int,int,int)Circlepaint(int)Quadranglepaint(int,int)2022-2-933頁(yè)1.3 面向?qū)ο蟮母拍罘庋b面向?qū)ο蟮姆椒ò褦?shù)據(jù)和對(duì)數(shù)據(jù)的操作看作一個(gè)獨(dú)立的單元,這個(gè)單元就是對(duì)

16、象;數(shù)據(jù)和對(duì)數(shù)據(jù)的操作就是這樣被封裝的。封裝也叫信息隱藏。它把一個(gè)對(duì)象的外部特征與這個(gè)對(duì)象的內(nèi)部實(shí)現(xiàn)細(xì)節(jié)分離開(kāi)。其它對(duì)象可以訪問(wèn)外部特征,而內(nèi)部細(xì)節(jié)是隱藏的。由于沒(méi)有對(duì)象與其它對(duì)象的內(nèi)部直接相聯(lián)系,這就使得對(duì)象不會(huì)遭到意外的破壞。2022-2-934頁(yè)1.4 面向?qū)ο蟮拈_(kāi)發(fā)與傳統(tǒng)的軟件開(kāi)發(fā)方法不同,面向?qū)ο蟮拈_(kāi)發(fā)是一種基于現(xiàn)實(shí)抽象的新的軟件開(kāi)發(fā)方法。面向?qū)ο蟮拈_(kāi)發(fā)方法的重點(diǎn)是首先從應(yīng)用領(lǐng)域確定對(duì)象,然后,圍繞這些對(duì)象開(kāi)發(fā)程序。2022-2-935頁(yè)1.4 面向?qū)ο蟮拈_(kāi)發(fā)在面向?qū)ο蟮能浖_(kāi)發(fā)中,軟件的生命周期可分為以下四個(gè)階段: 分析:定義用例、建立領(lǐng)域模型,這個(gè)模型強(qiáng)調(diào)系統(tǒng)必須做什么的抽象,而

17、不是怎么做的抽象。 系統(tǒng)設(shè)計(jì):確定系統(tǒng)的整體框架結(jié)構(gòu),需要做出怎樣解決問(wèn)題的決策。 對(duì)象設(shè)計(jì):確定解決問(wèn)題的方法,對(duì)分析階段得到的抽象在這個(gè)階段得到實(shí)現(xiàn)。定義軟件對(duì)象及對(duì)象之間的協(xié)作,從而定義交互圖與類圖。 實(shí)現(xiàn):在對(duì)象設(shè)計(jì)階段開(kāi)發(fā)的類最終轉(zhuǎn)換成用獨(dú)特的程序設(shè)計(jì)語(yǔ)言編寫的代碼或數(shù)據(jù)庫(kù)。2022-2-936頁(yè)1.4 面向?qū)ο蟮拈_(kāi)發(fā)面向?qū)ο蟮能浖_(kāi)發(fā)方法,在用戶需求發(fā)生變化時(shí),所開(kāi)發(fā)的軟件能夠更好地適應(yīng)這種變化,因?yàn)樗鼈兪腔趹?yīng)用領(lǐng)域的基本框架,而不是基于一個(gè)單一問(wèn)題的功能需求。UML適合用于描述面向?qū)ο蟮拈_(kāi)發(fā)過(guò)程。2022-2-937頁(yè)1.5 Rational Rose簡(jiǎn)介Rational Rose 是一種工具,它可以在Rose建模中提供建立、視圖、修改和操作組件的能力Rose 運(yùn)行環(huán)境Windows NT,Windows 95UNIX(Solaris,HP/UX,AIX,DEC Unix)Rose支持Unified、Booch、OMT標(biāo)記

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論