

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、信息系統(tǒng)項(xiàng)目管理師輔導(dǎo)課程2,北京理工大學(xué)計(jì)算機(jī)學(xué)院徐進(jìn),1,3.信息系統(tǒng)集成專業(yè)技術(shù)知識(shí),3.1信息系統(tǒng)建設(shè) 3.1.1基本概念 3.1.2 軟件工程方法和技術(shù)3.2軟件過(guò)程模型3.3軟件分析方法3.3.1結(jié)構(gòu)化分析方法3.3.2 面向?qū)ο蠓治龇椒?.4軟件設(shè)計(jì)方法3.4.1結(jié)構(gòu)化設(shè)計(jì) 3.4.2面向?qū)ο笤O(shè)計(jì),2,3.1信息系統(tǒng)建設(shè),信息系統(tǒng)集成定義根據(jù)信息產(chǎn)業(yè)部1999年
2、1047號(hào)文件《計(jì)算機(jī)信息系統(tǒng)集成資質(zhì)管理辦法(試行)》中定義,計(jì)算機(jī)信息系統(tǒng)集成是指從事計(jì)算機(jī)應(yīng)用系統(tǒng)工程和網(wǎng)絡(luò)系統(tǒng)工程的總體策劃、設(shè)計(jì)、開(kāi)發(fā)、實(shí)施、服務(wù)及保障。,3,3.1.1基本概念,信息系統(tǒng)的特點(diǎn)以滿足用戶需求為根本出發(fā)點(diǎn)是綜合的、高技術(shù)含量的系統(tǒng)工程最終交付物時(shí)完整系統(tǒng),而不是產(chǎn)品系統(tǒng)包括技術(shù)、管理、商務(wù)活動(dòng),技術(shù)是核心,管理商務(wù)是保障,4,信息系統(tǒng)集成的分類信息系統(tǒng)集成包括兩大類:設(shè)備系統(tǒng)集成也稱“硬件系統(tǒng)集成
3、”、“系統(tǒng)集成”,或簡(jiǎn)稱“弱電系統(tǒng)集成”,區(qū)別于機(jī)電設(shè)備安裝類的強(qiáng)點(diǎn)集成。應(yīng)用系統(tǒng)集成(Application System Integration)應(yīng)用系統(tǒng)集成也稱“行業(yè)信息化解決方案集成”。指提供符合業(yè)務(wù)需求和管理需求的系統(tǒng)技術(shù)解決方案和運(yùn)維方案。,5,設(shè)備集成包括:智能建筑系統(tǒng)集成(Intelligent Building System Integration),指搭建建筑主體內(nèi)的智能化管理系統(tǒng)。如:綜合布線技術(shù)、樓宇自控技
4、術(shù)、網(wǎng)絡(luò)互聯(lián)技術(shù)、多媒體應(yīng)用技術(shù)、安防技術(shù)等。計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)集成(Computer Network System Integration)指利用綜合布線和計(jì)算機(jī)網(wǎng)絡(luò)技術(shù),將分散在不同地點(diǎn)的電腦設(shè)備及功能的集成。安防系統(tǒng)集成(Security System Integration)指搭建機(jī)構(gòu)或組織內(nèi)部的安全防范管理系統(tǒng)。如:門襟系統(tǒng)、樓宇對(duì)講系統(tǒng)、防盜監(jiān)控報(bào)警系統(tǒng)、停車管理系統(tǒng)、遠(yuǎn)程會(huì)議系統(tǒng)等。,6,信息系統(tǒng)集成技術(shù)信息系統(tǒng)技術(shù)與軟
5、件工程從信息系統(tǒng)集成的分類可以看出,信息系統(tǒng)集成所涉及的專業(yè)技術(shù)非常廣泛,除了包括多種學(xué)科的專業(yè)技術(shù)之外,還包括管理學(xué)科的技術(shù)和方法。從信息系統(tǒng)集成的開(kāi)發(fā)過(guò)程來(lái)看,主要涉及技術(shù)是軟件工程和網(wǎng)絡(luò)技術(shù)。,7,3.1.2 軟件工程方法和技術(shù),1.基本概念2.軟件過(guò)程管理3.軟件需求分析概述4.軟件設(shè)計(jì)概述5.軟件測(cè)試6.軟件維護(hù)7.軟件質(zhì)量保證及評(píng)價(jià)體系,8,9,1.基本概念軟件工程的定義軟件工程方法和技術(shù)是計(jì)算機(jī)學(xué)科的重
6、要部分。按照IEEE93對(duì)軟件工程定義:第一,軟件工程是將系統(tǒng)的、嚴(yán)格約束的、可量化的方法應(yīng)用于軟件的開(kāi)發(fā)、運(yùn)行和維護(hù),即將工程化應(yīng)用于軟件。第二,軟件工程是在一中所述方法的研究。,軟件工程定義中給出的4個(gè)要點(diǎn)軟件工程的性質(zhì)是系統(tǒng)的、嚴(yán)格約束的、可量化的方法軟件工程作用的范圍是用于軟件的開(kāi)發(fā)、運(yùn)行和維護(hù)的全過(guò)程軟件工程的目標(biāo)是工程化應(yīng)用于軟件軟件工程的趨勢(shì)是軟件工程方法的不斷發(fā)展和研究,10,軟件工程的內(nèi)容包括:工程部分:包
7、括軟件項(xiàng)目的招標(biāo)、投標(biāo)、合同、實(shí)施、監(jiān)督、驗(yàn)收、推廣,等方面來(lái)研究,以經(jīng)濟(jì)管理科學(xué)的理論為依據(jù),研究軟件工程的規(guī)劃策略和經(jīng)濟(jì)收益等工程問(wèn)題。技術(shù)部分:軟件項(xiàng)目的分析、設(shè)計(jì)、編碼、測(cè)試、維護(hù)等技術(shù)方法。依據(jù)軟件技術(shù)理論,以高效、健壯、可復(fù)用、可維護(hù)的軟件為目標(biāo)。研究軟件體系結(jié)構(gòu)、組成成分,以及構(gòu)造方式,等。管理部分:軟件項(xiàng)目開(kāi)發(fā)的人員組織、過(guò)程控制、進(jìn)度風(fēng)險(xiǎn)分析和質(zhì)量保證體系等方面,以科學(xué)性、合理性、高效可行、及可測(cè)量性為目標(biāo),來(lái)研究
8、工程項(xiàng)目管理。,11,軟件開(kāi)發(fā)生命周期(Systems Development Life Cycle)是軟件的產(chǎn)生直到報(bào)廢的存活期。與人類相同,任何軟件都會(huì)經(jīng)歷同樣的生命周期。,,12,軟件過(guò)程 軟件過(guò)程(Software Procedure)是指軟件生存周期所涉及的一系列相關(guān)過(guò)程。過(guò)程是活動(dòng)的集合;活動(dòng)中包括完成軟件項(xiàng)目的各項(xiàng)任務(wù)的;每個(gè)任務(wù)都要運(yùn)用軟件開(kāi)發(fā)方法和技術(shù)實(shí)施軟件系統(tǒng)?;顒?dòng)的執(zhí)行按照基本的規(guī)律,在一定的條件下,可以
9、是順序的、重復(fù)的、并行的、嵌套的等不同的形式,這些形式屬于過(guò)程模型(本章過(guò)面論述)。,13,2.軟件過(guò)程管理研究的熱點(diǎn)主要包括:1)軟件過(guò)程模型的分析和建立,包括:軟件過(guò)程的合理性、可實(shí)施性,以及形式描述和可驗(yàn)證。2)軟件過(guò)程管理的體系,包括:軟件過(guò)程定義的概念、內(nèi)容、策略、方法等,主要的軟件過(guò)程管理體系:RUP(Rational Unified Process) 統(tǒng)一過(guò)程PSP (Personal Software Proc
10、ess) 個(gè)體軟件過(guò)程3)軟件過(guò)程改進(jìn)和評(píng)估體系CMM(Capability Maturity Model for Software,SW-CMM)軟件能力成熟度模型體系CMMI(Capability Maturity Model Integration)能力成熟度模型集成體系,CMMI/SPCA雙模認(rèn)證(軟件能力成熟度與軟件過(guò)程能力)評(píng)估體系。,14,RUP(Rational Unified Process)Rational公
11、司提出的軟件按開(kāi)發(fā)過(guò)程模型。是一個(gè)面向?qū)ο筌浖こ痰耐ㄓ脴I(yè)務(wù)流程。RUP的目標(biāo):為確保在可預(yù)計(jì)的時(shí)間安排和預(yù)算內(nèi)開(kāi)發(fā)出滿足最終用戶需求的高品質(zhì)的軟件。RUP 過(guò)程模型:橫軸是時(shí)間軸,分為反復(fù)迭代的四個(gè)階段:初始階段、細(xì)化階段、構(gòu)造階段和發(fā)布階段縱軸是工作流軸,包括六個(gè)核心工作流程和三個(gè)核心支撐工作流程,15,RUP 核心工作流包括:業(yè)務(wù)建模工作流需求工作流分析設(shè)計(jì)工作流實(shí)現(xiàn)工作流測(cè)試工作流發(fā)布工作流RUP 核心支撐
12、工作流包括:環(huán)境工作流項(xiàng)目管理工作流配置與變更管理工作流,16,RUP的6項(xiàng)經(jīng)驗(yàn)迭代式開(kāi)發(fā)。允許在過(guò)程中,不斷適應(yīng)需求的變化,通過(guò)不斷細(xì)化來(lái)加深對(duì)問(wèn)題的理解。管理需求。提供如何提取系統(tǒng)功能和約束條件,并將其文檔化?;跇?gòu)件的體系結(jié)構(gòu)。使系統(tǒng)成為可構(gòu)造、可復(fù)用,系統(tǒng)應(yīng)該盡量采用構(gòu)件式結(jié)構(gòu)??梢暬!2捎肬ML對(duì)軟件系統(tǒng)建模,提供軟件文檔控制及管理能力。 驗(yàn)證軟件質(zhì)量。軟件質(zhì)量評(píng)估是事先進(jìn)行的并貫穿在
13、整個(gè)過(guò)程所有活動(dòng)中的必需任務(wù),要統(tǒng)一組織和管理控制軟件變更。給出了如何控制、跟蹤及監(jiān)控對(duì)系統(tǒng)過(guò)程中的修改工作,以確迭代過(guò)程進(jìn)行。,17,PSP個(gè)體軟件過(guò)程PSP (Personal Software Process)個(gè)體軟件過(guò)程,是由美國(guó)Carnegie Mellon大學(xué)軟件工程研究所開(kāi)發(fā)的,是用于軟件開(kāi)發(fā)中,控制和管理個(gè)人工作方式的一種軟件過(guò)程體系。PSP給出了個(gè)體軟件過(guò)程的原則,并可應(yīng)用到任何軟件工程任務(wù)之中。PSP提供了度
14、量和分析工具,幫助軟件開(kāi)發(fā)者做出準(zhǔn)確的計(jì)劃;確定為改善產(chǎn)品質(zhì)量所采取的步驟;建立度量個(gè)體軟件過(guò)程改善的基準(zhǔn);確定過(guò)程的改變對(duì)軟件開(kāi)發(fā)者能力的影響。,18,PSP過(guò)程體系框架1)個(gè)體度量過(guò)程PSP0中規(guī)定了建立個(gè)體過(guò)程基線,包括在計(jì)劃、開(kāi)發(fā)以及后置處理三個(gè)階段中,制定開(kāi)發(fā)時(shí)間、選定缺陷類型標(biāo)準(zhǔn)、度量缺陷限值、排除缺陷限值等。PSP0.1增加了編碼標(biāo)準(zhǔn)、程序規(guī)模度量和過(guò)程改善建議三個(gè)關(guān)鍵過(guò)程域。2)個(gè)體規(guī)劃過(guò)程PSP1是個(gè)體計(jì)劃方
15、法,用自己的歷史數(shù)據(jù)預(yù)測(cè)程序的大小和需要的開(kāi)發(fā)時(shí)間,并使用線性回歸方法計(jì)算估計(jì)參數(shù),確定置信區(qū)間以評(píng)價(jià)預(yù)測(cè)的可信程度。PSP1.1增加了對(duì)任務(wù)和進(jìn)度的規(guī)劃。,19,3)個(gè)體質(zhì)量管理過(guò)程PSP2是個(gè)體質(zhì)量管理,建立程序缺陷的檢測(cè)表,按照檢測(cè)表進(jìn)行設(shè)計(jì)復(fù)查和代碼復(fù)查(也稱“代碼走查”),便于盡早發(fā)現(xiàn)軟件缺陷,減小修復(fù)代價(jià)。PSP2.1給出設(shè)計(jì)過(guò)程和設(shè)計(jì)模板,介紹設(shè)計(jì)方法。4)個(gè)體循環(huán)過(guò)程PSP3PSP3是延伸個(gè)體過(guò)程達(dá)到大規(guī)模的生
16、產(chǎn)過(guò)程的方法,采用螺旋式上升過(guò)程,即迭代增量式開(kāi)發(fā)方式,分解大型系統(tǒng)的程序,對(duì)每個(gè)分解模塊按照PSP2.1所描述的過(guò)程開(kāi)發(fā),并逐步集成完整軟件產(chǎn)品。,20,軟件過(guò)程改進(jìn)和評(píng)估體系CMM(Capability Maturity Model for Software,SW-CMM,簡(jiǎn)稱CMM)軟件能力成熟度模型,是由美國(guó)Carnegie Mellon大學(xué)的軟件工程研究所(簡(jiǎn)稱SEI)受美國(guó)國(guó)防部委托,于1991年研究制定的。初始的目的是為
17、了評(píng)價(jià)美國(guó)國(guó)防部的軟件合同承包組織的能力,因?yàn)樵谲浖髽I(yè)應(yīng)用進(jìn)取得了較大的成功,所以在全世界范圍內(nèi)被廣泛使用。CMM的核心 CMM的是這對(duì)軟件開(kāi)發(fā)全過(guò)程管理和控制,使其更加科學(xué)化、標(biāo)準(zhǔn)化。作為一種評(píng)價(jià)軟件承包能力,并且,幫助其改善軟件質(zhì)量的方法。CMM的核心是軟件開(kāi)發(fā)過(guò)程的管理工程能力的提高與評(píng)估。,21,CMM的體系的主要內(nèi)容:,22,23,軟件配置管理,軟件配置項(xiàng)(SCI Software Configuration It
18、em):,CMM關(guān)鍵過(guò)程域和考核標(biāo)準(zhǔn)KPA是CMM實(shí)現(xiàn)每級(jí)目標(biāo)的關(guān)鍵過(guò)程域(Key Process Area)KPA統(tǒng)一考核標(biāo)準(zhǔn):確定目標(biāo):給出準(zhǔn)確的目標(biāo),若滿足了某個(gè)級(jí)別的所有KPA要求,則表明達(dá)到了該級(jí)別的能力。實(shí)施保證:必須采取的活動(dòng),包括制定企業(yè)范圍的政策和高層管理的責(zé)任。實(shí)施能力:前提條件,包括資源保證、人員培訓(xùn)等。必須采取措施滿足這些條件后,才有可能執(zhí)行KPA的活動(dòng)。執(zhí)行活動(dòng):執(zhí)行KPA的角色和步驟。包括計(jì)劃、執(zhí)
19、行、及執(zhí)行跟蹤等。度量分析:對(duì)過(guò)程度量和度量分析,確定執(zhí)行活動(dòng)的狀態(tài),以及執(zhí)行活動(dòng)的有效性。實(shí)施驗(yàn)證:驗(yàn)證執(zhí)行活動(dòng)是否與所建立的過(guò)程一致。組織評(píng)審、審計(jì)及質(zhì)量保證活動(dòng)。,24,CMMI(Capability Maturity Model Integration)能力成熟度模型集成,是SEI在2000年發(fā)布的CMM的新版本。在CMM基礎(chǔ)上,整合了Software CMM、Systems Eng-CMM、People CMM和Acqui
20、sition CMM,建立起除軟件開(kāi)發(fā)外,軟件系統(tǒng)工程中諸多因素處理能力的標(biāo)準(zhǔn)和評(píng)價(jià)體系。CMMI主要內(nèi)容 軟件能力成熟度模型CMM 2.0草案、系統(tǒng)工程能力成熟度模型、軟件采購(gòu)能力成熟度模型、集成產(chǎn)品和過(guò)程開(kāi)發(fā)等。CMMI的KPA增加至 25個(gè),目標(biāo)105個(gè), 關(guān)鍵實(shí)踐485條。CMMI的基本目標(biāo)解決大型軟件項(xiàng)目過(guò)程改進(jìn)難度增大問(wèn)題可實(shí)施軟件過(guò)程的并行化與多學(xué)科組合提高過(guò)程改進(jìn)的效益,25,CMM評(píng)估評(píng)估機(jī)構(gòu)及人員
21、要求:必須由SEI授權(quán)的合作機(jī)構(gòu),由SEI授權(quán)的主任評(píng)估師進(jìn)行評(píng)估。遵守SEI發(fā)布的評(píng)估需求和評(píng)估方法;若進(jìn)行雙模式SPCA(軟件過(guò)程能力和軟件能力成熟度)評(píng)估,必須得到信息產(chǎn)業(yè)部和國(guó)家認(rèn)證認(rèn)可委員會(huì)的批準(zhǔn),評(píng)估過(guò)程遵守國(guó)家發(fā)布的SPCA評(píng)估方法。申請(qǐng)?jiān)u估企業(yè)的一般條件 要求企業(yè)的項(xiàng)目或產(chǎn)品活動(dòng)應(yīng)能覆蓋所申請(qǐng)CMM/CMMI等級(jí)的要求; SPCA評(píng)估,要求企業(yè)成立5年以上,軟件開(kāi)發(fā)人員20人以上,評(píng)估項(xiàng)目和人員覆蓋率達(dá)到70%
22、以上,26,實(shí)施CMM到評(píng)估的基本流程:CMM/CMMI培訓(xùn)成立軟件過(guò)程組織、軟件質(zhì)量保證組織建立和完善過(guò)程管理體系試點(diǎn)實(shí)施推廣并制度化參加預(yù)評(píng)估參加、準(zhǔn)備最終評(píng)估持續(xù)改進(jìn),27,3.軟件需求分析概述軟件需求分析是軟件生命周期中必不可少的重要的部分,是軟件開(kāi)發(fā)成敗的關(guān)鍵,占整個(gè)工程一半以上的工作量。需求分析 用經(jīng)過(guò)證實(shí)的有效原理、方法,通過(guò)合適的工具和記號(hào),系統(tǒng)地描述待開(kāi)發(fā)產(chǎn)品或系統(tǒng)的行為特征及相關(guān)約束。
23、需求分析過(guò)程 包括:需求獲取、建立需求模型、編寫軟件需求規(guī)格說(shuō)明(Software Requirement Specification,SRS)及一致性驗(yàn)證。需求分析的內(nèi)容 包括:功能性需求、非功能性需求,28,軟件的非功能性需求過(guò)程需求:交付需求、實(shí)現(xiàn)方法需求、標(biāo)準(zhǔn)需求等產(chǎn)品需求:可用性、性能需求、可靠性需求、可移植性需求、可重用性需求、安全性需求等外部需求:法規(guī)需求、費(fèi)用需求、互操作性需求等需求模型
24、 模型是描述現(xiàn)實(shí)問(wèn)題的一種手段,它能抽象和簡(jiǎn)化地反映實(shí)際產(chǎn)品或系統(tǒng)的外部特征和本質(zhì)。不同的方法學(xué)有不同的模型表示。因此,它是軟件工程方法學(xué)研究的主要內(nèi)容之一。(本章后面論述),29,30,Kruchten在1995年提出了4+1試圖模型,從五個(gè)不同的側(cè)面來(lái)表達(dá)系統(tǒng)。,邏輯視圖,開(kāi)發(fā)視圖,進(jìn)程視圖,物理視圖,場(chǎng)景,最終用戶功能需求,編程人員軟件元素管理,系統(tǒng)運(yùn)行特性、非功能性需求,系統(tǒng)實(shí)施的拓?fù)?、系統(tǒng)安裝,邏輯視圖和開(kāi)發(fā)視圖屬于靜態(tài)結(jié)
25、構(gòu)表達(dá)進(jìn)程視圖和物理視圖是從系統(tǒng)的動(dòng)態(tài)結(jié)構(gòu)老表達(dá)的。,31,4.軟件設(shè)計(jì)概述軟件設(shè)計(jì),在軟件生命周期中處于技術(shù)核心的位置,將完成軟件系統(tǒng)實(shí)現(xiàn)意義的工程表示。軟件設(shè)計(jì)階段任務(wù):數(shù)據(jù)設(shè)計(jì),用數(shù)據(jù)結(jié)構(gòu)組織處理數(shù)據(jù)元素之間的邏輯關(guān)系體系結(jié)構(gòu)設(shè)計(jì),定義軟件的主要結(jié)構(gòu)、構(gòu)造元素、及之間的關(guān)系、限制和約束接口設(shè)計(jì),描述軟件內(nèi)部、軟件和協(xié)作系統(tǒng)之間的通信,數(shù)據(jù)流或控制流構(gòu)件邏輯設(shè)計(jì),對(duì)軟件結(jié)構(gòu)的構(gòu)造元素,進(jìn)行軟件算法過(guò)程的描述,為編碼提供
26、依據(jù),32,軟件設(shè)計(jì)的方法和技術(shù)軟件設(shè)計(jì)方法是軟件工程中,軟件技術(shù)的匯集焦點(diǎn)。它匯集了操作系統(tǒng)、數(shù)據(jù)庫(kù)技術(shù)、網(wǎng)絡(luò)技術(shù)、軟件體系結(jié)構(gòu),以及算法設(shè)計(jì)、界面設(shè)計(jì)等,幾乎涵蓋了計(jì)算機(jī)學(xué)科的所有技術(shù)和方法。不同的方法學(xué)對(duì)應(yīng)不同的設(shè)計(jì)方法和技術(shù),例如:結(jié)構(gòu)化設(shè)計(jì)方法和面向?qū)ο蟮脑O(shè)計(jì)方法。(本章后面分別論述),33,5.軟件測(cè)試軟件測(cè)試的目標(biāo)為了發(fā)現(xiàn)軟件中的錯(cuò)誤,努力產(chǎn)生好的測(cè)試案例軟件測(cè)試的評(píng)價(jià)能成功發(fā)現(xiàn)軟件錯(cuò)誤的測(cè)試才是好的測(cè)試能揭示
27、軟件錯(cuò)誤的案例才是好的案例軟件測(cè)試的基本原則測(cè)試應(yīng)符合軟件的功能及性能需求測(cè)試要有計(jì)劃地進(jìn)行測(cè)試應(yīng)該從小規(guī)模開(kāi)始,逐步到大規(guī)模的測(cè)試測(cè)試不可能窮舉,只能盡量充分覆蓋測(cè)試應(yīng)該由軟件開(kāi)發(fā)人員和獨(dú)立測(cè)試組共同完成,34,軟件測(cè)試的三個(gè)階段單元測(cè)試階段,驗(yàn)證程序控制結(jié)構(gòu)的分支,盡量覆蓋所有可能的錯(cuò)誤集成測(cè)試階段,在單元測(cè)試的基礎(chǔ)上驗(yàn)證程序以及測(cè)試程序構(gòu)造問(wèn)題高階測(cè)試,也叫做“確認(rèn)性測(cè)試”,是對(duì)已經(jīng)通過(guò)集成測(cè)試并可運(yùn)行的程序進(jìn)行
28、的測(cè)試,確認(rèn)性測(cè)試,集成測(cè)試,單元測(cè)試,,,,編碼,設(shè)計(jì),需求分析,,,,驗(yàn)證需求分析,驗(yàn)證設(shè)計(jì),驗(yàn)證編碼,,,可行性分析,系統(tǒng)維護(hù),測(cè)試v模型,35,軟件測(cè)試的策略 軟件測(cè)試的不同階段對(duì)應(yīng)不同測(cè)試策略單元測(cè)試策略,包括:程序中常見(jiàn)錯(cuò)誤的測(cè)試、單元測(cè)試規(guī)程,等策略集成測(cè)試策略,包括:自頂向下的測(cè)試、自底向上的測(cè)試、回歸測(cè)試、煙霧測(cè)試,等策略高階測(cè)試策略,包括:?測(cè)試、?測(cè)試、恢復(fù)測(cè)試、安全測(cè)試、應(yīng)力測(cè)試、性能測(cè)試等策略,36
29、,軟件測(cè)試技術(shù)黑盒測(cè)試技術(shù),為證實(shí)軟件運(yùn)行功能,通過(guò)功能的操作執(zhí)行發(fā)現(xiàn)和尋找錯(cuò)誤白盒測(cè)試技術(shù),為證實(shí)軟件內(nèi)部的執(zhí)行規(guī)約,在程序內(nèi)部發(fā)現(xiàn)和尋找錯(cuò)誤軟件測(cè)試方法和工具結(jié)構(gòu)化測(cè)試方法和工具,是針對(duì)結(jié)構(gòu)化程序語(yǔ)言程序的測(cè)試方法,以及結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言環(huán)境的軟件測(cè)試工具。面向?qū)ο鬁y(cè)試方法,針對(duì)面向?qū)ο蟪绦蛘Z(yǔ)言程序的測(cè)試方法,以及面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言環(huán)境的軟件測(cè)試工具。,37,6.軟件維護(hù)基本概念軟件維護(hù)是指對(duì)已經(jīng)提交用戶使用的軟件系
30、統(tǒng)或軟件產(chǎn)品的修改是軟件生命周期中必然經(jīng)歷的階段任何軟件系統(tǒng)或產(chǎn)品存都存在缺陷,這是軟件基本性質(zhì)決定的:軟件是人工過(guò)程為主的知識(shí)密集型產(chǎn)品,軟件開(kāi)發(fā)者對(duì)解決問(wèn)題的理解總是有誤差的與軟件操作相關(guān)的環(huán)境和需求是會(huì)變化的軟件解決的現(xiàn)實(shí)問(wèn)題本身是存在不確定性因素的軟件開(kāi)發(fā)的方法和技術(shù)本身是存在局限性的,38,軟件維護(hù)的基本類型改正性維護(hù):交付使用的軟件暴露的錯(cuò)誤隱患適應(yīng)性維護(hù):更新業(yè)務(wù)以及硬件系統(tǒng)或軟件環(huán)境升級(jí)完善性維護(hù):原有
31、功能或性能在使用中發(fā)現(xiàn)短缺預(yù)防性維護(hù):系統(tǒng)未來(lái)的擴(kuò)充、維護(hù)、移植,改正性維護(hù)20%,適應(yīng)性維護(hù)25%,完善性維護(hù)50%,其它,4種維護(hù)的比例:,39,軟件維護(hù)的任務(wù)及過(guò)程設(shè)置專門的維護(hù)確認(rèn)審批機(jī)構(gòu),減少由于隨意修改造成的系統(tǒng)結(jié)構(gòu)混亂建立合理的維護(hù)管理流程及嚴(yán)格的維護(hù)文檔,包括:申請(qǐng)、審批、問(wèn)題報(bào)告、維護(hù)計(jì)劃、實(shí)施結(jié)果進(jìn)行維護(hù)活動(dòng)的評(píng)審,對(duì)維護(hù)所帶來(lái)的成本開(kāi)銷給出定量的分析,40,7.軟件質(zhì)量保證及評(píng)價(jià)體系軟件質(zhì)量定義按
32、國(guó)際標(biāo)準(zhǔn)ISO/8042-1994對(duì)軟件質(zhì)量定義: 能滿足明確需求的軟件實(shí)體,所具有能力的特性總合。按照國(guó)家GB/T 11457-2006《軟件工程術(shù)語(yǔ)》中定義軟件質(zhì)量為:軟件產(chǎn)品中能滿足給定需要的性質(zhì)和特性的總體軟件具有所期望的各種屬性的組合程度顧客和用戶覺(jué)得軟件滿足其綜合期望的程度確定軟件在使用中將滿足顧客預(yù)期要求的程度,41,軟件質(zhì)量模型質(zhì)量模型是質(zhì)量特性結(jié)構(gòu)的表達(dá),業(yè)界認(rèn)同的軟件質(zhì)量模型有幾種:Bohm 質(zhì)量模型
33、,1976年由Bohm等提出軟件質(zhì)量分層模型McCall 質(zhì)量模型,1979年由McCall等人提出的軟件質(zhì)量模型ISO/IEC 9126-1:2001,給出的軟件質(zhì)量模型,42,軟件質(zhì)量,可移植性,可用性,可維護(hù)性,可靠性,效率,人類工程,可測(cè)性,可理解性,可修改性,設(shè)備獨(dú)立性,自包含性,正確性,完備性,健壯性,一致性,可計(jì)測(cè)性,設(shè)備效率,可存取性,通信性,自描述性,結(jié)構(gòu)化性,簡(jiǎn)單清晰性,可擴(kuò)充性,Bohm 質(zhì)量模型,43,,產(chǎn)品
34、修正,產(chǎn)品轉(zhuǎn)移,產(chǎn)品運(yùn)行,可維護(hù)性可測(cè)試性靈活性,互聯(lián)性可移植性復(fù)用性,正確性 可靠性易用性 效率 完整性,McCall 質(zhì)量模型,44,外部質(zhì)量和內(nèi)部質(zhì)量,功能性,易用性,可靠性,效率,可維護(hù)性,可移植性,使用質(zhì)量,生產(chǎn)性,有效性,安全性,滿意度,ISO/IEC 9126-1:2001質(zhì)量模型,45,軟件質(zhì)量保證體系ISO9001是適用于所有工程質(zhì)量保證標(biāo)準(zhǔn)。ISO9000-3是在軟件過(guò)程中質(zhì)量保證體系使
35、用的子集。標(biāo)準(zhǔn)中給出的軟件質(zhì)量保證體系。主要內(nèi)容包括:管理職責(zé)、質(zhì)量體系、合同評(píng)審、設(shè)計(jì)控制、文件和資料控制、采購(gòu)、顧客提供產(chǎn)品的控制、產(chǎn)品標(biāo)識(shí)和可追溯性、過(guò)程控制、檢驗(yàn)和試驗(yàn)、檢驗(yàn)/測(cè)量和試驗(yàn)設(shè)備的控制、檢驗(yàn)和試驗(yàn)狀態(tài)、不合格品的控制、糾正和預(yù)防措施、搬運(yùn)/貯存/包裝/防護(hù)和交付、質(zhì)量記錄的控制、內(nèi)部質(zhì)量審核、培訓(xùn)、服務(wù)、統(tǒng)計(jì)系統(tǒng)等20多項(xiàng)。,軟件評(píng)審軟件評(píng)審是軟件質(zhì)量保證的重要措施根據(jù)《GB/T 12504-1990計(jì)算機(jī)軟件質(zhì)量
36、保證計(jì)劃規(guī)范》軟件評(píng)審包括: 1)軟件需求評(píng)審,產(chǎn)品對(duì)應(yīng)需求的適合性,在軟件需求分析結(jié)束后進(jìn)行。2)概要設(shè)計(jì)評(píng)審,軟件設(shè)計(jì)的總體結(jié)構(gòu)、外部接口、部件分配、數(shù)據(jù)結(jié)構(gòu)以及各主要部件之間的接口等方面的適合性,在軟件概要設(shè)計(jì)結(jié)束后進(jìn)行。3)詳細(xì)設(shè)計(jì)評(píng)審,評(píng)價(jià)軟件設(shè)計(jì)的每一個(gè)基本部件的功能、算法和過(guò)程描述各方面的適合性,在軟件詳細(xì)設(shè)計(jì)結(jié)束后進(jìn)行。,46,4)軟件驗(yàn)證和確認(rèn)評(píng)審,評(píng)價(jià)軟件驗(yàn)證與確認(rèn)計(jì)劃中使用方法的適合性與完整性,在軟件驗(yàn)證與確
37、認(rèn)計(jì)劃完成后進(jìn)行。5)功能檢查,驗(yàn)證所開(kāi)發(fā)軟件滿足需求的情況,在軟件提交前對(duì)軟件進(jìn)行。6)物理檢查,驗(yàn)證程序和文檔的一致性并是否做好了交付準(zhǔn)備,在軟件驗(yàn)收前進(jìn)行。7)綜合檢查,驗(yàn)證代碼和設(shè)計(jì)文檔的一致性、接口規(guī)格說(shuō)明的一致性、設(shè)計(jì)實(shí)現(xiàn)和功能需求的一致性、功能需求和測(cè)試描述的一致性。在軟件驗(yàn)收時(shí),用戶或用戶委托專家,進(jìn)行抽樣的方式檢查。8)管理評(píng)審,計(jì)劃執(zhí)行情況定期管理評(píng)審,必須由獨(dú)立評(píng)審機(jī)構(gòu)或授權(quán)的第三方主持進(jìn)行。,47,48,
38、軟件的檢查和走查方式軟件檢查,是針對(duì)軟件產(chǎn)品的某一局部,目標(biāo)是檢測(cè)和發(fā)現(xiàn)軟件產(chǎn)品的異常情況記錄下來(lái)并提交軟件走查,是對(duì)軟件產(chǎn)品發(fā)現(xiàn)異?;蛉毕莶⒏倪M(jìn)的過(guò)程,可以在同事之間相互進(jìn)行,評(píng)價(jià)產(chǎn)品實(shí)現(xiàn)的運(yùn)行效果,發(fā)現(xiàn)問(wèn)題,改進(jìn)方案。,49,軟件質(zhì)量評(píng)價(jià)ISO/IEC1458給出了軟件質(zhì)量評(píng)價(jià)標(biāo)準(zhǔn),主要內(nèi)容包括:軟件評(píng)價(jià)的管理: 測(cè)試計(jì)劃的編制指南 評(píng)價(jià)過(guò)程控制開(kāi)發(fā)人員的評(píng)價(jià)過(guò)程顧客的評(píng)價(jià)過(guò)程評(píng)價(jià)者的評(píng)價(jià)過(guò)程合同協(xié)議評(píng)價(jià)模塊評(píng)
39、價(jià),50,開(kāi)發(fā)人員的評(píng)價(jià)過(guò)程,包括:軟件質(zhì)量指示器,評(píng)價(jià)過(guò)程的要求;對(duì)組織的要求(數(shù)據(jù)收集的反饋方式和途徑);項(xiàng)目的要求(如確定質(zhì)量要求、確定內(nèi)部和外部質(zhì)量度量等);以及對(duì)質(zhì)量分析、策劃、質(zhì)量控制和質(zhì)量評(píng)價(jià)的要求。顧客的評(píng)價(jià)過(guò)程,評(píng)價(jià)的目標(biāo)包括: 用戶的文件、課程和培訓(xùn);用于產(chǎn)品開(kāi)發(fā)的軟件工程過(guò)程;產(chǎn)品歷史運(yùn)作情況;可執(zhí)行軟件產(chǎn)品本身(如通過(guò)黑盒測(cè)試或原型評(píng)價(jià))。 評(píng)價(jià)者的評(píng)價(jià)過(guò)程,定義了供方自己的質(zhì)量控制部門或第三方機(jī)構(gòu)對(duì)軟件產(chǎn)品
40、質(zhì)量的評(píng)價(jià)過(guò)程。軟件產(chǎn)品的購(gòu)買者或使用者,也可以獨(dú)立進(jìn)行評(píng)價(jià)。,51,評(píng)價(jià)供方、需方和評(píng)價(jià)者的相互關(guān)系、職責(zé),以及相互達(dá)成合同協(xié)議的性質(zhì)。 評(píng)價(jià)模塊,包括6項(xiàng)內(nèi)容:模塊的范圍,模塊引用文件,模塊的定義,模塊所使用文件、收集的數(shù)據(jù)和計(jì)算的度量值,解釋測(cè)量結(jié)果的信息,應(yīng)用程序要求的資源(如硬件、軟件、人員的技能和資格及工作量) 。,52,評(píng)價(jià)的五項(xiàng)活動(dòng):評(píng)價(jià)需求的分析評(píng)價(jià)規(guī)范制定評(píng)價(jià)的設(shè)計(jì)(包括評(píng)價(jià)計(jì)劃)評(píng)價(jià)實(shí)施評(píng)價(jià)結(jié)果記錄,3
41、.2開(kāi)發(fā)過(guò)程模型,53,經(jīng)典過(guò)程模型,傳統(tǒng)軟件開(kāi)發(fā)模型演化模型面向?qū)ο箝_(kāi)發(fā)模型形式化方法模型 (智能模型),增量模型螺旋模型,,,噴泉模型構(gòu)件集成模型,,瀑布模型快速原型模型,,轉(zhuǎn)換模型凈室模型,,54,要點(diǎn):?系統(tǒng)工程方法學(xué)基于軟件過(guò)程 ?系統(tǒng)過(guò)程貫穿于開(kāi)發(fā)生命周期 ?不同的過(guò)程,對(duì)應(yīng)不同的系統(tǒng)開(kāi)發(fā)活動(dòng),55,55,瀑布模型,需求分析,軟件設(shè)計(jì),編碼,測(cè)試,維護(hù),,,,,模型要點(diǎn):?
42、階段的順序性? 推遲實(shí)現(xiàn)的觀點(diǎn)? 嚴(yán)格文檔是保證質(zhì)量的手段,帶來(lái)的問(wèn)題:? 過(guò)程基本不可迭代? 需求在開(kāi)始的不確定性? 錯(cuò)誤到最后才能發(fā)現(xiàn)? 開(kāi)發(fā)進(jìn)程呈現(xiàn)塞阻狀態(tài),可行性研究,,問(wèn)題定義,,56,原型模型,帶來(lái)的問(wèn)題:?系統(tǒng)分析組織倉(cāng)促?用戶不宜理解進(jìn)度?先入為主而系統(tǒng)設(shè)計(jì),可能不是最佳設(shè)計(jì),,,,,,,,,聽(tīng)取用戶意見(jiàn),建造修改原型,測(cè)試運(yùn)行原型,原型過(guò)程示意:,57,57,增量模型,分析,設(shè)計(jì),編碼,測(cè)試,,,,分
43、析,設(shè)計(jì),編碼,測(cè)試,,,,分析,設(shè)計(jì),編碼,測(cè)試,,,,分析,設(shè)計(jì),編碼,測(cè)試,,,,增量2,增量3,增量4,增量1,第1個(gè)增量的發(fā)布,第2個(gè)增量的發(fā)布,第3個(gè)增量的發(fā)布,第4增量的發(fā)布,模型要點(diǎn):?瀑布和原型模型相結(jié)合?強(qiáng)調(diào)版本升級(jí)?每版本開(kāi)發(fā)遵循順序過(guò)程,58,58,風(fēng)險(xiǎn)分析,,,累計(jì)費(fèi)用,制定階段 計(jì)劃,評(píng)審約定,模型,螺旋模型,模型要點(diǎn):?統(tǒng)一了瀑布模型與原型模型 ?與增量模型相似,更強(qiáng)調(diào)風(fēng)險(xiǎn)分析,,,,風(fēng)險(xiǎn)分析
44、,風(fēng)險(xiǎn)分析,,風(fēng)險(xiǎn)分析,原型1,原型2,原型3,運(yùn)行原型,軟件需求,需求有效性,產(chǎn)品設(shè)計(jì),設(shè)計(jì)有效性驗(yàn)證,,操作概念,需求階段計(jì)劃,開(kāi)發(fā)計(jì)劃,確定目標(biāo)選擇方案設(shè)定條件,運(yùn)行,驗(yàn)收測(cè)試,集成測(cè)試,詳細(xì)設(shè)計(jì),單元測(cè)試,編碼,,,,,系統(tǒng)集成,測(cè)試計(jì)劃,,,評(píng)估方案明確風(fēng)險(xiǎn)排除風(fēng)險(xiǎn),開(kāi)發(fā)驗(yàn)證,59,59,噴泉模型,演化,維護(hù),,,,,確認(rèn),,,實(shí)現(xiàn),,,設(shè)計(jì),,,分析,,,,,模型要點(diǎn):?體現(xiàn)認(rèn)識(shí)事物的循環(huán)迭代性?強(qiáng)調(diào)開(kāi)發(fā)活動(dòng)之
45、間的無(wú)間隙性 無(wú)明顯的活動(dòng)階段劃分?適用于面向?qū)ο蟮拈_(kāi)發(fā)過(guò)程,60,構(gòu)件集成模型,構(gòu)件庫(kù),問(wèn)題域,識(shí)別構(gòu)件,,查找構(gòu)件,,生成構(gòu)件,,,,組裝系統(tǒng),,查到構(gòu)件,未查到構(gòu)件,模型要點(diǎn):? 基于面向?qū)ο蟮臉?gòu)件方法 立足于軟件復(fù)用性? 形成統(tǒng)一開(kāi)發(fā)過(guò)程RUP? 采用統(tǒng)一建模語(yǔ)言,61,61,?需求明確或有先例的項(xiàng)目 瀑布模型?需求不明確或與客戶難以溝通的項(xiàng)目 原型模型?規(guī)模
46、大且時(shí)間緊的項(xiàng)目 增量模型?帶有突破性技術(shù)的項(xiàng)目 螺旋模型?采用面向?qū)ο蠓椒ㄩ_(kāi)發(fā)的項(xiàng)目 噴泉模型?明顯復(fù)用潛力的項(xiàng)目 構(gòu)件模型,項(xiàng)目情況,適用模型,項(xiàng)目適應(yīng)模型的一般規(guī)律,3.3系統(tǒng)分析方法,62,返回目錄,系統(tǒng)分析的基本概念? “系統(tǒng)
47、分析”也叫“需求分析”或“問(wèn)題定義”? 系統(tǒng)分析是在可行性分析階段之后的一個(gè)重要的階段? 系統(tǒng)分析階段,定義系統(tǒng)的功能、數(shù)據(jù)、行為的規(guī)約,及與其他系統(tǒng)的接口約束。,63,?建立分析模型 在當(dāng)前物理模型的基礎(chǔ)上,建立分析模型?完成“軟件需求規(guī)格說(shuō)明” (Software Requirement Specification,SRS)在SRS中,定義軟件的功能,信息,表示軟件的行為?需求驗(yàn)證 與用戶達(dá)成共識(shí),編寫測(cè)試計(jì)劃和
48、測(cè)試案例,需求分析的任務(wù)和步驟,64,行業(yè)知識(shí)學(xué)習(xí),訪問(wèn)用戶考察現(xiàn)場(chǎng),定制調(diào)研計(jì)劃,組織調(diào)研,整理調(diào)研問(wèn)題陳述,建立當(dāng)前系統(tǒng)物理模型,建立未來(lái)系統(tǒng)邏輯模型,多次反復(fù)的過(guò)程,,,,,,,,,,,,編制需求規(guī)格說(shuō)明,開(kāi)發(fā)系統(tǒng)原型,系統(tǒng)分析步驟示意,,65,,需求規(guī)格說(shuō)明: (主要內(nèi)容)1.引言 1.1編寫目的 1.2項(xiàng)目背景 1.3定義 1.4參考資料2.任務(wù)概述 2.1目標(biāo) 2.2運(yùn)
49、行環(huán)境 2.3條件與限制3.數(shù)據(jù)描述 3.1數(shù)據(jù)字典(或數(shù)據(jù)庫(kù)描述) 3.2數(shù)據(jù)采集,4.功能需求 4.1功能劃分 4.2功能描述5.性能描述 5.1數(shù)據(jù)精確度 5.2時(shí)間特性 5.3適應(yīng)性6.運(yùn)行需求 6.1用戶界面 6.2硬件接口 6.3軟件接口 6.4故障處理7.其它需求,需求分析階段的產(chǎn)品,66,3.3.1 結(jié)構(gòu)化分析方法(Structured Analysis),
50、SA是面向數(shù)據(jù)流的分析方法,在20世紀(jì)90年代被廣泛應(yīng)用。SA方法適合于開(kāi)發(fā)數(shù)據(jù)處理類型的軟件,是需求分析階段的描述工具。SA方法的主要思想是:以數(shù)據(jù)的輸入輸出流向,確認(rèn)其加工(或處理),從粗到細(xì),逐層分解。,67,數(shù)據(jù)流圖(Data Flow Diagram DFD),外部實(shí)體,外部實(shí)體,外部實(shí)體,外部實(shí)體,變換1,變換3,變換2,變換4,,,數(shù)據(jù)存儲(chǔ),輸入數(shù)據(jù),中間數(shù)據(jù),中間數(shù)據(jù),中間數(shù)據(jù),輸入數(shù)據(jù),輸出數(shù)據(jù),輸出數(shù)據(jù)
51、,輸入,輸出,,,,,,,,,,,變換加工說(shuō)明:輸入:輸出:加工:,,,結(jié)構(gòu)化分析方法和工具,68,數(shù)據(jù)流結(jié)構(gòu)化,F,f1,f41,f43,f45,f42,f46,f3,f2,f4,f5,f6,f7,,,,,A,B,A,B,X,X,Y,Y,Z,Z,,,,,,,,,,,,,,,,,,,,69,名稱: 別名:
52、 何處使用/如何使用: 內(nèi)容描
53、述:
54、 補(bǔ)充信息:,數(shù)據(jù)字典,,,,作用:描述各個(gè)數(shù)據(jù)項(xiàng)約束數(shù)據(jù)字典內(nèi)容和形式:,,,70,系統(tǒng)分析建模示例家庭安全系統(tǒng)問(wèn)題陳述:,系統(tǒng)由房主在安裝時(shí)配置,通過(guò)系統(tǒng)控制窗口和鍵盤功能與房主交互進(jìn)行。系統(tǒng)可以監(jiān)控所有連接的傳感器。 在安裝過(guò)程中,每個(gè)傳感器可以設(shè)置編號(hào)和類型,系統(tǒng)的啟動(dòng)和關(guān)閉必須有主人密碼控制;傳感器事件發(fā)生時(shí),軟件激活系統(tǒng)上的警報(bào)器,在設(shè)定的時(shí)間延時(shí)后,軟件自動(dòng)撥打設(shè)定的電
55、話號(hào)碼,并提供位置信息和事件性質(zhì),電話號(hào)碼將每隔20秒重?fù)芤淮?,直至電話接通?系統(tǒng)運(yùn)行時(shí),系統(tǒng)控制窗口顯示提示信息和系統(tǒng)狀態(tài)。通過(guò)鍵盤可以控制系統(tǒng)運(yùn)行。,71,例:家庭安全系統(tǒng)控制面板,SAFEHOME,,01,報(bào)警檢查火情,離開(kāi)駐留緊急旁路準(zhǔn)備未就緒,,,裝備 電源,關(guān)閉 離開(kāi) 駐留,最大 測(cè)試 旁路,立即 編碼 警聲,準(zhǔn)備就緒
56、,1,2,3,4,5,6,7,8,9,*,0,#,,,,,,72,,從問(wèn)題陳述,分析SafeHome系統(tǒng)頂層DFD,控制面板,傳感器,SafeHome系統(tǒng),控制面板 顯示,警告,電話線,,,,,,用戶命令 和數(shù)據(jù),傳感器 狀態(tài),顯示信息,警告類型,電話號(hào),73,SafeHome 第一層DFD,,控制面板,傳感器,處理用戶輸入,控制面板 顯示,警告,電話線,,,,,,用戶命令 和數(shù)據(jù),傳感器 狀態(tài),顯示信息,
57、警告類型,電話號(hào)信號(hào),配置系統(tǒng),監(jiān)控傳感器,處理口令,激活或失效系統(tǒng),顯示信息和狀態(tài),,傳感器信息,配置信息,,,,,,,,,,正確的ID信息,配置數(shù)據(jù),配置數(shù)據(jù),配置請(qǐng)求,啟動(dòng)停止,口令,激活/失效信息,74,監(jiān)控傳感器的精化DFD,評(píng)定輸出,配置信息,,,顯示格式化,產(chǎn)生警告信號(hào),讀傳感器,撥打電話,傳感器狀態(tài),傳感器ID類型,位置,傳感器信息,警告類型,警告數(shù)據(jù),電話號(hào),,配置數(shù)據(jù),,,,,,,,,,電話號(hào)信號(hào),
58、傳感器ID類型,位置,,75,從60年代出現(xiàn) Simula 60語(yǔ)言以來(lái),形成了體現(xiàn)類和對(duì)象兩個(gè)基本概念的程序設(shè)計(jì)語(yǔ)言;70年代誕生的Smalltalk語(yǔ)言,真正確立了面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言的地位。80年代面向?qū)ο蟮姆治龊驮O(shè)計(jì)方法才正式出現(xiàn)。,▲面向?qū)ο蠓治龊驮O(shè)計(jì)方法的起源,伴隨著軟件界對(duì)于結(jié)構(gòu)化方法引起的越來(lái)越多的爭(zhēng)議,以及面向?qū)ο蟪绦蛟O(shè)計(jì)越發(fā)廣泛的應(yīng)用和成熟,產(chǎn)生了面向?qū)ο蠓治龊驮O(shè)計(jì)方法。,3.3.2 面向?qū)ο蠓治龇椒?76,▲面向?qū)?/p>
59、象方法的基本概念和原則(1)思想方法從現(xiàn)實(shí)世界中客觀存在的事物出發(fā),以問(wèn)題域中的事物為中心,建立和表達(dá)系統(tǒng)。將事物的特征和系統(tǒng)責(zé)任抽象表示為系統(tǒng)的對(duì)象,作為系統(tǒng)的基本構(gòu)成單位。(2)4個(gè)基本概念類和對(duì)象消息和封裝繼承多態(tài)和動(dòng)態(tài)綁定,77,類和對(duì)象在外部世界中,相同屬性和操作的對(duì)象屬于一個(gè)類,對(duì)象是類的一個(gè)實(shí)例;在機(jī)器空間中,類是一個(gè)可復(fù)用的模板,而對(duì)象是復(fù)用出來(lái)的獨(dú)立可執(zhí)行程序塊;數(shù)據(jù)抽象是在數(shù)據(jù)對(duì)象上定義相關(guān)的屬
60、性和必要的操作;過(guò)程抽象是定義某功能到責(zé)任實(shí)體;而這一實(shí)體要有必要的屬性和執(zhí)行這一功能的一些列操作;對(duì)象包括實(shí)體對(duì)象和無(wú)形對(duì)象;,78,封裝和消息隱藏類的內(nèi)部屬性和操作的執(zhí)行,只留下外部可見(jiàn)的操作界面。避免外界錯(cuò)誤地對(duì)內(nèi)部進(jìn)行修改,造成不良影響;對(duì)象只通過(guò)消息來(lái)請(qǐng)求其他的對(duì)象執(zhí)行自身的操作;消息必須直接發(fā)給指定的對(duì)象,消息中包括請(qǐng)求執(zhí)行操作的必要信息;接收消息的對(duì)象是消息的執(zhí)行者,在執(zhí)時(shí)也可以向其他對(duì)象發(fā)出請(qǐng)求。,79,類和子類
61、類可以有子類,子類繼承父類,形成類的層次結(jié)構(gòu);繼承的概念與現(xiàn)實(shí)意義相同,子類繼承父類的全部屬性和操作,并允許有自己的屬性和操作;繼承可以有多重繼承;繼承有傳遞性;繼承的重要作用在于源代碼的復(fù)用。,80,學(xué)生姓名年齡……,,研究生導(dǎo)師研究方向……,,本科生班級(jí)專業(yè)……,,,,,,,繼承:,81,繼承層次:,運(yùn)輸工具,輪船,車輛,飛機(jī),卡車,轎車,,,,,,,,,,,82,人員姓名年齡……,,研究生導(dǎo)師
62、研究方向……,,職工部門職務(wù)……,,,,,,,,,,,,,在職研究生……,,多繼承:,83,多態(tài)性在繼承關(guān)系的類層次結(jié)構(gòu)中,定義同名操作,形成同一操作的多種形態(tài),按同一個(gè)消息響應(yīng)不同的行為。即“多態(tài)性”。多態(tài)性更強(qiáng)地體現(xiàn)了信息隱蔽的原則,實(shí)現(xiàn)接口的獨(dú)立封裝。多態(tài)性的實(shí)現(xiàn)機(jī)制: 靜態(tài)聯(lián)編—編譯直接確定連接的軟件成分 動(dòng)態(tài)聯(lián)編—編譯不確定連接的軟件成分,執(zhí)行時(shí)根據(jù)定義的實(shí)體再確定需要的連接的軟件成分,84,動(dòng)
63、態(tài)聯(lián)編:,靜態(tài)聯(lián)編:,圖形坐標(biāo)移動(dòng)(),,,,,,,,點(diǎn)……移動(dòng)()……,,,矩形長(zhǎng)寬移動(dòng)()……,,,圓半徑移動(dòng)(),,,,,多態(tài)性:,圖形字符型坐標(biāo)數(shù)字型坐標(biāo)……移動(dòng)()移動(dòng)()……,,,Virtue,可使用統(tǒng)一圖形移動(dòng)接口,采用移動(dòng)()的動(dòng)態(tài)聯(lián)編,85,▲面向?qū)ο蠓椒ǖ膬?yōu)勢(shì),以更接近人類認(rèn)識(shí)世界的思維的方式來(lái)建立問(wèn)題域模型,因?yàn)槭挛锉旧聿坏▽傩砸舶ㄐ袨?,認(rèn)識(shí)事物,從來(lái)不會(huì)將事物的屬性和行為分
64、離建造系統(tǒng)的基本元素是封裝了操作的對(duì)象實(shí)體,回避了以易變的處理過(guò)程為基礎(chǔ)的系統(tǒng)建造從實(shí)體對(duì)象抽象得到的對(duì)象類,保持了語(yǔ)義上的一致性,提高了系統(tǒng)的復(fù)用和構(gòu)造性繼承機(jī)制是源代碼級(jí)的復(fù)用機(jī)制,在此基礎(chǔ)上的多態(tài)機(jī)制,成為系統(tǒng)可擴(kuò)充性結(jié)構(gòu),以及分布式系統(tǒng)結(jié)構(gòu)實(shí)現(xiàn)的基礎(chǔ)保證,86,▲面向?qū)ο蠓椒ǖ陌l(fā)展趨勢(shì),從80年代到現(xiàn)在20多年的發(fā)展過(guò)程,面向?qū)ο蠓椒▽W(xué)逐漸走向成熟和。主要表現(xiàn)在:? 橫向求同:多種的面向?qū)ο蠓椒ㄖg的求同。? 縱向求同
65、:與非面向?qū)ο蠓椒ǖ那笸? 標(biāo)準(zhǔn)化: 統(tǒng)一建模語(yǔ)言(Unified Modeling Language UML) 96年由Booch、Jacobson、Rumbaugh三位面向?qū)ο蠓椒ǖ膶<?,在?guó)際對(duì)象管理組織OMG建議下,在Rational公司研制了UML,從97年的1.0版到現(xiàn)在的2.X版,逐步完善。目前是業(yè)界共識(shí)的標(biāo)準(zhǔn)。,87,統(tǒng)一建模語(yǔ)言(Unified Modeling Language UML),UML
66、是以圖形來(lái)確定、表示、和記錄軟件系統(tǒng)的建模語(yǔ)言,面向?qū)ο蠓治瞿P?需求描述: Use Case 用況圖,輔助模型: Sequence順序圖 Collaboration協(xié)作圖 State狀態(tài)圖 Packet包圖 Component構(gòu)件圖 Deployment部署圖 Activity活動(dòng)圖,基本模型: Class類圖 Object對(duì)象圖,對(duì)象,對(duì)象間關(guān)系,對(duì)象屬性,詳細(xì)說(shuō)明,88,1. 用
67、況圖(Use Case)用況圖的建立思想不屬于面向?qū)ο蟮?,而是業(yè)界早已熟悉的需求建模方法,只是UML有新的表示方法。,,,,,,房主,,,,,,,,,,,,,,《include》,Use Case示例:,身份確認(rèn),系統(tǒng)設(shè)置,系統(tǒng)運(yùn)行查詢,啟動(dòng)/關(guān)閉系統(tǒng),傳感器監(jiān)測(cè),密碼修改,,,,系統(tǒng)區(qū)域設(shè)置,系統(tǒng)電話設(shè)置,系統(tǒng)警報(bào)設(shè)置,,《include》,《extend》,《extend》,《extend》,參與者,用況,包含用況,擴(kuò)展用況,交互
68、關(guān)系,顯示窗,,,電話,,報(bào)警器,,,,傳感器,,,參與者,,89,,,,,,,《include》,《extend》,,Use Case圖元素:,參與者:與系統(tǒng)交互的,使用系統(tǒng)相關(guān)功能的角色,,用況:與參與者有交互的一個(gè)功能,,,,參與者與用況的連線:表示雙向,沒(méi)有箭頭,用況之間的連線:表示包含其中必須的功能,用況之間的連線:表示擴(kuò)展可選的功能,90,2.類圖(Class) 從問(wèn)題域中的實(shí)體抽象出對(duì)象類,描述類之間的靜態(tài)結(jié)構(gòu)。,
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 信息系統(tǒng)項(xiàng)目管理師學(xué)習(xí)筆記
- 信息系統(tǒng)項(xiàng)目管理師word版
- 信息系統(tǒng)項(xiàng)目管理師講義資料
- 信息系統(tǒng)項(xiàng)目管理師考試大綱
- 信息系統(tǒng)項(xiàng)目管理師考試大綱
- 信息系統(tǒng)項(xiàng)目管理師-論文-整體管理
- 信息系統(tǒng)項(xiàng)目管理師_論項(xiàng)目的風(fēng)險(xiǎn)管理
- 信息系統(tǒng)項(xiàng)目管理師論文范例匯編
- 信息系統(tǒng)項(xiàng)目管理師教程背誦版
- 信息系統(tǒng)項(xiàng)目管理師查漏補(bǔ)缺
- 信息系統(tǒng)項(xiàng)目管理師測(cè)試題
- 信息系統(tǒng)項(xiàng)目管理師論文各類范文
- 信息系統(tǒng)項(xiàng)目管理師要點(diǎn)整理
- 信息系統(tǒng)項(xiàng)目管理師查漏補(bǔ)缺
- 信息系統(tǒng)項(xiàng)目管理師查漏補(bǔ)缺
- 信息系統(tǒng)項(xiàng)目管理師知識(shí)背誦版
- 信息系統(tǒng)項(xiàng)目管理師高分論文-風(fēng)險(xiǎn)管理
- 信息系統(tǒng)項(xiàng)目管理師論文成本管理
- 信息系統(tǒng)項(xiàng)目管理師(高級(jí))、系統(tǒng)集成
- 信息系統(tǒng)項(xiàng)目管理師論文評(píng)分參考標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論