久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

軟件工程

時(shí)間:2019-05-15 12:50:51下載本文作者:會(huì)員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《軟件工程》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《軟件工程》。

第一篇:軟件工程

一、名詞解釋

軟件: 指計(jì)算機(jī)系統(tǒng)中的程序及其文檔。

支持軟件:支持軟件的開發(fā)和維護(hù)的軟件。

系統(tǒng)軟件:屬于計(jì)算機(jī)系統(tǒng)中最靠近硬件的一層,其它軟件一般都通過系統(tǒng)軟件發(fā)揮作用,它與具體的應(yīng)用領(lǐng)域無關(guān)。

軟件工程:是應(yīng)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,以工程化的原則和方法制作軟件的工程。

軟件過程模型:是軟件開發(fā)全部過程、活動(dòng)和任務(wù)的結(jié)構(gòu)框架,也稱軟件開發(fā)模型或軟件生存周期模型。

技術(shù)可行性:主要根據(jù)系統(tǒng)的功能、性能、約束條件等,分析在現(xiàn)有資源和技術(shù)條件下系統(tǒng)能否實(shí)現(xiàn)。

需求管理:是一組用于幫助項(xiàng)目組在項(xiàng)目進(jìn)展中的任何時(shí)候去標(biāo)識(shí)、控制和跟蹤需求的活動(dòng)。信息流:表示了數(shù)據(jù)和控制在系統(tǒng)中流動(dòng)時(shí)的變化方式,輸入對象被變換為中間信息(數(shù)據(jù)和/或控制),然后進(jìn)一步被變換為輸出。

軟件項(xiàng)目管理:是指軟件生存周期中軟件管理者所進(jìn)行的一系列活動(dòng),其目的是在一定的時(shí)間和預(yù)設(shè)范圍內(nèi),有效地利用人力、資源、技術(shù)和工具,使軟件系統(tǒng)或軟件產(chǎn)品按原定計(jì)劃和質(zhì)量要求如期完成。

軟件度量:是指計(jì)算機(jī)軟件范圍內(nèi)的測量,主要是為產(chǎn)品開發(fā)的軟件過程和產(chǎn)品本身定義相關(guān)的測量方法和標(biāo)度。

面向?qū)ο蟮亩鄳B(tài)性:是指同一個(gè)操作作用于不同的對象上可以有不同的解釋,并產(chǎn)生不同的執(zhí)行結(jié)果。(也就是說,相同操作的消息發(fā)送給不同的對象時(shí),每個(gè)對象將根據(jù)自己所屬類中定義的這個(gè)操作去執(zhí)行,從而產(chǎn)生不同的結(jié)果。)

動(dòng)態(tài)綁定:是指在程序運(yùn)行時(shí)才將消息所請求的操作與實(shí)現(xiàn)該操作的方法連接起來 數(shù)據(jù)耦合:兩個(gè)模塊之間僅通過參數(shù)表傳遞簡單數(shù)據(jù),則稱為數(shù)據(jù)耦合。

功能內(nèi)聚 :指一個(gè)模塊中各個(gè)部分都是為完成一項(xiàng)具體功能而協(xié)同工作,緊密聯(lián)系,不可分割的。

二、簡答

1.、克服軟件危機(jī)的途徑:

? 消除錯(cuò)誤的概念和做法

? 推廣使用成功的開發(fā)技術(shù)和方法

? 使用軟件工具和軟件工程支持環(huán)境

? 加強(qiáng)軟件管理

2、計(jì)算機(jī)系統(tǒng)工程的任務(wù):

? 確定待開發(fā)軟件的總體要求和范圍,以及它與其它計(jì)算機(jī)系統(tǒng)元素之間的關(guān)系

? 進(jìn)行成本估算,做出進(jìn)度安排

? 進(jìn)行可行性分析,即從經(jīng)濟(jì)、技術(shù)、法律等方面分析待開發(fā)的軟件是否有可行的解決方案,并在若干個(gè)可行的解決方案中作出選擇。

3、軟件過程三層含義:

① 個(gè)體含義,即指軟件產(chǎn)品或系統(tǒng)在生存周期中的某一類活動(dòng)的集合,如軟件開發(fā)過

程,軟件管理過程等;

② 整體含義,即指軟件產(chǎn)品或系統(tǒng)在所有上述含義下的軟件過程的總體;

③ 工程含義,即指解決軟件過程的工程,它應(yīng)用軟件工程的原則、方法來構(gòu)造軟件過

程模型,并結(jié)合軟件產(chǎn)品的具體要求進(jìn)行實(shí)例化,以及在用戶環(huán)境下的運(yùn)作,以此進(jìn)一步提高軟件生產(chǎn)率,降低成本。

4、創(chuàng)建用況模型的步驟包括:

1)定義系統(tǒng)

2)確定執(zhí)行者

3)確定用況

4)描述用況

5)定義用況間的關(guān)系,6)確認(rèn)模型

5、需求分析原則

① 必須能夠表示和理解問題的信息域

② 必須能夠定義軟件將完成的功能

③ 必須能夠表示軟件的行為(作為外部事件的結(jié)果)

④ 必須劃分描述數(shù)據(jù)、功能和行為的模型,從而可以分層次地揭示細(xì)節(jié)

⑤ 分析過程應(yīng)該從要素信息移向細(xì)節(jié)信息

6、需求驗(yàn)證目的是要檢驗(yàn)需求是否能夠反映用戶的意愿

評審人員評審時(shí)往往需要檢查以下內(nèi)容:

① 系統(tǒng)定義的目標(biāo)是否與用戶的要求一致;

② 系統(tǒng)需求分析階段提供的文檔資料是否齊全;文檔中的描述是否完整、清晰、準(zhǔn)確

地反映了用戶要求;

③ 被開發(fā)項(xiàng)目的數(shù)據(jù)流與數(shù)據(jù)結(jié)構(gòu)是否確定且充足;

④ 主要功能是否已包括在規(guī)定的軟件范圍之內(nèi),是否都已充分說明;

⑤ 設(shè)計(jì)的約束條件或限制條件是否符合實(shí)際;

⑥ 開發(fā)的技術(shù)風(fēng)險(xiǎn)是什么;

⑦ 是否詳細(xì)制定了檢驗(yàn)標(biāo)準(zhǔn),它們能否對系統(tǒng)定義是否成功進(jìn)行確認(rèn)。

三、選擇填空

軟件分類:系統(tǒng)軟件、支持軟件和應(yīng)用軟件。

軟件按工作方式劃分:實(shí)時(shí)處理軟件、分時(shí)軟件、交互式軟件、批處理軟件。

軟件按服務(wù)對象的范圍劃分:項(xiàng)目軟件和產(chǎn)品軟件。

軟件按使用的頻度進(jìn)行劃分: 一次使用和頻繁使用。

軟件按失效的影響進(jìn)行劃分:高可靠性軟件、一般可靠性軟件

典型的軟件過程模型有:瀑布模型、演化模型、增量模型、原型模型、螺旋模型、噴泉模型、基于構(gòu)件的開發(fā)模型、形式方法模型。

技術(shù)可行性分析通常包括:風(fēng)險(xiǎn)分析、資源分析和技術(shù)分析。

軟件需求工程細(xì)分為:需求獲取、需求分析與協(xié)商、系統(tǒng)建模、需求規(guī)約、需求驗(yàn)證和需求管理六個(gè)階段。

需求跟蹤兩種方式:正向跟蹤、逆向跟蹤。

正向跟蹤:以用戶需求為切入點(diǎn),檢查《需求規(guī)約》中的每個(gè)需求是否都能在后繼工作產(chǎn)品中找到對應(yīng)點(diǎn)。

逆向跟蹤:檢查設(shè)計(jì)文檔、代碼、測試用況等工作產(chǎn)品是否都能在《需求規(guī)約》中找到出處。軟件設(shè)計(jì):把軟件需求變換成軟件表示的過程。

軟件設(shè)計(jì)的兩個(gè)階段:軟件體系結(jié)構(gòu)設(shè)計(jì)階段和部件級設(shè)計(jì)。

測試用例的設(shè)計(jì)方法大體可分為兩類:白盒測試和黑盒測試,也稱白箱測試和黑箱測試 一種測試策略就是將測試分為單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試。

測試類型:靜態(tài)測試和動(dòng)態(tài)測試。

軟件的特點(diǎn)

? 軟件是一種邏輯實(shí)體,而不是有形的系統(tǒng)元件,其開發(fā)成本和進(jìn)度難以準(zhǔn)確地估算 ? 軟件是被開發(fā)的或被設(shè)計(jì)的,它沒有明顯的制造過程,一旦開發(fā)成功,只需復(fù)制即可,但其維護(hù)的工作量大

? 軟件的使用沒有硬件那樣的機(jī)械磨損和老化問題

為了使程序能在不同的計(jì)算機(jī)上運(yùn)行:

1)要使程序具有較好的可移植性。

2)對程序段的設(shè)計(jì)具有功能性。

3)變量名的使用對提高編程效率沒有影響。

可維護(hù)性關(guān)鍵在于:選擇好的程序設(shè)計(jì)風(fēng)格。

軟件開發(fā)生命周期中的編程階段任務(wù):得到好的源程序代碼。軟件特點(diǎn):抽象性、復(fù)雜性、開發(fā)成本高。

第二篇:軟件工程

2.2軟件開發(fā)的基本策略

人們都有自己的世界觀和方法論,能自然而然地運(yùn)用于生活和工作中。同樣,程序員腦子里的軟件工程觀念會(huì)無形地支配其怎么去做事情。軟件工程三十年的發(fā)展,已經(jīng)積累了相當(dāng)多的方法,但這些方法不是嚴(yán)密的理論。實(shí)踐人員不應(yīng)該教條地套用方法,更重要的是學(xué)會(huì)“選擇合適的方法”和“產(chǎn)生新方法”。有謀略才會(huì)有好的戰(zhàn)術(shù)。幾千年前,我們的祖先就在打鬧之際寫下了很多心得體會(huì),被現(xiàn)代人很好地運(yùn)用于工業(yè)和商業(yè)。本節(jié)講述軟件開發(fā)中的三種基本策略:“復(fù)用”、“分而治之”、“優(yōu)化——折衷”。

2.2.1復(fù)用

復(fù)用就是指“利用現(xiàn)成的東西”,文人稱之為“拿來主義”。被復(fù)用的對象可以是有形的物體,也可以是無形的成果。復(fù)用不是人類懶惰的表現(xiàn)而是智慧的表現(xiàn)。因?yàn)槿祟惪偸窃诶^承了前人的成果,不斷加以利用、改進(jìn)或創(chuàng)新后才會(huì)進(jìn)步。所以當(dāng)我們歡度國慶時(shí),要搞清楚祖國遠(yuǎn)不止50歲,我們今天享用到的財(cái)富還有上下五千年人民的貢獻(xiàn)。進(jìn)步只是應(yīng)該的,不進(jìn)步則就可恥了。

復(fù)用的內(nèi)涵包括了提高質(zhì)量與生產(chǎn)率兩者。由經(jīng)驗(yàn)可知,在一個(gè)新系統(tǒng)中,大部分的內(nèi)容是成熟的,只有小部分內(nèi)容是創(chuàng)新的。一般地可以相信成熟的東西總是比較可靠的(即具有高質(zhì)量),而大量成熟的工作可以通過復(fù)用來快速實(shí)現(xiàn)(即具有高生產(chǎn)率)。勤勞并且聰明的人們應(yīng)該把大部分的時(shí)間用在小比例的創(chuàng)新工作上,而把小部分的時(shí)間用在大比例的成熟工作中,這樣才能把工作做得又快又好。

把復(fù)用的思想用于軟件開發(fā),稱為軟件復(fù)用。據(jù)統(tǒng)計(jì),世上已有1000億多行程序,無數(shù)功能被重寫了成千上萬次,真是浪費(fèi)哪。面向?qū)ο螅∣bject Oriented)學(xué)者的口頭禪就是“請不要再發(fā)明相同的車輪子了”。

將具有一定集成度并可以重復(fù)使用的軟件組成單元稱為軟構(gòu)件(Software Component)。軟件復(fù)用可以表述為:構(gòu)造新的軟件系統(tǒng)可以不必每次從零做起,直接使用已有的軟構(gòu)件,即可組裝(或加以合理修改)成新的系統(tǒng)。復(fù)用方法合理化并簡化了軟件開發(fā)過程,減少了總的開發(fā)工作量與維護(hù)代價(jià),既降低了軟件的成本又提高了生產(chǎn)率。另一方面,由于軟構(gòu)件是經(jīng)過反復(fù)使用驗(yàn)證的,自身具有較高的質(zhì)量。因此由軟構(gòu)件組成的新系統(tǒng)也具有較高的質(zhì)量。利用軟構(gòu)件生產(chǎn)應(yīng)用軟件的過程如圖1.5所示。

軟件復(fù)用不僅要使自己拿來方便,還要讓別人拿去方便,是“拿來拿去主義”。面向?qū)ο蠓椒ǎ琈icrosoft公司的COM規(guī)范 [Rogerson 1999],都能很好地用于實(shí)現(xiàn)大規(guī)模的軟件復(fù)用。

2.2.2分而治之

分而治之是指把一個(gè)復(fù)雜的問題分解成若干個(gè)簡單的問題,然后逐個(gè)解決。這種樸素的思想來源于人們生活與工作的經(jīng)驗(yàn),完全適合于技術(shù)領(lǐng)域。軟件人員在執(zhí)行分而治之的時(shí)候,應(yīng)該著重考慮:復(fù)雜問題分解后,每個(gè)問題能否用程序?qū)崿F(xiàn)?所有程序最終能否集成為一個(gè)軟件系統(tǒng)并有效解決原始的復(fù)雜問題?

圖1.6表示了軟件領(lǐng)域的分而治之策略。諸如軟件的體系結(jié)構(gòu)設(shè)計(jì)、模塊化設(shè)計(jì)都是分而治之的具體表現(xiàn)。軟件的分而治之不可以“硬分硬治”。不像為了吃一個(gè)西瓜或是一只雞,揮刀斬成n塊,再把每塊塞進(jìn)嘴里粉碎攪拌,然后交由胃腸來消化吸收,象征復(fù)雜問題的西瓜或是雞也就此消失了。

2.2.3優(yōu)化——折衷

軟件的優(yōu)化是指優(yōu)化軟件的各個(gè)質(zhì)量因素,如提高運(yùn)行速度,提高對內(nèi)存資源的利用率,使用戶界面更加友好,使三維圖形的真實(shí)感更強(qiáng)等等。想做好優(yōu)化工作,首先要讓開發(fā)人員都有正確的認(rèn)識(shí):優(yōu)化工作不是可有可無的事情,而是必須要做的事情。當(dāng)優(yōu)化工作成為一種責(zé)任時(shí),程序員才會(huì)不斷改進(jìn)軟件中的算法,數(shù)據(jù)結(jié)構(gòu)和程序組織,從而提高軟件質(zhì)量。

著名的3D游戲軟件Quake,能夠在PC機(jī)上實(shí)時(shí)地繪制高度真實(shí)感的復(fù)雜場景。Quake的開發(fā)者能把很多成熟的圖形技術(shù)發(fā)揮到極致,例如把Bresenham畫線、多邊形裁剪、樹遍歷等算法的速度提高近一個(gè)數(shù)量級。我第一次看到Quake時(shí)不僅感到震動(dòng),而且深受打擊。這個(gè)PC游戲軟件的技術(shù)水平已經(jīng)遠(yuǎn)勝于我所見識(shí)到的國內(nèi)領(lǐng)先的圖形學(xué)相關(guān)科研成果。這對我們?nèi)找媸⑿械狞c(diǎn)到完止的研發(fā)工作真是莫大的諷刺。所以當(dāng)我們開發(fā)的軟件表現(xiàn)出很多不可救藥的病癥時(shí),不要怨機(jī)器差。真的是我們自己沒有把工作做好,寫不好字卻嫌筆鈍。

就假設(shè)我們經(jīng)過思想教育后,精神抖擻,隨時(shí)準(zhǔn)備為優(yōu)化工作干上六天七夜。但愿意做并不意味著就能把事情做好。優(yōu)化工作的復(fù)雜之處是很多目標(biāo)存在千絲萬縷的關(guān)系,可謂數(shù)不清理還亂。當(dāng)不能夠使所有的目標(biāo)都得到優(yōu)化時(shí),就需要“折衷”策略。

軟件中的折衷策略是指通過協(xié)調(diào)各個(gè)質(zhì)量因素,實(shí)現(xiàn)整體質(zhì)量的最優(yōu)。就象黨支部副書記扮演和事佬的角色:“…為了使整個(gè)組織具有最好的戰(zhàn)斗力,我們要重用幾個(gè)人,照顧一些人,在萬不得已的情況下委屈一批人”。

軟件折衷的重要原則是不能使某一方損失關(guān)鍵的職能,更不可以象“舍魚而取熊掌”那樣拋棄一方。例如3D動(dòng)畫軟件的瓶頸通常是速度,但如果為了提高速度而在程序中取消光照明計(jì)算,那么場景就會(huì)喪失真實(shí)感,3D動(dòng)畫也就不再有意義了(如果人類全是色盲,計(jì)算機(jī)圖形學(xué)將變得異常簡單)。

人都有惰性,如果允許濫用折衷的話,那么一當(dāng)碰到困難,人們就會(huì)用拆東墻補(bǔ)西墻的方式去折衷,不再下苦功去做有意義的優(yōu)化。所以我們有必要為折衷制定嚴(yán)正的立場:在保證其它因素不差的前提下,使某些因素變得更好。

下面讓我們用“優(yōu)化——折衷”的策略解決“魚和熊掌不可得兼”的難題。

問題提出:假設(shè)魚每千克10元,熊掌每千克一萬元。有個(gè)倔脾氣的人只有20元錢,非得要吃上一公斤美妙的“熊掌燒魚”,怎么辦?

解決方案:化9元9角9分錢買999克魚肉,化10元錢買1克熊掌肉,可做一道“熊掌戲魚”菜。剩下的那一分錢還可建立獎(jiǎng)勵(lì)基金。

2.3一些不正確的觀念

本節(jié)例舉并分析一些不正確的軟件工程觀念,可幫助初學(xué)者少犯相似的錯(cuò)誤。

觀念之一:我們擁有一套講述如何開發(fā)軟件的書籍,書中充滿了標(biāo)準(zhǔn)與示例,可以幫助我們解決軟件開發(fā)中遇到的任何問題。

客觀情況:好的參考書無疑能指導(dǎo)我們的工作。充分利用書籍中的方法、技術(shù)和技巧,可以有效地解決軟件開發(fā)中大量常見的問題。但實(shí)踐者并不能因此依賴于書籍,這是因?yàn)椋海?)現(xiàn)實(shí)的工作中,由于條件千差萬別,即使是相當(dāng)成熟的軟件工程規(guī)范,常常也無法套用。(2)軟件技術(shù)日新月異,沒有哪一種軟件標(biāo)準(zhǔn)能長盛不衰。祖?zhèn)髅胤皆谀承╊I(lǐng)域很吃香,而在軟件領(lǐng)域則意味著落后。

觀念之二:我們擁有最好的開發(fā)工具、最好的計(jì)算機(jī),一定能做出優(yōu)秀的軟件。

客觀情況:良好的開發(fā)環(huán)境只是產(chǎn)出成果的必要條件,而不是充分條件。如果擁有好環(huán)境的是一群庸人,難保他們不干出南轅北轍的事情。

觀念之三:如果我們落后于計(jì)劃,可以增加更多的程序員來解決。

客觀情況:軟件開發(fā)不同于傳統(tǒng)的農(nóng)業(yè)生產(chǎn),人多不見得力量大。如果給落后于計(jì)劃的項(xiàng)目增添新手,可能會(huì)更加延誤項(xiàng)目。因?yàn)椋海?)新手會(huì)產(chǎn)生很多新的錯(cuò)誤,使項(xiàng)目混亂。(2)老手向新手解釋工作以及交流思想都要花費(fèi)時(shí)間,使實(shí)際開發(fā)時(shí)間更少。所以科學(xué)的項(xiàng)目計(jì)劃很重要,不在乎計(jì)劃能提前多少,重在恰如其分。如果用“大躍進(jìn)”的方式奔向共產(chǎn)主義,只會(huì)產(chǎn)生倒退的后果。

觀念之四:既然需求分析很困難,不管三七二十一先把軟件做了再說,反正軟件是靈活的,隨時(shí)可以修改。

客觀情況:對需求把握得越準(zhǔn)確,軟件的修修補(bǔ)補(bǔ)就越少。有些需求在一開始時(shí)很難確定,在開發(fā)過程中要不斷地加以改正。軟件修改越早代價(jià)越少,修改越晚代價(jià)越大,就跟治病一樣道理。

2.4一些有爭議的觀念

本節(jié)探討一些有爭議的觀念,目的不在于得出“正確”或“錯(cuò)誤”的評斷,而在于爭議會(huì)激發(fā)更多理性的思考。

爭議之一:如果軟件運(yùn)行較慢,是換一臺(tái)更快的計(jì)算機(jī),還是設(shè)計(jì)一種更快的算法?

作者觀點(diǎn):如果開發(fā)軟件的目的是為了學(xué)習(xí)或是研究,那么應(yīng)該設(shè)計(jì)一種更快的算法。如果該軟件已經(jīng)用于商業(yè),則需謹(jǐn)慎考慮:若換一臺(tái)更快的計(jì)算機(jī)能解決問題,則是最快的解決方案。改進(jìn)算法雖然可以從根本上提高軟件的運(yùn)行速度,但可能引入錯(cuò)誤以及延誤進(jìn)程。技術(shù)狂毫無疑問會(huì)選擇后者,因?yàn)樗麄冇X得放棄任何可以優(yōu)化的機(jī)會(huì)就等于犯罪。

類似的爭議還有:是買現(xiàn)成的程序,還是徹底自己開發(fā)?技術(shù)人員和商業(yè)人士常常會(huì)有不同的選擇。

爭議之二:有最好的軟件工程方法,最好的編程語言嗎?

作者觀點(diǎn):在軟件領(lǐng)域永遠(yuǎn)沒有最好的,只有更好的。能解決問題的都是好方法或是好語言。程序員在最初學(xué)習(xí)Basic、Fortran、Pascal、C、C++等語言時(shí)會(huì)感覺一個(gè)比一個(gè)好,不免有喜新厭舊之舉。而如今 的Visual Basic、Delphi、Visual C++、Java等語言各有所長,真的難分優(yōu)劣。開發(fā)人員應(yīng)該根據(jù)客觀條件,選擇自己熟悉的方法和語言,才能保證合格的質(zhì)量與生產(chǎn)率。

程序設(shè)計(jì)是自由與快樂的事情,不要發(fā)誓忠于某某主義而自尋煩惱。

爭議之三:編程時(shí)是否應(yīng)該多使用技巧?

作者觀點(diǎn):就軟件開發(fā)而言,技巧的優(yōu)點(diǎn)在于能另辟蹊徑地解決一些問題,缺點(diǎn)是技巧并不為人熟知。若在程序中用太多的技巧,可能會(huì)留下隱患,別人也難以理解程序。鑒于一個(gè)局部的優(yōu)點(diǎn)對整個(gè)系統(tǒng)而言是微不足道的,而一個(gè)錯(cuò)誤則可能是致命的。作者建議用自然的方式編程,少用技巧。

《狼三則》的故事告訴我們“失敗的技巧通常是技倆”。當(dāng)我們在編程時(shí)無法判斷是用了技巧還是用了技倆,那就少用。《賣油翁》的故事又告訴我們“熟能生巧”,表明技巧是自然而然產(chǎn)生的,而不是賣弄出來的。賣油翁的絕技是可到中央電視臺(tái)表演的,而他老人家卻謙虛地說:“沒啥沒啥,用熟了而已”。

爭議之四:軟件中的錯(cuò)誤是否可按嚴(yán)重程度分等級?

作者觀點(diǎn):在定量分析時(shí),可以將錯(cuò)誤分等級,以便于管理。微軟的一些開發(fā)小組將錯(cuò)誤分成四個(gè)等級 [Cusumano 1996],如表1.1所示。

一級嚴(yán)重:錯(cuò)誤導(dǎo)致軟件崩潰。

二級嚴(yán)重:錯(cuò)誤導(dǎo)致一個(gè)特性不能運(yùn)行并且沒有替代方案。

三級嚴(yán)重:錯(cuò)誤導(dǎo)致一個(gè)特性不能運(yùn)行但有替代方案。

四級嚴(yán)重:錯(cuò)誤是表面化的或是微小的。

表1.1 錯(cuò)誤的四個(gè)等級

上述分類是非常技術(shù)性的,并不是普適的。假設(shè)某個(gè)財(cái)務(wù)軟件有兩個(gè)錯(cuò)誤:錯(cuò)誤A使該軟件死掉,錯(cuò)誤B導(dǎo)致工資計(jì)算錯(cuò)誤。按表1.1分類,錯(cuò)誤A屬一級嚴(yán)重,錯(cuò)誤B屬二級嚴(yán)重。但事實(shí)上B要比A嚴(yán)重。工資算多了或者算少了,將會(huì)使老板或員工遭受經(jīng)濟(jì)損失。而錯(cuò)誤A只使操作員感到厭煩,并沒有造成經(jīng)濟(jì)損失。另一個(gè)示例是操作手冊寫錯(cuò),按表1.1分類則屬四級嚴(yán)重,但這種錯(cuò)誤可能導(dǎo)致機(jī)毀人亡。

開發(fā)人員應(yīng)該意識(shí)到:所有的錯(cuò)誤都是嚴(yán)重的,不存在微不足道的錯(cuò)誤。這樣才能少犯錯(cuò)誤。

2.5小 結(jié)

軟件工程學(xué)科發(fā)展到今天,已經(jīng)有了很多方法和規(guī)范,學(xué)之不盡。本章只在宏觀上討論了軟件工程的一些

思想,更具體的內(nèi)容將在后面的章節(jié)論述。無論是什么好方法,貴在理解與靈活運(yùn)用,而不可當(dāng)成靈丹妙藥,不象“吃了腦黃金或腦白金,就能使一億人先聰明起來”。

3程序員與程序經(jīng)理

工作在第一線的軟件開發(fā)人員是程序員和程序經(jīng)理,他們決定著軟件的命運(yùn)。良好的程序員隊(duì)伍和出色的管理是軟件項(xiàng)目成功的必要條件。管理不是管制,不是去卡住人家的脖子,因?yàn)槌绦騿T不是一群野鴨子。管理的目的是讓大家一起把工作做好,并且讓各人獲得各自的快樂和滿足。當(dāng)一個(gè)組織被出色地領(lǐng)導(dǎo)時(shí),雇員甚至不知道他們已被領(lǐng)導(dǎo)。在項(xiàng)目完成時(shí),他們會(huì)自豪地說:“看看我們通過努力取得的成績吧”。所以管理者不能老惦記著自己是一個(gè)官,而應(yīng)時(shí)刻意識(shí)到自己是責(zé)任的主要承擔(dān)者。

我們經(jīng)常會(huì)聽到有經(jīng)理頭銜的人在高談闊論:“編程我不會(huì),做個(gè)項(xiàng)目還不easy?派個(gè)人去搞系統(tǒng)分析,回頭再叫幾個(gè)程序員把需求譯成程序,不就OK了嗎?”

不懂英語的人準(zhǔn)以為easy和OK是貶義詞。要讓軟件項(xiàng)目失敗很容易,只要符合下列條件之一即可:

(1)項(xiàng)目經(jīng)理對軟件一無所知;

(2)技術(shù)負(fù)責(zé)人對編程不感興趣;

(3)真真編寫代碼的程序員是臨時(shí)雇用的。

如果上述三個(gè)條件同時(shí)具備,就請放心失敗好了。

讓我們少幻想自己是比爾·蓋茨,先當(dāng)好程序員和程序經(jīng)理再說。

3.1了解程序員

早期的程序員干活能從軟件直通硬件,個(gè)個(gè)生猛無比。又因他們的作息時(shí)間、言行舉止與常人不太一樣,久而久之就給人們留下了“神秘”、“孤僻”的印象。如今軟件行業(yè)被炒得熱火朝天,有能耐的程序員即便躲在大山岙的軍工廠里也能被挖出來。而更多原本不是程序員的人操起幾本“速成”、“二十一天通”等書籍也加入了這個(gè)行業(yè)。現(xiàn)在國內(nèi)號(hào)稱有上百萬程序員,這支大軍魚龍混雜,已搞不清那些是正規(guī)軍,那些是民兵游擊隊(duì)了。

第三篇:《軟件工程》

《軟件工程》課程分析

本課程是軟件技術(shù)專業(yè)學(xué)生必修的一門專業(yè)必修課。根據(jù)培養(yǎng)軟件開發(fā)人員的需要,本課程的任務(wù)是使學(xué)生通過本課程的學(xué)習(xí),了解軟件項(xiàng)目開發(fā)和維護(hù)的一般過程,掌握軟件開發(fā)的傳統(tǒng)方法和最新方法。能在軟件工程的理論指導(dǎo)下,開發(fā)一個(gè)小型管理系統(tǒng),為今后從事軟件工程實(shí)踐打下良好的基礎(chǔ)。

一、課程分析

(一)教學(xué)計(jì)劃的制定和教學(xué)內(nèi)容的選取

根據(jù)培養(yǎng)應(yīng)用技能型人才的總目標(biāo),制訂本專業(yè)教學(xué)計(jì)劃,課程的教材配套,教學(xué)、實(shí)驗(yàn)、實(shí)訓(xùn)、課程設(shè)計(jì)大綱和指導(dǎo)書等教學(xué)文件齊全,近幾年來引入了現(xiàn)代教學(xué)技術(shù)手段,已初步建設(shè)、形成了具有特色的全套課堂教學(xué)和實(shí)驗(yàn)教學(xué)課件。

根據(jù)該課程的基本教學(xué)要求和特點(diǎn),結(jié)合學(xué)時(shí)的安排,從教材的整體內(nèi)容出發(fā),有側(cè)重地進(jìn)行取舍,篩選出學(xué)生必須掌握的基本教學(xué)內(nèi)容,較好地解決了教學(xué)中質(zhì)量與數(shù)量的矛盾。

(二)教學(xué)方法分析

由于該課程是用于指導(dǎo)軟件開發(fā)的,和實(shí)踐聯(lián)系非常緊密。所以采用了理論聯(lián)系實(shí)際的方法進(jìn)行授課。一方面,讓學(xué)生模擬軟件公司的項(xiàng)目小組進(jìn)行軟件開發(fā);一方面,對學(xué)生進(jìn)行適時(shí)的理論指導(dǎo)。既調(diào)動(dòng)了學(xué)生的積極性,又讓學(xué)生了解了該課程的理論內(nèi)容,收到了一舉兩得的效果。具體教學(xué)過程如下:

第一步:模擬軟件公司的開發(fā)項(xiàng)目小組,分組,分設(shè)角色(項(xiàng)目經(jīng)理、用戶、需求人員、設(shè)計(jì)人員、程序員、測試人員、軟件安裝培訓(xùn)維護(hù)人員),確定開發(fā)題。讓每個(gè)小組的學(xué)生聚在一起,在項(xiàng)目經(jīng)理的組織下通過調(diào)研、討論來制定自己小組的開發(fā)題目,大家感覺就象在軟件公司實(shí)習(xí)一樣,非常新鮮,感興趣。每個(gè)學(xué)生都積極主動(dòng)的去完成自己應(yīng)承擔(dān)的那部分工作。

第二步:模擬軟件項(xiàng)目開發(fā)全過程的各個(gè)階段,進(jìn)行相關(guān)的理論授課和實(shí)際開發(fā)。即對軟件開發(fā)的每一階段,首先按照教材內(nèi)容進(jìn)行理論授課,然后讓學(xué)生參照授課內(nèi)容進(jìn)行實(shí)際的軟件開發(fā)實(shí)踐。

在此階段結(jié)束后,每班召開一個(gè)模擬方案論證會(huì),由各開發(fā)小組選出代表上臺(tái)講解本組的開發(fā)方案,其他同學(xué)模擬用戶對開發(fā)方案提出意見。由于大家對模擬方案論證會(huì)非常感興趣,發(fā)言積極踴躍,論證會(huì)結(jié)束后,每個(gè)小組的設(shè)計(jì)方案都得到了很好的補(bǔ)充和完善。

第三步:學(xué)期末各小組提交各自完成的軟件系統(tǒng)及開發(fā)文檔,并進(jìn)行總結(jié)演示,由任課教師進(jìn)行講評。

抽象理論課的教學(xué)應(yīng)理論聯(lián)系實(shí)際,讓學(xué)生在實(shí)際應(yīng)用中掌握抽象的理論,在興趣中學(xué)習(xí),達(dá)到我們高職的雙向型培養(yǎng)目標(biāo)。

二、存在的問題與希望

在上述的教學(xué)中,雖然實(shí)現(xiàn)了理論聯(lián)系實(shí)際,但也存在著一些問題,比如每個(gè)項(xiàng)目小組中總有個(gè)別同學(xué)存在依賴心理,不參與項(xiàng)目開發(fā),最后抄襲別的同學(xué)的項(xiàng)目成果,自己得不到實(shí)際的鍛煉,影響了大三的畢業(yè)設(shè)計(jì)和日后的軟件開發(fā)。另外,如果該課程只上課,沒有實(shí)訓(xùn)的話,實(shí)驗(yàn)課時(shí)太少,學(xué)生很難全面完成一個(gè)系統(tǒng)的開發(fā)。

第四篇:軟件工程

1.軟件工程:是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的工程學(xué)科

2.軟件危機(jī):是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題

3.軟件過程:是為了開發(fā)出高質(zhì)量的軟件產(chǎn)品所需完成的一系列任務(wù)的框架,它規(guī)定了完成各項(xiàng)任務(wù)的工作步驟

4.軟件生命周期:是指從軟件定義、開發(fā)、使用、信息”。此外,系統(tǒng)還應(yīng)該具有“定時(shí)取樣生理信號(hào)”、“更新日志”和“產(chǎn)生病情報(bào)告”的功能。為了分析病人生理信號(hào)是否超出了醫(yī)生規(guī)定的安全范圍,應(yīng)該存儲(chǔ)“患者安全范圍”信息。此外,定時(shí)記錄病人生理信號(hào)所形成的“患者日志”,顯然也是一個(gè)數(shù)據(jù)存 儲(chǔ)。

23.軟件危機(jī)有那些典型表現(xiàn)?

(1)央一個(gè)索引號(hào))。

針對若干個(gè)不同的NAME重復(fù)執(zhí)行上述命令序列。

?測試系統(tǒng)非正常操作的測試數(shù)據(jù) ①用過長的關(guān)鍵字作為命令b的參數(shù):例如,b(reliability software and hardware combined)

預(yù)期的輸出:系統(tǒng)截短過長的關(guān)鍵字,例如,上列命令中的關(guān)鍵字可能性被截預(yù)期的輸出:X=1,Y=20,Z=3 ④ 3個(gè)判定表達(dá)式依次為假、真、真 輸入:A=1,B=40,C=60 預(yù)期的輸出:X=1,Y=20,Z=30 ⑤ 3個(gè)判定表達(dá)式依次為真、假、假 輸入:A=20,B=1,C=1 預(yù)期的輸出:X=10,Y=2,Z=3 ⑥ 3個(gè)判定表達(dá)式依次為真、假、真 輸入:A=20,B=1,C=60 對軟件開發(fā)成本和進(jìn)度的估計(jì)常常很不準(zhǔn)確。維護(hù)到淘汰的全過程

5.軟件工程環(huán)境:方法與工具的結(jié)合,加上配套的軟、硬件支持稱為軟件工程環(huán)境

6.模塊:是數(shù)據(jù)說明、可執(zhí)行語句等程序?qū)ο蟮募?.模塊化:是按規(guī)定的原則將一個(gè)大型軟件分為一個(gè)個(gè)較小的、相對獨(dú)立但又相關(guān)的模塊

8.耦合:是對一個(gè)軟件結(jié)構(gòu)內(nèi)不同模塊之間互連程度的度量

9.內(nèi)聚:標(biāo)志著一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度

10.結(jié)構(gòu)程序設(shè)計(jì):如果一個(gè)程序的代碼塊只有一個(gè)入口和一個(gè)出口,則稱這個(gè)程序是結(jié)構(gòu)化的11.實(shí)現(xiàn):通常指編碼和測試

12.軟件可靠性:是指程序在給定的時(shí)間間隔內(nèi),按照規(guī)格說明書的規(guī)定成功地運(yùn)行地概率

13.集成測試:是測試和組裝軟件的系統(tǒng)化技術(shù) 14.軟件維護(hù):是指軟件已經(jīng)交付使用之后,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過程

15.對象:在應(yīng)用領(lǐng)域中有意義的、與所解決的問題有關(guān)系的任何事物

16.對象模型:表示靜態(tài)的、結(jié)構(gòu)化的系統(tǒng)的“數(shù)據(jù)”性質(zhì)

17.功能模型:表示變化的系統(tǒng)的“功能”性質(zhì) 18.面向?qū)ο蠓治觯壕褪浅槿『驼碛脩粜枨蟛⒔栴}域精確模型的過程

19.重用:是指同一事物不作修改或者稍加改動(dòng)就多次重復(fù)使用

20.可行性分析包括:技術(shù)可行性、經(jīng)濟(jì)可行性、操作可行性

21.北京某高校可用的電話號(hào)碼有以下幾類:校內(nèi)電話號(hào)碼由 4 位數(shù)字組成??定義上述電話號(hào)碼

電話號(hào)碼=[校內(nèi)電話號(hào)碼|校外電話號(hào)碼]

校內(nèi)電話號(hào)碼=非零數(shù)字+ 3 位數(shù)字 //后面繼續(xù)定義 校外電話號(hào)碼=[本市號(hào)碼|外地號(hào)碼] 本市號(hào)碼=數(shù)字零+8 位數(shù)字

外地號(hào)碼=數(shù)字零+3 位數(shù)字+8 位數(shù)字 非零數(shù)字=[1|2|3|4|5|6|7|8|9] 數(shù)字零=0位數(shù)字=3{數(shù)字}3//3 至 3 個(gè)數(shù)字 8 位數(shù)字=非零數(shù)字+7 位數(shù)字 7 位數(shù)字=7{數(shù)字}7 數(shù)字=[0|1|2|3|4|5|6|7|8|9]

22.目前住院的病人主要由護(hù)士護(hù)理,這樣做不僅需要大量護(hù)士??寫出問題定義,分析可行性 從問題陳述可知,本系統(tǒng)數(shù)據(jù)源點(diǎn)是“病人”和“護(hù)士”,他們分別提供生理信號(hào)和要求病情報(bào)告的信息。進(jìn)一步分析問題陳述,從系統(tǒng)應(yīng)該“定時(shí)記錄病人情況以形成患者日志”這項(xiàng)要求可以想到,還應(yīng)該有一個(gè)提供日期和時(shí)間信息的“時(shí)鐘”作為數(shù)據(jù)源點(diǎn)。從問題陳述容易看出,本系統(tǒng)的數(shù)據(jù)終點(diǎn)是接收警告信息和病情報(bào)告的護(hù)士。系統(tǒng)對病人生理信號(hào)的處理功能主要是“接收信號(hào)”、“分析信號(hào)”和“產(chǎn)生警告

(2)用戶對“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經(jīng)常

發(fā)生。

(3)軟件產(chǎn)品的質(zhì)量往往靠不住。(4)軟件常常是不可維護(hù)的。(5)軟件通常沒有適當(dāng)?shù)奈臋n資料。(6)軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占的比例

逐年上升。(7)軟件開發(fā)生產(chǎn)率提高的速度,遠(yuǎn)遠(yuǎn)跟不上計(jì)算

機(jī)應(yīng)用迅速普及深入的趨勢

25.銀行計(jì)算機(jī)存儲(chǔ)系統(tǒng)的工作過程大致如下:??請用數(shù)據(jù)流圖描繪本系統(tǒng)的功能,并用實(shí)體—聯(lián)系圖描繪系統(tǒng)中的數(shù)據(jù)對象 26.復(fù)印機(jī)的工作過程大致如下:未接到復(fù)印命令時(shí)處于閑置狀態(tài)??請用狀態(tài)轉(zhuǎn)換圖描繪復(fù)印機(jī)的行為

27.用面向數(shù)據(jù)流的方法設(shè)計(jì)下列系統(tǒng)的軟件結(jié)構(gòu)

(1)機(jī)票預(yù)定系統(tǒng)(2)患者監(jiān)護(hù)系統(tǒng) 28.耦合包括數(shù)據(jù)耦合、控制耦合、公共環(huán)境耦合、內(nèi)容耦合29.內(nèi)聚包括功能內(nèi)聚、順序內(nèi)聚、通信內(nèi)聚、過程內(nèi)聚、時(shí)間內(nèi)聚、邏輯內(nèi)聚、偶然內(nèi)聚

30.美國某大學(xué)有200名教師,校方與教師工會(huì)剛剛簽訂一項(xiàng)協(xié)議。按照協(xié)議??

31.畫出下列偽代碼的流程圖,計(jì)算它的環(huán)形復(fù)雜度

?

32.某圖書館有一個(gè)使用CET

終端的信息檢索系統(tǒng),該系統(tǒng)有下列4個(gè)基本檢索命令:

(1)設(shè)計(jì)測試數(shù)據(jù)以全面系統(tǒng)的正常操作

(2)設(shè)計(jì)測試數(shù)據(jù)以測試系統(tǒng)的非正常操作

解:?測試系統(tǒng)正常操作的測試數(shù)據(jù) ①順序執(zhí)行下列3個(gè)命令:b(KEYWORD)s(L)d(N)

其中KEYWORD是正確的關(guān)鍵字;L是執(zhí)行命令b后在屏幕上顯示的約20個(gè)行號(hào)中的一個(gè)(至少應(yīng)該使L分別為第一個(gè)、最后一個(gè)和中央一個(gè)行號(hào));N是執(zhí)行命令s后列出的索引號(hào)中的一個(gè)(至少應(yīng)該使N分別為第一個(gè)、最后一個(gè)和中央一個(gè)索引號(hào))。

針對若干個(gè)不同的KEYWORD重復(fù)執(zhí)行上述命令序列。

②順序執(zhí)行下列2個(gè)命令:f(NAME)d(N)

其中,NAME是已知的作者姓名;N是執(zhí)行命令f后列出的索引號(hào)中的一個(gè)(至少應(yīng)該使N分別為第一個(gè)、最后一個(gè)和中

短為reliability software

②用不正確的關(guān)鍵字作為命令b的參數(shù):例如,b(AARDVARK)

預(yù)期的輸出:顯示出最接近的匹配結(jié)果,例如,執(zhí)行上列命令后可能顯示 1.AARON,JULES(book)③用比執(zhí)行命令b后列出的最大行號(hào)大1的數(shù)作為命令s的參數(shù)

預(yù)期的輸出:“命令s的參數(shù)不在行號(hào)列表中”

④用數(shù)字和標(biāo)點(diǎn)符號(hào)作為命令b和命令f的參數(shù)

預(yù)期的輸出:“參數(shù)類型錯(cuò)”

⑤用字母字符作為命令s和命令d的參數(shù) 預(yù)期的輸出:“參數(shù)類型錯(cuò)”

⑥用0和負(fù)數(shù)作為命令s和命令d的參數(shù) 預(yù)期的輸出:“參數(shù)數(shù)值錯(cuò)” ⑦命令順序錯(cuò):例如,沒執(zhí)行命令b就執(zhí)行命令s,或沒執(zhí)行命令s就執(zhí)行命令d 預(yù)期的輸出:“命令順序錯(cuò)”

⑧命令語法錯(cuò):例如,遺漏命令名b、s、d或f;或命令參數(shù)沒用圓括號(hào)括起來 預(yù)期的輸出:“命令語法錯(cuò)” ⑨命令參數(shù)空:例如,b()、s()、d或f()

預(yù)期的輸出:系統(tǒng)提供默認(rèn)參數(shù)或給出出錯(cuò)信息

⑩使用拼錯(cuò)了的作者姓名作為f的參數(shù) 預(yù)期的輸出:“找不到這們作者的著作”

33.(2)答:經(jīng)驗(yàn)表明,在類似的程序中,單位長度

里的錯(cuò)誤數(shù)ET/IT近似為常數(shù)。美國的一些統(tǒng)計(jì)數(shù)字告訴我們,通常

0.5X10-2≤ ET/IT ≤2X10-2

也就是說,在測試之前每1000條指令中大約有5~20個(gè)錯(cuò)誤。

假設(shè)在該程序的每1000條指令中有10個(gè)錯(cuò)誤,則估計(jì)在對它進(jìn)行測試期間將發(fā)現(xiàn)的錯(cuò)誤數(shù)為

5000X10/1000=50(個(gè))(3)① 使3個(gè)判定表達(dá)式之值全為假 輸入:A=1,B=1,C=1 預(yù)期的輸出:X=1,Y=2,Z=3 ② 使3個(gè)判定表達(dá)式之值全為真 輸入:A=20,B=40,C=60 預(yù)期的輸出:X=10,Y=20,Z=30 ① 3個(gè)判定表達(dá)式之值全為假 輸入:A=1,B=1,C=1 預(yù)期的輸出:X=1,Y=2,Z=3 ② 3個(gè)判定表達(dá)式依次為假、假、真 輸入:A=1,B=1,C=60 預(yù)期的輸出:X=1,Y=2,Z=30 ③ 3個(gè)判定表達(dá)式依次為假、真、假 輸入:A=1,B=40,C=1

預(yù)期的輸出:X=10,Y=2,Z=30 ⑦ 3個(gè)判定表達(dá)式依次為真、真、假 輸入:A=20,B=40,C=1 預(yù)期的輸出:X=10,Y=20,Z=3 ⑧ 3個(gè)判定表達(dá)式全為真 輸入:A=20,B=40,C=60 預(yù)期的輸出:X=10,Y=20,Z=30 34.軟件的可維護(hù)性與哪些因素有關(guān):軟件的可理解性、可測試性、可修改性、文檔描述符合要求、用戶文檔簡潔明確、系統(tǒng)文檔完整并且標(biāo)準(zhǔn)

35.面向?qū)ο蠓椒ㄊ且环N運(yùn)用對象、類、繼承、封裝、聚合、消息、多態(tài)等概念來構(gòu)造系統(tǒng)的軟件開發(fā)方法。

面向?qū)ο蠓椒ǖ膬?yōu)點(diǎn)是:符合人們習(xí)慣的思維方式、穩(wěn)定性好、可重用性好、可維護(hù)性好、容易開發(fā)大型的軟件產(chǎn)品

第五篇:軟件工程

填好發(fā)給我!!

一、填空題:

1.面向?qū)ο蠓治龅哪康氖菍陀^世界的系統(tǒng)進(jìn)行 __________________,對象就是客觀世界的;

2.軟件工程方法學(xué)包括:工程環(huán)境建立、方法、工具和過程;

3.思想概括起來,就是以人為本,最優(yōu)先要做的是通過盡早地、持續(xù)地交付有價(jià)值的軟件來使客戶滿意;

4.UML是指,是用于建立面向?qū)ο笙到y(tǒng)模型的標(biāo)記方法;

5.需求分析的基本任務(wù)是和一起完全弄清用戶對系統(tǒng)的確切需求,確切地講就是系統(tǒng)做什么的問題;

6.的目的就是用最小的代價(jià)在的時(shí)間內(nèi)確定該軟件項(xiàng)目是否能夠開發(fā),是否值得去開發(fā);

7.在眾多的軟件工程環(huán)境的影響中,和是最重要的。

8.是對系統(tǒng)不同版本進(jìn)行標(biāo)識(shí)和跟蹤的過程,主要分為版本的訪問與同步控制、。

9.模塊的耦合性分為四種類型:據(jù)耦合、、、;

10.軟件工程學(xué)的主要內(nèi)容包括和。

二、選擇題:

1.軟件維護(hù)的困難主要原因是()

A.費(fèi)用低B.人員少

C.開發(fā)方法的缺陷D.維護(hù)難

2.模塊(),則說明模塊的獨(dú)立性越強(qiáng)。

A.耦合越強(qiáng)B.扇入數(shù)越高C.耦合越弱D.扇入數(shù)越低

3.指出PDL是下列哪種語言()。

A.偽碼B.高級程序設(shè)計(jì)語言

C.中級程序設(shè)計(jì)語言D.低級程序設(shè)計(jì)語言

4.在進(jìn)行軟件測試時(shí),首先應(yīng)當(dāng)進(jìn)行(),然后再進(jìn)行組裝測試,最后再進(jìn)行有效性測試。

A.單元測試B.集成測試C.確認(rèn)測試D.組合測試

5.軟件測試的目的是()。

A. 評價(jià)軟件的質(zhì)量B.發(fā)現(xiàn)軟件的錯(cuò)誤

C. 找出軟件的所有錯(cuò)誤D.證明軟件是正確的6.軟件設(shè)計(jì)階段分為()。

A.邏輯設(shè)計(jì)與功能設(shè)計(jì)B.模型設(shè)計(jì)和功能設(shè)計(jì)

C.結(jié)構(gòu)設(shè)計(jì)和模塊過程設(shè)計(jì)D.?dāng)?shù)據(jù)庫設(shè)計(jì)和文件設(shè)計(jì)

7.結(jié)構(gòu)化設(shè)計(jì)方法是面向()的設(shè)計(jì)。

A.?dāng)?shù)據(jù)流B.?dāng)?shù)據(jù)編碼

C.?dāng)?shù)據(jù)庫D.?dāng)?shù)據(jù)結(jié)構(gòu)

8.程序的三種基本控制結(jié)構(gòu)是()。

A.過程、子程序和分程序

B.順序、選擇和重復(fù)

C.遞歸、堆棧和隊(duì)列

D.調(diào)用、返回和轉(zhuǎn)移

9.系統(tǒng)定義明確之后,應(yīng)對系統(tǒng)的可行性進(jìn)行研究,可行性研究應(yīng)包括(A.軟件環(huán)境可行性、技術(shù)可行性、經(jīng)濟(jì)可行性、社會(huì)可行性

B.經(jīng)濟(jì)可行性、技術(shù)可行性、操作可行性

C.經(jīng)濟(jì)可行性、社會(huì)可行性、系統(tǒng)可行性

D.經(jīng)濟(jì)可行性、實(shí)用性、社會(huì)可行性

10.?dāng)?shù)據(jù)字典包括()個(gè)條目。

A.2B.3C.4D.

5三、名詞解釋題:

1.需求分析?

2.軟件危機(jī)?

3.軟件生存周期模型?

4.系統(tǒng)測試?

5.結(jié)構(gòu)化分析?

。)

四、簡答題:

1.快速原型法?

2.從軟件開發(fā)的過程按階段劃分,軟件測試分為哪些類型?

3.?dāng)?shù)據(jù)流程圖的基本符號(hào)及各自的含義是什么?數(shù)據(jù)流程圖的功能是什么?

4.軟件維護(hù)包括哪些方面?主要由誰來完成?

5.簡述軟件項(xiàng)目管理的實(shí)質(zhì)?

下載軟件工程word格式文檔
下載軟件工程.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點(diǎn)此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    軟件工程

    軟件工程—心得體會(huì) 摘要 本文結(jié)合基層實(shí)踐教學(xué)的實(shí)際情況和現(xiàn)實(shí)需要,系統(tǒng)地總結(jié)了《軟件工程》實(shí)踐教學(xué)的特征,詳細(xì)分析了實(shí)踐教學(xué)過程存在的問題,并提出了該課程實(shí)踐教學(xué)改革......

    軟件工程

    軟件工程 1. 談?wù)勀銓浖ぞ叩睦斫猓阌眠^什么軟件工具 軟件工具是指為支持計(jì)算機(jī)軟件的開發(fā)、維護(hù)、模擬、移植或管理而研制的程序系統(tǒng)。它是為專門目的而開發(fā)的,在軟件工......

    軟件工程

    1.軟件危機(jī)的概念 系統(tǒng)的數(shù)據(jù)要求,功能需求,性能需求,顯示出程序的輪廓。 軟件危機(jī)是指在計(jì)算機(jī)軟件開發(fā)、使用與可靠性需求,可用性需求,出錯(cuò)處理需求,混合方式 維護(hù)過程中遇到的......

    軟件工程小結(jié)

    今天視頻看完了,可是沒有總結(jié)。還是感覺不會(huì)總結(jié)。一想到50講的課,怎么總結(jié)呢?開始聽的時(shí)候,是真不知道從哪里下手,因?yàn)殚_始看的時(shí)候有種迷迷糊糊的感覺。軟件工程,我期待的一門課......

    軟件工程名詞解釋

    Adaptive maintenance適應(yīng)性維護(hù):為使軟件產(chǎn)品在新的環(huán)境下仍能使用而進(jìn)行的維護(hù),稱為適應(yīng)性維護(hù)。 Data flow diagram數(shù)據(jù)流圖:描述系統(tǒng)中數(shù)據(jù)流程的圖形工具,它標(biāo)識(shí)了一個(gè)系......

    軟件工程知識(shí)點(diǎn)

    第一章軟件工程概述 一、軟件的定義和特性(P2—P3) 定義:軟件=程序+數(shù)據(jù)+文檔 程序:按照事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令或語句序列 數(shù)據(jù):程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu) 文......

    軟件工程總結(jié)

    1. Software is a product and can be manufactured using the same technologies used for other engineering artifacts Answer: b 2. WebApps are a mixture of print pu......

    《軟件工程》學(xué)習(xí)心得

    《軟件工程》學(xué)習(xí)心得 時(shí)光匆匆,不知不覺間《軟件工程》的課程已經(jīng)快學(xué)完,雖說沒有具體的項(xiàng)目來開發(fā)應(yīng)用,但我們知道軟件工程是將系統(tǒng)化的,規(guī)范化的,可度量的方法應(yīng)用于軟件的開......

主站蜘蛛池模板: 丝袜亚洲精品中文字幕一区| 日韩 亚洲 欧美 国产 精品| 午夜伦费影视在线观看| 久久视频这里有精品33| 亚洲欧洲成人a∨在线观看| 日产精品久久久久久久性色| 久久国产精品波多野结衣av| 国产精品亚洲a∨天堂不卡| 国产精品第12页| www国产内插视频| 中文字幕一精品亚洲无线一区| 欧美疯狂性xxxxxbbbbb| 越猛烈欧美xx00动态图| 99久久99久久免费精品蜜桃| 99久久久无码国产精品免费砚床| 色欲av伊人久久大香线蕉影院| 亚洲碰碰人人av熟女天堂| 精品国产一区二区三区久久久狼| 国产日本精品视频在线观看| 久久婷婷国产剧情内射白浆| 免费无码高潮流白浆视频| 欧妇女乱妇女乱视频| 国产色精品vr一区二区| 少妇特黄a一区二区三区| 日日噜噜噜夜夜爽爽狠狠| 久久人人爽人人爽人人片av高请| 午夜dj高清免费观看视频| 日产精品卡二卡三卡四卡乱码视频| 日本高清aⅴ毛片免费| 国产亚洲精品久久久久久老妇| 99久久国产宗和精品1上映| 人人摸人人搞人人透| 亚洲成本人无码薄码区| 久久精品亚洲一区二区三区浴池| 日本熟妇色xxxxx欧美老妇| 国产精品无码免费播放| 亚洲欧美日韩中文久久| 性夜夜春夜夜爽aa片a| 成人无码无遮挡很h在线播放| 真人与拘做受免费视频一| 欲色欲色天天天www|