




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
專(zhuān)題七:軟件工程專(zhuān)題
1、軟件工程知識(shí)
1.1概述
軟件工程是指應(yīng)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,以工程化的原則和方法來(lái)解決軟件
問(wèn)題的工程。其目的是提高軟件生產(chǎn)率、提高軟件質(zhì)量、減低軟件成本。
軟件工程是1968年在德國(guó)的NATO會(huì)議上提出的,希望用工程化的原則和方法來(lái)克服軟件危
機(jī):血軟件危機(jī)就是軟件開(kāi)發(fā)和維護(hù)過(guò)程中的各種問(wèn)題,由于軟件開(kāi)發(fā)階段缺乏好的方法的指導(dǎo)
和好的工具的輔助,而且缺少有關(guān)的文檔,使得大量的軟件難以維護(hù)。
軟件由計(jì)算機(jī)程序、數(shù)據(jù)及文檔組成,同時(shí)與硬件、數(shù)據(jù)庫(kù)人、過(guò)程等共同構(gòu)成計(jì)算機(jī)系統(tǒng)。
軟件工程包括三個(gè)要素:方法、工具和過(guò)程。
軟件生命周期是指由軟件定義、軟件開(kāi)發(fā)和軟件維護(hù)等階段組成的全過(guò)程,反映軟件生存期
內(nèi)各種工作得組織以及各個(gè)階段如何銜接。下表歸納了軟件生存周期各個(gè)階段的任務(wù)、參與人員
和產(chǎn)生文檔。
階段任務(wù)參與人員產(chǎn)生文檔
軟件定義階段一一待開(kāi)發(fā)軟件要“做什么”
系統(tǒng)分析確定待開(kāi)發(fā)軟件的總體要求用戶(hù)、項(xiàng)目負(fù)責(zé)人、系可合并項(xiàng)目計(jì)劃書(shū)
和適用范圍,以及與之有關(guān)統(tǒng)分析員中
的硬件、支撐軟件的要求
軟件項(xiàng)目計(jì)劃確定待開(kāi)發(fā)軟件的目標(biāo),對(duì)用戶(hù)、項(xiàng)目負(fù)責(zé)人、系可行性分析報(bào)告、
其進(jìn)行可行性分析,并對(duì)資統(tǒng)分析員項(xiàng)目計(jì)劃書(shū)
源分配、進(jìn)度安排等做出合
理的計(jì)劃
需求分析確定待開(kāi)發(fā)軟件的功能、性用戶(hù)、項(xiàng)目負(fù)責(zé)人、系需求規(guī)格說(shuō)明書(shū)
能、界面等要求,從而確定統(tǒng)分析員
系統(tǒng)的邏輯模型
軟件開(kāi)發(fā)階段一一待開(kāi)發(fā)軟件“怎么做”
概要設(shè)計(jì)模塊分解,確定軟件的結(jié)構(gòu),系統(tǒng)分析員、高級(jí)程序設(shè)計(jì)說(shuō)明書(shū)、數(shù)據(jù)
軟模塊的功能和模塊間的接員說(shuō)明書(shū)、模塊開(kāi)發(fā)
件口,以及全局?jǐn)?shù)據(jù)結(jié)構(gòu)的設(shè)有示
設(shè)計(jì)
計(jì)詳細(xì)設(shè)計(jì)設(shè)計(jì)每個(gè)模塊的實(shí)現(xiàn)細(xì)節(jié)和高級(jí)程序員、程序員
局部數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)
編碼用某種程序語(yǔ)言為每個(gè)模塊高級(jí)程序員、程序員程序清單
編寫(xiě)程序
軟件測(cè)試發(fā)現(xiàn)軟件中的錯(cuò)誤,并加以高級(jí)程序員或系統(tǒng)分軟件測(cè)試計(jì)劃、軟
糾正析員(另一部門(mén)或單件測(cè)試用例說(shuō)明,
位)軟件測(cè)試報(bào)告
軟件維護(hù)階段一開(kāi)發(fā)后交付使用的軟件的維護(hù)
軟件維護(hù)使軟件適應(yīng)外界環(huán)境的變維護(hù)人員維護(hù)計(jì)劃、維護(hù)報(bào)
化、實(shí)現(xiàn)功能的擴(kuò)充和質(zhì)量生
的改善而修改軟件
可行性分析的任務(wù)是從技術(shù)上、經(jīng)濟(jì)上、使用上、法律上分析需解決的問(wèn)題是否存在可行的解。
運(yùn)行維護(hù)階段:改正性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)、預(yù)防性維護(hù)
主要的軟件開(kāi)發(fā)方法有以下幾種方法:
?生命周期法:每一個(gè)軟件系統(tǒng)都有一定的生命周期。軟件的生命周期是指一個(gè)軟件系
統(tǒng)從其提出、調(diào)查到分析、設(shè)計(jì)和有效使用,直至被淘汰或取代的整個(gè)期間。軟件生
命周期法就是按軟件生命周期的各個(gè)階段劃分任務(wù),按一定的規(guī)則和步驟,有效地進(jìn)
行軟件開(kāi)發(fā)的方法。
通常一個(gè)軟件系統(tǒng)的生命周期可分為五個(gè)階段:準(zhǔn)備階段、分析階段、設(shè)計(jì)階段、實(shí)
施階段、運(yùn)行與維護(hù)階段
?原型法:原型法是先根據(jù)用戶(hù)的最主要要求,開(kāi)發(fā)出能實(shí)現(xiàn)系統(tǒng)最基本功能的一個(gè)原
型,再根據(jù)用戶(hù)對(duì)原型使用與評(píng)價(jià)的意見(jiàn),反復(fù)修改完善原型,直到等到用戶(hù)滿(mǎn)意的
最終系統(tǒng)為止。
原型法分4個(gè)階段:確定用戶(hù)需求;設(shè)計(jì)原型;使用、評(píng)價(jià)原型;修改、完善原型。
1.2開(kāi)發(fā)過(guò)程與分析
軟件開(kāi)發(fā)模型:瀑布模型;增量模型:演化模型(快速原理);螺旋模型:統(tǒng)一過(guò)程模型
?瀑布模型(經(jīng)典生命周期)
1.線性流程
2.強(qiáng)制、系統(tǒng)、規(guī)范、可控
3.由義檔驅(qū)動(dòng)
4.階段評(píng)審
5.適用:需求明確而穩(wěn)定
□
□溝通
□策劃
□建模(分析,設(shè)計(jì))
□構(gòu)建(編碼,測(cè)試)
部署(交付,反饋)交付第"個(gè)增量
第2個(gè)增量
第1個(gè)增量交付第2個(gè)培量
交付第1個(gè)增增
項(xiàng)目時(shí)間
?快速原型(屬于一種演化模型)
1.原型:模擬某種產(chǎn)品的原始模型(“樣機(jī)”)。
2.獲得基本需求一快速分析設(shè)計(jì)一構(gòu)造原型一用戶(hù)使用并反饋一修改或重建系統(tǒng)
3.適用:需求不明確
4.幫助用戶(hù)明確需求
5.幫助開(kāi)發(fā)人員明確算法效率、兼容性等問(wèn)題
6.原型可作為一-種技術(shù),用于其它過(guò)程模型中。
?螺旋模型
1.風(fēng)險(xiǎn)驅(qū)動(dòng)
2.整個(gè)生命周期
3.適用:大系統(tǒng)
?統(tǒng)一過(guò)程模型RUP/UP
1.適用:面向?qū)ο蟮膚eb系統(tǒng)
2.五個(gè)階段:起始、細(xì)化、構(gòu)建、轉(zhuǎn)換、生產(chǎn)。
3.RUP使用UML建模,它既是過(guò)程模型,也包含了一整套開(kāi)發(fā)工具。
4.RUP用角色表述“誰(shuí)做”,用制品表述“做什么”,用活動(dòng)表述“怎么做”,用工作流表述
“什么時(shí)候做”。
5.用例驅(qū)動(dòng),以架構(gòu)為核心,迭代且增量。
?敏捷開(kāi)發(fā)
1.輕量級(jí)、精簡(jiǎn)、快速
2.極限編程XP:小版本發(fā)布、結(jié)對(duì)編程、持續(xù)集成、原型、重構(gòu)、測(cè)試驅(qū)動(dòng)
需求分析是軟件生存周期中相當(dāng)重要的一個(gè)階段。需求分析主要是確定待開(kāi)發(fā)軟件的功能、
性能、數(shù)據(jù)、界面等要求。具體有以下幾點(diǎn):
>確定軟件系統(tǒng)的綜合要求
>分析軟件系統(tǒng)的數(shù)據(jù)要求
>導(dǎo)出系統(tǒng)的邏輯模型
>修正項(xiàng)目開(kāi)發(fā)計(jì)劃
>如有必要,可開(kāi)發(fā)一個(gè)原型系統(tǒng)
需求分析
需求分析的基本原則是能夠表達(dá)和理解問(wèn)題的信息域和功能域;以層次化的方式進(jìn)行分解和
不斷細(xì)化:要給出系統(tǒng)的邏輯視圖和物理視圖。
軟件需求的方法:
?功能層次模型:一般來(lái)講就是系統(tǒng)的功能圖,模塊分布圖等描述整個(gè)系統(tǒng)的功能的分布和
功能的層次結(jié)構(gòu);
?數(shù)據(jù)流模型:就是以數(shù)據(jù)流為著眼點(diǎn)的分析方法得到的模型,主要通過(guò)數(shù)據(jù)在整個(gè)系統(tǒng)的
流動(dòng)情況來(lái)確定系統(tǒng)的主要功能主線和流程;
?控制流模型:通過(guò)/解和界定系統(tǒng)中控制線,通過(guò)控制流的走向和控制的對(duì)象來(lái)確定系統(tǒng)
的功能分布和控制與被控制的關(guān)系;
結(jié)構(gòu)化分析(SA)方法
是-一種面向數(shù)據(jù)流的需求分析方法,它適用于分析大型數(shù)據(jù)處理系統(tǒng)。結(jié)構(gòu)化分析方法的基
本思想是自頂向下逐層分解,這樣做可以把一個(gè)大問(wèn)題分解成若干個(gè)小問(wèn)題,經(jīng)過(guò)多次逐層分解,
每個(gè)最底層的問(wèn)題都是足夠簡(jiǎn)單、容易解決的,這個(gè)過(guò)程就是分解的過(guò)程。
SA的模型
1.數(shù)據(jù)字典是核心。
2.實(shí)體關(guān)系圖(ER圖):用于數(shù)據(jù)建模。
3.數(shù)據(jù)流圖(DFD圖):用于功能建模。
4.狀態(tài)遷移圖(STD圖):用于行為建模。
結(jié)構(gòu)化方法的分析結(jié)果由數(shù)據(jù)流圖DFD、數(shù)據(jù)詞典和加工邏輯說(shuō)明幾個(gè)部分組成。
數(shù)據(jù)流圖DFD
基本成分有數(shù)據(jù)流(dataflow)加工(process)、文件(file)和源/宿(source/sink)。
■畫(huà)數(shù)據(jù)流圖的基本步驟:白外向內(nèi)、白頂向下、逐層細(xì)化、完善求精:
■數(shù)據(jù)流圖的父圖與子圖要平衡,即輸入和輸出的數(shù)據(jù)流一致:
■數(shù)據(jù)流圖中的每個(gè)加工至少有一個(gè)輸入數(shù)據(jù)流和一個(gè)輸出數(shù)據(jù)流:
■局部的數(shù)據(jù)存儲(chǔ)不畫(huà)出來(lái),只有當(dāng)局部數(shù)據(jù)存儲(chǔ)作為某些數(shù)據(jù)加工之間的數(shù)據(jù)接口才畫(huà)
出,這有利于信息隱蔽;
■畫(huà)數(shù)據(jù)流的時(shí)候不畫(huà)控制流,兩者的區(qū)別就是控制流中沒(méi)有數(shù)據(jù);
■一個(gè)加工的數(shù)據(jù)流與輸出流不應(yīng)該同名:
■允許一個(gè)加工有多條數(shù)據(jù)流流向另一個(gè)加工,也允許一個(gè)加工有兩個(gè)相同的輸出流向兩個(gè)
不同的加工:
■保持?jǐn)?shù)據(jù)守恒:一個(gè)加工的所有輸出數(shù)據(jù)必須能從該加工的所有的輸入流中獲得:
■在整套數(shù)據(jù)流圖中,每個(gè)文件都必須既有讀文件的數(shù)據(jù)流也有寫(xiě)文件的數(shù)據(jù)流;
軟件開(kāi)發(fā)過(guò)程中的軟件工程原則(8個(gè)):
>抽象;
>自頂向下、逐層細(xì)化;
>信息隱蔽和數(shù)據(jù)封裝:
>模塊化:
>局部化;
>確定性;
>一致性和標(biāo)準(zhǔn)化;
>完備性和可驗(yàn)證性;
軟件工程基本原理(7個(gè)):
■按軟件生存周期分階段指定計(jì)劃并認(rèn)真實(shí)施:
■堅(jiān)持進(jìn)行階段評(píng)審:
■堅(jiān)持嚴(yán)格的產(chǎn)品控制;
■使用現(xiàn)代程序設(shè)計(jì)技術(shù);
■明確責(zé)任,使得工作結(jié)果能夠得到清楚的審查;
■用人少而精;
■不斷改進(jìn)開(kāi)發(fā)過(guò)程:
1.3軟件設(shè)計(jì)
軟件設(shè)計(jì)原則:軟件設(shè)計(jì)的原則對(duì)提高軟件的設(shè)計(jì)質(zhì)量有很大的幫助。
?抽象
抽象是指忽視?個(gè)主題中與當(dāng)前目標(biāo)無(wú)關(guān)的那些方面,以哽更充分地注意與當(dāng)前目標(biāo)有關(guān)的方
面。過(guò)程抽象和數(shù)據(jù)抽象是常用的兩種主要抽象手段。
?模塊化
模塊化是指將一個(gè)待開(kāi)發(fā)的軟件分解成若干個(gè)小的簡(jiǎn)單的部分一一模塊,每個(gè)模塊可獨(dú)立地開(kāi)
發(fā)、測(cè)試、最后組裝成完整的軟件。這是一種復(fù)雜問(wèn)題的“分而治之”的原則。
模塊是指執(zhí)行某一特定任務(wù)的數(shù)據(jù)結(jié)構(gòu)和程序代碼。一個(gè)模塊有它的外部特征和內(nèi)部特征。
.信息隱蔽
信息隱蔽是開(kāi)發(fā)整體程序結(jié)構(gòu)時(shí)使用的法則,即將每個(gè)程序的成分隱蔽或封裝在?個(gè)單一的設(shè)計(jì)
模塊中,定義每一個(gè)模塊時(shí)盡可能少地顯露其內(nèi)部的處理。信息隱蔽原則對(duì)提高軟件的可修改性、
可測(cè)試性和可移植性都有重要的作用。
?模塊獨(dú)立
模塊獨(dú)立是指每個(gè)模塊完成一個(gè)相對(duì)獨(dú)立的子功能,并且與其他模塊之間的聯(lián)系簡(jiǎn)單。衡量模塊
獨(dú)立程度的度量標(biāo)準(zhǔn)有兩個(gè):低耦合和高內(nèi)聚。
耦合
耦合是指模塊之間聯(lián)系的緊密程度。耦合度越高則模塊的獨(dú)立性越差。
從低到高依次耦合方式。
?數(shù)據(jù)耦合:模塊A調(diào)用模塊B時(shí),通過(guò)簡(jiǎn)單的數(shù)據(jù)參數(shù)來(lái)交換信息。
?標(biāo)記耦合:參數(shù)表傳遞復(fù)雜的數(shù)據(jù)結(jié)構(gòu)信息。
?控制耦合:模塊A通過(guò)傳送開(kāi)關(guān)、標(biāo)志等控制信息、,明顯地控制模塊B的功能。
?外部耦合:一組模塊訪問(wèn)同一個(gè)全局簡(jiǎn)單變量。
?公共耦合:一組模塊訪問(wèn)同一個(gè)公共數(shù)據(jù)環(huán)境(復(fù)雜數(shù)據(jù))。
?內(nèi)容耦合:模塊A直接訪問(wèn)模塊B的內(nèi)部數(shù)據(jù):模塊A非正常入口轉(zhuǎn)到模塊B內(nèi)部:兩個(gè)模
塊有一部分程序代碼重疊;一個(gè)模塊有多個(gè)入口。
內(nèi)聚
內(nèi)聚是指模塊內(nèi)部各元素之間聯(lián)系的緊密程度,內(nèi)聚度越低模塊的獨(dú)立性越差。
從低到高依次內(nèi)聚種類(lèi)。
?偶然內(nèi)聚:指模塊內(nèi)的各處理元素之間沒(méi)有任何聯(lián)系。
?邏輯內(nèi)聚:指模塊內(nèi)執(zhí)行幾個(gè)邏輯上相似的功能,通過(guò)參數(shù)確定該模塊完成哪一個(gè)功能。
?時(shí)間內(nèi)聚:把需要同時(shí)執(zhí)行的動(dòng)作組合在一起的模塊。
?通信內(nèi)聚:指模塊內(nèi)所有處理元素都在同一個(gè)數(shù)據(jù)結(jié)構(gòu)上操作,或者各處理使用相同的輸入
數(shù)據(jù)或者產(chǎn)生相同的輸出數(shù)據(jù)。
?順序內(nèi)聚:指模塊中各個(gè)處理元素都密切相關(guān)于同一功能且必須順序執(zhí)行,前一個(gè)功能元素
的輸出就是下一個(gè)功能元素的輸入。
?功能內(nèi)聚:模塊內(nèi)所有元素共同完成一個(gè)功能,缺一不可。
?重構(gòu)
許多敏捷方法都建議采用重構(gòu),即不改變代碼的外部行為,只修改其內(nèi)部結(jié)構(gòu),達(dá)到改進(jìn)。
模塊分解原則:
>滿(mǎn)足信息隱蔽;
>盡量?jī)?nèi)聚度高,模塊間偶合度低;
>模塊大小在(50T00語(yǔ)句):
>模塊調(diào)用深度不能過(guò)大;
>模塊的扇入(直接調(diào)用該模塊)應(yīng)盡量大,扇出(直接調(diào)用下級(jí)模塊數(shù))不宜過(guò)大:
>設(shè)計(jì)單人口和單出口的模塊:
>模塊的作用域應(yīng)在控制域之內(nèi):
作用域:受模塊內(nèi)一個(gè)判定影響的所有的模塊的集合;
控制域:該模塊本身和被該模塊直接或間接調(diào)用的所有的模塊的集合;
>模塊的功能應(yīng)是可以預(yù)測(cè)的,相同輸入得到相同輸出
結(jié)構(gòu)化設(shè)計(jì)方法
結(jié)構(gòu)化設(shè)計(jì)(SD)方法是一種面向數(shù)據(jù)流的設(shè)計(jì)方法,它可以與SA方法銜接。
結(jié)構(gòu)化設(shè)計(jì)采用結(jié)構(gòu)圖(SC)來(lái)描述程序的結(jié)構(gòu)?;境煞钟心K、調(diào)用和輸入/輸出數(shù)據(jù)。
結(jié)構(gòu)圖:
寬度
在需求分析階段用SA方法產(chǎn)生了數(shù)據(jù)流圖(DFD)。面向數(shù)據(jù)流的設(shè)計(jì)可以方便的將DFD
轉(zhuǎn)換成程序結(jié)構(gòu)圖。DFD從系統(tǒng)的輸入數(shù)據(jù)流到系統(tǒng)的輸出數(shù)據(jù)流的一連串連續(xù)變換形成一條信
息流。DH)的信息流大體可分為兩種類(lèi)型:變換流和事務(wù)流。與之對(duì)應(yīng)的也存在兩種分析,變換
分析和事務(wù)分析。變換分析是從變換流型的DFD導(dǎo)出程序結(jié)構(gòu)圖,而事務(wù)分析則是從事務(wù)流行型
的DFD導(dǎo)出程序結(jié)構(gòu)圖。
SD方法的具體設(shè)計(jì)步驟為:
>復(fù)查并精化數(shù)據(jù)流圖
>確定DFD的信息流類(lèi)型
>根據(jù)信息流類(lèi)型分別將變換流或事務(wù)流轉(zhuǎn)換成程序結(jié)構(gòu)圖
>根據(jù)軟件設(shè)計(jì)的原則對(duì)程序結(jié)構(gòu)圖作改進(jìn)
結(jié)構(gòu)化程序設(shè)計(jì)
結(jié)構(gòu)化程序(SP)設(shè)計(jì)采用自頂向下逐步求精的設(shè)計(jì)方法和單入口單出口的控制結(jié)構(gòu)。
結(jié)構(gòu)化程序設(shè)計(jì)的描述工具主要有圖形描述工具、語(yǔ)言描述工具和表格描述工具。常用的圖形描
述工具有程序流程圖、盒圖(NS圖)利問(wèn)題分析圖(PAD)0典型的語(yǔ)言描述工具是PDL(program
designlanguage)(,典型的表格描述工具是判定表和判定樹(shù)。
Jackson方法是以數(shù)據(jù)結(jié)構(gòu)為設(shè)計(jì)基礎(chǔ),設(shè)計(jì)目標(biāo)是得出對(duì)程序處理過(guò)程的描述,其設(shè)
計(jì)過(guò)程是從描繪數(shù)據(jù)結(jié)構(gòu)的Jackson圖推導(dǎo)出描繪程序結(jié)構(gòu)的Jackson圖。這種方法最適合于詳
細(xì)設(shè)計(jì)階段使用。
Jackson方法的具體設(shè)計(jì)步驟為:
>分析并確定輸入和輸出的數(shù)據(jù)的邏輯結(jié)構(gòu),并用Jackson圖表示
>找出輸入數(shù)據(jù)結(jié)構(gòu)與輸出數(shù)據(jù)結(jié)構(gòu)間有對(duì)應(yīng)關(guān)系的數(shù)據(jù)單元
>從描述數(shù)據(jù)結(jié)構(gòu)的Jackson圖導(dǎo)出描述程序結(jié)構(gòu)的Jackson圖
L4軟件測(cè)試
對(duì)源程序最基本的質(zhì)量要求是正確性和可靠性,此外還很注重軟件的易使用性、易維護(hù)性和
易移植性。軟件測(cè)試的工作量約占軟件開(kāi)發(fā)總工作量的40*以上,其目的是盡可能多的發(fā)現(xiàn)軟件
產(chǎn)品(主要是指程序)中的錯(cuò)誤和塊陷。
測(cè)試流程
制定測(cè)試計(jì)劃--設(shè)計(jì)測(cè)試用例一-執(zhí)行測(cè)試--分析測(cè)試結(jié)果-一評(píng)估與總結(jié)
;重未評(píng)審]:董汗評(píng)畝單元測(cè)試索委測(cè)證「驗(yàn)收測(cè)試
集成測(cè)試確認(rèn)測(cè)試
測(cè)試計(jì)劃測(cè)試腳本開(kāi)發(fā)測(cè)試結(jié)果分析和報(bào)告
測(cè)試執(zhí)行
測(cè)試原則
在軟件測(cè)試工作中應(yīng)注意并遵循的一些原則:
1.測(cè)試的標(biāo)準(zhǔn)都是建立在用戶(hù)需求之上;
2.測(cè)試必須基于“質(zhì)量第一”的思想去開(kāi)展;
3.事先定義好產(chǎn)品的質(zhì)量標(biāo)準(zhǔn);
4.軟件項(xiàng)目一啟動(dòng),軟件測(cè)試也就是開(kāi)始;
5.窮舉測(cè)試是不可能的;
6.第三方進(jìn)行測(cè)試會(huì)更客觀,更有效;
7.軟件測(cè)試計(jì)劃是做好軟件測(cè)試工作的前提;
8.重視測(cè)試用例:
9.對(duì)于錯(cuò)誤較多的程序段,應(yīng)進(jìn)行更深入的測(cè)試。
軟件測(cè)試是白底向匕逐步集成的過(guò)程,低一級(jí)測(cè)試為上一級(jí)測(cè)試準(zhǔn)備條件:
測(cè)試的關(guān)鍵是測(cè)試用例的設(shè)計(jì),其方法可分為兩類(lèi):
白盒測(cè)試:
白盒測(cè)試是根據(jù)程序的內(nèi)部邏輯來(lái)設(shè)計(jì)測(cè)試用例,常用的技術(shù)是邏輯覆蓋,即考察用例測(cè)試數(shù)據(jù)
運(yùn)行被測(cè)程序時(shí)對(duì)程序邏輯的覆蓋程度。
主要的覆蓋標(biāo)準(zhǔn)有6種:
I.語(yǔ)句覆蓋
指選擇足夠的測(cè)試用例,使被測(cè)語(yǔ)句的每個(gè)語(yǔ)句至少執(zhí)行一次。
II.判定覆蓋
指選擇足夠的測(cè)試用例,使每個(gè)判定的所有可能結(jié)果至少已現(xiàn)一次。
IH.條件覆蓋
指選&足夠的測(cè)試用例,使判定中的每個(gè)條件的所有可能結(jié)果至少出現(xiàn)一次。
IV.判定/條件覆蓋
指選擇足夠的測(cè)試用例,使判定中的每個(gè)條件的所有可能結(jié)果至少出現(xiàn)一次,并且每個(gè)判定中條
件結(jié)果的所有可能組合也至少出現(xiàn)一次。
V.條件組合覆蓋
指選擇足夠的測(cè)試用例,使每個(gè)判定中條件結(jié)果的所有可能組合至少出現(xiàn)一次。
VI路徑覆蓋
指選擇足夠的測(cè)試用例,使流程圖中的每條路徑至少經(jīng)過(guò)一次。
黑盒測(cè)試:
黑盒測(cè)試時(shí)根據(jù)規(guī)格說(shuō)明所規(guī)定的功能來(lái)設(shè)計(jì)測(cè)試用例,它不考慮程序的內(nèi)部結(jié)構(gòu)和處理過(guò)程。
常用的黑盒測(cè)試技術(shù)有:
>等價(jià)類(lèi)劃分
>邊值劃分
>錯(cuò)誤猜測(cè)
軟件測(cè)試的主要步驟有單元測(cè)試、集成測(cè)試和確認(rèn)測(cè)試。
1.單元測(cè)試:
主要用來(lái)發(fā)現(xiàn)編碼和詳細(xì)設(shè)計(jì)中產(chǎn)生的錯(cuò)誤,一般在編碼階段,采用白盒測(cè)試。
2.集成測(cè)試(也稱(chēng)組裝測(cè)試):
主要用來(lái)發(fā)現(xiàn)設(shè)計(jì)階段產(chǎn)生的錯(cuò)誤,是對(duì)各模塊組裝而成的程序進(jìn)行測(cè)試,主要檢查模塊間的接
口和通信,采用黑盒測(cè)試。
集成測(cè)試按集成方式又可分成非漸增式集成和漸增式集成,而漸增式集成又可分成自頂向下集成
和自底向上集成。
3.確認(rèn)測(cè)試:
檢查軟件的功能、性能和其他特征是否與用戶(hù)需求一致,它以需求規(guī)格說(shuō)明書(shū)作測(cè)成為依據(jù)。
1.5軟件開(kāi)發(fā)工具與環(huán)境(CASE)
用來(lái)輔助軟件開(kāi)發(fā)、運(yùn)行、維護(hù)、管理和支持等過(guò)程中的活動(dòng)的軟件稱(chēng)為軟件工具,通常也
稱(chēng)為CASE(計(jì)算機(jī)輔助軟件工程)工具。
整個(gè)軟件開(kāi)發(fā)過(guò)程要使用很多開(kāi)發(fā)工具,其中包括分析工具、設(shè)計(jì)工具、編程工具、測(cè)試工
具、維護(hù)工具等等。
軟件開(kāi)瓦工具是指支持軟件產(chǎn)品開(kāi)發(fā)的軟件系統(tǒng),它由軟件工具集和環(huán)境集成機(jī)智構(gòu)成。工
具集包括支持軟件開(kāi)發(fā)相關(guān)過(guò)程、活動(dòng)、任務(wù)的軟件工具:環(huán)境集成機(jī)智為工具集成和軟件開(kāi)發(fā)、
維護(hù)和管理提供統(tǒng)一的支持。
軟件開(kāi)發(fā)環(huán)境是把一組相關(guān)的工具集成在環(huán)境中,提供數(shù)據(jù)集成、控制集成和界面集成等機(jī)制。
其中:
>數(shù)據(jù)集成機(jī)制:提供統(tǒng)?的數(shù)據(jù)模式和數(shù)據(jù)接口規(guī)范,需要相互協(xié)同的工具通過(guò)這種統(tǒng)一
的規(guī)范交換數(shù)據(jù)。數(shù)據(jù)集成可由共享文件、共享數(shù)據(jù)結(jié)構(gòu)或共享信息庫(kù)等不同的層次;
>控制集成機(jī)制:支持各工具或各開(kāi)發(fā)活動(dòng)之間的通信、切換、調(diào)度和協(xié)同工作,并且支持
軟件開(kāi)發(fā)過(guò)程的描述、執(zhí)行和轉(zhuǎn)接;通常消息傳送的方式實(shí)現(xiàn)控制的集成。
>界面集成機(jī)制使這些工具具有統(tǒng)一的界面風(fēng)格,從而為軟件開(kāi)發(fā)、維護(hù)、管理等過(guò)程的各
項(xiàng)活動(dòng)提供連續(xù)的、一致的全方位支持。
集成型軟件開(kāi)發(fā)環(huán)境由工具集和環(huán)境集成機(jī)制組成,這種環(huán)境應(yīng)該具有開(kāi)放性和可剪裁性:
環(huán)境集成機(jī)制的核心是環(huán)境數(shù)據(jù)庫(kù)。
1.6軟件維護(hù)和軟件管理
軟件維護(hù)階段是指從軟件交付使用到軟件被淘汰為止的整個(gè)時(shí)期,它是在軟件交付使月后,
為了改正軟件中隱藏的錯(cuò)誤,或者為了使軟件適應(yīng)新的環(huán)境,或者為了擴(kuò)充和完善軟件的功能或
性能而修改軟件的過(guò)程.根據(jù)引起軟件維護(hù)的原因,軟件維護(hù)通??煞殖筛恼跃S護(hù).適應(yīng)性維
護(hù)、完善性維護(hù)、預(yù)防性維護(hù)。
?改京性維護(hù):是指在使用過(guò)程中發(fā)現(xiàn)了隱蔽的錯(cuò)誤后,為了診斷和改正這些隱蔽錯(cuò)誤而修
改軟件的活動(dòng)。
?適應(yīng)性維護(hù):是指為了適用變化了的環(huán)境而修改軟件的活動(dòng)。
?完善性維護(hù):是指為了擴(kuò)充或完善原有軟件的功能或性能而修改軟件的活動(dòng)。
?預(yù)防性維護(hù):是指為了提高軟件的可維護(hù)性和可靠性、為未來(lái)的進(jìn)一步改進(jìn)打下基礎(chǔ)而修
改軟件的活動(dòng)。
軟件項(xiàng)目的管理工作可以分位四個(gè)方面:軟件項(xiàng)目的計(jì)劃、軟件項(xiàng)目的組織、軟件項(xiàng)目的
領(lǐng)導(dǎo)和軟件項(xiàng)目的控制.
1軟件項(xiàng)目的計(jì)劃
軟件開(kāi)發(fā)項(xiàng)目的計(jì)劃包括定義項(xiàng)"的目標(biāo),以及達(dá)到E標(biāo)的力法。他涉及到項(xiàng)目實(shí)施的各個(gè)
環(huán)節(jié),帶有全局的性質(zhì),是戰(zhàn)略性的。計(jì)劃應(yīng)力求完備,要考慮到一些未知因素和不確定因素,
考慮到可能的修改。計(jì)劃應(yīng)力求準(zhǔn)確,盡可能提高所依據(jù)的數(shù)據(jù)的可靠程度。主要工作集中在軟
件項(xiàng)目的估算、軟件開(kāi)發(fā)成本的估算和軟件項(xiàng)目進(jìn)度安排。軟件項(xiàng)目計(jì)劃的目標(biāo)是提供一個(gè)能使
項(xiàng)目管理人員對(duì)資源、成本和進(jìn)度做出合理估算的框架。這些估算應(yīng)在軟件項(xiàng)目開(kāi)始時(shí)的一段有
限時(shí)間內(nèi)作出,并隨著項(xiàng)目的進(jìn)展進(jìn)行更新。
2軟件項(xiàng)目的估算
軟件項(xiàng)目管理過(guò)程開(kāi)始于項(xiàng)目的計(jì)劃,在做項(xiàng)目計(jì)劃時(shí),第一項(xiàng)活動(dòng)是估算。現(xiàn)在已經(jīng)使用
的使用技術(shù)是時(shí)間和工作量的估算。因?yàn)楣浪闶瞧渌?xiàng)目計(jì)劃活動(dòng)的基石,而且項(xiàng)目計(jì)劃又未軟
件工程過(guò)程提供了工作方向,所以我們不能沒(méi)有計(jì)劃就著手開(kāi)發(fā),否則就會(huì)陷入肓目性。
估算本身帶有風(fēng)險(xiǎn),估算資源、成本和項(xiàng)目進(jìn)度時(shí)需要經(jīng)驗(yàn)、有用的歷史信息、足夠的定量
數(shù)據(jù)和作定量度量的勇氣。估算的精確程度受到多方面的影響。首先,項(xiàng)目的復(fù)雜性對(duì)于增加軟
件計(jì)劃的不確定性影響很大,復(fù)雜性越高,估算的風(fēng)險(xiǎn)就越高。復(fù)雜性是相對(duì)度量的,他與項(xiàng)目
參加人員的經(jīng)驗(yàn)有關(guān),比如如果讓搞MIS的項(xiàng)目組去搞操作系統(tǒng)設(shè)計(jì)顯然增加了復(fù)雜性。其次,
項(xiàng)目的規(guī)模對(duì)于估算的精確性和功效的影響也比較大,因?yàn)殡S著軟件規(guī)模的擴(kuò)大,軟件相同元素
之間的相互依賴(lài)、相互影響也迅速增加,因而估算時(shí)進(jìn)行向題分解也會(huì)變得更加困難。還有項(xiàng)目
的結(jié)構(gòu)化程度也影響項(xiàng)目估算的風(fēng)險(xiǎn),這里的結(jié)構(gòu)性是指功能分解的簡(jiǎn)便性和處理信息的層次
性,結(jié)構(gòu)化程度提高,進(jìn)行精確估算的能力就提高,相應(yīng)風(fēng)險(xiǎn)將減少。此外,歷史信息的有效性
也影響估算的風(fēng)險(xiǎn),在對(duì)過(guò)去的項(xiàng)目進(jìn)行這綜合的軟件度量之后,就可以借用來(lái)比較準(zhǔn)確地進(jìn)行
估算。影響估算的因素遠(yuǎn)不止這些,比如用戶(hù)需求的頻繁變更給估算帶來(lái)非常大的影響。
估算的依據(jù)是軟件的范圍,包括功能,性能、限制、接口和可靠性。在估算開(kāi)始之前,應(yīng)對(duì)
軟件的功能進(jìn)行評(píng)價(jià),并對(duì)其進(jìn)行適當(dāng)?shù)募?xì)化以便提供更詳細(xì)的細(xì)節(jié)。由于成本和進(jìn)度的估算都
與功能有關(guān),因此常常采用功能分解的辦法。性能的考慮主要包括處理和響應(yīng)時(shí)間的需求。約束
條件則標(biāo)識(shí)外部硬件、可用存儲(chǔ)和其他現(xiàn)有系統(tǒng)對(duì)軟件的限制。
另外軟件項(xiàng)目計(jì)劃還要完成資源估算,包括人力資源、硬件資源和軟件資源。在考慮各種軟
件開(kāi)發(fā)資源時(shí)最重要的是人,必須考慮人員的技術(shù)水平、專(zhuān)業(yè)、人數(shù)以及在開(kāi)發(fā)過(guò)程各階段對(duì)各
種人員的需要。硬件資源作為一種工具投入。軟件資源包括各種幫助開(kāi)發(fā)的軟件工具,比如編程
工具、管理工具、測(cè)試工具,還有操作系統(tǒng)和數(shù)據(jù)庫(kù)等。
工作兩估算是最普遍使用的技術(shù)。經(jīng)過(guò)功能分解之后,可以估計(jì)出每?個(gè)項(xiàng)H任務(wù)的分解都
需要花費(fèi)若干人年,總計(jì)之后就知道軟件項(xiàng)目總體工作量。下面就是一個(gè)示意性工作量估算表。
斐格1某軟件系統(tǒng)工作量估算表(單位:人電
任務(wù)求分析]設(shè)印一編碼|測(cè)試小iF
用戶(hù)定義2510.58.5
系統(tǒng)定義2510.58.5
廣告預(yù)定41020.516.5
劃版520100.535.5
制作和組版353112
總計(jì)164517381
軟件開(kāi)發(fā)成本的估算
軟件開(kāi)發(fā)成本主要是指軟件開(kāi)發(fā)過(guò)程所花費(fèi)的工作量及其相應(yīng)的代價(jià)。它不同于其他物理產(chǎn)
品的成本,它主要包括人的勞動(dòng)的消耗,人的勞動(dòng)的消耗所需的代價(jià)就是軟件產(chǎn)品的開(kāi)發(fā)成本。
開(kāi)發(fā)成本的估算方法有很多種,象簡(jiǎn)單的代碼行技術(shù),任務(wù)分解技術(shù),自動(dòng)估計(jì)成本技術(shù),
專(zhuān)家判定技術(shù),還有參數(shù)方程法,標(biāo)準(zhǔn)值法,以及COCOMO模型法。其中COCOMO(Constructive
CostModel)模型法是一種精確、易于使用的成本估算方法,該模型按其詳細(xì)程度分為三級(jí):基
本C0C0M0模型、中間COCOMO模型和詳細(xì)COCO.MO模型
軟件項(xiàng)目進(jìn)度安排
軟件項(xiàng)目的進(jìn)度安排主要是考慮軟件交付用戶(hù)使用的這一段開(kāi)發(fā)時(shí)間的安排。進(jìn)度安排的準(zhǔn)
確程度可能比成本估計(jì)的準(zhǔn)確程度更重要。軟件產(chǎn)品可以靠重新定價(jià)或者靠大量的銷(xiāo)售來(lái)彌補(bǔ)成
本的增加,但進(jìn)度安排的落空會(huì)導(dǎo)致市場(chǎng)機(jī)會(huì)的喪失或者用戶(hù)不滿(mǎn)意,而且也會(huì)導(dǎo)致成本的增加。
因此在考慮進(jìn)度安排時(shí)要把人員的工作量與花費(fèi)的時(shí)間聯(lián)系起來(lái),合理分配工作量,利用進(jìn)度安
排的有效分析方法嚴(yán)密監(jiān)視軟件開(kāi)發(fā)的進(jìn)展情況,以使得軟件開(kāi)發(fā)的進(jìn)度不致被拖延。
在進(jìn)行進(jìn)度安排時(shí)要考慮的一個(gè)主要問(wèn)題是任務(wù)的并行性問(wèn)題。當(dāng)參加項(xiàng)目的人數(shù)不止一人
是軟件開(kāi)發(fā)工作就會(huì)出現(xiàn)并行情況。因?yàn)椴⑿腥蝿?wù)是同時(shí)發(fā)生的所以進(jìn)度計(jì)劃表必須決定任務(wù)之
間的從屬關(guān)系,確定各個(gè)任務(wù)的先后次序和銜接,確定各個(gè)任務(wù)完成的持續(xù)時(shí)間。另外還應(yīng)注意
關(guān)鍵路徑的任務(wù),這樣可以確定在進(jìn)度安排中應(yīng)保證的重點(diǎn)。常用的進(jìn)度安排方法有兩種,即甘
特圖(GanttChart)法和工程網(wǎng)絡(luò)法。
3.軟件項(xiàng)目的組織
參加軟件開(kāi)發(fā)的人員如何組織起來(lái),使他們發(fā)揮最大的工作效率,對(duì)成功地完成軟件項(xiàng)目極
為重要。
組織結(jié)構(gòu)
開(kāi)發(fā)組織采用什么形式由軟件項(xiàng)目的特點(diǎn)決定,I可時(shí)也與參加人員的素質(zhì)有關(guān)。通常有三種
組織結(jié)構(gòu)模式:
1.按課題組劃分的模式:把開(kāi)發(fā)人員按課題組成小組,小組成員自始至終承擔(dān)課題的各項(xiàng)
任務(wù)。該模式適用于規(guī)模不大的項(xiàng)目,并且要求小組成員在各方面有技術(shù)專(zhuān)長(zhǎng)。
2.按職能劃分的模式:把開(kāi)發(fā)項(xiàng)目的軟件人員按任務(wù)的工作階段劃分為若干工作小組。要
開(kāi)發(fā)的軟件在每個(gè)專(zhuān)業(yè)小組完成階段加工后沿工序流水線向下傳遞。這種流水作業(yè)的方式使用于
多項(xiàng)目并行的情況。
3.矩陣形模型:這種模式是以上兩種模式的復(fù)合。一方面按工作性質(zhì)成立一些專(zhuān)門(mén)小組,
另一方面每一個(gè)項(xiàng)目都有它的經(jīng)理人員負(fù)責(zé)。每一個(gè)軟件開(kāi)發(fā)人員屬于某一個(gè)專(zhuān)門(mén)小組,有參加
某一個(gè)項(xiàng)目的工作。該模式的優(yōu)點(diǎn)有一方面參加專(zhuān)門(mén)組的成員可以在組內(nèi)交流在各個(gè)項(xiàng)目中取得
的經(jīng)驗(yàn),這更有利于發(fā)揮專(zhuān)業(yè)人員的作用;另一方面,各個(gè)項(xiàng)目有專(zhuān)門(mén)的人員負(fù)責(zé),有利于軟件
項(xiàng)1=1的完成。這種模式比較適合于規(guī)模比較大的項(xiàng)目。
組織結(jié)構(gòu)的最后一層是程序設(shè)計(jì)小組的組織形式。通常認(rèn)為程序設(shè)計(jì)工作是按獨(dú)立的方式進(jìn)
行的,程序人員獨(dú)立地完成任務(wù)。但這并不意味著相互之間沒(méi)有聯(lián)系。一般在人數(shù)比較少時(shí)組員
之間的聯(lián)系比較簡(jiǎn)單,但隨著人數(shù)的增加,相互之間的聯(lián)系變得負(fù)責(zé)起來(lái)。小組內(nèi)部人員的組織
形式對(duì)對(duì)生產(chǎn)率有著十分重要的影響。
常見(jiàn)的小組組織形式有三種,這三種形式可以靈活使月。
1.主程序員制小組:相當(dāng)于組長(zhǎng)負(fù)責(zé)制,小組的核心由一位主程序員,另外配備兩到三位
技術(shù)員、一位后援工程師組成。這種組織結(jié)構(gòu)突出主程序員的領(lǐng)導(dǎo),強(qiáng)調(diào)主程序員與其他技術(shù)人
員的聯(lián)系。
2.民主制小組:在民主制小組中,遇到問(wèn)題可以在組員之間平等地交換換意見(jiàn),工作組目標(biāo)的制
定以及決定的作出都由全體人員參加。這種組織形式強(qiáng)調(diào)發(fā)揮每個(gè)成員的積極性,并要求每個(gè)成員發(fā)
揮主動(dòng)精神和協(xié)作精神。
3.層次式小組:在層次式小組中,組內(nèi)人員分位三級(jí):組長(zhǎng)(項(xiàng)目負(fù)責(zé)人)一人負(fù)責(zé)全組
工作,他直接領(lǐng)導(dǎo)兩到三名高級(jí)程序員,每位高級(jí)程序員通過(guò)基層小組,管理若干位程序員。這
種結(jié)構(gòu)比較適合于項(xiàng)目本身就是層次結(jié)構(gòu)的課題。
人員配備
合理地配備人員是成功地完成軟件項(xiàng)目的切實(shí)保證。所謂合理地配備人員應(yīng)包括按不同階段
適時(shí)運(yùn)用人員,恰當(dāng)掌握用人標(biāo)準(zhǔn)。一般來(lái)說(shuō),軟件項(xiàng)目不同階段不同層次技術(shù)人員的參與情況
是不一樣的。下圖是典型的軟件開(kāi)發(fā)人員參與情況曲線。
高級(jí)技術(shù)人員
轆人員
初級(jí)技術(shù)人員
項(xiàng)目階段
圖1軟件項(xiàng)目人員參與情況圖
在人力配備問(wèn)題匕由子配置不當(dāng),很容易造成人力資源的浪費(fèi),并延誤工期。特別是采用
恒定人員配備方案時(shí)在項(xiàng)目的開(kāi)始和最后都會(huì)出現(xiàn)人力過(guò)剩,而在中期又會(huì)出現(xiàn)人力不足的情
況。
4.軟件項(xiàng)目的領(lǐng)導(dǎo)
5.軟件項(xiàng)目的控制
對(duì)后面兩個(gè)主題以后再討論。其實(shí)本文所討論的東西大多還沒(méi)有涉及太多管理學(xué)方面的內(nèi)
容,但這方面確實(shí)有許多值得研究的東西,由于時(shí)間關(guān)系穴能深入下去。姑且作為一個(gè)引子吧!
1.7面向?qū)ο蠹夹g(shù)
1.7.1基本概念
面向?qū)ο?object-oriented,00)方法是以客觀世界中的對(duì)象為中心,其分析和設(shè)計(jì)思想
符合人們的思維方式,分析和設(shè)計(jì)的結(jié)果與客觀世界的實(shí)際比較接近,容易被人們所接受。下面
列舉幾個(gè)面向?qū)ο笤O(shè)計(jì)方法中的重要術(shù)語(yǔ),它們構(gòu)成而向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言的核心。
?對(duì)象(Object)
對(duì)象是和有數(shù)據(jù)及可對(duì)這些數(shù)據(jù)施加的操作結(jié)合在一起所構(gòu)成的獨(dú)立單位的總稱(chēng)。一個(gè)對(duì)彖通常
可由對(duì)象名、屬性和操作三部分組成。
對(duì)象的劃分判定標(biāo)準(zhǔn):
1、子對(duì)象之間獨(dú)立性要高,即耦合度盡量達(dá)到最低,(理想的情況是達(dá)到組件化的程度):
2、子對(duì)象相對(duì)其他劃分方法,更易于處理。所以對(duì)于復(fù)雜的大系統(tǒng),一般都要經(jīng)過(guò)多次的嘗
試,以盡量能找到較優(yōu)的劃分方案。對(duì)于比較簡(jiǎn)單的系統(tǒng),E-R轉(zhuǎn)換也能的到較為滿(mǎn)意的劃
分。
?實(shí)例(Instance)
實(shí)例是由某個(gè)特定類(lèi)所描述的?個(gè)對(duì)象。
?類(lèi)(Class)
類(lèi)是一組具有相同屬性和相同操作的對(duì)象的集合。類(lèi)是面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言提供的可再用軟
件成分。
?方法(Method)
對(duì)象所能執(zhí)行的操作稱(chēng)為方法。方法是類(lèi)中定義的函數(shù),描述對(duì)象執(zhí)行操作的算法。
?消息(Message)
消息是要求某個(gè)對(duì)象執(zhí)行類(lèi)中定義的某個(gè)操作的規(guī)格說(shuō)明。一個(gè)消息通常包括接受對(duì)象名、調(diào)用
的操作名和適當(dāng)?shù)膮?shù)(如有必要)。
主要特點(diǎn):
?封裝性
封裝性是一種信息隱蔽技術(shù),它使系統(tǒng)分析員能夠清咂地標(biāo)明他們所提供的服務(wù)界面,用戶(hù)和應(yīng)
用程序員則只看得見(jiàn)對(duì)象提供的操作功能(即封裝面上的信息),看不到其中的數(shù)據(jù)或操作代碼
細(xì)節(jié)。
?多態(tài)性
多態(tài)性是指同一個(gè)操作作用于不同的對(duì)象可以有不同的解釋?zhuān)a(chǎn)生不同的執(zhí)行結(jié)果。
?繼承性
繼承是指在某個(gè)類(lèi)的層次關(guān)聯(lián)中,不同的類(lèi)共享屬性和操作的一種機(jī)制。一個(gè)父類(lèi)可以有多個(gè)了?
類(lèi)。父類(lèi)描述了這些子類(lèi)的公共屬性和操作,子類(lèi)中還可以定義其自己的屬性和操作。如果一個(gè)
子類(lèi)只有唯一的一個(gè)父類(lèi),這種繼承稱(chēng)為單一繼承。如果一個(gè)子類(lèi)有多個(gè)父類(lèi),可以從多個(gè)父類(lèi)
中繼承特性,這種繼承稱(chēng)為多重繼承。
1.7.2面向?qū)ο蟮姆治龇椒?/p>
面向?qū)ο蟮南到y(tǒng)分析設(shè)計(jì),看起來(lái)其實(shí)也很簡(jiǎn)單,步驟大概如下:
(1)從項(xiàng)目開(kāi)始,進(jìn)行步驟(2)。
(2)對(duì)系統(tǒng)進(jìn)行分析,加果它在一定的要求下可解決,則停止分析,進(jìn)行設(shè)計(jì);如果它在一定
的要求下不可解決,則對(duì)它進(jìn)行劃分。
(3)步驟(2)如果有分析結(jié)果,則對(duì)其中每一個(gè)子對(duì)象,進(jìn)行步驟(2)。
邊界條件(也即上面提到的“一定要求”,對(duì)象劃分的原則):
?子對(duì)象之間獨(dú)立性要高,即耦合度盡量達(dá)到最低,(理想的情況是達(dá)到組件化的程度):
?子對(duì)象相對(duì)其他劃分方法,更易于處理(如實(shí)現(xiàn),維護(hù)等)。
當(dāng)前常見(jiàn)的面向?qū)ο蟮姆椒ê芏?,下面?jiǎn)單介紹三種:
PeterCoard和EdwardYoardon的00A和00D方法
00A(面向?qū)ο蠓治觯┠P陀?個(gè)層次和5個(gè)活動(dòng)組成:
5個(gè)層次:主題層、對(duì)象類(lèi)層、結(jié)構(gòu)層、屬性層、服務(wù)層
5個(gè)活動(dòng):標(biāo)識(shí)對(duì)象類(lèi)、標(biāo)識(shí)結(jié)構(gòu)、定義主題、定義屬性、定義服務(wù)
在這種方法中定義兩種對(duì)象類(lèi)之間的結(jié)構(gòu):
分類(lèi)結(jié)構(gòu)一一反映了一般與特殊的關(guān)系
組裝結(jié)構(gòu)一一反映了對(duì)象之間整體與部分的關(guān)系
00A中的5個(gè)層次和5個(gè)活動(dòng)繼續(xù)貫穿在00D(面向?qū)ο笤O(shè)計(jì))過(guò)程中。00D模型由4個(gè)部分,
即:
>問(wèn)題域
>人機(jī)交互
>任務(wù)管理
>數(shù)據(jù)管理
Booth的00D方法
Booth認(rèn)為軟件開(kāi)發(fā)是一個(gè)螺旋上升的過(guò)程。在螺旋上升的每個(gè)周期中,有4個(gè)步驟:
>標(biāo)識(shí)類(lèi)和對(duì)象
>確定它們的含義
>標(biāo)識(shí)它們之間的關(guān)系
>說(shuō)明每一個(gè)類(lèi)的界面和實(shí)現(xiàn)
OMT方法
OMT(對(duì)象建模技術(shù))定義了3種模型:
>對(duì)象模蟄
描述系統(tǒng)中對(duì)象的靜態(tài)結(jié)構(gòu)、對(duì)象之間的關(guān)系、對(duì)象的屬性、對(duì)象的操作。它為動(dòng)態(tài)模
型和功能模型提供了基本的框架。用對(duì)象圖表示。
>動(dòng)態(tài)模型:
描述與時(shí)間利操作順序有關(guān)的系統(tǒng)特征一一激發(fā)事件、事件序列、確定事件先后關(guān)系的
狀態(tài)以及事件和狀態(tài)的組織。用狀態(tài)圖表示。
>功能模型:
描述與值的變換有關(guān)的系統(tǒng)特征一一功能、映射、約束和函數(shù)依賴(lài)。用數(shù)據(jù)流圖表示。
OMT方法有4個(gè)步驟
分析?:這是OMT方法的第一步,其目的是建立可理解的現(xiàn)實(shí)世界模型。
系統(tǒng)設(shè)計(jì):確定整個(gè)系統(tǒng)的體系結(jié)構(gòu),形成求解問(wèn)題和建立解答的高層次策略。
對(duì)象設(shè)計(jì):在分析的基礎(chǔ)上,對(duì)象設(shè)計(jì)階段建立基于分析模型的設(shè)計(jì)模型,考慮實(shí)現(xiàn)的細(xì)節(jié)。
實(shí)現(xiàn):將對(duì)象設(shè)計(jì)階段開(kāi)發(fā)的對(duì)象類(lèi)及其關(guān)系轉(zhuǎn)換成特定的程序設(shè)計(jì)語(yǔ)言、數(shù)據(jù)庫(kù)或硬件的實(shí)現(xiàn)。
1.7.3面向?qū)ο笤O(shè)計(jì)原則
面向?qū)ο笤O(shè)計(jì)相關(guān)原則:
1.開(kāi)閉原則(theOpenClosedPrincipleOCP)
一個(gè)模塊在擴(kuò)展性方面應(yīng)該是開(kāi)放的而在更改性方面應(yīng)該是封閉的。因此在進(jìn)行面向龍象設(shè)
計(jì)時(shí)要盡量考慮接口封裝機(jī)制、抽象機(jī)制和多態(tài)技術(shù)。該原則同樣適合于非面向?qū)ο笤O(shè)計(jì)的方法,
是軟件工程設(shè)計(jì)方法的重要原則之一。
2.替換原則(theLiskovSubstitutionPrincipleLSP)
子類(lèi)應(yīng)當(dāng)可以替換父類(lèi)并出現(xiàn)在父類(lèi)能夠出現(xiàn)的任何地方。這個(gè)原則是Liskov于1987年提
出的設(shè)計(jì)原則。它同樣可以從BertrandMeyer的DBC(DesignbyContract)的概念推出。
3.依賴(lài)原則(theDependencyInversionPrincipleDIP)
在進(jìn)行業(yè)務(wù)設(shè)計(jì)時(shí),與特定業(yè)務(wù)有關(guān)的依賴(lài)關(guān)系應(yīng)該盡量依賴(lài)接口和抽象類(lèi),而不是依賴(lài)于
具體類(lèi)。具體類(lèi)只負(fù)責(zé)相關(guān)業(yè)務(wù)的實(shí)現(xiàn),修改具體類(lèi)不影響與特定業(yè)務(wù)有關(guān)的依賴(lài)關(guān)系。
為此,我們?cè)谶M(jìn)行業(yè)務(wù)設(shè)計(jì)時(shí),應(yīng)盡量在接口或抽象類(lèi)中定義業(yè)務(wù)方法的原型,并通過(guò)具體
的實(shí)現(xiàn)類(lèi)(子類(lèi))來(lái)實(shí)現(xiàn)該業(yè)務(wù)方法,業(yè)務(wù)方法內(nèi)容的修改將不會(huì)影響到運(yùn)行時(shí)業(yè)務(wù)方法的調(diào)用。
4.接口分離原則(IheInterfaceSegregationPrincipleISP)
采用多個(gè)與特定客戶(hù)類(lèi)有關(guān)的接口比采用一個(gè)通用的涵蓋多個(gè)業(yè)務(wù)方法的接口要好。
ISP原則是另外?個(gè)支持諸如COM等組件化的使能技術(shù)。缺少I(mǎi)SP,組件、類(lèi)的可用性和移
植性將大打折扣。
1.8軟件質(zhì)量(重點(diǎn))
軟件質(zhì)吊是指反映軟件系統(tǒng)或軟件產(chǎn)品滿(mǎn)足規(guī)定或隱含需求的能力的特征和特性全體。
卜面從管理的角度列出了影響軟件質(zhì)量的主要因素。
質(zhì)量因素定義
系統(tǒng)滿(mǎn)足規(guī)格說(shuō)明和用戶(hù)目標(biāo)的程序,即在預(yù)定環(huán)境卜.能正確的完成
正確性
預(yù)期功能的程序
在硬件發(fā)生故障、輸入的數(shù)據(jù)無(wú)效或操作錯(cuò)誤等意外環(huán)境下,系統(tǒng)能
產(chǎn)健壯性
做出適當(dāng)響應(yīng)的程序
口口
效率為了完成預(yù)定的功能,系統(tǒng)需要的計(jì)算資源的多少
運(yùn)
時(shí)未經(jīng)授權(quán)的人使用軟件或數(shù)據(jù)的企圖,系統(tǒng)能夠控制(禁止)的程
行完整性(安全性)
序
可用性系統(tǒng)在完成預(yù)定應(yīng)該完成的功能時(shí)令人滿(mǎn)意的程度
風(fēng)險(xiǎn)按預(yù)定的成本和進(jìn)度將系統(tǒng)開(kāi)發(fā)處理,并且為用戶(hù)滿(mǎn)意的概率
產(chǎn)可理解性理解和使用該系統(tǒng)的容易程度
品可維修性診斷和改正在運(yùn)行現(xiàn)場(chǎng)發(fā)現(xiàn)的錯(cuò)誤所需要的工作量的多少
修靈活性(適應(yīng)性)修改或改進(jìn)正在運(yùn)行的系統(tǒng)需要的工作量的多少
改可測(cè)試性軟件容易測(cè)試的程度
產(chǎn)把程序從一種硬件配置和(或)軟件系統(tǒng)環(huán)境轉(zhuǎn)移到另一種配置和環(huán)
可移植性
品境時(shí),需要的工作量多少
轉(zhuǎn)可再用性在其他應(yīng)用中該程序可以被再次使用的程度(或范圍)
移互運(yùn)行性把該系統(tǒng)和另一個(gè)系統(tǒng)結(jié)合起來(lái)需要的工作量的多少
高質(zhì)雇[:軟件的特性:
?滿(mǎn)足用戶(hù)的需求。這是最重要的一點(diǎn),一個(gè)軟件如果不能夠滿(mǎn)足用戶(hù)的需要,設(shè)計(jì)的再好,
采用的技術(shù)再先進(jìn),乜沒(méi)有任何的意義。所以這一點(diǎn)非常的樸實(shí),但卻是軟件質(zhì)量的第一
個(gè)評(píng)判標(biāo)準(zhǔn)。
?合理進(jìn)度、成本、功能關(guān)系。軟件開(kāi)發(fā)中所有的管理都是圍繞著這幾個(gè)要素在做文章的,
如何在特定的時(shí)間內(nèi),以特定的成本,開(kāi)發(fā)出特定功能的軟件。三者之間存在一種微妙的
平衡。一個(gè)高質(zhì)量的軟件的開(kāi)發(fā)過(guò)程中,項(xiàng)目成員一定能夠客觀的對(duì)待這三個(gè)因素,并通
過(guò)有效的計(jì)劃、管理、控制,使得三者之間達(dá)成一種平衡,保證產(chǎn)出的最大化。
?具備擴(kuò)展性和靈活性,能夠適應(yīng)一定程度的需求變化。當(dāng)今的社會(huì)已經(jīng)變成一種變化速度
極快的設(shè)計(jì)了。變化就會(huì)對(duì)軟件產(chǎn)生沖擊,所以?個(gè)質(zhì)量?jī)?yōu)秀的軟件,應(yīng)該能夠在?定程
度上適應(yīng)這種變化,并保持軟件的穩(wěn)定。
?能夠有效的處理例外的情況。寫(xiě)過(guò)軟件的人都知道,實(shí)現(xiàn)主體功能的工作量其實(shí)不大,真
正的工作量都在處理各種例外。所以,一個(gè)軟件如果能夠足夠的強(qiáng)壯、足夠的魯棒,能夠
承受各種的非法情況的沖擊,這個(gè)軟件就是高質(zhì)量的。
?保持成本和性能的平衡。性能往往來(lái)源于客尸的非功能需求,是軟件質(zhì)量的一個(gè)重要的評(píng)
價(jià)因素。但是性能問(wèn)題在任何地方都存在,所以需要客觀的看待它。例如,一段性能不錯(cuò)
的代碼可能可讀性很差,這就需要進(jìn)行平衡,如果這段代碼的性能是整個(gè)軟件的關(guān)鍵,那
么取高性能而舍棄可讀性,反之則取可讀性而舍棄高性能。一個(gè)優(yōu)秀的軟件能夠保持成本
和性能之間的平衡。
?能夠可持續(xù)的發(fā)展。很少有軟件組織只開(kāi)發(fā)一個(gè)軟件的,所以,一個(gè)優(yōu)秀的軟件在開(kāi)發(fā)完
成后,可以形成知識(shí)沉淀,為軟件組織的長(zhǎng)期發(fā)展貢獻(xiàn)力量。這是一個(gè)優(yōu)秀的軟件應(yīng)該要
能夠做到的。
1.8.1八項(xiàng)質(zhì)量管理原則
為了成功地領(lǐng)導(dǎo)和運(yùn)作一個(gè)組織,需要采用一種系統(tǒng)和透明的方式進(jìn)行管理。針對(duì)所有相
關(guān)方的需求,實(shí)施并保持持續(xù)改進(jìn)其業(yè)績(jī)的管理體系,使組織獲得成功。組織為實(shí)現(xiàn)質(zhì)量目標(biāo),
應(yīng)遵循以下八項(xiàng)質(zhì)量管理原則:
原則1:以顧客為中心
組織依存于其顧客。因此,組織應(yīng)理解顧客當(dāng)前的和未來(lái)的需求,滿(mǎn)足顧客要求并爭(zhēng)取超越顧
客期望。
1、組織實(shí)施本原則的主要利益
2、組織實(shí)施本原則時(shí)一般要采取的主要措施
3、本原則在標(biāo)準(zhǔn)中的體現(xiàn)
原則2:領(lǐng)導(dǎo)作用
領(lǐng)導(dǎo)將本組織的宗旨、方向和內(nèi)部環(huán)境統(tǒng)一起來(lái),并創(chuàng)造使員工能夠充分參與實(shí)現(xiàn)組織目標(biāo)
的環(huán)境。
1、組織實(shí)施本原則的主要利益
2、組織實(shí)施本原則時(shí)一般要采取的主要措施
3、本原則在標(biāo)準(zhǔn)中的體現(xiàn)
原則3:全員參與
各級(jí)人員是組織之本。只有他們的充分參與,才能使他們的才干為組織帶來(lái)最大的收益。
1、織實(shí)施本原則的主要利益
2、組織實(shí)施本原則時(shí)一般要采取的主要措施
3、本原則在標(biāo)準(zhǔn)中的體現(xiàn)
原則4:過(guò)程方法
過(guò)程方法的原則不僅適用于某些較簡(jiǎn)單的過(guò)程,也適用于由許多過(guò)程構(gòu)成的過(guò)程網(wǎng)絡(luò)。在應(yīng)
用于質(zhì)量管理體系時(shí),2000版IS09000族標(biāo)準(zhǔn)建立了一個(gè)過(guò)程模式。此模式把管理職責(zé)、資源
管理、產(chǎn)品實(shí)現(xiàn)、測(cè)量、分析與改進(jìn)作為體系的四大主要過(guò)程,描述其相互關(guān)系,并以顧客要求
為輸入,提供給顧客的產(chǎn)品為輸出,通過(guò)信息反饋來(lái)測(cè)定的顧客滿(mǎn)意度,評(píng)價(jià)質(zhì)量管理體系的業(yè)
績(jī)。
1、實(shí)施本原則的主要利益
2、組織實(shí)施本原則時(shí)一般要采取的主要措施
3、本原則在標(biāo)準(zhǔn)中的體現(xiàn)
原則5:管理的系統(tǒng)方法
針對(duì)設(shè)定的目標(biāo),識(shí)別、理解并管理一個(gè)由相互關(guān)連的過(guò)程所組成的體系,有助于提高組織
的有效性和效率。
IS0/DIS9000的3.3列出了建立和實(shí)施質(zhì)量管理體系的十三個(gè)步驟:
1、實(shí)施本原則的主要利益
2、組織實(shí)施本原則時(shí)一般要采取的主要措施
3、本原則在標(biāo)準(zhǔn)中的體現(xiàn)
原則6:持續(xù)改進(jìn)
持續(xù)改進(jìn)是組織的一個(gè)永恒的目標(biāo)。
1、實(shí)施本原則的主要利益
2、組織實(shí)施本原則時(shí)一般要采取的主要措施
3、本原則在標(biāo)準(zhǔn)中的體現(xiàn)
原則7:基于事實(shí)的決策方法
對(duì)數(shù)據(jù)和信息的邏輯分析或直覺(jué)判斷是有效決策的基礎(chǔ)。
以事實(shí)為依據(jù)做決策,可防止決策失誤。在對(duì)信息和資料做科學(xué)分析時(shí),統(tǒng)計(jì)技術(shù)是最重要的工
具之一。統(tǒng)計(jì)技術(shù)可以用來(lái)測(cè)量、分析和說(shuō)明產(chǎn)品和過(guò)程的變異性。統(tǒng)計(jì)技術(shù)可以為持續(xù)改進(jìn)的決
策提供依據(jù)。
1、實(shí)施本原則的主要利益
2、組織實(shí)施本原則時(shí)一般要采取的主要措施
3、本原則在標(biāo)準(zhǔn)中的體現(xiàn)
原則8:互利的供方關(guān)系
通過(guò)互利的關(guān)系,增強(qiáng)組織及其供方創(chuàng)造價(jià)值的能力。
供方提供的產(chǎn)品將對(duì)組織向顧客提供滿(mǎn)意的產(chǎn)品可能產(chǎn)生重要的影響,一次處理好與供方的
關(guān)系,影響到組織能否持續(xù)穩(wěn)定地提供顧客滿(mǎn)意地產(chǎn)品.對(duì)供方不能只講控制,不講合作互利.
特別對(duì)關(guān)鍵供方,更要建立互利關(guān)系。這對(duì)組織和供方雙方都是有利的。
1、實(shí)施本原則的主要利益
2、組織實(shí)施本原則時(shí)一般要采取的主要措施
3、本原則在標(biāo)準(zhǔn)中的體現(xiàn)
1.8.2十三個(gè)步驟
確定順容的需宓和井考J?那些提
期至是果的改進(jìn)
建立組限的質(zhì)量方
I為實(shí)做已確定的改進(jìn).
針和目標(biāo)亞寸故降、過(guò)程和資源進(jìn)
??劃
X.”
確定實(shí)?目標(biāo)
所端的和職責(zé)
實(shí)施改進(jìn)計(jì)劃
「對(duì)蚪不;施賣(mài)說(shuō)肉
量目標(biāo)的有效性確
需泛改講豺一里
「澈菌藏疥答…次
確定每個(gè)過(guò)程的現(xiàn)
行再減性
I-
對(duì)照預(yù)期結(jié)果.評(píng)價(jià)實(shí)
際結(jié)果
確定防止不合格并
消除產(chǎn)生原因的指
施
I評(píng)審改進(jìn)活動(dòng),以確定
I適宜的后續(xù)措施
I_____________________
軟件質(zhì)量保證是指為了保證軟件系統(tǒng)或軟件產(chǎn)品最大限度的滿(mǎn)足用戶(hù)要求而進(jìn)行%有計(jì)
劃、有組織的活動(dòng),其目的是產(chǎn)生高質(zhì)量的軟件。目前有多種軟件質(zhì)量模型來(lái)描述軟件質(zhì)量特性,
如IS0/IEC9126軟件質(zhì)量模型、McCall軟件質(zhì)量模型等。
1.8.3軟件質(zhì)量特性
1.McCall軟件質(zhì)量模型
可靠性完整性
2.Boehm質(zhì)量模型
設(shè)笛獨(dú)立性I
用你n:7E-?hn
T禿區(qū)g
??JHUHH一致檔他壯n
軟件戒性
^TA^fXIV)\N
可計(jì)澗itt
乂>1測(cè)試rt1返;《^絲閑
、量可存取性j
”物,戶(hù)竹II'通fjn
行修改性H.nSn
Qlt善蚪化性
1mn
m*性
可擴(kuò)充性
3.ISO/IEC9126軟件質(zhì)量模型
GB/T16260-2003軟件工程產(chǎn)品質(zhì)量
1.8.4軟件質(zhì)量管理
概念:軟件質(zhì)量管理:指保證軟件滿(mǎn)足其目標(biāo)要求所需要的過(guò)程,它包括編制質(zhì)量計(jì)戈J、質(zhì)
量控制、質(zhì)量保證等過(guò)程。
質(zhì)量控制:為了保證每件工作產(chǎn)品都滿(mǎn)足對(duì)它的需求而進(jìn)行的一系列評(píng)審模型、檢查代碼和
測(cè)試活動(dòng)。質(zhì)量控制是整個(gè)制造過(guò)程的一部分,由開(kāi)發(fā)團(tuán)隊(duì)進(jìn)行。
質(zhì)量保證:為管理層提供能反映產(chǎn)品質(zhì)量的數(shù)據(jù),從而獲得產(chǎn)品質(zhì)量是否符合預(yù)定目標(biāo)的認(rèn)
識(shí)和信心。質(zhì)量保證是貫穿整個(gè)軟件過(guò)程的普適性活動(dòng),曰質(zhì)保人員進(jìn)行。
軟件質(zhì)量管理體系
質(zhì)量管理體系質(zhì)量管理體系質(zhì)量管理體系
要求業(yè)績(jī)改進(jìn)指南審核綱要
技術(shù)評(píng)審
技術(shù)評(píng)審是軟件過(guò)程早期最有效的杳錯(cuò)機(jī)制。
在軟件開(kāi)發(fā)過(guò)程中的不同階段對(duì)需求分析模型、設(shè)計(jì)模型、源代碼和測(cè)試用例等過(guò)程工作產(chǎn)品進(jìn)
行評(píng)審,能起到發(fā)現(xiàn)錯(cuò)誤(進(jìn)而消除)的作用。
輪查(郵件分發(fā))走查
EmailPass-aroundWalkthrough
----------------------------------------------------r
tt
臨時(shí)評(píng)審互為復(fù)審會(huì)議審查
andom(同行評(píng)審)Inspection
Peer-to-peer
1.9軟件配置管理
軟件配件管理(SCMSoftwareConfigurationManagement)是IS09001和CMMLove12
中的重要組成元素,它在軟件產(chǎn)品開(kāi)發(fā)的生命周期中,提供了結(jié)構(gòu)化的、有序化
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- DB31/ 540.2-2011重點(diǎn)單位消防安全管理要求第2部分:學(xué)校
- CAB 1020-2013汽車(chē)專(zhuān)用低壓噴漆機(jī)的技術(shù)要求
- 濱州市濱城區(qū)2025年八年級(jí)《語(yǔ)文》上學(xué)期期末試題與參考答案
- 海外會(huì)展搭建服務(wù)與安全監(jiān)管協(xié)議
- 碳排放權(quán)交易與碳資產(chǎn)管理平臺(tái)聯(lián)合推廣合作協(xié)議
- 教育機(jī)構(gòu)招生代理及品牌授權(quán)合作協(xié)議
- 電商平臺(tái)倉(cāng)儲(chǔ)配送與物流標(biāo)準(zhǔn)化體系建設(shè)協(xié)議
- 花園使用權(quán)與城市綠化工程承包合同
- 證券市場(chǎng)投資風(fēng)險(xiǎn)管控補(bǔ)充協(xié)議
- 招標(biāo)代理機(jī)構(gòu)與環(huán)保企業(yè)股權(quán)合作框架
- GB/T 31586.2-2015防護(hù)涂料體系對(duì)鋼結(jié)構(gòu)的防腐蝕保護(hù)涂層附著力/內(nèi)聚力(破壞強(qiáng)度)的評(píng)定和驗(yàn)收準(zhǔn)則第2部分:劃格試驗(yàn)和劃叉試驗(yàn)
- GB/T 24917-2010眼鏡閥
- GB/T 20812-2006角膜接觸鏡附屬用品
- 北京中考英語(yǔ)單詞表(核心詞匯)
- 搶救儀器設(shè)備管理課件
- 外國(guó)人來(lái)華工作許可申請(qǐng)承諾書(shū)
- 初一家長(zhǎng)會(huì)課件差班
- 外墻外保溫施工工藝(擠塑聚苯板)
- 《實(shí)驗(yàn)室安全教育》課程教學(xué)大綱(本科)
- 部編版六年級(jí)下冊(cè)語(yǔ)文作業(yè)本參考答案
- 牙髓炎護(hù)理查房【版直接用】課件
評(píng)論
0/150
提交評(píng)論