




已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
精品文檔第一章1,與計算機硬件相比,計算機軟件有哪些特點?軟件的特點如下。1) 無法直接觀察計算機軟件的物理形態(tài),只能通過觀察它的實際運行情況來了解它的功能、特性和質量等。2) 人們在分析、設計、開發(fā)、測試軟件產(chǎn)品,以及在軟件開發(fā)項目的管理過程中,滲透了大量的腦力勞動。3) 不存在像硬件一樣的磨損和老化現(xiàn)象,但存在著缺陷維護和技術更新的問題。4) 軟件的開發(fā)和運行必須依賴于特定的計算機系統(tǒng)環(huán)境。5) 具有可復用性。3,什么是軟件危機?什么原因導致了軟件危機?軟件危機的現(xiàn)象如下。1) 經(jīng)費超出預算,項目一再拖延。2) 不重視需求,開發(fā)的軟件不能滿足用戶的要求,項目成功率低。3) 沒有規(guī)范的軟件工程方法,軟件可維護性差、軟件質量差、可靠性差。4) 開發(fā)工具落后,手工方式,開發(fā)效率低。所有導致軟件危機的原因,都與軟件本身的產(chǎn)品特點相關。1) 軟件是一個復雜的邏輯產(chǎn)品。如果沒有解決復雜問題的有效方法,以及軟件產(chǎn)品的結構、質量、可維護性得不到保障,開發(fā)與維護費用就會持續(xù)升高。2) 軟件產(chǎn)品不能實現(xiàn)大規(guī)模復用,這導致了軟硬件生產(chǎn)效率的不同。3) 軟件生產(chǎn)是腦力勞動,它看不見、摸不著,開發(fā)成本、開發(fā)周期等都無法做到準確估算,生產(chǎn)過程不易控制。4) 軟件成本主要是由研發(fā)成本構成;而硬件的生產(chǎn)成本主要是材料和制造成本,分攤的研發(fā)成本很少,即軟件研發(fā)過程與硬件制造過程相比要復雜得多。5,請簡述軟件工程研究的內容。軟件工程研究的內容包括軟件開發(fā)方法、軟件開發(fā)模型、軟件支持過程和軟件管理過程。軟件開發(fā)方法的內容涵蓋市場調研、正式立項、需求分析、項目策劃、概要設計、詳細設計、編程、測試、試運行、產(chǎn)品發(fā)布、用戶培訓、產(chǎn)品復制、銷售、實施、系統(tǒng)維護、版本升級等。常用的軟件開發(fā)模型有瀑布模型、迭代模型、增量模型和原型模型等。軟件支持過程由所支持的CASE工具組成,常用的CASE工具有Power Designer和Rational Rose等。7,請簡述軟件工程的目標、過程和原則。目標、過程和原則是一切工程的三維框架,這里是以工程的觀點來看待軟件開發(fā)。1) 軟件工程的目標:降低成本、及時交付高質量的軟件產(chǎn)品(高質量、高效率、高效益)。2) 實現(xiàn)目標的過程即完成產(chǎn)品加工的過程,包括:基本過程、支持過程和組織過程。3) 進行過程應遵守的原則:原則就是過程中的軌道約束,包括:選取適宜的開發(fā)范型、采用合適的設計方法、提供高質量的工程支持、重視開發(fā)過程的管理。9,請簡述現(xiàn)代軟件工程與傳統(tǒng)軟件工程顯著的區(qū)別和改進。1) 傳統(tǒng)的軟件工程是基于結構化的軟件開發(fā)方法,而現(xiàn)代軟件工程是以面向對象技術為標志。2) 不僅在編程技術上有很大的改進,而且在分析、設計等整個開發(fā)過程中,采用面向對象的思維方式,更加完整、自然地反映客觀世界。3) 采用架構技術,開發(fā)效率、產(chǎn)品質量得到了極大提高。4) 更注重團隊開發(fā)和管理,融入更多、更新的管理理念和手段,如RUP模型、XP模型、過程改進、能力成熟度模型、配置管理等。第二章1,如何理解軟件生命周期的內在特征?軟件產(chǎn)品的生命周期是指從設計該產(chǎn)品的構想開始,到軟件需求的確定、軟件設計、軟件實現(xiàn)、產(chǎn)品測試與驗收、投入使用以及產(chǎn)品版本的不斷更新,再到最終該產(chǎn)品被市場淘汰的全過程。軟件生命周期這個概念從時間的角度將軟件的開發(fā)和維護的復雜過程分解為了若干個階段,每個階段都完成特定的相對獨立的任務。由于每個階段的任務相對于總任務難度會大幅度降低,因此在資源外配、時間把握和項目管理上都會比較容易控制。應該合理地劃分軟件生命周期的各個階段,使各個階段之間既相互區(qū)別又相互聯(lián)系,為每個階段賦予特定的任務。3,當需求不能一次搞清楚,且系統(tǒng)需求比較復雜時應選用哪種開發(fā)模型比較合?開發(fā)模型不是孤立或排斥的,它們之間需要相互借鑒和參考。螺旋模型是一種綜合性的模型,適和于較復雜的系統(tǒng)。5, XP是一種什么樣的模型?XP是現(xiàn)代版的增量模型,特點是客戶參與、適應變化、測試驅動、以代碼為核心。實行XP的條件如下。1) 企業(yè)具有較高的能力成熟度,具有團隊開發(fā)環(huán)境和配套的測試工具。2) 軟件結構是開放的,增量可隨意整合。3) 開發(fā)團隊擁有“系統(tǒng)隱喻。7,請簡述軟件過程。軟件過程就是軟件產(chǎn)品的加工過程,其本質就是將“客觀世界”映射(虛擬)到“計算機世界”,即從抽象到具體的逐步細化過程。系統(tǒng)分析就是對客觀世界的抽象,中間要經(jīng)過分析模型、設計模型的逐步細化(具體化),最終的具體結果就是計算機世界里的代碼。9,請簡述CMM的作用。1) CMM是評價軟件組織開發(fā)能力(水平)的參考模型,是一種認證標準,認可軟件工程達到的程度(如同評定職稱的條件)2) CMM是軟件組織提升自身能力、走向成熟的參照系。它提供了走向成熟的階梯目標,但并不提供走向目標的方法。3) CMM等級的提高依靠軟件過程改進。4) CMM既是評估軟件能力成熟度的模型,也起到了促進軟件企業(yè)按照該模型設置的級別和關鍵過程域不斷改進自己的軟件過程的作用。11,假設你要開發(fā)一個軟件,它的功能是把73624.9385這個數(shù)開平方,所得到的結果應該精確到小數(shù)點后4位。一旦實現(xiàn)并測試完之后,該產(chǎn)品將被拋棄。你打算選用哪種軟件生命周期模型?請說明你做出這樣選擇的理由。對這個軟件的需求很明確,實現(xiàn)開平方功能的算法也很成熟。因此,既無須通過原型模型來分析需求也無須用原型模型來驗證設計方案。此外,一旦實現(xiàn)并測試完之后,該產(chǎn)品將被地棄,因此也無須使用有助于提高軟件可維護性的增量模型或螺旋模型來開發(fā)該軟件。綜上所述,為了開發(fā)這個簡單的軟件,使用大多數(shù)人所熟悉的瀑布模型就可以了。第五章1,在選擇編程語言時,通常要考慮哪些因素?1) 待開發(fā)系統(tǒng)的應用領域,即項目的應用范圍。2) 用戶的要求。3) 軟件開發(fā)人員的喜好和能力。4) 系統(tǒng)的可移植性要求。5) 算法和數(shù)據(jù)結構的復雜性。3,什么是調試?什么是測試?二者有何區(qū)別?調試(debug)指的是對模塊的調試,是程序員交付可運行的代碼模塊所必須經(jīng)歷的工作。軟件測試(test)有如下特點。1) 軟件測試的目的是發(fā)現(xiàn)程序中的錯誤,是為了證明程序有錯,而不是證明程序無錯。2) 不僅僅是測試程序,還應該對開發(fā)過程中所有的產(chǎn)品進行測試,包括文檔,其目的是為了盡早地、盡可能多地發(fā)現(xiàn)并排除軟件中潛在的錯誤。二者的區(qū)別如圖5.2所示。5,請簡述靜態(tài)測試和動態(tài)測試的區(qū)別。按照執(zhí)行測試時是否需要運行程序,軟件測試可以劃分為靜態(tài)測試和動態(tài)測試。靜態(tài)測試以人工測試為主,通過測試人員認真閱讀文檔和代碼,仔細分析其正確性、一致性及邏輯結構的正確性,從而找出軟件產(chǎn)品中的錯誤或缺陷。靜態(tài)測試對自動化工具的依賴性較小,通過人腦的思考和邏輯判斷來查找錯誤,因而可以更好地發(fā)揮人的主觀能動性。與靜態(tài)測試不同的是,動態(tài)測試需要通過實際運行被測程序來發(fā)現(xiàn)問題。測試人員可以輸入一系列的測試用例,通過觀察測試用例的輸出結果是否與預期相符來檢驗系統(tǒng)內潛在的問題或缺陷。7,軟件測試的目的是什么?測試的目的如下1) 測試是一個為了發(fā)現(xiàn)程序中的錯誤為目的的程序執(zhí)行過程。2) 個好的測試用例是能最大限度地找到迄今為止尚未發(fā)現(xiàn)的錯誤。3) 成功的測試是能發(fā)現(xiàn)了那些尚未發(fā)現(xiàn)的錯誤。9,什么是白盒測試?有哪些常用的白盒測試方法?白盒測試主要針對于程序內部邏輯和數(shù)據(jù)流程的測試,因此白盒測試的測試用例設計需要了解程序的內部邏輯。常用的白盒測試方法主要有邏輯覆蓋法、基本路徑測試法。11,軟件測試應該劃分幾個階段?各個階段應重點測試的內容是什么?軟件測試總的來說可分為單元測試、集成測試、系統(tǒng)測試、驗收測試。每個階段又分為確定測試計劃,測試設計,設計測試用例,實施測試,進行測試報告5個步驟。1) 單元測試是對軟件中的基本組成單位進行的測試,如一個模塊、一個過程等。它是軟件動態(tài)測試的最基本的部分,也是最重要的部分之一,其目的是檢驗軟件基本組成單位的正確性。2) 集成測試是軟件系統(tǒng)集成過程中所進行的測試,其主要目的是檢查軟件單位之間的接口是否正確。3) 系統(tǒng)測試是對已經(jīng)集成好的軟件系統(tǒng)進行徹底的測試,以驗證軟件系統(tǒng)的正確性和性能等滿足其規(guī)約所指定的要求,檢查軟件的行為和輸出是否正確并非是一項簡單的任務,它被稱為測試的“先知者問題.4) 驗收測試是向軟件的購買者展示該軟件系統(tǒng)滿足其用戶的需求。它的測試數(shù)據(jù)通常是系統(tǒng)測試的測試數(shù)據(jù)的子集。5) 回歸測試是在軟件維護階段,對軟件進行修改之后進行的測試。其目的是檢驗對軟件進行。第十一章1, 請簡述項目、項目管理和軟件項目管理。項目、項目管理和軟件項目管理的概念如下。1) 項目是一次性的多任務工作,它具有確定的開始日期、結束日期、工作范圍、經(jīng)費預算、2) 質量標準,以及特定的功能、性能和接口要求。3) 項目管理是為了實現(xiàn)項目目標,運用相關的知識、技能、方法與工具,對項目的計劃、進度、質量、成本、資源進行管理和控制的活動。4) 軟件項目管理以通用的項目管理知識體系為基礎,管理的對象是軟件工程項目。它結合軟件工程自身的科學規(guī)律,采用適合軟件產(chǎn)品自身特點的管理方法,使得整個軟件開發(fā)過程(從分析、設計、編碼到測試、維護全過程)都能在管理者的控制之下,以預定成本按期、按質的完成軟件交付用戶使用。3,請簡述項目計劃應該包括的內容。項目計劃應該包括的內容如下。1) 確定詳細的項目實施范圍。2) 定義遞交的工作成果。3) 評估實施過程中主要的風險。4) 制定項目實施的時間計劃。5) 成本和預算計劃。6) 人力資源計劃等。5,如何進行項目的時間管理?項目的時間管理首先要對項目活動進行定義,依據(jù)包括:工作分解結構、項目范圍說明、歷史信息、約束條件、假定和專家評論。在整個項目中,我們需要一份能清晰描述活動發(fā)生的時間和所需要的資源的計劃,項目進度安排的內容為如下1) 定義一組項目活動,并建立活動之間的相互關系。2) 估算各個活動的工作量和完成任務所需要的資源。3) 定義里程碑。4) 分配人力和其他資源,制定進度時序。5) 檢查進度安排,確保任務之間沒有沖突,并且包含了完成項目必需的所有任務。7,請簡述估算的作用。計劃是項目的啟動入口,項目開展過程就是執(zhí)行計劃。而估算是制定計劃的依據(jù),因此估算是項目開展的基礎。估算的主要工作如下。1) 范圍估算:搞清軟件邊界。2) 規(guī)模估算:定量單位采用LOC或FP3) 工作量估算:工作量估算決定了開發(fā)團隊的規(guī)模和組建,決定開發(fā)周期和進度估算。4) 開發(fā)周期與進度估算:進度估算是對整個開發(fā)周期中不同階段的里程碑進行估算。5) 人力資源估算:在考慮各種軟件開發(fā)資源時,人是最重要最優(yōu)先考慮的資源。6) 開發(fā)成本估算:整個開發(fā)周期所花費的工作量產(chǎn)生的勞動費用。7) 軟硬件資源估算:軟件開發(fā)所需的硬件工具及軟件工具。9,請簡述做進度計劃的兩種方式。做進度計劃的兩種方式如下。1) Gant圖用線段標明子任務的分解;標明各個任務的計劃開始時間、完成時間;標明各個任務與參與工作的人數(shù),各子任務間的并行和串行的關系的銜接情況。特點:簡單、明了、直觀、易于編制;以文檔與評審作為開發(fā)進度的里程碑。缺點:無法標明多個任務之間存在的相互制約關系;無法標明關鍵的控制作業(yè)。2) 工程網(wǎng)絡圖是用時間和節(jié)點來表示工作流程的有序、有向的網(wǎng)狀圖形。它可彌補Gantt圖無法表達關鍵路徑和作業(yè)之間的制約關系,并且易于調整。第十二章1, 目前項目開發(fā)時常用的小組組織方法有哪些?目前,項目開發(fā)時常用的小組組織方法:民主制程序員組、主程序員組和現(xiàn)代程序員組。3,民主制、主程員制各存在什么問題?民主制程序員組中所有程序員不分主次,這樣在責任落實、分工協(xié)作方面存在一些問題。責任不明,分工不清,大家都負責,實際上沒有人負責。主程序員制是主程序員負責制,克服了民主制的缺點,但又走到了另一個極端-只有主程序員負責,其他成員的積極性就被扼殺了。另外,主程序員這個位置既是一個技術崗位,也是一個管理角色,這樣的位置很難找到勝任的人擔任。熱衷于技術的人,往往對管理不感興趣,而具有管理才能的人,大多不會是技術專家。第十三章1,風險識別的步驟有哪些?風險識別分為三步進行:收集資料;估計項目風險形勢;識別風險。3,請簡述軟件質量的定義。所謂軟件質量,就是供方提供的軟件產(chǎn)品滿足用戶明確和隱含需求的能力特性的總和。5, 什么是配置項?什么是配置管理?軟件配置管理中的基本單元,稱為軟件配置項。在開發(fā)過程中,將軟件的文檔、程序、數(shù)據(jù)進行分割與綜合,以利于軟件的定義、標識、跟蹤、管理,使其最終形成受控的軟件版本產(chǎn)品,這一管理過程稱為軟件配置管理。7,請簡述軟件配置管理的工作內容。配置管理的工作內容一般包括如下的4個方面。1) 標識配置項。配置項是配置管理中的基本單元,每個配置項應該包含相應的基本配置管理的信息。標識配置項就是要給配置項取一個合適的名字。2) 進行配置控制。進行配置控制是配置管理的關鍵,包括存取控制、版本控制、變更控制和產(chǎn)品發(fā)布控制等。存取控制通過配置管理中的“軟件開發(fā)庫”、“軟件基線庫”、“軟件產(chǎn)品庫”來實現(xiàn)。每個庫對應著不同級別的操作權限,為團隊成員授予不同的訪問權利。版本控制往往使用自動的版本控制工具來實現(xiàn),如SVN,變更控制是應對軟件開發(fā)過程中各種變化的機制,可以通過建立控制點和報告與審查制度來實現(xiàn)。產(chǎn)品發(fā)布控制面向最終發(fā)布版本的軟件產(chǎn)品,旨在保證提交給用戶的軟件產(chǎn)品版本是完整、正確和一致的。3) 記錄配置狀態(tài)。配置狀態(tài)報告記錄了軟件開發(fā)過程中每一次配置變更的詳細信息。記錄配置狀態(tài)的目的是使配置管理的過程具有可追蹤性。4) 執(zhí)行配置審計。配置審計是為了保證軟件工作產(chǎn)品的一致性和完整性,從而保證最終軟件版本產(chǎn)品發(fā)布的正確性。第十四章1,為什么要進行軟件維護?軟件維護的作用有哪些?軟件維護是軟件產(chǎn)品生命周期的最后一個階段。在產(chǎn)品交付并且投入使用之后,為了解決在使用過程中不斷發(fā)現(xiàn)的各種問題,保證系統(tǒng)正常運行,同時使系統(tǒng)功能隨著用戶需求的更新而不斷升級,軟件維護的工作是非常必要的。概括地說,軟件維護就是指在軟件產(chǎn)品交付給用戶之后,為了改正軟件測試階段未發(fā)現(xiàn)的缺陷,改進軟件產(chǎn)品的性能,補充軟件產(chǎn)品的新功能等,所進行的修改軟件的過程。3,傳統(tǒng)軟件維護分哪幾大類?傳統(tǒng)軟件維護分4類,分別是糾錯性維護、適應性維護、完善性維護和預防性維護。5,請簡述結構化維護和非結構化維護。結構化維護的前提是軟件產(chǎn)品或軟件項目必須有完善的文檔,并且文檔與程序代碼互相匹配,兩者完全一致。在這樣的前提下,維護不但會比較省力,而且維護后可以用原來的測試用例進行回歸測試。相反,若軟件產(chǎn)品或軟件項目只有程序而沒有文檔,或文檔很不規(guī)范、很不齊全,對這
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年咸陽市稅務系統(tǒng)遴選面試真題附詳細解析含答案
- 煤礦安全生產(chǎn)目標管理制度
- 領導干部和公務員法律知識考試題庫含參考答案
- 2025年內蒙古呼倫貝爾家庭教育協(xié)會招聘考試筆試試題(含答案)
- 2025年湖南邵陽北塔區(qū)區(qū)外選調教師考試筆試試題(含答案)
- 老年護理緒論課件
- 老師課件自我介紹
- 老師安全培訓課件
- 老子思想課件
- 材料化學建模合同
- 基于任務引領的小學語文閱讀思維層級發(fā)展與實踐研究-以部編版五年級上冊《獵人海力布》為例
- eps泡沫生產(chǎn)工藝技術
- 施工現(xiàn)場安全管理提升措施
- 開封網(wǎng)約車考試試題及答案
- 金華出租車從業(yè)資格證模擬考試題
- 計算機操作系統(tǒng)教程(第3版)電子素材
- 復方電解質醋酸鈉葡萄糖注射液-藥品臨床應用解讀
- 水產(chǎn)養(yǎng)殖行業(yè)營銷策略方案
- 廠房分布式光伏系統(tǒng)施工進度計劃橫道圖
- 廣州市荔灣廣雅新初一分班(摸底)語文模擬試題(5套帶答案)
- 社會工作流程圖
評論
0/150
提交評論