軟件工程基礎(chǔ)課件_第1頁(yè)
軟件工程基礎(chǔ)課件_第2頁(yè)
軟件工程基礎(chǔ)課件_第3頁(yè)
軟件工程基礎(chǔ)課件_第4頁(yè)
軟件工程基礎(chǔ)課件_第5頁(yè)
已閱讀5頁(yè),還剩160頁(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

軟件工程基礎(chǔ)

2第1章概述

31.1軟件工程簡(jiǎn)介

1.1.1軟件生產(chǎn)的發(fā)展軟件是指計(jì)算機(jī)程序及其有關(guān)的數(shù)據(jù)和文檔。軟件生產(chǎn)的各個(gè)階段必需完成的有關(guān)計(jì)算機(jī)程序的功能、設(shè)計(jì)、編制的文字或圖形資料,這些資料稱為“文檔”。1.程序設(shè)計(jì)時(shí)期2.軟件=程序+文檔時(shí)期3.軟件工程階段4.第4階段41.1.2軟件危機(jī)

軟件危機(jī)是指在計(jì)算機(jī)軟件開(kāi)發(fā)和維護(hù)時(shí)所遇到的一系列問(wèn)題。軟件危機(jī)主要包含的問(wèn)題:如何開(kāi)發(fā)軟件以滿足對(duì)軟件日益增長(zhǎng)的需求;如何維護(hù)數(shù)量不斷增長(zhǎng)的已有軟件。1.軟件危機(jī)主要表現(xiàn)形式2.軟件危機(jī)產(chǎn)生的原因3.解決軟件危機(jī)的途徑51.1.3軟件工程1.什么是軟件?軟件是指計(jì)算機(jī)程序及其有關(guān)的數(shù)據(jù)和文檔。軟件文檔(softwaredocumentation)是以人們可讀的形式出現(xiàn)的技術(shù)數(shù)據(jù)和信息?!败浖浅绦蛞约伴_(kāi)發(fā)、使用和維護(hù)所需要的所有文檔(document)。”2.什么是軟件工程?軟件工程(softwareengineering)是軟件開(kāi)發(fā)、運(yùn)行、維護(hù)和引退的系統(tǒng)方法。軟件工程是指導(dǎo)計(jì)算機(jī)軟件開(kāi)發(fā)和維護(hù)的工程學(xué)科。軟件工程采用工程的概念、原理、技術(shù)和方法來(lái)開(kāi)發(fā)與維護(hù)軟件。軟件工程的目標(biāo)是實(shí)現(xiàn)軟件的優(yōu)質(zhì)高產(chǎn)。6

1.2軟件工程學(xué)

1.2.1軟件工程學(xué)的內(nèi)容軟件開(kāi)發(fā)技術(shù)和軟件工程管理。軟件開(kāi)發(fā)技術(shù)包含軟件工程方法學(xué)、軟件工具和軟件工程環(huán)境。軟件工程管理學(xué)包含軟件工程經(jīng)濟(jì)學(xué)和軟件管理學(xué)。1.軟件工程方法學(xué)三個(gè)要素:方法,工具,過(guò)程。2.軟件工具3.軟件工程環(huán)境:是方法和工具的結(jié)合?!败浖_(kāi)發(fā)環(huán)境是相關(guān)的一組軟件工具集合,它支持一定的軟件開(kāi)發(fā)方法或按照一定的軟件開(kāi)發(fā)模型組織而成”。計(jì)算機(jī)輔助軟件工程(ComputerAidedSoftwareEngineering,CASE)是一組工具和方法的集合,可以輔助軟件生存周期各階段進(jìn)行軟件開(kāi)發(fā)活動(dòng)。4.軟件工程管理目的是為了能按預(yù)定的時(shí)間和費(fèi)用,成功地生產(chǎn)軟件產(chǎn)品。內(nèi)容:費(fèi)用管理、人員組織、工程計(jì)劃管理、軟件配置管理。軟件工程各階段所產(chǎn)生的全部文檔和軟件本身構(gòu)成軟件配置。71.2.2軟件工程過(guò)程

軟件過(guò)程是“把輸入轉(zhuǎn)化為輸出的一組彼此相關(guān)的資源和活動(dòng)”。軟件過(guò)程是軟件工程方法學(xué)的三個(gè)要素(方法、工具和過(guò)程)之一。1.2.3軟件工程基本原理用分階段的生存周期計(jì)劃進(jìn)行嚴(yán)格的管理;堅(jiān)持進(jìn)行階段評(píng)審;實(shí)行嚴(yán)格的產(chǎn)品控制;采用現(xiàn)代程序設(shè)計(jì)技術(shù);軟件工程結(jié)果應(yīng)能清楚地審查;開(kāi)發(fā)小組的人員應(yīng)該少而精;承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性。81.3軟件生存周期1.軟件生存周期定義從設(shè)計(jì)軟件產(chǎn)品開(kāi)始到產(chǎn)品不能使用為止的時(shí)間周期。軟件生存周期中,軟件開(kāi)發(fā)與維護(hù)時(shí)的費(fèi)用越低,軟件的使用壽命越長(zhǎng),產(chǎn)生的價(jià)值就越大,這就是掌握軟件工程學(xué)的目的。2.軟件生存周期劃分的原則3.軟件生存周期的階段劃分由軟件計(jì)劃、軟件開(kāi)發(fā)和軟件運(yùn)行維護(hù)三個(gè)時(shí)期組成。軟件計(jì)劃時(shí)期分為問(wèn)題定義、可行性研究、需求分析三階段。軟件開(kāi)發(fā)時(shí)期分為軟件概要設(shè)計(jì)、軟件詳細(xì)設(shè)計(jì)、軟件實(shí)現(xiàn)、綜合測(cè)試等階段。軟件運(yùn)行過(guò)程中需要不斷地進(jìn)行維護(hù),使軟件持久滿足用戶需要。91.4軟件開(kāi)發(fā)模型1.4.1瀑布模型(WaterfallModel)

101.4.2快速原型模型快速原型模型(RapidPrototypeModel)是快速開(kāi)發(fā)一個(gè)可以運(yùn)行的原型系統(tǒng),通常有三種類型:漸增式的原型:也稱增量模型。用于驗(yàn)證軟件需求的原型。用于驗(yàn)證設(shè)計(jì)方案的原型。111.4.3增量模型增量方式包括:增量開(kāi)發(fā)增量提交121.4.4噴泉模型適用于面向?qū)ο蠓椒?。主張分析和設(shè)計(jì)過(guò)程的重疊、不嚴(yán)格區(qū)分。模塊集成過(guò)程:反復(fù)經(jīng)過(guò)分析、設(shè)計(jì)、測(cè)試、集成,再分析、設(shè)計(jì)、測(cè)試、集成。

131.4.5螺旋模型

142.1軟件定義與可行性研究

系統(tǒng)定義的目的系統(tǒng)定義的任務(wù)2.1.1軟件定義1.明確系統(tǒng)目標(biāo)規(guī)模、基本要求2.對(duì)現(xiàn)有系統(tǒng)的分析3.設(shè)計(jì)新系統(tǒng)可能的解決方案2.1.2可行性研究技術(shù)可行性經(jīng)濟(jì)可行性社會(huì)因素方面的可行性2.1.3可行性研究的結(jié)論1.可以進(jìn)行開(kāi)發(fā)。2.需要等待某些條件3.需要對(duì)開(kāi)發(fā)目標(biāo)進(jìn)行某些修改之后才能開(kāi)發(fā)。4.不能進(jìn)行或不必進(jìn)行開(kāi)發(fā)。152.2軟件工程開(kāi)發(fā)計(jì)劃2.2.1軟件工程項(xiàng)目概述和實(shí)施計(jì)劃1.項(xiàng)目概述2.軟件工程實(shí)施計(jì)劃Gantt圖法工程網(wǎng)絡(luò)技術(shù)。2.2.2軟件開(kāi)發(fā)計(jì)劃與復(fù)審項(xiàng)目開(kāi)發(fā)計(jì)劃的編寫(xiě)內(nèi)容163.1需求分析任務(wù)需求分析的基本任務(wù)是軟件人員和用戶一起完全弄清用戶對(duì)系統(tǒng)的確切要求。需求分析是發(fā)現(xiàn)、逐步求精、建模、規(guī)格說(shuō)明和復(fù)審的過(guò)程。3.1.1確定目標(biāo)系統(tǒng)的具體要求(1)確定系統(tǒng)的運(yùn)行環(huán)境要求(2)系統(tǒng)的性能要求(3)確定系統(tǒng)功能173.1需求分析任務(wù)3.1.2建立目標(biāo)系統(tǒng)的邏輯模型模型是為了理解事物而對(duì)事物做出一種抽象,對(duì)事物的無(wú)歧義的書(shū)面描述。模型由一組圖形符號(hào)和組成圖形的規(guī)則組成。建模的基本目標(biāo)是:描述用戶需求為軟件的設(shè)計(jì)奠定基礎(chǔ)定義一組需求,用以驗(yàn)收產(chǎn)品。模型分為:數(shù)據(jù)模型:用實(shí)體—關(guān)系圖功能模型:用數(shù)據(jù)流圖行為模型:用狀態(tài)轉(zhuǎn)換圖數(shù)據(jù)字典用來(lái)描述軟件使用或產(chǎn)生的所有數(shù)據(jù)對(duì)象,并對(duì)各種圖形工具所不能表達(dá)的內(nèi)容加以補(bǔ)充。18【例3.1】某高校醫(yī)療費(fèi)管理系統(tǒng)

醫(yī)療費(fèi):校內(nèi)門(mén)診費(fèi)、校外門(mén)診費(fèi)、住院費(fèi)、子女醫(yī)療費(fèi)。要求數(shù)據(jù)庫(kù)中存放每個(gè)職工的職工號(hào)、姓名、所屬部門(mén)。報(bào)銷時(shí)填寫(xiě)所屬部門(mén)、職工號(hào)、姓名、日期、醫(yī)療費(fèi)種類和數(shù)額。該校規(guī)定,每年每個(gè)職工的醫(yī)療費(fèi)報(bào)銷有限額(如480元),限額在年初時(shí)確定,每個(gè)職工一年內(nèi)報(bào)銷的醫(yī)療費(fèi)不超過(guò)限額時(shí)可全部報(bào)銷;超過(guò)限額時(shí),超出部分只可報(bào)銷90%。職工子女的醫(yī)療費(fèi)也有限額(如240元)。醫(yī)療費(fèi)管理系統(tǒng)每天記錄當(dāng)天報(bào)銷的若干職工或職工子女的醫(yī)療費(fèi)的類別、金額。讓系統(tǒng)自動(dòng)結(jié)賬、統(tǒng)計(jì)當(dāng)天報(bào)銷的醫(yī)療費(fèi)總額,供出納員核對(duì)。每筆賬要保存?zhèn)洳?,每天所?bào)銷的費(fèi)用要和各個(gè)職工已報(bào)銷的金額累計(jì)起來(lái),以檢查哪些職工已超額。系統(tǒng)要設(shè)計(jì)適當(dāng)?shù)牟樵児δ?。年終結(jié)算、下一年度開(kāi)始時(shí),要對(duì)數(shù)據(jù)庫(kù)文件進(jìn)行初始化,職工醫(yī)療費(fèi)余額累加到下一年度的余額中。

193.2.1進(jìn)行調(diào)查研究調(diào)查研究的目的:是了解用戶的真正需要調(diào)查研究的方法訪談:正式訪談和非正式訪談。分發(fā)調(diào)查表。開(kāi)會(huì)—討論—確認(rèn)的方法。203.2.2分析和描述系統(tǒng)的邏輯模型

1.建立起目標(biāo)系統(tǒng)的邏輯模型2.沿?cái)?shù)據(jù)流圖回溯3.2.3需求分析的復(fù)審內(nèi)容包括:一致性完整性現(xiàn)實(shí)性有效性213.3需求分析圖形工具

實(shí)體-關(guān)系圖數(shù)據(jù)流圖狀態(tài)轉(zhuǎn)換圖

IPO圖。223.3.1實(shí)體-關(guān)系圖1.數(shù)據(jù)對(duì)象2.屬性3.關(guān)系【例3.2】學(xué)生成績(jī)管理系統(tǒng)233.3.2數(shù)據(jù)流圖

1、數(shù)據(jù)流圖的基本符號(hào)242、數(shù)據(jù)流圖的附加符號(hào)

*表示數(shù)據(jù)流之間是“與”關(guān)系(同時(shí)存在)+表示數(shù)據(jù)流之間是“或”關(guān)系⊕表示只能從幾個(gè)數(shù)據(jù)流中選一個(gè)(互斥關(guān)系)253、畫(huà)數(shù)據(jù)流圖的步驟

畫(huà)頂層數(shù)據(jù)流圖畫(huà)分層數(shù)據(jù)流圖畫(huà)總的數(shù)據(jù)流圖4、幾點(diǎn)注意事項(xiàng)【例3-3】畫(huà)學(xué)生成績(jī)管理系統(tǒng)的數(shù)據(jù)流圖。263.3.3狀態(tài)轉(zhuǎn)換圖

1.什么情況下要畫(huà)狀態(tài)轉(zhuǎn)換圖2.狀態(tài)轉(zhuǎn)換圖的符號(hào)【例3.4】畫(huà)出數(shù)據(jù)結(jié)構(gòu)中“?!睂?duì)象的狀態(tài)轉(zhuǎn)換圖。273.3.4IPO圖輸入/處理/輸出(InputProcessOutput)圖的簡(jiǎn)稱?!纠?.5】畫(huà)出學(xué)生成績(jī)管理系統(tǒng)的IPO圖。283.4數(shù)據(jù)字典

數(shù)據(jù)字典(DataDictionary,DD)是對(duì)實(shí)體-關(guān)系圖、狀態(tài)轉(zhuǎn)換圖和數(shù)據(jù)流圖中出現(xiàn)的所有數(shù)據(jù)對(duì)象、屬性、關(guān)系、狀態(tài)、數(shù)據(jù)流、文件、處理等元素的定義的集合。3.4.1數(shù)據(jù)字典的內(nèi)容1.數(shù)據(jù)元素2.數(shù)據(jù)流3.數(shù)據(jù)存儲(chǔ)4.數(shù)據(jù)處理293.4.2數(shù)據(jù)字典使用的符號(hào)

=表示“等價(jià)于”或“定義為”+連接[],|表示“或”,用“|”分隔,表示可任選其中某一項(xiàng){}表示“重復(fù)”

()表示“可選”,用“,”號(hào)隔開(kāi)1{A}表示A的內(nèi)容至少要出現(xiàn)1次。{B}表示B的內(nèi)容允許重復(fù)0

至任意次。如:成績(jī)單=學(xué)號(hào)+姓名+1{課程名+成績(jī)}3也可寫(xiě)為成績(jī)單=學(xué)號(hào)+姓名+{課程名+成績(jī)}30

3.5需求分析文檔

3.5.1軟件需求規(guī)格說(shuō)明框架:1.引言

2.信息描述3.功能描述

4.行為描述

5.確認(rèn)標(biāo)準(zhǔn)

6.運(yùn)行需求7.附錄。3.5.2編寫(xiě)需求分析文檔的步驟編寫(xiě)軟件需求分析說(shuō)明書(shū)編寫(xiě)初步的用戶手冊(cè)編寫(xiě)確認(rèn)測(cè)試的計(jì)劃,作為今后軟件確認(rèn)和驗(yàn)收的依據(jù)。修改、完善項(xiàng)目開(kāi)發(fā)計(jì)劃。3.5.3用戶手冊(cè)編寫(xiě)提示1.引言2.用途3.運(yùn)行環(huán)境4.使用過(guò)程314.1概要設(shè)計(jì)步驟

概要設(shè)計(jì)的基本任務(wù)1.

審查可行性研究報(bào)告和需求分析規(guī)格說(shuō)明書(shū)。2.

確定模塊結(jié)構(gòu)、數(shù)據(jù)文件結(jié)構(gòu)、系統(tǒng)接口設(shè)計(jì)和測(cè)試方案策略。3.

編寫(xiě)概要設(shè)計(jì)說(shuō)明書(shū)、用戶手冊(cè)和測(cè)試計(jì)劃。4.

復(fù)審。概要設(shè)計(jì)的基本步驟:進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)文件設(shè)計(jì)、系統(tǒng)接口設(shè)計(jì)、測(cè)試方案設(shè)計(jì)、復(fù)審。324.1.1軟件結(jié)構(gòu)設(shè)計(jì)1.設(shè)計(jì)供選擇的方案2.推薦最佳實(shí)現(xiàn)方案3.設(shè)計(jì)軟件結(jié)構(gòu)4.1.2數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)4.1.3系統(tǒng)接口設(shè)計(jì)系統(tǒng)接口包括內(nèi)部接口、外部接口和用戶接口。數(shù)據(jù)流圖和控制情況是接口設(shè)計(jì)的基礎(chǔ)。4.1.4設(shè)計(jì)測(cè)試方案在概要設(shè)計(jì)階段,測(cè)試方案主要根據(jù)系統(tǒng)功能來(lái)設(shè)計(jì),稱為黑盒法測(cè)試。334.2軟件設(shè)計(jì)的基本原理

4.2.1模塊與信息隱蔽(1)模塊模塊(module)是能夠單獨(dú)命名,能獨(dú)立地完成一定功能,由邊界元素限定的程序元素的序列。模塊的基本屬性:名稱、接口、功能、邏輯、狀態(tài)。(2)信息隱蔽指在設(shè)計(jì)和確定模塊時(shí),使一個(gè)模塊內(nèi)包含的信息,對(duì)于不需要這些信息的其他模塊來(lái)說(shuō),是不能訪問(wèn)的。344.2.2模塊化模塊化(Modularization)是把系統(tǒng)分割成能完成獨(dú)立功能的模塊。1.模塊化可產(chǎn)生的效果2.模塊分割方法(1)抽象與詳細(xì)化(2)根據(jù)功能來(lái)劃分模塊

①橫向分割

②縱向分割③先確定中心控制模塊,由控制模塊指示從屬模塊,逐次進(jìn)行分解。354.2.3模塊的耦合和內(nèi)聚

1.模塊的耦合軟件結(jié)構(gòu)中模塊之間互相依賴的程度用耦合來(lái)度量。數(shù)據(jù)耦合控制耦合公共環(huán)境耦合內(nèi)容耦合總之,應(yīng):在盡量使用數(shù)據(jù)耦合,少用控制耦合。用參數(shù)傳遞信息,不采用內(nèi)容耦合,盡量控制公共環(huán)境耦合。362.模塊的內(nèi)聚

一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度用內(nèi)聚來(lái)度量。(1)偶然內(nèi)聚(2)邏輯內(nèi)聚(3)時(shí)間內(nèi)聚

(4)通信內(nèi)聚

(5)順序內(nèi)聚

(6)功能內(nèi)聚內(nèi)聚按緊密程度從低到高排列:偶然內(nèi)聚、邏輯內(nèi)聚、時(shí)間內(nèi)聚、通信內(nèi)聚、功能內(nèi)聚。374.2.4軟件結(jié)構(gòu)設(shè)計(jì)優(yōu)化準(zhǔn)則1.提高模塊獨(dú)立性2.模塊接口的準(zhǔn)則模塊的接口要簡(jiǎn)單、清晰,含義明確,便于理解,易于實(shí)現(xiàn)、測(cè)試與維護(hù)。3.模塊的作用范圍應(yīng)在控制范圍之內(nèi)4.模塊的深度、寬度、扇出和扇入應(yīng)適當(dāng)5.模塊的大小應(yīng)適中384.3軟件結(jié)構(gòu)設(shè)計(jì)的圖形工具

4.3.1層次圖(或HIPO圖)394.3.2結(jié)構(gòu)圖

1.結(jié)構(gòu)圖的符號(hào)(1)方框代表模塊,框內(nèi)注明模塊的名字和主要功能。(2)方框之間的大箭頭或直線表示模塊的調(diào)用關(guān)系。(3)帶注釋的小箭頭表示模塊調(diào)用時(shí)傳遞的信息及其傳遞方向。尾部加空心圓的小箭頭表示傳遞數(shù)據(jù)信息。尾部加實(shí)心圓的小箭頭表示傳遞控制信息。(4)選擇結(jié)構(gòu)(5)循環(huán)結(jié)構(gòu),模塊H循環(huán)調(diào)用模塊A,B,C,見(jiàn)圖4.5(b)。402.結(jié)構(gòu)圖的繪制

【例4-6】學(xué)生成績(jī)管理系統(tǒng)的結(jié)構(gòu)圖414.4概要設(shè)計(jì)方法4.4.1結(jié)構(gòu)化方法結(jié)構(gòu)化方法又稱面向數(shù)據(jù)流設(shè)計(jì)方法(StructuredDesign,SD)。設(shè)計(jì)步驟是先根據(jù)系統(tǒng)數(shù)據(jù)流圖建立系統(tǒng)邏輯模型,再進(jìn)行結(jié)構(gòu)設(shè)計(jì)。1.建立系統(tǒng)邏輯模型(1)變換型數(shù)據(jù)流(2)事務(wù)型數(shù)據(jù)流【例4.7】學(xué)生成績(jī)管理系統(tǒng)系統(tǒng)屬于變換型數(shù)據(jù)流。【例4.8】工資管理系統(tǒng)屬于事務(wù)型數(shù)據(jù)流?!纠?.9】醫(yī)療費(fèi)管理系統(tǒng)中事務(wù)型、變換型兩種數(shù)據(jù)流同時(shí)存在

2.完成軟件結(jié)構(gòu)設(shè)計(jì)424.4.2面向數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)方法

Jackson把數(shù)據(jù)結(jié)構(gòu)(或程序結(jié)構(gòu))分為以下三種基本類型:(a)順序(b)選擇(c)循環(huán)43Jacksan圖特點(diǎn):

l

能對(duì)結(jié)構(gòu)進(jìn)行自頂向下分解,可以清晰地表示層次結(jié)構(gòu)

l

結(jié)構(gòu)易讀、形象、直觀

l

既可表示數(shù)據(jù)結(jié)構(gòu)也可表示程序結(jié)構(gòu)

Jackson設(shè)計(jì)方法的四個(gè)步驟:1、分析并確定輸入數(shù)據(jù)和輸出數(shù)據(jù)的邏輯結(jié)構(gòu);2、找出輸入數(shù)據(jù)結(jié)構(gòu)和輸出數(shù)據(jù)結(jié)構(gòu)中有對(duì)應(yīng)關(guān)系的數(shù)據(jù)單元;3、從描述數(shù)據(jù)結(jié)構(gòu)的Jackson圖導(dǎo)出描述程序結(jié)構(gòu)的Jackson圖;4、列出所有的操作和條件,并把它們分配到程序結(jié)構(gòu)圖中去。

44【例4.11】用Jacksan方法對(duì)學(xué)生成績(jī)管理系統(tǒng)進(jìn)行結(jié)構(gòu)設(shè)計(jì)。例3.2學(xué)生成績(jī)管理系統(tǒng)在學(xué)生入學(xué)時(shí)輸入學(xué)生基本信息。每次單科成績(jī)是按班級(jí)內(nèi)學(xué)生學(xué)號(hào)的順序依次輸入每位學(xué)生的平時(shí)成績(jī)和考試成績(jī),成績(jī)輸入格式見(jiàn)表4.1。然后由計(jì)算機(jī)計(jì)算每位學(xué)生的單科成績(jī)總評(píng)分。輸出的學(xué)生個(gè)人成績(jī)單格式,見(jiàn)表4.2;班級(jí)各科成績(jī)匯總表格式,見(jiàn)表4.3。4546474.5代碼設(shè)計(jì)

1.代碼的定義和作用代碼是為了對(duì)數(shù)據(jù)進(jìn)行識(shí)別、分類、排序等操作所使用的數(shù)字、文字或符號(hào)。2.代碼的性質(zhì)

4.5.1代碼設(shè)計(jì)原則1、標(biāo)準(zhǔn)化:國(guó)際標(biāo)準(zhǔn)、國(guó)家標(biāo)準(zhǔn)、部頒標(biāo)準(zhǔn)或習(xí)慣標(biāo)準(zhǔn)2、惟一性

3、可擴(kuò)充性4、

簡(jiǎn)單性5、規(guī)范化6、適應(yīng)性

484.5.2代碼種類

1.順序碼

2.信息塊碼

3.歸組分類碼

見(jiàn)表4.4歸組代碼示例

4.助記碼

5.數(shù)字式字符碼

6.組合碼

49表4.4歸組代碼示例信息代碼哲學(xué)100宗教200社會(huì)科學(xué)300法律320商法325公司法3252股份公司法32524合股公司法32525504.5.3代碼設(shè)計(jì)方法

基本步驟如下:1.確定編碼對(duì)象2.明確編碼目的3.確定代碼的個(gè)數(shù)4.確定代碼使用范圍和使用期限5.確定代碼體系和代碼位數(shù)6.確定編碼規(guī)則7.編寫(xiě)代碼8.編寫(xiě)代碼詞典514.6數(shù)據(jù)輸入輸出設(shè)計(jì)4.6.1輸入設(shè)計(jì)4.6.2輸出設(shè)計(jì)524.7數(shù)據(jù)安全設(shè)計(jì)

軟件系統(tǒng)發(fā)生的事故類型。數(shù)據(jù)安全控制方法:1.檢查數(shù)據(jù)的正確性、完整性2.檢查用戶使用權(quán)限3.系統(tǒng)運(yùn)行日志4.監(jiān)督檢查違規(guī)行為5.加密6.?dāng)?shù)據(jù)安全受破壞時(shí)的措施534.8概要設(shè)計(jì)文檔與復(fù)審

4.8.1概要設(shè)計(jì)說(shuō)明書(shū)4.8.2概要設(shè)計(jì)復(fù)審4.8.3數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明書(shū)54詳細(xì)設(shè)計(jì)的主要任務(wù):

過(guò)程設(shè)計(jì)和系統(tǒng)界面設(shè)計(jì)系統(tǒng)界面設(shè)計(jì)要完成系統(tǒng)外部接口、系統(tǒng)內(nèi)部模塊接口和用戶界面的設(shè)計(jì)。用戶界面設(shè)計(jì)是軟件與使用它的人之間的通信接口的設(shè)計(jì)。過(guò)程設(shè)計(jì)的任務(wù)是設(shè)計(jì)軟件結(jié)構(gòu)中每個(gè)模塊功能的實(shí)現(xiàn)算法。結(jié)構(gòu)化設(shè)計(jì)建立在自頂向下設(shè)計(jì)、逐步求精方法和數(shù)據(jù)流分析等原則基礎(chǔ)上。結(jié)構(gòu)化設(shè)計(jì)只用三種基本控制結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。555.1用戶界面設(shè)計(jì)

5.1.1用戶界面設(shè)計(jì)問(wèn)題1.系統(tǒng)響應(yīng)時(shí)間2.用戶幫助設(shè)施3.出錯(cuò)信息處理4.命令交互5.1.2用戶界面設(shè)計(jì)過(guò)程用戶界面設(shè)計(jì)是一個(gè)迭代的過(guò)程,一般步驟如下:先設(shè)計(jì)和實(shí)現(xiàn)用戶界面原型。用戶試用該原型,向設(shè)計(jì)者提出對(duì)界面的評(píng)價(jià)。設(shè)計(jì)者根據(jù)用戶的意見(jiàn)修改設(shè)計(jì)并實(shí)現(xiàn)下一級(jí)原型。不斷進(jìn)行下去,直到用戶滿意為止。5.1.3用戶界面設(shè)計(jì)的基本原則(1)可靠性(2)簡(jiǎn)單性(3)易學(xué)習(xí)性和易使用性(4)立即反饋性5.1.4用戶界面設(shè)計(jì)指南1.一般交互2.信息顯示3.數(shù)據(jù)輸入56

5.2過(guò)程設(shè)計(jì)

過(guò)程設(shè)計(jì)就是用順序、選擇和循環(huán)三種結(jié)構(gòu)的有限次組合或嵌套,描述模塊功能的實(shí)現(xiàn)算法。過(guò)程設(shè)計(jì)階段的工具:流程圖、N_S圖、問(wèn)題分析圖(PAD圖)、判定表、判定樹(shù)、過(guò)程設(shè)計(jì)語(yǔ)言(PDL)等。5.2.1流程圖1.流程圖的分類(1)數(shù)據(jù)流程圖(2)程序流程圖(3)系統(tǒng)流程圖(4)程序網(wǎng)絡(luò)圖(5)系統(tǒng)資源圖572.流程圖符號(hào)583.流程圖使用約定

594.流程圖的三種基本結(jié)構(gòu):

順序、選擇、循環(huán)。

605.2.2盒圖

盒圖是Nassi和Shneiderman提出的,又稱N_S圖。

1.盒圖的符號(hào)61【例5.1】將下述含有GOTO語(yǔ)句的用程序流程圖,改為N_S圖。

62【例5.2】學(xué)生成績(jī)管理系統(tǒng)的N-S圖。

635.2.3PAD圖

基本符號(hào)64【例5.3】學(xué)生成績(jī)管理系統(tǒng)的PAD圖

655.2.4判定表

1.判定表的組成左上部列出所有條件。左下部列出所有可能做的工作。右上部每一列表示各種條件的一種可能組合,所有列表示條件組合的全部可能情況。右下部的每一列是和每一種條件組合所對(duì)應(yīng)的應(yīng)做的工作。2.判定表中的符號(hào)右上部用“T”表示條件成立,用“F”表示條件不成立,空白表示條件成立與否不影響。右下部畫(huà)“X”表示做該行左邊列出的那項(xiàng)工作,空白表示不做該項(xiàng)工作。66例5.4用判定表表示旅游票價(jià)的優(yōu)惠規(guī)定。

某旅行社根據(jù)旅游淡季、旺季及是否團(tuán)體訂票,確定旅游票價(jià)的折扣率。具體規(guī)定如下:人數(shù)在20人以上的屬團(tuán)體,20人以下的是散客。每年的4-5月、7-8月、10月為旅游旺季,其余為旅游淡季。旅游旺季,團(tuán)體票優(yōu)惠5℅,散客不優(yōu)惠。旅游淡季,團(tuán)體票優(yōu)惠30℅,散客優(yōu)惠20℅。用判定表表示旅游訂票的優(yōu)惠規(guī)定。67例5.5用判定樹(shù)表示旅游價(jià)格優(yōu)惠規(guī)定。某旅行社根據(jù)旅游淡季、旺季及是否團(tuán)體訂票,確定旅游票價(jià)的折扣率。具體規(guī)定如下:人數(shù)在20人以上的屬團(tuán)體,20人以下的是散客。每年的4-5月、7-8月、10月為旅游旺季,其余為旅游淡季。旅游旺季,團(tuán)體票優(yōu)惠5℅,散客不優(yōu)惠。旅游淡季,團(tuán)體票優(yōu)惠30℅,散客優(yōu)惠20℅。用判定表表示旅游訂票的優(yōu)惠規(guī)定。685.2.6過(guò)程設(shè)計(jì)語(yǔ)言

過(guò)程設(shè)計(jì)語(yǔ)言(ProgramDesignLanguage,簡(jiǎn)稱PDL),也稱偽碼,是一種混雜語(yǔ)言,說(shuō)明某種結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言的語(yǔ)法形式。用PDL表示的程序結(jié)構(gòu):1順序結(jié)構(gòu)

處理1處理2

…處理3選擇結(jié)構(gòu)

IF-THEN-ELSE結(jié)構(gòu):IF條件處理1ELSE處理2ENDIFIF-THEN結(jié)構(gòu):IF條件處理1NDIF69CASE結(jié)構(gòu):CASE條件OFCASE(1)處理1CASE(2)處理2

…CASE(n)處理n3。循環(huán)結(jié)構(gòu)FOR循環(huán)結(jié)構(gòu):FORi=1TOn循環(huán)體ENDFORWHILE循環(huán)結(jié)構(gòu):WHILE條件循環(huán)體ENDWHILEUNTIL循環(huán)結(jié)構(gòu):REPEAT循環(huán)體UNTIL條件704.模塊定義和調(diào)用模塊定義PROCEDURE模塊名(參數(shù))

…RETURE模塊調(diào)用CALL模塊名(參數(shù))數(shù)據(jù)定義DECLARE類型變量名,…其中,類型可以有:字符、整型、實(shí)型、雙精度、指針、數(shù)組及結(jié)構(gòu)等類型。5.輸入或輸出GET(輸入變量表)PUT(輸出變量表)715.3詳細(xì)設(shè)計(jì)文檔與復(fù)審5.3.1詳細(xì)設(shè)計(jì)說(shuō)明書(shū)5.3.2操作手冊(cè)編寫(xiě)提示5.3.3詳細(xì)設(shè)計(jì)的復(fù)審用下列形式之一完成:設(shè)計(jì)者和設(shè)計(jì)組的另一成員一起進(jìn)行靜態(tài)檢查;由檢查小組進(jìn)行較正式的軟件結(jié)構(gòu)設(shè)計(jì)檢查;由檢查小組進(jìn)行正式的設(shè)計(jì)檢查,對(duì)軟件設(shè)計(jì)質(zhì)量給出評(píng)價(jià)。72

用戶界面設(shè)計(jì)的質(zhì)量直接影響用戶對(duì)軟件產(chǎn)品的評(píng)價(jià),應(yīng)對(duì)用戶界面設(shè)計(jì)給以足夠的重視。過(guò)程設(shè)計(jì)應(yīng)在數(shù)據(jù)設(shè)計(jì)、概要設(shè)計(jì)、接口設(shè)計(jì)完成之后進(jìn)行,是詳細(xì)設(shè)計(jì)階段應(yīng)完成的主要任務(wù)。詳細(xì)設(shè)計(jì)階段使用的工具:流程圖、N_S圖、PAD圖、判定表、判定樹(shù)、過(guò)程設(shè)計(jì)語(yǔ)言(PDL)等,讀者應(yīng)當(dāng)熟練掌握這些工具。736.1結(jié)構(gòu)化程序設(shè)計(jì)方法

1.什么是結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序(StructuredProgram)是由基本的控制結(jié)構(gòu),構(gòu)造而成的程序。每個(gè)控制結(jié)構(gòu)只有一個(gè)入口點(diǎn)和一個(gè)出口點(diǎn)。結(jié)構(gòu)化程序設(shè)計(jì)(StructuredProgramming,SP)結(jié)構(gòu)化程序設(shè)計(jì)強(qiáng)調(diào)對(duì)模塊采用自上而下、逐步細(xì)化的設(shè)計(jì)方法;不主張用GOTO語(yǔ)句來(lái)隨意轉(zhuǎn)移程序的控制;主張僅采用順序、選擇、重復(fù)三種基本控制結(jié)構(gòu);每種基本控制結(jié)構(gòu)只有一個(gè)入口、一個(gè)出口、完成一個(gè)操作;將這三種基本控制結(jié)構(gòu)根據(jù)程序的邏輯,嵌套或組合成結(jié)構(gòu)化程序,完成預(yù)定的功能。2.結(jié)構(gòu)化程序設(shè)計(jì)的特點(diǎn)源程序有清晰性,并能較好地適合自頂向下或自底向上的程序設(shè)計(jì)技術(shù)。在詳細(xì)設(shè)計(jì)階段,使系統(tǒng)結(jié)構(gòu)具有模塊化和清晰性的特性。在軟件編碼階段,使軟件易于理解、修改,便于重復(fù)使用。746.2選擇程序設(shè)計(jì)語(yǔ)言1.程序設(shè)計(jì)語(yǔ)言的分類(1)面向機(jī)器語(yǔ)言:包括機(jī)器語(yǔ)言和匯編語(yǔ)言。(2)高級(jí)程序設(shè)計(jì)語(yǔ)言2.高級(jí)語(yǔ)言選用的實(shí)用標(biāo)準(zhǔn)(1)項(xiàng)目的應(yīng)用領(lǐng)域(2)軟件開(kāi)發(fā)環(huán)境(3)根據(jù)系統(tǒng)用戶的要求來(lái)選擇(4)軟件開(kāi)發(fā)人員的知識(shí)

如果和其他標(biāo)準(zhǔn)不矛盾,則應(yīng)選擇一種軟件開(kāi)發(fā)人員熟悉的語(yǔ)言,使開(kāi)發(fā)速度更快,質(zhì)量更易保證。但是開(kāi)發(fā)人員應(yīng)仔細(xì)分析軟件項(xiàng)目的類型,敢于學(xué)習(xí)新知識(shí)、掌握新技術(shù)。756.3程序設(shè)計(jì)風(fēng)格源程序文檔編寫(xiě)規(guī)則1.源程序文檔編寫(xiě)時(shí),其標(biāo)識(shí)符名稱、注解和程序布局等要合理。2.數(shù)據(jù)說(shuō)明3.語(yǔ)句構(gòu)造要簡(jiǎn)單直接4.輸入輸出語(yǔ)句5.程序效率程序設(shè)計(jì)主要應(yīng)考慮的是程序的正確性、可理解性、可測(cè)試性和可維護(hù)性。766.4程序設(shè)計(jì)質(zhì)量的評(píng)價(jià)正確性清晰的結(jié)構(gòu)易使用性易維護(hù)性簡(jiǎn)單性易移植性776.5程序設(shè)計(jì)文檔軟件編碼階段的主要文檔是源程序。程序設(shè)計(jì)文檔在保存時(shí)要記載:開(kāi)發(fā)時(shí)間、開(kāi)發(fā)者、測(cè)試記錄、用戶手冊(cè)等。每次程序修改要及時(shí)更改程序所對(duì)應(yīng)的各項(xiàng)軟件配置。786.6軟件測(cè)試目標(biāo)和原則6.6.1軟件測(cè)試目標(biāo)(1)軟件測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過(guò)程;(2)好的測(cè)試方案能夠發(fā)現(xiàn)尚未發(fā)現(xiàn)的錯(cuò)誤;(3)成功的測(cè)試是發(fā)現(xiàn)了尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。軟件測(cè)試的目的是,通過(guò)人工或計(jì)算機(jī)執(zhí)行程序來(lái)有意識(shí)地發(fā)現(xiàn)程序中的設(shè)計(jì)錯(cuò)誤和編碼錯(cuò)誤。6.6.2測(cè)試原則796.7軟件測(cè)試方法

6.7.1靜態(tài)分析與動(dòng)態(tài)測(cè)試1.靜態(tài)分析2.動(dòng)態(tài)測(cè)試:以執(zhí)行程序并分析程序來(lái)查錯(cuò)。為了進(jìn)行軟件測(cè)試,需要預(yù)先準(zhǔn)備好兩種數(shù)據(jù):①輸入數(shù)據(jù);②預(yù)期的輸出結(jié)果。我們把以發(fā)現(xiàn)錯(cuò)誤為目標(biāo)的用于軟件測(cè)試的輸入數(shù)據(jù)及與之對(duì)應(yīng)的預(yù)期輸出結(jié)果叫測(cè)試用例。6.7.2黑盒法與白盒法1.黑盒法黑盒法(Black.BoxTesting)又稱功能測(cè)試,其測(cè)試用例完全是根據(jù)程序的功能說(shuō)明來(lái)設(shè)計(jì)的。2.白盒法白盒法(WhiteBoxTesting)又稱結(jié)構(gòu)測(cè)試,其測(cè)試用例是根據(jù)程序內(nèi)部的邏輯結(jié)構(gòu)和執(zhí)行路徑來(lái)設(shè)計(jì)的。常把黑盒法和白盒法聯(lián)合起來(lái)進(jìn)行,這也稱為灰盒法。806.8軟件測(cè)試步驟

6.8.1模塊測(cè)試模塊測(cè)試也稱單元測(cè)試,其目的是檢查每個(gè)模塊是否能獨(dú)立、正確地運(yùn)行。模塊測(cè)試通常在程序設(shè)計(jì)時(shí)進(jìn)行。驅(qū)動(dòng)程序代替主程序,用來(lái)測(cè)試子程序。存根程序也稱“虛擬子程序”,測(cè)試主模塊。6.8.2集成測(cè)試子系統(tǒng)的組裝稱為集成化。集成測(cè)試分為子系統(tǒng)測(cè)試和系統(tǒng)測(cè)試兩種。漸增式測(cè)試、非漸增式測(cè)試1、自頂向下集成2、自底向上集成6.8.3程序?qū)彶闀?huì)和人工運(yùn)行1.程序?qū)彶闀?huì)2.人工運(yùn)行6.8.4確認(rèn)測(cè)試1.確認(rèn)測(cè)試必須有用戶積極參與,或以用戶為主進(jìn)行。2.軟件配置復(fù)審3.Alpha測(cè)試和Beta測(cè)試6.8.5平行運(yùn)行816.9設(shè)計(jì)測(cè)試方案測(cè)試方案包括三個(gè)內(nèi)容:要測(cè)試的功能輸入的數(shù)據(jù)對(duì)應(yīng)的預(yù)期輸出結(jié)果826.9.1等價(jià)類劃分法1、方法2、等價(jià)類劃分的規(guī)則3、等價(jià)類劃分法步驟4、等價(jià)類測(cè)試步驟6.9.2邊界值分析法6.9.3錯(cuò)誤推測(cè)法6.9.4邏輯覆蓋法1.語(yǔ)句覆蓋2.判定覆蓋3.條件覆蓋4.判定/條件覆蓋5.條件組合覆蓋6.點(diǎn)覆蓋7.邊覆蓋8.路徑覆蓋83【例6.1】按不同邏輯覆蓋法設(shè)計(jì)測(cè)試數(shù)據(jù)

例6.1測(cè)試數(shù)據(jù)的條件組合及對(duì)應(yīng)的執(zhí)行路徑846.9.5因果圖法1.因果圖法測(cè)試用例設(shè)計(jì)步驟2.因果圖基本符號(hào)圖6.3因果圖基本符號(hào)853.因果圖約束符號(hào)

86【例6.2】用因果圖法設(shè)計(jì)測(cè)試用例某規(guī)格說(shuō)明規(guī)定:輸入的第一列字符必須是A或B,第二列字符必須是一個(gè)數(shù)字。第一、二列都滿足條件時(shí)執(zhí)行操作H;如果第一列字符不正確,則給出信息L;如果第二列字符不正確,則給出信息R。根據(jù)上述要求畫(huà)出因果圖,并設(shè)計(jì)測(cè)試用例。87圖6.5例6.2因果圖

表6.2例6.2判定表886.9.6實(shí)用測(cè)試策略

用等價(jià)類劃分法設(shè)計(jì)測(cè)試方案。

使用邊界值分析方法,既測(cè)試輸入數(shù)據(jù)的邊界情況又包括輸出數(shù)據(jù)的邊界情況。(3)如果含有輸入條件的組合情況,一開(kāi)始就用因果圖法。(4)必要時(shí)用錯(cuò)誤推斷法補(bǔ)充測(cè)試方案。(5)用邏輯覆蓋法檢查現(xiàn)有測(cè)試方案,若沒(méi)有達(dá)到邏輯覆蓋標(biāo)準(zhǔn),再補(bǔ)充一些測(cè)試用例?!纠?.3】對(duì)學(xué)生成績(jī)管理系統(tǒng)“輸入學(xué)生成績(jī)”子模塊設(shè)計(jì)測(cè)試用例。896.10軟件調(diào)試、驗(yàn)證與確認(rèn)

6.10.1軟件調(diào)試軟件調(diào)試也稱糾錯(cuò)。首先進(jìn)行軟件測(cè)試,第二步是糾錯(cuò)6.10.2程序正確性驗(yàn)證(軟件驗(yàn)證)是確定軟件開(kāi)發(fā)周期中的一個(gè)給定階段的產(chǎn)品是否達(dá)到需求的過(guò)程。6.10.3軟件確認(rèn)軟件確認(rèn)的方法:1.系統(tǒng)功能和性能滿足需求說(shuō)明書(shū)中的全部要求,得到用戶認(rèn)可。2.完成測(cè)試計(jì)劃中的所有要求,并書(shū)寫(xiě)測(cè)試分析報(bào)告和開(kāi)發(fā)總結(jié)。3.按用戶手冊(cè)和操作手冊(cè)進(jìn)行軟件實(shí)際運(yùn)行。本階段結(jié)束時(shí)應(yīng)完成的文檔有:1.測(cè)試分析報(bào)告;2.經(jīng)確認(rèn)的用戶手冊(cè)和操作手冊(cè);3.軟件開(kāi)發(fā)總結(jié)。906.11軟件測(cè)試計(jì)劃和分析報(bào)告1.軟件測(cè)試計(jì)劃2.測(cè)試說(shuō)明文件測(cè)試設(shè)計(jì)說(shuō)明測(cè)試用例說(shuō)明測(cè)試規(guī)程說(shuō)明3.軟件測(cè)試分析報(bào)告91第6章小結(jié)

程序設(shè)計(jì)也稱軟件編碼,通過(guò)軟件編碼得到軟件設(shè)計(jì)的結(jié)果。在設(shè)計(jì)應(yīng)用軟件時(shí),應(yīng)當(dāng)優(yōu)先選用高級(jí)程序設(shè)計(jì)語(yǔ)言,只有三種情況選用匯編語(yǔ)言。結(jié)構(gòu)化程序設(shè)計(jì)是將順序、選擇、重復(fù)三種基本控制結(jié)構(gòu)進(jìn)行組合和嵌套,以容易理解的形式和避免使用GOTO語(yǔ)句等原則,進(jìn)行的程序設(shè)計(jì)方法。軟件設(shè)計(jì)風(fēng)格直接影響軟件的質(zhì)量,影響軟件的可維護(hù)性和可移植性。軟件編碼階段應(yīng)對(duì)源程序進(jìn)行靜態(tài)分析和模塊測(cè)試,以保證程序的正確性。軟件測(cè)試(testing)是由人工或計(jì)算機(jī)來(lái)執(zhí)行或評(píng)價(jià)系統(tǒng)或系統(tǒng)部件的過(guò)程,以驗(yàn)證它是否滿足規(guī)定的需求或識(shí)別期望的結(jié)果和實(shí)際結(jié)果之間有無(wú)差別。測(cè)試的根本任務(wù)是發(fā)現(xiàn)并改正軟件中的錯(cuò)誤。測(cè)試過(guò)程的早期使用白盒法,后期使用黑盒法。設(shè)計(jì)測(cè)試方案的基本目標(biāo)是,選用盡可能少的高效測(cè)試數(shù)據(jù),做到盡可能完善的測(cè)試,從而盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。92

1.使用邊界值分析方法。既包括輸入數(shù)據(jù)的邊界情況又包括輸出數(shù)據(jù)的邊界情況。2.用等價(jià)類劃分法補(bǔ)充測(cè)試方案。3.必要時(shí)用錯(cuò)誤推斷法補(bǔ)充測(cè)試方案。4.用邏輯覆蓋法檢查現(xiàn)有測(cè)試方案,若沒(méi)有達(dá)到邏輯覆蓋標(biāo)準(zhǔn),再補(bǔ)充一些測(cè)試方案。軟件調(diào)試是查找、分析和糾正程序中錯(cuò)誤的過(guò)程。測(cè)試和調(diào)試常常交替進(jìn)行。軟件確認(rèn)是指在軟件開(kāi)發(fā)過(guò)程結(jié)束時(shí),對(duì)所開(kāi)發(fā)的軟件進(jìn)行評(píng)價(jià),以確定它是否和軟件需求相一致的過(guò)程。937.1.2結(jié)構(gòu)性維護(hù)與非結(jié)構(gòu)性維護(hù)

947.1.3維護(hù)的費(fèi)用

7.1.4維護(hù)的困難

7.1.5維護(hù)的實(shí)施

1.維護(hù)組織2.維護(hù)文檔有兩種:維護(hù)要求表,維護(hù)修改報(bào)告。3.維護(hù)的流程(1)確定類型(2)維護(hù)記錄的保存(3)維護(hù)的復(fù)審7.1.6維護(hù)的副作用編碼副作用數(shù)據(jù)副作用文檔副作用957.2軟件的可維護(hù)性軟件可維護(hù)性指軟件被理解、改正、調(diào)整和改進(jìn)的難易程度。7.2.1決定可維護(hù)性的因素是否擁有一組訓(xùn)練有素的軟件人員;系統(tǒng)結(jié)構(gòu)是否可理解、是否合理;文檔結(jié)構(gòu)是否標(biāo)準(zhǔn)化;測(cè)試用例是否合適;是否已有嵌入系統(tǒng)的調(diào)試工具;是否使用標(biāo)準(zhǔn)的程序設(shè)計(jì)語(yǔ)言;是否使用標(biāo)準(zhǔn)的操作系統(tǒng)和程序設(shè)計(jì)語(yǔ)言等。967.2.2可維護(hù)性的度量

7.2.3提高軟件的可維護(hù)性1.明確軟件工程的質(zhì)量目標(biāo)2.利用先進(jìn)的軟件技術(shù)和工具3.選擇便于維護(hù)的程序設(shè)計(jì)語(yǔ)言4.采取有效的質(zhì)量保證措施5.完善程序的文檔97

軟件維護(hù)(softwaremaintenance)就是在軟件產(chǎn)品交付之后對(duì)其進(jìn)行修改,以糾正故障,或改進(jìn)性能和其它屬性,或使產(chǎn)品適應(yīng)改變了的環(huán)境。四種軟件維護(hù):改正性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù)。軟件可維護(hù)性就是維護(hù)人員對(duì)該軟件進(jìn)行維護(hù)的難易程度,具體包括理解、改正、改動(dòng)和改進(jìn)該軟件的難易程度。提高軟件的可維護(hù)性是軟件工程各階段追求的目標(biāo)之一。在開(kāi)發(fā)時(shí)明確質(zhì)量目標(biāo)、考慮軟件的維護(hù)問(wèn)題是必須的、重要的。在軟件開(kāi)發(fā)階段提供完整、一致的文檔,采用先進(jìn)的軟件開(kāi)發(fā)方法和軟件開(kāi)發(fā)工具是提高軟件可維護(hù)性的關(guān)鍵。98面向?qū)ο蠓椒ê?jiǎn)稱為OO(ObjectedOriented)方法面向?qū)ο蠓治觯∣bjectOrientedAnalysis,簡(jiǎn)稱OOA)面向?qū)ο笤O(shè)計(jì)(ObjectOrientedDesign,簡(jiǎn)稱OOD)統(tǒng)一建模語(yǔ)言UML(UnifiedModelingLanguage)是一種直觀的、通用的、可視化建模語(yǔ)言。本章主要內(nèi)容:面向?qū)ο蠓椒ǜ攀?/p>

UML概述

UML圖本章重點(diǎn):面向?qū)ο蠓椒▽W(xué)的主要概念

UML圖998.1面向?qū)ο蠓椒ǜ攀?/p>

對(duì)象(Object):面向?qū)ο蠓椒ò芽陀^世界中的實(shí)體抽象為問(wèn)題域中的對(duì)象。類(Class):類是對(duì)具有相同數(shù)據(jù)和相同操作的一組相似對(duì)象。繼承(Inheritance):在層次結(jié)構(gòu)中,下層的派生類具有和上層的基類相同的特性(包括數(shù)據(jù)和方法),這種現(xiàn)象稱為繼承。消息傳遞:對(duì)象彼此之間僅能通過(guò)傳遞消息相互聯(lián)系。封裝性:對(duì)象的信息都被封裝在該對(duì)象類的定義中,必須發(fā)消息請(qǐng)求它執(zhí)行其某個(gè)操作,處理它的數(shù)據(jù),不能從外界直接對(duì)它的數(shù)據(jù)進(jìn)行操作。OO=Objects+Classes+Inheritance+CommunicationwithMessages面向?qū)ο?對(duì)象+類+繼承+消息傳遞1008.1.1面向?qū)ο蠓椒▽W(xué)的主要優(yōu)點(diǎn)

1.與人類習(xí)慣的思維方法一致2.穩(wěn)定性好3.可重用性好4.較易開(kāi)發(fā)大型軟件產(chǎn)品5.可維護(hù)性好1018.1.2面向?qū)ο蟮母拍?/p>

1.對(duì)象(object)(1)對(duì)象的定義:在應(yīng)用領(lǐng)域中有意義的、與所要解決的問(wèn)題有關(guān)系的任何事物都可作為對(duì)象。

(2)對(duì)象的特點(diǎn)2.類(Class):類是具有相同屬性和相同方法的一組對(duì)象的集合。3.實(shí)例(Instance):一個(gè)對(duì)象是類的一個(gè)實(shí)例。4.屬性(Attribute):是類中所定義的數(shù)據(jù)。5.消息(Message):消息就是向?qū)ο蟀l(fā)出的服務(wù)請(qǐng)求。6.方法(Method):方法是對(duì)象所能執(zhí)行的操作,是類中所定義的服務(wù)。7.封裝(Encapsulation)8.繼承(Inheritance)

單繼承和多重繼承。9.多態(tài)性(Polymorphism)10.重載(Overloading)1028.2UML概述

8.2.1UML的發(fā)展統(tǒng)一建模語(yǔ)言UML(UnifiedModelingLanguage)模型由一組圖形符號(hào)和組織這些符號(hào)的規(guī)則組成,模型的描述應(yīng)當(dāng)無(wú)歧義。8.2.2UML設(shè)計(jì)目標(biāo)和內(nèi)容UML是一種描述、構(gòu)造、可視化和文檔化的軟件建模語(yǔ)言。UML是面向?qū)ο蠹夹g(shù)軟件分析與設(shè)計(jì)中的標(biāo)準(zhǔn)建模語(yǔ)言統(tǒng)一了面向?qū)ο蠼5幕靖拍睢⑿g(shù)語(yǔ)及其圖形符號(hào),建立了便于交流的通用語(yǔ)言。1.UML的設(shè)計(jì)目標(biāo)2.UML的內(nèi)容包括UML語(yǔ)義、UML表示法和幾種模型。UML表示法由UML圖、視圖、模型元素、通用機(jī)制和擴(kuò)展機(jī)制組成。103UML表示法:

由UML圖、視圖、模型元素、通用機(jī)制和擴(kuò)展機(jī)制組成。

(1)圖(diagram)5類9種圖。

1)用例圖

2)靜態(tài)圖:包括類圖及包、對(duì)象圖。

3)行為圖:包括狀態(tài)圖和活動(dòng)圖

4)交互圖:包括順序圖和合作圖

5)實(shí)現(xiàn)圖:包括構(gòu)件圖和配置圖

(2)視圖(view)(3)模型元素(modelelement)(4)通用機(jī)制:(5)擴(kuò)展機(jī)制:標(biāo)簽、約束、版型UML模型:用例模型靜態(tài)模型動(dòng)態(tài)模型1048.3UML圖以下幾種符號(hào)在各種UML圖中可能都要用。注釋(a)消息(b)105

8.3.1用例圖

用例圖從用戶的角度描述系統(tǒng)功能,并指出各功能的操作者。

(1)用例

(2)執(zhí)行者:執(zhí)行者也稱為角色,用一個(gè)小人圖形表示。

(3)通信聯(lián)系

(4)腳本

106【例8.1】飲用水自動(dòng)售水系統(tǒng)如果投入1元硬幣,則自動(dòng)放水5立升;投入5角硬幣,放水2.5立升;如果選擇1元,投入2個(gè)硬幣,也可放水5立升。如果飲用水來(lái)不及生成,會(huì)把硬幣落下來(lái)并亮紅燈。硬幣由收銀員定時(shí)回收。1078.3.2類圖和包

1.類圖的符號(hào)屬性的語(yǔ)法格式為:可見(jiàn)性屬性名:類型名=初值{性質(zhì)串}操作的語(yǔ)法規(guī)則為:可見(jiàn)性操作名(參數(shù)表):返回值類型{性質(zhì)串}1082.類的關(guān)聯(lián)關(guān)系

類的關(guān)聯(lián)關(guān)系表示類與類之間存在某種聯(lián)系。

普通關(guān)聯(lián)限定關(guān)聯(lián)關(guān)聯(lián)類共享聚集復(fù)合聚集1093.類的一般-特殊關(guān)系4.類的依賴關(guān)系.1105.類的細(xì)化關(guān)系:

用于表示類的模型的相互關(guān)系。

類圖可分為三個(gè)層次概念層類圖說(shuō)明層類圖實(shí)現(xiàn)層類圖1116.包重用等價(jià)原則共同閉包原則共同重用原則非循環(huán)依賴原則8.3.3對(duì)象圖對(duì)象有三種表示方式:對(duì)象名:類名:類名對(duì)象名1128.3.4狀態(tài)圖

【例8.2】狀態(tài)機(jī)舉例1138.3.5順序圖

順序圖有兩個(gè)方向:

【例8.3】用順序圖描述打電話的操作過(guò)程。

1148.3.6活動(dòng)圖

活動(dòng)圖(activitydiagram)是狀態(tài)圖的一種特殊情況。

【例8.4】用活動(dòng)圖描述打電話過(guò)程。

115.3.7協(xié)作圖1168.3.8構(gòu)件圖1178.3.9部署圖

含有以下要素:結(jié)點(diǎn)及其連接,構(gòu)件及其接口,對(duì)象。

【例8.5】用部署圖描述使用金龍卡的飲食銷售系統(tǒng)。1189.1面向?qū)ο蠓治?.1.1面向?qū)ο蠓治鲞^(guò)程1.分析對(duì)象的屬性、服務(wù)及消息的傳遞。2.分析對(duì)象在系統(tǒng)中的不同狀態(tài)及狀態(tài)的轉(zhuǎn)換。建立三種模型:描述系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的對(duì)象模型。描述系統(tǒng)控制結(jié)構(gòu)的動(dòng)態(tài)模型。描述系統(tǒng)功能的功能模型。9.1.2面向?qū)ο蠓治鲈瓌t1.包含原則2.排斥原則1199.2建立對(duì)象模型

9.2.1確定對(duì)象和類1.對(duì)象2.類類是具有相同屬性和服務(wù)的一組對(duì)象的集合。對(duì)象有三種表示方式:對(duì)象名:類名:類名對(duì)象名1209.2.2確定類的相互關(guān)系1.類的一般-特珠關(guān)系1212.聚集關(guān)系

“整體—部分”關(guān)系1223.關(guān)聯(lián)關(guān)系階鏈屬性限定123【例9.1】教師指導(dǎo)學(xué)生畢業(yè)設(shè)計(jì),多對(duì)多關(guān)聯(lián)的分解。1244.主動(dòng)對(duì)象

一組屬性和一組服務(wù)的封裝體,其中至少有一個(gè)服務(wù)不需要接收消息就能主動(dòng)執(zhí)行(稱為主動(dòng)服務(wù))。125

9.2.3劃分主題

【例9.2】商品銷售管理系統(tǒng)主題圖1269.3建立動(dòng)態(tài)模型

9.3.1編寫(xiě)腳本

【例9.3】打電話、通話過(guò)程的腳本打電話、通話過(guò)程的一系列事件列出如下:打電話者拿起電話受話器電話撥號(hào)音開(kāi)始打電話者撥數(shù)字(8)電話撥號(hào)音結(jié)束打電話者撥數(shù)字(2).......打電話者撥數(shù)字(3)如果電話號(hào)碼撥錯(cuò),交換機(jī)提示出錯(cuò)信息;如果號(hào)碼正確,且對(duì)方空閑,則接電話者的電話開(kāi)始振鈴鈴聲在打電話者的電話上傳出如果在30秒鐘內(nèi),接電話者拿起話筒接電話者的電話停止振鈴打電話者的電話停止振鈴?fù)娫?........接電話者掛斷電話電話切斷打電話者掛斷電話如果撥號(hào)正確,對(duì)方忙,打電話者的電話上傳出忙音如果接電話者在30秒鐘內(nèi),不接聽(tīng)電話,雙方電話停止振鈴1279.3.2設(shè)計(jì)用戶界面

9.3.3畫(huà)UML順序圖或活動(dòng)圖

【例9.4】畫(huà)出招聘考試管理系統(tǒng)的順序圖

某市人事局舉行統(tǒng)一招聘考試。首先,各招聘單位向人事局登記本單位各專業(yè)的招聘人數(shù),由人事局向社會(huì)公布招聘情況;考生報(bào)名、填志愿;人事局組織安排考試;錄入考試成績(jī);向考生和招聘單位公布成績(jī);招聘單位進(jìn)行錄用;發(fā)錄用通知書(shū)。這里,共有三個(gè)對(duì)象類:人事局、考生和招聘單位。128【例9.4】畫(huà)出招聘考試管理系統(tǒng)的順序圖1299.3.4畫(huà)狀態(tài)轉(zhuǎn)換圖

【例9.5】分別畫(huà)出旅館管理系統(tǒng)中旅客和床位的狀態(tài)轉(zhuǎn)換圖。1309.4建立功能模型

確定輸入、輸出值數(shù)據(jù)流圖中的輸入、輸出值是系統(tǒng)與外部之間進(jìn)行交互的事件的參數(shù)。畫(huà)數(shù)據(jù)流圖定義服務(wù)1319.5面向?qū)ο笤O(shè)計(jì)9.5.1系統(tǒng)設(shè)計(jì)1.將系統(tǒng)分解為子系統(tǒng)2.設(shè)計(jì)問(wèn)題域子系統(tǒng)3.設(shè)計(jì)人-機(jī)交互子系統(tǒng)4.設(shè)計(jì)任務(wù)管理子系統(tǒng)5.設(shè)計(jì)數(shù)據(jù)管理子系統(tǒng)9.5.2對(duì)象設(shè)計(jì)1.對(duì)象描述2.設(shè)計(jì)類中的服務(wù)3.設(shè)計(jì)類的關(guān)聯(lián)4.鏈屬性的實(shí)現(xiàn)5.設(shè)計(jì)的優(yōu)化1329.5.3面向?qū)ο笤O(shè)計(jì)的準(zhǔn)則1.模塊化2.抽象3.信息隱藏4.低耦合(弱耦合)5.高內(nèi)聚(強(qiáng)內(nèi)聚)6.重用性9.5.4面向?qū)ο笤O(shè)計(jì)的啟發(fā)規(guī)則1.設(shè)計(jì)結(jié)果應(yīng)該清晰易懂2.一般—特殊結(jié)構(gòu)的深度應(yīng)適當(dāng)3.設(shè)計(jì)簡(jiǎn)單的類4.使用簡(jiǎn)單的協(xié)議5.使用簡(jiǎn)單的服務(wù)6.把設(shè)計(jì)變動(dòng)減到最小1339.6UML的應(yīng)用

9.6.1UML模型1.用例模型2.靜態(tài)模型3.動(dòng)態(tài)模型4.實(shí)現(xiàn)模型1349.6.2UML視圖視圖域視圖圖主要概念結(jié)構(gòu)分類靜態(tài)視圖類圖類、關(guān)聯(lián)、泛化、依賴關(guān)系、實(shí)現(xiàn)、接口用例視圖用例圖用例、執(zhí)行者、關(guān)聯(lián)、擴(kuò)展、包含、用例繼承實(shí)現(xiàn)視圖構(gòu)件圖構(gòu)件、接口、依賴關(guān)系、實(shí)現(xiàn)動(dòng)態(tài)行為部署視圖部署圖結(jié)點(diǎn)、構(gòu)件、依賴關(guān)系、位置。狀態(tài)視圖狀態(tài)圖狀態(tài)、事件、轉(zhuǎn)換、動(dòng)作活動(dòng)視圖活動(dòng)圖狀態(tài)、活動(dòng)、轉(zhuǎn)換、分叉、連接交互視圖順序圖交互、對(duì)象、消息、激活協(xié)作圖協(xié)作、交互、角色、消息模型管理模型管理視圖類圖包、子系統(tǒng)、模型??蓴U(kuò)展性所有所有約束、版型、標(biāo)簽值1359.6.3UML使用準(zhǔn)則

選擇使用合適的UML圖只對(duì)關(guān)鍵事物建立模型分層次地畫(huà)模型圖模型應(yīng)具有協(xié)調(diào)性模型和模型的元素大小適中1369.6.4UML的擴(kuò)展機(jī)制1.標(biāo)簽值2.約束3.版型9.6.5UML的應(yīng)用領(lǐng)域UML的目標(biāo)是,用面向?qū)ο蟮膱D形方式來(lái)描述任何系統(tǒng)。UML適用于系統(tǒng)開(kāi)發(fā)的全過(guò)程,應(yīng)用于需求分析、設(shè)計(jì)、編碼和測(cè)試的所有階段。1379.7面向?qū)ο笙到y(tǒng)的實(shí)現(xiàn)9.7.1選擇程序設(shè)計(jì)語(yǔ)言1.選擇編程語(yǔ)言的關(guān)鍵因素2.面向?qū)ο笳Z(yǔ)言的技術(shù)特點(diǎn)3.選擇面向?qū)ο笳Z(yǔ)言的實(shí)際因素9.7.2面向?qū)ο蟪绦蛟O(shè)計(jì)1.提高軟件的可重用性2.可擴(kuò)充性3.健壯性1389.7.3面向?qū)ο蟮臏y(cè)試

1.

面向?qū)ο蟮臏y(cè)試步驟分為四個(gè)層次:a)

算法層:測(cè)試類的每個(gè)服務(wù)。b)

類層:測(cè)試同一類中的所有服務(wù)與屬性之間相互作用。c)

模板層:測(cè)試協(xié)同工作的類之間的相互作用。d)

系統(tǒng)層:把子系統(tǒng)組裝成完整的面向?qū)ο筌浖到y(tǒng),同時(shí)進(jìn)行測(cè)試。2.面向?qū)ο蟮拇_認(rèn)測(cè)試主要用黑盒法,根據(jù)動(dòng)態(tài)模型和描述系統(tǒng)行為的腳本來(lái)設(shè)計(jì)測(cè)試用例。1399.8統(tǒng)一過(guò)程RUPRUP(RationalUnifiedProcess)9.8.1RUP的開(kāi)發(fā)模式1409.8.2統(tǒng)一過(guò)程的特點(diǎn)1.基于構(gòu)件2.使用UML統(tǒng)一建模語(yǔ)言3.Rational統(tǒng)一過(guò)程是用例驅(qū)動(dòng)的4.RUP采用迭代增量方式5.Rational統(tǒng)一過(guò)程采用構(gòu)架優(yōu)先方法9.8.3統(tǒng)一過(guò)程的要素.項(xiàng)目產(chǎn)品人員過(guò)程工具建議訪問(wèn)中文網(wǎng)站

和http://www.uml。14110.1軟件開(kāi)發(fā)工具

軟件開(kāi)發(fā)工具是一種計(jì)算機(jī)程序系統(tǒng),用來(lái)幫助軟件的開(kāi)發(fā)、維護(hù)和管理。1.軟件開(kāi)發(fā)工具的功能是指在軟件開(kāi)發(fā)過(guò)程中能提供哪些支持或幫助。2.軟件開(kāi)發(fā)工具的性能則是支持或幫助的程度。3.軟件開(kāi)發(fā)工具的分類4.軟件工具發(fā)展的特點(diǎn)10.2軟件工程環(huán)境1.軟件工程環(huán)境的定義軟件開(kāi)發(fā)環(huán)境是指在計(jì)算機(jī)基本軟件的基礎(chǔ)上,為了支持軟件的開(kāi)發(fā)而提供的一組工具軟件系統(tǒng)。“軟件工程環(huán)境是一組方法、過(guò)程及計(jì)算機(jī)程序的整體化構(gòu)件,它支持從需求定義、程序生成直到維護(hù)的整個(gè)軟件生存周期?!?.軟件工程環(huán)境的分類3.軟件工程環(huán)境的構(gòu)成和特性10.3CASE技術(shù)計(jì)算機(jī)輔助軟件工程(ComputerAidedSoftwareEngineering,CASE)技術(shù)是一組工具和方法的集合,可以輔助軟件生存周期各階段進(jìn)行軟件開(kāi)發(fā)活動(dòng)。1.CASE技術(shù)種類2.CASE工具的分類3.CASE的集成14211.1可重用的軟件成分軟件的重用分為三個(gè)層次知識(shí)重用方法和標(biāo)準(zhǔn)的重用軟件成分的重用:源代碼的重用設(shè)計(jì)結(jié)果重用分析結(jié)果重用14311.2軟件重用過(guò)程11.2.1軟件重用過(guò)程模型1.軟件重用的組裝模型1442.類構(gòu)件

實(shí)例重用

繼承重用

多態(tài)重用

3.軟件重用過(guò)程模型

14511.2.2開(kāi)發(fā)可重用的軟件構(gòu)件

分析過(guò)程開(kāi)發(fā)可重用的軟件構(gòu)件。傳播軟件構(gòu)件。11.2.3分類和檢索軟件構(gòu)件枚舉分類(EnumeratedClassification)刻面分類(FacetedClassification)屬性值分類(Attribute-ValueClassification)11.2.4軟件重用環(huán)境構(gòu)件庫(kù):存放軟件構(gòu)件和檢索構(gòu)件所需要的分類信息。構(gòu)件庫(kù)管理系統(tǒng):管理對(duì)構(gòu)件庫(kù)的訪問(wèn)。軟件構(gòu)件庫(kù)檢索系統(tǒng):用戶應(yīng)用系統(tǒng)通過(guò)檢索系統(tǒng),檢索構(gòu)件、重用構(gòu)件。CASE工具:幫助用戶把重用的構(gòu)件集成到新的設(shè)計(jì)中。14612.1軟件工程管理概述1.軟件產(chǎn)品的特點(diǎn)2.軟件工程管理的重要性3.軟件工程管理的內(nèi)容包括對(duì)軟件開(kāi)發(fā)成本、控制、開(kāi)發(fā)人員、組織機(jī)構(gòu)、用戶、軟件開(kāi)發(fā)文檔、軟件質(zhì)量等方面的管理。14712.2軟件規(guī)模估算12.2.1軟件開(kāi)發(fā)成本估算方法12.2.2代碼行技術(shù)和任務(wù)估算技術(shù)1.代碼行技術(shù)2.任務(wù)估算技術(shù)14812.2.3功能點(diǎn)技術(shù)

信息域特性

輸入項(xiàng)數(shù)、輸出項(xiàng)數(shù)、查詢數(shù)、主文件數(shù)和外部接口數(shù)。

估算功能點(diǎn)的步驟

估算功能點(diǎn)的步驟有三個(gè)。

計(jì)算未調(diào)整的功能點(diǎn)數(shù)UFP149計(jì)算未調(diào)整的功能點(diǎn)數(shù)UFP

UFP=a1×Inp+a2×Out+a3×Inq+a4×Maf+a5×Inf

其中,ai(1≤i≤5)是信息域特性系數(shù),值由相應(yīng)特性的復(fù)雜級(jí)別決定。

計(jì)算技術(shù)復(fù)雜因子TCF序號(hào)技術(shù)因素Fi技術(shù)因子值1數(shù)據(jù)通信F12分布式數(shù)據(jù)處理F23性能標(biāo)準(zhǔn)F34高負(fù)荷的硬件F45高處理率F56聯(lián)機(jī)數(shù)據(jù)輸入F67終端用戶效率F78聯(lián)機(jī)更新F89復(fù)雜的計(jì)算F912可重用性F1211安裝方便F1112操作方便F1213可移植性F1314可維護(hù)性F14150計(jì)算技術(shù)因子對(duì)軟件規(guī)模的綜合影響程度DI:技術(shù)復(fù)雜性因子TCP由下式計(jì)算:TCP=0.65+0.01×DI計(jì)算功能點(diǎn)數(shù)FP

FP=UFP×TCP15112.2.4COCOMO模型1.COCOMO(COnstructiveCOstMOdel)模型是Boehm提出的構(gòu)造性成本模型。三種COCOMO模型1)基本COCOMO模型2)中級(jí)COCOMO模型3)高級(jí)COCOMO模型15212.2.4COCOMO模型

2.COCOMO估算公式1)基本COCOMO模型估算公式式中,E為開(kāi)發(fā)所需的人力(人月),D為所需的開(kāi)發(fā)時(shí)間(月),KLOC為估計(jì)提交的代碼行數(shù),ab,bb,cb和db是指不同軟件開(kāi)發(fā)方式對(duì)應(yīng)的值,導(dǎo)出生產(chǎn)率(代碼行/人月)和所需人員數(shù)的計(jì)算公式:生產(chǎn)率=(KLOC)

溫馨提示

  • 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)論