Ⅰ 軟體工程 簡答題 什麼是軟體配置管理
軟體配置管理(Software Configuration Management,SCM)是一種標識、組織和控制修改的技術。軟體配置管理應用於整個軟體工程過程。在軟體建立時變更是不可避免的,而變更加劇了項目中軟體開發者之間的混亂。SCM活動的目標就是為了標識變更、控制變更、確保變更正確實現並向其他有關人員報告變更。從某種角度講,SCM是一種標識、組織和控制修改的技術,目的是使錯誤降為最小並最有效地提高生產效率。
Ⅱ 計算機軟體工程簡答題求做
軟體工程包括三個要素:方法、工具和過程。
軟體工程方法為軟體開發提供了「如何做」的技術。它包括了多方面的任務,如項目計劃與估算、軟體系統需求分析、數據結構、系統總體結構的設計、演算法過程的設計、編碼、測試以及維護等。
軟體工具為軟體工程方法提供了自動的或半自動的軟體支撐環境。目前,已經推出了許多軟體工具,這些軟體工具集成起來,建立起稱之為計算機輔助軟體工程(CASE)的軟體開發支撐系統。CASE將各種軟體工具、開發機器和一個存放開發過程信息的工程資料庫組合起來形成一個軟體工程環境。
軟體工程的過程則是將軟體工程的方法和工具綜合起來以達到合理、及時地進行計算機軟體開發的目的。過程定義了方法使用的順序、要求交付的文檔資料、為保證質量和協調變化所需要的管理、及軟體開發各個階段完成的里程碑。
軟體工程是一種層次化的技術。任何工程方法(包括軟體工程)必須以有組織的質量保證為基礎。全面的質量管理和類似的理念刺激了不斷的過程改進,正是這種改進導致了更加成熟的軟體工程方法的不斷出現。支持軟體工程的根基就在於對質量的關注。
2. 1.P(Plan)軟體規格說明
2.D(Do)軟體開發
3.C(Check)軟體確認
4A(Action)軟體演進
3.軟體開發模型(Software Development Model)是指軟體開發全部過程、活動和任務的結構框架.
演化模型主要針對事先不能完整定義需求的軟體開發。用戶可以給出待開發系統的核心需求,並且當看到核心需求實現後,能夠有效地提出反饋,以支持系統的最終設計和實現。軟體開發人員根據用戶的需求,首先開發核心系統。當該核心系統投入運行後,用戶試用之,完成他們的工作,並提出精化系統、增強系統能力的需求。軟體開發人員根據用戶的反饋,實施開發的迭代過程。第一迭代過程均由需求、設計、編碼、測試、集成等階段組成,為整個系統增加一個可定義的、可管理的子集。 在開發模式上採取分批循環開發的辦法,每循環開發一部分的功能,它們成為這個產品的原型的新增功能。於是,設計就不斷地演化出新的系統。 實際上,這個模型可看作是重復執行的多個「瀑布模型」。 4. 結構化分析方法(Structured Method)是強調開發方法的結構合理性以及所開發軟體的結構合理性的軟體開發方法。結構是指系統內各個組成要素之間的相互聯系、相互作用的框架。結構化開發方法提出了一組提高軟體結構合理性的准則,如分解與抽象、模塊獨立性、信息隱蔽等。針對軟體生存周期各個不同的階段,它有結構化分析(SA)、結構化設計(SD)和結構化程序設計(SP)等方法。1.打開visio,在visio里選擇創建框圖
2.拉八個圓圈,並調整大小和形狀
3.選中單箭頭,輸入一定的箭頭(注意,拉過去的箭頭都是雙向的,要選中雙向箭頭/右擊/箭頭向右)
4雙擊箭頭中間就可以編輯想要的文字(要調整相應的文本格式)。
所得圖形如下圖第二圖示:
1.選擇創建基本流程圖
2.拉足夠多個流程和箭頭(箭頭要稍作變化,先選中連接線工具,然後右擊選直線連接線)
3.雙擊相應位置,編輯想要輸入的文字
據上圖,所得圖如下示:
Ⅲ 軟體工程試題,誰知道答案
一, 單項選擇題(每題1分,共10分):
1. ( ) 計算機系統就是:
A) 主機,顯示器,硬碟,軟碟機,列印機等.
B) CPU,存儲器,控制器,I/O介面及設備.
C) 計算機硬體系統和軟體系統.
D) 計算機及其應用系統.
2.( )產生軟體危機的原因主要與兩個方面的問題有關:
A) 軟體在計算機中很難識別,存在磁碟中也看不到.
B) 軟體設計對人的智商要求很高,也要求很高的資金投入.
C) 軟體產品本身的特點與其它工業產品不一樣,而且在軟體的開發和維護過程中用
的方法不正確.
D) 軟體很難理解,硬體也很復雜.
3.( )軟體開發瀑布模型中的軟體定義時期各個階段依次是:
A) 可行性研究,問題定義,需求分析.
B) 問題定義,可行性研究,需求分析.
C) 可行性研究,需求分析,問題定義.
D) 以上順序都不對.
4.( )軟體維護的四類維護活動是:
A) 改正性維護,適應性維護,完善性維護和預防性維護.
B) 適應性維護,完善性維護,搶救性維護和輔助性維護.
C) 改正性維護,適應性維護,完善性維護和輔助性維護.
D) 適應性維護,完善性維護,搶救性維護和預防性維護.
5.( ) 可行性研究主要從以下幾個方面進行研究:
A) 技術可行性,經濟可行性,操作可行性.
B) 技術可行性,經濟可行性,系統可行性.
C) 經濟可行性,系統可行性,操作可行性.
D) 經濟可行性,系統可行性,時間可行性.
6.( ) 系統邏輯模型主要由以下內容:
A) 數據流程圖,數據字典,簡要的演算法描述.
B) 程序流程圖,Jackson圖,IPO圖.
C) 數據流程圖,數據字典,ER圖.
D) Jackson圖,ER圖,IPO圖.
7. ( ) 耦合是對軟體不同模塊之間互連程度的度量.各種耦合按從強到弱排列如下:
A) 內容耦合,控制耦合,數據耦合,公共環境耦合.
B) 內容耦合,控制耦合,公共環境耦合,數據耦合.
C) 內容耦合,公共環境耦合,控制耦合,數據耦合.
D) 控制耦合,內容耦合,數據耦合,公共環境耦合.
8. ( ) 在詳細設計階段所使用到的設計工具是:
A) 程序流程圖,PAD圖,N-S圖,HIPO圖,判定表,判定樹.
B) 數據流程圖,Yourdon 圖,程序流程圖,PAD圖,N-S圖,HIPO圖.
C) 判定表,判定樹,數據流程圖,系統流程圖,程序流程圖,PAD圖,N-S圖.
D) 判定表,判定樹,數據流程圖,系統流程圖,程序流程圖,層次圖.
9. ( ) 按照軟體工程的原則,模塊的作用域和模塊的控制域之間的關系是:
A) 模塊的作用域應在模塊的控制域之內.
B) 模塊的控制域應在模塊的作用域之內.
C) 模塊的控制域與模塊的作用域互相獨立.
D) 以上說法都不對.
10. ( ) 包含所有可能情況的測試稱為窮盡測試.下面結論成立的是:
A) 只要對每種可能的情況都進行測試,就可以得出程序是否符合要求的結論.
B) 一般來說對於黑盒測試,窮盡測試是不可能作到的.
C) 一般來說對於白盒測試,窮盡測試是不可能作到的.
D) 在白盒測試和黑盒測試這兩個方法中,存在某一個是可以進行窮盡測試的.
二, 填空題(每題1分,共10分)
1.軟體危機是指在( )所遇到的一系列嚴重問題.
2.在軟體開發的各個階段經過階段評審後的文檔和程序代碼成為( ).
3.結構程序設計的基本思想是( ).
4.總體設計的第二項任務是設計軟體的結構,即確定( ).
5.描繪物理系統的傳統工具是( ).
6.如果模塊內所有元素都使用同一個輸入數據和產生同一個輸出,稱為( )內聚.
7.數據流程圖按照信息流的類型主要分為( )兩種.
8.( )年,( )和( )證明了SISO程序只需要三種基本控制結構.
9. 從應用特點分類,高級語言主要分為( ),( )和( )三類.
10. 黑盒測試又稱為( ),白盒測試也稱為( ).
三, 多項選擇題(以下各題均有兩個以上的正確答案.將正確答案的標號填入各題前面括弧
內,注意多選或少選該題均不得分,每題2分,共20分):
1.( )軟體開發各個階段所耗費的時間或工作量是:
A) 可行性研究佔5%;
B) 綜合測試佔40%;
C) 設計階段在所有開發階段所佔的比例最大.
D) 編碼和單元測試佔20%.
E) 以上說法都不對.
2.( )對軟體開發與維護,以下觀點是正確的:
A) 為了加快開發速度,可以一邊寫程序,一邊設計文檔.
B) 對於軟體而言,程序和軟體配置成分是同等重要的,不能重此偏0.
C) 把軟體漫長的生命周期劃分為若干個階段的出發點是降低開發的困難程度和
簡化復雜性.
D) 可行性研究的主要任務就是確定軟體項目的工程規模和目標.
E) 面向對象的方法學比傳統的軟體開發方法開發軟體容易,開發效率提高.
3.( ) 對於以下圖形工具的作用,
A) 數據流程圖和數據字典共同構成軟體的高層數據模型.
B) 層次圖是用來描述軟體結構的,不能用於描述數據結構.
C) IPO圖能方便地描繪輸入數據,對數據的處理和輸出數據的關系,它是美國微
軟公司發明並逐漸發展完善起來的.
D) ER圖描述現實世界中的實體,不涉及這些實體在系統中的實現方法.
E) Yourdon圖實際上也是結構圖,所以它與層次方框圖是等價的.
4.( ) 面向數據結構的設計方法有:
A) Jackson方法.
B) Warnier方法.
C) Halstead方法.
D) PAD方法.
E) G. M y e r s方法.
5.( )以下測試方法是白盒測試方法的是:
A) 判定覆蓋和邊界值分析法.
B) 等價劃分和錯誤推測法.
C) 路徑覆蓋和判定/條件覆蓋法.
D) 條件組合覆蓋和語句覆蓋法.
E) 條件覆蓋和錯誤推測法.
6.( )以下關於集成測試的論述,正確的是:
A) 先對每個模塊分別測試,然後統一組裝成軟體系統的方法稱為非漸增式測試.
B) 自頂向下的集成測試本質上是漸增式測試方法.
C) 存根模塊是漸增式測試方法中使用的,在非漸增式測試中也用不到樁模塊.
D) 一般來說,存根模塊和樁模塊在用過以後,不會作為軟體的正式模塊而存在.
E) 由於是對程序進行測試,測試方案的設計一般在詳細設計階段完成以後才進行.
7. ( ) 對於程序設計,正確的陳述是:
A) 為了減少程序的長度,最好不要在程序中增加註釋.
B) 變數名以簡潔為好,名字太長了難以理解,增加了程序的復雜性.
C) 程序語句要求體現層次性,以使結構清晰明顯.
D) 數據結構的組織和復雜程度在設計期間確定,但數據說明的風格是在寫程序時確
定的.
E) 對所有的輸入數據都要進行檢驗,以便確定其合法性.
8. ( ) 內聚標志一個模塊內各個元素彼此結合的緊密程度.
A) 內聚是信息隱蔽和局部化概念的自然擴展.理想內聚的模塊只做臆見事情.
B) 一個模塊所包含的任務必須在同一段時間內執行,該模塊的內聚為時間內聚.
C) 一個模塊內的處理元素是相關的,必須以特定次序執行,稱為過程內聚.
D) 順序內聚和功能內聚是高內聚,而偶然內聚和邏輯內聚是低內聚.
E) 時間內聚,通信內聚,過程內聚是中等程度的內聚.
9. ( )McCabe方法對程序復雜程度的定量度量的結果稱為程序的環行復雜度,
其計算公式是:V(G)=m-n+p.
A) 應用McCabe方法的前提是對應的程序圖變換成強連通圖.
B) V(G)代表程序圖G的線性無關環的個數.
C) 一般對於結構化程序,p恆等於1.
D) m是有向圖G中的弧數.
E) n是有向圖G中的節點數.
10.( )詳細設計階段的根本目標是確定應該怎樣具體的實現所要求的系統.
A) 詳細設計階段不具體的編寫程序.
B) 詳細設計階段的設計結果基本決定了最終的程序代碼質量.
C) 詳細設計的目標不僅要邏輯上正確的實現每個模塊的功能,而且對每個模塊的處
理過程也應確保簡明易懂,清晰具體.
D) 詳細設計的關鍵技術是結構程序設計技術.
四, 基本概念題(每題2分,共10分)
1. 軟體工程.
2. 軟體測試.
3. 數據流圖及其組成和作用.
4. 結構化分析方法.
5. 信息隱蔽原理.
五, 敘述分析題:(每題5分,共20分)
1. 試述對用戶要求沒有完整的認識就匆忙著手編寫程序是許多軟體開發工程失敗的主要
原因.
2. 簡述軟體可靠性和可用性的定義,平均無故障時間的計算公式及應用.
3. 簡述軟體重用的定義,范圍和主要技術.
4. 說明軟體測試在軟體開發階段的地位和作用.比較測試和調試的異同點.
六, 設計,作圖,計算題(每題5分,共30分)
1.以下是某系統的數據流程圖,請將其轉換成相應的SC圖.
2. 研究下面的偽碼程序,完成以下問題:
START
INPUT X,N
DIMENSION A(N),F(N)
DO I=1 TO N
INPUT F(I)
END DO
K=0
DO WHILE (KA(K)=0
DO J=1 TO N-K
A(K)=A(K)+F(J)*F(J+K)/(N-K+1)
END DO
PRINT K*X,A(K)
K=K+1
END DO
STOP
A) 畫出等價的控制流程圖,.
B) 判斷是否結構化的,說明理由.
C) 寫出對應的PAD圖.
D) 用McCabe方法計算環行復雜度.
3. 為方便儲戶,某銀行擬開發計算機儲蓄系統.儲戶填寫的存款單或取款單由業務員鍵
入系統.如果是存款,系統記錄存款人姓名,住址,存款類型,存款日期,利率等信
息,並印出存款單給儲戶;如果是取款,系統計算利息並印出利息清單給儲戶.
1)畫出該系統的高層數據流程圖和第二層細化流程圖.
2)對數據流定義數據字典.
4. 某航空公司規定,乘客可以免費托運不超過20公斤的行李.當行李重量超過20公斤
時,對頭等艙的乘客超重部分每公斤收費4元,其它艙的乘客收費6元.對殘疾乘客超重部分
在艙位等次相同的情況下收費減半.用判定表描述行李托運費的處理過程.
5.設計程序,先讀入三個整數值代表一個三角形的三條邊,然後根據這三個值判斷該三
角形屬於不等邊,等腰或等邊三角形中的哪一種.請設計滿足判定/條件覆蓋標準的測試
方案.
6.設模塊RootForSquare(int a,int b,int c,int *x,int *y) 的功能是一元二次方程求根.請使用
等價劃分法來設計測試方案.