




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1練習(xí)題
軟件的特點(diǎn)有哪些?
軟件是一種邏輯實(shí)體,具有抽象性。硬件是有形的設(shè)備,而軟件不像硬件那
樣具有明顯的可見性。人們可以把軟件記錄在介質(zhì)上,但是卻無法直觀地觀察到
它的形態(tài),而必須通過在計(jì)算機(jī)上實(shí)際地運(yùn)行才能了解它的功能、性能及其他特
性。
軟件的生產(chǎn)與硬件的制造不同。它更多地滲透了人類的智能活動(dòng),是人類智
力勞動(dòng)的產(chǎn)物。軟件是被開發(fā)或設(shè)計(jì)的,而不是傳統(tǒng)意義上被制造的。軟件成本
集中于開發(fā)上,這意味著軟件項(xiàng)目不能像制造項(xiàng)目那樣管理,
軟件在運(yùn)行使用過程中,不會(huì)磨損。在軟件的運(yùn)行和使用期間,它不會(huì)產(chǎn)生
像硬件那樣的磨損和老化現(xiàn)象,然而卻存在著缺陷維護(hù)和技術(shù)更新的問題。軟件
不會(huì)磨損,但是它會(huì)退化,而軟件的退化是由于修改。因此,軟件維護(hù)比硬件維
護(hù)要復(fù)雜得多。
軟&的開發(fā)至今尚未完全擺脫手工藝的開發(fā)方式。在硬件世界,構(gòu)件復(fù)用是
工程過程的自然的一部分,而在軟件世界,它是剛剛開始起步的事物。雖然軟件
產(chǎn)業(yè)正在向基于構(gòu)件的組裝前進(jìn),但大多數(shù)軟件仍是定制的C
軟件的開發(fā)和運(yùn)行必須依附于特定的計(jì)算機(jī)系統(tǒng)環(huán)境。它不像有些設(shè)備一樣,
能夠獨(dú)立地工作,而是受到了物理硬件、網(wǎng)絡(luò)配置、支撐軟件等因素的制約。由
此引發(fā)了軟件的可移植性問題。
軟件危機(jī)是如何產(chǎn)生的?有哪些表現(xiàn)?
原因:在20世紀(jì)60年代中期,隨著軟件規(guī)模的擴(kuò)大,復(fù)雜性的增加,功能
的增強(qiáng),使得高質(zhì)量的軟件開發(fā)變得越來越困難。
表現(xiàn):
開發(fā)出來的軟件產(chǎn)品不能滿足用戶的需求,即產(chǎn)品的功能或特性與需求不符。
這主要是由于開發(fā)人員與用戶之間不能充分有效的交流造成的,使得開發(fā)人員對(duì)
用戶需求的理解存在著差異;
相比越來越廉價(jià)的硬件,軟件代價(jià)過高;
軟件質(zhì)量難以得到保證,且難以發(fā)揮硬件潛能。開發(fā)團(tuán)隊(duì)缺少完善的軟件質(zhì)
量評(píng)審體系以及科學(xué)的軟件測(cè)試規(guī)程,使得最終的軟件產(chǎn)品存在著諸多缺陷;
難以準(zhǔn)確估計(jì)軟件開發(fā)、維護(hù)的費(fèi)用以及開發(fā)周期。往往軟件產(chǎn)品不能在預(yù)
算范圍之內(nèi),按照計(jì)劃完成開發(fā)。很多情況下,軟件產(chǎn)品的開發(fā)周期或經(jīng)費(fèi)會(huì)大
大超出預(yù)算;
難于控制開發(fā)風(fēng)險(xiǎn),開發(fā)速度趕不上市場(chǎng)變化;
軟件產(chǎn)品修改維護(hù)困難,集成遺留系統(tǒng)更困難;
軟件文檔不完備,并且存在著文檔內(nèi)容與軟件產(chǎn)品不符的情況。軟件文檔是
計(jì)算機(jī)軟件的重要組成部分,它為在軟件開發(fā)人員之間以及開發(fā)人員與用戶之間
信息的共享提供了重要的平臺(tái)。軟件文檔的不完整和不一致的問題會(huì)給軟件的開
發(fā)和維護(hù)等工作帶來很多麻煩。
簡(jiǎn)述軟件工程的基本原則。
用分階段的生存周期計(jì)劃進(jìn)行嚴(yán)格的管理;
將軟件的生存周期劃分為多個(gè)階段,對(duì)各個(gè)階段實(shí)行嚴(yán)格的項(xiàng)目管理。軟件
開發(fā)是一個(gè)漫長(zhǎng)的過程,人們可以根據(jù)工作的特點(diǎn)或目標(biāo),把整個(gè)軟件的開發(fā)周
期劃分為多個(gè)階段,并為每個(gè)階段制定分階段的計(jì)劃及驗(yàn)收標(biāo)準(zhǔn),這樣有益于對(duì)
整個(gè)軟件開發(fā)過程進(jìn)行管理。在傳統(tǒng)的軟件工程中,軟件開發(fā)的生存周期可以劃
分為可行性研究、需求分析、軟件設(shè)計(jì)、軟件實(shí)現(xiàn)、軟件測(cè)試、產(chǎn)品驗(yàn)收和交付
等階段。
堅(jiān)持進(jìn)行階段評(píng)審;
嚴(yán)格的貫徹與實(shí)施階段評(píng)審制度可以幫助軟件開發(fā)人員及時(shí)地發(fā)現(xiàn)錯(cuò)誤并
將其改正。在軟件開發(fā)的過程中,錯(cuò)誤發(fā)現(xiàn)的越晚,修復(fù)錯(cuò)誤所要付出的代價(jià)就
會(huì)越大。實(shí)施階段評(píng)審,只有在本階段的工作通過評(píng)審后,才能進(jìn)入下一階段的
工作。
實(shí)行嚴(yán)格的產(chǎn)品控制;
在軟件開發(fā)的過程中,用戶需求很可能在不斷的發(fā)生著變化。有些時(shí)候,即
使用戶需求沒有改變,軟件開發(fā)人員受到經(jīng)驗(yàn)的限制以及與客戶交流不充分的影
響,也很難做到一次性獲取到全部的正確的需求??梢?,需求分析的工作應(yīng)該貫
穿到整個(gè)軟件開發(fā)的生存周期內(nèi)。在軟件開發(fā)的整個(gè)過程中,需求的改變是不可
避免的。當(dāng)需求更新時(shí),為了保證軟件各個(gè)配置項(xiàng)的?致性,實(shí)施嚴(yán)格的版本控
制是非常必要的。
采用現(xiàn)代程序設(shè)計(jì)技術(shù);
現(xiàn)代的程序設(shè)計(jì)技術(shù),比如面向?qū)ο?,可以使開發(fā)出來的軟件產(chǎn)品更易維護(hù)
和修改,同時(shí)還能縮短開發(fā)的時(shí)間,并且更符合人們的思維邏輯。
軟件工程結(jié)果應(yīng)能清楚地審查;
雖然軟件產(chǎn)品的可見性比較差,但是它的功能和質(zhì)量應(yīng)該能夠被準(zhǔn)確地審查
和度量,這樣才能有利于有效的項(xiàng)目管理。一般軟件產(chǎn)品包括可以執(zhí)行的源代碼、
一系列相應(yīng)的文檔和資源數(shù)據(jù)等。
開發(fā)小組的人員應(yīng)該少而精;
開發(fā)小組成員的人數(shù)少有利于組內(nèi)成員充分的交流,這是高效團(tuán)隊(duì)管理的重
要因素。而高素質(zhì)的開發(fā)小組成員是影響軟件產(chǎn)品的質(zhì)量和開發(fā)效率的重要因素。
承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性。
隨著計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展,軟件從業(yè)人員應(yīng)該不斷地總結(jié)經(jīng)驗(yàn)并且主動(dòng)學(xué)
習(xí)新的軟件技術(shù),只有這樣才能不落后于時(shí)代。
什么是軟件過程?軟件過程標(biāo)準(zhǔn)包括哪些內(nèi)容?
軟件過程又稱為軟件生存周期過程,是軟件生存周期內(nèi)為達(dá)到一定目標(biāo)而必
須實(shí)施的一系列相關(guān)過程的集合。
標(biāo)準(zhǔn):
制定了IS012207軟件生存周期過程標(biāo)準(zhǔn),它把用于開發(fā)一個(gè)軟件系統(tǒng)的過
程分為三類:主過程、支持過程和輔助過程(組織過程)。
主過程是構(gòu)成軟件生存周期主要部分的那些過程,正是這些過程啟動(dòng)或進(jìn)行
軟件產(chǎn)品的開發(fā)、操作或維護(hù)。這些過程共有五個(gè),它們是:
獲取過程:定義需方(即獲取一個(gè)系統(tǒng)、軟件產(chǎn)品或軟件服務(wù)的組織)的活
動(dòng);
供應(yīng)過程:定義供方(即向需方提供系統(tǒng)、軟件產(chǎn)品或軟件服務(wù)的組織)的
活動(dòng);
開發(fā)過程:定義開發(fā)者(即定義和開發(fā)軟件產(chǎn)品的組織)的活動(dòng);
維護(hù)過程:定義維護(hù)者(即對(duì)軟件產(chǎn)品進(jìn)行維護(hù)服務(wù)的組織)的活動(dòng),這個(gè)
過程包括系統(tǒng)移植和退役;
運(yùn)行過程:定義運(yùn)行者(即在計(jì)算機(jī)系統(tǒng)運(yùn)行環(huán)境中向其用戶提供運(yùn)行服務(wù)
的組織)的活動(dòng)。
支持過程是對(duì)另一個(gè)過程提供支持的過程。被支持的過程根據(jù)需要采用支持
性過程,并與該過程結(jié)合,幫助軟件項(xiàng)目獲得成功,并提高質(zhì)量。支持過程共有
如下八個(gè):
文檔過程:定義對(duì)某生存周期過程所產(chǎn)生的信息進(jìn)行記錄的活動(dòng);
配置管理過程:定義配置管理活動(dòng);
質(zhì)量保證過程:定義客觀地保證軟件產(chǎn)品和過程符合規(guī)定要求、遵守已定計(jì)
劃的活動(dòng);
驗(yàn)證過程:定義需方、供方或獨(dú)立的第三方對(duì)軟件產(chǎn)品進(jìn)行驗(yàn)證的活動(dòng),這
些驗(yàn)證活動(dòng)的深度由軟件項(xiàng)目的性質(zhì)決定;
確認(rèn)過程:定義需方、供方或獨(dú)立的第三方對(duì)軟件產(chǎn)品進(jìn)行確認(rèn)的活動(dòng);
聯(lián)合評(píng)審過程:定義對(duì)某項(xiàng)活動(dòng)的狀態(tài)和產(chǎn)品進(jìn)行評(píng)價(jià)的活動(dòng),這過程可
由任何雙方共同采用,其中一方(評(píng)審方)評(píng)審另一方(被評(píng)方);
審計(jì)過程:定義對(duì)是否符合要求、計(jì)劃和合同進(jìn)行確定的過程,這個(gè)過程可
由任何雙方采用,其中一方(審計(jì)方)審計(jì)另一方(被審方)的軟件產(chǎn)品或活動(dòng);
問題解決過程:定義對(duì)開發(fā)、操作、維護(hù)或其它過程中發(fā)現(xiàn)的問題(包括不
一致性)進(jìn)行分析和排除的過程。
輔助過程是一個(gè)組織用來建立、實(shí)施一種基礎(chǔ)結(jié)構(gòu)、并不斷改進(jìn)該基礎(chǔ)結(jié)構(gòu)
的過程?;A(chǔ)結(jié)構(gòu)由一些相關(guān)的生存周期過程和人員組成。這些輔助過程有如下
四個(gè):
基礎(chǔ)設(shè)施過程:定義建立生存周期過程的基礎(chǔ)結(jié)構(gòu)所需的基本活動(dòng);
管理過程:定義在生存周期過程中管理(包括項(xiàng)目管理)的基本活動(dòng);
培訓(xùn)過程:定義為提供經(jīng)過適當(dāng)培訓(xùn)的人員所需的一些活動(dòng);
過程改進(jìn)過程:定義一個(gè)組織(即需方、供方、開發(fā)者、操作者、維護(hù)者或
另一過程的管理者)為了建立、測(cè)量、控制和改進(jìn)其生存周期過程需完成的基本
活動(dòng)。
簡(jiǎn)述常見的軟件生存周期模型各自的特征和優(yōu)缺點(diǎn)。
1.瀑布模型是一種線性的開發(fā)模型,具有不可回溯性。開發(fā)人員必須等前一
階段的任務(wù)完成后,才能開始進(jìn)行后一階段的工作,并且前一階段的輸出往往就
是后一階段的輸入。由于它的不可回溯性,如果在軟件生存周期的后期發(fā)現(xiàn)并要
改正前期的錯(cuò)誤,那么需要付出很高的代價(jià)。傳統(tǒng)的瀑布模型是文檔驅(qū)動(dòng)的。瀑
布模型的優(yōu)點(diǎn)是過程模型簡(jiǎn)單,執(zhí)行容易;缺點(diǎn)是無法適應(yīng)變更。瀑布模型適應(yīng)
于具有以下特征的軟件開發(fā)項(xiàng)目。
在軟件開發(fā)的過程中,需求不發(fā)生或發(fā)生很少變化,并且開發(fā)人員可以一次
性獲取到全部需求。否則,由于瀑布模型較差的可回溯性,在后續(xù)階段中需求經(jīng)
常性的變更需要付出高昂的代價(jià)。
軟件開發(fā)人員具有豐富的經(jīng)驗(yàn),對(duì)軟件應(yīng)用領(lǐng)域很熟悉C
軟件項(xiàng)目的風(fēng)險(xiǎn)較低。瀑布模型不具有完善的風(fēng)險(xiǎn)控制機(jī)制。
2.原型模型主要用于挖掘需求,或是進(jìn)行某種技術(shù)或開發(fā)方法的可行性研究,
是一種開發(fā)人員為了快速而準(zhǔn)確地獲取需求經(jīng)常采用的方法,在初步獲取需求后,
開發(fā)人員會(huì)快速地開發(fā)一個(gè)原型系統(tǒng)。通過對(duì)原型系統(tǒng)進(jìn)行模擬操作,開發(fā)人員
可以更直觀、更全面和更準(zhǔn)確地了解用戶對(duì)待開發(fā)系統(tǒng)的各項(xiàng)要求,同時(shí)還能挖
掘到隱藏的需求。
原型模型的優(yōu)點(diǎn)是簡(jiǎn)單和快速,缺點(diǎn)是需要花費(fèi)一些額外的成本來構(gòu)造原型,
并且不利于創(chuàng)新。
3.增量模型作為瀑布模型的一個(gè)變體,具有瀑布模型的所有優(yōu)點(diǎn),此外,它
還有以下優(yōu)點(diǎn):第一個(gè)可交付版本所需要的成本和時(shí)間很少;開發(fā)由增量表示的
小系統(tǒng)所承擔(dān)的風(fēng)險(xiǎn)不大;由于很快發(fā)布了第一個(gè)版本,因此可以減少用戶需求
的變更;允許增量投資,即在項(xiàng)目開始時(shí),可以僅對(duì)一個(gè)或兩個(gè)增量投資。
增量模型的不足為:如果沒有對(duì)用戶的變更要求進(jìn)行規(guī)劃,那么產(chǎn)生的初始
增量可能會(huì)造成后來增量的不穩(wěn)定;如果需求不像早期思考的那樣穩(wěn)定和完整,
那么一些增量就可能需要重新開發(fā),重新發(fā)布;管理發(fā)生的成本、進(jìn)度和配置的
復(fù)雜性,可能會(huì)超出組織的能力。
增量模型適用于以下特點(diǎn)的軟件項(xiàng)目o
軟件產(chǎn)品可以分批次地進(jìn)行交付。
待開發(fā)的軟件系統(tǒng)能夠被模塊化。
軟件開發(fā)人員對(duì)應(yīng)用領(lǐng)域不熟悉,難以一次性地進(jìn)行系統(tǒng)開發(fā)。
項(xiàng)目管理人員對(duì)全局把握的水平較高。
4.演化模型基于這樣的假定:需求是最基本的,是唯一的風(fēng)險(xiǎn)。
演化模型具有以下優(yōu)點(diǎn):在需求不能予以規(guī)范時(shí),可以使用這一演化模型;
用戶可以通過運(yùn)行系統(tǒng)的實(shí)踐,對(duì)需求進(jìn)行改進(jìn);與瀑布模型相比,需要更多用
戶/獲取方的參與。演化模型的不足包括:演化模型的使用仍然處于初步探索階
段,因此具有較大的風(fēng)險(xiǎn),需要有利的管理;即使很好地理解了需求或設(shè)計(jì),該
模型的使用也很容易成為不編寫需求或設(shè)計(jì)文檔的借口;用戶/獲取方不理解該
方法的自然屬性,因此當(dāng)結(jié)果不夠理想時(shí),可能會(huì)產(chǎn)生抱怨C
5.螺旋模型通常用來指導(dǎo)大型軟件項(xiàng)目的開發(fā)。它把開發(fā)過程分為制定計(jì)
劃、風(fēng)險(xiǎn)分析、實(shí)施開發(fā)和用戶評(píng)估四類活動(dòng)。
螺旋模型綜合了傳統(tǒng)的生存期模型的優(yōu)點(diǎn),同時(shí)擴(kuò)展了增量模型管理任務(wù)的
范圍:風(fēng)險(xiǎn)分析,用來彌補(bǔ)其不足。螺旋模型的另外一個(gè)特征是,只有一個(gè)迭代
過程真正開發(fā)可交付的軟件。螺旋模型也存在其缺點(diǎn):一個(gè)周期執(zhí)行時(shí)間太長(zhǎng);
要有方法和自動(dòng)化工具支持,否則無法實(shí)施。
螺旋模型適應(yīng)于風(fēng)險(xiǎn)較大的大型軟件項(xiàng)S的開發(fā)。
6.統(tǒng)一過程模型具有三大特點(diǎn):用例驅(qū)動(dòng),以架構(gòu)為中心,迭代和增量開
發(fā)。統(tǒng)一過程模型核心是解決可操作性問題,幫助開發(fā)人員盡可能少地依賴那些
“不可描述的經(jīng)驗(yàn)二
可以多次執(zhí)行各個(gè)工作流程,從而有利于更好地理解需求、設(shè)計(jì)出合理的系
統(tǒng)構(gòu)架,并最終交付一系列漸趨完善的成果。適用的范圍極為廣泛。
對(duì)開發(fā)人員的素質(zhì)要求較高。統(tǒng)一過程模型在實(shí)際實(shí)施過程中也存在很多的
困難,包括:多層次持續(xù)的規(guī)劃與評(píng)估;判斷構(gòu)架中關(guān)鍵風(fēng)險(xiǎn)的經(jīng)驗(yàn);高效率的
驗(yàn)證和評(píng)價(jià)手段;多工種之間的頻繁溝通;多版本工作產(chǎn)品的管理等。
7.敏捷方法是一種輕量級(jí)的軟件工程方法,更強(qiáng)調(diào)軟件開發(fā)過程中各種變化
的必然性,通過團(tuán)隊(duì)成員之間充分的交流與溝通以及合理的機(jī)制來有效地響應(yīng)變
化。
敏捷模型避免了傳統(tǒng)的重量級(jí)軟件開發(fā)過程復(fù)雜、文檔繁瑣和對(duì)變化的適應(yīng)
性低等各種弊端,它強(qiáng)調(diào)軟件開發(fā)過程中團(tuán)隊(duì)成員之間的交流、過程的簡(jiǎn)潔性、
用戶反饋、對(duì)所作決定的信心以及人性化的特征。
缺點(diǎn):組織模型和建模方法比較薄弱。
常用的軟件工程的輔助工具有哪些?各有什么作用?
1.分析設(shè)計(jì)工具
(1)MicrosoftVisio
MicrosoftVisio通過創(chuàng)建與數(shù)據(jù)相關(guān)的Visio圖表來顯示數(shù)據(jù),這些圖表
易于刷新,并能夠顯著提高生產(chǎn)率,使用各種圖表可了解、操作和共享企業(yè)內(nèi)組
織系統(tǒng)、資源和流程的有關(guān)信息。Visio提供了各種模板:業(yè)務(wù)流程的流程圖、
網(wǎng)絡(luò)圖、工作流圖、數(shù)據(jù)庫模型圖和軟件圖,這些模板可用于可視化和簡(jiǎn)化業(yè)務(wù)
流程、跟蹤項(xiàng)目和資源、繪制組織結(jié)構(gòu)圖、映射網(wǎng)絡(luò)、繪制建筑地圖以及優(yōu)化系
統(tǒng)。
(2)RationalRose
RationalRose是美國的Rational公司的面向?qū)ο蠼9ぞ?,利用這個(gè)工
具,可以建立用UML描述的軟件系統(tǒng)的模型,而且可以自動(dòng)生成和維護(hù)C++、Java、
VB和Oracle等語言和系統(tǒng)的代碼。RationalRose包括了統(tǒng)一建模語言(UML),
OOSE,以及OMT,是一個(gè)完全的,具有能滿足所有建模環(huán)境需求能力和靈活性的
一套解決方案。允許開發(fā)人員,項(xiàng)目經(jīng)理,系統(tǒng)工程師和分析人員在軟件開發(fā)周
期內(nèi)在將需求和系統(tǒng)的體系架構(gòu)轉(zhuǎn)換成代碼,消除浪費(fèi)的消耗,對(duì)需求和系統(tǒng)的
體系架構(gòu)進(jìn)行可視化,理解和精練。
(3)Together
Together是由Borland公司發(fā)布的集成了JavaIDE的產(chǎn)品線,源于JBuilder
中的UML建模工具。這條產(chǎn)品線提供了不同應(yīng)用層次的功能,比如Together
Designer,TogetherArchitect,TogetherDeveloper。從2007年開始,他們
將這些功能合并為一個(gè)產(chǎn)品進(jìn)行發(fā)布。技術(shù)上講,Together是一組Eclipse插
件。TogetherDeploper使用UML1.4,支持多種語言,物理數(shù)據(jù)建模,設(shè)計(jì)模
式,源代碼設(shè)計(jì)模式識(shí)別,模板代碼設(shè)計(jì)和重用,文件生成等。
(4)PowerDesigner
PowerDesigner是Sybase公司的CASE工具集,提供了一個(gè)復(fù)雜的交互環(huán)境,
支持開發(fā)生存周期的所有階段,從處理流程建模到對(duì)象和組件的生成。利用
PowerDesigner可以制作數(shù)據(jù)流程圖、概念數(shù)據(jù)模型、物理數(shù)據(jù)模型,可以生成
多種客戶端開發(fā)工具的應(yīng)用程序,還可為數(shù)據(jù)倉庫制作結(jié)構(gòu)模型,也能對(duì)團(tuán)隊(duì)設(shè)
計(jì)模型進(jìn)行控制。PowerDesigner系列產(chǎn)品提供了一個(gè)完整的建模解決方案,業(yè)
務(wù)或系統(tǒng)分析人員,設(shè)計(jì)人員,數(shù)據(jù)庫管理員DBA和開發(fā)人員可以對(duì)其裁剪以滿
足他們的特定的需要;而其模塊化的結(jié)構(gòu)為購買和擴(kuò)展提供了極大的靈活性,從
而使開發(fā)單位可以根據(jù)其項(xiàng)目的規(guī)模和范圍來使用他們所需要的工具。
(5)CASEStudio
CASEstudio是一個(gè)專業(yè)的數(shù)據(jù)庫設(shè)計(jì)工具??梢酝高^ER圖表、資料流向
圖來設(shè)計(jì)各式各樣的數(shù)據(jù)庫系統(tǒng)(像是mssql,oracle,Sybase等),另外程式
提供了各式各樣的管理單元幫助程序員進(jìn)行設(shè)計(jì)。
2.程序開發(fā)工具
(1)MicrosoftVisualStudio
MicrosoftVisualStudio是微軟公司推出的Windows平臺(tái)上的集成開發(fā)環(huán)
境。提供了高級(jí)開發(fā)工具、調(diào)試功能、數(shù)據(jù)庫功能和創(chuàng)新功能,幫助在各種平臺(tái)
上快速創(chuàng)建應(yīng)用程序。VisualStudio包括各種增強(qiáng)功能,例如可視化設(shè)計(jì)器、
對(duì)Web開發(fā)工具的大量改進(jìn),以及能夠加速開發(fā)和處理所有類型數(shù)據(jù)的語言增強(qiáng)
功能,為開發(fā)人員提供了所有相關(guān)的工具和框架支持。
(2)Eclipse
Eclipse是一個(gè)開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺(tái)。最初是由IBM
公司開發(fā)的替代商業(yè)軟件VisualAgeforJava的下-一代DE開發(fā)環(huán)境,2001
年11月貢獻(xiàn)給開源社區(qū),現(xiàn)在它由非營利軟件供應(yīng)商聯(lián)盟Eclipse基金會(huì)管理。
Eclipse的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持使得Eclipse擁有其他
功能相對(duì)固定的IDE軟件很難具有的靈活性。許多軟件開發(fā)商以Eclipse為框架
開發(fā)自己的IDE。
(3)NetBeans
NetBeans由Sun公司在2000年創(chuàng)立,當(dāng)前可以在Solaris、Windows、Linux
和MacintoshOSX平臺(tái)上進(jìn)行開發(fā),并在Sun公用許可范圍內(nèi)使用。NetBeans
是一個(gè)全功能的開放源碼JavaIDE,可以幫助開發(fā)人員編寫、編譯、調(diào)試和部
署Java應(yīng)用,并將版本控制和XML編輯融入其眾多功能之中。NetBeans可支持
Java2平臺(tái)標(biāo)準(zhǔn)版(J2SE)應(yīng)用的創(chuàng)建、采用JSP和Servlet的2層Web應(yīng)用的
創(chuàng)建,以及用于2層Web應(yīng)用的API及軟件的核心組的創(chuàng)建。此外,NetBeans
還預(yù)裝了兩個(gè)Web服務(wù)器,即Tomcat和GlassFish,從而免除了繁瑣的配置和
安裝過程。
(4)Delphi
Delphi是Borland公司研制的可視化開發(fā)工具,可在Windows3.x、Windows95、
WindowsNT、WindowsXP、WindowsVista等環(huán)境下使用。Delphi擁有一個(gè)可視化
的集成開發(fā)環(huán)境,采用面向這象的編程語言O(shè)bjectPascal和基于部件的開發(fā)結(jié)
構(gòu)框架。它提供了500多個(gè)可供使用的構(gòu)件,利用這些部件,開發(fā)人員可以快速
地構(gòu)造出應(yīng)用系統(tǒng)。開發(fā)人員也可以根據(jù)自己的需要修改部件或用Delphi本身
編寫自己的部件。
(5)DevC++
DevC++是一個(gè)C&C++開發(fā)工具,它是一款自由軟件,遵守GPL協(xié)議。它集
合了GCC、MinGW32等眾多自由軟件,并且可以取得最新版本的各種工具支持。
它使用MingW32/GCC編譯器,遵循C/C++標(biāo)準(zhǔn)。開發(fā)環(huán)境包括多頁面窗口、工程
編輯器以及調(diào)試器等,在工程編輯器中集合了編輯器、編譯器、連接程序和執(zhí)行
程序,提供高亮度語法顯示的,以減少編輯錯(cuò)誤,還有完善的調(diào)試功能。
3.測(cè)試工具
(1)LoadRunner
LoadRunner是一種預(yù)測(cè)系統(tǒng)行為和性能的工業(yè)標(biāo)準(zhǔn)級(jí)負(fù)載測(cè)試工具。通過
以模擬上千萬用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來確認(rèn)和查找問題。它能
預(yù)測(cè)系統(tǒng)行為并優(yōu)化系統(tǒng)性能。LoadRunner的測(cè)試對(duì)象是整個(gè)企業(yè)的系統(tǒng),它
通過模擬實(shí)際用戶的操作行為實(shí)行實(shí)時(shí)性能監(jiān)測(cè)。
(2)WinRnnner
MercuryInteractive公司的WinRunner是一種企業(yè)級(jí)的功能測(cè)試工具,用
于檢測(cè)應(yīng)用程序是否能夠達(dá)到預(yù)期的功能及正常運(yùn)行。通過自動(dòng)錄制、檢測(cè)和回
放用戶的應(yīng)用操作,WinRunner能夠有效地幫助測(cè)試人員對(duì)復(fù)雜的企業(yè)級(jí)應(yīng)用的
不同發(fā)布版進(jìn)行測(cè)試,提高測(cè)試人員的工作效率和質(zhì)量,確保跨平臺(tái)的、復(fù)雜的
企業(yè)級(jí)應(yīng)用無故障發(fā)布及長(zhǎng)期穩(wěn)定運(yùn)行。
(3)Segue
SegueSilk產(chǎn)品系列是高度集成的自動(dòng)化黑盒功能、性能測(cè)試平臺(tái)。分布
式測(cè)試環(huán)境,集中控制門戶(瀏覽器方式)能夠控制測(cè)試代理,提供自動(dòng)測(cè)試流
程的流程化定義功能,具備〃端到端〃的組件測(cè)試能力,測(cè)試用例的管理、自動(dòng)測(cè)
試,連同測(cè)試腳本的跨平臺(tái)能力,基于A0L7標(biāo)準(zhǔn),全面支持WEB應(yīng)用的測(cè)試能
力,能夠通過提供大量的數(shù)據(jù),提供工作流類應(yīng)用的模擬運(yùn)行功能,全面支持
UNICODE編碼標(biāo)準(zhǔn),支持各種WEB技術(shù)構(gòu)件。
4.配置管理工具
(1)MicrosoftVisualSourcesafe
MicrosoftVisualSourceSafe是微軟公司出品的版本控制系統(tǒng),簡(jiǎn)稱VSS。
軟件支持Windows系統(tǒng)所支持的所有文件格式,通常與微軟公司的Visual
Studio產(chǎn)品同時(shí)發(fā)布,并且高度集成。包括服務(wù)器和通過網(wǎng)絡(luò)可以連接服務(wù)器
的客戶端。VSS提供了基本的認(rèn)證安全和版本控制機(jī)制,提供歷史版本對(duì)比,適
合于個(gè)人程序開發(fā)的版本管理。
(2)ClearCase
ClearCase是Rational公司開發(fā)的配置管理工具,可以與Windows資源管
理器集成使用,并且還可以與很多開發(fā)工具集成在一起使用。ClearCase主要應(yīng)
用于復(fù)雜的產(chǎn)品發(fā)放、分布式團(tuán)隊(duì)合作、并行的開發(fā)和維護(hù)任務(wù),包括支持當(dāng)今
流行軟件開發(fā)環(huán)境Client/Server網(wǎng)絡(luò)結(jié)構(gòu)。它包含了一套完整的軟件配置管理
工具而且結(jié)構(gòu)透明、界面可親。
5.項(xiàng)目管理工具
(1)MicrosoftProject
MicrosoftProject是專案管理軟件程序,由微軟開發(fā)銷售。軟件設(shè)計(jì)目的
在于協(xié)助專案經(jīng)理發(fā)展計(jì)劃、為任務(wù)分配資源、跟蹤進(jìn)度、管理預(yù)算和分析工作
量??僧a(chǎn)生關(guān)鍵路徑日程表,日程表可以以資源標(biāo)準(zhǔn)的,而且關(guān)鍵鏈以甘特圖形
象化。另外,Project可以辨認(rèn)不同類別的用戶。這些不同類的用戶對(duì)專案、概
觀、和其它資料有不同的訪問級(jí)別。
(2)CA-SuperProject
ComputerAssociatesInternational公司的CA-SuperProject是一個(gè)常用
的軟件,特別是在那些管理公司網(wǎng)絡(luò)的項(xiàng)目管理人員、在Unix或Windows環(huán)境
下的工作人員以及需要高性能程序的人中更受歡迎。這個(gè)軟件包能支持多達(dá)160,
000多個(gè)任務(wù)的大型項(xiàng)目。能創(chuàng)建及合并多個(gè)項(xiàng)目文件,為網(wǎng)絡(luò)工作者提供多層
密碼入口,進(jìn)行計(jì)劃審評(píng)法(PERT)的概率分析。而且,這一程序包含一個(gè)資源
平衡算法,在必要時(shí),可以保證重要工作的優(yōu)先性。
(3)TimeLine
Symantec公司的TimeLine軟件是有經(jīng)驗(yàn)的項(xiàng)目經(jīng)理的首選。它的報(bào)表功
能以及與SQL數(shù)據(jù)庫的連接功能都很突出。日程表、電子郵件的功能,排序和篩
選能力以及多項(xiàng)目處理都是精心設(shè)計(jì)的。另外,它還有一個(gè)叫做Co-Pilot的功
能,這是一個(gè)很有用的推出式幫助設(shè)施,用戶界面很好,極易操作。許多評(píng)論人
員認(rèn)為TimeLine最適于大型項(xiàng)目以及多任務(wù)項(xiàng)目,但不如其他軟件包便于初學(xué)
者使用。
2練習(xí)題
什么是項(xiàng)目立項(xiàng),包括哪兒個(gè)步驟?
任何一個(gè)完整的軟件工程項(xiàng)目都是從項(xiàng)目立項(xiàng)開始的。項(xiàng)目立項(xiàng)包括項(xiàng)目發(fā)
起、項(xiàng)目論證、項(xiàng)目審核和項(xiàng)目立項(xiàng)四個(gè)過程。
可行性研究包括哪些方面?每個(gè)方面關(guān)注的問題領(lǐng)域是什么?
可行性研究需要從多個(gè)方面進(jìn)行評(píng)估,主要包括:戰(zhàn)略可行性、操作可行性、
計(jì)劃可行性、技術(shù)可行性、社會(huì)可行性、市場(chǎng)可行性、經(jīng)濟(jì)可行性和風(fēng)險(xiǎn)可行性
等。
戰(zhàn)略可行性研究主要從整體的角度考慮項(xiàng)目是否可行,例如提出的系統(tǒng)對(duì)組
織目標(biāo)具有怎樣的貢獻(xiàn);新系統(tǒng)對(duì)目前的部門和組織結(jié)構(gòu)有何影響;系統(tǒng)將以何
種方式影響人力水平和現(xiàn)存雇員的技術(shù);它對(duì)組織整個(gè)人員開發(fā)策略有何影響等
等。
操作可行性研究主要考慮系統(tǒng)是否能夠真正解決問題;是否系統(tǒng)一旦安裝后,
有足夠的人力資源來運(yùn)行系統(tǒng);用戶對(duì)新系統(tǒng)具有抵觸情緒是否可能使操作不可
行;人員的可行性等問題。
計(jì)劃可行性研究主要估計(jì)項(xiàng)目完成所需的時(shí)間并評(píng)估項(xiàng)目的時(shí)間是否足夠。
技術(shù)可行性研究主要考慮項(xiàng)目使用技術(shù)的成熟程度;與競(jìng)爭(zhēng)者的技術(shù)相比,
所采用技術(shù)的優(yōu)勢(shì)及缺陷;技術(shù)轉(zhuǎn)換成本;技術(shù)發(fā)展趨勢(shì)及所采用技術(shù)的發(fā)展前
景;技術(shù)選擇的制約條件等。
社會(huì)可行性研究主要考慮項(xiàng)目是否滿足所有項(xiàng)目涉及者的利益;是否滿足法
律或合同的要求等。
市場(chǎng)可行性研究主要包括研究市場(chǎng)發(fā)展歷史與發(fā)展趨勢(shì),說明本產(chǎn)品處于市
場(chǎng)的什么發(fā)展階段;本產(chǎn)品和同類產(chǎn)品的價(jià)格分析;統(tǒng)計(jì)當(dāng)前市場(chǎng)的總額、競(jìng)爭(zhēng)
對(duì)手所占的份額,分析本產(chǎn)品能占多少份額;產(chǎn)品消費(fèi)群體特征、消費(fèi)方式以及
影響市場(chǎng)的因素分析;分析競(jìng)爭(zhēng)對(duì)手的市場(chǎng)狀況;分析競(jìng)爭(zhēng)對(duì)手在研發(fā)、銷售、
資金、品牌等方面的實(shí)力;分析自己的實(shí)力等。
經(jīng)濟(jì)可行性研究主要是把系統(tǒng)開發(fā)和運(yùn)行所需要的成本與得到的效益進(jìn)行
比較,進(jìn)行成本效益分析。
風(fēng)險(xiǎn)可行性研究主要是考慮項(xiàng)目在實(shí)施過程中可能遇到的各種風(fēng)險(xiǎn)因素,以
及每種風(fēng)險(xiǎn)因素可能出現(xiàn)的概率和出險(xiǎn)后造成的影響程度。
進(jìn)行可行性研究的一般步驟是什么?
明確系統(tǒng)的目標(biāo)
分析研究現(xiàn)行系統(tǒng)
設(shè)計(jì)新系統(tǒng)的高層邏輯模型
獲得并比較可行的方案
撰寫可行性研究報(bào)告
需求分析和可行性研究的側(cè)重點(diǎn)有什么不同?
可行性研究的目的是評(píng)估系統(tǒng)是否值得去開發(fā),問題是否能夠解決,而不是
對(duì)需求進(jìn)行定義。如果說可行性分析是要決定“做還是不做”,那么需求分析就
是要回答“系統(tǒng)必須做什么”這個(gè)問題。
獲取需求的常用方法有哪些?
問卷調(diào)查、訪談、實(shí)地操作、建立原型
如何進(jìn)行結(jié)構(gòu)化需求分析,其建模方法都有哪些?
結(jié)構(gòu)化分析的具體步驟為:
建立當(dāng)前系統(tǒng)的“具體模型”:系統(tǒng)的“具體模型”就是現(xiàn)實(shí)環(huán)境的忠實(shí)寫
照,這樣的表達(dá)與當(dāng)前系統(tǒng)完全對(duì)應(yīng),因此用戶容易理解。
抽象出當(dāng)前系統(tǒng)的邏輯模型:分析系統(tǒng)的“具體模型”,抽象出其本質(zhì)的因
素,排除次要因素,獲得當(dāng)前系統(tǒng)的“邏輯模型二
建立目標(biāo)系統(tǒng)的邏輯模型:分析目標(biāo)系統(tǒng)與當(dāng)前系統(tǒng)邏輯上的差別,從而進(jìn)
一步明確目標(biāo)系統(tǒng)“做什么”,建立目標(biāo)系統(tǒng)的“邏輯模型,
為了對(duì)目標(biāo)系統(tǒng)進(jìn)行完整的描述,還需要考慮人機(jī)界面向其他一些問題。
在結(jié)構(gòu)化分析中經(jīng)常用到的建模方法主要有:
數(shù)據(jù)流圖(DFD)
實(shí)體聯(lián)系圖(E-R)
控制流圖(CFD)
狀態(tài)遷移圖(STD)
根據(jù)“學(xué)生檔案管理系統(tǒng)”的數(shù)據(jù)流圖,完成它的數(shù)據(jù)字典。
數(shù)據(jù)流名稱:資料
別名:學(xué)生資料
組成:學(xué)號(hào)+姓名+性別+年齡+學(xué)院+年級(jí)+專業(yè)
有如下一個(gè)學(xué)生選課系統(tǒng):教師提出開課計(jì)劃,系統(tǒng)批準(zhǔn)后給教師下發(fā)開課
通知。學(xué)生可向系統(tǒng)提出選課申請(qǐng),系統(tǒng)批準(zhǔn)后給學(xué)生下發(fā)選課申請(qǐng)結(jié)果通知。
課程結(jié)束后,系統(tǒng)還可以幫助教師錄入學(xué)生成績(jī),同時(shí)把成績(jī)單發(fā)送給學(xué)生。
請(qǐng)用Visio畫出該系統(tǒng)頂層的數(shù)據(jù)流圖。
軟件設(shè)計(jì)的意義和目標(biāo)是什么?
軟件設(shè)計(jì)在軟件開發(fā)過程中處于核心地位,它是保證質(zhì)量的關(guān)鍵步驟。設(shè)計(jì)
為我們提供了可以用于質(zhì)量評(píng)估的軟件表示,設(shè)計(jì)是我們能夠?qū)⒂脩粜枨鬁?zhǔn)確的
轉(zhuǎn)化為軟件產(chǎn)品或系統(tǒng)的唯一方法。軟件設(shè)計(jì)是所有軟件工程活動(dòng)和隨后的軟件
支持活動(dòng)的基礎(chǔ)。
在軟件設(shè)計(jì)的過程中要遵循哪些規(guī)則?
模塊化
抽象化
逐步求精
信息隱藏
軟件設(shè)計(jì)如何分類,分別有哪些活動(dòng)?
從活動(dòng)任務(wù)來看,軟件設(shè)計(jì)是對(duì)軟件需求進(jìn)行:數(shù)據(jù)設(shè)計(jì)、體系結(jié)構(gòu)設(shè)計(jì)、
接口設(shè)計(jì)、構(gòu)件設(shè)計(jì)和部署設(shè)計(jì)。
從工程管理角度來看,軟件設(shè)計(jì)分為概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。前期進(jìn)行概要設(shè)
計(jì),得到軟件系統(tǒng)的基本框架。后期進(jìn)行詳細(xì)設(shè)計(jì),明確系統(tǒng)內(nèi)部的實(shí)現(xiàn)細(xì)節(jié)。
什么是軟件體系結(jié)構(gòu),什么是軟件體系結(jié)構(gòu)風(fēng)格?
體系結(jié)構(gòu)是研究系統(tǒng)各部分組成及相互關(guān)系的技術(shù)學(xué)科。軟件體系結(jié)構(gòu)不僅
指定了系統(tǒng)的組織結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu),也顯示了系統(tǒng)需求和構(gòu)成系統(tǒng)的元素之間的
對(duì)應(yīng)關(guān)系,提供了一些設(shè)計(jì)決策的基本原理。
所謂軟件體系結(jié)構(gòu)風(fēng)格,是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模
式。
軟件體系結(jié)構(gòu)風(fēng)格反映了領(lǐng)域中眾多系統(tǒng)所共有的結(jié)構(gòu)和語義特性,并指導(dǎo)
如何將各個(gè)模塊和子系統(tǒng)有效地組織成一個(gè)完整的系統(tǒng)。
軟件體系結(jié)構(gòu)風(fēng)格定義了用于描述系統(tǒng)的術(shù)語表和一組指導(dǎo)構(gòu)件系統(tǒng)的規(guī)
則。
常見的軟件體系結(jié)構(gòu)風(fēng)格有哪些,如何分類?
1數(shù)據(jù)流風(fēng)格:數(shù)據(jù)到達(dá)即被激活處理工作,無數(shù)據(jù)時(shí)不工作。
2調(diào)用/返回風(fēng)格:各個(gè)組件通過調(diào)用其它組件和獲得返回參數(shù)來進(jìn)行交互,
配合完成功能。
3獨(dú)立構(gòu)件風(fēng)格:這種風(fēng)格的主要特點(diǎn)是:事件的觸發(fā)者并不知道哪些構(gòu)件
會(huì)被這些事件影響,相互保持獨(dú)立這樣不能假定構(gòu)件的處理順序,甚至不知道哪
些過程會(huì)被調(diào)用;各個(gè)構(gòu)件之間彼此無連接關(guān)系,各自獨(dú)立存在,通過對(duì)事件的
發(fā)布和注冊(cè)實(shí)現(xiàn)關(guān)聯(lián)包括進(jìn)程通訊、事件系統(tǒng)。
4虛擬機(jī)風(fēng)格:它創(chuàng)建了一種虛擬的環(huán)境,將用戶與底層平臺(tái)隔離開來,或
者將高層抽象和底層實(shí)現(xiàn)隔離開來。
5倉庫風(fēng)格:倉庫是存儲(chǔ)和維護(hù)數(shù)據(jù)的中心場(chǎng)所。在倉庫風(fēng)格中存在兩類構(gòu)
件,表示當(dāng)前數(shù)據(jù)的狀態(tài)的中心數(shù)據(jù)結(jié)構(gòu)和一組對(duì)中心數(shù)據(jù)進(jìn)行操作的獨(dú)立構(gòu)
件。包括數(shù)據(jù)庫系統(tǒng)、超文本系統(tǒng)、黑板系統(tǒng)。
面向數(shù)據(jù)流的設(shè)計(jì)方法的主要思想是什么?
面向數(shù)據(jù)流的設(shè)計(jì)方法就是通常所說的結(jié)構(gòu)化設(shè)計(jì)方法,它以數(shù)據(jù)流圖為基
礎(chǔ),把DFD變換成軟件結(jié)構(gòu)的不同映射方法,以軟件結(jié)構(gòu)圖(SC圖)的形式表
現(xiàn)。SC圖描述軟件系統(tǒng)的層次和分塊結(jié)構(gòu)關(guān)系,體現(xiàn)模塊與模塊之間的聯(lián)系與
通訊,從而表達(dá)軟件的體系結(jié)構(gòu)。
什么是內(nèi)聚、耦合,包括哪些常見類型?
內(nèi)聚指的是一個(gè)模塊內(nèi)部各組成部分的處理動(dòng)作的組合強(qiáng)度,又稱塊內(nèi)聯(lián)系。
包括幾種內(nèi)聚類型:
偶然內(nèi)聚:模塊內(nèi)各成分無實(shí)質(zhì)性的聯(lián)系,只是偶然地被湊到一起;
邏輯內(nèi)聚:模塊內(nèi)部各組成部分的處理動(dòng)作在邏輯上相似,但功能卻彼此不
同或無關(guān);
時(shí)間內(nèi)聚:將若干在同一個(gè)時(shí)間帶內(nèi)進(jìn)行的工作集中在一個(gè)模塊內(nèi),但這些
工作彼此無關(guān);
過程內(nèi)聚:模塊內(nèi)部包含的各個(gè)成分按照某種確定的順序進(jìn)行,但所做工作
沒有什么關(guān)系;
通訊內(nèi)聚:模塊內(nèi)的各個(gè)組成部分都使用相同的輸入數(shù)據(jù)或產(chǎn)生相同的輸出
數(shù)據(jù);
順序內(nèi)聚:模塊中各個(gè)組成部分順序執(zhí)行,前一個(gè)成分的輸出就是后一個(gè)成
分的輸入;
功能內(nèi)聚:模塊內(nèi)的各個(gè)組成部分全都為完成同一個(gè)功能而存在,共同完成
一個(gè)單一的功能,并且只完成一個(gè)功能。
耦合指的是兩個(gè)模塊之間的相互依賴關(guān)系,又稱塊間聯(lián)系。包括以下幾種類
型的偶合:
非直接耦合:調(diào)用和被調(diào)用模塊之間不存在直接的數(shù)據(jù)聯(lián)系;
數(shù)據(jù)耦合:調(diào)用和被調(diào)用模塊之間存在簡(jiǎn)單變量這樣的數(shù)據(jù)傳遞;
特征耦合:調(diào)用和調(diào)用模塊之間存在諸如數(shù)組這樣的數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)傳遞;
控制耦合:耦合的模塊之間傳遞的不是數(shù)據(jù)信息,而是控制信息,或稱開關(guān)
量或標(biāo)志量;
外部耦售:允許多個(gè)模塊訪問同一個(gè)全局變量;
公共耦合:允許多個(gè)模塊訪問同一個(gè)全局性數(shù)據(jù)結(jié)構(gòu);
內(nèi)容耦合:允許一個(gè)模塊直接調(diào)用另一個(gè)模塊中的數(shù)據(jù)。
詳細(xì)設(shè)計(jì)時(shí),應(yīng)該完成哪些工作?
軟件詳細(xì)設(shè)計(jì)包括數(shù)據(jù)設(shè)計(jì)、界面設(shè)計(jì)和構(gòu)件設(shè)計(jì)
數(shù)據(jù)庫設(shè)計(jì)有哪些步驟,每一步的主要工作是什么?
需求分析;調(diào)查和分析用戶的業(yè)務(wù)活動(dòng)和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的
種類、范圍、數(shù)量以及它們?cè)跇I(yè)務(wù)活動(dòng)中交流的情況,確定用戶對(duì)數(shù)據(jù)庫系統(tǒng)的
使用要求和各種約束條件等,形成用戶需求規(guī)約。
概念設(shè)計(jì);對(duì)用戶要求描述的現(xiàn)實(shí)世界(可能是一個(gè)工廠、一個(gè)商場(chǎng)或者一
個(gè)學(xué)校等),通過對(duì)其中住處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。
這個(gè)概念模型應(yīng)反映現(xiàn)實(shí)世界各部門的信息結(jié)構(gòu)、信息流動(dòng)情況、信息間的互相
制約關(guān)系以及各部門對(duì)信息儲(chǔ)存、查詢和加工的要求等。所建立的模型應(yīng)避開數(shù)
據(jù)庫在計(jì)算機(jī)上的具體實(shí)現(xiàn)細(xì)節(jié),用一種抽象的形式表示出天。以擴(kuò)充的實(shí)體一
聯(lián)系模型(E-R模型)方法為例,第一步先明確現(xiàn)實(shí)世界各部門所含的各種實(shí)體
及其屬性、實(shí)體間的聯(lián)系以及對(duì)信息的制約條件等,從而給出各部門內(nèi)所用信息
的局部描述(在數(shù)據(jù)庫中稱為用戶的局部視圖)。第二步再將前面得到的多個(gè)用戶
的局部視圖集成為一個(gè)全局視圖,即用戶要描述的現(xiàn)實(shí)世界的概念數(shù)據(jù)模型。
邏輯設(shè)計(jì);主要工作是將現(xiàn)實(shí)世界的概念數(shù)據(jù)模型設(shè)計(jì)成數(shù)據(jù)庫的一種邏輯
模式,即適應(yīng)于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時(shí),可
能還需為各種數(shù)據(jù)處理應(yīng)用領(lǐng)域產(chǎn)生相應(yīng)的邏輯子模式。這一步設(shè)計(jì)的結(jié)果就是
所謂“邏輯數(shù)據(jù)庫二
物理設(shè)計(jì);根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲(chǔ)結(jié)構(gòu)和存取方法等依
賴于具體計(jì)算機(jī)結(jié)構(gòu)的各項(xiàng)物理設(shè)計(jì)措施,對(duì)具體的應(yīng)用任務(wù)選定最合適的物理
存儲(chǔ)結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和
存取路徑等。這一步設(shè)計(jì)的結(jié)果就是所謂“物理數(shù)據(jù)庫”。
驗(yàn)證設(shè)計(jì);在上述設(shè)計(jì)的基礎(chǔ)上,收集數(shù)據(jù)并具體建立一個(gè)數(shù)據(jù)庫,運(yùn)行一
些典型的應(yīng)用任務(wù)來驗(yàn)證數(shù)據(jù)庫設(shè)計(jì)的正確性和合理性。一般,一個(gè)大型數(shù)據(jù)庫
的設(shè)計(jì)過程往往需要經(jīng)過多次循環(huán)反復(fù)。當(dāng)設(shè)計(jì)的某步發(fā)現(xiàn)問題時(shí),可能就需要
返回到前面去進(jìn)行修改。因此,在做上述數(shù)據(jù)庫設(shè)計(jì)時(shí)就應(yīng)考慮到今后修改設(shè)計(jì)
的可能性和方便性。
如何進(jìn)行E-R模型到關(guān)系模型的轉(zhuǎn)換?
規(guī)則1(實(shí)體類型的轉(zhuǎn)換):將每個(gè)實(shí)體類型轉(zhuǎn)換成一個(gè)關(guān)系模式,實(shí)體的
屬性即為關(guān)系模式的屬性,實(shí)體標(biāo)識(shí)符即為關(guān)系模式的鍵。
規(guī)則2(二元聯(lián)系類型的轉(zhuǎn)換)
若實(shí)體間聯(lián)系是1:1:隱含在實(shí)體對(duì)應(yīng)的關(guān)系中;
若實(shí)體間聯(lián)系是1:N:隱含在實(shí)體對(duì)應(yīng)的關(guān)系中;
若實(shí)體間聯(lián)系是M:N:直接用關(guān)系表示。
界面設(shè)計(jì)應(yīng)該遵循H么原則?
置用戶于控制之下:以不強(qiáng)迫用戶進(jìn)入不必要的或不希望的動(dòng)作的方式來定
義交互模式;提供靈活的交互;允許用戶交互可以被中斷和撤銷;當(dāng)技能級(jí)別增
長(zhǎng)時(shí)可以使交互流水化并允許定制交互;使用戶隔離內(nèi)部技犬細(xì)節(jié);設(shè)計(jì)應(yīng)允許
用戶和出現(xiàn)在屏幕上的對(duì)象直接交互。
減少用戶的記憶負(fù)擔(dān):減少對(duì)短期記憶的要求;建立有意義的缺??;定義直
覺性的捷徑;界面的視覺布局應(yīng)該基于真實(shí)世界的隱喻;以不斷進(jìn)展的方式揭示
信息。
保持界面一致:允許用戶將當(dāng)前任務(wù)放入有意義的語境;在應(yīng)用系列內(nèi)保持
一致性;如果過去的交互模式已經(jīng)建立起了用戶期望,不要改變它,除非有不得
己的理由。
構(gòu)件設(shè)計(jì)有哪些設(shè)計(jì)工具?
流程圖、N-S圖、PAD圖、決策表與決策樹、偽代碼
利用Visio實(shí)現(xiàn)3.5o
程序設(shè)計(jì)語言的發(fā)展經(jīng)歷了哪幾個(gè)階段?每個(gè)階段語言的特點(diǎn)是什么?
機(jī)器語言是計(jì)算機(jī)可以直接識(shí)別、執(zhí)行的指令代碼,它是計(jì)算機(jī)發(fā)展早期的
語言。由于機(jī)器指令直接操縱計(jì)算機(jī)硬件的執(zhí)行,所以不同結(jié)構(gòu)的計(jì)算機(jī)有不同
的機(jī)器語言。用機(jī)器語言編碼時(shí)必須考慮到機(jī)器的實(shí)現(xiàn)細(xì)節(jié),所以它的編程效率
極低,而且很難掌握。
匯編語言用一組助記符來代替機(jī)器語言中晦澀、難懂的二進(jìn)制代碼,使得代
碼比較直觀,易于程序員理解。在執(zhí)行時(shí),匯編語言必須由特定的翻譯程序轉(zhuǎn)化
為機(jī)器語言,才能由計(jì)算機(jī)執(zhí)行。可以說,每種匯編語言都是支持這種語言的計(jì)
算機(jī)獨(dú)有的,所以它與機(jī)器語言一樣都是“面向機(jī)器”的低級(jí)語言。由于匯編語
言的抽象層次太低,所以程序員在使用時(shí)需要考慮大量的機(jī)器細(xì)節(jié)。
高級(jí)語言出現(xiàn)于20世紀(jì)50年代,它不僅在語義上更易亍程序員理解,而且
在實(shí)現(xiàn)上也不再依賴于特定的計(jì)算機(jī)硬件。它為程序員的編碼工作提供了方便,
同時(shí)大大提高了軟件的生產(chǎn)效率。
第四代語言是超高級(jí)語言,它是對(duì)數(shù)據(jù)處理和過程描述的更高級(jí)的抽象,一
般由特定的知識(shí)庫和方法庫支持,比如與數(shù)據(jù)庫應(yīng)用相關(guān)的查詢語言,描述數(shù)據(jù)
結(jié)構(gòu)和處理過程的圖形語言等,它們的目的在于直接實(shí)現(xiàn)各種應(yīng)用系統(tǒng)。
面向?qū)ο蟮母呒?jí)語言中包含哪些基本概念?
封裝、繼承、多態(tài)
3)你了解的程序設(shè)計(jì)語言都有哪些?
(1)Fortran語言
Fortran語言出現(xiàn)于1954年,是世界上最早的高級(jí)語言,廣泛應(yīng)用于科學(xué)
和工程計(jì)算領(lǐng)域。Fortran語言以其特有的功能在數(shù)值、科學(xué)和工程計(jì)算領(lǐng)域發(fā)
揮著重要作用。
(2)Pascal語言
Pascal語言是最早的結(jié)溝化編程語言,常用于算法和數(shù)據(jù)結(jié)構(gòu)的描述。用
Pascal編寫的程序有一種結(jié)構(gòu)化的美感,學(xué)習(xí)Pascal語言有助于培養(yǎng)良好的程
序設(shè)計(jì)風(fēng)格和編程習(xí)慣。
(3)Basic語言
Basic相對(duì)于其他編程語言來說簡(jiǎn)單易用,并具有“人機(jī)會(huì)話”功能,是一
種比較適合于初學(xué)者和愛好編程的非專業(yè)人士的語言。但是其簡(jiǎn)單與隨意的特性
也容易讓使用者養(yǎng)成不好的編程習(xí)慣。
(4)Cobol語言
Cobol語言是最接近于自然語言的高級(jí)語言之一,它使用了300多個(gè)英文保
留字,語法規(guī)則嚴(yán)格,程序通俗易懂,是一種功能很強(qiáng)而又極為冗長(zhǎng)的語言。常
用于商業(yè)數(shù)據(jù)處理等領(lǐng)域。
(5)C語言
C語言兼顧高級(jí)語言和匯編語言的特點(diǎn),靈活性很好,效率高,常用來開發(fā)
比較底層的軟件。例如,Linux操作系統(tǒng)就是用C語言編寫的。要充分掌握該語
言需要一定的計(jì)算機(jī)基礎(chǔ)和編程經(jīng)驗(yàn),所以雖然現(xiàn)在很多高校選擇C語言作為入
門編程語言,但它并不十分適合初學(xué)者。
(6)C++語言
C++語言在C語言的基礎(chǔ)上加入了面向?qū)ο蟮奶匦?,既支持結(jié)構(gòu)化編程又支
持面向?qū)ο缶幊淌蛊鋺?yīng)用領(lǐng)域十分廣泛,是現(xiàn)在使用較多的語言之一。
(7)Java語言
Java語言是現(xiàn)在非常流行的一種編程語言,具有平臺(tái)無關(guān)性、安全性、面
向?qū)ο蟆⒎植际?、健壯性等特點(diǎn)。Java分為3個(gè)體系JavaSE、JavaEE和JavaME,
適合企業(yè)應(yīng)用程序和各種網(wǎng)絡(luò)程序的開發(fā)。
(8)Delphi語言
Delphi語言以Pascal語言為基礎(chǔ),擴(kuò)充了面向?qū)ο蟮哪芰?,并加入了可?/p>
化的開發(fā)手段,用于開發(fā)Windows環(huán)境下的應(yīng)用程序。
(9)C#語言
C#語言是微軟公司發(fā)布的一種面向?qū)ο蟮?、運(yùn)行于.NETFramework之上的
高級(jí)程序設(shè)計(jì)語言,它充分借鑒了C++,Java和Delphi的優(yōu)點(diǎn),是現(xiàn)在微軟.NET
Windows網(wǎng)絡(luò)框架的主角。
(10)標(biāo)記語言
標(biāo)記語言主要用來描述網(wǎng)頁的數(shù)據(jù)和格式,沒有傳統(tǒng)編程語言提供的控制結(jié)
構(gòu)和復(fù)雜的數(shù)據(jù)結(jié)構(gòu)定義。例如,超文本標(biāo)記語言(HTML)和可擴(kuò)展標(biāo)記語言(XML)。
(11)腳本語言
腳本語言是可以被另一種語言解釋執(zhí)行的語言。腳本語言假設(shè)已經(jīng)存在了一
系列由其他語言寫成的有用的組件,它不是為了實(shí)現(xiàn)最原始的應(yīng)用,而主要是把
組件連接在一起,實(shí)現(xiàn)某一特定領(lǐng)域功能。例如,ShelKPerisJSP等。這種
領(lǐng)域?qū)I(yè)語言的應(yīng)用是未來編程的發(fā)展方向之一。
要形成良好的編碼風(fēng)格可以從哪些方面做起?
版權(quán)和版本聲明
程序版式
注釋
命名規(guī)則
數(shù)據(jù)說明
代碼構(gòu)造
輸入輸出
效率
使用MicrosoftVisualStudio2010和C#對(duì)求兩個(gè)整數(shù)的最大公約數(shù)進(jìn)行
編程。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
namespaceGreatestComnonDivisor
{
classProgram
{
〃輾轉(zhuǎn)相除法
publicstaticintcalculate(intx,inty)
{
if(x<y)
(
returncalculatel(y,x);
returncalculatel(x,y);
//xisnolessthany
privatestaticintcalculatel(intx,inty)
(
if(x%y!=0)
(
returncalculatel(y,x%y);
)
returny;
}
)
}
5練習(xí)題
軟件測(cè)試的原則有哪些?
完全測(cè)試是不可能的。
測(cè)試中有風(fēng)險(xiǎn)存在。
軟件測(cè)試只能表明缺陷的存在,而不能證明產(chǎn)品已經(jīng)沒有缺陷。
軟件產(chǎn)品中所存在的錯(cuò)誤數(shù)與已發(fā)現(xiàn)的錯(cuò)誤數(shù)成正比。
要避免軟件測(cè)試的殺蟲劑現(xiàn)象。
在設(shè)計(jì)測(cè)試用例時(shí),應(yīng)包括輸入數(shù)據(jù)和預(yù)期的輸出結(jié)果兩個(gè)部分,并且,輸
入數(shù)據(jù)不僅應(yīng)該包括合法的情況,還應(yīng)該包括非法的輸入情況。
要集中測(cè)試容易出錯(cuò)或錯(cuò)誤較多的模塊。
應(yīng)該長(zhǎng)期保留所有的測(cè)試用例。
使開發(fā)人員和測(cè)試人員分立,即軟件的開發(fā)工作和測(cè)試工作不能由同一部分
人來完成。
測(cè)試工作應(yīng)該盡早開始,并且貫穿于整個(gè)開發(fā)過程中。
比較軟件測(cè)試的V模型和W模型。
V模型中,描述了基本的開發(fā)過程和測(cè)試行為。它的價(jià)值在于非常明確地標(biāo)
明了測(cè)試過程中存在的不同級(jí)別,并且清楚地描述了這些測(cè)試階段和開發(fā)過程期
問各階段的對(duì)應(yīng)關(guān)系。
在V模型的基礎(chǔ)上,增加開發(fā)階段的同步測(cè)試,就是W模型。在W模型中測(cè)
試與開發(fā)同步進(jìn)行,這樣有利于盡早地發(fā)現(xiàn)問題。
軟件測(cè)試的步驟,和每一步驟中需要進(jìn)行的活動(dòng)是什么?
測(cè)試工作按5個(gè)步驟進(jìn)行,即單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試和
驗(yàn)收測(cè)試。
單元測(cè)試又稱模塊測(cè)試,是針對(duì)軟件設(shè)計(jì)的最小單位進(jìn)行正確性檢驗(yàn)的測(cè)試
工作。目的是檢查每個(gè)程序單元能夠正確實(shí)現(xiàn)詳細(xì)設(shè)計(jì)說明中的模塊功能、性能、
接口和設(shè)計(jì)約束等要求,發(fā)現(xiàn)各模塊內(nèi)部可能存在的各種錯(cuò)誤。單元測(cè)試需要從
程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計(jì)測(cè)試用例。多個(gè)模塊可以平行的獨(dú)立進(jìn)行單元測(cè)試。
集成測(cè)試也叫組裝測(cè)試,通常在單元測(cè)試的基礎(chǔ)上,將所有程序模塊進(jìn)行有
序的、遞增的測(cè)試。目的是檢驗(yàn)程序單元或部件的接口關(guān)系,逐步集成為符合概
要設(shè)計(jì)要求的程序部件或整個(gè)系統(tǒng)。集成測(cè)試有自頂向下和自底向上兩種方式。
確認(rèn)測(cè)試是檢查己實(shí)現(xiàn)的軟件是否滿足了需求規(guī)格說明書中確定了的各種
需求,以及軟件配置是否完全、正確。
系統(tǒng)測(cè)試把己經(jīng)經(jīng)過確認(rèn)的軟件納入實(shí)際運(yùn)行環(huán)境中,與其他系統(tǒng)成分組合
在一起進(jìn)行測(cè)試。
驗(yàn)收測(cè)試由用戶參與,對(duì)系統(tǒng)做交付使用前的驗(yàn)收。分為a測(cè)試和B測(cè)試。
a測(cè)試指的是由用戶、測(cè)試人員、開發(fā)人員等共同參與的內(nèi)部測(cè)試,而B測(cè)試指
的是完全交給最終用戶的測(cè)試。
利用等價(jià)類劃分技術(shù)為下面的NextDate問題設(shè)計(jì)測(cè)試用例:
輸入三個(gè)變量(年、月、日),函數(shù)返回輸入日期后面的那個(gè)日期。
1W月份W121〈日期W311812W年W2012
等價(jià)類劃分表
輸入及外有效等價(jià)等價(jià)無效等價(jià)類等價(jià)
部條件類類編號(hào)類編號(hào)
日期的類數(shù)字字符1非數(shù)字字符8
型
年在18122小于18129
與2012之間大于201210
月在1與123小于111
之間大于1212
非閏年的2日在1與4日小于113
月28之間日大于2814
閏年的2日在1與b日小于11b
月29之間日大于2916
月份為1日在1與6日小于117
月、3月、5月、31之間日大于3118
7月、8月、10
月、12月
月份為4日在1與6日小于119
月、6月、9月、31之間日大于3020
11月
有效等價(jià)類的測(cè)試用例
序號(hào)*俞入數(shù)據(jù)預(yù)期輸,出覆蓋范圍
4(等價(jià)類
編號(hào))
1221,2,3,6
00350036
2221,2,3,5
00480049
3111,2,3,4
999999
4111,2,3,7
97099700
無效等價(jià)類的測(cè)試用例
序號(hào)輸入數(shù)據(jù)頃期輸出覆蓋范圍
4(等價(jià)類
編號(hào))
1x輸入3E效8
y
21輸入無效9
700
32輸入無效10
3001
42輸入無效11
0051
52輸入無效12
00945
61輸入無效13
9891
71輸入無效14
9770
82輸入無效15
0002
92輸入無效16
0084
101輸入無效17
9560
111輸入無效18
9748
122輸入無效19
0073
131輸入無效20
86625
利用基本路徑測(cè)試技術(shù)為以下一段程序設(shè)計(jì)測(cè)試用例:
while(a>0)
aa1;
if(b<0||c>=1)
|
c=c-b;
)
else
c=c+b;
)
a=b+c;
設(shè)計(jì)測(cè)試用例:
輸入數(shù)據(jù)a=0b=3c=3;預(yù)期結(jié)果a=6b=3c=3
輸入數(shù)據(jù)a=lb=3c=3;預(yù)期結(jié)果a=3b=3c=0
輸入數(shù)據(jù)a=lb=3c=0;預(yù)期結(jié)果a=6b=3c=3
舉例說明軟件維護(hù)的副作用。
軟件維護(hù)是存在風(fēng)險(xiǎn)的。對(duì)原有軟件產(chǎn)品的?個(gè)微小的改動(dòng)都有可能引入新
的錯(cuò)誤,產(chǎn)生意想不到的后果。軟件維護(hù)的副作用主要有三類,包括修改代碼的
副作用、修改數(shù)據(jù)的副作用和修改文檔的副作用。
7)實(shí)現(xiàn)一個(gè)簡(jiǎn)單的求和函數(shù),并用VisualStudio2010的UnittestI
具對(duì)該函數(shù)進(jìn)行測(cè)試。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
namespaceSum
(
classArithmetic
{
publicintsun(inta,intb)
{
returna-b;
)
}
usingSum;
usingMicrosoft.VisualStudio.TestTools.UnitTesting;
namespaceTestProjectl
///<summary>
〃/這是ArithmeticTest的測(cè)試類,旨在
〃/包含所有ArithneticTest單元測(cè)試
〃/〈/summary〉
[TestClass()]
publicclassArithmeticTest
privateTestContexttestContextlnstance;
///<summary>
〃/獲取或設(shè)置測(cè)試上下文,上下文提供
〃/有關(guān)當(dāng)前測(cè)試運(yùn)行及其功能的信息。
///</summary>
publicTestContextTestContext
(
get
(
returntestContextlnstance;
)
set
(
testContextlnstance=value;
Sregion附加測(cè)試屬性
//
〃編寫測(cè)試時(shí),還可使用以下屬性:
//
〃使用Classlnitialize在運(yùn)行類中的第一個(gè)測(cè)試前先運(yùn)行代碼
//[ClassInitializeO]
//publicstaticvoidMyClassInitialize(TestContext
testContext)
//{
//)
//
〃使用ClassCleanup在運(yùn)行完類中的所有測(cè)試后再運(yùn)行代碼
//[ClassCleanup()]
//publicstaticvoidMyClassCleanupO
//{
//}
//
〃使用Testlmtialize在運(yùn)行每個(gè)測(cè)試前先運(yùn)行代碼
//[TestInitializeO]
//publicvoidMyTestlnitializeO
//{
//)
//
〃使用TestCleanup在運(yùn)行完每個(gè)測(cè)試后運(yùn)行代碼
//[TestCleanup()]
//publicvoidMyTestCleanupO
//{
//)
//
ttendregion
///<summary>
IIIsum的測(cè)試
///</summary>
[TestMethod()]
publicvoidsumTest()
(
Arithmetictarget=newArithmetic();//TODO:初始化
為適當(dāng)?shù)闹?/p>
inta=50;//TODO:初始化為適當(dāng)?shù)闹?/p>
intb=98;//TODO:初始化為適當(dāng)?shù)闹?/p>
intexpected=148;//TODO:初始化為適當(dāng)?shù)闹?/p>
intactual;
actual-target,sum(a,b);
Assert.AreEqual(expected,actual);
〃Asscrt.Inconclusive("驗(yàn)證此測(cè)試方法的正確性。〃);
)
///<summary>
///Arithmetic構(gòu)造函數(shù)的測(cè)試
///</summary>
[TestMethod()]
publicvoidArithmeticConstructorTest()
(
Arithmetictarget=newArithmetic();
//Assert.Inconclusive(,ZTODO:實(shí)現(xiàn)用來驗(yàn)證目標(biāo)的代碼
〃);
}
6練習(xí)題
面向?qū)ο蟮乃枷胗心男┗靖拍睿?/p>
面向?qū)ο螅喊慈藗冋J(rèn)識(shí)客觀世界的系統(tǒng)思維方式,采用基于對(duì)象的概念建立
模型,模擬客觀世界分析、設(shè)計(jì)、實(shí)現(xiàn)軟件的辦法。通過面向?qū)ο蟮睦砟?/p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 古建彩繪采購合同范本
- 公司出租地合同范本
- 合伙人結(jié)算合同范本
- 個(gè)人住房借款合同范本
- 臺(tái)州網(wǎng)絡(luò)推廣合同范本
- 校園超市承包合同范本
- 廚藝加盟合同范本
- 單位資產(chǎn)轉(zhuǎn)讓合同范本
- 發(fā)電機(jī)維修合同范本
- 合同范本模板學(xué)校
- 預(yù)防接種人員崗位培訓(xùn)習(xí)題(Ⅰ類培訓(xùn)練習(xí)題庫共385題)
- 現(xiàn)場(chǎng)經(jīng)濟(jì)簽證單范本
- 固定義齒工藝流程圖
- 《網(wǎng)店運(yùn)營與管理》課件(完整版)
- (高職)員工培訓(xùn)與開發(fā)(第四版)完整版教學(xué)課件全套電子教案
- 帶電子手表去學(xué)校的檢討
- 相親相愛 簡(jiǎn)譜
- 第四章工具鋼
- 2022年春新冀人版科學(xué)五年級(jí)下冊(cè)全冊(cè)課件
- 服裝購銷合同最新版
- 中層干部輪崗交流動(dòng)員會(huì)上的講話
評(píng)論
0/150
提交評(píng)論