




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件工程概述
一.填空題
1.計(jì)算機(jī)科學(xué)中的研究成果均可用于軟件工程,但計(jì)算機(jī)科學(xué)更側(cè)重于、而
軟件工程側(cè)重于O
2.計(jì)算機(jī)程序及其說(shuō)明程序的各種文檔稱為o計(jì)算任務(wù)的處理圖像對(duì)象和處
理規(guī)則的描述稱為O有關(guān)計(jì)算機(jī)程序功能、設(shè)計(jì)、編制、使用的文字或圖形資
料稱為,
3.軟件開(kāi)發(fā)環(huán)境是相關(guān)一組的集合,它支持一定的軟件開(kāi)發(fā)方法或按照一定
的軟件開(kāi)發(fā)模型組織而成的。
4.CASE這一術(shù)語(yǔ)的英文是。
5.是指工具運(yùn)行在相同的硬件/操作系統(tǒng)平臺(tái)上。是指工具使
用共享數(shù)據(jù)模型末操作。是指工具提供相同的用戶界面。
6.根據(jù)支持的范圍,CASE工具可分為、和工具
7.軟件危機(jī)的主要原因有和。
8.模型是一種非整體開(kāi)發(fā)的模型。軟件在該模型中是“逐漸”開(kāi)發(fā)處理的,
開(kāi)發(fā)出一部分,向用戶展示一部分,可讓用戶及早看到部分軟件,及早發(fā)現(xiàn)問(wèn)題?;蛘呦乳_(kāi)
發(fā)一個(gè)“原型”軟件,完成部分主要功能,展示給用戶并征求意見(jiàn),然后逐步完善,最終獲
得滿意的軟件產(chǎn)品。
9.結(jié)構(gòu)化方法總得指導(dǎo)思想是。它的基本原則是功能的與一
。它是軟件工程中最早出現(xiàn)的開(kāi)發(fā)方法,特別適用于數(shù)據(jù)處理領(lǐng)域的問(wèn)題。
10.面向?qū)ο箝_(kāi)發(fā)方法包括、、、三部分。
11.瀑布模型是將軟件生存周期各個(gè)活動(dòng)規(guī)定為依線性順序連接的若干階段的模型。它包括一
、項(xiàng)目開(kāi)發(fā)計(jì)劃、、、、_
、、,它規(guī)定了由前至后、相互銜接的固定次序
,如同瀑布流水,逐級(jí)下落。
12.瀑布模型本質(zhì)上是一種順序模型。
13.構(gòu)造原型時(shí),必須注意取舍,忽略一切暫時(shí)不關(guān)心的部分。
14.屬性指的是類中對(duì)象所具有的o不同對(duì)象的同一屬性可以具有相同或不同
的O
15.結(jié)構(gòu)化方法和原型化方法是軟件開(kāi)發(fā)中常使用的兩種方法,在實(shí)際的應(yīng)用中,它們之間
的關(guān)系表現(xiàn)為O
解答:
I.原理和理論、如何建造一個(gè)軟件系統(tǒng)
2.文件、程序、文檔:
3.軟件工具;
4.ComputerAidedSoftwareEngineering;
5.平臺(tái)集成、數(shù)據(jù)集成、表示集成;
6.窄支持、較寬支持、一般支持;
7.軟件本身的特點(diǎn)、缺乏好的開(kāi)發(fā)方法和手段;
8.增量:
9.自頂而下逐步求精、分解、抽象;
10.面向?qū)ο蠓治?、面向?qū)ο笤O(shè)計(jì)、面向?qū)ο髮?shí)現(xiàn);
11.可行性分析、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試、維護(hù);
12.線性;
13.功能性能;
14.性質(zhì)(數(shù)據(jù)值)、屬性值:
15.相互補(bǔ)充;
二.判斷題
1.瀑布模型的存在問(wèn)題是缺乏靈活性.()
2.軟件是一種邏輯產(chǎn)品。()
3.軟件工程學(xué)科出現(xiàn)的主要原因是程序設(shè)計(jì)方法學(xué)的影響。()
4.有關(guān)計(jì)算機(jī)程序功能、設(shè)計(jì)、編制、使用的文字或圖形資料稱為文檔,()
5.CASE開(kāi)放式工作臺(tái)或者提供控制集成機(jī)制,或者可剪裁,其數(shù)據(jù)集成或協(xié)議是獨(dú)立的。
()
6.在軟件的開(kāi)發(fā)與維護(hù)過(guò)程中,用來(lái)存儲(chǔ)、更新、恢復(fù)和管理一個(gè)軟件的多版本,它是版
本控制工具。()
7.平臺(tái)集成是指工具運(yùn)行在相同的硬件/操作系統(tǒng)平臺(tái)上。()
8.軟件生存周期模型有多種,功能模型是軟件生存周期模型。()
9.從結(jié)構(gòu)化的瀑布模型看,在軟件生命周期中得8個(gè)階段中,詳細(xì)設(shè)計(jì)階段出錯(cuò),對(duì)軟件的
影響最大。()
10.軟件生存周期中時(shí)間最長(zhǎng)的階段是需求分析階段。()
11.軟件開(kāi)發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成需求分析、功能定義、系統(tǒng)設(shè)計(jì)
O()
12.增量模型是一種整體開(kāi)發(fā)模型。()
13.構(gòu)造模型時(shí),主要考慮全部功能。()
14.瀑布模型本質(zhì)上是一種線性迭代模型。()
15.快速原型思想是在研究概要設(shè)計(jì)階段的方法和技術(shù)中產(chǎn)生的。()
解答:
1.V
2.V
3.x
4.V
5.x
6.V
7.V
8.x
9.x
10.X
11.x
12.x
13.x
14.x
15.x
三.名詞解釋
1.軟件工程:
2.軟件生命周期模型:
3.經(jīng)濟(jì)可行性;
4.社會(huì)可行性;
5.投資回收期;
6.結(jié)構(gòu)沖突;
7.模塊化:
8.對(duì)象:
9.白盒測(cè)試;
10.耦合;
II.內(nèi)聚;
12.系統(tǒng)流程圖;
13.獨(dú)立路徑;
14.噴泉模型;
15.變換模型;
解答:
I.軟件工程是用科學(xué)知識(shí)和技術(shù)原理來(lái)定義、開(kāi)發(fā)、維護(hù)軟件的一門學(xué)科。
2.軟件生命周期模型是描述軟件開(kāi)發(fā)過(guò)程中各種活動(dòng)如何執(zhí)行的模型。
3.進(jìn)行開(kāi)發(fā)成本的估算以及了解取得效益的評(píng)估,確定要開(kāi)發(fā)的項(xiàng)目是否值得投資開(kāi)發(fā)。
4.要開(kāi)發(fā)的項(xiàng)目是否存在任何侵犯、妨礙等責(zé)任問(wèn)題,要開(kāi)發(fā)項(xiàng)目目的運(yùn)行方式在用戶組
織內(nèi)是否行得通,現(xiàn)有管理制度、人員素質(zhì)、操作方式是否可行。
5.投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于最初的投資費(fèi)用所需的時(shí)間。
6.輸入數(shù)據(jù)與輸出數(shù)據(jù)結(jié)構(gòu)找不到對(duì)應(yīng)關(guān)系的情況,稱為結(jié)構(gòu)沖突。
7.把程序劃分成獨(dú)立運(yùn)行且可以獨(dú)立訪問(wèn)的模塊,每個(gè)模塊完成一個(gè)子功能,把這些模塊
集成起來(lái)構(gòu)成一個(gè)整體,可以完成指定的功能滿足用戶的需求。
8.描述該對(duì)象屬性的數(shù)據(jù)以及可以對(duì)這些數(shù)據(jù)施加的所有操作封裝在一遠(yuǎn)構(gòu)成的統(tǒng)一體。
9.白盒測(cè)試又叫做結(jié)構(gòu)測(cè)試,把程序看成裝在一個(gè)透明的白盒子里,按照程序內(nèi)部的邏輯
測(cè)試程序,檢測(cè)程序中的主要執(zhí)行通路是否都能按預(yù)定要求正確工作。
10.耦合是對(duì)一個(gè)軟件結(jié)構(gòu)內(nèi)各個(gè)模塊之間互連程度的度量。
11.內(nèi)聚標(biāo)志一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度,它是信息隱蔽和局部化概念的自然
擴(kuò)展。
12.系統(tǒng)流程圖是描述物理模型的傳統(tǒng)工具,用圖形符號(hào)表示系統(tǒng)中各個(gè)元素表達(dá)了系統(tǒng)中
各種元素之間的信息流動(dòng))情況。
13.獨(dú)立路徑是指包括一組以前沒(méi)有處理的語(yǔ)句或條件的一條路徑。從程序圖來(lái)看,一條獨(dú)
立路徑是至少包含有一條在其他獨(dú)立路徑中未有過(guò)的邊的路徑。
14.噴泉模型是一種以用戶需求為動(dòng)力,以對(duì)象為驅(qū)動(dòng)的模型,主要用于描述面向?qū)ο蟮能?/p>
件開(kāi)發(fā)過(guò)程。
15.變換模型是一種適合于形式化開(kāi)發(fā)方法的模型,從軟件需求形式化說(shuō)明開(kāi)始經(jīng)過(guò)一系列
變換,最終得到系統(tǒng)的目標(biāo)程序。此模型必須有嚴(yán)格的數(shù)學(xué)理論和形式化技術(shù)的支持,尚處
于研究和實(shí)驗(yàn)階段。
四.簡(jiǎn)答題
I.請(qǐng)簡(jiǎn)要說(shuō)明可行性分析的內(nèi)容。
2.請(qǐng)寫出六種軟件CASE工具。
3.什么是軟件工程?軟件工程的目標(biāo)是什么?
4.什么是結(jié)構(gòu)化分析方法?該方法使用什么描述工具?
5.軟件設(shè)計(jì)的基本原理包括什么?
6.簡(jiǎn)述容錯(cuò)技術(shù)的四種主要手段,并解釋
7.軟件生命周期劃分成哪些階段
8.簡(jiǎn)要說(shuō)明軟件危機(jī)產(chǎn)生的原因
解答:
I.技術(shù)可行性:技術(shù)分析說(shuō)明使用現(xiàn)有系統(tǒng)是否能完成本系統(tǒng)的開(kāi)發(fā)。
經(jīng)濟(jì)可行性:經(jīng)濟(jì)分析應(yīng)著重兩個(gè)因素“成本和收益”,應(yīng)向管理層提供有關(guān)這兩方面
足夠的信息。如果項(xiàng)目的收益大于成本,則此項(xiàng)目可以說(shuō)是經(jīng)濟(jì)上可行。
操作可行性:系統(tǒng)的操作方式是否能夠在組織內(nèi)得到認(rèn)同,是否違背有關(guān)法律、制度、
道德、文化等因素。
2.(1)PowerDesigner(分析設(shè)計(jì)工具或軟件建模工具),(2)RationalRose(分析設(shè)
計(jì)工具或軟件建模工具),(3)WinRunner(測(cè)試工具),(4)MSProject(項(xiàng)目管理工
具),(5)MSVisio(軟件開(kāi)發(fā)繪圖工具)、(6)VSS(軟件配置工具)。
3.軟件工程是①將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開(kāi)發(fā)、運(yùn)行和維護(hù)過(guò)程
,即將工程化應(yīng)用于軟件開(kāi)發(fā)和管理之中,②對(duì)①中所選方法的研究。
目標(biāo):
1合理預(yù)算開(kāi)發(fā)成本,付出較出的開(kāi)發(fā)費(fèi)用、2實(shí)現(xiàn)預(yù)期的軟件功能,達(dá)到較好的軟件
性能,滿足用戶的需求、3提高軟件的可維護(hù)性,降低維護(hù)費(fèi)用、4提高軟件開(kāi)發(fā)生產(chǎn)率,
及時(shí)交付使用。
4.結(jié)構(gòu)化的分析方法是面向數(shù)據(jù)流的方法,因此,此方法研究的核心是數(shù)據(jù)的組成和數(shù)據(jù)
流向和對(duì)數(shù)據(jù)的加工處理。結(jié)構(gòu)化分析方法用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變
換的關(guān)系,自頂向下逐層分解,直至找到滿足功能要求的所有可實(shí)現(xiàn)的軟件元素為止
描述工具:1系統(tǒng)流程圖2數(shù)據(jù)流程圖3數(shù)據(jù)字典41Po圖5層次方框圖6實(shí)體一關(guān)系圖
7狀態(tài)一變遷圖。
5.①模塊化:指解決一個(gè)復(fù)雜問(wèn)題時(shí)自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過(guò)程。每
個(gè)模塊完成一個(gè)特定的子功能,所有模塊按某種方法組裝起來(lái),成為一個(gè)整體,完成整個(gè)系
統(tǒng)所要求的功能。模塊化是軟件解決復(fù)雜問(wèn)題所具備的手段。
②抽象:是認(rèn)識(shí)復(fù)雜現(xiàn)象過(guò)程中使用的思維工具,即抽出事物木質(zhì)的共同的特性而暫不
考慮它的細(xì)節(jié),不考慮其他因素。軟件工程中每一步都是對(duì)軟件解決方法的抽象層次的一次
細(xì)化。
③信息隱蔽:指在設(shè)計(jì)和確定模塊時(shí),使得?個(gè)模塊內(nèi)包含的信息(過(guò)程或數(shù)據(jù)),對(duì)
于不需要這些信息的其他模塊來(lái)說(shuō),是不能訪問(wèn)的。通過(guò)信息隱蔽,可以定義和實(shí)施對(duì)模塊
的過(guò)程細(xì)節(jié)和局部數(shù)據(jù)結(jié)構(gòu)的存取限制。
④模塊獨(dú)立性。指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最
少且接口簡(jiǎn)單。衡量模塊獨(dú)立性有兩個(gè)標(biāo)準(zhǔn)耦合性和內(nèi)聚性,可判斷設(shè)計(jì)方案的優(yōu)劣。
6.結(jié)構(gòu)冗余:包括靜態(tài)冗余、動(dòng)態(tài)冗余和混合冗余。
信息冗余:為檢測(cè)或糾正信息在運(yùn)算或傳輸中的錯(cuò)誤,須外加一部分信息。
時(shí)間冗余:指重復(fù)執(zhí)行指令或程序來(lái)消除瞬時(shí)錯(cuò)誤帶來(lái)的影響。
冗余附加技術(shù):指為實(shí)現(xiàn)上述冗余技術(shù)所需的資源和技術(shù)。
7.軟件生命周期(各階段)軟件生命周期由軟件定義、軟件開(kāi)發(fā)和運(yùn)行維護(hù)三個(gè)時(shí)期組成
O
1.軟件定義時(shí)期劃分為三個(gè)階段:?jiǎn)栴}定義、可行性研究和需求分析
2.開(kāi)發(fā)時(shí)期:總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼和單元測(cè)試、綜合測(cè)試。
3.維護(hù)時(shí)期:主要任務(wù)是使軟件持久地滿足用戶的需要。
8.1.軟件缺乏可見(jiàn)性,導(dǎo)致對(duì)軟件開(kāi)發(fā)成本,工作量,速度的估計(jì)不準(zhǔn)確。2.對(duì)用戶要求
沒(méi)有完整準(zhǔn)確的認(rèn)識(shí),不能適應(yīng)用戶的需求。3.缺乏對(duì)軟件產(chǎn)品和開(kāi)發(fā)過(guò)程的質(zhì)量控制,導(dǎo)
致軟件產(chǎn)品的質(zhì)量往往靠不住。4.在實(shí)踐過(guò)程中或多或少的采用了錯(cuò)誤的方法和技術(shù)。5.開(kāi)
發(fā)和維護(hù)過(guò)程中文檔化工作做的不好,缺乏配置管理。
五.論述題(方案1)
I.從軟件過(guò)程中選擇3種說(shuō)明其名稱、示意圖以及特點(diǎn)。
2.試論述軟件工程方法學(xué)的3個(gè)要素。
3.試論述軟件生命周期模型
4.評(píng)價(jià)軟件工具的原則?
5.軟件生命周期劃分成哪些階段
6.什么是軟件過(guò)程?它與軟件工程方法學(xué)有何關(guān)系?
7.試論述可行性研究的任務(wù)
8..試論述需求分析的準(zhǔn)則
9.試論述需求分析的任務(wù)
10.試論述應(yīng)該從哪些方面研究目標(biāo)系統(tǒng)的可行性?
11.在軟件開(kāi)發(fā)過(guò)程中必須遵循下列軟件工程原則。
12.軟件工程是開(kāi)發(fā)、運(yùn)行、維護(hù)和修復(fù)軟件的系統(tǒng)化方法,它包含哪些要素?試說(shuō)明之。
13.什么是CASE?CASE工具有哪些分類?
14.軟件工程標(biāo)準(zhǔn)化的意義是什么?都有哪些軟件工程標(biāo)準(zhǔn)?
15.什么是軟件開(kāi)發(fā)環(huán)境?請(qǐng)列出其發(fā)展情況。
解答:
I.1.螺旋模型:螺旋模型的基本思想是,使用原型及其他方法來(lái)盡量降低風(fēng)險(xiǎn)。理解這種
模型的一個(gè)簡(jiǎn)便方法,是把它看作在每個(gè)階段之前都增加了風(fēng)險(xiǎn)分析過(guò)程的快速原型模型
瀑布模型:瀑布模型將軟件生命周期劃分為制定計(jì)劃、需求分析、軟件設(shè)計(jì)、程序編寫
、軟件測(cè)試和運(yùn)行維護(hù)等六個(gè)基本活動(dòng),并且規(guī)定了它們自上而下、相互銜接的固定次序,
如同瀑布流水,逐級(jí)下落。
增量模型又稱演化模型。在增量模型中,軟件被作為一系列的增量構(gòu)件來(lái)設(shè)計(jì)、實(shí)現(xiàn)、
集成和測(cè)試,每一個(gè)構(gòu)件是由多種相互作用的模塊所形成的提供特定功能的代碼片段構(gòu)成。
I分析馨藥H測(cè)試I
擅量21分析+問(wèn)H測(cè)高I
2.通常把軟件生命周期全過(guò)程中使用的一整套技術(shù)方法的集合稱為方法學(xué),也稱范型。三
要素:方法、工具和過(guò)程。
3.瀑布模型:優(yōu)點(diǎn):1.可強(qiáng)迫開(kāi)發(fā)員采用規(guī)范的方法2.嚴(yán)格地規(guī)定了每個(gè)階段必須提交的
文件3.要求每個(gè)階段交出的所有產(chǎn)品都必須經(jīng)過(guò)質(zhì)量保證小組的仔細(xì)驗(yàn)證。
缺點(diǎn):傳統(tǒng)的瀑布模型過(guò)于理想化,是由文檔驅(qū)動(dòng)的。
快速原型模型:通過(guò)快速構(gòu)建起一個(gè)可在計(jì)算機(jī)上運(yùn)行的原型系統(tǒng),讓用戶試用原型并
收集用戶反饋意見(jiàn)的方法,獲取用戶真正的需要。
增量模型:優(yōu)點(diǎn):能在較短時(shí)間內(nèi)向用戶提交可完成部分工作的產(chǎn)品;逐步增加產(chǎn)品功
能可以使用戶有較充實(shí)的時(shí)間學(xué)習(xí)和適應(yīng)新產(chǎn)品,從而減少一個(gè)全新的軟件可能給客戶組織
帶來(lái)的沖擊。
螺旋模型:優(yōu)點(diǎn):對(duì)可選方案和約束條件的強(qiáng)調(diào)有利于已有軟件的重用:減少了過(guò)多測(cè)
試;維護(hù)只是螺旋模型中另一個(gè)底期。
4.(1)易用性:友好的用戶界面,用戶樂(lè)于使用;
(2)對(duì)開(kāi)發(fā)方法的支持:能滿足預(yù)期的任務(wù)和功能需求,且能支持完成該任務(wù)所遵循的
方法學(xué);
(3)穩(wěn)健性:具備自檢測(cè)機(jī)制,即使在故障情況下也不會(huì)導(dǎo)致嚴(yán)重后果;
(4)性能:能使資源得到充分有效的利用;
(5)工具結(jié)構(gòu)柔性:工具結(jié)構(gòu)是柔軟的、可修改的和可擴(kuò)充的。
5.軟件生命周期(各階段)軟件生命周期由軟件定義、軟件開(kāi)發(fā)和運(yùn)行維護(hù).三個(gè)時(shí)期組成
O
1.軟件定義時(shí)期劃分為三個(gè)階段:?jiǎn)栴}定義、可行性研究和需求分析
2.開(kāi)發(fā)時(shí)期:總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼和單元測(cè)試、綜合測(cè)試。
3.維護(hù)時(shí)期:主要任務(wù)是使軟件持久地滿足用戶的需要。
6.軟件過(guò)程:是為了獲得高質(zhì)量軟件所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項(xiàng)
任務(wù)的工作步驟
軟件工程方法學(xué):通常把在軟件生命周期全過(guò)程中使用的一整套技術(shù)方法的集合稱為方
法學(xué),也稱范型
7.1.進(jìn)一步分析和澄清問(wèn)題:2.導(dǎo)出系統(tǒng)的邏輯模型:3.從邏輯模型出發(fā),提出若干種系
統(tǒng)實(shí)現(xiàn)方案4.研究每種實(shí)現(xiàn)方案的可行性:
8.1.必須并描述的信息域,根據(jù)這條準(zhǔn)則應(yīng)該建立數(shù)據(jù)模型。2、必須定義軟件應(yīng)完成的
功能,這條準(zhǔn)則要求建立功能模型。3、必須描述作為外部事件結(jié)果的軟件行為,這條準(zhǔn)則
要求建立行為模型。
4、必須對(duì)描述信息、功能和行為的模型進(jìn)行分解,用層次的方式展示細(xì)節(jié)。
9.1、確定對(duì)系統(tǒng)的綜合要求;2、分析系統(tǒng)的數(shù)據(jù)要求;3、導(dǎo)出系統(tǒng)的邏輯模型;4、修正
系統(tǒng)開(kāi)發(fā)計(jì)劃。
10.技術(shù)上的可行性一一使用現(xiàn)有的技術(shù)能實(shí)現(xiàn)這個(gè)系統(tǒng)嗎?
經(jīng)濟(jì)上的可行性一一這個(gè)系統(tǒng)的經(jīng)濟(jì)效益能超過(guò)它的開(kāi)發(fā)成本嗎?(投資與效益)
操作可行性一一系統(tǒng)的操作方式在這個(gè)用戶組織內(nèi)行得通嗎?
社會(huì)、政策允許的可行性
II.抽象:采用分層次抽象,自頂向下、逐層細(xì)化的辦法進(jìn)行功能分解和過(guò)程分解,可以由
抽象到具體、由復(fù)雜到簡(jiǎn)單,逐步得到問(wèn)題的解。
?信息隱蔽:遵循信息封裝,使用與實(shí)現(xiàn)分離的原則,將模塊設(shè)計(jì)成“黑箱”,可以將
實(shí)現(xiàn)的細(xì)節(jié)隱藏在模塊內(nèi)部,使用者只能通過(guò)模塊接口訪問(wèn)模塊中封裝的數(shù)據(jù)。
?模塊化:按模塊劃分系統(tǒng)的體系結(jié)構(gòu),使得各模塊間有良好的接口。這樣有助于信息
隱蔽和抽象,有助于表示復(fù)雜的系統(tǒng)。
?局部化:按抽象數(shù)據(jù)類型思想及問(wèn)題域中的概念來(lái)建立模塊,確保模塊之間低耦合,
模塊內(nèi)部高內(nèi)聚。這有助于控制解的復(fù)雜性。
?確定性:軟件開(kāi)發(fā)過(guò)程中所有概念的表達(dá)應(yīng)是確定的、無(wú)歧義性的、規(guī)范的。這有助
于人們之間的溝通,保證整個(gè)開(kāi)發(fā)工作協(xié)調(diào)一致。
?一致性:強(qiáng)調(diào)軟件開(kāi)發(fā)過(guò)程的標(biāo)準(zhǔn)化、統(tǒng)一化。包括文檔格式的一致,工作流程的一
致,內(nèi)、外部接口的一致,系統(tǒng)規(guī)格說(shuō)明與系統(tǒng)行為的一致等。
?完備性:軟件系統(tǒng)不丟失任何重要成分,可以完全實(shí)現(xiàn)系統(tǒng)所要求功能。
?可驗(yàn)證性:開(kāi)發(fā)大型的軟件系統(tǒng)需要對(duì)系統(tǒng)自頂向下、逐層分解。系統(tǒng)分解應(yīng)遵循系
統(tǒng)易于檢查、測(cè)試、評(píng)審的原則,以確保系統(tǒng)的正確性。
12.軟件工程包括三個(gè)要素:方法、工具和過(guò)程。
軟件工程方法為軟件開(kāi)發(fā)提供了“如何做”的技術(shù)。它包括了多方面的任務(wù),如項(xiàng)目計(jì)
劃與估算、軟件系統(tǒng)需求分析、數(shù)據(jù)結(jié)構(gòu)、系統(tǒng)總體結(jié)構(gòu)的設(shè)計(jì)、算法過(guò)程的設(shè)計(jì)、編碼、
測(cè)試以及維護(hù)等。軟件工程方法常采用某一種特殊的語(yǔ)言或圖形的表達(dá)方法及一套質(zhì)量保證
標(biāo)準(zhǔn)。
軟件工具為軟件工程方法提供了自動(dòng)的或半自動(dòng)的軟件支撐環(huán)境。目前,已經(jīng)推出了許
多軟件工具,已經(jīng)能夠支持上述的軟件工程方法。特別地,已經(jīng)有人把諸多的軟件工具集成
起來(lái),使得一種工具產(chǎn)生的信息可以為其它的工具所使用,這樣建立起一種被稱之為計(jì)算機(jī)
輔助軟件工程(CASE)的軟件開(kāi)發(fā)支撐系統(tǒng)。CASE將各種軟件工具、開(kāi)發(fā)機(jī)器和一個(gè)存放開(kāi)發(fā)
過(guò)程信息的工程數(shù)據(jù)庫(kù)組合起來(lái)形成一個(gè)軟件工程環(huán)境。
軟件工程的過(guò)程則是將軟件工程的方法和工具綜合起來(lái)以達(dá)到合理、及時(shí)地進(jìn)行計(jì)算機(jī)
軟件開(kāi)發(fā)的目的。過(guò)程定義了方法使用的順序、要求交付的文檔資料、為保證質(zhì)量和協(xié)調(diào)變
化所需要的管理、及軟件開(kāi)發(fā)各個(gè)階段完成的里程碑。
13.CASE是?組工具和方法的集合,可以輔助軟件開(kāi)發(fā)生命周期各階段進(jìn)行軟件開(kāi)發(fā)。從學(xué)
術(shù)研究角度講,CASE是多年來(lái)在軟件開(kāi)發(fā)管理、軟件開(kāi)發(fā)方法、軟件開(kāi)發(fā)環(huán)境和軟件工具等
方面研究和發(fā)展的產(chǎn)物。CASE把軟件開(kāi)發(fā)技術(shù)、軟件工具和軟件開(kāi)發(fā)方法集成到一個(gè)統(tǒng)一而
一致的框架中,并且吸引了CAD(計(jì)算機(jī)輔助設(shè)計(jì))、軟件工程、操作系統(tǒng)、數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)和
許多其它計(jì)算機(jī)領(lǐng)域的原理和技術(shù),因而,CASE領(lǐng)域是一個(gè)應(yīng)用集成和綜合的領(lǐng)域。從產(chǎn)業(yè)
角度講,CASE是種類繁多的軟件開(kāi)發(fā)和系統(tǒng)集成的產(chǎn)品及軟件工具的集合。CASE分類:vl>C
ASE技術(shù)種類CASE系統(tǒng)所涉及到的技術(shù)有兩類:一類是支持軟件開(kāi)發(fā)過(guò)程本身的技術(shù);另一
類是支持軟件開(kāi)發(fā)過(guò)程管理的技術(shù),從CASE系統(tǒng)產(chǎn)生方式來(lái)看,還有一種特殊的CASE技術(shù),
即元一一CASE技術(shù)。他是生成CASE系統(tǒng)的生成器所采用的技術(shù)。該生成器可用來(lái)創(chuàng)建支持軟
件開(kāi)發(fā)過(guò)程活動(dòng)及過(guò)程管理的CASE系統(tǒng)。<2>CASE工具的分類對(duì)CASE工具分類的標(biāo)準(zhǔn)可
分為
:①功能。功能是對(duì)軟件進(jìn)行分類的最常用的標(biāo)準(zhǔn)。②支持的過(guò)程。根據(jù)支持的過(guò)程,工具
可分為設(shè)計(jì)工具、編程工具、維護(hù)工具等。③支持的范圍。根據(jù)支持的范圍,可分為窄支持
、較寬支持和一般支持工具。窄支持指支持過(guò)程中特定的任務(wù),較寬支持是指支持特定過(guò)程
階段;一般支持是指支持覆蓋軟件過(guò)程的全部階段或大多數(shù)階段。1刃3年,F(xiàn)uggctta根據(jù)CA
SE系統(tǒng)對(duì)軟件過(guò)程的支持范圍,提出CASE系統(tǒng)可分為三類:①支持單個(gè)過(guò)程任務(wù)的工具。工
具可能是通用的,或者也可能歸組到工作臺(tái)。②工作臺(tái)支持某一過(guò)程所有活動(dòng)或某些活動(dòng)。
他們一般以或多或少的集成度組成工具集。③環(huán)境支持軟件過(guò)程所有活動(dòng)或至少大部分。他
們一般包括幾個(gè)不同的工作臺(tái),將這些工作臺(tái)以某種方式集成起來(lái)。
14.軟件工程標(biāo)準(zhǔn)化可以為軟件工程各個(gè)階段的活動(dòng)提供統(tǒng)一的行動(dòng)規(guī)范和衡量準(zhǔn)則,使得
各種工作都能有章可循。
軟件工程標(biāo)準(zhǔn)根據(jù)其制定機(jī)構(gòu)與適用范圍,可分為:
1、國(guó)際標(biāo)準(zhǔn)
2、國(guó)家標(biāo)準(zhǔn)
3、行業(yè)標(biāo)準(zhǔn)
4、企業(yè)規(guī)范
5、項(xiàng)目(課題)規(guī)范
15.軟件開(kāi)發(fā)環(huán)境是指在計(jì)算機(jī)的基本軟件的基礎(chǔ)上,為支持軟件的開(kāi)發(fā)而提供的一組工具
軟件系統(tǒng)。具體地說(shuō),軟件開(kāi)發(fā)環(huán)境是一組相關(guān)工具的集合。這些相關(guān)工具按一定的開(kāi)發(fā)方
法或一定開(kāi)發(fā)處理模型組織起來(lái)的,這些相關(guān)工具支持整個(gè)軟件生存期的各階段或部分階段
軟件開(kāi)發(fā)環(huán)境的發(fā)展階段:
(1)70年代,軟件開(kāi)發(fā)與設(shè)計(jì)方法出現(xiàn)了結(jié)構(gòu)化分析技術(shù)的一整套相互銜接的SA-SD的方
法學(xué)。與此相適應(yīng)的計(jì)算機(jī)輔助軟件工程技術(shù)則主要由開(kāi)發(fā)孤立的軟件工具而逐步向程序設(shè)
計(jì)環(huán)境的開(kāi)發(fā)和使用方向發(fā)展,出現(xiàn)了第一代的基于正文的CASE工具。
(2)80年代中期與后期,主要是實(shí)時(shí)系統(tǒng)設(shè)計(jì)方法,以及面向?qū)ο蟮姆治龊驮O(shè)計(jì)方法的發(fā)
展,它克服了結(jié)構(gòu)化技術(shù)的缺點(diǎn)。在這期間開(kāi)發(fā)了第二代的CASE工具,其特點(diǎn)是支持使用圖
形表示的結(jié)構(gòu)化方法,如數(shù)據(jù)流圖與結(jié)構(gòu)圖。其開(kāi)發(fā)環(huán)境表現(xiàn)在提高環(huán)境中工具的集成性方
面,如”集成的項(xiàng)目支持環(huán)境,
(3)80年代后期和90年代初期出現(xiàn)了"基于信息工程CASE”技術(shù),這種環(huán)境集成了用于項(xiàng)目
計(jì)劃、分析、設(shè)計(jì)、編程、測(cè)試和維護(hù)的一個(gè)工具箱的集合。
(4)90年代出現(xiàn)一系列集成的CASE軟件產(chǎn)品,用以實(shí)現(xiàn)需求管理、應(yīng)用程序分析設(shè)計(jì)和建
模、編碼、軟件質(zhì)量保證和測(cè)試、過(guò)程和項(xiàng)目管理及文檔生成管理等軟件開(kāi)發(fā)工作的規(guī)范化、工
程化和自動(dòng)化。
六.綜合題
解答:
第二章:可行性研究
一.填空題
1.數(shù)據(jù)詞典中四種類型的條目是、、和加工。
2.的目的就是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定該軟件項(xiàng)目是否能夠開(kāi)
發(fā),是否值得開(kāi)發(fā)。
3.可行性研究的目的不是去開(kāi)發(fā)一個(gè)軟件項(xiàng)目,而是研究這個(gè)軟件項(xiàng)目是否
4.可行性研究實(shí)質(zhì)上是要進(jìn)行一次簡(jiǎn)化、壓縮了的和過(guò)程,
要在較高層次上以較抽象的方式進(jìn)行需求分析和設(shè)計(jì)過(guò)程。
5.可行性研究需要從可行性、可行性、可行性
三個(gè)方面分析研究每種解決方法的可行性。
6.成本-效益分析首先是估算將要開(kāi)發(fā)的系統(tǒng)的,然后與可能取得的效益進(jìn)
行O
7.投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于最初的投資費(fèi)用所需要的時(shí)間,項(xiàng)目的
一是指在整個(gè)生命周期之內(nèi)的累計(jì)經(jīng)濟(jì)效益(折合成現(xiàn)在值)與投資之差。
8.軟件工程有兩種效益,它們是和o
9.成本-效益分析的M的是從評(píng)價(jià)開(kāi)發(fā)一個(gè)新的軟件項(xiàng)H是否可行。
10.研究開(kāi)發(fā)資源的有效性是進(jìn)行可行性研究的一方面。
11.在軟件的可行性研究中,可以從不同的角度對(duì)軟件進(jìn)行研究,其中是從軟件的功能可行
性角度考慮的是O
12.制定軟件計(jì)劃的目的在于盡早對(duì)欲開(kāi)發(fā)的軟件進(jìn)行合理估價(jià),軟件計(jì)劃的任務(wù)是
13.數(shù)據(jù)流圖是常用的進(jìn)行軟件需求分析的圖形工具,其基本符合是、
、和O
14.決定大型程序模型組織基本原則的兩種交替設(shè)計(jì)策略為_(kāi)_________和
O
15.軟件系統(tǒng)可行性分析應(yīng)考慮、、和
等方面因素。
解答:
I.數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)項(xiàng)、加工
2.軟件可行性研究
3.值得去開(kāi)發(fā)且其中的問(wèn)題能否解決:
4.需求分析、設(shè)計(jì)
5.技術(shù)、經(jīng)濟(jì)、社會(huì)
6.開(kāi)發(fā)成本、比較和權(quán)衡
7.純收入
8.無(wú)形效益、有形效益
9.經(jīng)濟(jì)角度
10.技術(shù)
11.技術(shù)可行性
12.規(guī)劃與調(diào)度
13.加工、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、外部實(shí)體
14.數(shù)據(jù)分解、算法分解
15.經(jīng)濟(jì)、技術(shù)、社會(huì)環(huán)境和人。
二.判斷題
1.父圖中某個(gè)加工的輸入輸出數(shù)據(jù)流圖應(yīng)具備對(duì)稱特點(diǎn)。()
2.數(shù)據(jù)流圖(DFD)是軟件開(kāi)發(fā)需求分析階段經(jīng)常使用的工具。()
3.在軟件工程項(xiàng)目中,不隨參與人數(shù)的增加而使軟件的生產(chǎn)率增加的主要問(wèn)題是參與人員
之間的通訊困難。()
4.可行性分析中,系統(tǒng)流程圖用于描述當(dāng)前運(yùn)行系統(tǒng)。()
5.研究軟硬件資源的有效性是進(jìn)行操作可行性研究的一方面。()
6.可行性研究要進(jìn)行的需求分析和設(shè)計(jì)應(yīng)是簡(jiǎn)化、壓縮的。()
7.系統(tǒng)流程圖是描述物理系統(tǒng)的工具。()
8.軟件系統(tǒng)中所有的信息流都可以認(rèn)為是事物流。()
9.軟件系統(tǒng)中所有的信息流都可以認(rèn)為是變化流。()
10.在程序的描述和分析中,用以指明數(shù)據(jù)來(lái)源、數(shù)據(jù)流向和數(shù)據(jù)處理的輔助圖形是數(shù)據(jù)流
圖。()
11.加工是對(duì)數(shù)據(jù)流圖中不能再分解的基本加工的精確說(shuō)明,且加工邏輯是加工的最核心。
()
12.軟件定義期間問(wèn)題定義階段涉及的人員有系統(tǒng)分析員、軟件開(kāi)發(fā)人員、用戶與使用部門
的負(fù)責(zé)人。()
13.系統(tǒng)定義明確之后,應(yīng)對(duì)系統(tǒng)的可行性進(jìn)行研究??尚行匝芯堪ń?jīng)濟(jì)可行性、社會(huì)可
行性、系統(tǒng)可行性。()
14.在結(jié)構(gòu)化分析方法中,用狀態(tài)-遷移圖表達(dá)系統(tǒng)和對(duì)象的行為。在狀態(tài)-遷移圖中,由一
個(gè)狀態(tài)和一個(gè)時(shí)間所決定的下一個(gè)狀態(tài)只能有1個(gè)。()
15.提供嚴(yán)格定義的文檔是原型化方法的特征。()
解答:
1.X
2.V
3.V
4.J
5.x
6.J
7.J
8.x
9.x
10.V
II.V
12.J
13.x
14.x
15.x
三.名詞解釋
解答:
四.簡(jiǎn)答題
1.什么是數(shù)據(jù)字典?其作用是什么?它有哪些條目?
2.什么是數(shù)據(jù)流圖?其作用是什么?
3.可行性研究的任務(wù)有哪些?
4.什么是軟件配置管理?
5.簡(jiǎn)述文檔在軟件工程中的作用?
6.軟件開(kāi)發(fā)成本估算方法有哪幾種?
7.請(qǐng)說(shuō)明軟件文檔的作用。
8.簡(jiǎn)述提高軟件質(zhì)量的主要措施。
解答:
1.數(shù)據(jù)字典,主要用來(lái)描述數(shù)據(jù)流程圖中的數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)?、處理過(guò)程和和數(shù)據(jù)源點(diǎn)/終
點(diǎn)。
作用:數(shù)據(jù)流程圖描述了系統(tǒng)的邏輯結(jié)構(gòu),其中的四個(gè)基本圖形元素的含義無(wú)法在數(shù)據(jù)
流程圖中詳細(xì)說(shuō)明,因此數(shù)據(jù)流程圖需要與其他工具配合使用,數(shù)據(jù)字典就是這樣的工具之
*O
包括的條目:數(shù)據(jù)流詞條、數(shù)據(jù)元素詞條、數(shù)據(jù)存儲(chǔ)詞條、數(shù)據(jù)加工處理詞條、數(shù)據(jù)源
點(diǎn)及終點(diǎn)詞條。
2.數(shù)據(jù)流圖簡(jiǎn)稱DFD,是SA方法中用于表示系統(tǒng)邏輯模型的種工具。它以圖形的方式描述
數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過(guò)程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以它是一種功
能模型。數(shù)據(jù)流圖有四種基本圖形符號(hào):“一”箭頭表示數(shù)據(jù)流;圓或橢圓表述加工
;“=”雙杠表示數(shù)據(jù)存儲(chǔ);””方框表示數(shù)據(jù)的源點(diǎn)或終點(diǎn)。
3.3.可行性研究首先需要進(jìn)行概要的分析研究,初步確定項(xiàng)目的規(guī)模和目標(biāo),確定項(xiàng)目的
約束和限制。把它們清楚地列舉出來(lái)。然后分析員進(jìn)行簡(jiǎn)單的需求分析,經(jīng)過(guò)壓縮的設(shè)計(jì),
探索出若干種可提供選擇的主要解決辦法。對(duì)每種解決辦法都要研究它的可行性。主要從經(jīng)
濟(jì)可行性、技術(shù)可行性和社會(huì)可行性三方面進(jìn)行研究。
4.軟件配置管理,簡(jiǎn)稱SCM(SoftwareConfigurationManagement),是指一組管理整個(gè)軟件
生存期各階段中變更的活動(dòng)。軟件配置管理技術(shù)可以使軟件變更所產(chǎn)生的錯(cuò)誤達(dá)到最小并最
有效地提高生產(chǎn)率。
5.(1)提高軟件開(kāi)發(fā)過(guò)程的能見(jiàn)度
(2)提高開(kāi)發(fā)效率
(3)作為開(kāi)發(fā)人員階段工作成果和結(jié)束標(biāo)志
(4)記錄開(kāi)發(fā)過(guò)程的有關(guān)信息便于使用與維護(hù);
(5)提供軟件運(yùn)行、維護(hù)和培訓(xùn)有關(guān)資料;
(6)便于用戶了解軟件功能、性能。
6.<1>自頂向下估算方法。估算人員參照以前完成的項(xiàng)目所耗費(fèi)的總成本(或總工作量),
來(lái)推算將要開(kāi)發(fā)的軟件的總成本(或總工作量),然后把它們按階段、步驟和工作單元進(jìn)行
分配,這樣方法稱為自頂向下的估算方法。<2>自底向上估算方法。自底向上估算方法是將待
開(kāi)發(fā)的軟件細(xì)分,分別估算每一個(gè)子任務(wù)所需要的開(kāi)發(fā)工作量,然后將它們加起來(lái),得到軟
件的總開(kāi)發(fā)量。<3>差別估算方法。差別估算是將開(kāi)發(fā)項(xiàng)目與一個(gè)或多個(gè)已完成的類似項(xiàng)目進(jìn)
行比較,找出與某個(gè)相類似項(xiàng)目的若干不同之處,并估算每個(gè)不同之處對(duì)成本的影響,導(dǎo)出
開(kāi)發(fā)項(xiàng)目的總成本。
7.軟件文檔的作用是:提高軟件開(kāi)發(fā)過(guò)程的能見(jiàn)度;提高開(kāi)發(fā)效率;作為開(kāi)發(fā)人員階段工作
成果和結(jié)束標(biāo)志;記錄開(kāi)發(fā)過(guò)程的有關(guān)信息便于使用與維護(hù);提供軟件運(yùn)行、維護(hù)和培訓(xùn)有關(guān)
資料;便于用戶了解軟件功能、性能。軟件開(kāi)發(fā)項(xiàng)目生存期各階段應(yīng)包括得文檔以及與各類人
員的關(guān)系如下:可行性研究報(bào)告、項(xiàng)目開(kāi)發(fā)計(jì)劃、軟件需求說(shuō)明書、數(shù)據(jù)要求說(shuō)明書、測(cè)試
計(jì)劃、概要設(shè)計(jì)說(shuō)明書、詳細(xì)設(shè)計(jì)說(shuō)明書、用戶手冊(cè)、操作手冊(cè)、測(cè)試分析報(bào)告、開(kāi)發(fā)進(jìn)度
月報(bào)、項(xiàng)目開(kāi)發(fā)總結(jié)、程序維護(hù)手冊(cè)(維護(hù)修改建議)。
8.復(fù)審:是在軟件生命周期每個(gè)階段結(jié)束之前,都采用一定的標(biāo)準(zhǔn)對(duì)該段產(chǎn)生的軟件配置
成分進(jìn)行嚴(yán)格的正式或非正式的檢測(cè)。
復(fù)查:是檢查已有的材料,以斷定在軟件生命周期某個(gè)階段的工作是否能夠開(kāi)始或繼續(xù)
O
管理復(fù)審:是向開(kāi)發(fā)組織或使用部門的管理人員提供有關(guān)項(xiàng)目的總體狀況、成本和進(jìn)度
等方面的情況,以便他們從管理角度對(duì)開(kāi)發(fā)工作進(jìn)行審查。
五.論述題(方案1)
解答:
六.綜合題
I.請(qǐng)以WEBSNS為主題,分析校園SNS系統(tǒng)的操作可行性,并按照國(guó)標(biāo)規(guī)范書寫可行性分析
報(bào)告。
2.請(qǐng)以無(wú)線校園為背景,分析無(wú)線校園的技術(shù)可行性、操作可行性與經(jīng)濟(jì)可行性。
3.請(qǐng)以農(nóng)產(chǎn)品購(gòu)銷供應(yīng)鏈一體化系統(tǒng)為背景,分析其經(jīng)濟(jì)可行性與技術(shù)可行性。
4.請(qǐng)以城市交通流擁塞與控制為背景,書寫該系統(tǒng)的可行性分析報(bào)告。
5.請(qǐng)以智能家庭為例,分析其經(jīng)濟(jì)可行性與技術(shù)可行性。
6.請(qǐng)以“信息塵埃”在現(xiàn)代戰(zhàn)爭(zhēng)中的應(yīng)用為背景,進(jìn)行可行性分析。
7.請(qǐng)以網(wǎng)絡(luò)視頻社區(qū)為背景,按照國(guó)標(biāo)規(guī)范書寫可行性分析報(bào)告。
8.請(qǐng)以社區(qū)呼叫中心為背景,進(jìn)行可行性分析。
解答:
1.(1)按照GB-8567-88進(jìn)行可行性分析的書寫;
(2)重點(diǎn)分析技術(shù)與操作可行性。
2.
(1)按照國(guó)標(biāo)GB8567-88規(guī)范書寫相應(yīng)內(nèi)容。
3.(1)按照GB-8567-88書寫規(guī)范的可行性分析報(bào)告
4.(1)重點(diǎn)進(jìn)行交通流擁塞與控制的技術(shù)可行性研究,分析其技術(shù)可行性
5.(1)重點(diǎn)進(jìn)行智能家庭的技術(shù)可行性分析;
(2)按照國(guó)標(biāo)GB-8567-88規(guī)范書寫。
6.
(1)按照國(guó)標(biāo)GB-8567-88規(guī)范書寫;
(2)重點(diǎn)進(jìn)行“信息塵?!奔夹g(shù)可行性分析
7.(1)按照國(guó)標(biāo)GB-8567-88規(guī)范書寫
(2)著重進(jìn)行視頻系統(tǒng)的技術(shù)可行性分析
8.(1)按照國(guó)標(biāo)GB-8567-88規(guī)范書寫:
(2)重點(diǎn)進(jìn)行社區(qū)管理的操作可行性分析。
第三章:需求分析
一.填空題
1.軟件需求分析過(guò)程應(yīng)該建立___________、和三種模型
2.需求分析的基本任務(wù)是要準(zhǔn)確地定義,為了滿足用戶需要,回答系統(tǒng)必須
做什么的問(wèn)題。
3.數(shù)據(jù)流圖有4個(gè)基本成分:、、和
4.流向數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)流可理解為文件或文件,從數(shù)據(jù)存儲(chǔ)
流出的數(shù)據(jù)可理解為從文件數(shù)據(jù)或得到結(jié)果。
5.需求分析的困難主要體現(xiàn)在4個(gè)方面:?jiǎn)栴}的復(fù)雜性、、需
求易變性。
6.由于數(shù)據(jù)流是流動(dòng)中的數(shù)據(jù),所以必須有o除了與之間的
數(shù)據(jù)流不用命名外,數(shù)據(jù)流應(yīng)該用名詞或名詞短語(yǔ)命名。
7.結(jié)構(gòu)化分析方法是面向進(jìn)行需求分析的方法。
8.經(jīng)過(guò)需求分析,開(kāi)發(fā)人員已經(jīng)基本上理解了用戶的要求,確定了目標(biāo)系統(tǒng)的功能,定義
了系統(tǒng)數(shù)據(jù),描述了處理這些數(shù)據(jù)的基本策略。將這些共同的理解進(jìn)行了整理,最后形成文
檔。
9.在數(shù)據(jù)流圖中,有名字及方向的成分是.
10.在軟件需求分析中,開(kāi)發(fā)人員要從用戶那里解決的最重要的問(wèn)題是o
II.需求分析的最終結(jié)果是產(chǎn)生o
12.SA方法用DFD描述o
13.SA方法的基本思想是。
14.常用的需求分析方法有面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法,,面向數(shù)據(jù)結(jié)構(gòu)的
分析方法等。
15.通過(guò)可以完成數(shù)據(jù)流圖的細(xì)化。
解答:
1.數(shù)據(jù)模型、功能模型、行為模型
2.新系統(tǒng)的目標(biāo)
3.數(shù)據(jù)流、加工(又稱數(shù)據(jù)處理)、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)源點(diǎn)和終點(diǎn)
4.寫入、查詢、讀、查詢
5.交流障礙、不完備性和不一致性
6.流向、數(shù)據(jù)存儲(chǔ)
7.數(shù)據(jù)流
8.需求說(shuō)明書
9.數(shù)據(jù)流
10.要讓軟件做什么
11.需求規(guī)格說(shuō)明書
12.系統(tǒng)的功能
13.自頂向下逐步分解
14.面向?qū)ο蟮姆治龇椒?/p>
15.功能分解
二.判斷題
1.數(shù)據(jù)流圖(DFD)是軟件開(kāi)發(fā)可行性分析階段經(jīng)常使用的工具。()
2.需求分析階段的任務(wù)是確定軟件系統(tǒng)的功能。()
3.在數(shù)據(jù)流圖中,不能被計(jì)算機(jī)處理的成分是數(shù)據(jù)源/終點(diǎn)。()
4.通過(guò)功能分解可以完成數(shù)據(jù)流圖的細(xì)化。()
5.分層DFD是一種比較嚴(yán)格又易于理解的描述方式,它的頂層圖描述了系統(tǒng)的輸入與輸出。
()
6.數(shù)據(jù)字典中,一般不包括數(shù)據(jù)存儲(chǔ)條目。()
7.初步用戶手冊(cè)在需求分析階段編寫。()
8.SA方法的分析步驟是首先調(diào)查了解當(dāng)前系統(tǒng)的邏輯模型,然后獲得當(dāng)前系統(tǒng)的物理模型
,抽象出當(dāng)前系統(tǒng)的邏輯模型,建立目標(biāo)系統(tǒng)的邏輯模型。()
9.每個(gè)數(shù)據(jù)流必須用名詞或名詞短語(yǔ)命名。()
10.模塊獨(dú)立性是軟件模塊化所提出的要求,衡量模塊獨(dú)立性的度量標(biāo)準(zhǔn)時(shí)模塊的內(nèi)聚性和
耦合性。()
11.數(shù)據(jù)詞典的任務(wù)是對(duì)于數(shù)據(jù)流圖中出現(xiàn)的所有被命名的數(shù)據(jù)元素,在數(shù)據(jù)詞典中作為一
個(gè)詞條加以定義,使得每一個(gè)圖形元素的名字都有一個(gè)確切的描述。()
12.在需求分析中,開(kāi)發(fā)人員要從用戶那里解決的最重要的問(wèn)題是要讓軟件做什么。()
13.結(jié)構(gòu)化分析方法(SA)是一種面向數(shù)據(jù)結(jié)構(gòu)需求分析方法。()
14.軟件需求分析的任務(wù)包括結(jié)構(gòu)億程序設(shè)計(jì)。()
15.SA方法是一種自頂下下逐層分解的分析方法。()
解答:
1.x
2.J
3.J
4.J
5.J
6.x
7.V
8.J
9.x
10.J
II.J
12.J
13.x
14.x
15.V
三名詞解釋
解答:
四.簡(jiǎn)答題
解答:
五.論述題(方案1)
解答:
六.綜合題
1.請(qǐng)以教材購(gòu)銷的內(nèi)容為應(yīng)用背景,畫出數(shù)據(jù)流圖、寫清數(shù)據(jù)字典、小說(shuō)明。
2.請(qǐng)以小超市銷售管理的內(nèi)容為應(yīng)用背景,畫出數(shù)據(jù)流圖、寫清數(shù)據(jù)字典、小說(shuō)明。
3.請(qǐng)以校園交友娛樂(lè)社區(qū)的內(nèi)容為應(yīng)用背景,畫出數(shù)據(jù)流圖、寫清數(shù)據(jù)字典、小說(shuō)明。
4.請(qǐng)以校園學(xué)習(xí)交流社區(qū)的內(nèi)容為應(yīng)用背景,畫出數(shù)據(jù)流圖、寫清數(shù)據(jù)字典、小說(shuō)明。
5.請(qǐng)以網(wǎng)絡(luò)爬蟲(chóng)應(yīng)用系統(tǒng)為背景,畫出數(shù)據(jù)流圖、寫清數(shù)據(jù)字典、小說(shuō)明。
6.請(qǐng)以校園互助貼吧的內(nèi)容為應(yīng)用背景,畫出數(shù)據(jù)流圖、寫清數(shù)據(jù)字典、小說(shuō)明。
7.請(qǐng)以網(wǎng)絡(luò)驢友互助的內(nèi)容為應(yīng)用背景,畫出數(shù)據(jù)流圖、寫清數(shù)據(jù)字典、小說(shuō)明。
8.請(qǐng)以社區(qū)后勤管理為應(yīng)用背景,畫出數(shù)據(jù)流圖、寫清數(shù)據(jù)字典、小說(shuō)明。
解答:
I.(1)數(shù)據(jù)流圖要求至少三層,包括頂層圖、中間層圖、底層圖;
(2)數(shù)據(jù)字典必須符合客觀實(shí)際;
(3)小說(shuō)明需要解釋異常情況
2.(1)數(shù)據(jù)流圖要求至少三層,包括頂層圖、中間層圖、底層圖;
(2)數(shù)據(jù)字典必須符合客觀實(shí)際;
(3)小說(shuō)明需要解釋異常情況
3.(1)數(shù)據(jù)流圖要求至少三層,包括頂層圖、中間層圖、底層圖:
(2)數(shù)據(jù)字典必須符合客觀實(shí)際;
(3)小說(shuō)明需要解釋異常情況
4.(1)數(shù)據(jù)流圖要求至少三層,包括頂層圖、中間層圖、底層圖:
(2)數(shù)據(jù)字典必須符合客觀實(shí)際;
(3)小說(shuō)明需要解釋異常情況
5.(1)數(shù)據(jù)流圖要求至少三層,包括頂層圖、中間層圖、底層圖;
(2)數(shù)據(jù)字典必須符合客觀實(shí)際;
(3)小說(shuō)明需要解釋異常情況
6.(1)數(shù)據(jù)流圖要求至少三層,包括頂層圖、中間層圖、底層圖;
(2)數(shù)據(jù)字典必須符合客觀實(shí)際;
(3)小說(shuō)明需要解釋異常情況
7.(1)數(shù)據(jù)流圖要求至少三層,包括頂層圖、中間層圖、底層圖:
(2)數(shù)據(jù)字典必須符合客觀實(shí)際;
(3)小說(shuō)明需要解釋異常情況
8.(1)數(shù)據(jù)流圖要求至少三層,包括頂層圖、中間層圖、底層圖;
(2)數(shù)據(jù)字典必須符合客觀實(shí)際;
(3)小說(shuō)明需要解釋異常情況
第四章:形式化說(shuō)明技術(shù)
一.填空題
解答:
二.判斷題
解答:
三.名詞解釋
解答:
四.簡(jiǎn)答題
解答:
五.論述題(方案1)
解答:
六.綜合題
解答:
第五章:總體設(shè)計(jì)
一.填空題
1.過(guò)程設(shè)計(jì)語(yǔ)言的重復(fù)結(jié)構(gòu)有結(jié)構(gòu)、結(jié)構(gòu)、結(jié)
構(gòu)三種。
2.結(jié)構(gòu)化程序設(shè)計(jì)方法的基本要點(diǎn)是:(1)采用、、的程序
設(shè)計(jì)方法:(2)使用構(gòu)造程序;(3)主程序員組的組織形式。
3.在詳細(xì)設(shè)計(jì)階段,為了提高數(shù)據(jù)的輸入、存儲(chǔ)、檢索等操作的效率并節(jié)約存儲(chǔ)空間,對(duì)
某些數(shù)據(jù)項(xiàng)的值要進(jìn)行設(shè)計(jì)。
4.任何程序都可由、和三種基本控制結(jié)構(gòu)構(gòu)造
。這三種基本結(jié)構(gòu)的共同點(diǎn)是、o
5.在詳細(xì)設(shè)計(jì)階段,除了對(duì)模塊內(nèi)的算法進(jìn)行設(shè)計(jì),還應(yīng)對(duì)模塊內(nèi)的進(jìn)行設(shè)
計(jì)。
6.在詳細(xì)設(shè)計(jì)階段,經(jīng)常采用的工具有、PDL、PAD等。
7.在單元測(cè)試中,測(cè)試一個(gè)模塊時(shí),需要設(shè)計(jì)o
8.軟件產(chǎn)品在交付使用之前一般要經(jīng)過(guò)以下4步測(cè)試、
9.軟件測(cè)試用例由___________和組成。
10.用黑盒技術(shù)設(shè)計(jì)測(cè)試用例的方法有、、和_
II.源程序中加注釋是幫助理解程序的重要手段,注釋分為、
兩類。
12.近年來(lái),推出了許多面向?qū)ο蟮恼Z(yǔ)言,如、等。
13.匯編語(yǔ)言是面向的,可以完成語(yǔ)言無(wú)法滿足要求的特殊功
能,如與外部設(shè)備之間的一些接口搽作。
14.語(yǔ)句構(gòu)造的原則是簡(jiǎn)單直接,不能為了追求效率而使代碼
15.是指程序從一個(gè)計(jì)算機(jī)環(huán)境移植到另一個(gè)計(jì)算機(jī)環(huán)境的容易程度
解答:
1.for%whileuntil
2.自頂向下、逐步求精、三種基本控制結(jié)構(gòu)
3.代碼
4.順序、選擇、重復(fù)、單入口、單出口
5.數(shù)據(jù)結(jié)構(gòu)
6.程序流程圖
7.驅(qū)動(dòng)模塊和樁模塊
8.單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試
9.測(cè)試輸入數(shù)據(jù)和對(duì)應(yīng)的預(yù)期輸出
10.等價(jià)類劃分、邊界值分析、錯(cuò)誤推斷、因果圖
II.序言行注釋、功能性注釋
12.C++、JAVA
13.機(jī)器、高級(jí)
14.復(fù)雜化;
15.可移植性。
二.判斷題
1.一般說(shuō)來(lái),模塊大小以三至四頁(yè)為宜。()
2.軟件設(shè)計(jì)一般分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),它們之間的關(guān)系是全局與局部。()
3.好的軟件結(jié)構(gòu)應(yīng)該是高內(nèi)聚、低耦合。()
4.一個(gè)模塊把一個(gè)數(shù)質(zhì)量作為參數(shù)傳遞給另一個(gè)模塊。這兩個(gè)模塊之間的耦合是數(shù)據(jù)耦合
。()
5.在面向數(shù)據(jù)流的軟件設(shè)計(jì)方法中,一般將信息流分為變換流和事務(wù)流,()
6.首先將系統(tǒng)中得關(guān)鍵部分設(shè)計(jì)出來(lái),再讓系統(tǒng)的其余部分的設(shè)計(jì)去適應(yīng)它們,這稱為自
頂向下設(shè)計(jì)。()
7.劃分模塊時(shí),一個(gè)模塊的控制范圍應(yīng)在其作用范圍之內(nèi)。()
8.結(jié)構(gòu)化設(shè)計(jì)方法在軟件開(kāi)發(fā)中,用于概要設(shè)計(jì)。()
9.軟件結(jié)構(gòu)圖中,模塊框之間若有直線連接,表示它們之間存在著組成關(guān)系。()
10.軟件概要設(shè)計(jì)結(jié)束后得到初始化的軟件結(jié)構(gòu)圖。()
II.偶然內(nèi)聚是指模塊內(nèi)執(zhí)行幾個(gè)邏輯上相似的功能,通過(guò)參數(shù)確定該模塊完成哪一個(gè)功能
。()
12.設(shè)計(jì)軟件結(jié)構(gòu)一般不確定模塊內(nèi)的局部數(shù)據(jù)。()
13.通過(guò)抽象,可以確定組成軟件的過(guò)程實(shí)體。()
14.標(biāo)記耦合是指兩個(gè)模塊之間的調(diào)用關(guān)系,傳遞的是簡(jiǎn)單的數(shù)據(jù)值。()
15.內(nèi)容耦合是指一個(gè)模塊直接使用另一個(gè)模塊的內(nèi)部數(shù)據(jù),或通過(guò)非正常入口而轉(zhuǎn)入另一
個(gè)模塊內(nèi)部。()
解答:
1.V
2.V
3.J
4.
5.J
7.x
8.V
9.x
10.x
11.x
12.J
13.V
14.x
15.V
三.名詞解釋
1.數(shù)據(jù)耦合;
2.標(biāo)記耦合
3.偶然內(nèi)聚
4.邏輯內(nèi)聚
5.時(shí)間內(nèi)聚
6.軟件概要設(shè)計(jì)
7.軟件結(jié)構(gòu)
8.面向數(shù)據(jù)流的設(shè)計(jì)方法
9.耦合性
10.模塊獨(dú)立性
11.模塊
12.模塊的作用范圍
13.模塊的控制范圍
14.通信內(nèi)聚
15.順序內(nèi)聚
解答:
1.數(shù)據(jù)耦合是指兩個(gè)模塊之間有調(diào)用關(guān)系,傳遞的是簡(jiǎn)單的數(shù)據(jù)值,相當(dāng)于高級(jí)語(yǔ)言中的
值傳遞
2.標(biāo)記耦合是指兩個(gè)模塊之間傳遞的是數(shù)據(jù)結(jié)構(gòu),如高級(jí)語(yǔ)言中的數(shù)組名、記錄名、文件
名等這些名字即為標(biāo)記,其實(shí)傳遞的是這個(gè)數(shù)據(jù)結(jié)構(gòu)的地址:
3.偶然內(nèi)聚指?jìng)€(gè)模塊內(nèi)的各處理元素之間沒(méi)有任何聯(lián)系。這是內(nèi)聚程度最差的內(nèi)聚:
4.邏輯內(nèi)聚指模塊內(nèi)執(zhí)行幾個(gè)邏輯上相似的功能,通過(guò)參數(shù)確定該模塊完成哪一個(gè)功能;
5.把需要同時(shí)執(zhí)行的動(dòng)作組合在一起形成的模塊稱為時(shí)間內(nèi)聚模塊;
6.描述軟件的總的體系結(jié)構(gòu),稱為“軟件概要設(shè)計(jì)”;
7.軟件結(jié)構(gòu)是軟件系統(tǒng)的模塊層次結(jié)構(gòu),反映了整個(gè)系統(tǒng)劃分模塊時(shí),盡量做到高內(nèi)聚低
耦合;
8.面向數(shù)據(jù)流的設(shè)計(jì)方法,也稱“結(jié)構(gòu)化設(shè)計(jì)方法”(SD),它與結(jié)構(gòu)化分析(SA)相銜
接,它按一定的設(shè)計(jì)策略將數(shù)據(jù)流圖轉(zhuǎn)化成軟件的模塊層次結(jié)構(gòu):
9.耦合性也稱“塊間關(guān)系”。指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量。
模塊之間聯(lián)系越緊密,其耦合性就越強(qiáng),模塊的獨(dú)立性則越差;
10.模塊獨(dú)立性指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其它模塊的聯(lián)系最少且
接口簡(jiǎn)單;
11.模塊是可組合、分解和更換的單元,在程序中它是數(shù)據(jù)說(shuō)明、可執(zhí)行語(yǔ)句等程序?qū)ο蟮?/p>
集合,或者是單獨(dú)命名和編制的元素:
12.模塊的作用范圍是指受該模塊內(nèi)一個(gè)判定影響的所有模塊的集合:
13.模塊的控制范圍是指模塊本身以及其所有下屬模塊的集合:
14.通信內(nèi)聚指模塊內(nèi)所有處理元素都在同?個(gè)數(shù)據(jù)結(jié)構(gòu)上操作,或者指各處理使用相同的
輸入數(shù)據(jù)或者產(chǎn)生相同的輸出數(shù)據(jù):
15.順序內(nèi)聚指一個(gè)模塊中各個(gè)處理元素都緊密相關(guān)與同一功能旦必須順序執(zhí)行,前一功能
元素的輸出就是下一功能元素的輸入。
四.簡(jiǎn)答題
1.請(qǐng)簡(jiǎn)要說(shuō)明軟件耦合性和內(nèi)聚性
2.什么是概要設(shè)計(jì)?有哪些基本任務(wù)?
3.系統(tǒng)設(shè)計(jì)的內(nèi)容是什么?
4.簡(jiǎn)述軟件測(cè)試的任務(wù)、目的與類型。
5.簡(jiǎn)述結(jié)構(gòu)化程序設(shè)計(jì)方法的基本要點(diǎn)
6.簡(jiǎn)述容錯(cuò)技術(shù)的四種主要手段,并解釋。
7.以G.J.Myers的觀點(diǎn),簡(jiǎn)述對(duì)軟件測(cè)試的目的。
8.就程序設(shè)計(jì)語(yǔ)言的工程特性而言,對(duì)程序編碼有哪些要求?
9.可行性研究報(bào)告的主要內(nèi)容有哪些?
10.系統(tǒng)設(shè)計(jì)的內(nèi)容是什么?
11.什么是軟件危機(jī)?軟件危機(jī)的表現(xiàn)是什么?其產(chǎn)生的原因是什么?
12.軟件質(zhì)量保證應(yīng)做好哪幾方面的工作?
13.軟件生命周期各階段的任務(wù)是什么?
14.軟件重用的效益是什么?
15.自頂而下漸增測(cè)試與自底向上漸增測(cè)試各有何優(yōu)缺點(diǎn)?
解答:
I.模塊獨(dú)立性指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立子功能,并且與其他模塊的聯(lián)系最少且接
口簡(jiǎn)單,兩個(gè)定性的度量標(biāo)準(zhǔn)一耦合性和內(nèi)聚性。
耦合性也稱塊間聯(lián)系。指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量。模塊
之間聯(lián)系越緊密,其耦合性就越強(qiáng),模塊的獨(dú)立性則越差。
內(nèi)聚性又稱塊內(nèi)聯(lián)系。指模塊的功能強(qiáng)度的度量,即一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的
緊密程度的度量。若一個(gè)模塊內(nèi)各元素(語(yǔ)名之間、程序段之間)聯(lián)系的越緊密,則它的內(nèi)
聚性就越高。
2.概要設(shè)計(jì):根據(jù)用戶的需求先確定軟件系統(tǒng)的總體結(jié)構(gòu)和總的設(shè)計(jì)原則
基本的任務(wù):
設(shè)想供選擇的方案、推薦最佳方案、功能分解,確定軟件結(jié)構(gòu)、設(shè)計(jì)軟件結(jié)構(gòu)、制定測(cè)
試計(jì)劃、數(shù)據(jù)設(shè)計(jì)、書寫文檔、設(shè)計(jì)審查和復(fù)審。
3.(1)系統(tǒng)分解。系統(tǒng)中主要的組成部分稱為子系統(tǒng),子系統(tǒng)既不是一個(gè)對(duì)象也不是一個(gè)
功能,而是類、關(guān)聯(lián)、操作、時(shí)間即約束的集合。每次分解的各子系統(tǒng)數(shù)目不能太多,最底
層子系統(tǒng)稱為模塊。
(2)確定并發(fā)性。分析模型、現(xiàn)實(shí)世界及硬件中不少對(duì)象均是并發(fā)的。系統(tǒng)設(shè)計(jì)的一
個(gè)重要目標(biāo)就是確定哪些是必須同E寸動(dòng)作的對(duì)象,哪些不是同時(shí)動(dòng)作的對(duì)象。后者可以放在
一起,而綜合成單個(gè)控制線或任務(wù),
(3)數(shù)據(jù)存儲(chǔ)管理。系統(tǒng)中的內(nèi)部數(shù)據(jù)和外部數(shù)據(jù)的存儲(chǔ)管理是一項(xiàng)重要的任務(wù)。通
常各數(shù)據(jù)存儲(chǔ)可以將數(shù)據(jù)結(jié)構(gòu)、文件、數(shù)據(jù)庫(kù)組合在一起,不同數(shù)據(jù)存儲(chǔ)要在費(fèi)用、訪問(wèn)時(shí)
間、容量以及可靠性之間做折中考慮。
(4)人機(jī)交互接口設(shè)計(jì)。設(shè)計(jì)中的大部分工作都與穩(wěn)定的狀態(tài)行為有關(guān),但必須考慮
用戶使用系統(tǒng)的交互接口。
4.軟件測(cè)試是一個(gè)為了尋找軟件錯(cuò)誤而運(yùn)行程序的過(guò)程。目的就是為了發(fā)現(xiàn)軟件中的錯(cuò)誤
。一個(gè)好的測(cè)試用例是指很可能找到迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的用例。一個(gè)成功的測(cè)試是指
揭示了迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。軟件測(cè)試主要分為白盒測(cè)試和黑盒測(cè)試兩大類。
5.(1)采用自頂向下,逐步求精的程序設(shè)計(jì)方法。
(2)使用三種基本控制結(jié)構(gòu)構(gòu)造程序,分別是順序,選擇和循環(huán)
(3)采用主程序員組的組織形式.
(4)采用單入口單出口的模塊形式。
6.結(jié)構(gòu)冗余:包括靜態(tài)冗余、動(dòng)態(tài)冗余和混合冗余。
信息冗余:為檢測(cè)或糾正信息在運(yùn)算或傳輸中的錯(cuò)誤,須外加一部分信息。
時(shí)間冗余:指重復(fù)執(zhí)行指令或程序來(lái)消除瞬時(shí)錯(cuò)誤帶來(lái)的影響。
冗余附加技術(shù):指為實(shí)現(xiàn)上述冗余技術(shù)所需的資源和技術(shù)。
7.軟件測(cè)試是(1)為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程;(2)一個(gè)好的用例能夠發(fā)現(xiàn)至今尚
未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。(3)一個(gè)成功的測(cè)試是發(fā)現(xiàn)至今尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。
8.就程序設(shè)計(jì)語(yǔ)言的工程特性而言,對(duì)程序編碼有如下要求:
(1)可移植性(2)開(kāi)發(fā)工具的可利用性(3)軟件的可重用性(4)可維護(hù)性
9.一個(gè)可行性研究報(bào)告的主要內(nèi)容如下:
(1)引言:說(shuō)明編寫本文檔的目的:項(xiàng)目的名稱、背景;本文檔用到的專門術(shù)語(yǔ)和參考
資料。
(2)可行性研究前提:說(shuō)明開(kāi)發(fā)項(xiàng)目的功能、性能和基本要求;達(dá)到的目標(biāo);各種限制
條件;可行性研究方法和決定可行性的主要因素。
(3)對(duì)現(xiàn)有系統(tǒng)的分析:說(shuō)明現(xiàn)有系統(tǒng)的處理流程和數(shù)據(jù)流程;工作負(fù)荷;各項(xiàng)費(fèi)用支
出;所需要各類專業(yè)技術(shù)人員的數(shù)量;所需要各種設(shè)備:現(xiàn)有系統(tǒng)存在什么問(wèn)題。
(4)所建議系統(tǒng)的技術(shù)可行性分析:所建議系統(tǒng)的簡(jiǎn)要說(shuō)明;處理流程和數(shù)據(jù)流程;與
現(xiàn)有的系統(tǒng)比較的優(yōu)越性;采用所建議系統(tǒng)對(duì)用戶的影響;對(duì)各種設(shè)備、現(xiàn)有軟件、開(kāi)發(fā)環(huán)
境、運(yùn)行環(huán)境的影響;對(duì)經(jīng)費(fèi)支出的影響:對(duì)技術(shù)可行性的評(píng)價(jià)。
(5)所建議系統(tǒng)的經(jīng)濟(jì)可行性分析:說(shuō)明所建議系統(tǒng)的各種支出,各種效益;收益投資
比:投資回收周期。
(6)社會(huì)因素可行性分析:說(shuō)明法律因素,對(duì)合同責(zé)任、侵犯專利權(quán)、侵犯版權(quán)等問(wèn)題
的分析:說(shuō)明用戶使用可行性,是否滿足用戶行政管理、工作制度、人員素質(zhì)的要求。
(7)其他可供選擇方案:逐一說(shuō)明其他可供選擇的方案,并說(shuō)明未被推薦的理由。
(8)結(jié)論意見(jiàn):說(shuō)明項(xiàng)目是否能開(kāi)發(fā):還需要什么條件才能開(kāi)發(fā):對(duì)項(xiàng)目目標(biāo)有什么變動(dòng)
等。
10.系統(tǒng)設(shè)計(jì)階段先從高層入手,然后細(xì)化。系統(tǒng)設(shè)計(jì)要決定整個(gè)結(jié)構(gòu)及風(fēng)格,這種結(jié)構(gòu)為
后面設(shè)計(jì)階段的更詳細(xì)策略的設(shè)計(jì)提供了基礎(chǔ)。
(1)系統(tǒng)分解。系統(tǒng)中主要的組成部分稱為子系統(tǒng),子系統(tǒng)既不是一個(gè)對(duì)象也不是一個(gè)
功能,而是類、關(guān)聯(lián)、操作、時(shí)間卻約束的集合。每次分解的各子系統(tǒng)數(shù)目不能太多,最底
層了系統(tǒng)稱為模塊。
(2)確定并發(fā)性。分析模型、現(xiàn)實(shí)世界及硬件中不少對(duì)象均是并發(fā)的。系統(tǒng)設(shè)計(jì)的一個(gè)
重要目標(biāo)就是確定哪些是必須同時(shí)動(dòng)作的對(duì)象,哪些不是同時(shí)動(dòng)作的對(duì)象。后者可以放在一
起,而綜合成單個(gè)控制線或任務(wù)。
(3)處理器及任務(wù)分配。各并發(fā)子系統(tǒng)必須分配給單個(gè)硬件單元,要么是一個(gè)一般的處
理器,要么是一個(gè)具體的功能單元,必須完成下面的工作:估計(jì)性能要求和資源需求,選擇
實(shí)現(xiàn)子系統(tǒng)的硬軟件,將軟件子系統(tǒng)分配給各處理器以滿足性能要求和極小化處理器之間的
通信,決定實(shí)現(xiàn)各子系統(tǒng)的各物理單元的連接。
(4)數(shù)據(jù)存儲(chǔ)管理。系統(tǒng)中的內(nèi)部數(shù)據(jù)和外部數(shù)據(jù)的存儲(chǔ)管理是一項(xiàng)重要的任務(wù)。通常
各數(shù)據(jù)存儲(chǔ)可以將數(shù)據(jù)結(jié)構(gòu)、文件、數(shù)據(jù)庫(kù)組合在一起,不同數(shù)據(jù)存儲(chǔ)要在費(fèi)用、訪問(wèn)時(shí)間
、容量以及可靠性之間做折中考慮,
(5)全局資源的處理。必須確定全局資源,并且制定訪問(wèn)全局資源的策略。全局資源包
括:物理資源,如處理器、驅(qū)動(dòng)器等;空間,如盤空間、工作站屏等:邏輯名字,如對(duì)象標(biāo)
識(shí)符、類名、文件名等。
如果資源是物理對(duì)象,則可以通過(guò)建立協(xié)議實(shí)現(xiàn)對(duì)并發(fā)系統(tǒng)的訪問(wèn),以達(dá)到自身控制;
如果資源是邏根實(shí)體,如對(duì)象標(biāo)識(shí)符,那么在共享環(huán)境中有沖突訪問(wèn)的可能,如獨(dú)立的事務(wù)
可能同時(shí)使用同一個(gè)對(duì)象標(biāo)識(shí)符,則各個(gè)全局資源都必須有一個(gè)保護(hù)對(duì)象,由保護(hù)對(duì)象來(lái)控
制對(duì)該資源的訪問(wèn)。
(6)選擇軟件控制機(jī)制。分析模型中所有交互行為都表示為對(duì)象之間的事件。系統(tǒng)設(shè)計(jì)
必須從多種方法中選擇某種方法來(lái)實(shí)現(xiàn)軟件的控制。
(7)人機(jī)交互接口設(shè)計(jì)。設(shè)計(jì)中的大部分工作都與穩(wěn)定的狀態(tài)行為有關(guān),但必須考慮用戶
使用系統(tǒng)的交互接口。
II.軟件發(fā)展第二階段的末期,由于計(jì)算機(jī)硬件技術(shù)的進(jìn)步,計(jì)算機(jī)運(yùn)行速度、容量、可靠
性有顯著的提高,生產(chǎn)成本顯著下降,這為計(jì)算機(jī)的廣泛應(yīng)用創(chuàng)造了條件。一些復(fù)雜的、大
型的軟件開(kāi)發(fā)項(xiàng)目提出來(lái)了,但是,軟件開(kāi)發(fā)技術(shù)的進(jìn)步一直未能滿足發(fā)展的需要。在軟件
開(kāi)發(fā)中遇到的問(wèn)題找不到解決辦法,使問(wèn)題積累起來(lái),形成了尖銳的矛盾,因而導(dǎo)致了軟件
危機(jī)。
軟件危機(jī)表現(xiàn)在以下四個(gè)方面:
(1)經(jīng)費(fèi)預(yù)算經(jīng)常突破,完成時(shí)間一再拖延。由于缺乏軟件開(kāi)發(fā)的經(jīng)驗(yàn)和軟件開(kāi)發(fā)數(shù)據(jù)
的積累,使得開(kāi)發(fā)工作的計(jì)劃很難制定。主觀盲目制定計(jì)劃,執(zhí)行起來(lái)與實(shí)際情況有很大差
距,使得開(kāi)發(fā)經(jīng)費(fèi)一再突破。由于對(duì)工作量估計(jì)不足,對(duì)開(kāi)發(fā)難度估計(jì)不足,進(jìn)度計(jì)劃無(wú)法
按時(shí)完成,開(kāi)發(fā)時(shí)間一再拖延。
(2)開(kāi)發(fā)的軟件不能滿足用戶要求。開(kāi)發(fā)初期對(duì)用戶的要求了解不夠明確,未能得到明
確的表達(dá)。開(kāi)發(fā)工作開(kāi)始后,軟件人員和用戶又未能及時(shí)交換意見(jiàn),使得一些問(wèn)題不能及時(shí)
解決,導(dǎo)致開(kāi)發(fā)的軟件不能滿足用戶的要求,因而導(dǎo)致開(kāi)發(fā)失敗。
(3)開(kāi)發(fā)的軟件可維護(hù)性差。開(kāi)發(fā)過(guò)程中沒(méi)有同意的、公認(rèn)的規(guī)范,軟件開(kāi)發(fā)人員按各
自的風(fēng)格工作,各行其是,開(kāi)發(fā)過(guò)程無(wú)完整、規(guī)范的文檔,發(fā)現(xiàn)問(wèn)題后進(jìn)行雜亂無(wú)章的修改
。程序結(jié)構(gòu)不好,運(yùn)行時(shí)發(fā)現(xiàn)錯(cuò)誤也很難修改,導(dǎo)致維護(hù)性差。
(4)開(kāi)發(fā)的軟件可靠性差。由于在開(kāi)發(fā)過(guò)程中,沒(méi)有確保軟件質(zhì)量的體系和措施,在軟
件測(cè)試時(shí),又沒(méi)有嚴(yán)格的、充分的、完全的測(cè)試,提交給用戶的軟件質(zhì)量差,在運(yùn)行中暴露
出大量的問(wèn)題。
造成軟件危機(jī)的原因是:
(1)軟件的規(guī)模越來(lái)越大,結(jié)構(gòu)越來(lái)越復(fù)雜。(2)軟件開(kāi)發(fā)管理困難而復(fù)雜。(3)軟
件開(kāi)發(fā)費(fèi)用不斷增加。(4)軟件開(kāi)發(fā)技術(shù)落后。(5)生產(chǎn)方式落后。6)JT發(fā)工具落后,生產(chǎn)
率提高緩慢。
12.軟件質(zhì)量保證是軟件工程管理的重要內(nèi)容,軟件質(zhì)量保證應(yīng)做好以下幾方面的工作:
(1)采用技術(shù)手段和工具。質(zhì)量保證活動(dòng)要貫徹開(kāi)發(fā)過(guò)程始終,必須采用技術(shù)手段和工
具,尤其是使用軟件開(kāi)發(fā)環(huán)境來(lái)進(jìn)行軟件開(kāi)發(fā)。
(2)組織正式技術(shù)評(píng)審。在軟件開(kāi)發(fā)的每一個(gè)階段結(jié)束時(shí),都要組織正式的技術(shù)評(píng)審。
國(guó)家標(biāo)準(zhǔn)要求單位必須采用審查、文檔評(píng)審、設(shè)計(jì)評(píng)審、審計(jì)和測(cè)試等具體手段來(lái)保證質(zhì)量
(3)加強(qiáng)軟件測(cè)試。軟件測(cè)試是質(zhì)量保證的重要手段,因?yàn)闇y(cè)試可發(fā)現(xiàn)軟件中大多數(shù)潛
在錯(cuò)誤。
(4)推行軟件工程規(guī)范(標(biāo)準(zhǔn))。用戶可以自己制定軟件工程規(guī)范(標(biāo)準(zhǔn)),但標(biāo)準(zhǔn)一
旦確認(rèn)就應(yīng)貫徹執(zhí)行。
(5)對(duì)軟件的變更進(jìn)行控制。軟件的修改和變更常常會(huì)引起潛伏的錯(cuò)誤,因此必須嚴(yán)格
控制軟件的修改和變更。
(6)對(duì)軟件質(zhì)量進(jìn)行度量。即對(duì)軟件質(zhì)量進(jìn)行跟蹤,及時(shí)記錄和報(bào)告軟件質(zhì)量情況。
13.軟件生命周期分為7
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 文科科研課題項(xiàng)目申報(bào)書
- 市級(jí)重點(diǎn)課題申報(bào)書模板
- 課題立項(xiàng)申報(bào)書丟了
- 高職病理課題申報(bào)書
- 傳統(tǒng)文化相關(guān)課題申報(bào)書
- 廣東省課題申報(bào)書重復(fù)率
- 山東省課題申報(bào)書范文
- 出租雜物小倉(cāng)庫(kù)合同范本
- 單位食堂蔬菜配送合同范例
- 怎么拿到省級(jí)課題申報(bào)書
- 海智工作站申報(bào)計(jì)劃書
- 托管崗前培訓(xùn)教學(xué)課件
- 機(jī)房運(yùn)維管理制度
- 消渴病中醫(yī)護(hù)理的方案
- 昆明撫仙湖鰭魚(yú)灣棋盤山度假娛樂(lè)旅游區(qū)總體規(guī)劃方案樣本
- 突發(fā)疾病時(shí)的安全駕駛方法
- 污水處理廠入河排污口設(shè)置論證報(bào)告
- T-SHNA 0005-2023 成人住院患者腸外營(yíng)養(yǎng)輸注護(hù)理
- 課件:認(rèn)識(shí)鏡頭語(yǔ)言1:運(yùn)鏡方式和常用的鏡頭術(shù)語(yǔ)
- 職業(yè)道德(Professionalethics)教學(xué)課件
- 提升醫(yī)療質(zhì)量減少醫(yī)療糾紛
評(píng)論
0/150
提交評(píng)論