




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、目錄第1章習題 . 2第2章習題 . 4第3章習題 . 5第4章習題 . 8第5章習題 . 13第6章習題 . 18第7章習題 . 25第8章習題 25第9章習題 33第10章習題 . 35第1章1對于硬件是有形的而軟件是無形的觀點,有人提出了不同的看法。他認為軟件也是有形的,例如,軟件需要安裝才能工作,軟件安裝之后會占據(jù)一定的磁盤空間。對此,你是什么看法?解答:軟件是抽象的、無形的。軟件之所以需要安裝并占據(jù)一定的磁盤空間,正說明了軟件對硬件的依賴,它不能獨立存在。2軟件按服務(wù)對象的不同可分為通用軟件和定制軟件。試舉例說明這兩類軟件的區(qū)別。解答:通用軟件一般由軟件開發(fā)機構(gòu)自主開發(fā)并通過市場推廣
2、、銷售,如Microsoft Word,它是完全由Microsoft自主開發(fā)并通過市場推廣、銷售的文字處理軟件。定制軟件則通常受特定客戶委托并在合同的約束下開發(fā)。例如,某專門設(shè)備的控制系統(tǒng)、某特定企業(yè)的業(yè)務(wù)管理系統(tǒng)、某智能大廈的監(jiān)控與管理系統(tǒng)、某城市的交通監(jiān)管系統(tǒng)等。定制類軟件通常由客戶進行軟件描述,并以此為基本依據(jù)確定軟件規(guī)格。3程序系統(tǒng)時代出現(xiàn)的“軟件作坊”有什么特點?解答:軟件作坊雖然也生產(chǎn)具有工業(yè)化特征的軟件產(chǎn)品,但軟件作坊是一種比較松散的組織機構(gòu),缺少工業(yè)化企業(yè)應(yīng)具有的標準、規(guī)范和制度,因此不能使軟件生產(chǎn)過程工業(yè)化。4某軟件公司搶時間為某單位開發(fā)了一個人事管理軟件,但軟件交付用戶使用
3、一段時間之后,用戶有了抱怨,原因是單位里某個職工改了名字,但人事管理軟件卻不允許修改姓名,而只能刪除整條記錄以后重新輸入。試從軟件危機角度對這個問題做一些評論。解答:由于軟件開發(fā)過程中軟件開發(fā)人員和用戶之間缺乏信息交流,以至用戶的需求沒有在軟件規(guī)格定義中充分體現(xiàn),從而導致開發(fā)出來的軟件不能安全滿足用戶的實際應(yīng)用需要。5什么是軟件工程?解答:軟件工程是一門關(guān)于軟件開發(fā)與維護的工程學科,其涉及軟件生產(chǎn)的各個方面,包括工程過程、工程原則、技術(shù)方法與工具以及工程項目管理等,能夠為經(jīng)濟、高效地開發(fā)高質(zhì)量的軟件產(chǎn)品提供有效的支持。6什么是軟件工程方法?簡要說明一些主要的軟件工程方法。解答:軟件工程方法是指
4、完成軟件開發(fā)與維護任務(wù)時,應(yīng)該“如何做”的技術(shù)方法。主要的軟件工程方法有:結(jié)構(gòu)化方法、JSD方法和面向?qū)ο蠓椒?。結(jié)構(gòu)化方法是傳統(tǒng)的基于軟件生命周期的軟件工程方法,以軟件功能為目標來進行軟件構(gòu)建,包括結(jié)構(gòu)化分析、結(jié)構(gòu)化設(shè)計、結(jié)構(gòu)化實現(xiàn)和結(jié)構(gòu)化維護。JSD方法主要用于軟件設(shè)計,由法國科學家Jackson提出。它以軟件中的數(shù)據(jù)結(jié)構(gòu)為基本依據(jù)來進行軟件結(jié)構(gòu)與程序算法設(shè)計,是對結(jié)構(gòu)化軟件設(shè)計方法的有效補充。面向?qū)ο蠓椒ㄒ攒浖栴}域中的對象為基本依據(jù)來構(gòu)造軟件系統(tǒng)模型,包括面向?qū)ο蠓治?、面向?qū)ο笤O(shè)計、面向?qū)ο髮崿F(xiàn)和面向?qū)ο缶S護。7什么是軟件工具? Visual C+屬于什么類型的軟件工具?解答:軟件工具通
5、常也稱為 CASE,它是計算機輔助軟件工程(Computer-Aided Software Engineering)的英文縮寫,是為了方便軟件工程方法的運用而提供的具有自動化特征的軟件開發(fā)支撐環(huán)境。CASE工具覆蓋面很廣,包括分析建模、設(shè)計建模、源代碼編輯生成、軟件測試等。其中,用來支持軟件分析、設(shè)計的CASE工具,如數(shù)據(jù)字典管理器、分析建模圖形編輯器、軟件結(jié)構(gòu)設(shè)計器,被稱為高端CASE工具;而用來支持軟件實現(xiàn)和測試的工具,如程序編輯器、程序分析器、調(diào)試器等,則被稱為低端工具。Visual C+的用途是程序編輯、程序分析與調(diào)試,因此是低端工具。8你是如何看待軟件工程過程的?軟件過程中最基本的活
6、動有哪些?解答:軟件工程過程是指開發(fā)軟件時所進行的一系列軟件工程活動,這些活動需要通過制訂工作步驟體現(xiàn),它應(yīng)該是科學的、合理的,否則將影響軟件開發(fā)的成本、進度與產(chǎn)品質(zhì)量。軟件工程過程并不固定,不同的產(chǎn)品開發(fā)會有不同的活動,但均包括四項基本活動:軟件定義、軟件開發(fā)、軟件驗證和軟件維護。9軟件工程管理主要包括哪些方面的內(nèi)容?解答:軟件工程管理的主要內(nèi)容有:1. 項目規(guī)劃;2. 項目資源調(diào)配;3. 軟件產(chǎn)品控制。10B. W. Boehm提出的軟件工程基本原則是什么?解答:B. W. Boehm總結(jié)了以下7條基本原則。(1)采用分階段的生命周期計劃,以嚴格對項目的管理;(2)堅持階段評審制度,以確保
7、軟件產(chǎn)品質(zhì)量;(3)實行嚴格的產(chǎn)品控制,以適應(yīng)軟件規(guī)格的變更;(4)采用先進的程序設(shè)計技術(shù);(5)軟件成果應(yīng)該能夠清楚地審查;(6)開發(fā)小組的人員應(yīng)該少而精;(7)承認不斷改進軟件工程實踐的必要性。11什么是軟件工程目標?如何解決多個目標之間出現(xiàn)的矛盾?解答:軟件工程目標是基于軟件項目目標的成功實現(xiàn)而提出的,并主要體現(xiàn)為以下幾個目標:(1)軟件開發(fā)成本較低;(2)軟件功能能夠滿足用戶的需求;(3)軟件性能較好;(4)軟件可靠性高; (5)軟件易于使用、維護與移植;(6)能按時完成開發(fā)任務(wù),并及時交付使用。在一個具體項目中,以上幾個目標之間很可能會出現(xiàn)沖突,例如,若只顧降低開發(fā)成本,則可能由此導
8、致軟件的性能與可靠性也隨之降低;另一方面,如果太過于追求軟件的性能,則可能使得開發(fā)出來的軟件對硬件有較大的依賴。因此,在實際的軟件項目中,往往需要在幾個目標中進行平衡。此時,軟件的質(zhì)量應(yīng)該擺到最重要的位置加以考慮。因此,軟件的可用性、有效性、可靠性和可維護性等往往需要特別關(guān)注。12什么是軟件工程文化?其中的價值觀是什么?解答:軟件工程文化是指工程人員在軟件開發(fā)中所應(yīng)該具備的產(chǎn)品質(zhì)量觀、價值觀、道德準則和團隊意識等。其中的價值觀是指軟件企業(yè)上下對軟件工程價值有一致的認同。第2章1什么是軟件生命周期?根據(jù)國家標準計算機軟件開發(fā)規(guī)范,軟件生命周期主要包括哪些階段?解答:軟件生命周期是指軟件定義、開發(fā)
9、、運行維護,直至被淘汰的全過程。根據(jù)我國國家標準計算機軟件開發(fā)規(guī)范(GB 85668),軟件生命周期包括軟件定義、軟件開發(fā)、軟件運行維護三個階段,并可以細分為可行性研究、項目計劃、需求分析、概要設(shè)計、詳細設(shè)計、編碼實現(xiàn)與單元測試、系統(tǒng)集成測試、系統(tǒng)確認驗證、系統(tǒng)運行與維護等幾個階段。2瀑布模型有哪些特點?對于里程碑,你有什么認識?一般認為,瀑布模型不太適用于用戶需求經(jīng)常變更的軟件項目,其原因是什么?解答:瀑布模型的特點:(1). 線性化模型結(jié)構(gòu);(2). 各階段具有里程碑特征;(3). 基于文檔的驅(qū)動;(4). 嚴格的階段評審機制。其中的里程碑是指瀑布模型中的階段只能逐級到達、不能跨越;每個階
10、段都有明確的任務(wù),都需要產(chǎn)生確定的成果。由于瀑布模型是一種線性模型,要求項目嚴格按規(guī)程推進,必須等到所有開發(fā)工作全部完成以后才能獲得可以交付的軟件產(chǎn)品。因此,瀑布模型不太適用于用戶需求經(jīng)常變更的軟件項目。3試說明快速原型的作用。解答:快速原型方法是原型模型在軟件分析、設(shè)計階段的應(yīng)用,能夠用來解決用戶對軟件系統(tǒng)需求的模糊認識,或用來試探某種設(shè)計是否能夠獲得預期效果。4原型進化模型是一種與瀑布模型有著顯著差別的軟件過程模型。與瀑布模型相比,其優(yōu)點是什么?一般認為,原型進化模型不能適應(yīng)較大型軟件項目的開發(fā),其原因是什么?解答:原型進化模型好特點是:先開發(fā)一個原型系統(tǒng)給用戶使用,然后根據(jù)用戶使用情況的
11、意見反饋,對原型系統(tǒng)不斷修改,使它逐步接近,并最終到達開發(fā)目標。因此,與瀑布模型相比,原型進化模型能夠更好地適應(yīng)軟件需求變更。但原型進化模型不能像瀑布模型那樣提供明確的里程碑管理,使得管理者難以把握開發(fā)進度。因此,對于大型軟件項目,原型進化模型缺乏有效的管理規(guī)程。5增量模型是一種結(jié)合了瀑布模型與原型進化模型共同優(yōu)點的過程模型,其特點是什么?在使用增量模型進行軟件開發(fā)時需要注意的問題是什么?解答:增量模型的特點是,在整體上按照瀑布模型的流程實施項目開發(fā),以方便對項目的管理。但在軟件的實際開發(fā)中,則將軟件系統(tǒng)按功能分解為許多增量構(gòu)件,并以構(gòu)件為單位逐個地開發(fā)并交付,直到全部增量構(gòu)件開發(fā)完畢,并都被
12、集成到系統(tǒng)之中交付用戶使用。使用增量模型需要注意的是,系統(tǒng)需要有更好的結(jié)構(gòu)設(shè)計,以便系統(tǒng)能按增量構(gòu)件進行集成。6試說明螺旋模型的特點。一般認為,只有大型項目才有采用螺旋模型的必要,其原因是什么?解答:螺旋模型是一種引入了風險分析與規(guī)避機制的過程模型,是瀑布模型、快速原型方法和風險分析方法的有機結(jié)合。由于軟件項目的風險分析會增加成本,假如風險分析費用比例過高則不合算。因此,只有開發(fā)資金較多的大型項目才有按階段進行詳細風險分析的可能與必要。7噴泉模型是專門針對面向?qū)ο筌浖_發(fā)方法而提出的,其特點是什么?解答:噴泉模型的特點是,軟件的分析、設(shè)計和實現(xiàn)按照迭代的方式交替進行,并通過進化的方式使軟件逐漸
13、完善。例如,第一階段的開發(fā)目標是基本功能;第二階段則在第一階段基礎(chǔ)上對軟件進行完善,實現(xiàn)主要功能;第三階段則又在第二階段基礎(chǔ)上對軟件做更進一步的完善。8為什么說組件復用模型是一種有利于軟件按工業(yè)流程生產(chǎn)的過程模型?解答:在組件復用模型中,軟件由組件裝配而成,這就如同用標準零部件構(gòu)造機械設(shè)備,因此能帶來更好的復用效果,能適應(yīng)軟件按工業(yè)流程生產(chǎn)。9某大型企業(yè)計劃開發(fā)一個“綜合信息管理系統(tǒng)”,涉及銷售、供應(yīng)、財務(wù)、生產(chǎn)、人力資源等多個部門的信息管理。該企業(yè)的想法是按部門優(yōu)先級別逐個實現(xiàn),邊應(yīng)用邊開發(fā)。對此,需要一種比較合適的過程模型。請對這個過程模型作出符合應(yīng)用需要的選擇,并說明選擇理由。解答:增量
14、模型比較適合該項目,理由是可使系統(tǒng)功能按應(yīng)用領(lǐng)域逐個實現(xiàn),并可按優(yōu)先級別安排各功能構(gòu)件的開發(fā)順序,有利于邊開發(fā)邊應(yīng)用。第3章1計算機系統(tǒng)有哪些特點?解答:計算機系統(tǒng)是一個具有層次結(jié)構(gòu)的復雜系統(tǒng),且是一個具有智能特性的開放系統(tǒng)。2圖3-5所示是某“零配件倉庫管理系統(tǒng)”的系統(tǒng)流程圖。從圖中可以看出該系統(tǒng)的以下特點:(1)系統(tǒng)將以入庫單、出庫單為依據(jù)進行入出庫操作,并通過更新庫存程序?qū)齑嬗涗浳募M行更新,通過入出庫記錄程序?qū)⑷霂?、出庫記錄添加到入出庫?shù)據(jù)表中。(2)系統(tǒng)將以庫存數(shù)據(jù)表中記錄的庫存量為依據(jù)確定采購計劃,當某零配件的庫存量低于規(guī)定的下閾值時,該零配件將會進入到訂購單中。其中,訂購單由生
15、成采購計劃程序產(chǎn)生。(3)系統(tǒng)將以入出庫數(shù)據(jù)表中的記錄為依據(jù)進行入出庫統(tǒng)計分析,產(chǎn)生入出庫統(tǒng)計分析報表。試根據(jù)對圖3-5中的系統(tǒng)流程圖的理解,將“零配件倉庫管理系統(tǒng)”從其工作環(huán)境中分離出來,并建立該系統(tǒng)的“系統(tǒng)框架圖”。圖3-5“零配件倉庫管理系統(tǒng)”的系統(tǒng)流程圖解答:3可行性分析的意義主要體現(xiàn)在哪些方面?解答:可行性分析是對軟件問題解決途徑的探索,能夠在以下幾個方面對軟件項目帶來具有積極意義的影響。(1)通過少量的的費用,對項目能否實施盡早作出決斷,以避免項目開展以后所帶來的大量的人力、物力和時間的浪費。(2)根據(jù)項目所受到的條件限制,對有待開發(fā)的系統(tǒng)在體系結(jié)構(gòu)、工作模式等方面作出高層抉擇,以
16、利于項目今后的實現(xiàn)。(3)可以把可行性分析看做軟件定義時期需要進行的前導性工作,其結(jié)果可以作為一個高層框架用于軟件需求分析過程之中,以方便今后軟件規(guī)格定義工作的順利開展。4技術(shù)可行性評估主要涉及哪些方面的問題?解答:技術(shù)可行性評估涉及對技術(shù)的先進性、成熟度等技術(shù)自身因素的評估以及對技術(shù)把握程度的評估。5某軟件項目已將有待開發(fā)的軟件分解為600個對象點數(shù),其中有20 %可以復用。假設(shè)該項目參與人員月平均工資為3 000元人民幣,每月按20個工作日計算,每人每天能夠完成1個對象點數(shù)的工作量。試估算該軟件項目的人力成本。解答:人力成本 =(600(10.2)/ 20)3 000元 = 72 000元
17、6假設(shè)某軟件項目計劃按照瀑布模型實施開發(fā),并計劃在7個月內(nèi)完成開發(fā)任務(wù)。其任務(wù)進度安排是:需求分析1個月、軟件設(shè)計2個月、編碼與單元測試3個月、系統(tǒng)集成1個月。試使用甘特圖表畫出該軟件項目的任務(wù)進度圖表。解答:第5章1什么是用戶需求?什么是系統(tǒng)需求?解答:(1) 用戶需求是用戶關(guān)于軟件的一系列意圖、想法的集中體現(xiàn),是用戶關(guān)于軟件的外界特征的規(guī)格表述。(2)系統(tǒng)需求是比用戶需求更具有技術(shù)特性的需求陳述,它是提供給開發(fā)者或用戶方技術(shù)人員閱讀的,并將作為軟件開發(fā)人員設(shè)計系統(tǒng)的起點與基本依據(jù)。主要包括功能、數(shù)據(jù)、性能、安全等諸多方面的需求。2用戶需求調(diào)查的主要有哪些方法?解答:用戶調(diào)查是最基本的用戶需
18、求信息收集方法,比較常用的調(diào)查方法包括訪談用戶、開座談會、問卷調(diào)查、 跟班作業(yè)、收集用戶資料。3說明需求分析過程中建立需求原型的作用。解答:需求原型可用來收集用戶需求,對用戶需求進行驗證,由此可幫助用戶克服對軟件需求的模糊認識。原型需要根據(jù)用戶評價不斷修正,這有利于挖掘用戶的一些潛在需求,使得用戶需求能夠更加完整地得以表達。4說明需求評審的作用。解答:需求評審是傳統(tǒng)的需求檢查手段,采用專門評審小組的方式實施對需求文檔的有效性評價。評審工作的開展需要開發(fā)人員和用戶的共同參與,他們一同檢查文檔中的不規(guī)范之處和遺漏之處,一起討論需求中存在的問題,并針對一些需求分歧進行協(xié)商,由此達成對軟件需求的共識。
19、5某“人力資源管理系統(tǒng)”的組成是:(1)人事管理子系統(tǒng),包括:檔案管理、崗位設(shè)置、人事異動等功能。(2)業(yè)績管理子系統(tǒng),包括:業(yè)績標準設(shè)置、業(yè)績錄入、績效評估等功能。(3)工資管理子系統(tǒng),包括:工資標準設(shè)置、工資數(shù)據(jù)生成、工資結(jié)構(gòu)分析、人力成本分析等功能。(4)用工管理子系統(tǒng),包括:人力規(guī)劃、人員調(diào)配、新人招聘等功能。請使用功能層次圖直觀描述該“人力資源管理系統(tǒng)”的組織結(jié)構(gòu)。解答:6某“零配件倉庫管理系統(tǒng)”的系統(tǒng)流程圖如下圖所示。圖4-16“零配件倉庫管理系統(tǒng)”的系統(tǒng)流程圖(1)假設(shè)該系統(tǒng)原有的各項功能都由“倉庫管理員”操作,請使用數(shù)據(jù)流圖說明該系統(tǒng)的邏輯加工流程。(2)又假設(shè)準備對該系統(tǒng)進行
20、改造。其中,入庫單將由采購部門輸入,出庫單將由銷售部門輸入,入出庫分析報表將直接打印到計劃部門,采購訂單將直接打印到采購部門,而原來的“倉庫管理員”僅承擔入出庫產(chǎn)品驗證的任務(wù)。請說明改造以后的系統(tǒng)與原有系統(tǒng)的差別,并使用數(shù)據(jù)流圖說明改造后的該系統(tǒng)的邏輯加工流程。解答(1):解答(2):7某銀行儲蓄系統(tǒng)的工作過程大致如下:(1)由儲戶填寫存款單或取款單,然后交由銀行工作人員輸入系統(tǒng)。(2)如果是存款,系統(tǒng)將記錄存款賬號、存款人姓名、身份證號碼、存款類型、存款日期、到期日期、利率等信息,并會提示儲戶輸入密碼。在此之后,系統(tǒng)會打印一張存款憑據(jù)給儲戶。(3)如果是取款,則系統(tǒng)首先會根據(jù)存款賬號核對儲戶
21、密碼。若密碼正確,則系統(tǒng)會計算利息,并打印出利息清單給儲戶。請使用數(shù)據(jù)流圖分層描述該系統(tǒng)的邏輯加工流程。解答:8某圖書館圖書管理系統(tǒng)對數(shù)據(jù)的基本要求如下:(1)涉及圖書、圖書管理員、讀者這三類數(shù)據(jù)實體。(2)上述數(shù)據(jù)實體的數(shù)據(jù)結(jié)構(gòu)是:圖書(圖書編號、書名、作者、出版單位、出版日期、定價);圖書管理員(管理員編號、姓名、密碼、登記日期);讀者(讀者編號、姓名、工作單位、身份證號碼)。(2)上述數(shù)據(jù)實體之間的關(guān)系是:圖書將由管理員登記入冊,在登記圖書時需要記錄圖書登記日期;圖書將被讀者借閱,在圖書辦理借閱時需要記錄圖書的借書日期和還書日期。請使用ER圖建立上述數(shù)據(jù)的數(shù)據(jù)模型。解答:9某自動取款機系
22、統(tǒng)工作過程大致如下:(1)在插入儲蓄卡之前,自動取款機處于閑置狀態(tài)。(2)在插入儲蓄卡之后,自動取款機處于待命狀態(tài)。(3)在儲戶輸入密碼之后,系統(tǒng)將對密碼進行驗證。若密碼正確,自動取款機將進入工作狀態(tài);若密碼不正確,自動取款機將提示儲戶輸入密碼錯誤。(4)在自動取款機進入工作狀態(tài)以后,儲戶可選擇“取款”或“退卡”。若選擇“取款”,自動取款機將進入取款狀態(tài);若選擇“退卡”,自動取款機將退出儲蓄卡,然后進入閑置狀態(tài)。(5)在自動取款機進入取款狀態(tài)以后,儲戶可以輸入取款金額,然后可選擇“確定”或“取消”。若選擇“確定”,自動取款機將進入付款狀態(tài),在完成付款之后,自動取款機返回到取款狀態(tài);若選擇“取消
23、”,自動取款機返回到取款狀態(tài)。請使用狀態(tài)圖描述該自動取款機的工作過程。解答:第8章1概要設(shè)計中的主要任務(wù)有哪些?解答:制訂規(guī)范、系統(tǒng)構(gòu)架設(shè)計、軟件結(jié)構(gòu)設(shè)計、公共數(shù)據(jù)結(jié)構(gòu)設(shè)計、安全性設(shè)計、故障處理設(shè)計、可維護性設(shè)計、編寫文檔、設(shè)計評審。2與集中式結(jié)構(gòu)比較,客戶機服務(wù)器結(jié)構(gòu)具有哪些方面的優(yōu)越性?解答:客戶機服務(wù)器依靠網(wǎng)絡(luò)將計算任務(wù)分布到許多臺不同的計算機上,因此結(jié)構(gòu)靈活,便于系統(tǒng)逐步擴充。3說明三層客戶機服務(wù)器結(jié)構(gòu)中應(yīng)用服務(wù)器的作用?解答:應(yīng)用服務(wù)器的作用是使系統(tǒng)中的最易發(fā)生需求改變的應(yīng)用邏輯處理被集中在一起,因此給系統(tǒng)維護帶來了很大的便利。當用戶應(yīng)用規(guī)則發(fā)生變化時,需要改變的不是數(shù)目龐大客戶端,
24、而是一臺或少數(shù)幾臺應(yīng)用服務(wù)器。4說明BS結(jié)構(gòu)中Web服務(wù)器的作用。解答:Web服務(wù)器的作用是將信息表示集中到了專門的“Web服務(wù)器”上,因此可使客戶端程序更加簡化。客戶機上已經(jīng)不需要專門的應(yīng)用程序,只需要有一個通用的Web瀏覽器,就可以實現(xiàn)客戶端數(shù)據(jù)的應(yīng)用。5說明組件對象分布式結(jié)構(gòu)的特點。解答:組件對象分布式結(jié)構(gòu)就是通過組件使軟件系統(tǒng)中的組件對象被分布到網(wǎng)絡(luò)上的多臺計算機上。組件對象具有一些公共接口,能夠向外提供服務(wù),不同組件的對象之間可以通過公共接口相互通信和協(xié)同工作。這是一種對稱式分布結(jié)構(gòu),在這種結(jié)構(gòu)中已經(jīng)沒有了客戶機與服務(wù)器之間的界限,這些對象既可充當服務(wù)器,也可充當客戶機,其角色只是取
25、決于它是在提供服務(wù),還是在請求服務(wù)。6一家跨區(qū)域連鎖銷售企業(yè)需要開發(fā)一個“物流配送系統(tǒng)”,試說明其適合選擇哪種結(jié)構(gòu)的系統(tǒng)構(gòu)架。解答:為便于跨區(qū)域協(xié)作與管理,需要B/S結(jié)構(gòu),但考慮到企業(yè)高層數(shù)據(jù)匯總、數(shù)據(jù)維護的便利與工作性能,部分后臺程序有必要建立為C/S結(jié)構(gòu)。7說明概要設(shè)計中模塊抽象化的作用。解答:概要設(shè)計中的模塊是一個抽象化的功能黑盒子,雖然它已是一個與軟件實現(xiàn)直接相關(guān)的實體單元,已經(jīng)可以看到它清晰的外觀,但是卻看不到其內(nèi)部實現(xiàn)細節(jié)。模塊抽象化的作用是有利于模塊功能得到更加清晰的定義,可提高模塊的內(nèi)聚性。8說明模塊內(nèi)部信息隱蔽的作用。解答:信息隱蔽是指每個模塊的內(nèi)部實現(xiàn)細節(jié)對于其他模塊來說是
26、隱蔽的,模塊內(nèi)部的數(shù)據(jù)、語句或過程等,不允許其他不需要這些信息的模塊使用。信息隱蔽的作用是使每個模塊相互隔離,提高模塊的獨立性。9上級模塊A在調(diào)用下級模塊B時需要返回一個標記X,用于模塊A中分支語句的判斷條件。這時的模塊A與模塊B之間是什么耦合關(guān)系?解答:控制耦合。10模塊A是寫文件模塊,需要向文件F寫數(shù)據(jù);模塊B是讀文件模塊,需要從文件F讀數(shù)據(jù)。這時的模塊A與模塊B之間是什么耦合關(guān)系?解答:公共耦合。11一些通用菜單模塊屬于哪種內(nèi)聚形式?解答:邏輯內(nèi)聚。12模塊A是數(shù)據(jù)查詢模塊,其模塊內(nèi)部包括輸入查詢條件、連接數(shù)據(jù)源、打開查詢記錄集、顯示查詢結(jié)果。該模塊屬于哪種內(nèi)聚形式?解答:順序內(nèi)聚。13
27、某自動閱卷系統(tǒng)數(shù)據(jù)流圖如圖5-39所示。該系統(tǒng)能夠從卡片讀入考生登記和答卷信息,能夠?qū)季碓u分并生或考生成績,并能夠根據(jù)考生登記數(shù)據(jù)和考生成績數(shù)據(jù)產(chǎn)生成績單數(shù)據(jù),由此打印靠山成績通知單。請按照面向數(shù)據(jù)流的結(jié)構(gòu)映射方法,設(shè)計該系統(tǒng)的軟件結(jié)構(gòu)。圖5-.39“自動閱卷系統(tǒng)”數(shù)據(jù)流圖解答:14某銀行儲蓄系統(tǒng)的數(shù)據(jù)流圖已在第3章習題7中要求畫出。請根據(jù)你所畫出的數(shù)據(jù)流圖設(shè)計該系統(tǒng)的軟件結(jié)構(gòu)。解答:15某圖書館圖書借閱系統(tǒng)的數(shù)據(jù)關(guān)系模型如圖5-40所示。請根據(jù)該數(shù)據(jù)庫概念模型設(shè)計該數(shù)據(jù)庫邏輯結(jié)構(gòu)。圖5-40 圖書借閱系統(tǒng)數(shù)據(jù)關(guān)系模型解答:第6章1試說明面向?qū)ο笾械念惸K與傳統(tǒng)結(jié)構(gòu)化方法中的模塊的區(qū)別。解答
28、:傳統(tǒng)結(jié)構(gòu)化方法中的模塊是基于功能定義的,可用函數(shù)或過程表示,它是動態(tài)的,可直接調(diào)用。面向?qū)ο笾械念惸K則是基于實體定義的,涉及實體的屬性與行為;類模塊是對實體的抽象,因此是靜態(tài)的,一般作為生成對象實例的模板。2試描述類的繼承性與多態(tài)性的作用。解答:類的繼承性是指上級父類能夠把自己的屬性、操作傳遞給下級子類,由此可以大大減少程序中的冗余信息??梢允褂脧脑懈割惻缮鲂碌淖宇惖霓k法來修改軟件,如改變類原有操作的算法,這時并不需要改變類原有的代碼,而只是新建一個派生子類,然后在該派生子類中建立一個與父類方法同名而算法不同的方法。因此,通過類的繼承性還可使軟件獲得更加有效的重用。當需要開發(fā)一個新的應(yīng)
29、用系統(tǒng)時,可以通過繼承而使原有的相似系統(tǒng)的功能獲得利用,或者從類庫中選取需要的類,然后再派生出新的子類,以實現(xiàn)新系統(tǒng)的新功能。多態(tài)性是指子類對象可以像父類對象那樣使用,它們可以共享一個操作名,然而卻有不同的實現(xiàn)方法。也就是說,不同層次中的類,可以按照各自的需要,分別采用不同的方法實現(xiàn)這個共同的操作。C+語言中,多態(tài)性是通過虛函數(shù)來實現(xiàn)的,可以聲明名稱、參數(shù)特征和返回值類型都相同的虛函數(shù),但不同層次的類中的虛函數(shù)的實現(xiàn)算法卻各不相同。虛函數(shù)機制使得程序員能在一個類等級中使用相同函數(shù)的多個不同版本,在運行時刻才根據(jù)接收消息的對象所屬的類,決定到底執(zhí)行哪個特定的版本。多態(tài)性增加了面向?qū)ο筌浖到y(tǒng)的靈
30、活性,而且顯著提高了軟件的可重用性和可擴充性。當需要擴充系統(tǒng)功能或在系統(tǒng)中增加新的實體類時,只要派生出與新的實體類相應(yīng)的新的子類,并在新派生出的子類中定義符合該類需要的虛函數(shù),而無須修改原有的程序代碼。3與傳統(tǒng)結(jié)構(gòu)化方法比較,面向?qū)ο蠓椒ň哂心男┓矫娴膬?yōu)越性?解答:(1)跟現(xiàn)實世界更加接近;(2)可使軟件系統(tǒng)結(jié)構(gòu)更加穩(wěn)定;(3)軟件具有更好的可重用性;(4)軟件更加便于維護與擴充。4試描述UML建模過程。解答: UML的建模包括分析與設(shè)計這兩個階段。其中分析階段需要創(chuàng)建的模型包括用例圖、活動圖、類分析圖和序列圖,設(shè)計階段需要創(chuàng)建的模型包括類設(shè)計圖、協(xié)作圖、狀態(tài)圖、構(gòu)件圖和部署圖。由于面向?qū)ο蠓?/p>
31、析與設(shè)計采用了一體化的UML建模工具,這使得分析階段產(chǎn)生的一系列結(jié)果不僅成為了設(shè)計階段的導入條件,并且諸多結(jié)果可以通過設(shè)計而進行補充,并逐步完善。例如對于類圖,分析階段只是建立了類的概念模型,主要分析系統(tǒng)中與數(shù)據(jù)有關(guān)的實體類,而實體類以外的界面類、控制類,則留到設(shè)計階段解決。基于UML的建模過程也是一個增量迭代過程,需要多次反復,而使得軟件系統(tǒng)不斷趨于完善。5第4章的4.4.2節(jié)曾使用數(shù)據(jù)流圖分析了一個“工資管理系統(tǒng)”,其涉及職工清單、檔案工資、業(yè)績工資、工資報表等諸多數(shù)據(jù),涉及人事處、財務(wù)處和員工所在工作部門等多個業(yè)務(wù)部門?,F(xiàn)要求使用面向?qū)ο蠓椒▽υ撓到y(tǒng)進行分析與設(shè)計,試建立有關(guān)該軟件問題的
32、用例圖、活動圖、類圖、序列圖和協(xié)作圖。解答:(1)用例圖(2)活動圖工資計算過程(3)類圖(4)序列圖(5)協(xié)作圖6某“倉庫管理系統(tǒng)”用戶需求陳述如下:(1)倉庫管理系統(tǒng)將被計劃部門、倉庫管理部門、采購部門、銷售部門的相關(guān)工作人員使用。其中,計劃部門需要制定商品計劃。倉庫管理部門需要進行商品入庫、出庫、報損等日常事務(wù)管理。采購部門需要查詢商品庫存情況、獲取商品訂貨計劃表。銷售部門也需要查詢商品庫存情況和提出商品訂貨請求。(2)由于不同部門有不同的任務(wù),因此系統(tǒng)需要提供針對部門的權(quán)限管理機制和針對工作人員的登錄注冊機制。系統(tǒng)將通過一位系統(tǒng)管理員進行部門授權(quán)與工作人員注冊管理。 其中,使用倉庫管理
33、系統(tǒng)的工作人員需要有惟一的個人身份標識,它既是工作人員登錄系統(tǒng)時的身份驗證依據(jù),也是工作人員在進行商品操作時的經(jīng)手人標記。(3)倉庫中的商品需要以品種為單位進行管理,所有商品都要由計劃部門按品種進行登記,涉及商品編碼、名稱、類別、庫存下限值等數(shù)據(jù)。(4)倉庫商品涉及入庫、出庫、報損這三種事務(wù)處理,商品的任何流通都需要以流水方式記錄到商品流通表中,并對商品庫存量進行更新。當商品出庫、報損時,必須考慮到該商品的當前庫存量是否能夠滿足操作需要。出庫、報損后,若商品庫存量低于庫存下限值,將會自動產(chǎn)生訂貨請求。(5)倉庫管理系統(tǒng)需要在月底對商品流通數(shù)據(jù)自動進行盤查,需要按月打印商品流通分類匯總報表。試根
34、據(jù)上述需求陳述建立起有關(guān)該軟件問題的用例圖、活動圖、類圖、序列圖和協(xié)作圖。解答:(1)用例圖(2)活動圖商品流通處理過程(3)類圖(4)序列圖(5)協(xié)作圖第11章1試述GUI界面設(shè)計的特點。解答:GUI界面設(shè)計通常需要邀請圖形設(shè)計人員、系統(tǒng)分析人員、系統(tǒng)設(shè)計人員、程序員、用戶應(yīng)用領(lǐng)域方面的專家和社會行為學方面的專家。以及最終用戶的共同參與。實際上,用戶參與界面設(shè)計的過程越早,則在界面設(shè)計問題上所花費的精力越少,創(chuàng)建的界面會越具有可用性。2為什么說GUI界面設(shè)計是一個迭代的過程?解答:由于一次就設(shè)計出非常完美的界面的情況非常少見,因此用戶界面設(shè)計是一個迭代的過程,需要進行多次反復而逐步使界面設(shè)計
35、趨于完善。用戶界面設(shè)計的一般步驟是:(1)建立界面需求規(guī)格模型。(2)以界面需求模型為依據(jù)創(chuàng)建界面原型。(3)評價界面原型并進行迭代。3GUI界面設(shè)計中需要考慮哪些方面的用戶因素?解答:(1)用戶工作環(huán)境與工作習慣;(2)用戶操作定勢;(3)界面一致性;(4)界面動作感;(5)界面信息反饋;(6)個性化;(7)容錯性;(8) 審美性與可用性。4試說明SDI界面與MDI界面的區(qū)別。解答:SDI界面的特點是應(yīng)用程序一次只能打開一個獨立窗體,如Microsoft Windows 中的 “寫字板”。MDI界面則由一個MDI主窗體和多個MDI子窗體組成,其中的MDI主窗體如同容器,用來裝載MDI子窗體,
36、而MDI子窗體則被限制于MDI主窗體之內(nèi),不能獨立存在。5主要的用戶交互形式有哪些?解答:(1)直接操縱;(2)菜單選擇;(3)表格填寫;(4)命令語言;(5)自然語言。6主要的用戶信息表示形式有哪些?解答:(1)文本形式;(2)圖形形式。第12章1試描述結(jié)構(gòu)化程序的特點。解答:結(jié)構(gòu)化程序的基本特征是程序的任何位置是單入口、單出口的,因此可能影響單入、單出結(jié)構(gòu)的GOTO語句的使用被受到了很嚴格的限制。另外,程序控制也要求采用結(jié)構(gòu)化的控制結(jié)構(gòu),原因也是為確保程序的單入、單出特性。圖8-17練習2程流程圖2某算法設(shè)計程序流程圖如圖8-17所示。試分析該算法為什么不能滿足結(jié)構(gòu)化程序設(shè)計的要求。為了使
37、它滿足結(jié)構(gòu)化設(shè)計要求,應(yīng)該進行哪些方面的修改。解答:A處有兩個出口,并使C、D、E分支塊有兩個入口,因此不能滿足結(jié)構(gòu)化設(shè)計要求。由于A至D是GOTO語句所為,可考慮去掉A中GOTO語句,用IF語句替代,并需要將D用公共函數(shù)表示,以便程序中能夠共享調(diào)用。3某算法設(shè)計程序流程圖如圖8-18所示。試將該圖轉(zhuǎn)換為NS圖、PAD圖、PDL偽碼,并使用McCabe方法對該算法的復雜度進行估算。圖8-18 練習3程序流程圖解答:(1)NS圖(2)PAD圖(3)PDL偽碼A:初始條件B:輸入數(shù)據(jù)DO WHILE C(循環(huán)條件)D:處理數(shù)據(jù)IF E(分支條件)THENG:處理數(shù)據(jù)ELSEF:處理數(shù)據(jù)ENDIFH
38、:處理數(shù)據(jù)ENDDOI:輸出數(shù)據(jù)(4)算法復雜度V=mn+p=1312+1=24需要從1 000以內(nèi)將能夠被7整除的數(shù)查詢出來,并計算出這些數(shù)的和。試分別使用程序流程圖、NS圖、PAD圖和PDL偽碼,設(shè)計該程序問題的算法。然后使用McCabe方法對所設(shè)計的算法的復雜度進行估算。(z)NS圖(2)PAD圖(3算法偽碼定義變量:i=7,S=0DO WHILE i 100 OR x = 85 AND x = 60 AND x = 0 AND x 60 THENPRINT(不合格 )END IFEND Grade解答:110,90,70,5018需要對一個用戶注冊窗口進行黑盒測試。假如用戶注冊碼規(guī)定為48位字符,試分別使用等價類劃分、邊界值分析這兩種方法設(shè)計該軟件問題的測試用例。解答:(1)等價類劃分:12,12abc(2)邊界值分析:12a,12ab,12abcdef,12abcdefg第14章1有哪幾種類型的軟件維護?解答:改正性維護、適應(yīng)性維護、完善性維護。2某學校自己開發(fā)了一套計算機上機管
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 郵寄檢驗服務(wù)部工作技巧與客戶反饋計劃
- 《貴州美升能源集團有限公司六枝特區(qū)新興煤礦(變更)礦產(chǎn)資源綠色開發(fā)利用方案(三合一)》評審意見
- 膀胱部分切除后護理
- 高中地理 3.1 海水的溫度和鹽度教學實錄2 新人教版選修2
- 2025年三明道路運輸從業(yè)人員從業(yè)資格考試
- 2025年貴州貨運從業(yè)資格證模擬考試保過版
- 《人民幣兌換》(教學設(shè)計)-2024-2025學年五年級上冊數(shù)學北師大版
- 部隊違規(guī)使用檢討書
- 社區(qū)七夕節(jié)活動方案
- 四年級數(shù)學(四則混合運算)計算題專項練習與答案
- 新教科版六下科學1.4《設(shè)計塔臺模型》教學設(shè)計(新課標)
- (2024版)計算機程序設(shè)計員三級備考試題庫-上(單選題匯總)
- ISO200002018版標準培訓教材
- 教科版六年級下冊科學第一單元《小小工程師》教材分析及全部教案(定稿;共7課時)
- 小兒鋅缺乏癥剖析
- 古風集市策劃方案
- 道路危險貨物運輸安全培訓課件
- 社會工作綜合能力初級講義課件
- 青春期心理健康講座課件
- 《廣聯(lián)達培訓教程》課件
- 兒童流感的防治和預防措施
評論
0/150
提交評論