日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软件工程(吕云翔第二版)部分简答题答案

發布時間:2023/12/10 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软件工程(吕云翔第二版)部分简答题答案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡答題

做過的練習,答案不一定對

第一章

  • 與計算機硬件相比,計算機軟件有哪些特點?
  • 答:①軟件具有抽象性、②軟件的生產與硬件的制造不同、③軟件會退化、④軟件的開發尚未完全擺脫手工藝的開發方式、⑤軟件開發和運行必須依附于特定的計算機系統環境

  • 為什么說軟件工程的發展可以在一定程度上解決軟件危機的各種弊端?
  • 請簡述軟件工程的基本原則。
  • 答:①用分階段的生命周期計劃進行嚴格的管理

    ②堅持進行階段評審

    ③實行嚴格的產品控制

    ④采用現代程序設計技術

    ⑤軟件工程結果應能被清楚地審查

    ⑥開發小組的人員應該少而精

    ⑦承認不斷改進軟件工程實踐的必要性

  • 請簡述軟件工程研究的內容。
  • 請簡述軟件工三要素
  • 答:過程、方法、工具

  • 請簡述軟件工程的目標。
  • 通常有哪幾種軟件開發方法?
  • 答:①結構化方法

    ②面向數據結構方法

    ③面向對象方法

    ④形式化方法

  • 請列舉你所知道的軟件工程
  • 第二章

  • 如何理解軟件生命周期的內在特征?
  • 答:軟件產品的生命周期是指從設計該產品的構想開始,到軟件需求的確定、軟件設計、軟件實現、產品測試與驗收、投入使用以及產品版本的不斷更新,到最終該產品被市場淘汰的全過程。軟件生命周期這個概念從時間的角度將軟件的開發和維護的復雜過程分解為了若干個階段,每個階段都完成特定的相對獨立的任務。由于每個階段的任務相對于總任務難度會大幅度降低,在資源分配時間把握和項目管理上都會比較容易控制。合理地劃分軟件生命周期的各個階段,使各個階段之間既相互區別又相互聯系,為每個階段賦予特定的任務。

  • 請對比瀑布模型、快速原型模型、增量模型和螺旋模型
  • 在統一軟件開發過程模型中核心工作流程包含哪些?
  • 答:業務建模、需求、分析和設計、實現、測試和部署

  • 當需求不能一次搞清楚,且系統需求比較復雜時應選用哪種開發模型比較適合?
  • 敏捷過程的核心價值觀有哪些?它對傳統方法的“反叛”體現在哪些方面?
  • 答:核心價值觀:

    ①個體與交互高于過程和工具

    ②可運行軟件高于詳盡的文檔

    ③與客戶協作高于合同(契約)

    ④對變更及時響應高于遵循計劃

    體現:

    敏捷方法對傳統方法的“反叛”體現在以人為中心,不再依靠文檔來控制過 程,認為傳統過程過于僵化,文檔繁瑣,主張對傳統過程“瘦身”,在上述價 值觀的支配下,做到能夠為準。

  • 什么是軟件過程?它與軟件工程方法學有何關系?
  • 某大型企業計劃開發一個“綜合信息管理系統”,該系統涉及銷售、供應、財務、生產人力資源等多個部門的信息管理。該企業的想法是按部門優先級別乏別逐個實現,邊應用邊開發。對此,需要一種比較合適的過程模型。請對這個過程模型做出符合應用需要的選擇,并說明選擇理由。
  • 第四章

  • 如何理解需求分析的作用和重要性
  • 答:需求分析是一個非常重要的過程,它完成的好壞直接影響了后續軟件開發的質量。

  • 常用的需求獲取的方法有哪些?對比各種方法的優缺點。
  • 如何理解結構化需求分析方法的基本思想
  • 答:結構化的需求分析方法是一種面向數據流的需求分析方法,其中數據作為獨立實體轉換,數據建模定義了數據的屬性和關系,操作數據的處理建模表明當數據在系統流動時處理如何轉換數據。

  • 請簡述數據流圖的作用
  • 請簡述數據字典的作用。
  • 答:數據字典用于定義數據流圖中各個圖元的具體內容,為數據流圖中出現的圖形元素做出確切的解釋。

  • 請簡述E-R圖的作用。
  • 請簡述狀態圖的作用。
  • 第五章

  • 請簡述軟件設計與需求分析的關系。
  • 答:軟件設計就是要把需求規格說明書中歸納的需求轉換為可行的解決方案,并把解決方案反映到設計說明書里。需求分析回答軟件系統能“做什么”的問題,而軟件設計就是要解決“怎么做的問題”。

  • 請簡述軟件設計的目標和任務。
  • 請簡述在軟件設計的過程中需要遵循的規則。
  • 軟件設計如何分類,分別有哪些活動?
  • 什么是模塊、模塊化軟件設計為什么要模塊化?
  • 答:模塊是數據說明、可執行語句等程序對象的集合,是構成程序的基本構件,可以被單獨命名并通過名字來訪問。

    模塊化是把系統或程序劃分為獨立命名并且可以獨立訪問的模塊,每個模塊完成一個特定的子功能。

    軟件模塊化的目的是建立可重用的軟件組件,在不需要修改或僅作少量修改的情況下,可再次用來組建新的軟件系統,提高軟件的開發周期和可靠性。

  • 請簡述結構化設計的優點
  • 請簡述面向數據流的設計方法的主要思想。
  • 答:主要是指依據一定的映射規則,將需求分析階段得到的數據描述、系統的輸入端到輸出端所經歷的一系列變換或處理的數據流圖轉換為目標系統的結構描述

  • 請簡述用戶界面設計應該遵循的原則。
  • 改進的Jackson圖與傳統的Jackson圖相比有哪些優點?
  • 答:可以清晰地表示層次結構,易于對自頂向下的結構進行描述;

    結構易懂、易用,并且比較直觀、形象;

    不僅可以表示數據結構,也可以表示程序結構;

  • 為什么說“高內聚、低耦合”的設計有利于提高系統的獨立性?
  • 第六章

  • 請簡述面向對象的基本概念。
  • 與結構化開發過程相比,?為什么面向對象能更真實地反映客觀世界?
  • 什么是面向對象方法?面向對象方法的特點有哪些
  • 答:面向對象的方法是為了模擬現實世界,使各種不同的現實世界系統在計算機中得以實現,進而為工作、學習、生活提供幫助

    面向對象的特點:

    • 把數據和操作封裝在一起,形成對象。對象是構成軟件系統的基本構件
    • 把特征相似的對象抽象為類
    • 類之間可以存在繼承或被繼承的關系,形成軟件系統的層次結構
    • 對象類之間通過發送消息進行通信
    • 將對象的私有信息封裝起來。
  • 什么是類?類與傳統的數據類型有什么關系?
  • 與傳統的軟件工程方法相比,面向對象的軟件工程方法法有哪些優點?
  • UML的作用和優點有哪些?
  • 答:UML的作用:UML是一種通用的可視化建模語言,可以用來描述、可視化、構造和文檔化軟件密集系統的各種工作

    UML的優點:

    • UML語言使系統建模過程標準化,統一化,規范化。
    • UML在整個軟件開發過程中采用相同的概念和表示方法,在不同的開發階段,不必轉換概念和表示方法,避免了傳統軟件開發方法的兩個鴻溝。
    • UML采用圖形化的表現形式。產生的模型易于理解,易于開發人員與用戶之間的溝通,從而能夠及時得到用戶的反饋信息。
    • 用UML進行系統建模所得到的建模制品不僅僅包括各種模型框圖,還有大量豐富的文檔,這些文檔給系統后期的維護工作帶來了便捷。
    • UML不是一門程序設計語言,但可以使用代碼生成工具將UML模型轉換為多種程序設計語言代碼,或使用反向生成工具將程序源代碼轉換為UML模型。
  • 如何著手從自然語言描述的用戶需求中畫出用例圖?
  • 用例腳本有何作用?
  • 類之間的外部關系有至有幾種類型?每種關系表達什么語義
  • 答:類之間的外部關系:關聯、依賴、泛化、實現

    關聯:表達模型元素間的一種語義關系

    依賴:表示的兩個元素之間語義上的聯系

    泛化:描述類的一般-特殊關系

    實現:將一個模型連接到另外一個模型

    第七章

  • 對比面向對象需求分析方法和結構化需求分析方法。
  • 類之間的外部關系有幾種類型?每種關系表達什么語義?
  • 請簡述面向對象分析的原則。
  • 請簡述面向對象分析的過程。
  • 答:①首先要找到系統的操作者,既用例的參與者

    ②可以把參與者執行的每一個系統功能都看作一個用例

    ③確定了系統的所有用例之后,就可以開始識別目標系統中的對象和類了,把具有相似屬性和操作的對象定義為了一個類

  • 什么是動態模型?
  • 答:動態模型描述對象和關系的狀態、狀態轉換的觸發事件、對象的服務(行為)。

  • 什么是對象模型?
  • 答:對象模型描述了現實世界中的“類與對象”以及它們之間的關系,表示了目標系統的靜態數據結構

  • 什么是功能模型
  • 答:功能模型表明了系統中數據之間的依賴關系,以及有關的數據處理功能,它由一組數據流圖組成

    第八章

  • 什么是軟件體系結構?
  • 軟件體系結構的作用體現在哪些方面?
  • 答:規范軟件開發的基礎結構便于開發人員與用戶的溝通;模塊化、層次化設計,有利于減少返工提高效率便于系統開發前期、后期的籌備與服務

  • 典型的體系結構風格有哪些?它們各自有什么特點?
  • 什么是軟件質量屬性?
  • 答:軟件質量屬性是指軟件系統在其生存周期過程中所表現出的各種特征

  • 客戶機/服務器體系結構有什么特點
    • 通過合理地劃分三層結構,使之在邏輯上保持獨立,提高系統的可維護和可擴展性
    • 更靈活地選用相對應的平臺和應用系統,使之在處理負荷能力上與處理特性上分別適應各層的要求并且這些平臺和組成部分可以具體良好的可升級性和開放性
    • 應用的各層可以獨立地并行開發每層可以根據自己的特點選用合適的開發語言
    • 安全相對較高,應用層屏蔽了客戶直接訪問數據庫的權利,使得未授權用戶或黑客難以繞應用層直接獲取敏感數據,為數據的安全管理提供了系統結構的支持
  • MVC模型有什么特點?
  • 答:MVC可以最大化地重用代碼,且靈活性極高

  • 什么是設計模式?常用的設計模式有哪些?
  • 良好的軟件體系結構設計有什么好處?
  • 第九章

  • 請比較結構化軟件設計方法和面向對象軟件設計方法
  • 請簡述面向對象設計的啟發規則。
  • 請簡述面向對象的設計原則
  • 答:①模塊化、②抽象化、③信息隱藏、④低耦合、⑤高內聚、⑥復用性

  • 請簡述系統設計和對象設計。
  • 答:系統設計關注于確定實現系統的策略和目標系統的高層結構。

    對象設計以問題域的對象設計為核心,其結果是一個詳細的對象模型

    第十章

  • 在選擇編程語言時,通常要考慮哪些因素?
  • 請簡述編程風格的重要性。要形成良好的編程風格可以從哪些方面做起?
  • 答:重要性:具有良好編程風格的源程序具有較強的可讀性、可維護性、同時還能提高團隊開發的效率。良好的個人編程風格是一個優秀程序員素質的一部分。

    <2>①版權和版本聲明、②程序版本、③注釋、④命名規則、⑤數據說明、⑥語句構造、⑦輸入\輸出、⑧效率

  • 編程語言主要有哪幾類?總結每類語言的優缺點
  • 答:①機器語言

    優點:執行速度快

    缺點:對程序員的要求較高,花費時間長,直觀性差,容易出錯

    ②匯編語言

    優點:可高效地訪問、控制計算機的各種硬件設備

    缺點:不能直接識別匯編語言

    ③高級語言

    優點:易懂、易記、易改、移植性較強

    缺點:經過解釋或編譯才能被計算機識別、執行,其效率比匯編語言還低

    ④超高級語言

    優點:易懂、易記、易改、移植性較強

    缺點:經過解釋或編譯才能被計算機識別、執行,其效率比匯編語言還低

  • 對標識符命名時,要注意哪些原則?
  • 為什么要對源程序進行注釋?
  • 答:注釋有利于軟件開發人員之間以及開發人員和用戶之間進行交流的重要途徑,有利于日后的軟件維護。

    總結

    以上是生活随笔為你收集整理的软件工程(吕云翔第二版)部分简答题答案的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。