《系統(tǒng)分析師》論文真題匯編_第1頁
《系統(tǒng)分析師》論文真題匯編_第2頁
《系統(tǒng)分析師》論文真題匯編_第3頁
《系統(tǒng)分析師》論文真題匯編_第4頁
《系統(tǒng)分析師》論文真題匯編_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

《系統(tǒng)分析師》論文真題匯編卷面總分:45分答題時間:240分鐘試卷題量:45題練習(xí)次數(shù):6次

問答題(共45題,共45分)

1.論系統(tǒng)需求分析方法

系統(tǒng)需求分析是開發(fā)人員經(jīng)過調(diào)研和分析,準(zhǔn)確理解用戶和項目的功能、性能、可靠性等要求,將用戶非形式的訴求表述轉(zhuǎn)化為完整的需求定義,從而確定系統(tǒng)必須做什么的過程。系統(tǒng)需求分析具體可分為功能性需求、非功能性需求與設(shè)計約束等三個方面。

請圍繞“系統(tǒng)需求分析方法”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.詳細(xì)論述系統(tǒng)需求分析的主要方法。

3.結(jié)合你具體參與管理和開發(fā)的實際軟件項目,說明是如何使用系統(tǒng)需求分析方法進(jìn)行系統(tǒng)需求分析的,說明具體實施過程以及應(yīng)用效果。

正確答案:

您的答案:

本題解析:論系統(tǒng)需求分析方法

本題要求論述系統(tǒng)需求分析方法。

首先值得注意的一點是:需求分析方法有廣義與狹義之分。廣義的需求分析包括了:獲取、分析、定義驗證的全過程。而狹義的需求分析僅特指結(jié)構(gòu)化需求分析(SA)方法、面向?qū)ο蠓治觯∣OA)方法和面向問題域的分析(ProblemDomainOrientedAnalysis,PDOA)方法。

本題題干提到“系統(tǒng)需求分析是開發(fā)人員經(jīng)過調(diào)研和分析,準(zhǔn)確理解用戶和項目的功能、性能、可靠性等要求,將用戶非形式的訴求表述轉(zhuǎn)化為完整的需求定義……”。這充分說明,本題的需求分析是廣義的。所以部分學(xué)員所擔(dān)心的,文章中出現(xiàn)需求獲取的論點是否會被判偏題的問題,答案是明確的,這種情況不會判偏題。但全篇文章都不涉及到結(jié)構(gòu)化需求分析與面向?qū)ο笮枨蠓治?,則文章的論點選擇存在重大失誤,有不合格的風(fēng)險。因為廣義的需求分析中:SA與OOA依然是整個工作的重心。

關(guān)于SA與OOA的詳細(xì)描述,請參看《系統(tǒng)分析師教程》清華版。

2.論信息系統(tǒng)開發(fā)方法論

信息系統(tǒng)的開發(fā)一般分為系統(tǒng)規(guī)劃、需求定義、系統(tǒng)設(shè)計、實施和維護(hù)等主要五個階段,每一個階段都應(yīng)該在科學(xué)方法論的指導(dǎo)下開展工作。隨著信息系統(tǒng)規(guī)模的變化和傳統(tǒng)開發(fā)方法論的演變,信息系統(tǒng)開發(fā)過程經(jīng)歷了“自底向上”和“自頂向下”兩種方式。

請圍繞“信息系統(tǒng)開發(fā)方法論”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與分析和開發(fā)的信息系統(tǒng)以及你所擔(dān)任的主要任務(wù)和開展的主要工作。

2.分別說明信息系統(tǒng)“自底向上”和“自頂向下”兩種系統(tǒng)分析設(shè)計方式。詳細(xì)闡述系統(tǒng)遵循“自底向上”方式和“自頂向下”方式設(shè)計開發(fā)的優(yōu)缺點。

3.詳細(xì)說明你所參與的信息系統(tǒng)是如何遵循“自底向上”、“自頂向下”或綜合“自底向上”和“自頂向下”兩種方式進(jìn)行的分析、設(shè)計和開發(fā)的。

正確答案:

您的答案:

本題解析:自頂向下的方法:

優(yōu)點:符合軟件開發(fā)和硬件設(shè)計人員的思路;易于定義層次關(guān)系,明確層次行為、結(jié)構(gòu)和語義。

缺點:依賴于某種系統(tǒng)級設(shè)計語言;設(shè)計復(fù)用效率較低,開發(fā)的產(chǎn)品只能定制于某一種應(yīng)用。

自底向上的方法:

優(yōu)點:易于遵循設(shè)計復(fù)用思路;能簡化設(shè)計流程,加快設(shè)計速度;擴(kuò)充對架構(gòu)探索能力。

缺點:系統(tǒng)的集成較為困難,通信接口綜合問題比較嚴(yán)重;依賴于底層環(huán)境的支持。

3.論需求分析方法及應(yīng)用

需求分析是提煉、分析和仔細(xì)審查已經(jīng)獲取到的需求的過程。需求分析的目的是確保所有的項目干系人(利益相關(guān)者)都理解需求的含義并找出其中的錯誤、遺漏或其他不足的地方。需求分析的關(guān)鍵在于對問題域的研究與理解。為了便于理解問題域,現(xiàn)代軟件工程所推薦的需求分析方法是對問題域進(jìn)行抽象,將其分解為若干個基本元素,然后對元素之間的關(guān)系進(jìn)行建模。常見的需求分析方法包括面向?qū)ο蟮姆治龇椒?、面向問題域的分析方法、結(jié)構(gòu)化分析方法等。而無論采用何種方法,需求分析的主要工作內(nèi)容都基本相同。

請圍繞“需求分析方法及應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.簡要敘述你參與管理和開發(fā)的軟件系統(tǒng)開發(fā)項目以及你在其中所承擔(dān)的主要工作。

2.概要論述需求分析工作過程所包含的主要工作內(nèi)容。

3.結(jié)合你具體參與管理和開發(fā)的實際項目,說明采用了何種需求分析方法,并舉例詳細(xì)描述具體的需求分析過程。

正確答案:

您的答案:

本題解析:本文的內(nèi)容組織過程中需要注意的,主要是需求分析涉及到的工作內(nèi)容。需求分析的工作通常包括以下七個方面:

(1)繪制系統(tǒng)上下文范圍關(guān)系圖:這種關(guān)系圖是用于定義系統(tǒng)與系統(tǒng)外部實體間的界限和接口的簡單模型,它可以為需求確定一個范圍。

(2)創(chuàng)建用戶界面原型:用戶界面對于一個系統(tǒng)來說是十分重要的,因此在需求分析階段通過快速開發(fā)工具開發(fā)一個拋棄式原型,或者通過PowerPoint、Flash等演示工具制作一個演示原型,甚至是用紙和筆畫出一些關(guān)鍵的界面接口示意圖,將幫助用戶更好地理解所要解決的問題,更好地理解系統(tǒng)。

(3)分析需求的可行性:對所有獲得的需求進(jìn)行成本、性能和技術(shù)實現(xiàn)方面的可行性研究,以及這些需求項是否與其他的需求項有沖突,是否有對外的依賴關(guān)系等。

(4)確定需求的優(yōu)先級:這是一項很重要的工作,迭代開發(fā)已經(jīng)成為了現(xiàn)代軟件工程方法的一個基礎(chǔ),而需求的優(yōu)先級是制訂迭代計劃的一個最重要的依據(jù)。對于需求優(yōu)先級的描述,可以采用滿意度和不滿意度指標(biāo)進(jìn)行說明。其中滿意度表示當(dāng)需求被實現(xiàn)時用戶的滿意程度,不滿意度表示當(dāng)需求未被實現(xiàn)時用戶的不滿意程度。

(5)為需求建立模型:也就是建立分析模型,這些模型的表現(xiàn)形式主要是圖表加上少量的文字描述,所謂“一圖抵千字”,圖形化地描述需求將使得其更加清晰、易懂。根據(jù)采用的分析方法不同,采用的圖也將不同。例如,OOA中的用例模型和領(lǐng)域模型,SA中的DFD和E-R圖等。需求分析模型主要描述系統(tǒng)的數(shù)據(jù)、功能、用戶界面和運(yùn)行的外部行為,它是系統(tǒng)的一種邏輯表示技術(shù),并不涉及軟件的具體實現(xiàn)細(xì)節(jié)。需求分析模型可以幫助系統(tǒng)分析師理解系統(tǒng),使需求分析任務(wù)更加容易實現(xiàn)。同時,它也是以后進(jìn)行軟件設(shè)計的基礎(chǔ),為軟件設(shè)計提供了系統(tǒng)的表示視圖。

(6)創(chuàng)建數(shù)據(jù)字典:數(shù)據(jù)字典是對系統(tǒng)用到的所有數(shù)據(jù)項和結(jié)構(gòu)進(jìn)行定義,以確保開發(fā)人員使用了統(tǒng)一的數(shù)據(jù)定義。

(7)使用QFD:這是在需求優(yōu)先級基礎(chǔ)上的一個升華,其原理與滿意度和不滿意度指標(biāo)十分接近,通過將產(chǎn)品特性、屬性與對用戶的重要性聯(lián)系起來。

4.論項目風(fēng)險管理及其應(yīng)用

項目風(fēng)險是一種不確定的事件或條件,一旦發(fā)生,會對項目目標(biāo)產(chǎn)生某種負(fù)面(或正面)的影響。項目風(fēng)險管理是項目管理人員通過風(fēng)險識別、風(fēng)險估計和評價,并以此為基礎(chǔ)合理地使用多種管理方法、技術(shù)和手段,對項目活動設(shè)計的風(fēng)險實施有效的控制,采取主動行動,創(chuàng)建條件,可靠地實現(xiàn)項目的總體目標(biāo)。

請圍繞“項目風(fēng)險管理及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.論述在信息系統(tǒng)項目中,風(fēng)險管理的基本過程。

3.針對你參與的實際項目中的風(fēng)險,闡述該項目的風(fēng)險管理過程,并具體說明其實施效果

正確答案:

您的答案:

本題解析:本題是一個項目管理方向的考題,要求考生對項目管理中的風(fēng)險管理過程以及方法工具有一定了解。文章第一部分是標(biāo)準(zhǔn)問題,進(jìn)行詳實的項目簡介即可。

文章第二部分要求寫風(fēng)險管理的基本過程,風(fēng)險管理包括以下管理過程:

(1)制訂風(fēng)險管理計劃:定義如何實施項目風(fēng)險管理活動。

(2)風(fēng)險識別:判斷哪些風(fēng)險會影響項目并記錄其特征。

(3)風(fēng)險定性分析:評估并綜合分析風(fēng)險的發(fā)生概率和影響,對風(fēng)險進(jìn)行優(yōu)先排序,從而為后續(xù)分析或行動提供基礎(chǔ)。

(4)風(fēng)險定量分析:就已識別風(fēng)險對項目整體目標(biāo)的影響進(jìn)行定量分析。

(5)編制風(fēng)險應(yīng)對計劃:針對項目目標(biāo),制定提高機(jī)會、降低威脅的方案和措施。

(6)風(fēng)險監(jiān)控:在整個項目中,實施風(fēng)險應(yīng)對計劃、跟蹤已識別風(fēng)險、監(jiān)測殘余風(fēng)險、識別新風(fēng)險和評估風(fēng)險過程有效性。

考生可選取部分過程進(jìn)行論述,在論述時,需要說明作者在這個階段所做的工作,一般要結(jié)合這個階段解決問題時的基本工具和方法進(jìn)行,常見工具方法包括:

制訂風(fēng)險管理計劃:規(guī)劃會議和分析。

風(fēng)險識別:文檔審查、信息收集技術(shù)(頭腦風(fēng)暴法、德爾菲技術(shù)、訪談、根本原因識別、SWOT分析)、核對表分析、假設(shè)分析、圖解技術(shù)。

風(fēng)險定性分析:風(fēng)險概率和影響評估、概率影響矩陣、風(fēng)險數(shù)據(jù)質(zhì)量評估、風(fēng)險分類、風(fēng)險緊迫性評估。

風(fēng)險定量分析:數(shù)據(jù)收集和表現(xiàn)技術(shù)、定量風(fēng)險分析和建模技術(shù)。

編制風(fēng)險應(yīng)對計劃:消極風(fēng)險或威脅的應(yīng)對策略、積極風(fēng)險或機(jī)會的應(yīng)對策略、應(yīng)急應(yīng)對策略。

風(fēng)險監(jiān)控:風(fēng)險再評估、風(fēng)險審計、偏差和趨勢分析、技術(shù)績效測量、儲備分析、狀態(tài)審查會。

5.論軟件需求驗證方法及其應(yīng)用

在軟件開發(fā)過程中,如果后期或在交付之后發(fā)現(xiàn)了需求問題,則修補(bǔ)需求錯誤需要投入大量的人力物力。因此,開展軟件需求驗證,對軟件需求規(guī)格說明書(SRS)的正確性和質(zhì)量進(jìn)行驗證,是需求分析的重要工作內(nèi)容。需求驗證也稱為需求確認(rèn),主要內(nèi)容包括:確定SRS正確地描述了預(yù)期的、滿足項目干系人需求的系統(tǒng)行為和特征;確定軟件需求是從用戶需求、業(yè)務(wù)規(guī)格和其他來源中正確推導(dǎo)而來的;確定需求的完整性、一致性和高質(zhì)量。需求驗證為后續(xù)的系統(tǒng)設(shè)計、實現(xiàn)和測試提供了足夠的基礎(chǔ)。

請圍繞“軟件需求驗證方法及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.簡要說明需求驗證的主要方法及實施過程。

3.結(jié)合你具體參與管理和開發(fā)的實際項目,闡述所選擇的驗證方法及其原因,說明具體實施過程,并詳細(xì)分析實施效果。

正確答案:

您的答案:

本題解析:1、用400-600字?jǐn)⑹鲎髡邊⑴c開發(fā)與管理的軟件項目,包括但不僅限于,項目時間,規(guī)模,周期,背景,系統(tǒng)的主要功能,所采用的相關(guān)技術(shù)等。

2、需求驗證方法主要包括:需求評審與需求測試。

需求評審:在軟件開發(fā)的每個階段結(jié)束前,都需要進(jìn)行技術(shù)評審。所謂技術(shù)評審,是指對工作產(chǎn)品進(jìn)行檢查以發(fā)現(xiàn)產(chǎn)品中所存在的問題,其中的工作產(chǎn)品也稱為工件,它不一定是最終的系統(tǒng),也可以是一個文檔、一個原型或一段代碼等。例如,需求評審就是需求開發(fā)階段結(jié)束前進(jìn)行的技術(shù)評審,此時的產(chǎn)品就是SRS。SRS的評審是一項精益求精的技術(shù),它可以發(fā)現(xiàn)那些二義性的或不確定性的需求,為項目干系人提供在需求問題上達(dá)成共識的方法。

需求測試:實際上,需求開發(fā)階段不可能有真正意義上的測試進(jìn)行,因為還沒有可執(zhí)行的系統(tǒng),需求測試僅僅是基于文本需求進(jìn)行“概念”上的測試。然而,以功能需求為基礎(chǔ)(SA方法)或者從用例派生出來(OO方法)的測試用例,可以使項目干系人更清楚地了解系統(tǒng)的行為。雖然沒有在系統(tǒng)上執(zhí)行測試用例,但是涉及測試用例的簡單動作可以解釋需求的許多問題。這種測試用例通常稱為概念測試用例,即不是真正執(zhí)行的測試用例,它們可以發(fā)現(xiàn)SRS中的錯誤、二義性和遺漏,還可以進(jìn)行模型分析,以及作為用戶驗收測試的基礎(chǔ)。在正式的系統(tǒng)測試中,還可以將它們細(xì)化成測試用例。

關(guān)于需求評審與需求測試的詳細(xì)資料請參看《系統(tǒng)分析師教程》11.7。

3、結(jié)合項目實踐說明需求驗證方法的應(yīng)用。

6.論模型驅(qū)動的軟件開發(fā)方法及其應(yīng)用

模型驅(qū)動架構(gòu)(MDA)是對象管理組織(OMG)提出的一種新的軟件開發(fā)方法,它強(qiáng)調(diào)由軟件系統(tǒng)的建模行為驅(qū)動整個系統(tǒng)的開發(fā)過程,來完成系統(tǒng)的需求分析、架構(gòu)設(shè)計、構(gòu)建、測試、部署和運(yùn)行維護(hù)等工作。與傳統(tǒng)的UML模型相比,MDA能夠創(chuàng)建出機(jī)器可讀和高度抽象的模型,這種模型通過轉(zhuǎn)換(Transformation)技術(shù)可自動轉(zhuǎn)換為代碼、測試腳本、數(shù)據(jù)庫定義以及各種平臺的部署描述。通過使用MDA技術(shù),可以有效解決傳統(tǒng)軟件開發(fā)過程中的生產(chǎn)效率問題、系統(tǒng)移植問題、互操作問題以及文檔和系統(tǒng)后期維護(hù)問題。

請圍繞“模型驅(qū)動的軟件開發(fā)方法及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與實施的模型驅(qū)動的軟件開發(fā)項目以及你所擔(dān)任的主要工作。

2.闡述模型驅(qū)動的軟件開發(fā)過程中的主要活動,并論述模型驅(qū)動的軟件開發(fā)過程與傳統(tǒng)的軟件開發(fā)過程的區(qū)別。

3.闡述在進(jìn)行模型驅(qū)動的軟件開發(fā)時遇到了哪些問題,如何解決。

正確答案:

您的答案:

本題解析:寫作要點:

一、論文中要具體介紹組織的業(yè)務(wù)背景、組織結(jié)構(gòu)、軟件系統(tǒng)的架構(gòu)、采用的技術(shù)等內(nèi)容和擔(dān)任的實際工作。

二、相關(guān)的內(nèi)容包括:

1.模型驅(qū)動的軟件開發(fā)過程中的主要活動包括:

(1)需求分析人員根據(jù)領(lǐng)域需求得到描述軟件系統(tǒng)外部特征的計算無關(guān)模型(CIM);

(2)在對CIM進(jìn)行分析的基礎(chǔ)上得到平臺無關(guān)模型(PIM),并根據(jù)業(yè)務(wù)邏輯進(jìn)一步精化PIM;

(3)進(jìn)行PIM到平臺特定模型(PSM)的模型轉(zhuǎn)換;

(4)將每個PSM轉(zhuǎn)換為實現(xiàn)特定模型(ISM),生成應(yīng)用程序代碼,并進(jìn)行測試。

2.與傳統(tǒng)的軟件開發(fā)過程相比,模型驅(qū)動的軟件開發(fā)方法有5個主要區(qū)別:

(1)自動實現(xiàn)模型變換。

傳統(tǒng)的開發(fā)過程中,模型到模型的變換,或模型到代碼的變換都是手工完成的;而模型驅(qū)動的開發(fā)過程中,模型變換都是由相關(guān)工具自動完成PIM到PSM、PSM到ISM都可以自動轉(zhuǎn)換實現(xiàn)。

(2)模型是開發(fā)產(chǎn)品,也是程序生成的基礎(chǔ)設(shè)施。

模型驅(qū)動的開發(fā)過程中,模型是軟件開發(fā)生命周期中的核心產(chǎn)品,通過一系列轉(zhuǎn)換最終可以自動生成執(zhí)行代碼,是產(chǎn)生執(zhí)行代碼的基礎(chǔ)設(shè)施。而在傳統(tǒng)開發(fā)過程中,模型只是分析人員、設(shè)計人員進(jìn)行分析與交流的文檔與圖標(biāo),不能生成可用的應(yīng)用程序代碼。

(3)模型變換過程與代碼生成過程同步,可維護(hù)強(qiáng)。

模型驅(qū)動開發(fā)過程中,執(zhí)行代碼是由模型通過轉(zhuǎn)換直接生成,保證了模型與代碼的同步。開發(fā)人員維護(hù)系統(tǒng)的重心不在是傳統(tǒng)開發(fā)方法中的程序代碼,而是與業(yè)務(wù)邏輯相關(guān)、與技術(shù)平臺無關(guān)的平臺無關(guān)模型PIM。

(4)業(yè)務(wù)邏輯模型與實現(xiàn)技術(shù)平臺分離。

需求分析階段生成的PIM模型與開發(fā)技術(shù)、開發(fā)平臺以及實現(xiàn)技術(shù)無關(guān),并且PIM模型可以根據(jù)不同的技術(shù)平臺,自動生成以模型為基礎(chǔ)的、適用于不同技術(shù)平臺的軟件系統(tǒng)。

(5)提高了開發(fā)效率與軟件質(zhì)量。

模型驅(qū)動開發(fā)的模型架構(gòu)代表了對系統(tǒng)不同層次的抽象,使得開發(fā)人員更加清晰地了解系統(tǒng)的整個架構(gòu),而不會被具體的實現(xiàn)技術(shù)所困擾。開發(fā)人員專注于根據(jù)系統(tǒng)業(yè)務(wù)邏輯構(gòu)建PIM,通過代碼生成技術(shù)自動生成實現(xiàn)代碼,減少了由于人為因素導(dǎo)致的系統(tǒng)實現(xiàn)錯誤。

三、在進(jìn)行模型驅(qū)動的軟件開發(fā)時可能存在的問題包括:如何對CIM和PIM進(jìn)行建模;如何進(jìn)行模型之間的轉(zhuǎn)換,特別是PIM到PSM的轉(zhuǎn)換;如何根據(jù)需求進(jìn)行實現(xiàn)平臺選擇;如何根據(jù)PSM生成ISM(代碼);如何進(jìn)行系統(tǒng)測試;等等。

7.論軟件需求管理及其應(yīng)用

軟件需求工程關(guān)注創(chuàng)建和維護(hù)軟件需求文檔需展開的一切活動。需求工程可分為需求開發(fā)和需求管理兩項工作,其中需求管理的目標(biāo)是為軟件需求建立一個基線,供軟件開發(fā)及其管理使用,確保軟件計劃、產(chǎn)品和活動與軟件需求的一致性。從軟件需求工程的角度來看,需求管理包括在軟件開發(fā)過程中維持需求一致性和精確性的所有活動。

請圍繞“軟件需求管理及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.詳細(xì)論述軟件需求管理的主要活動及其所包含的主要內(nèi)容。

3.結(jié)合你具體參與管理和開發(fā)的實際項目,說明是如何采用軟件需求管理方法進(jìn)行需求管理的,說明具體實施過程以及應(yīng)用效果。

正確答案:

您的答案:

本題解析:一、簡要敘述所參與管理和開發(fā)的軟件項目,并明確指出在其中承擔(dān)的主要任務(wù)和開展的主要工作。

二、需求管理的主要活動有變更控制、版本控制、需求跟蹤和需求狀態(tài)跟蹤。

1.需求變更管理過程包括:

(1)問題分析和變更描述。需要識別和分析需求問題,形成明確的變更協(xié)議,以檢查它的有效性,從而產(chǎn)生一個更明確的需求變更提議。

(2)變更分析和成本計算。使用可追溯性信息和系統(tǒng)需求的一般知識,對需求變更提議進(jìn)行影響分析和評估。變更成本計算應(yīng)該包括對需求文檔的修改、系統(tǒng)修改的設(shè)計和實現(xiàn)的成本。一旦分析完成并且被確認(rèn),應(yīng)該進(jìn)行是否執(zhí)行這一變更的決策。

(3)變更實現(xiàn)。這要求需求文檔和系統(tǒng)設(shè)計以及實現(xiàn)都要同時修改。

2.版本控制:主要包括確定需求文檔版本。

3.需求跟蹤:包括定義對其他需求的鏈接;定義對其他系統(tǒng)元素的鏈接;使用的工具即需求跟蹤矩陣。

4.需求狀態(tài)跟蹤:定義需求狀態(tài);跟蹤需求的每一個狀態(tài)。

三、考生需結(jié)合自身參與項目的實際狀況,指出其參與管理和開發(fā)的項目中所進(jìn)行的需求管理活動,說明該活動的具體實施過程、使用的方法和工具,并對實際應(yīng)用效果進(jìn)行分析。

8.論信息系統(tǒng)開發(fā)方法及應(yīng)用

信息系統(tǒng)是一個復(fù)雜的人機(jī)交互系統(tǒng),它不僅包含計算機(jī)技術(shù)、軟件技術(shù)、通信技術(shù)、網(wǎng)絡(luò)技術(shù)以及其他工程技術(shù),它還是一個復(fù)雜的管理系統(tǒng),需要管理理論和方法的支持。因此,與其他工程項目相比,信息系統(tǒng)工程項目的開發(fā)和管理顯得更加復(fù)雜,所面臨的風(fēng)險也更大。如何選擇一個合適的開發(fā)方法,以保證在多變的市場環(huán)境下,在既定的預(yù)算和時間要求范圍內(nèi),開發(fā)出讓用戶滿意的信息系統(tǒng),是信息系統(tǒng)建設(shè)時所必須考慮的首要問題。

請以“信息系統(tǒng)開發(fā)方法及其應(yīng)用”為題,分別從以下三個方面進(jìn)行論述。

1、概要敘述你參與管理和開發(fā)的信息系統(tǒng)以及你在其中所擔(dān)任的主要工作。

2、簡要說明目前比較主流的信息系統(tǒng)開發(fā)方法的內(nèi)涵及特點,并結(jié)合項目實際情況,闡述所選擇的開發(fā)方法及其原因。

3、結(jié)合你具體參與管理和開發(fā)的實際項目,舉例說明所選取的信息系統(tǒng)開發(fā)方法的具體實施過程,并詳細(xì)分析實施效果。

正確答案:

您的答案:

本題解析:一、論文中要說明所參與管理和開發(fā)的軟件項目,并明確指出在其中承擔(dān)的主要任務(wù)和開展的主要工作。

二、目前主流的信息系統(tǒng)開發(fā)方法包括:結(jié)構(gòu)化方法,面向?qū)ο蠓椒?、原型化方法和面向服?wù)的方法。

1、結(jié)構(gòu)化方法

結(jié)構(gòu)是指系統(tǒng)內(nèi)各個組成要素之間的相互聯(lián)系、相互作用的框架。結(jié)構(gòu)化方法也稱為生命周期法,是一種傳統(tǒng)的信息系統(tǒng)開發(fā)方法,由結(jié)構(gòu)化分析(StructuredAnalysis,SA)、結(jié)構(gòu)化設(shè)計(StructuredDesign,SD)和結(jié)構(gòu)化程序設(shè)計(StructuredProgramming,SP)三部分有機(jī)組合而成,其精髓是自頂向下、逐步求精和模塊化設(shè)計。

結(jié)構(gòu)化方法假定待開發(fā)的系統(tǒng)是一個結(jié)構(gòu)化的系統(tǒng),其基本思想是將系統(tǒng)的生命周期劃分為系統(tǒng)規(guī)劃、系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施、系統(tǒng)維護(hù)等階段。這種方法遵循系統(tǒng)工程原理,按照事先設(shè)計好的程序和步驟,使用一定的開發(fā)工具,完成規(guī)定的文檔,在結(jié)構(gòu)化和模塊化的基礎(chǔ)上進(jìn)行信息系統(tǒng)的開發(fā)工作。結(jié)構(gòu)化方法的開發(fā)過程一般是先把系統(tǒng)功能視為一個大的模塊,再根據(jù)系統(tǒng)分析與設(shè)計的要求對其進(jìn)行進(jìn)一步的模塊分解或組合。

2、面向?qū)ο蠓椒?/p>

面向?qū)ο螅∣bject-Oriented,OO)方法認(rèn)為,客觀世界是由各種“對象”組成的,任何事物都是對象,每一個對象都有自己的運(yùn)動規(guī)律和內(nèi)部狀態(tài),都屬于某個對象“類”,是該對象類的一個元素。復(fù)雜的對象可由相對簡單的各種對象以某種方式而構(gòu)成,不同對象的組合及相互作用就構(gòu)成了系統(tǒng)。

OO方法是當(dāng)前的主流開發(fā)方法,擁有很多不同的分支體系,主要包括OMT(ObjectModelTechnology,對象建模技術(shù))方法、Coad/Yourdon方法、OOSE(Object-OrientedSoftwareEngineering,面向?qū)ο蟮能浖こ蹋┓椒ê虰ooch方法等,而OMT、OOSE和Booch已經(jīng)統(tǒng)一成為UML(UnitedModelLanguage,統(tǒng)一建模語言)。

3、原型化方法

結(jié)構(gòu)化方法和面向?qū)ο蠓椒ㄓ幸粋€共同點,即在系統(tǒng)開發(fā)初期必須明確系統(tǒng)的功能要求,確定系統(tǒng)邊界。從工程學(xué)角度來看,這是十分自然的:解決問題之前必須明確要解決的問題是什么。然而,對于信息系統(tǒng)建設(shè)而言,明確問題本身不是一件輕松的事情。

原型化方法也稱為快速原型法,或者簡稱為原型法。它是一種根據(jù)用戶初步需求,利用系統(tǒng)開發(fā)工具,快速地建立一個系統(tǒng)模型展示給用戶,在此基礎(chǔ)上與用戶交流,最終實現(xiàn)用戶需求的信息系統(tǒng)快速開發(fā)的方法。

4、面向服務(wù)方法

OO的應(yīng)用構(gòu)建在類和對象之上,隨后發(fā)展起來的建模技術(shù)將相關(guān)對象按照業(yè)務(wù)功能進(jìn)行分組,就形成了構(gòu)件(Component)的概念。對于跨構(gòu)件的功能調(diào)用,則采用接口的形式暴露出來。進(jìn)一步將接口的定義與實現(xiàn)進(jìn)行解耦,則催生了服務(wù)和面向服務(wù)(Service-Oriented,SO)的開發(fā)方法。由此可見,面向?qū)ο蟆⒒跇?gòu)件、面向服務(wù)是三個遞進(jìn)的抽象層次。

從企業(yè)應(yīng)用的角度來看,企業(yè)內(nèi)部、企業(yè)與企業(yè)之間各種應(yīng)用系統(tǒng)的互相通信和互操作性直接影響著企業(yè)對信息的掌握程度和處理速度。如何使信息系統(tǒng)快速響應(yīng)需求與環(huán)境變化,提高系統(tǒng)可復(fù)用性、信息資源共享和系統(tǒng)之間的互操作性,成為影響企業(yè)信息化建設(shè)效率的關(guān)鍵問題,而SO的思維方式恰好滿足了這種需求。

關(guān)于這些方法的更詳細(xì)說明,請參看《系統(tǒng)分析師教程》第7章。

三、結(jié)合項目實際分析效果主要是和項目的背景相結(jié)合,說出所采用方法的優(yōu)勢,在表達(dá)優(yōu)勢的同時,也可體現(xiàn)出劣勢,最好能給出針對劣勢的一些解決方案。

9.論面向?qū)ο蠼7椒ǖ膽?yīng)用

隨著軟件技術(shù)的發(fā)展,面向?qū)ο蠓椒ㄈ找娉蔀樾畔⑾到y(tǒng)軟件開發(fā)的主流技術(shù),而面向?qū)ο蠼<夹g(shù)是其中的關(guān)鍵。模型是軟件開發(fā)的根本,大型、復(fù)雜的軟件系統(tǒng)的開發(fā)是一項工程,而建模是系統(tǒng)化認(rèn)識所開發(fā)軟件的一個初步途徑。

面向?qū)ο蠼<夹g(shù)流派眾多,包括OMT方法、OOSE方法、OOA/OOD方法等。統(tǒng)一建模語言的出現(xiàn)極大地促進(jìn)了面向?qū)ο蠼7椒ǖ钠占芭c應(yīng)用,已經(jīng)成為當(dāng)前面向?qū)ο蠼7椒ǖ臉?biāo)準(zhǔn)。

請圍繞“論面向?qū)ο蠼7椒ǖ膽?yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的信息系統(tǒng)項目以及你在其中所承擔(dān)的主要工作。

2.論述常見的面向?qū)ο蠼7椒ǖ闹饕獌?nèi)容,包括每種模型的核心思想。

3.具體闡述你參與管理和開發(fā)的項目中使用的是哪種面向?qū)ο蠼7椒ㄒ约斑x擇該方法的原因,給出具體的實施過程和實施效果。

正確答案:

您的答案:

本題解析:常見的面向?qū)ο蠼7椒ǖ幕厩闆r如下:

1、Coad/Yourdon方法

Coad/Yourdon方法特別強(qiáng)調(diào)OOA和OOD采用完全一致的概念和表示法,使分析和設(shè)計之間不需要表示法的轉(zhuǎn)換。該方法的特點是表示簡煉、易學(xué),對于對象、結(jié)構(gòu)、服務(wù)的認(rèn)定較系統(tǒng)、完整,可操作性強(qiáng)。

在Coad/Yourdon方法中,OOA的任務(wù)主要是建立問題域的分析模型。分析過程和構(gòu)造OOA概念模型的順序由五個層次組成,分別是類與對象層、屬性層、操作層、結(jié)構(gòu)層和主題層,它們分別表示分析的不同側(cè)面。OOA需要經(jīng)過五個步驟來完成整個分析工作,即標(biāo)識對象類、標(biāo)識結(jié)構(gòu)與關(guān)聯(lián)(包括繼承、聚合、組合、實例化等)、劃分主題、定義屬性和定義操作。

OOD中將繼續(xù)貫穿OOA中的五個層次和五個活動,它由四個部分組成,分別是人機(jī)交互組件、問題域組件、任務(wù)管理組件和數(shù)據(jù)管理組件,其主要的活動就是這四個組件的設(shè)計工作。

2、Booch方法

Booch最先描述了OO方法的基礎(chǔ)問題,指出OO方法是一種根本不同于傳統(tǒng)的功能分解的設(shè)計方法。OO的系統(tǒng)分解更接近人對客觀事務(wù)的理解,而功能分解只通過問題空間的轉(zhuǎn)換來獲得。

Booch認(rèn)為系統(tǒng)開發(fā)是一個螺旋上升的過程,每個周期包括四個步驟,分別是標(biāo)識類和對象、確定類和對象的含義、標(biāo)識關(guān)系、說明每個類的接口和實現(xiàn)。Booch方法的開發(fā)模型包括靜態(tài)模型和動態(tài)模型,靜態(tài)模型分為邏輯模型(類圖、對象圖)和物理模型(模塊圖、進(jìn)程圖),用來描述系統(tǒng)的構(gòu)成和結(jié)構(gòu)。動態(tài)模型包括狀態(tài)圖和順序圖,用來描述對象的狀態(tài)變化和交互過程。有關(guān)這些圖形的詳細(xì)知識,將在11.5.1節(jié)中介紹。

3、OMT方法

OMT方法使用了建模的思想,討論如何建立一個實際的應(yīng)用模型,包括對象模型、動態(tài)模型和功能模型。對象模型描述系統(tǒng)中對象的靜態(tài)結(jié)構(gòu)、對象之間的關(guān)系、屬性和操作,主要用對象圖來實現(xiàn);動態(tài)模型描述與時間和操作順序有關(guān)的系統(tǒng)特征,例如,激發(fā)事件、事件序列、確定事件先后關(guān)系的狀態(tài)等,主要用狀態(tài)圖來實現(xiàn)動態(tài)模型;功能模型描述一個計算如何從輸入值得到輸出值,它不考慮計算的次序,主要用DFD來實現(xiàn)功能模型。簡單地說,功能模型指出發(fā)生了什么,動態(tài)模型確定什么時候發(fā)生,而對象模型確定發(fā)生的客體。

OMT方法通常包括四個活動,分別是系統(tǒng)分析、系統(tǒng)設(shè)計、對象設(shè)計和實現(xiàn)。其中,分析就是實現(xiàn)OOA的任務(wù),系統(tǒng)設(shè)計確定整個系統(tǒng)的架構(gòu),對象設(shè)計建立基于分析模型的設(shè)計模型并考慮實現(xiàn)細(xì)節(jié),實現(xiàn)是將所設(shè)計的對象類及其關(guān)系轉(zhuǎn)換為程序設(shè)計語言、數(shù)據(jù)庫或硬件的實現(xiàn)。

4、OOSE

OOSE在OMT的基礎(chǔ)上,對功能模型進(jìn)行了補(bǔ)充,提出了用例(usecase)的概念,最終取代了DFD來進(jìn)行需求分析和建立功能模型。OOSE方法采用五類模型來建立目標(biāo)系統(tǒng),分別是需求模型、分析模型、設(shè)計模型、實現(xiàn)模型和測試模型。

OOSE的開發(fā)活動主要分為三類,分別是分析、構(gòu)造和測試。其中分析過程分為需求分析和健壯性分析兩個子過程,分析活動分別產(chǎn)生需求模型和分析模型;構(gòu)造活動包括設(shè)計和實現(xiàn)兩個子過程,分別產(chǎn)生設(shè)計模型和實現(xiàn)模型;測試過程包括單元測試、集成測試和系統(tǒng)測試三個過程,共同產(chǎn)生測試模型。

用例是OOSE中的重要概念,在開發(fā)各種模型時,它是貫穿OOSE活動的核心,描述了系統(tǒng)的需求及功能。用例實際上是描述系統(tǒng)參與者(既可以是用戶,也可以是與系統(tǒng)交互的其他系統(tǒng))對于系統(tǒng)的使用情況,是從參與者的角度來確定系統(tǒng)的功能。因此,首先必須分析、確定系統(tǒng)的參與者,然后進(jìn)一步考慮參與者的主要任務(wù)和使用方式,再識別出所使用的事件,即用例。

5、UML

UML是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的建模語言,它融入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù),它的作用域不限于支持OOA和OOD,還支持從需求分析開始的軟件開發(fā)的全過程。

從總體上來看,UML的結(jié)構(gòu)包括構(gòu)造塊、規(guī)則和公共機(jī)制三個部分。

(1)構(gòu)造塊。UML有三種基本的構(gòu)造塊,分別是事物(thing)、關(guān)系(relationship)和圖(diagram)。事物是UML的重要組成部分,關(guān)系把事物緊密聯(lián)系在一起,圖是多個相互關(guān)聯(lián)的事物的集合。

(2)公共機(jī)制。公共機(jī)制是指達(dá)到特定目標(biāo)的公共UML方法,主要包括規(guī)格說明(詳細(xì)說明)、修飾、公共分類(通用劃分)和擴(kuò)展機(jī)制四種。規(guī)格說明是事物語義的細(xì)節(jié)描述,它是模型真正的核心;UML為每個事物設(shè)置了一個簡單的記號,還可以通過修飾來表達(dá)更多的信息;UML包括兩組公共分類,分別是類與對象(類表示概念,而對象表示具體的實體)、接口與實現(xiàn)(接口用來定義契約,而實現(xiàn)就是具體的內(nèi)容);擴(kuò)展機(jī)制包括約束(擴(kuò)展了UML構(gòu)造塊的語義,允許增加新的規(guī)則或修改現(xiàn)有的規(guī)則)、構(gòu)造型(擴(kuò)展UML的詞匯,用于定義新的構(gòu)造塊)和標(biāo)記值(擴(kuò)展了UML構(gòu)造塊的特性,允許創(chuàng)建新的特殊信息來擴(kuò)展事物的規(guī)格說明)。

(3)規(guī)則。規(guī)則是構(gòu)造塊如何放在一起的規(guī)定,包括為構(gòu)造塊命名;給一個名字以特定含義的語境,即范圍;怎樣使用或看見名字,即可見性;事物如何正確、一致地相互聯(lián)系,即完整性;運(yùn)行或模擬動態(tài)模型的含義是什么,即執(zhí)行。

10.論軟件維護(hù)及軟件可維護(hù)性

軟件維護(hù)指軟件交付使用后,為了改正錯誤或滿是新的需要而修改軟件的過程。軟件維護(hù)活動花費了整個軟件生命期成本的50~90%,要降低維護(hù)成本,需要提高軟件的可維護(hù)性。軟件可維護(hù)性(SoftwareMaintainability)是指軟件能夠被理解、校正、增強(qiáng)功能及適應(yīng)變化的容易程度。提高軟件的可維護(hù)性是軟件開發(fā)階段的關(guān)鍵目標(biāo)之一。

請圍繞“軟件維護(hù)及軟件可維護(hù)性”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.請給出常見的三種軟件維護(hù)的類型并分別對其特點進(jìn)行論述。說明影響軟件可維護(hù)性的主要因素并詳細(xì)論述提高軟件可維護(hù)性的主要方法。

3.具體闡述你參與管理和開發(fā)的項目中所進(jìn)行的軟件維護(hù)活動和所采取的提高軟件可維護(hù)性的方法,說明具體實施的過程以及實際應(yīng)用的效果。

正確答案:

您的答案:

本題解析:一、簡要敘述所參與管理和開發(fā)的軟件項目,并明確指出在其中承擔(dān)的主要任務(wù)和開展的主要工作。

二、常見軟件維護(hù)類型及特點

1.軟件維護(hù)的類型

軟件維護(hù)分為正確性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù)等。

(1)正確性維護(hù)(改正性維護(hù)):在軟件投入運(yùn)行后,可能會暴露一部分在測試階段沒有發(fā)現(xiàn)的錯誤,為改正這些錯誤而對軟件進(jìn)行的修改就是正確性(改正性)維護(hù)。

(2)適應(yīng)性維護(hù):由于軟件運(yùn)行的外部環(huán)境(軟件,硬件)和數(shù)據(jù)環(huán)境等的變化而修改軟件使之適應(yīng)這些變化,就是適應(yīng)性維護(hù)。

(3)完善性維護(hù):用戶的需求是經(jīng)常變化的,在軟件使用過程中,用戶會對軟件提出新的功能和性能要求,為了滿足這些新的要求而對軟件進(jìn)行修改,使之功能和附能得到完善。

(4)預(yù)防性維護(hù):就是采用先進(jìn)的軟件工程方法對需要維護(hù)的軟件或某部分軟件重新進(jìn)行設(shè)計、編碼和測試,以提高軟件的可維護(hù)性和可靠性等,為以后進(jìn)一步改進(jìn)軟件打下基礎(chǔ)。

2.影響軟件可維護(hù)性的因素及提高軟件可維護(hù)性的主要方法

軟件的可維護(hù)性是軟件開發(fā)階段的關(guān)鍵目標(biāo)。影響軟件可維護(hù)性的因素較多,設(shè)計、編碼及測試中的疏忽和低劣的軟件配置,缺少文檔等都將對軟件的可維護(hù)性產(chǎn)生不良影響。軟件可維護(hù)性可用下面七個質(zhì)量特性來衡量,即可理解性、可測試性、可修改性、可靠性、可移植性、可使用性和效率。對于不同類型的維護(hù),這七種特性的側(cè)重點也不相同。

可從下面幾個方面來闡述如何提高軟件的可維護(hù)性。

(1)建立明確的軟件質(zhì)量目標(biāo)。

(2)使用先進(jìn)的軟件開發(fā)技術(shù)和工具。利用先進(jìn)的軟件開發(fā)技術(shù)能大大提高軟件質(zhì)量和減少軟件費用。

(3)建立明確的質(zhì)量保證。質(zhì)量保證是指為提高軟件質(zhì)量所做的各種檢查工作。質(zhì)量保證檢查是非常有效的方法,不僅在軟件開發(fā)的各階段中得到了廣泛應(yīng)用,而且在軟件維護(hù)中也是一個非常主要的工具。為了保證可維護(hù)性,以下四類檢查是非常有用的:在檢查點進(jìn)行檢查、驗收檢查、周期性的維護(hù)檢查和對軟件包的檢查。

(4)選擇可維護(hù)的語言。程序設(shè)計語言的選擇對維護(hù)影響很大。低級語言很難掌握,很難理解,因而很難維護(hù)。一般來說,高級語言比低級語言更容易理解,第四代語言更容易理解,容易編程,程序容易修改,改進(jìn)了可維護(hù)性。

(5)改進(jìn)軟件的文檔。軟件文檔是對軟件功能、軟件各組成部分之間的關(guān)系、程序設(shè)計策略、程序?qū)崿F(xiàn)過程的歷史數(shù)據(jù)等的說明和補(bǔ)充。軟件文檔對提高程序的可閱讀性有重要作用,從而會提高軟件的可維護(hù)性。

三、需結(jié)合自身參與項目的實際狀況,指出其參與管理和開發(fā)的項目中所進(jìn)行的軟件維護(hù)活動和所采取的提高軟件可維護(hù)性的方法。要給出實施軟件維護(hù)活動和提高軟件可維護(hù)性的具體過程、方法以及對實際應(yīng)用效果的分析。

11.論軟件項目質(zhì)量管理及其應(yīng)用

軟件工程的目標(biāo)是生產(chǎn)出高質(zhì)量的軟件。ANSI/IEEEStd729-1983對軟件質(zhì)量的定義是“與軟件產(chǎn)品滿足規(guī)定的和隱含的需求能力有關(guān)的特征或特性的全體”,實際上反映了三方面的問題:

(1)軟件需求是度量軟件質(zhì)量的基礎(chǔ)。

(2)只滿足明確定義的需求,而沒有滿足應(yīng)有的隱含需求,軟件質(zhì)量也無法保證。

(3)不遵循各種標(biāo)準(zhǔn)定義的開發(fā)規(guī)則,軟件質(zhì)量就得不到保證。

軟件質(zhì)量管理貫穿于軟件生命周期,極為重要。軟件質(zhì)量管理過程包括軟件項目質(zhì)量計劃、軟件質(zhì)量保證和軟件質(zhì)量控制。質(zhì)量管理的關(guān)鍵是預(yù)防重于檢查,應(yīng)事前計劃好質(zhì)量,而不只是事后檢查,這有助于降低軟件質(zhì)量管理成本。

請圍繞“軟件項目質(zhì)量管理及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中擔(dān)任的主要工作。

2.詳細(xì)論述在該項目中進(jìn)行質(zhì)量保證和質(zhì)量控制時所實施的活動,并論述二者之間的關(guān)系。

3.分析并討論你所參與的項目中的質(zhì)量管理成本,并給出評價。

正確答案:

您的答案:

本題解析:暫無解析

12.系統(tǒng)需求分析是開發(fā)人員經(jīng)過調(diào)研和分析,準(zhǔn)確理解用戶和項目的功能、性能、可靠性等要求,將用戶非形式的訴求表述轉(zhuǎn)化為完整的需求定義,從而確定系統(tǒng)必須做什么的過程。系統(tǒng)需求分析具體可分為功能性需求、非功能性需求與設(shè)計約束等三個方面。

請圍繞“系統(tǒng)需求分析方法”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.詳細(xì)論述系統(tǒng)需求分析的主要方法。

3.結(jié)合你具體參與管理和開發(fā)的實際軟件項目,說明是如何使用系統(tǒng)需求分析方法進(jìn)行系統(tǒng)需求分析的,說明具體實施過程以及應(yīng)用效果。

正確答案:

您的答案:

本題解析:論系統(tǒng)需求分析方法

本題要求論述系統(tǒng)需求分析方法。

首先值得注意的一點是:需求分析方法有廣義與狹義之分。廣義的需求分析包括了:獲取、分析、定義驗證的全過程。而狹義的需求分析僅特指結(jié)構(gòu)化需求分析(SA)方法、面向?qū)ο蠓治觯∣OA)方法和面向問題域的分析(ProblemDomainOrientedAnalysis,PDOA)方法。

本題題干提到“系統(tǒng)需求分析是開發(fā)人員經(jīng)過調(diào)研和分析,準(zhǔn)確理解用戶和項目的功能、性能、可靠性等要求,將用戶非形式的訴求表述轉(zhuǎn)化為完整的需求定義……”。這充分說明,本題的需求分析是廣義的。所以部分學(xué)員所擔(dān)心的,文章中出現(xiàn)需求獲取的論點是否會被判偏題的問題,答案是明確的,這種情況不會判偏題。但全篇文章都不涉及到結(jié)構(gòu)化需求分析與面向?qū)ο笮枨蠓治?,則文章的論點選擇存在重大失誤,有不合格的風(fēng)險。因為廣義的需求分析中:SA與OOA依然是整個工作的重心。

關(guān)于SA與OOA的詳細(xì)描述,請參看《系統(tǒng)分析師教程》清華版。

13.論企業(yè)應(yīng)用集成

在企業(yè)信息化建設(shè)過程中,由于缺乏統(tǒng)一規(guī)劃和總體布局,使企業(yè)信息系統(tǒng)形成多個信息孤島,信息數(shù)據(jù)難以共享。企業(yè)應(yīng)用集成(EnterpriseApplicationIntegration,EAI)可在表示集成、數(shù)據(jù)集成、控制集成和業(yè)務(wù)流程集成等多個層次上,將不同企業(yè)信息系統(tǒng)連接起來,消除信息孤島,實現(xiàn)系統(tǒng)無縫集成。

請圍繞“企業(yè)應(yīng)用集成”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的企業(yè)應(yīng)用集成項目及你在其中所承擔(dān)的主要工作。

2.詳細(xì)論述實現(xiàn)各層次的企業(yè)應(yīng)用集成所使用的主要技術(shù)。

3.結(jié)合你具體參與管理和開發(fā)的實際項目,舉例說明所采用的企業(yè)集成技術(shù)的具體實現(xiàn)方式及過程,并詳細(xì)分析其實現(xiàn)效果。

正確答案:

您的答案:

本題解析:在組織本文內(nèi)容時需要注意各種集成所代表的含義,然后選擇一種集成(或多種)表明其在系統(tǒng)中如何應(yīng)用的。

1.表示集成

表示集成也稱為界面集成,這是比較原始和最淺層次的集成,但又是常用的集成。這種方法把用戶界面作為公共的集成點,把原有零散的系統(tǒng)界面集中在一個新的界面中。

表示集成是黑盒集成,無需了解程序與數(shù)據(jù)庫的內(nèi)部構(gòu)造。常用的集成技術(shù)主要有屏幕截取和輸入模擬技術(shù)。表示集成通常應(yīng)用于以下幾種情況:

(1)在現(xiàn)有的基于終端的應(yīng)用系統(tǒng)上配置基于PC的用戶界面。

(2)為用戶提供一個看上去統(tǒng)一,但是由多個系統(tǒng)組成的應(yīng)用系統(tǒng)。

(3)當(dāng)只有可能在顯示界面上實現(xiàn)集成時。

表示集成的實現(xiàn)是很簡單的,也是很不徹底的,只是做了一層“外裝修”,而額外多出來的集成界面也將可能成為系統(tǒng)的性能瓶頸。

2.數(shù)據(jù)集成

為了完成控制集成和業(yè)務(wù)流程集成,必須首先解決數(shù)據(jù)和數(shù)據(jù)庫的集成問題。在集成之前,必須首先對數(shù)據(jù)進(jìn)行標(biāo)識并編成目錄,另外還要確定元數(shù)據(jù)模型,保證數(shù)據(jù)在數(shù)據(jù)庫系統(tǒng)中分布和共享。因此,數(shù)據(jù)集成是白盒集成。

有很多不同的中間件工具可以用于數(shù)據(jù)集成。例如,批量文件傳輸,即以特定的或是預(yù)定的方式在原有系統(tǒng)和新開發(fā)的應(yīng)用系統(tǒng)之間進(jìn)行文件傳輸;用于訪問不同類型數(shù)據(jù)庫系統(tǒng)的ODBC標(biāo)準(zhǔn)接口;向分布式數(shù)據(jù)庫提供連接的數(shù)據(jù)庫訪問中間件技術(shù)等。

通常在以下情況下,將會使用數(shù)據(jù)集成:

(1)需要對多種信息源產(chǎn)生的數(shù)據(jù)進(jìn)行綜合分析和決策。

(2)要處理一些多個應(yīng)用程序需要訪問的公用信息庫。

(3)當(dāng)需要從某數(shù)據(jù)源獲得數(shù)據(jù)來更新另一個數(shù)據(jù)源時,特別是它們之間的數(shù)據(jù)格式不相同時。

相對而言,數(shù)據(jù)集成比表示集成要更加靈活。但是,當(dāng)業(yè)務(wù)邏輯經(jīng)常發(fā)生變化時,數(shù)據(jù)集成就會面臨困難。

3.控制集成

控制集成也稱為功能集成或應(yīng)用集成,是在業(yè)務(wù)邏輯層上對應(yīng)用系統(tǒng)進(jìn)行集成的??刂萍傻募牲c存于程序代碼中,集成處可能只需簡單使用公開的API就可以訪問,當(dāng)然也可能需要添加附加的代碼來實現(xiàn)。控制集成是黑盒集成。

實現(xiàn)控制集成時,可以借助于遠(yuǎn)程過程調(diào)用或遠(yuǎn)程方法調(diào)用、面向消息的中間件、分布式對象技術(shù)和事務(wù)處理監(jiān)控器來實現(xiàn)。控制集成與表示集成、數(shù)據(jù)集成相比,靈活性更高。表示集成和數(shù)據(jù)集成適用的環(huán)境下,都適用于控制集成。但是,由于控制集成是在業(yè)務(wù)邏輯層進(jìn)行的,其復(fù)雜度更高一些。而且,很多系統(tǒng)的業(yè)務(wù)邏輯部分并沒有提供API,這樣,集成難度就會更大。

4.業(yè)務(wù)流程集成

業(yè)務(wù)流程集成也稱為過程集成,這種集成超越了數(shù)據(jù)和系統(tǒng),它由一系列基于標(biāo)準(zhǔn)的、統(tǒng)一數(shù)據(jù)格式的工作流組成。當(dāng)進(jìn)行業(yè)務(wù)流程集成時,企業(yè)必須對各種業(yè)務(wù)信息的交換進(jìn)行定義、授權(quán)和管理,以便改進(jìn)操作、減少成本、提高響應(yīng)速度。

業(yè)務(wù)流程集成不僅要提供底層應(yīng)用支撐系統(tǒng)之間的互連,同時要實現(xiàn)存在于企業(yè)內(nèi)部的應(yīng)用之間,本企業(yè)和其他合作伙伴之間的端到端的業(yè)務(wù)流程的管理,它包括應(yīng)用集成、B2B集成、自動化業(yè)務(wù)流程管理、人工流程管理、企業(yè)門戶,以及對所有應(yīng)用系統(tǒng)和流程的管理和監(jiān)控等。

14.論軟件構(gòu)件管理及其應(yīng)用

軟件構(gòu)件是軟件復(fù)用的重要組成部分,為了達(dá)到軟件復(fù)用的目的,構(gòu)件應(yīng)當(dāng)是高內(nèi)聚的,并具有穩(wěn)定的對外接口。同時為了使構(gòu)件更切合實際、更有效地被復(fù)用,構(gòu)件應(yīng)當(dāng)具備較強(qiáng)的適應(yīng)能力,以提高其通用性。而存在大量的、可復(fù)用的構(gòu)件是有效使用復(fù)用技術(shù)的前提。對大量構(gòu)件進(jìn)行有效管理,以方便構(gòu)件的存儲、檢索和提取,是成功復(fù)用構(gòu)件的必要保證。

請圍繞“軟件構(gòu)件管理及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

請圍繞“軟件構(gòu)件管理及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.簡要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.詳細(xì)說明構(gòu)件管理中常見的構(gòu)件獲取方法,以及構(gòu)件組織分類的常見方法。

3.結(jié)合你具體參與管理和開發(fā)的實際項目,說明在項目中如何獲取和組織構(gòu)件,以及如何進(jìn)行構(gòu)件組裝。

正確答案:

您的答案:

本題解析:存在大量的、可復(fù)用的構(gòu)件是有效地使用復(fù)用技術(shù)的前提。對大量的構(gòu)件進(jìn)行有效的管理,以方便構(gòu)件的存儲、檢索和提取,是成功復(fù)用構(gòu)件的必要保證。

1.構(gòu)件的獲取

在基于構(gòu)件的軟件開發(fā)中,可以通過多種不同的途徑來獲取構(gòu)件:

(1)從現(xiàn)有構(gòu)件中獲得符合要求的構(gòu)件,直接使用或作適應(yīng)性修改,得到可復(fù)用的構(gòu)件。

(2)通過遺留工程(legacyengineering),將具有潛在復(fù)用價值的構(gòu)件提取出來,得到可復(fù)用的構(gòu)件。

(3)從市場上購買現(xiàn)成的商業(yè)構(gòu)件,即COTS(CommercialOff-The-Shell)構(gòu)件。

(4)開發(fā)新的符合要求的構(gòu)件。

企業(yè)或項目組在進(jìn)行以上決策時,必須考慮到不同方式獲取構(gòu)件的一次性成本和以后的維護(hù)成本(直接成本和間接成本),然后做出最優(yōu)的選擇。在項目實踐中,可以使用決策樹來幫助選擇,有關(guān)這方面的知識,請閱讀2.11.3節(jié)。

2.構(gòu)件的組織

當(dāng)企業(yè)獲取了數(shù)量眾多的構(gòu)件之后,就需要建立構(gòu)件庫。為了給復(fù)用者在查詢構(gòu)件時提供方便,同時也為了更好地復(fù)用構(gòu)件,必須對獲取的構(gòu)件進(jìn)行分類,并置于構(gòu)件庫的適當(dāng)位置。構(gòu)件的分類方法及相應(yīng)的結(jié)構(gòu)對構(gòu)件的檢索和理解有極為深刻的影響??蓮?fù)用技術(shù)對構(gòu)件庫組織方法的要求是:

(1)支持構(gòu)件庫的各種維護(hù)動作,例如,增加、刪除或修改構(gòu)件,盡量不要影響構(gòu)件庫的結(jié)構(gòu)。

(2)不僅要支持精確匹配,還要支持相似構(gòu)件的查找。

(3)不僅能進(jìn)行簡單的語法匹配,而且能夠查找在功能或行為方面等價或相似的構(gòu)件。

(4)對應(yīng)用領(lǐng)域具有較強(qiáng)的描述能力和較好的描述精度。

(5)庫管理員和用戶容易使用。

目前,已有的構(gòu)件分類方法大致可以歸納為三大類,分別是關(guān)鍵字分類法、刻面(facet)分類法和超文本組織方法。

(1)關(guān)鍵字分類法。關(guān)鍵字分類法將應(yīng)用領(lǐng)域的概念按照從抽象到具體的順序逐次分解為樹形或有向無回路圖結(jié)構(gòu),每個概念用一個描述性的關(guān)鍵字表示。當(dāng)在構(gòu)件庫中加入新的構(gòu)件時,庫管理員必須對構(gòu)件的功能或行為進(jìn)行分析,在瀏覽已有關(guān)鍵字分類結(jié)構(gòu)的同時,將新構(gòu)件置于最合適的原子級關(guān)鍵字之下。如果無法找到構(gòu)件的屬主關(guān)鍵字,則可以擴(kuò)充現(xiàn)有的關(guān)鍵字分類結(jié)構(gòu),引進(jìn)新的關(guān)鍵字。

(2)刻面分類法??堂娣诸惙ǘx若干用于刻畫構(gòu)件特征的“刻面”,每個面包含若干概念,這些概念描述構(gòu)件在刻面上的特征??堂婵梢悦枋鰳?gòu)件執(zhí)行的功能、被操作的數(shù)據(jù)、構(gòu)件應(yīng)用的語境或其他特征。描述構(gòu)件的刻面集合稱為刻面描述符,一般而言,刻面描述符不超過7個刻面。關(guān)鍵字分類法和刻面分類法都是以數(shù)據(jù)庫系統(tǒng)作為實現(xiàn)背景的,雖然可以選用關(guān)系型數(shù)據(jù)庫,但面向?qū)ο髷?shù)據(jù)庫更適合于實現(xiàn)構(gòu)件庫,因為其中的復(fù)合對象和多重繼承等機(jī)制與表格相比,更適合描述構(gòu)件及其相互關(guān)系。

(3)超文本方法。與基于數(shù)據(jù)庫系統(tǒng)的構(gòu)件庫組織方法不同,超文本方法基于全文檢索技術(shù),其主要思想是:所有構(gòu)件必須輔以詳盡的功能或行為說明文檔;說明中出現(xiàn)的重要概念或構(gòu)件以網(wǎng)狀鏈接方式相互連接;檢索者在閱讀文檔的過程中可按照人類的聯(lián)想思維方式任意跳轉(zhuǎn)到包含相關(guān)概念或構(gòu)件的文檔;全文檢索系統(tǒng)將用戶給出的關(guān)鍵字與說明文檔中的文字進(jìn)行匹配,實現(xiàn)構(gòu)件的瀏覽式檢索。超文本組織方法為開發(fā)和復(fù)用構(gòu)件提供了直觀的多媒體方式。由于網(wǎng)狀結(jié)構(gòu)比較自由、松散,因此,超文本方法比前兩種方法更易于修改構(gòu)件庫的結(jié)構(gòu)。

15.論軟件的系統(tǒng)測試及其應(yīng)用

軟件測試是軟件交付客戶前必須要完成的重要步驟之一,目前仍是發(fā)現(xiàn)軟件錯誤(缺陷)的主要手段。系統(tǒng)測試是將已經(jīng)確認(rèn)的軟件、計算機(jī)硬件、外設(shè)、網(wǎng)絡(luò)等其他元素結(jié)合在一起,針對整個系統(tǒng)進(jìn)行的測試,目的是驗證系統(tǒng)是否滿足了需求規(guī)格的定義,找出與需求規(guī)格不符或與之矛盾的地方,從而提出更加完善的方案。系統(tǒng)測試的主要內(nèi)容包括功能性測試、健壯性測試、性能測試、用戶界面測試、安全性測試、安裝與反安裝測試等。

請圍繞“軟件的系統(tǒng)測試及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.詳細(xì)論述軟件的系統(tǒng)測試的主要活動及其所包含的主要內(nèi)容,并說明功能性測試和性能測試的主要的目的。

3.結(jié)合你具體參與管理和開發(fā)的實際項目,概要敘述如何采用軟件的系統(tǒng)測試方法進(jìn)行系統(tǒng)測試,說明具體實施過程以及應(yīng)用效果。

正確答案:

您的答案:

本題解析:寫作要點:

1、用400-600字?jǐn)⑹鲎髡邊⑴c開發(fā)與管理的軟件項目,包括但不僅限于,項目時間,規(guī)模,周期,背景,系統(tǒng)的主要功能,所采用的相關(guān)技術(shù)等。

2、系統(tǒng)測試的對象是完整的、集成的計算機(jī)系統(tǒng),系統(tǒng)測試的目的是在真實系統(tǒng)工作環(huán)境下,驗證完整的軟件配置項能否和系統(tǒng)正確連接,并滿足系統(tǒng)/子系統(tǒng)設(shè)計文檔和軟件開發(fā)合同規(guī)定的要求。系統(tǒng)測試的技術(shù)依據(jù)是用戶需求或開發(fā)合同,除應(yīng)滿足一般測試的準(zhǔn)入條件外,在進(jìn)行系統(tǒng)測試前,還應(yīng)確認(rèn)被測系統(tǒng)的所有配置項已通過測試,對需要固化運(yùn)行的軟件還應(yīng)提供固件。

一般來說,系統(tǒng)測試的主要內(nèi)容包括功能測試、健壯性測試、性能測試、用戶界面測試、安全性測試、安裝與反安裝測試等,其中,最重要的工作是進(jìn)行功能測試與性能測試。功能測試主要采用黑盒測試方法;性能測試主要驗證軟件系統(tǒng)在承擔(dān)一定負(fù)載的情況下所表現(xiàn)出來的特性是否符合客戶的需要,主要指標(biāo)有響應(yīng)時間、吞吐量、并發(fā)用戶數(shù)和資源利用率等。

功能測試的目的很簡單,測試系統(tǒng)是否達(dá)到了用戶明確提出的需求及隱含需求。

性能測試的目的是驗證軟件系統(tǒng)是否能夠達(dá)到用戶提出的性能指標(biāo),同時發(fā)現(xiàn)軟件系統(tǒng)中存在的性能瓶頸,并優(yōu)化軟件,最后起到優(yōu)化系統(tǒng)的目的。具體來說,包括以下四個方面:

(1)發(fā)現(xiàn)缺陷。軟件的某些缺陷與軟件性能密切相關(guān),針對這些缺陷的測試一般需要伴隨著性能測試進(jìn)行。

(2)性能調(diào)優(yōu)。與調(diào)試不同,性能調(diào)優(yōu)并不一定針對發(fā)現(xiàn)的性能缺陷,也可能是為了更好地發(fā)揮系統(tǒng)的潛能。

(3)評估系統(tǒng)的能力。軟件性能測試不僅需要測試軟件在規(guī)定條件下是否滿足性能需求,往往還需要測試能夠滿足性能需求的條件極限。

(4)驗證穩(wěn)定性和可靠性:在一定負(fù)載下測試一定的時間,是評估系統(tǒng)穩(wěn)定性和可靠性是否滿足要求的唯一方法。

3、結(jié)合項目實踐說明作者如何進(jìn)行系統(tǒng)測試的,并論述效果。在論述效果時,注意不要只報喜不報憂,指出做得不足的地方,并給出以后的改進(jìn)方案,往往能讓文章更具真實感。

16.論軟件系統(tǒng)測試及其應(yīng)用

軟件系統(tǒng)測試是將已經(jīng)確認(rèn)的軟件與計算機(jī)硬件、外設(shè)、網(wǎng)絡(luò)等其他設(shè)施結(jié)合在一起,進(jìn)行信息系統(tǒng)的各種組裝測試和確認(rèn)測試,系統(tǒng)測試是針對整個產(chǎn)品系統(tǒng)進(jìn)行的測試,目的是驗證系統(tǒng)是否滿足了需求規(guī)格的定義,找出與需求規(guī)格不符或與之矛盾的地方,進(jìn)而完善軟件。系統(tǒng)測試的主要內(nèi)容包括功能測試、健壯性測試、性能測試、用戶界面測試、安全性測試、安裝與反安裝測試等,其中,最重要的是功能測試和性能測試。功能測試主要采用黑盒測試方法。

請圍繞“軟件系統(tǒng)測試及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔(dān)任的主要工作。

2.詳細(xì)論述軟件系統(tǒng)測試中功能測試的主要方法,自動化測試的主要內(nèi)容和如何選擇適合的自動化測試工具。

3.結(jié)合你具體參與管理和開發(fā)的實際項目,說明你是如何采用軟件系統(tǒng)測試方法進(jìn)行系統(tǒng)測試的,說明具體實施過程以及應(yīng)用效果。

正確答案:

您的答案:

本題解析:本題屬于軟件工程方向的考題。文章第一部分是標(biāo)準(zhǔn)問題,進(jìn)行詳實的項目簡介即可。

文章第二部分與第三部分內(nèi)容可以結(jié)合起來論述,需要理論結(jié)合實踐。在此主要說明需要用到的理論知識。其實題目中所說的“軟件系統(tǒng)測試中功能測試”就是平時所說的黑盒測試與白盒測試。

白盒測試的方法包括一系列的邏輯覆蓋,主要的覆蓋標(biāo)準(zhǔn)有語句覆蓋、判定覆蓋、條件覆蓋、條件/判定覆蓋、條件組合覆蓋、修正的條件/判定覆蓋和路徑覆蓋等。

(1)語句覆蓋。語句覆蓋是指選擇足夠多的測試用例,使得運(yùn)行這些測試用例時,被測程序的每個語句至少執(zhí)行一次。很顯然,語句覆蓋是一種很弱的覆蓋標(biāo)準(zhǔn)。

(2)判定覆蓋。判定覆蓋也稱為分支覆蓋,它是指不僅每個語句至少執(zhí)行一次,而且每個判定的每種可能的結(jié)果(分支)都至少執(zhí)行一次。判定覆蓋比語句覆蓋強(qiáng),但對程序邏輯的覆蓋程度仍然不高。

(3)條件覆蓋。條件覆蓋是指不僅每個語句至少執(zhí)行一次,而且使判定表達(dá)式中的每個條件都取得各種可能的結(jié)果。條件覆蓋不一定包含判定覆蓋,判定覆蓋也不一定包含條件覆蓋。

(4)條件/判定覆蓋。同時滿足判定覆蓋和條件覆蓋的邏輯覆蓋稱為判定/條件覆蓋。它的含義是,選取足夠的測試用例,使得判定表達(dá)式中每個條件的所有可能結(jié)果至少出現(xiàn)一次,而且每個判定本身的所有可能結(jié)果也至少出現(xiàn)一次。

(5)條件組合覆蓋。條件組合覆蓋是指選取足夠的測試用例,使得每個判定表達(dá)式中條件結(jié)果的所有可能組合至少出現(xiàn)一次。顯然,滿足條件組合覆蓋的測試用例,也一定滿足判定/條件覆蓋。因此,條件組合覆蓋是上述5種覆蓋標(biāo)準(zhǔn)中最強(qiáng)的一種。然而,條件組合覆蓋還不能保證程序中所有可能的路徑都至少遍歷一次。

(6)修正的條件/判定覆蓋。修正的條件/判定覆蓋需要足夠的測試用例來確定各個條件能夠影響到包含的判定結(jié)果。首先,每個程序模塊的入口和出口點都要考慮至少要被調(diào)用一次,每個程序的判定到所有可能的結(jié)果值要至少轉(zhuǎn)換一次;其次,程序的判定被分解為通過邏輯操作符(and和or)連接的布爾條件,每個條件對于判定的結(jié)果值是獨立的。

(7)路徑覆蓋。路徑覆蓋是指選取足夠的測試用例,使得程序的每條可能執(zhí)行到的路徑都至少經(jīng)過一次(如果程序中有環(huán)路,則要求每條環(huán)路路徑至少經(jīng)過一次)。路徑覆蓋實際上考慮了程序中各種判定結(jié)果的所有可能組合,因此是一種較強(qiáng)的覆蓋標(biāo)準(zhǔn)。但路徑覆蓋并未考慮判定中的條件結(jié)果的組合,并不能代替條件覆蓋和條件組合覆蓋。

常見的黑盒測試包括:

(1)等價類劃分。在設(shè)計測試用例時,等價類劃分是用得最多的一種黑盒測試方法。所謂等價類就是某個輸入域的集合,對于一個等價類中的輸入值來說,它們揭示程序錯誤的作用是等效的。也就是說,如果等價類中的一個輸入數(shù)據(jù)能檢測出一個錯誤,那么等價類中的其他輸入數(shù)據(jù)也能檢測出同一個錯誤;反之,如果等價類中的一個輸入數(shù)據(jù)不能檢測出某個錯誤,那么等價類中的其他輸入數(shù)據(jù)也不能檢測出這一錯誤(除非這個等價類的某個子集還屬于另一個等價類)。

(2)邊界值分析。經(jīng)驗表明,軟件在處理邊界情況時最容易出錯。設(shè)計一些測試用例,使軟件恰好運(yùn)行在邊界附近,暴露出軟件錯誤的可能性會更大一些。通常,每一個等價類的邊界,都應(yīng)該著重測試,選取的測試數(shù)據(jù)應(yīng)該恰好等于、稍小于或稍大于邊界值。例如,對于條件“10<x<30”的測試,可以選取x的值為9、10、30和31作為測試數(shù)據(jù)。

在實際測試工作中,將等價類劃分法和邊界值分析法結(jié)合使用,能更有效地發(fā)現(xiàn)軟件中的錯誤。

(3)錯誤推測。使用等價類劃分和邊界值分析技術(shù),有助于設(shè)計出具有代表性的、容易暴露軟件錯誤的測試方案。但是,不同類型的軟件通常有一些特殊的容易出錯的地方。錯誤推測法主要依靠測試人員的經(jīng)驗和直覺,從各種可能的測試用例中選出一些最可能引起程序出錯的用例。

雖然手工測試可以找到軟件的很多缺陷,但這是一個艱苦和耗時的過程,而且可能無法有效地發(fā)現(xiàn)某些類型的缺陷。測試自動化是一個通過編程完成測試的過程,一旦測試實現(xiàn)了自動化,大量的測試用例就可以迅速得到執(zhí)行。

自動化測試通常需要構(gòu)建存放程序軟件包和測試軟件包的文件服務(wù)器、存儲測試用例和測試結(jié)果的數(shù)據(jù)庫服務(wù)器、執(zhí)行測試的運(yùn)行環(huán)境、控制服務(wù)器、Web服務(wù)器和客戶端程序。自動化測試的主要實現(xiàn)方法包括代碼的靜態(tài)與動態(tài)分析、測試過程的捕獲與回放、測試腳本技術(shù)、虛擬用戶技術(shù)和測試管理技術(shù)等。

自動化測試工具的關(guān)鍵特性之一是具有良好的腳本開發(fā)環(huán)境。測試工具首先應(yīng)該具有相對應(yīng)的容錯處理系統(tǒng),可以自動處理一些異常狀況;其次要能夠提供類似軟件集成開發(fā)環(huán)境中的調(diào)試功能,支持腳本的運(yùn)行、設(shè)置斷點、得到變量返回結(jié)果等,可以更有效地對測試腳本的執(zhí)行進(jìn)行跟蹤、檢查并迅速定位問題;最后,測試腳本的開發(fā)通常也需要一個團(tuán)隊的開發(fā)環(huán)境,即測試工具對腳本代碼能很好地進(jìn)行控制與管理。

目前,測試工具主要有單元測試工具、負(fù)載和性能測試工具、GUI功能測試工具和基于Web應(yīng)用的測試工具等。

(1)單元測試工具。單元測試工具主要包括C/C++測試工具(例如,PanoramaC++和C++Test等)、Java開源測試框架JUnit、內(nèi)存資源泄漏檢查工具(例如,Numega的BounceChecker和Rational的Purify等)、代碼覆蓋率檢查工具(例如,Numega的TrueCoverage、Rational的PureCoverage和TeleLogic的LogiScope等)、代碼性能檢查工具(例如,LogiScope的Macabe等)和軟件糾錯工具(例如,RationalPurl等)。

(2)負(fù)載和性能測試工具。負(fù)載和性能測試工具是軟件測試中作用最大的工具,可以完成一些難以用手工實現(xiàn)的測試,常用工具包括MercuryInteractive的LoadRunner和Compuware的QALoad,以及IBMRational的SQALoad、Performance和VisualQuality。

(3)GUI功能測試工具。GUI功能測試工具主要用于回歸測試,主要工具包括MercuryInteractive的WinRunner和Compuware的QARun,以及IBMRational的SQARobot和Microsoft的VisualTestSuite等。

(4)基于Web應(yīng)用的測試工具?;赪eb應(yīng)用的測試工具主要進(jìn)行鏈接檢查、HTML檢查、Web功能和安全性等方面的測試。主要的測試工具包括MI公司的Astra系列和RSW公司的E-TestSuite,以及WorkBench、WebApplicationStress(WAS)Tool和LinkSleuth等。

其他的測試工具還包括缺陷跟蹤工具、綜合測試管理工具、嵌入式測試工具、數(shù)據(jù)庫測試工具等。面對如此眾多的測試工具,在選擇時應(yīng)進(jìn)行綜合考慮,例如,考察測試工具是否支持腳本語言,是否具有良好的腳本開發(fā)環(huán)境;腳本語言是否支持外部函數(shù)庫,以及函數(shù)的可復(fù)用;測試工具對程序界面中對象的識別能力,對分布式測試的網(wǎng)絡(luò)支持,以及是否支持?jǐn)?shù)據(jù)驅(qū)動測試等方面。

17.論軟件項目管理技術(shù)及其應(yīng)用

軟件項目管理是為了使軟件項目能夠按照預(yù)定的成本、進(jìn)度和質(zhì)量順利完成,對人員、產(chǎn)品、過程和項目進(jìn)行分析和管理的活動。軟件項目管理的根本目的是為了讓軟件項目,尤其是大型軟件項目的整個生命周期都能在管理者的控制之下,以預(yù)定成本按期、按質(zhì)地完成并交付用戶使用。而研究軟件項目管理技術(shù)則是為了從已有的成功或失敗的項目案例中總結(jié)出能夠指導(dǎo)今后開發(fā)的通用原則和方法,同時避免重復(fù)失誤。

請圍繞“軟件項目管理技術(shù)及其應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與實施和管理的軟件開發(fā)項目以及你所擔(dān)任的主要工作。

2.請根據(jù)項目實際情況,從成本、進(jìn)度和質(zhì)量三個方面,結(jié)合軟件開發(fā)過程,說明你是如何進(jìn)行軟件項目管理的。

3.闡述你在進(jìn)行軟件項目管理時遇到了哪些問題,如何解決。

正確答案:

您的答案:

本題解析:寫作要點:

一、論文中要具體介紹組織的業(yè)務(wù)背景和組織結(jié)構(gòu),軟件系統(tǒng)開發(fā)時的人員組成、任務(wù)分工和管理方式等內(nèi)容和擔(dān)任的實際工作。

二、本題應(yīng)根據(jù)項目的實際情況,從成本、進(jìn)度和質(zhì)量三個方面,結(jié)合軟件開發(fā)過程,對軟件管理內(nèi)容進(jìn)行論述。相關(guān)的內(nèi)容包括:

1.在成本方面,需要進(jìn)行軟件項目成本管理。軟件項目成本管理就是根據(jù)企業(yè)的情況和項目的具體要求,利用公司既定的資源,在保證項目的進(jìn)度、質(zhì)量達(dá)到客戶滿意的情況下,對軟件項目成本進(jìn)行有效的組織、實施、控制、跟蹤、分析和考核等一系列管理活動,最大限度地降低項目成本,提高項目利潤。

項目成本管理包括確保在批準(zhǔn)的預(yù)算范圍內(nèi)完成項目所需的各個過程。軟件項目成本的管理可以用估算和控制來概括,首先對軟件的成本進(jìn)行估算,然后形成成本管理計劃,在軟件項目開發(fā)過程中,對軟件項目施加控制使其按照計劃進(jìn)行。成本管理計劃是成本控制的標(biāo)準(zhǔn),不合理的計劃可能使項目失去控制,超出預(yù)算。因此成本估算是整個成本管理過程中的基礎(chǔ),成本控制是使項目的成本在開發(fā)過程中控制在預(yù)算范圍之內(nèi)。

成本管理的過程包括:

(1)資源計劃,包括決定為實施項目活動需要使用什么資源(人員、設(shè)備和物資)以及每種資源的用量。其主要輸出是一個資源需求清單。

(2)成本估算,包括估計完成項目所需資源成本的近似值。其主要輸出是成本管理計劃。

(3)成本預(yù)算,包括將整個成本估算配置到各單項工作,以建立一個衡量績效的基準(zhǔn)計劃。其主要輸出是成本基準(zhǔn)計劃。

(4)成本控制,包括控制項目預(yù)算的變化。其主要輸出是修正的成本估算、更新預(yù)算、糾正行動和取得的教訓(xùn)。

2.在進(jìn)度方面,需要進(jìn)行軟件進(jìn)度管理。軟件進(jìn)度管理采用科學(xué)的方法,確定進(jìn)度目標(biāo),編制進(jìn)度計劃和資源供應(yīng)計劃,進(jìn)行進(jìn)度控制,在與質(zhì)量,成本目標(biāo)協(xié)調(diào)的基礎(chǔ)上,實現(xiàn)工期目標(biāo)。進(jìn)度管理主要包含以下6個過程。

(1)活動定義:確定完成項目各項可交付成果而需要開展的具體活動。

(2)活動排序:識別和記錄各項活動之間的先后關(guān)系和邏輯關(guān)系。

(3)活動資源估算:估算完成各項活動所需要的資源類型和數(shù)量。

(4)活動歷時估算:估算完成各項活動所需要的具體時間。

(5)進(jìn)度計劃編制:分析活動順序、活動持續(xù)時間、資源要求和進(jìn)度制約因素,制定項目進(jìn)度計劃。

(6)進(jìn)度控制:根據(jù)進(jìn)度計劃開展項目活動,如果發(fā)現(xiàn)偏差,則分析原因或進(jìn)行調(diào)整。

3.在質(zhì)量方面,需要進(jìn)行軟件質(zhì)量管理。質(zhì)量管理是指確立質(zhì)量方針及實施質(zhì)量方針的全部職能及工作內(nèi)容,并對其工作效果進(jìn)行評價和改進(jìn)的一系列工作。軟件質(zhì)量管理需要關(guān)注軟件生命周期的質(zhì)量模型,編制軟件管理計劃,實施軟件質(zhì)量保證與質(zhì)量控制活動。

(1)軟件生命周期的質(zhì)量模型主要包括過程質(zhì)量、內(nèi)部質(zhì)量屬性、外部質(zhì)量屬性等內(nèi)容。

(2)軟件管理計劃的主要內(nèi)容有:評審與檢查、項目計劃階段的質(zhì)量管理活動、軟件配置管理等。

(3)軟件質(zhì)量保證是指為保證軟件系統(tǒng)或軟件產(chǎn)品充分滿足用戶要求的質(zhì)量而進(jìn)行的有計劃、有組織的活動,這些活動貫穿于軟件生產(chǎn)的各個階段。軟件質(zhì)量保證由各項任務(wù)構(gòu)成,這些任務(wù)的參與者有兩類人:軟件開發(fā)人員和質(zhì)量保證人員。前者負(fù)責(zé)技術(shù)工作,后者負(fù)責(zé)質(zhì)量保證的計劃、監(jiān)督、記錄、分析和報告工作。質(zhì)量保證的相關(guān)技術(shù)有質(zhì)量審計和過程分析等。

質(zhì)量控制是指監(jiān)視項目的具體結(jié)果,確定其是否符合相關(guān)的質(zhì)量標(biāo)準(zhǔn),并判斷如何能夠去除造成不合格結(jié)果的根源,質(zhì)量控制活動應(yīng)貫穿于項目的始終。進(jìn)行質(zhì)量控制的主要活動是軟件評審和軟件測試等。

三、在進(jìn)行軟件項目管理時可能存在的問題包括:如何有效發(fā)現(xiàn)并解決項目開發(fā)中的問題;如何對開發(fā)方案進(jìn)行決策;如何對項目開發(fā)人員進(jìn)行組織協(xié)調(diào);如何提高團(tuán)隊工作效率,包括激勵機(jī)制和懲罰機(jī)制;等等。

18.論敏捷開發(fā)在企業(yè)軟件開發(fā)中的應(yīng)用

敏捷開發(fā)是一種以人為核心、迭代、循序漸進(jìn)的開發(fā)方法。在敏捷開發(fā)中,軟件項目被切分成多個子項目,各個子項目的成果都經(jīng)過測試,具備集成和可運(yùn)行的特征。盡管目前敏捷開發(fā)的具體名稱、理念、過程、術(shù)語尚不盡相同,但業(yè)界普遍認(rèn)為:相對于“非敏捷”,敏捷開發(fā)更強(qiáng)調(diào)程序員團(tuán)隊與業(yè)務(wù)專家之間的緊密協(xié)作、面對面的溝通、頻繁交付新的軟件版本、緊湊而自我組織型的團(tuán)隊、能夠很好地適應(yīng)需求變化的代碼編寫和團(tuán)隊組織方法,也更注重軟件開發(fā)中人的作用。

請圍繞“敏捷開發(fā)在企業(yè)軟件開發(fā)中的應(yīng)用”論題,依次從以下三個方面進(jìn)行論述。

1.概要敘述你參與實施的應(yīng)用敏捷開發(fā)的軟件項目以及你所擔(dān)任的主要工作。

2.敘述你在軟件項目實踐過程中采用了怎樣的敏捷開發(fā)基本原則并說明理由。

3.具體闡述該項目采用的敏捷開發(fā)方法,以及實施過程中存在問題和解決方法。

正確答案:

您的答案:

本題解析:一、概要敘述你參與實施的應(yīng)用敏捷開發(fā)的企業(yè)項目以及你所擔(dān)任的主要工作。

二、敘述你在該企業(yè)項目實踐過程中采用的敏捷開發(fā)基本原則并說明理由

2001年2月的“敏捷宣言”(AgileManifesto)是由多位當(dāng)時稱之為“輕量級方法學(xué)家”所編寫簽署的,他們的價值觀是:個人與交互重于開發(fā)過程與工具;可用的軟件重于復(fù)雜的文檔;尋求客戶的合作重于對合同的談判;對變化的響應(yīng)重于始終遵循固定的計劃。

1)個人與交互重于開發(fā)過程與工具:一個由優(yōu)秀的人員組成但使用普通的工具,要比使用優(yōu)秀的工具但由普通人組成、紊亂的小組做得更好。多年來人們花了很多時間試圖建立一種過程,以便把人當(dāng)作機(jī)器上的一個可以替代的齒輪,但結(jié)果卻并不成功。敏捷過程是承認(rèn)每個人都有特定的能力(以及缺點)對之加以利用,而不是把所有的人當(dāng)成一樣來看待。更重要的是,在這樣的理念下,幾個項目做下來,每個人的能力都從中得以提高。這種人的能力的提高,對公司是無價之寶。而不至于把人當(dāng)成齒輪,隨著時間的推移,人的能力慢慢被消耗掉,最后變成留之無用、棄之可惜的尷尬人物。

2)可用的軟件重于復(fù)雜的文檔:可用的軟件可以幫助開發(fā)人員在每次迭代結(jié)束的時候,獲得一個穩(wěn)定的、逐漸增強(qiáng)的版本。從而允許項目盡早開始,并且更為頻繁的收集對產(chǎn)品和開發(fā)過程的反饋。隨著每次迭代完成軟件的增長,以保證開發(fā)小組始終是處理最有價值的功能,而且這些功能可以滿足用戶的期待。

3)尋求客戶的合作重于對合同的談判的原因:敏捷開發(fā)小組希望與項目有關(guān)的所有團(tuán)體都在朝共同方向努力,合同談判有時會在一開始就使小組和客戶處于爭執(zhí)中。敏捷開發(fā)追求的是要么大家一起贏,要么大家一起輸。換句話說,就是希望開發(fā)小組和客戶在面對項目的時候,以一種合作的態(tài)度共同向目標(biāo)前進(jìn)。當(dāng)然,合同是必需的,但是如何起草條款,往往影響到不同的團(tuán)體是進(jìn)行合作式的還是對抗式的努力。

4)對變化的響應(yīng)重于始終遵循固定的計劃:敏捷開發(fā)認(rèn)為對變化進(jìn)行響應(yīng)的價值重于始終遵循固定的計劃。他們最終的焦點是向用戶交付盡可能多的價值。除了最簡單的項目以外,用戶不可能知道他們所需要的所有功能的每個細(xì)節(jié)。不可避免地在過程中會產(chǎn)生新的想法,也許今天看起來是必需的功能,明天就會覺得不那么重要了。隨著小組獲得更多的知識和經(jīng)驗,他們的進(jìn)展速度會比開始的時候期望值慢或者快。對敏捷開發(fā)來說,一個計劃是從某個角度對未來的看法,而具有多個不同的角度看問題是有可能的。

(針對所承擔(dān)項目的具體問題和特點,圍繞敏捷開發(fā)基本原則的1項或多項進(jìn)行論述均可)

三、具體闡述該企業(yè)采用的具體敏捷開發(fā)方法,以及實施的效果。

常見的敏捷開發(fā)方法有極限編程,Scrum,水晶方法等。

極限編程是敏捷軟件開發(fā)中最富有成效的幾種方法學(xué)之一,是敏捷過程的一種具體形式,提供敏捷方法最一般原則的指導(dǎo)方針,包括5項價值標(biāo)準(zhǔn)和12個實踐操作。極限編程的主要目標(biāo)在于降低因需求變更而帶來的成本,極限編程透過引入基本價值、原則、方法等概念來達(dá)到降低變更成本的目的。

Scrum是一種迭代式增量軟件開發(fā)過程,通常用于敏捷軟件開發(fā)。包括了一系列實踐和預(yù)定義角色的過程骨架。Scrum中的主要角色包括Scrum主管,產(chǎn)品負(fù)責(zé)人和開發(fā)團(tuán)隊。它使用迭代的方法,把每個30天一次的迭代稱為一個“沖刺(sprint)”,按照需求優(yōu)先級別來實現(xiàn)產(chǎn)品。多個自組織和自治小組并行遞增地實現(xiàn)產(chǎn)品。通過簡短的日常情況會議(稱為“Scrum”)進(jìn)行。

水晶敏捷方法發(fā)展和提倡了一種機(jī)動性的軟件開發(fā)方法,定義了一系列方法,包含核心元素,角色、過程模式、工作產(chǎn)品和實踐。水晶敏捷方法實際是一組經(jīng)過證明對不同類型項目都非常有效的敏捷過程,其目的是使得敏捷團(tuán)隊可以根據(jù)其項目和環(huán)境選擇最合適的水晶系列成員。

(論述只需說明一種具體的敏捷開發(fā)方法)

19.論業(yè)務(wù)流程建模方法及應(yīng)用

業(yè)務(wù)流程建模是系統(tǒng)分析階段一項非常重要的工作,是業(yè)務(wù)功能分析的進(jìn)一步細(xì)化。業(yè)務(wù)流程建模的目的明確各個部門之間的業(yè)務(wù)關(guān)系和每個業(yè)務(wù)處理的意義,詳細(xì)了解各個業(yè)務(wù)流程的執(zhí)行過程,為業(yè)務(wù)流程的合理化改造提供建議,為系統(tǒng)的數(shù)據(jù)流程變化提供依據(jù)。業(yè)務(wù)流程建模的任務(wù)包括明確企業(yè)職能是如何在有關(guān)部門具體完成的,在完成這些職能時信息處理工作的一些細(xì)節(jié)情況,確定流程工作過程以及與企業(yè)其他要素之間的關(guān)系,對業(yè)務(wù)流程進(jìn)行設(shè)計或改造,等等。

請以“業(yè)務(wù)流程建模方法及應(yīng)用”為題,分別從以下三個方面進(jìn)行論述。

1.概要敘述你參與實施的項目以及你所擔(dān)任的主要工作。

2.給出三種業(yè)務(wù)流程建模方法,并對每種方法進(jìn)行簡要描述。說明你在該項目中采用了哪種業(yè)務(wù)流程建模方法,結(jié)合項目特征說明采用該方法的原因,并詳細(xì)描述業(yè)務(wù)流程建模過程。

3.闡述在進(jìn)行業(yè)務(wù)流程建模過程中遇到的主要問題及如何解決的。

正確答案:

您的答案:

本題解析:一、論文中要說明所參與管理和開發(fā)的軟件項目,并明確指出在其中承擔(dān)的主要任務(wù)和開展的主要工作。

二、目前主要的業(yè)務(wù)流程建模方法包括:標(biāo)桿瞄準(zhǔn)、IDEF、DEMO、Petri網(wǎng),選擇其中任意3種進(jìn)行論述均可。

1.標(biāo)桿瞄準(zhǔn)

標(biāo)桿瞄準(zhǔn)是一個連續(xù)、系統(tǒng)化地對外部領(lǐng)先企業(yè)進(jìn)行評價的過程,通過分析和評價,確定出代表最佳實踐的經(jīng)營過程和工作過程,以便合理地確定本企業(yè)的業(yè)務(wù)流程。人們形象地把標(biāo)桿瞄準(zhǔn)法比喻為是一個合理、合法地“拷貝”優(yōu)秀企業(yè)成功經(jīng)驗的過程。事實上,企業(yè)中的許多業(yè)務(wù)流程(例如,庫存管理、供應(yīng)商管理、客戶管理、廣告與雇傭等)在不同的行業(yè)中都是相似的,因此,運(yùn)用標(biāo)桿瞄準(zhǔn)法對這些項目實施瞄準(zhǔn),尤其是在不同的行業(yè)對同一項目實施標(biāo)桿瞄準(zhǔn)時,對企業(yè)的參考價值可能更大。

2.IDEF

IDEF是一系列建模、分析和仿真方法的統(tǒng)稱,從IDEF0到IDEF14(包括IDEF1X在內(nèi))共有16套方法,每套方法都是通過建模程序來獲取某個特定類型的信息。它們分別是IDEF0(功能建模)、IDEF1(信息建模)、IDEF1X(數(shù)據(jù)建模)、IDEF2(仿真建模設(shè)計)、IDEF3(過程描述獲?。DEF4(面向?qū)ο笤O(shè)計)、IDEF5(本體論描述獲取)、IDEF6(設(shè)計原理獲取)、IDEF7(信息系統(tǒng)審計)、IDEF8(用戶界面建模)、IDEF9(場景驅(qū)動信息系統(tǒng)設(shè)計)、IDEF10(實施架構(gòu)建模)、IDEF11(信息制品建模)、IDEF12(組織建模)、IDEF13(三模式映射設(shè)計)和IDEF14(網(wǎng)絡(luò)規(guī)劃)。

在IDEF方法中,IDEF0可以用來對業(yè)務(wù)流程進(jìn)行建模。IDEF0是對企業(yè)所完成的各項活動及活動之間的相互關(guān)系的一種結(jié)構(gòu)化描述,其基本要素是用“盒子”表示功能活動。IDEF0的特點是其層次分解性,它利用一套完整的、嚴(yán)密的規(guī)則,將一個復(fù)雜的系統(tǒng)逐層往下分解,即較高層次的一個活動可以按需要細(xì)化成一組較低層次上的活動。

3.DEMO

DEMO方法定義了信息系統(tǒng)中行為角色之間的通信方式,這種通

溫馨提示

  • 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

提交評論