軟件工程試題及答案.doc_第1頁(yè)
軟件工程試題及答案.doc_第2頁(yè)
軟件工程試題及答案.doc_第3頁(yè)
軟件工程試題及答案.doc_第4頁(yè)
軟件工程試題及答案.doc_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、11.軟件生命期各階段的任務(wù)是什么?答:軟件生命期分為 7個(gè)階段:1、問題定義:要解決的問題是什么2、可行性研究:確定問題是否值得解,技術(shù)可行性、經(jīng)濟(jì)可行性、操作可行性3、需求分析:系統(tǒng)必須做什么4、總體設(shè)計(jì):系統(tǒng)如何實(shí)現(xiàn),包括系統(tǒng)設(shè)計(jì)和結(jié)構(gòu)設(shè)計(jì)5、詳細(xì)設(shè)計(jì):具體實(shí)現(xiàn)設(shè)計(jì)的系統(tǒng)6、實(shí)現(xiàn):編碼和測(cè)試7、運(yùn)行維護(hù):保證軟件正常運(yùn)行。2、軟件重用的效益是什么?答:1、軟件重用可以顯著地改善軟件的質(zhì)量和可靠性。2、軟件重用可以極大地提高軟件開發(fā)的效率。3、節(jié)省軟件開發(fā)的成本,避免不必要的重復(fù)勞動(dòng)和人力、財(cái)力的浪費(fèi)。3、自頂而下漸增測(cè)試與自底而上漸增測(cè)試各有何優(yōu)、缺點(diǎn)?答:自頂而下漸增測(cè)試優(yōu)點(diǎn):不需要測(cè)

2、試驅(qū)動(dòng)程序,能夠在測(cè)試階段的早期實(shí)現(xiàn)并驗(yàn)證系統(tǒng)的主要功能,而且能夠盡早發(fā)現(xiàn)上層模塊的接口錯(cuò)誤。缺點(diǎn):需要存根程序,底層錯(cuò)誤發(fā)現(xiàn)較晚。自底而上漸增測(cè)試優(yōu)點(diǎn)與缺點(diǎn)和自頂而下漸增測(cè)試相反。4、提高可維護(hù)性的方法有哪些?答:在軟件工程的每一階段都應(yīng)該努力提高系統(tǒng)的可維護(hù)性,在每個(gè)階段結(jié)束前的審查 和復(fù)審中,應(yīng)著重對(duì)可維護(hù)性進(jìn)行復(fù)審。在需求分析階段的復(fù)審中,應(yīng)對(duì)將來要擴(kuò)充和修改的部分加以注明。在討論軟件可移植 性問題時(shí),要考慮可能要影響軟件維護(hù)的系統(tǒng)界面。在軟件設(shè)計(jì)的復(fù)審中,因從便于修改、模塊化和功能獨(dú)立的目標(biāo)出發(fā),評(píng)價(jià)軟件的結(jié)構(gòu) 和過程,還應(yīng)對(duì)將來可能修改的部分預(yù)先做準(zhǔn)備。在軟件代碼復(fù)審中,應(yīng)強(qiáng)調(diào)編碼

3、風(fēng)格和內(nèi)部說明這兩個(gè)影響可維護(hù)性的因素。在軟件系統(tǒng)交付使用前的每一測(cè)試步驟中都應(yīng)給出需要進(jìn)行預(yù)防性維護(hù)部分的提示。在完成每項(xiàng)維護(hù)工作后,都應(yīng)對(duì)軟件維護(hù)本身進(jìn)行仔細(xì)認(rèn)真的復(fù)審。為了從根本上提高軟件系統(tǒng)的可維護(hù)性,人們正試圖通過直接維護(hù)軟件規(guī)格說明來維護(hù) 軟件,同時(shí)也在大力發(fā)展軟件重用技術(shù)。簡(jiǎn)述軟件測(cè)試要經(jīng)過哪幾個(gè)步驟,每個(gè)步驟與什么文檔有關(guān)?!窘獯稹繙y(cè)試過程按4個(gè)步驟進(jìn)行,即單元測(cè)試(模塊測(cè)試)、集成測(cè)試(子系統(tǒng)測(cè)試和系統(tǒng)測(cè) 試)、確認(rèn)測(cè)試(驗(yàn)收測(cè)試)和平行運(yùn)行。單元測(cè)試集中對(duì)用源代碼實(shí)現(xiàn)的每一個(gè)程序單元進(jìn)行測(cè)試,與其相關(guān)的文檔是單元測(cè)試計(jì)劃和詳細(xì)設(shè)計(jì)說明書。集成測(cè)試把已測(cè)試過的模塊組裝起來,主

4、要對(duì)與設(shè)計(jì)相關(guān)的軟件體系結(jié)構(gòu)的構(gòu)造進(jìn)行測(cè)2試。與其相關(guān)的文檔是集成測(cè)試計(jì)劃和軟件需求說明書。確認(rèn)測(cè)試則是要檢查已實(shí)現(xiàn)的軟件是否滿足了需求規(guī)格說明中確定了的各種需求,以及軟件配置是否完全、正確。與其相關(guān)的文檔是確認(rèn)測(cè)試計(jì)劃和軟件需求說明書。平行運(yùn)行把已經(jīng)經(jīng)過確認(rèn)的軟件納入實(shí)際運(yùn)行一起進(jìn)行測(cè)試。與其相關(guān)的文檔:用戶指南、使用手冊(cè)等。36.簡(jiǎn)述容錯(cuò)技術(shù)的四種主要手段,并解釋。結(jié)構(gòu)冗余:包括靜態(tài)冗余、動(dòng)態(tài)冗余和混合冗余。信息冗余:為檢測(cè)或糾正信息在運(yùn)算或傳輸中的錯(cuò)誤,須外加一部分信息。時(shí)間冗余:指重復(fù)執(zhí)行指令或程序來消除瞬時(shí)錯(cuò)誤帶來的影響。冗余附加技術(shù):指為實(shí)現(xiàn)上述冗余技術(shù)所需的資源和技術(shù)。36. 可

5、行性報(bào)告的主要內(nèi)容有哪些 ?解:一個(gè)可行性研究報(bào)告的主要內(nèi)容如下:(1) 引言:說明編寫本文檔的目的;項(xiàng)目的名稱、背景;本文檔用到的專門術(shù)語(yǔ)和參考資 料。(2) 可行性研究前提:說明開發(fā)項(xiàng)目的功能、性能和基本要求;達(dá)到的目標(biāo);各種限制條 件;可行性研究方法和決定可行性的主要因素。(3) 對(duì)現(xiàn)有系統(tǒng)的分析: 說明現(xiàn)有系統(tǒng)的處理流程和數(shù)據(jù)流程;工作負(fù)荷;各項(xiàng)費(fèi)用支出; 所需要各類專業(yè)技術(shù)人員的數(shù)量;所需要各種設(shè)備;現(xiàn)有系統(tǒng)存在什么問題。(4 )所建議系統(tǒng)的技術(shù)可行性分析:所建議系統(tǒng)的簡(jiǎn)要說明;處理流程和數(shù)據(jù)流程;與現(xiàn)有的系統(tǒng)比較的優(yōu)越性; 采用所建議系統(tǒng)對(duì)用戶的影響;對(duì)各種設(shè)備、現(xiàn)有軟件、開發(fā)環(huán)境

6、、運(yùn)行環(huán)境的影響;對(duì)經(jīng)費(fèi)支出的影響;對(duì)技術(shù)可行性的評(píng)價(jià)。(5)所建議系統(tǒng)的經(jīng)濟(jì)可行性分析:說明所建議系統(tǒng)的各種支出,各種效益;收益投資比;投資回收周期。(6 )社會(huì)因素可行性分析:說明法律因素,對(duì)合同責(zé)任、侵犯專利權(quán)、侵犯版權(quán)等問題的分析;說明用戶使用可行性,是否滿足用戶行政管理、工作制度、人員素質(zhì)的要求。(7 )其他可供選擇方案:逐一說明其他可供選擇的方案,并說明未被推薦的理由。(8)結(jié)論意見:說明項(xiàng)目是否能開發(fā);還需要什么條件才能開發(fā);對(duì)項(xiàng)目目標(biāo)有什么變動(dòng) 等。解析做軟件的可行性研究的目的就是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定該軟件項(xiàng)目 是否能夠開發(fā),是否值得去開發(fā),其中的問題能否解決,報(bào)

7、告共分為八個(gè)基本內(nèi)容。37.系統(tǒng)設(shè)計(jì)的內(nèi)容是什么?解:系統(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(3)處理器及任務(wù)分配。各并發(fā)子系統(tǒng)必須分配給單個(gè)硬

8、件單元,要么是一個(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)用、訪問時(shí)間、 容量以及可靠性之間做折中考慮。(5)全局資源的處理。必須確定全局資源,并且制定訪問全局資源的策略。全局資源包括:物理資源, 如處理器、 驅(qū)動(dòng)器等; 空間, 如盤空間、 工作站屏等; 邏輯名字, 如對(duì)

9、象標(biāo)識(shí)符、 類名、文件名等。如果資源是物理對(duì)象, 則可以通過建立協(xié)議實(shí)現(xiàn)對(duì)并發(fā)系統(tǒng)的訪問, 以達(dá)到自身控制; 如果 資源是邏輯實(shí)體, 如對(duì)象標(biāo)識(shí)符, 那么在共享環(huán)境中有沖突訪問的可能, 如獨(dú)立的事務(wù)可能 同時(shí)使用同一個(gè)對(duì)象標(biāo)識(shí)符, 則各個(gè)全局資源都必須有一個(gè)保護(hù)對(duì)象, 由保護(hù)對(duì)象來控制對(duì) 該資源的訪問。(6)選擇軟件控制機(jī)制。分析模型中所有交互行為都表示為對(duì)象之間的事件。系統(tǒng)設(shè)計(jì)必 須從多種方法中選擇某種方法來實(shí)現(xiàn)軟件的控制。(7)人機(jī)交互接口設(shè)計(jì)。設(shè)計(jì)中的大部分工作都與穩(wěn)定的狀態(tài)行為有關(guān),但必須考慮用戶 使用系統(tǒng)的交互接口。38什么是軟件危機(jī)?軟件危機(jī)的表現(xiàn)是什么?其產(chǎn)生的原因是什么? 解:

10、軟件發(fā)展第二階段的末期,由于計(jì)算機(jī)硬件技術(shù)的進(jìn)步,計(jì)算機(jī)運(yùn)行速度、容量、可靠 性有顯著的提高,生產(chǎn)成本顯著下降,這為計(jì)算機(jī)的廣泛應(yīng)用創(chuàng)造了條件。 一些復(fù)雜的、大 型的軟件開發(fā)項(xiàng)目提出來了, 但是, 軟件開發(fā)技術(shù)的進(jìn)步一直未能滿足發(fā)展的需要。在軟件開發(fā)中遇到的問題找不到解決辦法, 使問題積累起來, 形成了尖銳的矛盾, 因而導(dǎo)致了軟件 危機(jī)。軟件危機(jī)表現(xiàn)在以下四個(gè)方面:(1)經(jīng)費(fèi)預(yù)算經(jīng)常突破,完成時(shí)間一再拖延。由于缺乏軟件開發(fā)的經(jīng)驗(yàn)和軟件開發(fā)數(shù)據(jù)的 積累,使得開發(fā)工作的計(jì)劃很難制定。 主觀盲目制定計(jì)劃, 執(zhí)行起來與實(shí)際情況有很大差距, 使得開發(fā)經(jīng)費(fèi)一再突破。 由于對(duì)工作量估計(jì)不足, 對(duì)開發(fā)難度估計(jì)

11、不足, 進(jìn)度計(jì)劃無(wú)法按時(shí) 完成,開發(fā)時(shí)間一再拖延。(2)開發(fā)的軟件不能滿足用戶要求。開發(fā)初期對(duì)用戶的要求了解不夠明確,未能得到明確 的表達(dá)。 開發(fā)工作開始后, 軟件人員和用戶又未能及時(shí)交換意見, 使得一些問題不能及時(shí)解 決,導(dǎo)致開發(fā)的軟件不能滿足用戶的要求,因而導(dǎo)致開發(fā)失敗。(3)開發(fā)的軟件可維護(hù)性差。開發(fā)過程中沒有同意的、公認(rèn)的規(guī)范,軟件開發(fā)人員按各自 的風(fēng)格工作,各行其是,開發(fā)過程無(wú)完整、規(guī)范的文檔,發(fā)現(xiàn)問題后進(jìn)行雜亂無(wú)章的修改。 程序結(jié)構(gòu)不好,運(yùn)行時(shí)發(fā)現(xiàn)錯(cuò)誤也很難修改,導(dǎo)致維護(hù)性差。(4)開發(fā)的軟件可靠性差。由于在開發(fā)過程中,沒有確保軟件質(zhì)量的體系和措施,在軟件 測(cè)試時(shí),又沒有嚴(yán)格的、充

12、分的、完全的測(cè)試,提交給用戶的軟件質(zhì)量差,在運(yùn)行中暴露出 大量的問題。造成軟件危機(jī)的原因是:(1)軟件的規(guī)模越來越大,結(jié)構(gòu)越來越復(fù)雜。 (2)軟件開發(fā)管理困難而復(fù)雜。 ( 3)軟件開 發(fā)費(fèi)用不斷增加。 ( 4)軟件開發(fā)技術(shù)落后。 (5)生產(chǎn)方式落后。 6)開發(fā)工具落后,生產(chǎn)率 提高緩慢。39.軟件質(zhì)量保證應(yīng)做好哪幾方面的工作?解:軟件質(zhì)量保證是軟件工程管理的重要內(nèi)容,軟件質(zhì)量保證應(yīng)做好以下幾方面的工作:(1) 采用技術(shù)手段和工具。 4質(zhì)量保證活動(dòng)要貫徹開發(fā)過程始終,必須采用技術(shù)手段和工具, 尤其是使用軟件開發(fā)環(huán)境來進(jìn)行軟件開發(fā)。(2) 組織正式技術(shù)評(píng)審。在軟件開發(fā)的每一個(gè)階段結(jié)束時(shí),都要組織正

13、式的技術(shù)評(píng)審。國(guó) 家標(biāo)準(zhǔn)要求單位必須采用審查、文檔評(píng)審、設(shè)計(jì)評(píng)審、審計(jì)和測(cè)試等具體手段來保證質(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ì)量情況。解析軟件的質(zhì)量保證是向用戶及社會(huì)提供滿意的高質(zhì)量的產(chǎn)品,確保軟件產(chǎn)品從誕生到消 亡為止的所有階段的質(zhì)量的活動(dòng),是軟件工程管理中的重

14、要內(nèi)容。40.請(qǐng)使用PAD圖和PDL語(yǔ)言描述在數(shù)組 A (1 )A (10)中找最大數(shù)的算法。解:PDL語(yǔ)言:N=1WHILE N=10 DOIF A ( N) =A ( N+1) MAX =A ( N+1);ELSE MAX =A( N) ENDIF;N=N+1;ENDWHILE;PAD 圖:解析人工查找時(shí),是從第一個(gè)元素開始查找, 用當(dāng)前元素與下一個(gè)元素比較, 較大者作為當(dāng)前元素又與下一元素比較,如此循環(huán),直到數(shù)組末尾。四、應(yīng)用題(每題8分,共40分)42.某電器集團(tuán)公司下屬的廠包括技術(shù)科、生產(chǎn)科等基層單位。現(xiàn)在想建立一個(gè)計(jì)算機(jī)輔 助企業(yè)管理系統(tǒng),其中:生產(chǎn)科的任務(wù)是:(1 )根據(jù)銷售公司

15、轉(zhuǎn)來的內(nèi)部合同(產(chǎn)品型號(hào)、規(guī)格、數(shù)量、交獲日期)制定車 間月生產(chǎn)計(jì)劃。(2)根據(jù)車間實(shí)際生產(chǎn)日?qǐng)?bào)表、周報(bào)表調(diào)整月生產(chǎn)計(jì)劃表中列出所有需產(chǎn)生3)以月生產(chǎn)計(jì)劃為以及,制定產(chǎn)品設(shè)計(jì)(結(jié)構(gòu)、工藝)及產(chǎn)品組裝月計(jì)劃。(4 )將產(chǎn)品的組裝計(jì)劃傳達(dá)到各科,將組裝月計(jì)劃分解為周計(jì)劃,下達(dá)給車間 技術(shù)科的任務(wù)是:(1)根據(jù)生產(chǎn)科轉(zhuǎn)來的組裝計(jì)劃進(jìn)行產(chǎn)品結(jié)構(gòu)設(shè)計(jì),產(chǎn)生產(chǎn)品裝配圖給生產(chǎn)科, 產(chǎn)生外購(gòu)需求計(jì)劃給供應(yīng)科,并產(chǎn)生產(chǎn)品自制物料清單。(2)根據(jù)組裝計(jì)劃進(jìn)行產(chǎn)品工藝設(shè)計(jì),根據(jù)產(chǎn)品自制物料清單產(chǎn)生工藝流程圖給 零件廠。 試寫出以上系統(tǒng)中生產(chǎn)科和技術(shù)科處理的軟件結(jié)構(gòu)圖。解:畫出生產(chǎn)科圖的給 6分,畫出技術(shù)科的給 4分

16、。解析軟件結(jié)構(gòu)圖是軟件系統(tǒng)的模塊層次結(jié)構(gòu),反映了整個(gè)系統(tǒng)的功能實(shí)現(xiàn),即將來程序的控制層次體系, 軟件結(jié)構(gòu)往往用樹狀或網(wǎng)狀結(jié)構(gòu)的圖形來表示,其主要內(nèi)容有模塊及模塊的控制關(guān)系,根據(jù)題意,可繪制出生產(chǎn)科和技術(shù)科的軟件結(jié)構(gòu)圖,其中生產(chǎn)科的結(jié)構(gòu)圖深度和寬度均為 4,技術(shù)科的結(jié)構(gòu)圖的深度和寬度均為3。1、假設(shè)一家工廠的采購(gòu)部每天需要一張定貨報(bào)表,報(bào)表按零件編號(hào)排序,要再次定貨的零件。對(duì)于每個(gè)需要再次定貨的零件應(yīng)該列出下述數(shù)據(jù):零件編號(hào),零件 名稱,定貨數(shù)量,目前價(jià)格,主要供應(yīng)者,次要供應(yīng)者。零件入庫(kù)或出庫(kù)稱為事務(wù),通 過放在倉(cāng)庫(kù)中的 CRT終端把事務(wù)報(bào)告給定貨系統(tǒng)。當(dāng)某種零件的庫(kù)存數(shù)量少于庫(kù)存量 臨界值時(shí)

17、就應(yīng)該再次定貨。要求:畫出系統(tǒng)的數(shù)據(jù)流圖。答:i.l按收 心宦IS(2)PAD 圖i = 1; j = 0;while ( i = 10 )輸入 a, b, c;計(jì)算 p = b2 - 4ac;p 0 ? .-T求出根并輸出p = 0 ?-求出重根并輸出;j=j+1;i = i + 1;輸出重根的方程個(gè)數(shù)i2、將下面給出的偽碼轉(zhuǎn)換為N-S圖和PAD圖。void root ( float rootl, float root2 ) i = 1; j = 0;while ( i = 10 ) 輸入一元二次方程的系數(shù)a, b, c;p = b*b - 4*a*c ;if ( p 0 )求出根并輸出;i

18、f ( p = 0 ) 求出重根并輸出;j = j + 1 ;i = i +1 ;輸出重根的方程的個(gè)數(shù)j;【解答】(1) N-S 圖輸入 a,b,c;計(jì)算 p = b2Tac;i = 1; j = 0;6p 0 ?求出根并輸出71234一一一一一一一一一一一一一一一一一3、:輸入三整數(shù),判斷是否構(gòu)成三角形,如構(gòu)成三角形,則輸出三條邊的值,否則輸出”不能構(gòu)成三角形” 要求:1.用程序流程圖表示該問題的算法;2計(jì)算程序復(fù)雜度;3設(shè)計(jì)路徑覆蓋的測(cè)試用例。答:路徑:4、某航空公司規(guī)定,乘客可以免費(fèi)托運(yùn)重量不超過30kg的行李。當(dāng)行李重量超過 30kg時(shí),對(duì)頭等艙的國(guó)內(nèi)乘客超重部分每公斤收費(fèi)4元,對(duì)其他

19、艙的國(guó)內(nèi)乘客超重部分每公斤收費(fèi)6元,對(duì)外國(guó)乘客超重部分每公斤收費(fèi)比國(guó)內(nèi)乘客多一倍,對(duì)殘疾乘客超重部分每公斤收費(fèi) 比正常乘客少一半。用判定樹表示與上述每種條件組合相對(duì)應(yīng)的計(jì)算行李費(fèi)的算法答案:30)X3-30)X6(P-WJX4-10)X6(0-50)X12_0* I殘接乘喜 -頭弄艙十皿二亠1一 F聊褲笄我疾乘霽世常乘霽毀帳乘常1E當(dāng)乘祚賤枚乘笄IL常乘霽程序復(fù)雜度=3+1=4測(cè)試用例路徑測(cè)試用例(A, B, C)結(jié)果1A=3,B=4,C=5A=3,B=4,C=52A=5,B=8,C=2不能構(gòu)成三角形3A=2,B=2,C=5不能構(gòu)成三角形4A=5,B=2,C=2不能構(gòu)成三角形5、一個(gè)軟件公司有

20、許多部門,分為開發(fā)部門和管理部門兩種,每個(gè)開發(fā)部門開發(fā)多個(gè)軟件 產(chǎn)品,每個(gè)部門由部門名字唯一確定。該公司有許多員工,員工分為經(jīng)理,工作人員和開 發(fā)人員。開發(fā)部門有經(jīng)理和開發(fā)人員, 管理部門有經(jīng)理和工作人員。每個(gè)開發(fā)人員可參加多個(gè)開發(fā)項(xiàng)目,每個(gè)開發(fā)項(xiàng)目需要多個(gè)開發(fā)人員,每位經(jīng)理可主持多個(gè)開發(fā)項(xiàng)目,建立該公司的對(duì)象模型。答案:92.2. 復(fù)印機(jī)的工作過程大致如下: 未接到復(fù)印命令時(shí)處于閑置狀態(tài), 一 旦接到復(fù)印命令則進(jìn)入復(fù)印狀態(tài), 完成一個(gè)復(fù)印命令規(guī)定的工作后又 回到閑置狀態(tài),等待下一個(gè)復(fù)印命令; 如果執(zhí)行復(fù)印命令時(shí)發(fā)現(xiàn)沒紙, 則進(jìn)入缺紙狀態(tài),發(fā)出警告,等待裝紙,裝滿紙后進(jìn)入閑置狀態(tài),準(zhǔn) 備接收復(fù)

21、印命令; 如果復(fù)印時(shí)發(fā)生卡紙故障, 則進(jìn)入卡紙狀態(tài), 發(fā)出 警告等待維修人員來排除故障,故障排除后回到閑置狀態(tài)。 請(qǐng)用狀態(tài)轉(zhuǎn)換圖描繪復(fù)印機(jī)的行為。10卡紙從問題陳述可知,復(fù)印機(jī)的狀態(tài)主要有“閑置”屠“復(fù) 、盜缺紙”和“卡紙” O引起狀態(tài)轉(zhuǎn)換的事件主要是復(fù)印命令”.“完成復(fù)印命令” “發(fā)現(xiàn)缺紙即 紙粹.“發(fā)生卡紙故障”和杯排除了卡紙故障粹O排除r卡紙故障一完成復(fù)印命令11裝満址do準(zhǔn)告3.3.根據(jù)下邊的程序流程圖,畫出相應(yīng)的 N-SN-S圖,并計(jì)算它的環(huán)形復(fù)雜 度。ii5.5.某報(bào)社米用面向?qū)ο蠹夹g(shù)實(shí)現(xiàn)報(bào)刊征訂的計(jì)算機(jī)管理系統(tǒng),該系統(tǒng) 基本需求如下:(1 1)報(bào)社發(fā)行多種刊物,每種刊物通過訂單來

22、征訂,訂單中有代碼,名稱,訂期,單價(jià),份數(shù)等項(xiàng)目,訂戶通過填寫訂單來 訂閱報(bào)刊。(2 2)報(bào)社下屬多個(gè)發(fā)行站,每個(gè)站負(fù)責(zé)收集登錄訂單、打印收款 憑證等事務(wù)。(3 3)報(bào)社負(fù)責(zé)分類并統(tǒng)計(jì)各個(gè)發(fā)行站送來的報(bào)刊訂閱信息。請(qǐng)就此需求建立對(duì)象模型。(1515分)6.6.在要建立的某庫(kù)房簡(jiǎn)化的信息管理系統(tǒng)中,庫(kù)房管理員負(fù)責(zé):1 1)當(dāng)新的貨物需要入庫(kù)時(shí),根據(jù)入庫(kù)單(品名,編號(hào),生產(chǎn)廠家,13入庫(kù)單年終打印請(qǐng)求物品編號(hào)庫(kù)房管理員理 管 房 庫(kù)出庫(kù)單日結(jié)請(qǐng)求年終庫(kù)存金額各種暫澤 X存情況表員 理 管 房 庫(kù)數(shù)量,單價(jià),日期)錄入物品信息2 2)當(dāng)接到出庫(kù)單(品名,編號(hào),數(shù)量,日期)時(shí),進(jìn)行數(shù)量的修 改。3 3

23、)當(dāng)日結(jié)時(shí),打印庫(kù)房商品庫(kù)存清單(品名,編號(hào),庫(kù)存量,庫(kù) 存金額)。就以上系統(tǒng)功能畫出0 0層,1 1層的DFDF圖。i該茶統(tǒng)的煎層DF6庫(kù)房主任ii頂層DFD的數(shù)據(jù)詞典。入庫(kù)單=品名+編號(hào)+生產(chǎn)廠家+數(shù)量+單價(jià)+日期 出庫(kù)單=品名+編號(hào)+數(shù)量+日期庫(kù)存清單=品名+編號(hào)+庫(kù)存量+庫(kù)存余額 年終庫(kù)存情況表=品名+編號(hào)+庫(kù)存量+庫(kù)存金額14-.物品編號(hào)云需年終打印請(qǐng)求年終庫(kù)育金額年終的庫(kù)存情況表iii最后可用的DFD。舉倒說明如下:簡(jiǎn)答題1.軟件工程的七條基本原理是什么? 答:軟件工程的七條基本原理是:(1)用分階段的是的生存周期計(jì)劃嚴(yán)格管理(2)堅(jiān)持進(jìn)行階段評(píng)審;(3)嚴(yán)格實(shí)施的產(chǎn)品控制 (4)

24、采用現(xiàn)代程序技術(shù) (5)結(jié)果應(yīng)能清楚地審查;(6)開發(fā)小組的成員應(yīng)該少而精 (7)承認(rèn)不斷改進(jìn)軟件工程的必要性。2.良好的編碼風(fēng)格應(yīng)具備哪些條件?答:應(yīng)具備以下條件:(1)使用標(biāo)準(zhǔn)的控制結(jié)構(gòu)(2)有限制地使用 GOTO語(yǔ)句(3 )源程序的文檔化(應(yīng)具備以下內(nèi)容) 有意義的變量名稱一一“匈牙利命名規(guī)則 ” 適當(dāng)?shù)淖⑨屢灰弧白⑨屢?guī)范” 標(biāo)準(zhǔn)的書寫格式:用分層縮進(jìn)的寫法顯示嵌套結(jié)構(gòu)的層次(鋸齒形風(fēng)格)在注釋段的周圍加上邊框在注釋段與程序段、以及不同程序段之間插入空行每行只寫一條語(yǔ)句書寫表達(dá)式時(shí),適當(dāng)使用空格或圓括號(hào)等作隔離符(4)滿足運(yùn)行工程學(xué)的輸入輸出風(fēng)格3.簡(jiǎn)述文檔在軟件工程中的作用答: (1)

25、提高軟件開發(fā)過程的能見度(2)提高開發(fā)效率(3)作為開發(fā)人員階段工作成果和結(jié)束標(biāo)志(4)記錄開發(fā)過程的有關(guān)信息便于使用與維護(hù)(5)提供軟件運(yùn)行、維護(hù)和培訓(xùn)有關(guān)資料(6)便于用戶了解軟件功能、性能9.什么是模塊化?模塊設(shè)計(jì)的準(zhǔn)則?模塊化是按規(guī)定的原則將一個(gè)大型軟件劃分為一個(gè)個(gè)較小的、相對(duì)獨(dú)立但又相關(guān)的模塊模塊設(shè)計(jì)的準(zhǔn)則:(1)改進(jìn)軟件結(jié)構(gòu) , 提高模塊獨(dú)立性 : 在對(duì)初步模塊進(jìn)行合并、分解和移動(dòng)的分析、精 化過程中力求提高模塊的內(nèi)聚,降低藕合15(2)模塊大小要適中 : 大約 50 行語(yǔ)句的代碼, 過大的模塊應(yīng)分解以提高理解性和可維護(hù) 性; 過小的模塊 , 合并到上級(jí)模塊中(3)軟件結(jié)構(gòu)圖的深度

26、、寬度、扇入和扇出要適當(dāng)一般模塊的調(diào)用個(gè)數(shù)不要超過 5 個(gè)(4)盡量降低模塊接口的復(fù)雜程度(5)設(shè)計(jì)單入口、單出口的模塊(6)模塊的作用域應(yīng)在控制域之內(nèi)10.什么是模塊獨(dú)立性?用什么度量? 答:模塊獨(dú)立性概括了把軟件劃分為模塊時(shí)要遵守的準(zhǔn)則, 也是判斷模塊構(gòu)造是不是合理的 標(biāo)準(zhǔn)。獨(dú)立性可以從兩個(gè)方面來度量:即模塊本身的內(nèi)聚和模塊之間的耦合。11.變換型數(shù)據(jù)流由哪幾部分組成? 變換型結(jié)構(gòu)由三部分組成 : 傳入路徑、變換 ( 加工) 中心 和 傳出路徑12.變換分析設(shè)計(jì)的步驟?區(qū)分傳入、傳出和變換中心三部分,劃分DFD圖的分界線(2)完成第一級(jí)分解:建立初始SC圖的框架(3)完成第二級(jí)分解:分解S

27、C圖的各個(gè)分支(4)對(duì)初始結(jié)構(gòu)圖按照設(shè)計(jì)準(zhǔn)則進(jìn)行精化與改進(jìn)14. 事務(wù)分析設(shè)計(jì)的步驟?(1)在DFD圖中確定事務(wù)中心、接收部分 (包含全部接收路徑)和 發(fā)送部分(包含全部 動(dòng)作路徑 )(2)畫出SC圖框架,把DFD圖的三部分,分別映射為事務(wù)控制模塊,接收模塊和動(dòng)作發(fā)送模塊一般得到SC圖的頂層和第一層(如果第一層簡(jiǎn)單可以并入頂層)(3)分解和細(xì)化接收分支和動(dòng)作分支,完成初始的SC圖(4)對(duì)初始結(jié)構(gòu)圖按照設(shè)計(jì)準(zhǔn)則進(jìn)行精化與改進(jìn) 15數(shù)據(jù)字典包括哪些內(nèi)容 ?數(shù)據(jù)字典是描述數(shù)據(jù)流圖中數(shù)據(jù)的信息的集合。它對(duì)數(shù)據(jù)流圖上每一個(gè)成分:數(shù)據(jù)項(xiàng)、 文件 (數(shù)據(jù)結(jié)構(gòu) )、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、加工和外部項(xiàng)等給以定義和說

28、明;它主要由數(shù)據(jù)流描 述、加工描述和文件描述三部分組成 16給出一組數(shù)從小到大的排序算法,分別用下列工具描述其詳細(xì)過程:(1)流程圖;(2)N-S圖;(3) PDL語(yǔ)言16i=l TQ 11-1!K=|j-H TO ninj1心越皿) A(mS17.欲開發(fā)一個(gè)銀行的活期存取款業(yè)務(wù)的處理系統(tǒng):儲(chǔ)戶將填好的存/取款單和存折交給銀行工作人員,然后由系統(tǒng)作以下處理(1)業(yè)務(wù)分類處理:系統(tǒng)首先根據(jù)儲(chǔ)戶所填的存/取款單,確定本次業(yè)務(wù)的性質(zhì),并將存 /取款單和存折交下一步處理(2)存款處理:系統(tǒng)將存款單上的存款金額分別記錄在存折和帳目文件中,并將現(xiàn)金存入現(xiàn)金庫(kù);最后將存折還給儲(chǔ)戶(3)取款處理:系統(tǒng)將取款單

29、上的取款金額分別記錄在存折和帳目文件中,并從現(xiàn)金庫(kù)提取現(xiàn)金;最后將現(xiàn)金和存折還給儲(chǔ)戶繪制該系統(tǒng)的數(shù)據(jù)流圖和軟件結(jié)構(gòu)圖17S審査、館戶EF .羊妬J L不臺(tái)格葷堆軟件結(jié)構(gòu)圖存取款業(yè)務(wù)系統(tǒng)2合格單384今格存折、存就字好改咔目文件修改存折修改現(xiàn)金晰舉例說明?26.等價(jià)分類法的測(cè)試技術(shù)采用的一般方法層忻訊7?圻存就蟬敢切斤iTr A 審卄啟只襯怖El) KI金療存款處理取款處理18(1)為每個(gè)等價(jià)類編號(hào)19(2)設(shè)計(jì)一個(gè)新的測(cè)試方案,以盡可能多的覆蓋尚未被覆蓋的有效等價(jià)類,重復(fù)這一步驟,直到所有有效等價(jià)類被覆蓋為止(3)設(shè)計(jì)一個(gè)新的測(cè)試方案,使它覆蓋一個(gè)尚未被覆蓋的無(wú)效等價(jià)類,重復(fù)這一步驟直到所有無(wú)

30、效等價(jià)類被覆蓋為止(例略)27.如圖顯示某程序的邏輯結(jié)構(gòu)試為它設(shè)計(jì)足夠的測(cè)試用例,分別實(shí)現(xiàn)對(duì)程序的判定覆概、條件覆概和條件組合覆概。設(shè)計(jì)測(cè)試方案覆蓋種類需滿足的條件測(cè)試數(shù)據(jù)期望結(jié)果A1,B=0A=2,B=0執(zhí)行S1判定覆蓋A1,B 0 或A 1,B=0 或A 1,B 0A=2,B=1 或A=1,B=0 或A=1,B=1執(zhí)行S2以下四種情況各出現(xiàn)一次A1B=0A=2, B=0執(zhí)行S1條件覆蓋A 1B 0A=1,B=1執(zhí)行S2A1,B=0A=2,B=0執(zhí)行S1A1,B 0A=2,B=1執(zhí)行S2A 1,B=0A=1,B=0執(zhí)行S2條件組合 覆蓋A 1,B 0A=1,B=1執(zhí)行S228.某城市電話號(hào)碼

31、由三部分組成。它們的名稱和內(nèi)容分別是:地區(qū)碼:空白或三位數(shù)字前綴:非0或 1的三位數(shù)字后綴:4位數(shù)字假定被測(cè)程序能接受一切符合上述規(guī)定的電話號(hào)碼,拒絕所有不符合規(guī)定的電話號(hào)碼。根據(jù)該程序的規(guī)格說明,作等價(jià)類的劃分,并設(shè)計(jì)測(cè)試方案。劃分等價(jià)類輸入條件有效等價(jià)類無(wú)效等價(jià)類地區(qū)碼1.空白;2.三位數(shù);1.有非數(shù)字字符;2.少于三位數(shù)字;3.多于三位數(shù)字。前綴3.從200到999之間的三位4.有非數(shù)字字符;5.起始位為06.起始位為17.少于三位數(shù)字;8.多于三位數(shù)字。后綴4.四位數(shù)字。9.有非數(shù)字字符;10.少于四位數(shù)字; 11.多于四位數(shù)字。設(shè)計(jì)測(cè)試方案20(a)程序流程圖X=X/AX=X+1內(nèi)容

32、方 案地區(qū)碼前綴后綴輸入預(yù)期 輸出1空白四位數(shù)字()276-2345有效2三位數(shù)字200999之間的三位數(shù)字四位數(shù)字(635)805-9321有效3有非數(shù)字字符(20A)723-4567無(wú)效4少于三位數(shù)字(33 )234-5678無(wú)效5多于三位數(shù)字(5555)345-6789無(wú)效6有非數(shù)字字符十(345)5A2-3456無(wú)效7起始位為0(345)012-3456無(wú)效8起始位為1(345)132-3456無(wú)效9少于三位數(shù)字(345) 92-3456無(wú)效10多于三位數(shù)字(345)4562-3456無(wú)效11有非數(shù)字字符(345)342-3A56無(wú)效12少于四位數(shù)字(345)342- 356無(wú)效13多

33、于四位數(shù)字(345)562-34567無(wú)效29為什么說軟件的維護(hù)是不可避免的?因?yàn)檐浖拈_發(fā)過程中, 一般很難檢測(cè)到所有的錯(cuò)誤,其次軟件在應(yīng)用過程中需要隨用戶新的要求或運(yùn)行環(huán)境的變化而進(jìn)行軟件的修改或完成功能的增刪等,為了提高軟件的應(yīng)用水平和使用壽命,軟件的維護(hù)是不可避免的。22.試由程序流程圖導(dǎo)出程序圖30.軟件的維護(hù)一般分為哪幾類?完善性維護(hù):滿足用戶在使用過程中提出增加新的功能或修改已有功能,以滿足用戶日益增長(zhǎng)的需要而進(jìn)行的工作TFFA1TB=0FA=2X1岀口入口(b)導(dǎo)出程序圖21A=1, B=1, X=1A=3, B=0, X=3A=1, B=1, X=2適應(yīng)性維護(hù):是軟件適應(yīng)新的運(yùn)行環(huán)境而進(jìn)行的工作糾錯(cuò)性維護(hù): 糾正開發(fā)期間未發(fā)現(xiàn)的遺留錯(cuò)誤, 即在程序使用期間發(fā)現(xiàn)的程序錯(cuò) 誤進(jìn)行診斷和改正的過程預(yù)防性維護(hù):為了改善未來的可維護(hù)性或可靠性而修改軟件

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論