文章目錄
- 試題一 論系統需求分析方法
- 試題二 論系統自動化測試及其應用
- 試題三 論處理流程設計方法及應用
- 試題四 論企業智能運維技術與方法
試題一 論系統需求分析方法
系統需求分析是開發人員經過調研和分析,準確理解用戶和項目 的功能、性能、可靠 性等要求,將用戶非形式的訴求表述轉化為完整的需求定義,從而確定系統必須做什么的過 程。系統需求分析具體可 分為功能性需求、非功能性需求與設計約束三個方面。
請圍繞“系統需求分析方法”論題,依次從以下三個方面進行論述。
- 概要敘述你參與管理和開發的軟件項目,以及你在其中所擔任 的主要工作。
- 詳細論述系統需求分析的主要方法。
- 結合你具體參與管理和開發的實際軟件項目,說明是如何使用 系統需求分析方法進
行系統需求分析的,說明具體實施過程,以及應用效果。
【解析】
需求分析的方法主要有 SA 方法、OOA 方法和面向問題域的 PDOA 方法。
1.SA 方法
SA 方法的基本思想是自頂向下,逐層分解,把一個大問題分解成 若干個小問題,每個 小問題再分解成若干個更小的問題。經過逐層分解,每個最低層的問題都是足夠簡單、容易 解決的,于是復雜的問題也就迎刃而解了。
2.OOA 方法
OOA 的基本任務是運用 OO 方法,對問題域進行分析和理解,正 確認識其中的事物及 它們之間的關系,找出描述問題域和系統功能所 需的類和對象,定義它們的屬性和職責, 以及它們之間所形成的各種聯系。最終產生一個符合用戶需求,并能直接反映問題域和系統 功能的 OOA 模型及其詳細說明。
3.PDOA 方法
與 SA 和 OOA 相比,PDOA 更多地強調描述,而少強調建模。它的描述大致分為以下
兩個部分: (1)關注問題域。用一個文檔對含有的問題域進行相關的描述,并列出需要在該域中
求解的問題列表,也就是需求列表。只有這個文檔是在分析時產生的。
(2)關注需求行為。用一個文檔對解決問題的系統中的需求行為進行描述。該文檔將在需求定義階段完成。在 PDOA 方法中,對整個過程有著一個清晰的定義: 1:收集基本的信息并開發問題框架,以建立問題域的類型。 2:在問題框架類型的指導下,進一步收集詳細信息,并給出一個問題域相關特性的描述。 (3)基于以上兩點,收集并用文檔說明新系統的需求。
試題二 論系統自動化測試及其應用
軟件系統測試是在將軟件交付給客戶之前所必須完成的重要步驟 之一,目前,軟件測 試仍是發現軟件缺陷的主要手段。軟件系統測試 的對象是完整的、集成的計算機系統,系 統測試的目的是驗證完整的 軟件配置項能否和系統正確連接,并滿足系統設計文檔和軟件 開發合 同規定的要求。系統測試工作任務難度高,工作量大,存在大量的重 復性工作,因 此自動化測試日益成為當前軟件系統測試的主要手段。
請圍繞“系統自動化測試及其應用”論題,依次從以下三個方面進行論述。
- 概要敘述你參與管理和開發的軟件項目,以及你在其中所擔任的主要工作。
- 詳細論述系統自動化測試的主要工作內容及優缺點。
- 結合你具體參與管理和開發的實際項目,說明是如何進行系統自動化測試的,說明 具體實施過程及應用效果。
【解析】 自動化測試是把以人為驅動的測試行為轉化為機器執行的一種過程。通常,在設計了測試用例并通過評審之后,由測試人員根據測試 用例中描述的規程一步步執行測試, 得到實際結果與期望結果的比 較。在此過程中,為了節省人力、時間或硬件資源,提 高測試效率,便引入了自動化測試的概念。
自動化測試的過程可以分為:
1、自動化測試需求分析:此過程需要確定自動化測試的范圍,以及相應的測試用 例、測試數據,并形成詳細的文檔,以便于自動化測試框架的建立。
2、自動化測試框架的搭建:自動化測試框架類似于軟件架構,定義了在使用該套 腳本時需要調用哪些文件、結構,調用的過程,以及文件結構如何劃分。自動化 測試 框架的典型要素有公用的對象、公用的環境、公用的方法和測試數據。
試題三 論處理流程設計方法及應用
處理流程設計(Process Flow Design,PFD) 是軟件系統設計的重 要組成部分,它的主 要目的是設計出軟件系統所有模塊及它們之間的 相互關系,并具體設計出每個模塊內部的 功能和處理過程,包括局部 數據組織和控制流,以及每個具體加工過程和實施細節,為實 現人員提供詳細的技術資料。每個軟件系統都包含了一系列核心處理流程, 對這些處理流 程的理解和設計將直接影響軟件系統的功能和性能。因此,設計人員需要認真掌握處理流程 的設計方法。
請圍繞“處理流程設計方法及應用”論題,依次從以下三個方面進行論述。
- 簡要敘述你參與的軟件開發項目,以及你所承擔的主要工作。
- 詳細說明目前主要有哪幾類處理流程設計工具,每個類別至少詳細說明一種流程設
計工具。 - 根據你所參與的項目,說明是具體采用哪些流程設計工具進行 流程設計的,實施效
果如何。
【解析】
其中常見的圖形工具包括程序流程圖、IPO 圖、N-S 圖、問題分析圖、判定樹,表格工具包括判定表,語言工具包括過程設計語言等。
1.程序流程圖:程序流程圖用一些圖框表示各種操作,它獨立于任何一種程序設計語言,比較直觀、清晰,易于學習掌握。但也存在一些嚴重的缺 點,例如,程序流程 圖所使用的符號不夠規范,常常會使用一些習慣性用法。
2.IPO 圖:IPO 圖是由 IBM 公司發起并逐步完善的一種流程描述工具。系統分析階段產生的 數據流程圖經轉換和優化后形成的系統模塊結構圖的過 程中將產生大量的模塊,分析 與設計人員應為每個模塊寫一份說明, 即可用 IPO 圖來對每個模塊進行表述,IPO 圖 用來描述每個模塊的輸入、輸出和數據加工。
3.N-S 圖:為避免流程圖在描述程序邏輯時的隨意性與靈活性,美國學者 I.Nassi 和 B.Shneiderman 在 1973 年提出了用方框代替傳統的程序流程 圖,通常把這種圖稱為 N-S 圖或盒圖,與程序流程圖類似,在 N-S 圖中 也包括 5 種控制結構,分別是順序型、 選擇型、WHILE 循環型(當型 循環)、UNTIL 循環型(直到型循環)和多分支選擇型,任何一個 N?S 圖都是這 5 種基本控制結構相互組合與嵌套的結果。
4.問題分析圖:問題分析圖是繼程序流程圖和 N-S 圖之后,又一種描述詳細設計 的工具,它由日 立公司于 1979 年提出,也是一種支持結構化程序設計的圖形工具。問題分析圖也包含 5 種基本控制結構,并允許遞歸使用。
5.過程設計語言:過程設計語言也稱為結構化語言或偽代碼,它是一種混合語言, 采用自然語言的 詞匯和結構化程序設計語言的語法,用于描述處理過 程怎么做,類似于編程語言。過 程設計語言用于描述模塊中算法和加工邏輯的具體細節,以便在開發人員之間比較精確 地進行交流。
6.判定表:對于具有多個互相聯系的條件和可能產生多種結果的問題,用結 構化語言描述則 顯得不夠直觀和緊湊,這時可以用以清楚、簡明為特征的判定表來描述。判定表采用表 格形式來表達邏輯判斷問題。
7.判定樹:判定樹也是用來表示邏輯判斷問題的一種常用的圖形工具,它用 樹來表達不同條 件下的不同處理流程,比語言、表格的方式更為直觀。
試題四 論企業智能運維技術與方法
智能運維(Artificial Intelligence for IT Operations,AIOps) 是將人工 智能應用于運維領 域,基于已有的運維數據(日志數據、監控數據、 應用信息等),采用機器學習方法來進 一步解決自動化運維難以解決 的問題。具體來說,智能運維在自動化運維的基礎上,增加 了一個基 于機器學習的智能決策模塊,控制監測系統采集運維決策所需的數 據,做出智能 分析與決策,并通過自動化腳本等手段去執行決策,以達到運維系統的整體目標。智能運維 能夠提高企業信息系統的預判能 力和穩定性,降低 IT 成本,提升企業產品的競爭力。
請圍繞“企業智能運維技術與方法”論題,依次從以下三個方面進 行論述。
1.概要敘述你參與管理與實施的軟件運維項目,以及你在其中所 擔任的主要工作。
2.智能運維主要從效率提高、質量保障和成本管理三個方面提升運維水平,其成熟程度可以分為嘗試應用、單點應用、串聯應用、能力完備和能力成熟五個級別,請任意選擇三 個成熟度級別,說明其在效率提升、質量保障和成本管理方面的特征。
3.結合你具體參與管理與實施的實際軟件系統運維項目,舉例說明如何采用智能運維 技術和方法提高運維效率、保障運維質量并降低 運維成本,實施效果如何。在智能運維過 程中都遇到了哪些具體問題,是如何解決的。
【解析】 智能運維是指通過機器學習等人工智能算法,自動地從海量運維數據中學習并總結規則,并做出決策的運維方式。
智能運維概念最早由 Gartner 提出,它是將人工智能科技融入運維 系統中,以大數據和機器學習為基礎,從多種數據源中采集海量數據 (包括日志、業務數據、系統 數據等)進行實時或離線分析,通過主動性、人性化和動態可視化,增強傳統運維的能力。
AIOps 能力分級為:
(1)嘗試應用。開始嘗試應用 AI 能力,還無較成熟單點應用。
(2)單點應用。具備單場景的 AI 運維能力,可以初步形成供內部使用的學習件。
(3)串聯應用。有由多個單場景 AI 運維模塊串聯起來的流程化 AI 運維能力,可以對外提供可靠的運維 AI 學習件。
(4)能力完備。主要運維場景均已實現流程化免干預 AI 運維能力,可以對外提供可靠的 AIOps 服務。
(5)能力成熟。有核心中樞 AI,可以在成本、質量、效率間從 容調整,達到業務不同生命周期對三個方面不同的指標要求,可實現多目標下的最優或按需最優。