實用軟件工程第3版習(xí)題解答V1.2_第1頁
實用軟件工程第3版習(xí)題解答V1.2_第2頁
實用軟件工程第3版習(xí)題解答V1.2_第3頁
實用軟件工程第3版習(xí)題解答V1.2_第4頁
實用軟件工程第3版習(xí)題解答V1.2_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實用軟件工程第3版習(xí)題參考答案習(xí)題11.1開發(fā)文檔都有哪些?用圖示表示它們之間的關(guān)系。開發(fā)文檔包括目標(biāo)程序、源程序、詳細(xì)設(shè)計說明書、概要設(shè)計說明書、需求規(guī)格說明書、用戶需求報告、軟件合同,它們之間的關(guān)系如下圖所示。目標(biāo)程序洋細(xì)設(shè)計說明書概耍設(shè)計說明書需求觀格說明書用戶甜求報吿軟件合同1.2簡述軟件工程研究的內(nèi)容。軟件工程研究的內(nèi)容包括軟件開發(fā)方法、軟件開發(fā)模型、軟件支持過程和軟件管理過程。其中軟件開發(fā)方法的內(nèi)容又涵蓋市場調(diào)研、正式立項、需求分析、項目策劃、概要設(shè)計、詳細(xì)設(shè)計、編程、測試、試運行、產(chǎn)品發(fā)布、用戶培訓(xùn)、產(chǎn)品復(fù)制、銷售、實施、系統(tǒng)維護(hù)、版本升級。常用的軟件開發(fā)模型有瀑布模型、迭代模型

2、、增量模型和原型模型。軟件支持過程由所支持的CASE工具組成,常用的CASE工具有PowerDesigner和RationalRose。軟件管理過程主要有CMMI、IS09000、微軟企業(yè)文化和敏捷文化現(xiàn)彖。1.3詳細(xì)解釋軟件的定義、程序的定義及軟件工程的定義。軟件的定義:軟件=程序+數(shù)據(jù)+文檔。這里的程序是指程序系統(tǒng)。這里的數(shù)據(jù)不僅包括初始化數(shù)據(jù)、測試數(shù)據(jù),而且包括研發(fā)數(shù)據(jù)、運行數(shù)據(jù)、維護(hù)數(shù)據(jù),也包括軟件企業(yè)積累的項目工程數(shù)據(jù)和項目管理數(shù)據(jù)中的人量決策原始記錄數(shù)據(jù)。這里的文檔指的是軟件開發(fā)過程中的分析、設(shè)計、實現(xiàn)、測試、維護(hù)文檔、管理文檔?,F(xiàn)在有一種新提法正在引起關(guān)注,這種提法是:軟件=知識

3、+程序+數(shù)據(jù)+文檔。程序是計算機(jī)為完成特定任務(wù)而執(zhí)行的指令的有序集合。從應(yīng)用的角度可理解為:面向過程的程序=算法+數(shù)據(jù)結(jié)構(gòu)面向?qū)ο蟮某绦?對彖+信息面向構(gòu)件的程序=構(gòu)件+構(gòu)架軟件工程是研究軟件開發(fā)和軟件管理的一門工程學(xué)科。1.4軟件工程的7+1條基本原理有什么現(xiàn)實意義?軟件工程的7條基本原理是在面向過程的程序設(shè)計時代(結(jié)構(gòu)化時代)提出來的,但在面向數(shù)據(jù)和面向?qū)﹀璧某绦蛟O(shè)計的今天,它仍然有效。并且在軍事上的實時跟蹤監(jiān)控系統(tǒng)中有很好的應(yīng)用,而且隨著軟件的開發(fā)和管理的進(jìn)步,它將不斷完善和充實。請讀者注意,作者在書中又新加入了第8條基本原理:軟件工程中的二八定律,這是對基本原理的補(bǔ)充與發(fā)展。1.5讀者

4、認(rèn)同“4種開發(fā)方法”的方法論和“五個面向”的實踐論嗎?為什么?“四種開發(fā)方法”是指“面向過程的方法、面向?qū)ο蟮姆椒?、面向?shù)據(jù)的方法、形式化方法”。面向過程的方法來源于面向過程的程序設(shè)計:面向?qū)ο蟮姆椒▉碓从诿嫦驅(qū)﹀璧某绦蛟O(shè)計;面向數(shù)據(jù)的方法就是面向元數(shù)據(jù)的方法,它來源于關(guān)系數(shù)據(jù)庫程序設(shè)計:形式化方法來源于離散數(shù)學(xué)中的集合運算和邏輯運算。四種方法各適用于不同的場合,各有優(yōu)缺點,互相促進(jìn),構(gòu)成開發(fā)方法論的多極化世界?!拔鍌€面向理論”是指“面向流程分析、面向數(shù)據(jù)設(shè)計、面向?qū)ο髮崿F(xiàn)、面向功能測試、面向過程管理”,它是在綜合“四種開發(fā)方法”各自的優(yōu)點之后提出的軟件工程實施理論,是對前者的繼承與發(fā)展??傊?/p>

5、,上述提法既精彩又實用。1.6怎樣理解軟件工程的支持過程和管理過程?軟件工程的支持過程是由支持軟件生存周期各個階段的生產(chǎn)工具所組成的。就是說將一個軟件的生存周期劃分為市場調(diào)研、立項、需求分析、策劃、概要設(shè)計、詳細(xì)設(shè)計、編程、單位測試、集成測試、運行、維護(hù)這幾個過程。在這些過程中,需要配套相應(yīng)的工具來支持,比如需求分析工具、設(shè)計工具、實現(xiàn)工具、測試工具、維護(hù)工具、配置工具,開發(fā)壞境等。1.7CASE工具、軟件開發(fā)環(huán)境SDE、軟件工程壞境SEE三者之間有何聯(lián)系與區(qū)別?CASE(ComputerAidedSoftwareEngineering)是一組工具和方法的集合,一般提供給個人使用,可以輔助軟件

6、開發(fā)生命周期各階段進(jìn)行軟件開發(fā)。它在軟件開發(fā)/維護(hù)過程中提供計算機(jī)輔助支持和工程化方法,CASE技術(shù)分為兩類,一類是支持軟件開發(fā)過程本身的技術(shù),另一類是支持軟件開發(fā)過程管理的技術(shù)。軟件開發(fā)環(huán)境SDE(SoftwareDevelopmentEnvironment)指在基本硬件和宿主軟件的基礎(chǔ)上,為支持系統(tǒng)軟件和應(yīng)用軟件的工程化開發(fā)和維護(hù)而使用的一組軟件。它由軟件工具和環(huán)境集成機(jī)制構(gòu)成,前者用以支持軟件開發(fā)的相關(guān)過程、活動和任務(wù),后者為工具集成和軟件的開發(fā)、維護(hù)及管理提供統(tǒng)一的支持。軟件配置管理工具、面向行業(yè)領(lǐng)域開發(fā)的業(yè)務(wù)基礎(chǔ)平臺,都是軟件開發(fā)環(huán)境的例子。軟件工程環(huán)境SEE(SoftwareEng

7、ineeiingEiiviiomnent)一般提供給團(tuán)隊使用,它是以軟件工程為依據(jù),支持典型軟件生產(chǎn)的系統(tǒng)。SEE具有以下特點:(1)強(qiáng)調(diào)支持軟件生產(chǎn)的全過程。(2)強(qiáng)調(diào)大型軟件的工業(yè)化生產(chǎn)。(3)以集成和剪裁作為主要技術(shù)路徑,實現(xiàn)軟件工業(yè)化生產(chǎn)的目標(biāo)。(4)標(biāo)準(zhǔn)化。軟件生產(chǎn)走向工業(yè)化需要建立相應(yīng)的工業(yè)標(biāo)準(zhǔn)。軟件工程環(huán)境的例子有北大青鳥系統(tǒng),RationalRose等。三者的相同點是:都是軟件過程的支持工具,其目的都是為了加快軟件開發(fā)效率,提高軟件開發(fā)質(zhì)量。三者的不同點是:它們的功能強(qiáng)弱、使用范圍、使用背景不盡相同。1.8是否存在這樣一種現(xiàn)彖:搞系統(tǒng)軟件的公司不需要采用CMND或ISO9001

8、模式?CMMI或ISO9001模式只適用于搞應(yīng)用軟件的企業(yè)?如果是,是為什么?如果不是,又是為什么?不是。因為CMMI和ISO9000模式規(guī)定了嚴(yán)格的管理制度、文檔和評估軟件能力與成熟度等級的一套標(biāo)準(zhǔn),它們幾乎包括了所有的IT的企業(yè),只是一些優(yōu)秀的企業(yè)自己內(nèi)部形成特有的企業(yè)管理文化,但是它們并不排斥CMND和ISO9000模式,甚至還充分肯定CMMI和ISO9000體系。1.9敏捷文化現(xiàn)象是什么意思?敏捷文化現(xiàn)彖是指好的開發(fā)過程應(yīng)該可以在保證質(zhì)量的前提下,做到文檔適度、度量適度和管理適度,并且根據(jù)敏捷文化能迅速做出自我調(diào)整,實現(xiàn)企業(yè)效益的最大化。1.10“輕載過程改進(jìn)模型”(敏捷文化現(xiàn)彖)能代

9、替或戰(zhàn)勝“重載過程改進(jìn)模型”CMMI嗎?不能。因為輕載過程改進(jìn)模型只適用于少于12人的項目,對個人的素質(zhì)要求很高,成功的人型復(fù)雜案例并不多,它特別適合于中小型軟件企業(yè),以及中小型軟件項目。而重載過程改進(jìn)模型CMM/CMMI在某種程度上包容了輕載過程改進(jìn)模型,它對整體的素質(zhì)要求很高,適合于所有的IT企業(yè)。1.11什么叫軟件危機(jī)?通過本章的學(xué)習(xí),你認(rèn)為應(yīng)該怎樣克服軟件危機(jī)?所謂軟件危機(jī),就是在軟件開發(fā)和維護(hù)過程中所遇到一系列難以控制的問題?!败浖C(jī)”這個專業(yè)術(shù)語的首次出現(xiàn),是1968年NATO(NorthAtlanticTreatyOrganization,北約)的計算機(jī)科學(xué)家,在聯(lián)邦德國召開的

10、國際學(xué)術(shù)會議上提出的。為了克服軟件危機(jī),同樣是在1968年,北約科技委員會召集了近50名一流的編程人員、計算機(jī)科學(xué)家和工業(yè)界巨頭,討論和制定擺脫“軟件危機(jī)”的對策。就在那次會議上,第一次提出了軟件工程(SofhvaieEngineenng)這個專業(yè)術(shù)語。當(dāng)時人們的想法是:若借用建筑工程或機(jī)器制造工程的思想、標(biāo)準(zhǔn)、規(guī)范、規(guī)程去開發(fā)軟件與維護(hù)軟件,也許能克服軟件危機(jī)。以后的實踐證明:用工程的方法開發(fā)軟件與維護(hù)軟件是個好主意,但是要完全克服軟件危機(jī),還有許多其他工作要做。例如,將軟件公司納入CMMI的過程改進(jìn)軌道,就能真正克服軟件危機(jī)。1.12試述信息系統(tǒng)的定義及信息系統(tǒng)的基本內(nèi)容。利用計算機(jī)網(wǎng)絡(luò)技

11、術(shù)、數(shù)字通信技術(shù)與數(shù)據(jù)庫技術(shù)實現(xiàn)信息采集和處理的系統(tǒng),稱為信息系統(tǒng)。由此不難發(fā)現(xiàn):凡是與數(shù)據(jù)庫技術(shù)有關(guān)的應(yīng)用系統(tǒng),都可以看成信息系統(tǒng)。因為數(shù)據(jù)庫是組織與存儲信息的最好方式,除此之外,目前還沒有找到其他更好的方式。信息系統(tǒng)由社會壞境、網(wǎng)絡(luò)壞境、數(shù)據(jù)壞境和程序環(huán)境四部分組成。社會壞境指企事業(yè)單位的管理規(guī)程、工作規(guī)范、信息標(biāo)準(zhǔn)、業(yè)務(wù)流程、業(yè)務(wù)規(guī)則和人員素質(zhì)。網(wǎng)絡(luò)壞境指互聯(lián)網(wǎng)Internet、企業(yè)網(wǎng)Intranet或局域網(wǎng)的軟/硬件設(shè)施。數(shù)據(jù)環(huán)境指信息系統(tǒng)的數(shù)據(jù)模型及數(shù)據(jù)庫服務(wù)器上的數(shù)據(jù)操作。程序壞境指客戶端用戶界面操作與應(yīng)用服務(wù)器上的業(yè)務(wù)功能操作。不管是網(wǎng)絡(luò)壞境、數(shù)據(jù)壞境還是程序壞境,都要進(jìn)行系統(tǒng)集

12、成。這里特別強(qiáng)調(diào)社會壞境,人們常說,信息系統(tǒng)建設(shè)不僅是一項計算機(jī)工程,而且是一項社會工程,就是這個道理。1.13解釋下列名詞:開發(fā)文檔、管理文檔、初始化數(shù)據(jù)、元數(shù)據(jù)、過程、過程改進(jìn)。開發(fā)文檔主要由項目組書寫,用于指導(dǎo)軟件開發(fā)與維護(hù):管理文檔主要由軟件工程管理部門書寫,用于指導(dǎo)軟件管理和決策。初始化數(shù)據(jù)是為軟件系統(tǒng)提供運行條件的必備數(shù)據(jù)。元數(shù)據(jù)是關(guān)于數(shù)據(jù)的數(shù)據(jù),組織數(shù)據(jù)的數(shù)據(jù)。過程是指軟件生命周期(LifeCycle)中的時間序列。過程作為一個時間序列,自然有起始點和終止點。例如,可將一個軟件的生命周期劃分為市場調(diào)研、立項、需求分析、策劃、概要設(shè)計、詳細(xì)設(shè)計、編程、單體測試、集成測試、運行、維護(hù)

13、、退役幾個過程,前一過程的終止點就是后一過程的起始點。過程與階段(Phase)有關(guān),階段與里程碑(Milestone)有關(guān)。某些重要里程碑上的文檔(通過評審和審計之后)又稱為基線(Easeline)。例如,軟件需求分析規(guī)格書、軟件設(shè)計說明書,它們都是基線。過程改進(jìn)是指利用過程改進(jìn)模型CMMI,對軟件組織內(nèi)部的過程管理進(jìn)行優(yōu)化。習(xí)題22.1軟件生命周期是什么含義?它與軟件生命周期模型有何關(guān)系?軟件生命周期劃分為市場調(diào)研、立項、需求分析、策劃、概要設(shè)計、詳細(xì)設(shè)計、編程、單體測試、集成測試、運行、維護(hù)、退役幾個過程,前一過程的終止點就是后一過程的起始點。軟件生命周期與軟件生命周期模型有關(guān):不同的生命

14、周期模型,可能對應(yīng)著不同的生存周期。生存周期不同,該軟件的開發(fā)階段劃分、評審次數(shù)、基線標(biāo)準(zhǔn)都有所不同,甚至維護(hù)方法都有所區(qū)別。2.2為什么說“軟件生命周期模型是指在整個軟件生命周期中,軟件開發(fā)過程應(yīng)遵循的開發(fā)路線圖。或者說,軟件生命周期模型是軟件開發(fā)全部過程、活動和任務(wù)的結(jié)構(gòu)框架”?事實上,任何生命周期模型都是生命的路線圖。特別,軟件生命周期模型是軟件生命的路線圖。這里使用路線圖,是為了將深奧的理論通俗化,實用化。2.3為什么要選擇軟件開發(fā)模型?軟件開發(fā)模型與軟件生命周期有什么關(guān)系?因為軟件開發(fā)模型是軟件工程研究的5人內(nèi)容之一,它雖然不是軟件工程研究的重點,但是在宏觀上特別重要。軟件公司的項目

15、組在開發(fā)一個大項目或產(chǎn)品時,首先在技術(shù)上必須選擇一個開發(fā)模型,使開發(fā)模型非常適合這個項目或產(chǎn)品的生存周期;隨后通過對生存周期的裁減,給出適合于本項目或產(chǎn)品的軟件生存周期定義。2.4簡述瀑布模型、增量模型、迭代模型、原型模型、XP等模型的優(yōu)缺點。軟件開發(fā)模型比較表序號模型名稱優(yōu)點缺點適用范禺1瀑布模型簡單好學(xué)逆轉(zhuǎn)性差面向過程開發(fā)2增雖模型可以分階段提交有時用戶不同意系統(tǒng)可拆卸和組裝3迭代模型需求可變風(fēng)險大有鬲素質(zhì)軟件團(tuán)隊4原型模型開發(fā)速度快不利干創(chuàng)新己有產(chǎn)品的原型5螺旋模型需求可變建設(shè)周期長龐大.復(fù)朵.高風(fēng)險項目6噴泉模型提高開發(fā)效率不利干項目的管理面向?qū)ο箝_發(fā)7XP模型提高開發(fā)效率不適合大團(tuán)隊

16、、大項目小團(tuán)隊小項目2.5軟件公司的CMMI過程改進(jìn)模型與軟件開發(fā)模型有關(guān)嗎?為什么?無關(guān)。因為CMMI管理體系是一種過程與質(zhì)量管理模型,它是適應(yīng)于任何軟件開發(fā)模型的,或者說它與任何開發(fā)模型無關(guān)。開發(fā)模型本身只是規(guī)定了軟件生存周期中的若干步驟或階段,便于開發(fā)人員去開發(fā)與維護(hù),它并沒有規(guī)定管理人員的過程管理方法與任務(wù)。為此,CMMI管理體系規(guī)定采取階段評審和不符合項的動態(tài)跟蹤制度,只有前一階段的不符合項全部改正后,才允許開發(fā)人員進(jìn)入后一階段的工作。所謂不符合項,就是在評審中發(fā)現(xiàn)的問題項,它與Bug既有聯(lián)系,又有區(qū)別。對于這些不符合項,軟件管理部門要列出表格,記錄在案,確定責(zé)任人,限定改正時間,動

17、態(tài)跟蹤到底。2.6請調(diào)查你周圍的軟件公司采用哪幾種軟件開發(fā)模型進(jìn)行軟件開發(fā)。周闈的軟件公司采用的軟件開發(fā)模型有瀑布模型、增量模型、迭代模型、原型模型。其中瀑布模型和原型模型是這些軟件公司最常用的,其次是增量模型,最后是迭代模型。2.7軟件開發(fā)模型對你今后的工作,到底具有什么指導(dǎo)意義?當(dāng)我們進(jìn)入IT企業(yè)參與軟件開發(fā)或管理時,若能掌握軟件開發(fā)模型知識,就會很快了解當(dāng)前的項目或產(chǎn)品應(yīng)該采用什么開發(fā)模型,由此確定該軟件的生存周期和當(dāng)前項目組的開發(fā)狀態(tài)與進(jìn)度,從而很快知道項目組成員的工作,也能使自己很快融入該項目組,快速適應(yīng)IT企業(yè)文化,并很快進(jìn)入角色。2.8你對“生命周期模型裁剪指南”有什么看法?“生

18、存周期模型裁剪指南”是IT企業(yè)或軟件組織內(nèi)部根據(jù)軟件開發(fā)模型的普遍原則,結(jié)合本單位的開發(fā)經(jīng)驗和行業(yè)特點的具體實際定制出來的。它有針對性地對選定的軟件開發(fā)模型中定義的生存周期,進(jìn)行恰當(dāng)?shù)夭眉?。所謂裁剪,就是對原模型中定義的內(nèi)容進(jìn)行增、改、刪,去掉對本單位或者本項目不適合的部分,增加對本單位或者本項目適用的內(nèi)容,同時進(jìn)一步細(xì)化。這樣可以縮短開發(fā)時間,減少開發(fā)成本,具有非?,F(xiàn)實的意義。2.9“圖書館信息系統(tǒng)”的開發(fā)選用什么開發(fā)模型合適?“圖書館信息系統(tǒng)”的開發(fā)選用瀑布模型比較合適。因為瀑布模型開發(fā)階段清晰,便于評審、審計、跟蹤、管理和控制,而且“圖書館信息系統(tǒng)”在一定程度上符合瀑布模型的條件:(1)

19、它在開發(fā)時間內(nèi)需求沒有變化或很少變化。(2)分析設(shè)計人員對應(yīng)用領(lǐng)域很熟悉。(3)低風(fēng)險項目。(4)用戶使用壞境比較穩(wěn)定。(5)用戶除提出需求以外,很少參與開發(fā)工作。2.10請詳細(xì)說明瀑布模型與迭代模型之間的關(guān)系。在宏觀上,迭代模型是動態(tài)模型,瀑布模型是靜態(tài)模型。一方面,迭代模型需要經(jīng)過多次反復(fù)迭代,才能形成最終產(chǎn)品。另一方面,迭代模型的每一次迭代,實質(zhì)上都是執(zhí)行一次瀑布模型,都要經(jīng)歷初始、精化、構(gòu)造、移交4個階段,走完瀑布模型的全過程。在微觀上,迭代模型與瀑布模型都是動態(tài)模型。迭代模型與瀑布模型在每一個開發(fā)階段(初始、精化、構(gòu)造、移交)的內(nèi)部,都有一個小小的迭代過程,只有經(jīng)歷這一迭代過程,該階

20、段的開發(fā)工作才能做細(xì)做好。瀑布模型與迭代模型之間的這種微妙關(guān)系,如下圖所示。微歡上迭代循壞初始精化構(gòu)建移交農(nóng)觀上迭代淅環(huán)一次圖瀑布模型與迭代模型之間的關(guān)系由圖可見,在迭代和瀑布模型中,你中有我、我中有你。瀑布模型與迭代模型之間的關(guān)系,反映了人們對客觀事物的認(rèn)識論:要認(rèn)識與掌握某一客觀事物,必須經(jīng)歷由宏觀到微觀的多次反復(fù)的過程。只有從宏觀上反復(fù)迭代幾次,才能看清全貌,掌握爭物的宏觀發(fā)展規(guī)律。只有從微觀上反復(fù)迭代幾次,才能吃透每個細(xì)節(jié),掌握事物的微觀發(fā)展規(guī)律。習(xí)題33.1為什么說立項(或簽訂合同)是一切項目的源頭,也是軟件項目的源頭?立項的過程就是軟件企業(yè)決定是否去開發(fā)某個項目或產(chǎn)品的過程。只有立

21、項完成以后企業(yè)領(lǐng)導(dǎo)部門才會下達(dá)“任務(wù)書”,開發(fā)部門開始組成開發(fā)團(tuán)隊,成立項目組。3.2立項的具體表現(xiàn)形式是什么?企業(yè)的市場銷售部門在市場調(diào)研的基礎(chǔ)上,分析該產(chǎn)品是否有市場前景,以及企業(yè)是否有能力開發(fā)出該產(chǎn)品,并具體列出系統(tǒng)的功能、性能、接II和運行環(huán)境等方面的需求情況,當(dāng)前客戶群和潛在客戶群情況,以及投入產(chǎn)出分析,然后寫出立項建議書,召開立項論證會,決定是否立項。3.3立項建議書的編制者為什么主要是軟件公司的市場銷售人員,而不是開發(fā)人員?軟件開發(fā)出來終歸要推向市場的,軟件能不能被市場接受是軟件開發(fā)成功的標(biāo)準(zhǔn)。市場銷售人員長期和市場客戶打交道,他們最了解客戶和市場的需求,最知道什么樣的產(chǎn)品具有巨

22、大商機(jī)。3.4為什么將項目的市場前景、功能、性能、接I、風(fēng)險作為立項建議書的主要內(nèi)容?一切軟件項目或軟件產(chǎn)品,都是為了實現(xiàn)用戶需求中的“功能、性能、接II”三項具體目標(biāo)。軟件是否有市場前景,是軟件開發(fā)是否成功的標(biāo)志,有了市場軟件才能帶來利潤。風(fēng)險分析是對開發(fā)此軟件的政策風(fēng)險、環(huán)境風(fēng)險、技術(shù)風(fēng)險、技能風(fēng)險等進(jìn)行分析,這對公司按時保質(zhì)保量地完成軟件開發(fā),是必不可少的。3.5什么叫風(fēng)險分析?技能風(fēng)險與技術(shù)風(fēng)險有何區(qū)別?這里的風(fēng)險分析是指軟件立項過程中對產(chǎn)品開發(fā)、銷售等可能出現(xiàn)的風(fēng)險進(jìn)行分析。分析方法是將一個大風(fēng)險化解為多個小風(fēng)險,然后再一個個克服小風(fēng)險。技術(shù)風(fēng)險是指采用新技術(shù)的風(fēng)險程度。技能風(fēng)險是指

23、項目組成員掌握新技術(shù)的風(fēng)險程度。兩者的區(qū)別在于一個是說新技術(shù)(如新的開發(fā)工具,新的設(shè)計思想)本身的風(fēng)險,一個是說人員要掌握這種新技術(shù)的風(fēng)險。3.6行業(yè)領(lǐng)域業(yè)務(wù)專家與產(chǎn)品經(jīng)理有何異同?行業(yè)領(lǐng)域業(yè)務(wù)專家是精通某行業(yè)領(lǐng)域業(yè)務(wù)的人,在講標(biāo)時能把投標(biāo)書的內(nèi)容準(zhǔn)確、生動地表述出來,使客戶心服II服。而產(chǎn)品經(jīng)理是某產(chǎn)品需求分析和概要設(shè)計的經(jīng)理或?qū)<?,主要?fù)責(zé)產(chǎn)品的立項、需求、設(shè)計和銷售等業(yè)務(wù)。兩者的相同點是:必須精通該產(chǎn)品的功能、性能和接II。不同點是:前者突出熟悉產(chǎn)品的應(yīng)用業(yè)務(wù)領(lǐng)域,后者突出熟悉產(chǎn)品的需求與設(shè)計。3.7合同、任務(wù)書、立項建議書三者有何異同?有何關(guān)系?合同是與固定客戶簽訂的協(xié)議書,簽訂合同后

24、軟件公司啟動該項目的開發(fā),該軟件被稱為“訂單軟件”。立項建議書是相對“非訂單軟件”而言的,是相關(guān)人員對立項過程的書面描述。任務(wù)書是企業(yè)決定開發(fā)某個軟件時,對此任務(wù)的具體部署情況,以書面的形式表達(dá)岀來,包括正文和附件。只有立項建議書或合同簽訂以后才能下達(dá)任務(wù)書,三者都是軟件開發(fā)的源頭。3.8下達(dá)任務(wù)的時間和方法是什么?滿足以下三個條件中的任意一個,即可下達(dá)任務(wù)書:(1)企業(yè)已簽訂了項目合同。(2)立項建議書己通過了評審。(3)作為特殊情況,軟件組織的上級下達(dá)了某個項目的指令性軟件開發(fā)計劃。例如,有跨組織、跨部門的某個人系統(tǒng)項目,軟件的需求由它的系統(tǒng)總體設(shè)計組分配。下達(dá)任務(wù)書的方法是:(1)下達(dá)一

25、份任務(wù)書的正文。包括任務(wù)的下達(dá)對象、內(nèi)容、要求完成的口期、決定投入的資源、必要時包括任命項目經(jīng)理(技術(shù)經(jīng)理和產(chǎn)品經(jīng)理)、其他保證措施、獎懲措施等。任務(wù)書的正文可長可短,若合同或立項建議書很詳細(xì),則正文可短。若合同或立項建議書很粗略很短,則正文應(yīng)該詳細(xì),當(dāng)然也應(yīng)該很長。(2)下達(dá)一份任務(wù)書的附件。一般情況下它就是軟件合同或立項建議書,如果是指令性計劃,它的格式和內(nèi)容,也應(yīng)與合同或立項建議書基本相同,即附件的內(nèi)容應(yīng)覆蓋系統(tǒng)的功能點列表、性能點列表、接II列表、資源需求列表、開發(fā)進(jìn)度列表、階段評審列表等。3.9請進(jìn)行社會調(diào)查,收集材料,用事實說明“立項就是決策”的道理。2003年初冬,山東某軟件公司

26、的老總在西安出差,發(fā)現(xiàn)西安市的人中型餐廳基本上都有電子點菜系統(tǒng),客人一點菜,信息馬上出現(xiàn)在廚房大師傅眼前,人師傅馬上炒菜,服務(wù)員很快上菜,他感到很有意思。后來一打聽,這個餐飲系統(tǒng)”是北京某軟件公司開發(fā)的。于是這位老總又飛到北京,拜訪了“餐飲系統(tǒng)”的開發(fā)公司,了解到該公司經(jīng)濟(jì)效益不錯,而且還到幾家餐飲店去就餐,親身體驗“餐飲系統(tǒng)”的使用情況,收集用戶意見。返回山東后,老總拍著腦袋決定馬上立項,快速開發(fā)本公司的“餐飲系統(tǒng)”。不到三個月,餐飲系統(tǒng)”開發(fā)完畢,但是在后來的兩年中,該系統(tǒng)在山東某市總共只賣出兩套,投入與產(chǎn)出比是5:lo這是為什么?就是因為該城市是中等城市,不像北京、西安是大城市,“餐飲系

27、統(tǒng)”的客戶群,實在是少得可憐。立項就是決策,IT企業(yè)的決策必須按照決策程序進(jìn)行,沒有決策程序就要先制定決策程序,不能一個人拍腦袋定決策。3.10試述商業(yè)MIS開發(fā)任務(wù)書的優(yōu)缺點及需要如何改進(jìn)。選作題,課外作業(yè)。3.11請在老師的指導(dǎo)下,選定一個項目,寫出一份立項建議書。選作題,課外作業(yè)。3.12對軟件項目和產(chǎn)品的“功能、性能、接口”三項指標(biāo)如何理解?一切項目或產(chǎn)品都是為了解決自身的“功能、性能、接1丨”問題,軟件項目或產(chǎn)品更是這樣。所以,從軟件立項、需求、設(shè)計、編程、測試、維護(hù),自始至終都要亳不動搖地堅持“功能、性能、接口”三項指標(biāo)。3.13請用PowerPointI具制作一份“圖書館信息系統(tǒng)

28、”的投標(biāo)書,并進(jìn)行試講。選作題,課外作業(yè)。3.14按照老師建議的其他實踐項目,23人一組,完成項目的立項任務(wù)書和投標(biāo)書,并進(jìn)行投標(biāo)書討論與試講。選作題,課外作業(yè)。習(xí)題44.1為什么需求分析特別重要?需求分析特別重要,是因為:(1)許多犬型應(yīng)用系統(tǒng)的失敗,最后均歸結(jié)到需求分析:要么獲取需求的方法不當(dāng),使得需求分析不到位或不徹底,導(dǎo)致開發(fā)者反復(fù)多次地進(jìn)行需求分析,致使設(shè)計、編碼、測試無法順利進(jìn)行:要么客戶配合不好,導(dǎo)致客戶對需求不確認(rèn),或客戶需求不斷變化,同樣致使設(shè)計、編碼、測試無法順利進(jìn)行。(2)需求分析的輸出文檔是用戶需求報告,它既是軟件生存周期中的第一個里程碑,又是客戶、軟件開發(fā)人員和項目管

29、理人員三者必須遵守的一根基線,是三者共同工作的基礎(chǔ),是項目Alpha測試和Beta測試的準(zhǔn)則,是供方交付產(chǎn)品和需方驗收產(chǎn)品的依據(jù)。(3)需求分析要占用整個軟件開發(fā)時間或工作量的30%左右。(4)需求獲取中的錯誤,屬于軟件開發(fā)中的早期錯誤,它會在后續(xù)的設(shè)計和實現(xiàn)中進(jìn)行發(fā)散式的傳播。根據(jù)以上4個原因,IT企業(yè)的高層經(jīng)理,對需求分析特別重視,常常派經(jīng)驗最豐富的人員去作項目需求。正因為如此,系統(tǒng)分析員”才是軟件行業(yè)中的最高技術(shù)職稱。4.2需求分析的目的是什么?需求分析的難點在哪里?軟件需求分析,其目的是用于說明軟件產(chǎn)品或軟件項目需要滿足的條件和限制。在軟件工程項目中首先要獲取用戶的需求,通過對軟件需要

30、的提取、分析、文檔化及驗證,為進(jìn)一步的設(shè)計和實現(xiàn)提供依據(jù)。需求分析的難點是:在系統(tǒng)的功能、性能和接II方面,開發(fā)者與客戶達(dá)成完全一致的需求,讓客戶最終簽字確認(rèn),并保證在項目驗收前,需求相對穩(wěn)定不變。萬一需求有一點變化,雙方必須履行“需求變更管理程序”,而變更管理程序在簽訂合同時已經(jīng)做了規(guī)定。要知道,合同是具有法律效力的。4.3需求分析的理論基礎(chǔ)有哪些?需求分析的理論基礎(chǔ)有:什么是軟件需求;軟件需求需要量化;需求是一個過程;需求過程中的角色;需求過程是一個迭代的過程;需求來源等6條理論基礎(chǔ)。4.4為什么說需求過程是一個迭代過程?由于人們對客觀事物的認(rèn)識是不斷深化的,所以需求過程是一個迭代過程,每

31、次迭代提供更高質(zhì)量和更詳細(xì)內(nèi)容的軟件需求。這種迭代會給項目帶來一定的風(fēng)險,上一次迭代的設(shè)計實現(xiàn)可能會因為需求不足而被推翻。在很多情況下,對需求的理解會隨著設(shè)計過程和實現(xiàn)過程的深入而不斷深化,這也會導(dǎo)致在軟件生命周期的后期,重新修訂軟件需求。原因可能來自于錯誤的分析,客戶環(huán)境和業(yè)務(wù)流程的改變,市場趨勢的變化等。無論是什么原因,軟件分析師應(yīng)認(rèn)識到需求變化的必然性,并采取相應(yīng)的措施,減少需求變更對軟件系統(tǒng)的影響。4.5為什么說需求分析是面向流程的?系統(tǒng)的功能、性能、接II、界面都是在流程中動態(tài)實時的反映出來。在所有的流程(物流、人流、資金流、信息流、單據(jù)流、報表流、數(shù)據(jù)流)中,數(shù)據(jù)流最重要,也最具有

32、代表性。因為在計算機(jī)網(wǎng)絡(luò)系統(tǒng)內(nèi),一切流程都表現(xiàn)為數(shù)據(jù)流,或者說是數(shù)據(jù)流在不同方向的投影。而流程是動態(tài)的、實時的。所以說,需求分析是面向流程的。4.6需求分析的基本思路是什么?需求分析的思路,是從用戶的功能需求(系統(tǒng)需要做什么)出發(fā),由系統(tǒng)的業(yè)務(wù)流程和數(shù)據(jù)流程導(dǎo)出系統(tǒng)的業(yè)務(wù)模型和功能模型,識別出系統(tǒng)的元數(shù)據(jù)和中間數(shù)據(jù),為今后設(shè)計數(shù)據(jù)模型做好充分準(zhǔn)備。同時,對系統(tǒng)的軟、硬件環(huán)境配置,開發(fā)工具,開發(fā)工期,費用,開發(fā)進(jìn)度,培訓(xùn),系統(tǒng)風(fēng)險進(jìn)行評估。4.7解釋術(shù)語:元數(shù)據(jù)、實體、中間數(shù)據(jù)。元數(shù)據(jù)是組織數(shù)據(jù)的數(shù)據(jù),描述數(shù)據(jù)的數(shù)據(jù),關(guān)于數(shù)據(jù)的數(shù)據(jù)。實體(指實體集或?qū)嶓w型),是一組相關(guān)元數(shù)據(jù)的集合。中間數(shù)據(jù)(有

33、的書上稱為查詢數(shù)據(jù))是組織統(tǒng)計數(shù)據(jù)的數(shù)據(jù),描述統(tǒng)計數(shù)據(jù)的數(shù)據(jù),關(guān)于統(tǒng)計數(shù)據(jù)的數(shù)據(jù)。4.8為什么說元數(shù)據(jù)的分析與識別是需求分析的議題之一?元數(shù)據(jù)是組織數(shù)據(jù)的數(shù)據(jù),描述數(shù)據(jù)的數(shù)據(jù),關(guān)于數(shù)據(jù)的數(shù)據(jù)。通俗地講,元數(shù)據(jù)就是信息系統(tǒng)中實體名及其屬性名的集合,或者說就是基表的表名與字段名的集合。由于信息系統(tǒng)的設(shè)計與實現(xiàn),都是面向元數(shù)據(jù)的,所以說元數(shù)據(jù)的分析與識別是需求分析的議題之一。元數(shù)據(jù)分析的出發(fā)點是業(yè)務(wù)模型和功能模型,落腳點是系統(tǒng)中的實體及其屬性,是企事業(yè)單位的數(shù)據(jù)模型中的所有元素。4.9元數(shù)據(jù)與中間數(shù)據(jù)之間,有什么關(guān)系?請舉例說明。元數(shù)據(jù)與中間數(shù)據(jù)間的關(guān)系是一種因果關(guān)系。元數(shù)據(jù)對應(yīng)原始單據(jù),中間數(shù)據(jù)對

34、應(yīng)查詢、統(tǒng)計、報表。元數(shù)據(jù)將原始單據(jù)中錄入的數(shù)據(jù)組織起來變成基表中的記錄,這些記錄稱為基礎(chǔ)數(shù)據(jù)。中間數(shù)據(jù)將輸出數(shù)據(jù)組織起來變成中間表中的記錄,這些記錄稱為統(tǒng)計數(shù)據(jù)。中間表中的記錄是由基表中的記錄派生(推導(dǎo)、加工、處理)出來的,為了敘述簡單,我們說“中間數(shù)據(jù)是由元數(shù)據(jù)派生出來的”。例如,人力資源系統(tǒng)中的員工基本情況表中的“姓名、性別、出生口期、文化程度、畢業(yè)學(xué)校、身份證號”等是元數(shù)據(jù),而通過統(tǒng)計后得出的軟件開發(fā)部1980年以后出生的人員情況表中的“姓名、性別、文化程度、畢業(yè)學(xué)?!保鼈兪侵虚g數(shù)據(jù)。4.10業(yè)界存在哪三種需求分析方法?你認(rèn)為哪一種方案更好?業(yè)界存在三種需求分析方法:面向功能分析、面

35、向?qū)﹀璺治?、面向?shù)據(jù)分析。以上這三種方法,各自適用于不同的目標(biāo)系統(tǒng)。目前時尚的方法是面向?qū)﹀?,包括面向主體和面向方法??偟膩碚f,對于系統(tǒng)軟件和應(yīng)用軟件來說,面向功能需求分析的方法簡單明了,而面向?qū)﹀璧男枨蠓治龇椒▌t復(fù)雜抽彖。對于以關(guān)系數(shù)據(jù)庫為平臺的信息系統(tǒng)軟件來說,面向數(shù)據(jù)需求分析方法的特點是抓住了本質(zhì)。但是,這三種分析方法都離不開面向流程分析這根總線:功能、對象、數(shù)據(jù)都是在流程中產(chǎn)生的,又都是為流程服務(wù)的。4.11需求管理過程的目標(biāo)和內(nèi)容是什么?需求管理的目標(biāo),是保證軟件項目或產(chǎn)品滿足客戶在軟件功能、性能、接II三個方面的需求。需求管理過程的內(nèi)容,主要包扌舌需求確認(rèn)、需求評審、需求追蹤和需求

36、變更活動管理。4.12為什么對需求文檔要進(jìn)行同行評審?同行評審,是軟件工作產(chǎn)品驗證的活動,其目的是為了及早和高效地從軟件工作產(chǎn)品中識別并消除缺陷。重點在于發(fā)現(xiàn)軟件工作產(chǎn)品中的缺陷。另外,由于進(jìn)行同行評審,使大量人員對軟件系統(tǒng)中原本不熟悉的部分更加了解,因此同行評審還提高了項目的連續(xù)性,培訓(xùn)了后備人員。4.13用戶需求報告與需求分析規(guī)格說明書有何差異?(1)用戶需求報告是對外的,需求規(guī)格說明書是對內(nèi)的。用戶需求報告是站在用戶(使用者)的角度、用他們可以看懂的語言(比如自然語言)寫的,需要用戶簽字確認(rèn)。需求規(guī)格說明書則不同,它是對內(nèi)的,不需要用戶簽字確認(rèn)。它是站在開發(fā)者的角度、可以采用形式化或半形

37、式化的語言進(jìn)行描述。(2)一般來說,用戶需求報告是合同的產(chǎn)物,需求規(guī)格說明書是立項建議書的產(chǎn)物。用戶需求報告是對合同而言的。需求規(guī)格說明書是對立項建議書而言的。(3)由用戶需求報告可產(chǎn)生需求規(guī)格說明書。簽完合同后,一般是先寫出用戶需求報告,后寫出需求規(guī)格說明書。當(dāng)需求報告由用戶簽字確認(rèn)后,需求規(guī)格說明書很快就出來了。4.14怎么理解“不符合項”?為什么要對它進(jìn)行跟蹤管理?不符合項是指沒有滿足要求的項,不一定是錯誤,跟Bug是不同的。跟蹤的意思在于,獲得需求目前的實現(xiàn)狀態(tài),確保用戶所有的需求都得到滿足??煽康母櫺畔⒖蔀樾枨笞兏?、系統(tǒng)維護(hù)、關(guān)鍵成員離開、系統(tǒng)再設(shè)計和類似系統(tǒng)設(shè)計等很多方面,提供參

38、考和指導(dǎo),并可以減少風(fēng)險和提高項目成功率。4.15為什么說“只考慮目標(biāo)系統(tǒng)是什么、而不考慮目標(biāo)系統(tǒng)怎么做的需求分析觀點,是片面的、表面的、不可取的”?因為有些需求分析問題,在需求分析階段開發(fā)者感覺不出來,到了設(shè)計階段才會感覺出來,此時才發(fā)現(xiàn)設(shè)計的資料不夠、條件缺少,即需求沒有完全到位,需要做第二次需求分析。所以說,只考慮目標(biāo)系統(tǒng)是什么、而不考慮目標(biāo)系統(tǒng)怎么做的需求分析觀點,是片面的,表面的,不可取的”。從這一點看,需求分析過程是一個迭代過程。4.16需求描述有哪幾種工具?你喜歡用哪一種?為什么?需求描述的工具包括數(shù)據(jù)流圖、業(yè)務(wù)流程圖、用況圖、時序圖、用戶交互圖、數(shù)據(jù)模型圖和功能需求列表、性能需

39、求列表、接口需求列表、界面需求列表等。選擇哪一種描述工具,主要取決于問題域的本質(zhì)特征。不同的軟件,對分析要求的嚴(yán)格程度不同。我喜歡業(yè)務(wù)流程圖,它包括了物流、資金流、信息流,即業(yè)務(wù)操作模型,重點是業(yè)務(wù)操作的流水步驟。業(yè)務(wù)模型表示了與系統(tǒng)有關(guān)的人、設(shè)備、其他子系統(tǒng)之間的業(yè)務(wù)關(guān)系和費用關(guān)系,它是經(jīng)過業(yè)務(wù)流程重組、再創(chuàng)和優(yōu)化后,并且得到企業(yè)領(lǐng)導(dǎo)確認(rèn)的業(yè)務(wù)流程圖。繪制這個圖的工具可以是Office辦公軟件。4.17如果你是項目經(jīng)理,怎樣組織項目組成員,對學(xué)院圖書資料室信息管理系統(tǒng)進(jìn)行需求分析?并將該系統(tǒng)的功能需求列表詳細(xì)列出。選作題,課外作業(yè)。4.18在主講老師的組織下,學(xué)生以項目組為單位,選取瀑布模型

40、或快速原型模型,采用項目組成員最熟悉的數(shù)據(jù)庫管理系統(tǒng)和面向?qū)﹀璧木幊坦ぞ?,開發(fā)“圖書資料室信息系統(tǒng)”這個小項目,要求文檔書寫齊全、前臺界面美觀簡單、后臺數(shù)據(jù)庫維護(hù)方便,并盡量使它產(chǎn)品化。選作題,課外作業(yè)。4.19如果你是軟件公司的系統(tǒng)分析師,你將怎樣進(jìn)行需求分析?選作題,課外作業(yè)。習(xí)題55.1為什么說計劃只是策劃的一個結(jié)果?軟件策劃,或者軟件計劃,英文都是Plamuiigo但是,策劃包含有出謀劃策和做計劃兩個意思。策劃是一個過程,是一系列活動。計劃是一份文檔,是一個結(jié)果。所以說,計劃只是策劃的一個主要結(jié)果或成果。5.2簡述軟件策劃的步驟。軟件策劃的4個步驟是:步驟步驟名稱步驟內(nèi)容1估計軟件工作

41、產(chǎn)品的規(guī)模、工作呈、費用及所需的資源軟件工作產(chǎn)品,包括需求規(guī)格說明書、概要設(shè)計說明書、詳細(xì)設(shè)計說明書、源代碼、測試計劃和測試報告、質(zhì)呈保證計劃、軟件配呂管理計劃、里程碑及評審計劃。每個工作產(chǎn)品所需的工作呈(人年、費用及其所需的其他資源,都要呈化2制定時間表包括開發(fā)進(jìn)度時間表和口歷進(jìn)度時間表:軟件開發(fā)計劃、質(zhì)呈保證計劃、軟件配擔(dān)管理計劃、測試計劃、評審計劃3鑒別和評估風(fēng)險政策風(fēng)險、資源風(fēng)險、市場突變風(fēng)險、技術(shù)風(fēng)險和技能風(fēng)險等4與相關(guān)的組或人協(xié)商策劃中的有關(guān)約定策劃的結(jié)果要實事求是,要得到各有關(guān)方而的同意和認(rèn)可5.3軟件策劃要實現(xiàn)的具體目標(biāo)是什么?軟件策劃是項目跟蹤和監(jiān)控的基礎(chǔ),是項目經(jīng)理和高層經(jīng)

42、理管理項目的依據(jù)。軟件策劃要實現(xiàn)的具體目標(biāo)有三個。(1)對供項目策劃和跟蹤用的三個軟件估計已建立文檔。這三個估計是:一一工作產(chǎn)品規(guī)模估計一一工作量及成本估計一一計算機(jī)資源估計(2)軟件項目活動和約定是有計劃的,并已建立文檔。這里的活動,包括開發(fā)活動和管理活動。這里的約定,是指對項目的各種標(biāo)準(zhǔn)、規(guī)范、規(guī)程的約束。(3)受影響的組和個人,同意他們對軟件項目的約定。受影響的組和個人有:一一軟件工程組(項目組)一一軟件估計組一一系統(tǒng)測試組一一質(zhì)量保證組一一配置管理組一一合同管理組一一文檔支持組其中有的組可能只有一個人。5.4為什么在策劃過程中要考慮到受影響的組和個人?受影響的組主要有:軟件工程組(項目

43、組)、軟件估計組、系統(tǒng)測試組、質(zhì)量保證組、配置管理組、合同管理組、文檔支持組等,這些小組的活動始終貫穿于整個軟件工程的全過程,對軟件項目的成敗有著至關(guān)重要的作用,是保證軟件產(chǎn)品質(zhì)量的關(guān)鍵所在,任何一個組的疏忽,都有可能影響到整個軟件產(chǎn)品的開發(fā)進(jìn)度。5.5怎樣理解軟件項目進(jìn)行策劃的時機(jī)?國際上通用的做法是,先做需求分析,后做軟件策劃。至少策劃要在軟件合同/立項建議書和任務(wù)書之后。而且,軟件策劃要在用戶需求報告之后,在規(guī)格說明書/設(shè)計說明書之前。5.6簡述軟件策劃的方法。到目前為止,軟件策劃的方法仍然是采用經(jīng)驗數(shù)據(jù)加結(jié)構(gòu)化方法,這些方法有三個要點:(1)粒度由粗到細(xì)的分解:自頂向下、逐步細(xì)化、逐項

44、逐條逐日安排計劃。(2)粒度由細(xì)到粗的綜合:自底向上、逐步歸納、逐口逐周逐月安排計劃。(3)同類項目經(jīng)驗數(shù)據(jù)類比法、同行專家協(xié)商策劃法。軟件策劃是以用戶確認(rèn)的需求為基礎(chǔ),以軟件組織內(nèi)部的軟件標(biāo)準(zhǔn)為依據(jù),把組織內(nèi)部類似項目的成功經(jīng)驗作為策劃時的參考。5.7軟件策劃的上游和卞游各是什么?上游是需求分析,下游是軟件設(shè)計。5.8定義軟件過程是什么含義?所謂定義軟件過程,就是根據(jù)選定的生命周期模型,規(guī)定軟件的開發(fā)階段,及每一階段的工作步驟和文檔標(biāo)準(zhǔn)等內(nèi)容。5.9軟件估計是什么含義?所謂軟件估計,指對軟件項目進(jìn)行量化估計,并記錄估計結(jié)果的過程。軟件估計是軟件度量的一部分,它既是軟件策劃的核心,又是軟件策劃

45、的重點與難點。5.10簡述對軟件工作產(chǎn)品規(guī)模進(jìn)行量化估計的方法。到目前為止,在IT企業(yè)中常用的軟件項目規(guī)模估計方法有以卞4種:第一種估計方法:希臘古都法。希臘占都法是最流行的專家評估技術(shù),在沒有歷史數(shù)據(jù)的情況卞,這種方式適用于評定過去與將來。它鼓勵參加者就問題相互討論。這項技術(shù),要求有多種軟件相關(guān)經(jīng)驗的人參與,互相說服對方。第二種估計方法:類比法。類比法適合評估一些與歷史項目在應(yīng)用領(lǐng)域、環(huán)境和復(fù)雜度方面相似的項目,通過新項目與歷史項目的比較得到規(guī)模估計。它的結(jié)呆的精確度取決于歷史項目數(shù)據(jù)的完整性和準(zhǔn)確度。第三種估計方法:功能點估計法。功能點(實體數(shù)、構(gòu)件數(shù)、屏幕數(shù)、報表數(shù)、文檔數(shù))測量,是在需

46、求分析階段基于系統(tǒng)功能的一種規(guī)模估計方法。第四種估計方法:無禮估計法。無禮估計法對各個項目活動的完成時間,按三種不同情況估計:一個產(chǎn)品的期望規(guī)模、一個最低可能估計、一個最高可能估計。用這三個估計得到一個產(chǎn)品的期望規(guī)模和標(biāo)準(zhǔn)偏差。5.11簡述軟件工作產(chǎn)品成本費用的估計方法。軟件工作產(chǎn)品成本費用估計方法是:序號估計方法估計單位(元)方法說明1直接的勞務(wù)費人民幣開發(fā)人員的工資和福利2管理費人民幣技術(shù)管理和行政管理人員的工資和福利3差旅費人民幣售前、售中、售后的人員差旅費4計算機(jī)使用費人民幣網(wǎng)絡(luò)設(shè)備的折舊費和房租水電費5其他招待費和公關(guān)費人民幣控制在總費用的15%以內(nèi)5.12項目跟蹤與監(jiān)督的基礎(chǔ)是什么

47、?在項目策劃階段,要為開發(fā)計劃制定嚴(yán)格的審批流程。開發(fā)計劃在經(jīng)過組織批準(zhǔn)生效后,將成為進(jìn)行項目跟蹤與監(jiān)督的基礎(chǔ)。5.13軟件開發(fā)計劃應(yīng)包括哪些內(nèi)容?軟件開發(fā)計劃書是軟件策劃的輸出文檔,它包括如下10個方面的內(nèi)容:(1)軟件項目的目的、范圍、目標(biāo)和對象。(2)軟件生存周期的選擇與裁剪。(3)確定軟件開發(fā)和維護(hù)的規(guī)范、方法和標(biāo)準(zhǔn)。(4)軟件工作產(chǎn)品的確定。(5)對工作產(chǎn)品規(guī)模的估計。(6)對工作量和成本的估計。(7)關(guān)鍵計算機(jī)資源的估計和使用情況。(8)項目的進(jìn)度、里程碑和評審計劃。(9)風(fēng)險的識別和評估。(10)項目工程設(shè)施和工具的計劃。5.14軟件工作產(chǎn)品和軟件產(chǎn)品有何異同?軟件工作產(chǎn)品是指開

48、發(fā)過程中每個階段的文檔、數(shù)據(jù)和程序,即每個開發(fā)階段的輸出制品。軟件產(chǎn)品是指軟件開發(fā)與測試工作已經(jīng)完工,并且可投入市場銷售的軟件產(chǎn)品。由此可見,軟件產(chǎn)品是最后一個階段的軟件工作產(chǎn)品。5.15名詞解釋:直接人工、直接費用、間接成本、制造費用、管理費用、不可預(yù)見費用。直接人工:是指直接參與軟件產(chǎn)品開發(fā)的相關(guān)的程序員、系統(tǒng)分析員等項目組成員。直接費用:是指與軟件開發(fā)有著直接關(guān)系的口常開銷,如員工的薪金、福利、勞保、口常餐飲費用、差旅費用等。間接成本:是指與軟件開發(fā)沒有直接關(guān)系的口常開銷,如招待費、器材損耗等。制造費用:企業(yè)生產(chǎn)車間為制造產(chǎn)品和提供勞務(wù)而發(fā)生的各項間接費用,包括折舊費、修理費、物料消耗費

49、等。管理費用:是指企業(yè)行政管理部門為組織經(jīng)營管理活動而發(fā)生的各項費用,包括公司辦公經(jīng)費、工會經(jīng)費、職工教育經(jīng)費、審計費、訴訟費、排污費、綠化費、稅金、土地使用費、土地?fù)p失補(bǔ)償費、技術(shù)轉(zhuǎn)讓費、壞賬損失,存貨盤虧、毀損和報廢(減盤盈)費用。不可預(yù)見費用:是指在軟件開發(fā)過程中,由于某些意想不到的因素造成了軟件開發(fā)成本的提高。5.16怎樣理解軟件中的度量,它有何作用?軟件中的度量,是指對人量測量數(shù)據(jù)的統(tǒng)計分析。度量是按規(guī)定在項目進(jìn)行過程中,需要采集的度屋數(shù)據(jù),以便量化地反映項目的進(jìn)展情況,為管理者提供對項目進(jìn)展的適當(dāng)?shù)目梢曅?,同時度量數(shù)據(jù)是項目過程改善的基礎(chǔ)數(shù)據(jù),它們存放在測量數(shù)據(jù)庫中。5.17請設(shè)計

50、以下策劃管理文檔:項目周報、項目月報、里程碑報告、重犬事件報告、軟件開發(fā)計劃評審報告、項目計劃變更申請表、計劃更改與批準(zhǔn)記錄。(1)項目周報是:起始日期終止日期項目名稱項目經(jīng)理本周計劃進(jìn)度本周實際進(jìn)度本周成績木周問題下周應(yīng)對措施對資源的要求(2)項目月報是:起始月份終止月份項目名稱項目經(jīng)理木月計劃進(jìn)度木月實際進(jìn)度木月成績木月問題下月應(yīng)對措施對資源的要求(3)里程碑報告是:里程碟名稱評審口期項目名稱項目經(jīng)理里程碑優(yōu)點里程碑問題(4)重人事件報告是:事件名稱事件日期項目名稱項目經(jīng)理事件原因事件處理結(jié)果(5)軟件開發(fā)計劃評審報告是:項13名稱項目經(jīng)理評審階段軟件開發(fā)計劃第次評審評審組組長評審時間評審

51、地點評審組成員不符合項跟蹤記錄不符合項名稱不符合項內(nèi)容限期改正時間實際改正時間測試合格時間測試員簽審計員簽字評審總見評審結(jié)論(6)項目計劃變更申請表是:計劃變更理由變更申請口期項目名稱項目經(jīng)理(7)劃更改與批準(zhǔn)記錄是:更改次數(shù)批準(zhǔn)日期項目名稱項目經(jīng)理變更評審日期變更起始口期原計劃版木號現(xiàn)計劃版木號5.18在老師的指導(dǎo)卞,寫出一份“圖書館信息系統(tǒng)”的軟件開發(fā)計劃書。參考本書的“圖書館信息系統(tǒng)”一章,按照軟件開發(fā)計劃書參考模板書寫即可,在此省略。5.19如果你是軟件企業(yè)的項目經(jīng)理,根據(jù)實際情況,如何用4種不同的估計方法,對軟件產(chǎn)品規(guī)模進(jìn)行量化估計?(1)在沒有歷史數(shù)據(jù)的情況下,Delplu法是最流

52、行的專家評估技術(shù)。(2)在有歷史數(shù)據(jù)的情況下,類比法適合于評估一些與歷史項目在應(yīng)用領(lǐng)域、環(huán)境和復(fù)雜度方面相似的項目,通過新項目與歷史項目的比較得到規(guī)模估計。(3)在需求分析時,若系統(tǒng)的功能點非常清楚,則可用功能點法。據(jù)統(tǒng)計發(fā)現(xiàn),對一個軟件產(chǎn)品的開發(fā),功能點對項目早期的規(guī)模估計很有幫助。(4)任何時候都可采用無禮估計法。無禮估計法類似于體育比賽中的跳水、體操、花樣游泳、花樣滑冰等項目的評判打分方法。它對各個項目活動的完成時間,按三種不同情況估計:一個產(chǎn)品的期望規(guī)模。一個產(chǎn)品的最低可能估計。一個產(chǎn)品的最高可能估計??捎蛇@三個估計,得到一個產(chǎn)品期望規(guī)模和標(biāo)準(zhǔn)偏差。習(xí)題66.1業(yè)務(wù)模型、功能模型、數(shù)據(jù)

53、模型各是什么含義?三者之間有什么關(guān)系?功能模型是描述系統(tǒng)能做什么,即對系統(tǒng)的功能、性能、接II和界面進(jìn)行定義。業(yè)務(wù)模型是描述系統(tǒng)在何時、何地、由何角色、按什么業(yè)務(wù)規(guī)則去做,以及做的步驟或流程,即對系統(tǒng)的操作流程進(jìn)行定義。數(shù)據(jù)模型是描述系統(tǒng)工作前的數(shù)據(jù)來自何處,工作中的數(shù)據(jù)存到什么地方,工作后的數(shù)據(jù)放到何處,以及這些數(shù)據(jù)之間的關(guān)聯(lián),即對系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行定義。功能模型和業(yè)務(wù)模型是在需求分析時建模,是兩個基本點。數(shù)據(jù)模型是一個中心,在設(shè)計時建模。功能模型和業(yè)務(wù)模型給數(shù)據(jù)模型提供數(shù)據(jù)與維護(hù)數(shù)據(jù),數(shù)據(jù)模型支持功能模型和業(yè)務(wù)模型的正常運行。通常,數(shù)據(jù)模型建模用PowerDesigner,ERWm或Ora

54、cleDesigner匸具實現(xiàn):功能模型用功能點列表(或用況圖)表示;業(yè)務(wù)模型用自然語言加上流程圖(或順序圖)表示。信息系統(tǒng)的業(yè)務(wù)模型就是系統(tǒng)的操作流程和業(yè)務(wù)規(guī)則,功能模型就是系統(tǒng)的功能菜單和用戶界面,數(shù)據(jù)模型就是系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)字典。6.2說明數(shù)據(jù)庫與數(shù)據(jù)庫管理系統(tǒng)的差別。數(shù)據(jù)庫管理系統(tǒng)DBMS是一個系統(tǒng)軟件,它是專門管理用戶的數(shù)據(jù)的。數(shù)據(jù)庫是一個應(yīng)用軟件,它是用戶數(shù)據(jù)的存放地方,專門支持用戶軟件的運行的。6.3你是怎樣通俗地理解數(shù)據(jù)庫設(shè)計范式理論的?第一范式:1NF是對屬性的原子性約束,要求屬性具有原子性,不可再分解。第二范式:2NF是對記錄的唯一性約束,要求記錄有唯一標(biāo)識,即實體的唯

55、一性。進(jìn)一步講,在數(shù)據(jù)庫設(shè)計時,作為唯一性標(biāo)志的主鍵,最好是一個字段,而不是組合字段,這就是主鍵的原子性。現(xiàn)在的關(guān)系數(shù)據(jù)庫管理系統(tǒng),都提供唯一標(biāo)識ED類型的字段,就是為了實現(xiàn)主鍵的原子性。第三范式:3NF是對字段冗余性的約束,即任何字段不能由其他字段派生出來,它要求字段沒有冗余。其他更高級的范式:BCF,4NF,5NF等各級范式,研究的內(nèi)容是解決實體本身的原子性問題,只要實體本身不可再分解了,即實體原子化了,就從根本上符合了BCF,4NF,5NF范式的要求。由此可見:“只要實現(xiàn)了屬性、主鍵、實體三者的原子化,就從根本上符合了各級范式的要求”。這就是范式理論的實質(zhì)!數(shù)據(jù)庫設(shè)計規(guī)范化理論的實質(zhì),就

56、是引導(dǎo)并幫助設(shè)計人員實現(xiàn)“實體、屬性、主鍵的原子化”。6.4什么是原始數(shù)據(jù)?什么是原始單據(jù)?什么是信息源?三者之間有何關(guān)系?原始數(shù)據(jù)是要采集并錄入的數(shù)據(jù),是軟件系統(tǒng)中未加工處理的數(shù)據(jù)。記錄原始數(shù)據(jù)的單據(jù),稱為原始單據(jù)。產(chǎn)生原始數(shù)據(jù)的地點,稱為信息源。即信息源產(chǎn)生的數(shù)據(jù),稱為原始數(shù)據(jù)。由此可見,原始數(shù)據(jù)、原始單據(jù)、信息源,這三個東西,是站在三個不同角度,描述同一個東西。6.5什么是實體?它與原始單據(jù)有什么關(guān)系?實體或?qū)嶓w集是一組相關(guān)元數(shù)據(jù)的集合。一般而言,實體來源于原始單據(jù),即實體蘊涵于原始單據(jù)之中。6.6基本表、代碼表、中間表、臨時表,它們有何異同?數(shù)據(jù)庫是表的集合,表由字段組成,表中存放著記

57、錄。由于記錄的數(shù)據(jù)可以是原始數(shù)據(jù)、信息代碼數(shù)據(jù)、統(tǒng)計數(shù)據(jù)和臨時數(shù)據(jù)4種,所以又可將表劃分為基本表、代碼表、中間表和臨時表4種。存放原始數(shù)據(jù)的表,稱為基本表。存放信息代碼數(shù)據(jù)的表,稱為代碼表。存放統(tǒng)計數(shù)據(jù)的表,稱為中間表(又稱為查詢表)。存放臨時數(shù)據(jù)的表,稱為臨時表。6.7為什么說:“只有基本表對應(yīng)的實體才是真正的實體,才能出現(xiàn)在E-R圖上。中間表、臨時表不對應(yīng)實體,因此也不應(yīng)出現(xiàn)在E-R圖上。代碼表很簡單,在E-R圖上可省略”?因為基本表中的信息,是信息源產(chǎn)生的信息。只有信息源產(chǎn)生的信息,才是客觀存在的實體的信息,所以只有基本表對應(yīng)的實體才是真正的實體,才能出現(xiàn)在E-R圖上。因為中間表、臨時表

58、不是存放原始信息的表,而是存放查詢信息或臨時信息的表,所以中間表、臨時表不對應(yīng)實體,因此也不應(yīng)出現(xiàn)在E-R圖上。因為代碼表很簡單,在E-R圖上可省略。如果不加以省略,就會顯得E-R圖復(fù)雜繁瑣,使人得不到要領(lǐng)。6.8數(shù)據(jù)庫設(shè)計的基本模式有哪些?站在IT企業(yè)的數(shù)據(jù)庫開發(fā)角度上講,數(shù)據(jù)庫設(shè)計的核心設(shè)計模式只有兩個:一個是“第三者插足”模式,另一個是“行變列”模式。6.9顯式與隱式的“第三者插足”模式,它們之間有何異同?當(dāng)兩個實體之間存在多對多關(guān)系時,必須在它們之間插入第三個實體,以化解這種多對多關(guān)系。由于插入的實體,可能是強(qiáng)實體,也可能是弱實體,所以“第三者插足”模式,又分為“強(qiáng)實體插足”模式和“弱

59、實體插足”模式兩種。所謂強(qiáng)實體插足模式,就是不需要增加一個新實體,已有的“明細(xì)實體”就能夠扮演“第三者”的角色。該模式的詳細(xì)情況,將在6.4節(jié)中介紹,本節(jié)只介紹“弱實體插足”模式。所謂弱實體插足模式,就是要公開增加一個新的弱實體,使其扮演“第三者”的角色。該模式是一種最常見、最抽象、最難發(fā)現(xiàn)的數(shù)據(jù)庫設(shè)計模式。它的特點是:由于兩個多對多關(guān)系實體之間的關(guān)聯(lián)實體,沒有獨立的業(yè)務(wù)處理需求,因而不存在實實在在的關(guān)聯(lián)實體,所以需要另外增加第三個抽象的實體,作為它們之間的關(guān)聯(lián)實體。這個抽彖的關(guān)聯(lián)實體,實質(zhì)上就是一個復(fù)雜關(guān)系,稱為弱實體。該弱實體,就是原來兩個多對多關(guān)系實體之間笛卡兒積的子集。該設(shè)計模式,被稱

60、為弱實體插足”模式。顯式與隱式的“第三者插足”模式,都是為了解決實體之間的多對多問題。6.10“列變行”模式的實質(zhì)是什么?數(shù)據(jù)庫設(shè)計中“列變行”模式的實質(zhì),是解決實體本身的原子化問題。也就是說,是解決數(shù)據(jù)庫設(shè)計符合ECF,4NF,5NF的問題。6.11請說明“第三者插足”模式和“列變行”模式之間的關(guān)系?!暗谌卟遄恪蹦J绞菫榱私鉀Q關(guān)系的原子化問題。這里的關(guān)系原子化,是指表之間的關(guān)系都是一對多關(guān)系?!傲凶冃小蹦J街g,都是為了解決實體本身的原子化問題。也就是說,是解決數(shù)據(jù)庫設(shè)計符合ECF,4NF,5NF的問題?!暗谌卟遄恪蹦J胶汀傲凶冃小蹦J?,是進(jìn)行規(guī)范化數(shù)據(jù)庫設(shè)計的兩只手,我們要兩手抓,兩手

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論