如何評測軟件工程知識技能水平


        這學期,我們學習了高級軟件工程課程,老師讓我們自己出期末考試的題目,這也是一次加深對於軟件工程這門課程理解的機會。

  • 軟件工程知識技能水平體現在哪些方面

        ①編程能力:作為一個軟件工程師,那么肯定要會編程的,編程能力是對於語言的掌握程度,軟件工程師要通過熟練使用一些編程語言,把需要實現的功能通過編程實現,並且要理解語言的獨特特性,高效地編程。

        ②算法能力:能夠掌握、使用的算法越多,對於算法的理解越深,則能夠更加得心應手地實現各種功能,並且更高效,節約資源。

        ③團隊協作能力:軟件工程師並不是一個閉門造車的工作,軟件工程通常是一個龐大、復雜的工程,我們每一個軟件工程師通常只是龐大系統的一小部分,所以,我們一定要有合作的意識,把自己的工作與整體的工作保持協調,隨時准備交流、調整。此外,還要與客戶保持交流,理解客戶的需求,向客戶表達開發過程中可能實現的功能與不可行的部分,等等。

  • 這次測試的幾道題

 

        ①在結構化瀑布模型中,()定義的標准將成為軟件測試中的系統測試階段的目標。

        A、需求分析階段

        B、詳細設計階段

        C、概要設計階段

        D、可行性研究階段

        答:A。系統測試的目標是:通過與系統的需求規格說明進行比較,檢查軟件是否存在與系統規格說明不符合或與之矛盾的地方,從而驗證軟件系統的功能和性能等滿足規格說明所制定的要求。

 

        ②軟件可行性研究一般不考慮()。

        A、是否有足夠的人員和相關的技術來支持系統開發

        B、是否有足夠的工具和相關的技術來支持系統開發

        C、待開發軟件是否有市場、經濟上是否合算

        D、待開發的軟件是否會有質量問題

        答:D。可行性研究主要是從技術、經濟和社會三個方面對軟件項目的可行性進行分析。技術可行性研究是對技術解決方案的實用性、技術資源的可用性和設備條件做出評估。概括地說,就是要回答使用現有的技術資源是否能實現待開發的軟件系統的問題。其研究內容一般包括風險分析、資源分析和技術分析。經濟可行性研究要對項目的開發總成本與開發系統將帶來的經濟效益之間的差值進行度量,從經濟的角度去判斷是否值得為軟件開發項目進行投資。經濟可行性研究也叫做成本效益分析,簡單地說,只有開發系統的總成本小於將來系統投入使用后會帶來的總收益的軟件開發項目才值得進行下去。社會可行性研究從政策、法律和制度等社會因素方面考慮項目開發的合理性和意義。比如,項目是否與現行的某些國家政策相背離,是否會違反某些法律法規,是否不符合社會的倫理道德等。從上面的四個選項來看,顯然“待開發的軟件是否會有質量問題”不是軟件可行性研究所要考慮的,選擇D正確。

 

        ③()意味着一個相同的操作在不同的類中有不同的實現方式。

        A、多繼承

        B、封裝

        C、多態性

        D、類的復用

        答:C。多態性是指用同一個名字定義功能相近的不同函數。這就意味着即使操作的特定動作互有區別仍可用同樣的接口訪問。多態性是對象的一種能力,它可以在運行時刻根據傳遞的對象參數,決定調用哪一個對象的方法。這樣就可以不去考慮所有對象的類型,而可以在不同的類中按不同的方法實現。

        

        ④原型化方法是用戶和軟件開發人員之間進行的一種交互過程,適用於()系統。

        A、需求不確定的

        B、需求確定的

        C、管理信息

        D、決策支持

        答:A。本題考查軟件工程軟件開發模型方面的知識。原型模型又稱快速原型模型,它是增量模型的另一種形式。根據原型的不同作用,有三類原型模型:探索型原型(用於需求分析階段)、實驗型原型(主要用於設計階段)、演化型原型(主要用於及早向用戶提交一個原型系統)。 
  演化型主要針對事先不能完整定義需求的軟件開發。 軟件開發中的原型是軟件的一個早期可運行版本,它反映了最終系統的重要特性。

 

        ⑤某學校需要開發一個學生成績管理系統,教務人員可以通過該系統維護學生信息、課程信息和成績信息,學生可以隨時查詢自己的成績單,該系統的實體關系圖如下所示:

        

 

 

        答:不應該增加"教務人員",因為教務人員只是該系統的一個使用者,系統不處理其屬性信息。

  

                ⑥下面是一段求最大值的程序,其中datalist是數據表,n是datalist的長度。 

 

 

 

 

 

 

 

        (1)畫出該程序的控制流圖,並計算其McCabe環路復雜性。 

        答:控制流圖如下,McCabe環路復雜性為3。

        

 

 

 

 

 

 

 

 

 

 

 

 

 

        (2)用基本路徑覆蓋法給出測試路徑。

        答:測試路徑:Path1: ①→③ Path2: ①→②→④→⑥→… Path3: ①→②→⑤→⑥→… 

 

        (3)為各測試路徑設計測試用例。

        答:

         


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM