天天看點

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

作者:程式員茶館

第5章 資訊系統工程

資訊系統工程是用系統工程的原理、方法來指導資訊系統建設與管理的一門工程技術學科,它是資訊科學、管理科學、系統科學、計算機科學與通信技術相結合的綜合性、交叉性、具有獨特風格的應用學科。

5.1軟體工程

軟體工程是指應用計算機科學、數學及管理科學等原理,以工程化的原則和方法來解決軟體問題的工程,其目的是提高軟體生産率、提高軟體品質、降低軟體成本。電氣與電子工程師協會(Institute of Electrical and Electronics Engineers, IEEE)對軟體工程的定義是:将系統的、規範的、可度量的工程化方法應用于軟體開發、運作和維護的全過程及上述方法的研究。軟體工程由方法、工具和過程三個部分組成:

  1. 軟體工程方法是完成軟體工程項目的技術手段,它支待整個軟體生命周期;
  2. 軟體工程使用的工具是人們在開發軟體的活動中智力和體力的擴充與延伸,它自動或半自動地支待軟體的開發和管理,支待各種軟體文檔的生成;
  3. 軟體工程中的過程貫穿于軟體開發的各個環節,管理人員在軟體工程過程中,要對軟體開發的品質、進度和成本進行評估、管理和控制,包括人員組織、計劃跟蹤與控制、成本估算、品質保證和配置管理等。

5.1.1架構設計

軟體架構為軟體系統提供了一個結構、行為和屬性的進階抽象,由構件的描述、構件的互相作用(連接配接件)、指導構件內建的模式以及這些模式的限制組成。軟體架構不僅指定了系統的組織結構和拓撲結構,并且顯示了系統需求和構件之間的對應關系,提供了一些設計決策的基本原理。

軟體架構研究的主要内容涉及軟體架構描述、軟體架構風格、軟體架構評估和軟體架構的形式化方法等。解決好軟體的複用、品質和維護問題,是研究軟體架構的根本目的。

1軟體架構風格

軟體架構設計的一個核心問題是能否達到架構級的軟體複用,也就是說,能否在不同的系統中使用同一個軟體架構。軟體架構風格是描述某一特定應用領域中系統組織方式的慣用模式(Idiomatic Paradigm)。架構風格定義了一個系統“家族”,即一個架構定義、一個詞彙表和一組限制。

Garlan和Shaw對通用軟體架構風格進行了分類,他們将軟體架構分為:

資料流風格。資料流風格包括批處理序列和管道/過濾器兩種風格。

調用/傳回風格。調用/傳回風格包括主程式/子程式、資料抽象和面向對象,以及層次結構。

獨立構件風格。獨立構件風格包括程序通信和事件驅動的系統。

虛拟機風格。虛拟機風格包括解釋器和基于規則的系統。

倉庫風格。倉庫風格包括資料庫系統、黑闆系統和超文本系統。

2軟體架構評估

軟體架構評估可以隻針對一個架構,也可以針對一組架構。在架構評估過程中,評估人員所關注的是系統的品質屬性。

敏感點(SensitivityPoint)和權衡點(Trade-offPoint):敏感點是一個或多個構件(或之間的關系)的特性,權衡點是影響多個品質屬性的特性,是多個品質屬性的敏感點。

三類主要的評估方式,分别是基于調查問卷(或檢查表)的方式、基于場景的方式和基于度量的方式。這三種評估方式中,基于場景的評估方式最為常用。

的評估方式最為常用。

基于場景的方式主要包括:架構權衡分析法 (Architecture Trade-off Analysis Method, ATAM) 、軟體架構分析法 (Software Architecture Analysis Method, SAAM) 和成本效益分析法 (Cost Benefit 知 alysis Method, CBAM) 中。在架構評估中,一般采用刺激 (Stimulus) 、環境 (Environment) 和響應 (Response) 三方面來對場景進行描述。刺激是場景中解釋或描述項目于系人怎樣引發與 系統的互動部分,環境描述的是刺激發生時的情況,響應是指系統是如何通過架構對刺激做出反應的。

5.1.2需求分析

軟體需求是指使用者對新系統在功能、行為、性能、設計限制等方面的期望。根據IEEE的軟體工程标準詞彙表,軟體需求是指使用者解決問題或達到目标所需的條件或能力,是系統或系統部件要滿足合同、标準、規範或其他正式規定文檔所需具有的條件或能力,以及反映這些條件或能力的文檔說明。

1需求的層次

軟體需求就是系統必須完成的事以及必須具備的品質。需求是多層次的,包括業務需求、使用者需求和系統需求,這三個不同層次從目标到具體,從整體到局部,從概念到細節。品質功能部署(Quality Function Deployment, QFD)是一種将使用者要求轉化成軟體需求的技術,其目的是最大限度地提升軟體工程過程中使用者的滿意度。為了達到這個目标,QFD将軟體需求分為三類,分别是正常需求、期望需求和意外需求。

2需求過程

需求過程主要包括需求擷取、需求分析、需求規格說明書編制、需求驗證與确認等。

  1. 需求擷取 需求擷取是一個确定和了解不同的項目幹系人的需求和限制的過程。需求擷取是一件看上去很簡單,做起來卻很難的事情。需求擷取是否科學、準備充分,對擷取出來的結果影響很大,這是因為大部分使用者無法完整地描述需求,而且也不可能看到系統的全貌。是以,需求擷取隻有與使用者的有效合作才能成功。常見的需求擷取方法包括使用者訪談、問卷調查、采樣、情節串聯闆、聯合需求計劃等。
  2. 需求分析 在需求擷取階段獲得的需求是雜亂的。一個好的需求應該具有無二義性、完整性、一緻性、可測試性、确定性、可跟蹤性、正确性、必要性等特性。需求分析對已經擷取到的需求進行提煉、分析和審查,以確定所有的項目幹系人都明白其含義并找出其中的錯誤、遺漏或其他不足的地方。 為了便于了解問題域,現代軟體工程方法所推薦的做法是對問題域進行抽象,将其分解為若幹個基本元素,然後對元素之間的關系進行模組化。 使用結構化分析(Structured Analysis, SA)方法進行需求分析,其建立的模型的核心是資料字典。圍繞這個核心,有三個層次的模型,分别是資料模型、功能模型和行為模型(也稱為狀态模型)。在實際工作中,一般使用實體關系圖(E-R圖)表示資料模型,用資料流圖(Data Flow Diagram, DFD)表示功能模型,用狀态轉換圖(State Transfonn Diagram, STD)表示行為模型。E-R圖主要描述實體、屬性,以及實體之間的關系;DFD從資料傳遞和加工的角度,利用圖形符号通過逐層細分描述系統内各個部件的功能和資料在它們之間傳遞的情況,來說明系統所完成的功能;STD通過描述系統的狀态和引起系統狀态轉換的事件,來表示系統的行為,指出作為特定事件的結果将執行哪些動作(例如,處理資料等)。 面向對象的分析(Object-Oriented Analysis, OOA)的基本任務是運用面向對象的(Object­Oriented,OO)方法,對問題域進行分析和了解,正确認識其中的事物及它們之間的關系,找出描述問題域和系統功能所需的類和對象,定義它們的屬性和職責,以及它們之間所形成的各種聯系。最終産生一個符合使用者需求,并能直接反映問題域和系統功能的OOA模型及其詳細說明。OOA模型包括用例模型和分析模型,用例是一種描述系統需求的方法,使用用例的方法來描述系統需求的過程就是用例模組化;分析模型描述系統的基本邏輯結構,展示對象和類如何組成系統(靜态模型),以及它們如何保持通信,實作系統行為(動态模型)。
  3. 需求規格說明書編制 軟體需求規格說明書(Software Requirement Specification, SRS)是需求開發活動的産物,編制該文檔的目的是使項目幹系人與開發團隊對系統的初始規定有一個共同的了解,使之成為整個開發工作的基礎。SRS是軟體開發過程中最重要的文檔之一,對于任何規模和性質的軟體項目都不應該缺少。 在國家标準GB/T 8567《計算機軟體文檔編制規範》中,規定SRS應該包括範圍、引用檔案、需求、合格性規定、需求可追蹤性、尚未解決的問題、注解和附錄。國家标準GB/T 9385《計算機軟體需求說明編制指南》也給出了一個詳細的SRS寫作大綱。
  4. 需求驗證與确認

在系統分析階段,檢測SRS中的錯誤所采取的任何措施都将節省相當多的時間和資金。需求驗證與确認活動内容包括:

  • SRS正确地描述了預期的、滿足項目幹系人需求的系統行為和特征;
  • SRS中的軟體需求是從系統需求、業務規格和其他來源中正确推導而來的;
  • 需求是完整的和高品質的;
  • 需求的表示在所有地方都是一緻的;
  • 需求為繼續進行系統設計、實作和測試提供了足夠的基礎。

在實際工作中,一般通過需求評審和需求測試工作來對需求進行驗證。需求評審就是對SRS進行技術評審,它可以發現那些二義性的或不确定性的需求,為項目幹系人提供在需求問題上達成共識的方法。在業務需求基本明确,使用者需求部分确定時,同步進行需求測試,可及早發現問題,進而在需求開發階段以較低的代價解決這些問題。

3.UML

統一模組化語言(UnifiedModelingLanguage,UM1)是一種定義良好、易于表達、功能強大且普遍适用的模組化語言,它融入了軟體工程領域的新思想、新方法和新技術,它的作用域不限于支援OOA和OOD(Object-OrientedDesign,面向對象設計),還支待從需求分析開始的軟體開發的全過程。從總體上來看,UML的結構包括構造塊、規則和公共機制三個部分。

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  1. UML中的事物 UML中的事物也稱為模組化元素,包括結構事物(Structural Things)、行為事物(Behavioral Things,也稱動作事物)、分組事物(Grouping Things)和注釋事物(Annotational Things,也稱注解事物)。這些事物是UML模型中最基本的OO構造塊。 結構事物在模型中屬于最靜态的部分,代表概念上或實體上的元素。 UML 有七種結構事物,分别是類、接口、協作、用例、活動類、構件和節點。 行為事物是 UML 模型中的動态部分,代表時間和空間上的動作。 UML 有兩種主要的行為事物。第一種是互動(内部活動),互動是由一組對象之間在特定上下叉中,為達到特定目的而進行的一系列消息交換而組成的動作;第二種是狀态機,狀态機由一系列對象的狀态組成。 分組事物是 UML 模型中組織的部分,可以把它們看成是個盒子,模型可以在其中進行分解。UML 隻有一種分組事物,稱為包。包是一種将有組織的元素分組的機制。與構件不同的是,包純粹是一種概念上的事物,隻存在于開發階段,而構件可以存在于系統運作階段。 注釋事物是UML模型的解釋部分。
  2. UML中的關系 依賴(Dependency):依賴是兩個事物之間的語義關系,一個事物發生變化會影響另一個事物的語義。 關聯(Association):關聯描述一組對象之間連接配接的結構關系。 泛化(Generalization):泛化是一般化和特殊化的關系,描述特殊元素的對象可替換一般元素的對象。 實作(Realization):實作是類之間的語義關系,其中的一個類指定了由另一個類保證執行的契約。
  3. UML2.0中的圖
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  1. UML視圖

UML對系統架構的定義是系統的組織結構,包括系統分解的組成部分,以及它們的關聯性、互動機制和指導原則等提供系統設計的資訊,包括5個系統視圖:

邏輯視圖:邏輯視圖也稱為設計視圖,它表示了設計模型中在架構方面具有重要意義的部分,即類、子系統、包和用例實作的子集。

程序視圖:程序視圖是可執行線程和程序作為活動類的模組化,它是邏輯視圖的一次執行

執行個體,描述了并發與同步結構。

實作視圖:實作視圖對組成基于系統的實體代碼的檔案和構件進行模組化。

部署視圖:部署視圖把構件部署到一組實體節點上,表示軟體到硬體的映射和分布結構。

用例視圖:用例視圖是最基本的需求分析模型。

另外,UML還允許在一定的階段隐藏模型的某些元素,遺漏某些元素,可不保證模型的完整性,但模型逐漸地要達到完整和一緻。

4.面向對象分析

OOA的基本任務是運用OO方法,對問題域進行分析和了解,正确認識其中的事物及它們之間的關系,找出描述問題域和系統功能所需的類和對象,定義它們的屬性和職責以及它們之間所形成的各種聯系。最終産生一個符合使用者需求,并能直接反映問題域和系統功能的OOA模型及其詳細說明。

面向對象分析階段的核心工作是建立系統的用例模型與分析模型。

  1. 用例模型 結構化分析(Strnctured Analysis, SA)方法采用功能分解的方式來描述系統功能,在這種表達方式中,系統功能被分解到各個功能子產品中,通過描述細分的系統子產品的功能來達到描述整個系統功能的目的。 用例方法是一種需求合成技術,先擷取需求并記錄下來,然後從這些零散的要求和期望中進行整理與提煉,進而建立用例模型。在OOA方法中,建構用例模型一般需要經曆四個階段,分别是識别參與者、合并需求獲得用例、細化用例描述和調整用例模型,其中前三個階段是必須的。
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  1. 分析模型

捕獲了用例并不意味着分析的結束,還要對需求進行深入分析,擷取關于問題域本質内容的分析模型。分析模型描述系統的基本邏輯結構,展示對象和類如何組成系統(靜态模型),以及它們如何保待通信,實作系統行為(動态模型)。

領域模型又稱為概念模型或簡稱為域模型,也就是找到那些代表事物與概念的對象,即概念類。概念類可以從用例模型中獲得靈感,經過完善将形成分析模型中的分析類。每一個用例對應一個類圖,描述參與這個用例實作的所有概念類,而用例的實作主要通過互動圖來表示。例如,用例的事件流會對應産生一個順序圖,描述相關對象如何通過合作來完成整個事件流,複雜的備選事件流也可以産生一個或多個順序圖。所有這些圖的集合就構成了系統的分析模型。

建立分析模型的過程大緻包括定義概念類,确定類之間的關系,為類添加職責,建立互動圖等,其中有學者将前三個步驟統稱為類-責任-協作者(Class-Responsibility-Collaborator, CRC)模組化。類之間的主要關系有關聯、依賴、泛化、聚合、組合和實作等。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

5.1.3軟體設計

軟體設計是需求分析的延伸與拓展。需求分析階段解決“做什麼"的問題,而軟體設計階段解決“怎麼做"的問題。從方法上來說,軟體設計分為結構化設計與面向對象設計。

1結構化設計

結構化設計(StructuredDesign,SD)是一種面向資料流的方法,它以SRS和SA階段所産生的DFD和資料字典等文檔為基礎,是一個自頂向下、逐漸求精和子產品化的過程。SD方法的基本思想是将軟體設計成由相對獨立且具有單一功能的子產品組成的結構,分為概要設計和詳細設計兩個階段,其中概要設計又稱為總體結構設計,其主要任務是将系統的功能需求配置設定給軟體子產品,确定每個子產品的功能和調用關系,形成軟體的子產品結構圖,即系統結構圖。在概要設計中,将系統開發的總任務分解成許多個基本的、具體的任務,而為每個具體任務選擇适當的技術手段和處理方法的過程稱為詳細設計。根據任務的不同,詳細設計又可分為多種,例如,輸入/輸出設計、處理流程設計、資料存儲設計、使用者界面設計、安全性和可靠性設計等。

在SD中,需要遵循一個基本的原則:高内聚,低耦合。内聚表示子產品内部各成分之間的聯系程度,是從功能角度來度量子產品内的聯系;耦合表示子產品之間聯系的程度。

2面向對象設計

面向對象設計(OOD)是OOA方法的延續,其基本思想包括抽象、封裝和可擴充性,其中可擴充性主要通過繼承和多态來實作。在OOD中,資料結構和在資料結構上定義的操作算法封裝在一個對象之中。

OOD的主要任務是對類和對象進行設計,包括類的屬性、方法以及類與類之間的關系。OOD的結果就是設計模型。對于OOD而言,在支待可維護性的同時,提高軟體的可複用性是一個至關重要的問題,如何同時提高軟體的可維護性和可複用性,是OOD需要解決的核心問題之一。常用的OOD原則包括:

  • 單職原則:設計功能單一的類。本原則與結構化方法的高内聚原則是一緻的。
  • 開閉原則:對擴充開放,對修改封閉。
  • 李氏替換原則:子類可以替換父類。依賴倒置原則:要依賴于抽象,而不是具體實作;要針對接口程式設計,不要針對實作程式設計。
  • 接口隔離原則:使用多個專門的接口比使用單一的總接口要好。
  • 組合重用原則:要盡量使用組合,而不是繼承關系達到重用目的。
  • 迪米特原則(最少知識法則):一個對象應當對其他對象有盡可能少的了解。本原則與結構化方法的低耦合原則是一緻的。

3設計模式

設計模式是前人經驗的總結,它使人們可以友善地複用成功的軟體設計。設計模式包含模式名稱、問題、目的、解決方案、效果、執行個體代碼和相關設計模式等基本要素。

根據處理範圍不同,設計模式可分為類模式和對象模式。類模式處理類和子類之間的關系,這些關系通過繼承建立,在編譯時刻就被确定下來,屬于靜态關系;對象模式處理對象之間的關系,這些關系在運作時刻變化,更具動态性。

根據目的和用途不同,設計模式可分為建立型(Creationa1)模式、結構型(Structura1)模式和行為型(Behaviora1)模式三種:建立型模式主要用于建立對象,包括工廠方法模式、抽象工廠模式、原型模式、單例模式和建造者模式等;結構型模式主要用于處理類或對象的組合,包括擴充卡模式、橋接模式、組合模式、裝飾模式、外觀模式、享元模式和代理模式等;行為型模式主要用于描述類或對象的互動以及職責的配置設定,包括職責鍊模式、指令模式、解釋器模式、疊代器模式、中介者模式、備忘錄模式、

5.1.4軟體實作

1軟體配置管理

軟體配置管理通過辨別産品的組成元素、管理和控制變更、驗證、記錄和報告配置資訊,來控制産品的演進和完整性。軟體配置管理活動包括軟體配置管理計劃、軟體配置辨別、軟體配置控制、軟體配置狀态記錄、軟體配置審計、軟體釋出管理與傳遞等活動。

  • 軟體配置管理計劃的制訂需要了解組織結構環境群組織單元之間的聯系,明确軟體配置控制任務。軟體配置辨別活動識别要控制的配置項,并為這些配置項及其版本建立基線。
  • 軟體配置控制關注的是管理軟體生命周期中的變更。
  • 軟體配置狀态記錄辨別、收集、維護并報告配置管理的配置狀态資訊。
  • 軟體配置審計是獨立評價軟體産品和過程是否遵從已有的規則、标準、指南、計劃和流程而進行的活動。
  • 軟體釋出管理和傳遞通常需要建立特定的傳遞版本,完成此任務的關鍵是軟體庫。

2軟體編碼

目所謂編碼就是把軟體設計的結果翻譯成計算機可以“了解和識别”的形式用某種程式設計語言書寫的程式。作為軟體工程的一個步驟,編碼是設計的自然結果,程式的品質主要取決于軟體設計的品質。但是,程式設計語言的特性和編碼途徑也會對程式的可靠性、可讀性、可測試性和可維護性産生深遠的影響。

  1. 程式設計語言。編碼的目的是實作人和計算機的通信,指揮計算機按人的意志正确工作。程式設計語言是人和計算機通信的最基本工具,程式設計語言的特性不可避免地會影響入的思維和解決問題的方式,會影響人和計算機通信的方式和品質,也會影響其他人閱讀和了解程式的難易程度。
  2. 程式設計風格。閱讀程式是軟體開發和維護過程中的一個重要組成部分,而且讀程式的時間比寫程式的時間還要多。程式設計風格包括4個方面:源程式文檔化、資料說明、語旬結構和輸入/輸出方法。應盡量從編碼原則的角度提高程式的可讀性,改善程式的品質。
  3. 程式複雜性度量。定量度量程式複雜程度的方法很有價值,把程式的複雜度乘以适當的常數即可估算出軟體中故障的數量及軟體開發時的工作量。定量度量的結構可以用于比較兩個不同設計或兩種不同算法的優劣;程式的定量的複雜程度可以作為子產品規模的精确限度。
  4. 編碼效率。編碼效率主要包括:
  • 程式效率。程式的效率是指程式的執行速度及程式所需占用的記憶體空間。任何對效率無重要改善,且對程式的簡單性、可讀性和正确性不利的程式設計方法都是不可取的。
  • 算法效率。源程式的效率與詳細設計階段确定的算法的效率直接相關。在詳細設計翻譯轉換成源程式代碼後,算法效率反映為程式的執行速度和存儲容量的要求。
  • 存儲效率。存儲容量對軟體設計和編碼的制約很大。是以要選擇可生成較短目标代碼且存儲壓縮性能優良的編譯程式,有時需要采用彙程式設計式。
  • I/O效率。輸入/輸出可分為兩種類型:一種是面向人(操作員)的輸入/輸出;另一種是面向裝置的輸入/輸出。 3軟體測試 根據國家标準GB/T 15532《計算機軟體測試規範》,軟體測試的目的是驗證軟體是否滿足軟體開發合同或項目開發計劃、系統/子系統設計文檔、SRS、軟體設計說明和軟體産品說明等規定的軟體品質要求。通過測試發現軟體缺陷,為軟體産品的品質測量和評價提供依據。軟體測試方法可分為靜态測試和動态測試。 靜态測試是指被測試程式不在機器上運作,而采用人工檢測和計算機輔助靜态分析的手段對程式進行檢測。靜态測試包括對文檔的靜态測試和對代碼的靜态測試。對文檔的靜态測試主要以檢查單的形式進行,而對代碼的靜态測試一般采用桌前檢查(Desk Checking)、代碼走查和代碼審查。經驗表明,使用這種方法能夠有效地發現30%~70%的邏輯設計和編碼錯誤。 動态測試是指在計算機上實際運作程式進行軟體測試,一般采用白盒測試和黑盒測試方法。白盒測試也稱為結構測試,主要用于軟體單元測試中。它的主要思想是,将程式看作是一個透明的白盒,測試入員完全清楚程式的結構和處理算法,按照程式内部邏輯結構設計測試用例,檢測程式中的主要執行通路是否都能按預定要求正确工作。白盒測試方法主要有控制流測試、資料流測試和程式變異測試等。使用靜态測試的方法也可以實作白盒測試。白盒測試方法中,最常用的技術是邏輯覆寫,即使用測試資料運作被測程式,考查對程式邏輯的覆寫程度。主要的覆寫标準有語句覆寫、判定覆寫、條件覆寫、條件/判定覆寫、條件組合覆寫、修正的條件/判定覆寫和路徑覆寫等。黑盒測試也稱為功能測試,主要用于內建測試、确認測試和系統測試中。黑盒測試将程式看作是一個不透明的黑盒,完全不考慮(或不了解)程式的内部結構和處理算法,而隻檢查程式功能是否能按照SRS的要求正常使用,程式是否能适當地接收輸入資料并産生正确的輸出資訊,程式運作過程中能否保持外部資訊的完整性等。黑盒測試根據SRS所規定的功能來設計測試用例,一般包括等價類劃分、邊界值分析、判定表、因果圖、狀态圖、随機測試、猜錯法和正交試驗法等。 5.1.5部署傳遞 軟體部署是一個複雜過程,包括從開發商發放産品,到應用者在他們的計算機上實際安裝并維護應用的所有活動。這些活動包括軟體打包、安裝、配置、測試、內建和更新等。 1軟體部署與傳遞 軟體部署與傳遞是軟體生命周期中的一個重要環節,屬于軟體開發的後期活動,即通過配置、安裝和激活等活動來保障軟體制品的後續運作。部署技術影響着整個軟體過程的運作效率和成本投入,軟體系統部署的管理代價占到整個軟體管理開銷的大部分。其中軟體配置過程極大地影響着軟體部署結果的正确性,應用系統的配置是整個部署過程中的主要錯誤來源。 2持續傳遞 持續傳遞是一系列開發實踐方法,用來確定讓代碼能夠快速、安全地部署到生産環境中。持續傳遞是一個完全自動化的過程,當業務開發完成的時候,可以做到一鍵部署。待續傳遞提供了一套更為完善的解決傳統軟體開發流程的方案,主要展現在:
  • 在需求階段,抛棄了傳統的需求文檔的方式,使用便于開發入員了解的使用者故事;
  • 在開發測試階段,做到持續內建,讓測試人員盡早進入項目開始測試;
  • 在運維階段,打通開發和運維之間的通路,保待開發環境和運維環境的統一。 持續傳遞具備的優勢主要包括:
  • 待續傳遞能夠有效縮短送出代碼到正式部署上線的時間,降低部署風險;
  • 待續傳遞能夠自動、快速地提供回報,及時發現和修複缺陷;
  • 持續傳遞讓軟體在整個生命周期内都處于可部署的狀态;
  • 待續傳遞能夠簡化部署步驟,使軟體版本更加清晰;
  • 持續傳遞能夠讓傳遞過程成為一種可靠的、可預期的、可視化的過程。 在評價網際網路公司的軟體傳遞能力的時候,通常會使用兩個名額:
  • 僅涉及一行代碼的改動需要花費多少時間才能部署上線,這也是核心名額;
  • 開發團隊是否在以一種可重複、可靠的方式執行軟體傳遞。
  1. 持續部署方案

容器技術目前是部署中最流行的技術,常用的待續部署方案有Kubernetes+Docker和Matrix系統兩種。對比傳統的虛拟機技術優點主要有:

  • 容器技術上手簡單,輕量級架構,體積很小;
  • 容器技術的集合性更好,能更容易對環境和軟體進行打包複制和釋出;
  • 容器技術的引入為軟體的部署帶來了前所未有的改進,不但解決了複制和部署麻煩的問題,還能更精準地将環境中的各種依賴進行完整的打包。 2)部署原則 在待續部署管理的時候,需要遵循一定的原則,主要包括:
  • 部署包全部來自統一的存儲庫;
  • 所有的環境使用相同的部署方式;
  • 所有的環境使用相同的部署腳本;
  • 部署流程編排階梯式晉級,即在部署過程中需要設定多個檢查點,發生問題可以有序復原;
  • 整體部署由運維入員執行;
  • 僅通過流水線改變生産環境,防止配置漂移;
  • 不可變伺服器;
  • 部署方式采用藍綠部署或金絲雀部署。 3)部署層次 明确部署的目的并不是部署一個可工作的軟體,而是部署一套可正常運作的環境。完整的鏡像部署包括三個環節:Build—Ship—Run。
  • Build:跟傳統的編譯類似,将軟體編譯形成RPM包或者Jar包;
  • Ship:則是将所需的第三方依賴和第三方插件安裝到環境中;
  • Run:就是在不同的地方啟動整套環境。制作完成部署包之後,每次需要變更軟體或者第三方依賴以及插件更新的時候,不需要重新打包,直接更新部署包即可。

4)不可變伺服器

不可變伺服器是一種部署模式,是指除了更新和安裝更新檔程式以外,不對伺服器進行任何更改。不可變伺服器是技術逐漸演化的結果。

5)藍綠部署和全絲雀部署

藍綠部署是指在部署的時候準備新舊兩個部署版本,通過域名解析切換的方式将使用者使用環境切換到新版本中,當出現問題的時候,可以快速地将使用者環境切回舊版本,并對新版本進行修複和調整。

金絲雀部署是指當有新版本釋出的時候,先讓少量使用者使用新版本,并且觀察新版本是否存在問題。如果出現問題,就及時處理并重新釋出;如果一切正常,就穩步地将新版本适配給所有的使用者。

4部署與傳遞的新趨勢

持續內建、待續傳遞和待續部署的出現及流行反映了新的軟體開發模式與發展趨勢,主要表現為:

  • 工作職責和人員分工的轉變:軟體開發人員運用自動化開發工具進行持續內建,進一步将傳遞和部署擴充,而原來的手工運維工作也逐漸被分派到了開發入員的手裡。運維人員的工作也從重複枯燥的手工作業轉化為開發自動化的部署腳本,并逐漸并入開發人員的行列之中。
  • 大資料和雲計算基礎設施的普及進一步給部署帶來新的飛躍:雲計算的出現使得計算機本身也可以進行自動化建立和回收,這種環境管理的範疇将得到進一步擴充。部署和運維工作也會脫離具體的機器和機房,可以在遠端進行,部署能力和靈活性出現了質的飛躍。
  • 研發運維的融合:減輕運維的壓力,把運維和研發融合在一起。

5.1.6過程能力

軟體過程能力是組織基于軟體過程、技術、資源和人員能力達成業務目标的綜合能力。包括治理能力、開發與傳遞能力、管理與支待能力、組織管理能力等方面。軟體過程能力成熟度是指組織在提升軟體産品開發能力或軟體服務能力過程中,各個發展階段的軟體能力成熟度。常見的軟體過程管理方法和實踐包括國際常用的能力成熟度模型內建 (Capability Maturity Model Integration, CMMI,)和中國電子工業标準化技術協會釋出的 T/CESA 1159 《軟體過程能力成熟度模型》 (Software Process Capability Maturity Mode1) 團體标準,簡稱 CSMM 。

1成熟度模型

CSMM定義的軟體過程能力成熟度模型旨在通過提升組織的軟體開發能力幫助顧客提升軟體的業務價值。該模型借鑒吸收了軟體工程、項目管理、産品管理、組織治理、品質管理、卓越績效管理、精益軟體開發等領域的優秀實踐,為組織提供改進和評估軟體過程能力的一個成熟度模型。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

CSMM模型由4個能力域、20個能力子域、161個能力要求組成:

治理:包括戰略與治理、目标管理能力子域,用于确定組織的戰略、産品的方向、組織的業務目标,并確定目标的實作。

開發與傳遞:包括需求、設計、開發、測試、部署、服務、開源應用能力子域,這些能力子域確定通過軟體工程過程傳遞滿足需求的軟體,為顧客與利益幹系人增加價值。

管理與支援:包括項目策劃、項目監控、項目結項、品質保證、風險管理、配置管理、供應商管理能力子域,這些能力子域稷蓋了軟體開發項目的全過程,以確定軟體項目能夠按照既定的成本、進度和品質傳遞,能夠滿足顧客與利益幹系人的要求。

組織管理:包括過程管理、人員能力管理、組織資源管理、過程能力管理能力子域,對軟體組織能力進行綜合管理。

2成熟度等級

按照軟體過程能力的成熟度水準由低到高演進發展的形勢,CSMM定義了5個等級,高等級是在低等級充分實施的基礎之上進行。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

5.2資料工程

資料工程是資訊系統的基礎工程。圍繞資料的生命周期,規範資料從産生到應用的全過程,目标是為資訊系統的運作提供可靠的資料保障和服務,為資訊系統之間的資料共享提供安全、高效的支撐環境,為資訊系統實作互連、互通、互操作提供有力的資料支撐。

5.2.1資料模組化

資料模組化是對現實世界中具體的人、物、活動和概念進行抽象、表示和處理,變成計算機可處理的資料,也就是把現實世界中的資料從現實世界抽象到資訊世界和計算機世界。

1資料模型

根據模型應用目的不同,可以将資料模型劃分為三類:概念模型、邏輯模型和實體模型。

  1. 概念模型。概念模型也稱資訊模型,它是按使用者的觀點來對資料和資訊模組化,這種資訊結構不依賴于具體的計算機系統,也不對應某個具體的DBMS,它是概念級别的模型。
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

通常對概念模型要求有:

  • 概念模型是對現實世界的抽象和概括,它應該真實、充分地反映現實世界中事物和事物之間的聯系,有豐富的語義表達能力,能表達使用者的各種需求;
  • 概念模型應簡潔、明晰、獨立于機器、容易了解,友善資料庫設計人員與使用者交換意見,使使用者能夠積極參與資料庫的設計工作;
  • 概念模型應易于變動。當應用環境和應用要求改變時,容易修改和補充概念模型;
  • 概念模型應容易向關系、層次或網狀等各種資料模型轉換,易于從概念模型導出與DBMS相關的邏輯模型。

2)邏輯模型

邏輯模型是在概念模型的基礎上确定模型的資料結構,目前主要的資料結構有層次模型、網狀模型、關系模型、面向對象模型和對象關系模型。其中,關系模型成為目前最重要的一種邏輯資料模型。

關系模型的基本元素包括關系、關系的屬性、視圖等。關系模型是在概念模型的基礎上建構的,是以關系模型的基本元素與概念模型中的基本元素存在一定的對應關系。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

關系資料模型的資料操作主要包括查詢、插入、删除和更新資料,這些操作必須滿足關系的完整性限制條件。關系的完整性限制包括三大類型:實體完整性、參照完整性和使用者定義的完整性。其中,實體完整性、參照完整性是關系模型必須滿足的完整性限制條件,使用者定義的完整性是應用領域需要遵照的限制條件,展現了具體領域中的語義限制。

3)實體模型

實體資料模型是在邏輯資料模型的基礎上,考慮各種具體的技術實作因素,進行資料庫體系結構設計,真正實作資料在資料庫中的存放。實體資料模型的内容包括确定所有的表和列,定義外鍵用于确定表之間的關系,基于性能的需求可能進行反規範化處理等内容。在實體實作上的考慮,可能會導緻實體資料模型和邏輯資料模型有較大的不同。實體資料模型的目标是如何用資料庫模式來實作邏輯資料模型,以及真正地儲存資料。實體模型的基本元素包括表、字段、視圖、索引、存儲過程、觸發器等,其中表、字段和視圖等元素與邏輯模型中基本元素有一定的對應關系。

2資料模組化過程

通常來說,資料模組化過程包括資料需求分析、概念模型設計、邏輯模型設計和實體模型設計等過程。

  1. 資料需求分析。資料需求分析就是分析使用者對資料的需要和要求。資料需求分析是資料模組化的起點,資料需求掌握的準确程度将直接影響後續階段資料模型的品質。資料需求分析采用資料流圖作為工具,描述系統中資料的流動和變化,強調資料流和處理過程。
  2. 概念模型設計。将需求分析得到結果抽象為概念模型的過程就是概念模型設計,其任務是确定實體和資料及其關聯。
  3. 邏輯模型設計。概念模型獨立于機器,更抽象,進而更加穩定,但是為了能夠在具體的DBMS上實作使用者的需求,還必須在概念模型的基礎上進行邏輯模型的設計。邏輯模型設計的任務就是将概念模型中實體、屬性和關聯轉換為關系模型結構中的關系模式。
  4. 實體模型設計。如果要将資料模型轉換為真正的資料庫結構,還需要針對具體的DBMS進行實體模型設計,使資料模型走向資料存儲應用環節。實體模型考慮的主要問題包括命名、确定字段類型和編寫必要的存儲過程與觸發器等。

5.2.2數掘标惟化

資料标準化是實作資料共享的基礎。資料标準化主要為複雜的資訊表達、分類和定位建立相應的原則和規範,使其簡單化、結構化和标準化,進而實作資訊的可了解、可比較和可共享,為資訊在異構系統之間實作語義互操作提供基礎支撐。資料标準化的主要内容包括中繼資料标準化、資料元标準化、資料模式标準化、資料分類與編碼标準化和資料标準化管理。

1中繼資料标準化

中繼資料是關于資料的資料(Data About Data)。中繼資料被定義為提供關于資訊資源或資料的一種結構化資料,是對資訊資源的結構化描述。其實質是用于描述資訊資源或資料的内容、覆寫範圍、品質、管理方式、資料的所有者、資料的提供方式等有關的資訊。

  1. 資訊對象 中繼資料描述的對象可以是單一的全文、目錄、圖像、數值型資料以及多媒體等,也可以是多個單一資源組成的資源集合,或是這些資源的生産、加工、使用、管理、技術處理、儲存等過程及産生的參數的描述。
  2. 中繼資料體系

根據資訊對象從産生到服務的生命周期、中繼資料描述和管理内容的不同以及中繼資料作用的不同,中繼資料可以分為多種類型。從最基本的資源内容描述中繼資料開始,指導描述中繼資料的元中繼資料,形成了一個層次分明、結構開放的中繼資料體系。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

2資料元标準化

随着國際電子商務和貿易的快速發展,需要一個互連、互通、互操作的開放系統互連環境(Open Systems Interconnection Environment, OSIE)。OSIE四個基本要素(硬體、軟體、通信和資料)中的三個要素(硬體、軟體和通信),已經或正在制定相應的标準。為了使資料在各種不同的應用環境中易于交換和共享,國際标準化組織(,ISO)提出了資料元标準的概念,要求按共同約定的規則進行統一組織、分類和辨別資料,規範統一資料的含義、表示方法和取值範圍等,保證資料從産生的源頭就具備一緻性。

  1. 資料元 資料元是資料庫、檔案和資料交換的基本資料單元。資料庫或檔案由記錄或元組等組成,而記錄或元組則由資料元組成。資料元是在資料庫或檔案之間進行資料交換時的基本組成。資料元通過一組屬性描述其定義、辨別、表示和允許值的資料單元。在特定的語義環境中被認為是不可再分的最小資料單元。資料元一般來說由三部分組成: 對象。對象類是可以對其界限和含義進行明确的辨別,且特性和行為遵循相同規則的觀念、抽象概念或現實世界中事物的集合。它是人們希望采集和存儲資料的事物。 特性。特性是指一個對象類的所有成員所共有的特征。它用來差別和描述對象,構成對象類的内涵。特性對應于面向對象模型或實體-關系模型中的屬性,如身高、體重、血壓、脈搏、血型等。 表示。表示可包括值域、資料類型、表示類(可選的)和計最機關四部分,其中任何一部分發生變化都成為不同的表示。值域是資料元允許值的集合,。
  2. 資料元提取 目前常用的資料元提取方法有兩種:自上而下(Top-Down)提取法和自下而上(Down-Top)提取法。對于建立系統的資料元提取,一般适用“自上而下”的提取法。基本步驟是在流程和功能分析的基礎上,通過模組化分析,确立關心的“對象”。在概念資料模型和邏輯資料模型的基礎上,分析提取資料元及其屬性。自下而上提取法也稱逆向工程,對于已建系統的資料元提取,一般适用這種自下而上提取法。在這種情況下,資料元直接來自各個資訊系統。
  3. 資料元标準

一般來說,制定一個資料元标準,應遵循若幹個基本過程。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

3資料模式标準化

資料模式是資料的概念、組成、結構和互相關系的總稱。為了保證能夠順暢進行資訊的共享,對特定領域而言,需要一個統一的資料模式作為資料共享與交換的基礎。

通過資料集模式的标準化,一方面對資料的内容、組成、結構以及各部分的互相關系進行統一規範,相關領域、部門或者資料集制作者都可以根據資料模式制作出标準化的資料;另一方面,資料集按照資料庫理論對資料進行了規範化處理,有利于減少資料備援。

資料模式的描述方式主要有圖描述方法和資料字典方法。圖描述方法常用的有IDEFIX方法和UML圖,主要用來描述資料集中的實體和實體之間的互相關系;資料字典形式用來描述模型中的資料集、單個實體、屬性的摘要資訊。

4資料分類與編碼标準化

資料分類是根據内容的屬性或特征,将資料按一定的原則和方法進行區分和歸類,并建立起一定的分類體系和排列順序。資料分類有分類對象和分類依據兩個要素。分類對象由若幹個被分類的實體組成;分類依據取決于分類對象的屬性或特征。

所謂資料分類與編碼标準化就是把資料分類與編碼工作納入标準化工作的領域,按标準化的要求和工作程式,将各種資料按照科學的原則進行分類以編碼,經有關方面協商一緻,由主管機構準許、注冊,以标準的形式釋出,作為共同遵守的準則和依據,并在其相應的級别範圍内宣貫和推行。

5資料标準化管理

在資料标準化活動中,首先要依據資訊需求,并參照現行資料标準、資訊系統的運作環境以及法規、政策和指導原則,在資料管理機構、專家組和開發者共同參與下,運用資料管理工具,得到注冊的資料元素、實體模式和擴充的資料模型。資料标準化階段的具體過程包括确定資料需求、制定資料标準、準許資料标準和實施資料标準四個階段。

  1. 确定資料需求。本階段将産生資料需求及相關的中繼資料、域值等檔案。在确定資料需求時應考慮現行的法規、政策,以及現行的資料标準。
  2. 制定資料标準。推薦的、新的或修改的資料标準記錄于資料字典中。這個階段将産生供審查和準許的成套建議。
  3. 準許資料标準。本階段的資料管理機構對送出的資料标準建議、現行資料标準的修改或封存建議進行審查。一經準許,該資料标準将擴充或修改資料模型。
  4. 實施資料标準。本階段涉及在各資訊系統中實施和改進已準許的資料标準。

5.2.3 資料運維

資料開發利用的前提是通過合适的方式将資料儲存到存儲媒體上,并能保證有效的通路,還要通過資料備份和容災手段,保證資料的高可用性。資料品質管理是在資料産品的生産過程中,确定品質方針、目标和職責,并通過品質策劃、品質控制、品質保證和品質改進,來實作所有管理職能的全部活動。

1資料存儲

根據不同的應用環境,逍過采取合理、安全、有效的方式将資料儲存到實體媒體上,并能保證對資料實施有效的通路。這裡面包含兩個方面:1.資料臨時或長期駐留的實體媒介;2.保證資料完整安全存放和通路而采取的方式或行為。

  1. 資料存儲媒體。資料存儲首先要解決的是存儲媒體的問題。存儲媒體是資料存儲的載體,是資料存儲的基礎。要根據不同的應用環境,合理選擇存儲媒體。存儲媒體的類型主要有錄音帶、CD光牒和磁盤三種。
  2. 存儲管理。存儲管理在存儲系統中的地位越來越重要,例如如何提高存儲系統的通路性能,如何滿足資料瞿不斷增長的需要,如何有效的保護資料、提高資料的可用性,如何滿足存儲空間的共享等。
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

2資料備份

資料備份是為了防止由于使用者操作失誤、系統故障等意外原因導緻的資料丢失,而将整個應用系統的資料或一部分關鍵資料複制到其他存儲媒體上的過程。這樣做的目的是保證當應用系統的資料不可用時,可以利用備份的資料進行恢複,盡量減少損失。

目前最常見的資料備份結構可以分為四種:DAS備份結構、基于LAN的備份結構、LAN­FREE備份結構和SERVER-FREE備份結構。常見的備份政策主要有三種:完全備份、差分備份和增量備份。

在資料備份系統中,備份伺服器、RAID和錄音帶機等裝置提供了硬體基礎,具體備份政策的制定、備份媒體的管理以及一些擴充功能的實作都需要軟體來完成。備份軟體主要分為兩大類:一是作業系統自帶的軟體,如麒麟作業系統的"備份“工具;二是專業備份軟體,其能夠實作比較全面的功能。

3資料容災

根據容災系統保護對象的不同,容災系統分為應用容災和資料容災兩類。應用容災用于克服災難對系統的影響,保證應用服務的完整、可靠和安全等一系列要求,使得使用者在任何情況下都能得到正常的服務;資料容災則關注于保證使用者資料的高可用性,在災難發生時能夠保證應用系統中的資料盡量少丢失或不丢失,使得應用系統能不間斷地運作或盡快地恢複正常運作。

容災按其災難恢複能力的高低可分為多個等級,例如國際标準SHARE 78定義的容災系統有七個等級:從最簡單的僅在本地進行錄音帶備份,到将備份的錄音帶存儲在異地,再到建立應用系統實時切換的異地備份系統。從技術上看,衡量容災系統有兩個主要名額:RPO(Recovery Point Object)和RTO(Recovery Time Object),其中RPO代表了當災難發生時允許丢失的資料量;而RTO則代表了系統恢複的時間。

4資料品質評價與控制

資料品質必須從使用者使用的角度來看,即使準确性相當高的資料,如果時效性差或者不為使用者所關心,仍達不到品質管理标準。資料品質是一個廣義的概念,是資料産品滿足名額、狀态和要求能力的特征總和。

  1. 資料品質描述 資料品質可以通過資料品質元素來描述,資料品質元素分為資料品質定量元素和資料品質非定量元素。
  2. 資料品質評價過程 資料品質評價過程是産生和報告資料品質結果的一系列步驟。
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  1. 資料品質評價方法

資料品質評價程式是通過應用一個或多個資料品質評價方法來完成的。資料品質評價方法分為直接評價法和間接評價法:

  • 直接評價法:通過将資料與内部或外部的參照資訊,如理論值等進行對比。确定資料品質。
  • 間接評價法:利用資料相關資訊,如資料隻對資料源、采集方法等的描述推斷或評估資料品質。 4)資料産品的品質控制 分成前期控制和後期控制兩個大部分。前期控制包括資料錄入前的品質控制、資料錄入過程中的實時品質控制;後期控制為資料錄入完成後的後處理品質控制與評價。依據建庫流程可分為:
  • 前期控制:是在送出成果(即資料入庫)之前對所獲得的原始資料與完成的工作進行檢查。
  • 過程控制:實施減少和消除誤差和錯誤的實用技術和步驟,主要應用在建庫過程中,用來對獲得的資料在錄入過程中進行屬性的資料品質控制。
  • 系統檢測:在資料入庫後進行系統檢測,設計檢測模闆,利用檢測程式進行系統自檢。
  • 精度評價:對入庫屬性資料用各種精度評價方法進行槽度分析,為使用者提供可靠的屬性資料。

5)資料清理

資料清理也稱資料清洗。從廣義上講,是将資料庫精簡以除去重複記錄,并使剩餘部分轉換成符合标準的過程。而狹義上的資料清理是特指在建構資料倉庫和實作資料挖掘前對資料源進行處理,使資料實作準确性、完整性、一緻性、唯一性、适時性、有效性以适應後續操作的過程。從提高資料品質的角度出發,凡是有助于提高資料品質的處理過程,都可以認為是資料清理。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  • 資料分析:是指從資料中發現控制資料的一般規則,比如字段域、業務規則等,通過對資料的分析,定義出資料清理的規則,并選擇合适的清理算法。
  • 資料檢測:是指根據預定義的清理規則及相關資料清理算法,檢測資料是否正确,比如是否滿足字段域、業務規則等,或檢測記錄是否重複。
  • 資料修正:是指手工或自動地修正檢測到的錯誤資料或重複的記錄。

5.2.4資料開發利用

通過資料內建、資料挖掘和資料服務(目錄服務、查詢服務、浏覽和下載下傳服務、資料分發服務)、資料可視化、資訊檢索等技術手段,幫助資料使用者從資料資源中找到所需要的資料,并将資料以一定的方式展現出來,實作對資料的開發利用。

1資料內建

資料內建就是将駐留在不同資料源中的資料進行整合,向使用者提供統一的資料視圖(一般稱為全局模式),使得使用者能以透明的方式通路資料。其中“資料源”主要是指DBMS,廣義上也包括各類XML文檔、HTML文檔、電子郵件、普通檔案等結構化、半結構化和非結構化資料。

資料內建的目标就是充分利用已有資料,在盡量保持其自治性的前提下,維護資料源整體上的一緻性,提高資料共享利用效率。資料內建系統,為使用者提供了統一的資料源通路接口,執行使用者的通路請求。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯

添加圖檔注釋,不超過 140 字(可選)

2資料挖掘

資料挖掘是指從大量資料中提取或“挖掘”知識,即從大量的、不完全的、有噪聲的、模糊的、随機的實際資料中,提取隐含在其中的、人們不知道的、卻是潛在有用的知識。資料挖掘是一門交叉學科,其過程涉及資料庫、人工智能、數理統計、可視化、并行計算等多種技術。資料挖掘與傳統資料分析不同:

  • 兩者分析對象的資料量有差異,資料挖掘所需的資料薹比傳統資料分析所需的資料量大,資料量越大,資料挖掘的效果越好;
  • 兩者運用的分析方法有差異,傳統資料分析主要運用統計學的方法、手段對資料進行分析,而資料挖掘綜合運用資料統計、人工智能、可視化等技術對資料進行分析;
  • 兩者分析側重有差異,傳統資料分析通常是回顧型和驗證型的,通常分析已經發生了什麼,而資料挖掘通常是預測型和發現型的,預測未來的情況,解釋發生的原因;
  • 兩者成熟度不同,傳統資料分析由于研究較早,其分析方法相當成熟,而資料挖掘除基于統計學等方法外,部分萬法仍處于發展階段。

資料挖掘流程一般包括确定分析對象、資料準備、資料挖掘、結果評估與結果應用五個階段,這些階段在具體實施中可能需要重複多次。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資料挖掘的結果經過決策人員的許可才能實際運用,以指導實踐。隻有通過對分析知識的應用,才能對資料挖掘的成果做出正确的評價。

3資料服務

資料服務主要包括資料目錄服務、資料查詢與浏覽及下載下傳服務、資料分發服務。

  1. 資料目錄服務。由于專業、領域、主管部門、分布地域和采用技術的不同,資料資源呈現的是海量、多源、異構和分布的特點。資料目錄是用來快捷地發現和定位所需資料資源的一種檢索服務,是實作資料共享的重要基礎功能服務之一。
  2. 資料查詢與浏覽及下載下傳服務。資料查詢、浏覽和下載下傳是網上資料共享服務的重要方式,使用者使用資料的方式有查詢資料和下載下傳資料兩種。
  3. 資料分發服務。資料分發是指資料的生産者通過各種萬式将資料傳達到使用者的過程。通過分發,能夠形成資料從采集、存儲、加工、傳播向使用流動,實作資料的價值。

4資料可視化

可視化技術是指将抽象的事物或過程變成圖形圖像的表示方法。和學計算可視化(Visualizationm Scientific Computing)的基本含義是運用圖形學的原理和方法,将科學與工程計算等産生的大規模資料轉換為圖形、圖像,以直覺的形式表示出來。

資料可視化(Data Visualization)概念來自科學計算可視化。資料可視化(見圖5-7)主要運用計算機圖形學和圖像處理技術,将資料轉換成為圖形或圖像在螢幕上顯示出來,并能進行互動處理,它涉及計算機圖形學、醫像處理、計算機輔助設計、計算機視覺及人機互動技術等多個領域,是一門綜合性的學科。

主要可分為七類:一維資料可視化、二維資料可視化、三維資料可視化、多元資料可視化、時态資料可視化、層次資料可視化和網絡資料可視化。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

5資訊檢索

資訊檢索(Information Retrieval)有廣義和狹義之分。廣義的資訊檢索是指将資訊按一定的方式組織和存儲起來,然後根據使用者需求查找出特定資訊的技術,是以全稱是資訊存儲與檢索(Information Storageand Retrieval)。狹義的資訊檢索僅指使用者查找特定資訊這部分。

資訊檢索的主要方法如下:

  1. 全文檢索。以文本資料為主要處理對象,根據内容而不是外在特征來實作的資訊檢索手段。
  2. 字段檢索。把檢索對象按一定标準在不同字段中進行著錄,并把不同字段作為檢索依據。
  3. 基于内容的多媒體檢索。按檢索内容可分為圖像檢索、視訊檢索和聲音檢索等。
  4. 資料挖掘。從大量的、不完全的、模糊的、随機的資料中,提取隐含在其中且人們事先不知道的潛在、有用的資訊和知識的過程。

資訊檢索的常用技術包括布爾邏輯檢索技術、截詞檢索技術、臨近檢索技術、限定字段檢索技術、限制檢索技術等。

  1. 布爾邏輯檢索技術。嚴格意義上的布爾檢索法是指利用布爾邏輯運算符連接配接各個檢索詞,然後由計算機進行相應的邏輯運算,以找出所需資訊的方法。
  2. 截詞檢索技術。截詞檢索技術是指用截斷的詞的一個局部進行檢索,并認為凡是滿足這個詞局部的所有字元的資訊,都為命中的資訊。截詞符用“?”或“*”表示。
  3. 臨近檢索技術。臨近檢索又稱位置檢索,主要是通過檢索式中的專門符号來規定檢索詞在結果中的相對位置。在某些情況下,若不限制檢索詞之間的位置關系則會造成誤檢,影響查準率。
  4. 限定字段檢索技術。限定字段檢索即指定檢索詞在記錄中出現的字段。檢索時,計算機隻對限定字段進行比對運算,以提高檢索效率和查準率。
  5. 限制檢索技術。限制檢索是通過限制檢索範圍,達到優化檢索的方法。限制檢索的方

5.2.5資料庫安全

資料是脆弱的,它可能被無意識或有意識地破壞、修改,需要采用一定的資料安全措施,確定合法的使用者、采用正确的萬式、在正确的時間、對相應的資料進行正确的操作,確定資料的機密性、完整性、可用性和合法使用。資料庫安全是指保護資料庫,防止不合法的使用所造成的資料洩露、更改或破壞。

1資料庫安全威脅

在資料庫環境中,不同的使用者通過資料庫管理系統通路同一組資料集合,這樣減少了資料的備援、消除了不一緻的問題,同時也免去程式對資料結構的依賴。然而,這也導緻資料庫面臨更嚴重的安全威脅。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

2資料庫安全對策

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

3資料庫安全機制

資料庫安全機制是用于實作資料庫的各種安全政策的功能集合。資料庫安全機制包括使用者的身份認證、存取控制、資料庫加密、資料審計、推理控制等内容。

5.3系統內建

系統內建概念專指計算機系統的內建,包括計算機硬體平台、網絡系統、系統軟體、工具軟體、應用軟體的內建,圍繞這些系統的相應咨詢、服務和技術支援。

5.3.1內建基礎

系統內建的内容包括技術環境的內建、資料環境的內建和應用程式的內建。系統內建通過硬體平台、網絡通信平台、資料庫平台、工具平台、應用軟體平台将各類資源有機、高效地內建到一起,形成一個完整的工作台面。在技術上需要遵循的基本原則包括:開放性、結構化、先進性和主流化。

  1. 開放性。系統硬軟體平台、通信接口、軟體開發工具、網絡結構的選擇要遵循工業開放标準,這是關系到系統生命周期長短的重要問題。一個內建的資訊系統必然是一個開放的資訊系統。隻有開放的系統才能滿足可互操作性、可移植性以及可伸縮性的要求,才可能與另一個标準相容的系統實作“無縫"的互操作,應用程式才可能由一種系統移植到另一種系統,不斷地為系統的擴充、更新創造條件。
  2. 結構化。複雜系統設計的最基本方法依然是結構化系統分析設計方法。把一個複雜系統分解成相對獨立和簡單的子系統,每一個子系統又分解成更簡單的子產品,這樣自頂向下逐層子產品化分解,直到底層每一個子產品都是可具體說明和可執行的為止。這一思想至今仍是複雜系統設計的精髓。
  3. 先進性。先進性有兩層意義:目前先進性和未來先進性。系統的先進性是建立在技術先進性之上的,隻有先進的技術才有較強的發展生命力,系統采用先進的技術才能確定系統的優勢和較長的生存周期。系統的先進性還表現在系統設計的先進性:先進技術的有機內建、問題的合理劃分,以及應用軟體符合人們認知特點等。系統設計的先進性貫穿在系統開發的整個生命周期,乃至整個系統生存周期的各個環節。
  4. 主流化。系統構成的每一個産品應屬于該産品發展的主流,有可靠的技術支援,有成熟的使用環境,并具有良好的更新發展勢頭。

5.3.2網絡內建

網絡內建不僅涉及不同廠家的網絡裝置和管理軟體,也會涉及異構和異質網絡系統的互聯問題。組織需要結合實際情況,建立網絡系統內建的體系架構,指導網絡系統建設,實作真正的網絡化管理。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  1. 傳輸子系統。傳輸線路帶寬的高低不僅展現了網絡的通信能力,傳輸媒體在很大程度上也決定了通信的品質,進而直接影響到網絡協定。目前主要的傳輸媒體分為無線傳輸媒體和有線傳輸媒體。常用的無線傳輸媒體主要包括無線電波、微波、紅外線等,常用的有線傳輸媒體主要包括雙絞線、同軸電纜、光纖等。
  2. 交換子系統。網絡按所覆寫的區域可分為區域網路、城域網和廣域網,由此網絡交換也可以分為區域網路交換技術、城域網交換技術和廣域網交換技術。
  3. 本機安全性授權。網絡安全主要關注的内容包括:使用防火牆技術,防止外部的侵犯;使用資料加密技術,防止任何入從通信信道竊取資訊;通路控制,主要是通過設定密碼、密碼和通路權限保護網絡資源。
  4. 網管子系統。網絡是一種動态結構。随着組織規模的擴大和改變,網絡也會跟着擴大和改變。配置好網絡以後,必須對其進行有效的管理,確定網絡能連續不斷地滿足組織的需要。
  5. 伺服器子系統。伺服器的作用就是向工作站提供處理器記憶體、磁盤、列印機、軟體資料等資源和服務,并負責協調管理這些資源。選擇網絡伺服器時要考慮以下因素:CPU的速度和數量;記憶體容量和性能;總線結構和類型;磁盤容量和性能;容錯性能;網絡接口性能;伺服器軟體等。
  6. 網絡作業系統。主要任務是排程和管理網絡資源,并為網絡使用者提供統一、透明使用網絡資源的手段,主要包括網絡伺服器、工作站、列印機、網橋、路由器、交換機、網關、共享軟體和應用軟體等。
  7. 服務子系統。網絡服務主要包括網際網路服務、多媒體資訊檢索、資訊點播、資訊廣播、遠端計算和事務處理以及其他資訊服務等。

5.3.3資料內建

運用一定的技術手段将系統中的資料按一定的規則組織成為一個整體,使得使用者能有效地對資料進行操作。資料內建處理的主要對象是系統中各種異構資料庫中的資料。資料倉庫技術是資料內建的關鍵。

1資料內建層次

資料內建是将參與資料庫的有關資訊在邏輯上內建為一個屬于異構分布式資料庫的全局概念模式。資料內建可以分為基本資料內建、多級視圖內建、模式內建和多粒度資料內建四個層次。

  1. 基本資料內建。基本資料內建面臨的問題很多。通用辨別符問題是資料內建時遇到的最難的問題之一。由于同一業務實體存在于多個系統源中,并且沒有明确的辦法确認這些實體是同一實體時,就會産生這類問題。處理該問題的辦法包括:
  • 隔離:保證明體的每次出現都指派一個唯一辨別符。
  • 調和:确認哪些實體是相同的,并且将該實體的各次出現合并起來。

當目标元素有多個來源時,指定某一系統在沖突時占主導地位。資料丢失問題是最常見的問題之一,通常的解決辦法是為丢失的資料産生一個非常接近實際的估計值來進行處理。

(2)多級視圖內建。多級視圖機制有助于對資料源之間的關系進行內建:底層資料表示方式為局部模型的局部格式,如關系和檔案;中間資料表示為公共模式格式,如擴充關系模型或對象模型;進階資料表示為綜合模型格式。視圖的內建化過程為兩級映射:

  • 資料從局部資料庫中,經過資料翻譯、轉換并內建為符合公共模型格式的中間視圖;
  • 進行語義沖突消除、資料內建和資料導出處理,将中間視圖內建為綜合視圖。

(3)模式內建。模型合并屬于資料庫設計問題,其設計的好壞常視設計者的經驗而定,在實際應用中可參考的成熟理論較少。模式內建的基本架構如屬性等價、關聯等價和類等價可最終歸于屬性等價。

(4)多粒度資料內建。理想的多粒度資料內建模式是自動逐漸抽象。資料綜合(或資料抽象)指由高精度資料經過抽象形成精度較低但是粒度較大的資料。這個過程對各局域中的資料進行綜合,提取其主要特征。

2異構資料內建

資料內建的目的是為應用提供統一的通路支援,是以內建後的資料必須保證一定的完整性,包括資料完整性和限制完整性。資料內建還必須考慮語義沖突問題,資訊資源之間存在的語義差別可能引起各種沖突。

  1. 異構資料內建的方法 異構資料內建方法歸納起來主要有兩種,分别是過程式方法和聲明式方法。采用過程式方法,一般是根據一組資訊需求,采用一種點對點(Ad-hoc)的設計方法來內建資料。聲明式方法的主要特點就是通過一套合适的語言來對多個資料源的資料進行模組化,建構一個統一的資料表示。 另一類方法是利用中間件內建異構資料庫,該方法不需要改變原始資料的存儲和管理方式。
  2. 開放資料庫互聯标準 實作異構資料源的資料內建,首先要解決的問題是原始資料的提取。從異構資料庫中提取資料大多采用開放式資料庫互聯(Open Database Connectivity, ODBC),一種用來在資料庫系統之間存取資料的标準應用程式接口。另一種提取資料的方法是針對不同的資料源編寫專用的嵌入式C接口程式,這樣可提高資料的提取速度。
  3. 基于XML的資料交換标準

使用中間件作為組織異構資料源內建的解決方案時,需要為中間件選擇一種全局資料模式,來統一異構資料源的資料模式。異構資料內建的全局模式需要滿足的條件有:

  • 能夠描述各種資料格式,無論其是結構化的還是半結構化的;
  • 易于釋出和進行資料交換,內建後的資料可以友善地以多種格式釋出并便于在應用之間交換資料;
  • 可以采用關系或對象資料模式為全局模式,但它們并不能很好地滿足上述要求。 4)基于JSON的資料交換格式 在開發用戶端與服務端的應用當時,資料交換接口通常都是通過XML格式來進行資料交換的。近年來,随着AJAX技術的興起,JSON(Java Script Object Notation)作為一種輕量級的資料交換格式,以其易于閱讀和編寫的優點,被越來越多地應用到各個項目中。 5.3.4軟體內建 1.CORBA 對象管理組織(Object Management Group,OMG)是CORBA規範的制定者,是由800多個資訊系統供應商、軟體開發者和使用者共同構成的國際組織,建立于1989年。OMG在理論上和實踐上促進了面向對象軟體的發展。OMG的目的則是為了将對象和分布式系統技術內建為一個可互相操作的統一結構,此結構既支援現有的平台也将支援未來的平台內建。 2.COM COM中的對象是一種二進制代碼對象,其代碼形式是DLL或EXE執行代碼。COM中的對象都被直接注冊在Windows的系統庫中,是以COM中的對象都不再是由特定的程式設計語言及其程式設計環境所支援的對象,而是由系統平台直接支待的對象。COM對象可能由各種程式設計語言實作,并為各種程式設計語言所引用。COM對象作為某個應用程式的構成單元,不但可以作為該應用程式中的其他部分,而且還可以單獨地為其他應用程式系統提供服務。 3.DCOM與COM+ DCOM作為COM的擴充,不僅繼承了COM優點,而且針對分布環境還提供了一些新的特性,如位置透明性、網絡安全性、跨平台調用等。DCOM實際上是對使用者調用程序外服務的一種改進,通過RPC協定,使使用者通過網絡可以以透明的方式調用遠端機器上的遠端服務。 COM+為COM的新發展或COM更高層次上的應用,其底層結構仍然以COM為基礎,幾乎包容了COM的所有内容。COM+倡導了一種新的概念,它把COM元件軟體提升到應用層而不再是底層的軟體結構,通過作業系統的各種支待,使元件對象模型建立在應用層上,把所有元件的底層細節留給作業系統。 4..NET .NET是基于一組開放的網際網路協定,推出的一系列的産品、技術和服務。NET開發架構在通用語言運作環境基礎上,給開發入員提供了完善的基礎類庫、資料庫通路技術及網絡開發技術,開發者可以使用多種語言快速建構網絡應用。
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯

添加圖檔注釋,不超過 140 字(可選)

5.J2EE J2EE架構是使用Java技術開發組織級應用的一種事實上的工業标準,它是Java技術不斷适應和促進組織級應用過程中的産物。J2EE為搭建具有可伸縮性、靈活性、通用語言運作環境易維護性的組織系統提供了良好的機制。J2EE的體系結構可以分為用戶端層、伺服器端元件層、EJB層和資訊系統層。它還提供了EJB、JavaServletsAPI、JSP和XML技術的全面支援等。 5.3.5應用內建 如果一個系統支待位于同一層次上的各種構件之間的資訊交換,那麼稱該系統支援互操作性。從開放系統的觀點來看,互操作性指的是能在對等層次上進行有效的資訊交換。如果一個子系統(構件或部分)可以從一個環境移植到另一個環境,稱它是可移植的。 內建關心的是個體和系統的所有硬體與軟體之間各種人/機界面的一緻性。從應用集合的一緻表示、行為與功能的角度來看,應用(構件或部分)的內建化集合提供一種一緻的無縫使用者界面。從資訊系統內建技術的角度看,在內建的堆棧上,應用內建在最上層,主要解決應用的互操作性的問題

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯

添加圖檔注釋,不超過 140 字(可選)

文法、語義、語用三者對應到系統內建技術上,網絡內建解決文法的問題,資料內建解決語義的問題,應用內建解決語用的間題。 應用內建或組織應用內建CEAI)是指将獨立的軟體應用連接配接起來,實作協同工作。借助應用內建,組織可以提高營運效率,實作工作流自動化,并增強不同部門和團隊之間的協作。技術要求大緻有:

  • 具有應用間的互操作性:應用的互操作性提供不同系統間資訊的有意義交換,即資訊的語用交換,而不僅限于文法交換和語義交換。此外,它還提供系統間功能服務的使用功能,特别是資源的動态發現和動态類型檢查。
  • 具有分布式環境中應用的可移植性:提供應用程式在系統中遷移的潛力并且不破壞應用所提供的或正在使用的服務。這種遷移包括靜态的系統重構或重新安裝以及動态的系統重構。
  • 具有系統中應用分布的透明性:分布的透明性屏蔽了由系統的分布所帶來的複雜性。它使應用程式設計者不必關心系統是分布的還是集中的,進而可以集中精力設計具體的應用系統,這就大大減少了應用內建程式設計的複雜性。

實作上述目标的關鍵在于,在獨立應用之間實作實時雙向通信和業務資料流,這些應用包括本地應用和雲應用。借助互聯互通的流程和資料交換,組織通常可以基于統一的使用者界面或服務,協調所有基礎設施和應用的各種功能。當事件或資料發生變化時,應用內建會確定不同應用之間保持同步。應用內建不同于資料內建,資料內建是共享資料,并不存儲資料;而應用內建是在功能層面将多個應用直接連接配接起來。

由于應用內建重點關注的是工作流層面的應用連接配接,是以需要的資料存儲空間和計算時間并不多。應用內建既可以部署在雲端,內建SaaSCRM等雲應用,也可以部署在受防火牆保護的本地,內建傳統ERP系統等,還可以部署在混合環境中,內建本地應用和托管在專用伺服器上的雲應用。

可以幫助協調連接配接各種應用的元件有:

  • 應用程式設計接口(APO:API是定義不同軟體互動方式的程式和規則,可以支待應用之間互相通信。API利用特定的資料結構,幫助開發人員快速訪間其他應用的功能。
  • 事件驅動型操作:當觸發器(即事件)啟動一個程式或一組操作時,系統就會執行事件驅動型操作。
  • 資料映射:将資料從一個系統映射到另一個系統,可以定義資料的交換方式,進而簡化後續的資料導出、分組或分析工作。 5.4安全工程 5.4.1 工程概述 資訊安全系統工程就是要建造一個資訊安全系統,它是整個資訊系統工程的一部分,而且最好是與業務應用資訊系統工程同步進行,主要圍繞“資訊安全“内容,如資訊安全風險評估、資訊安全政策制定、資訊安全需求确定、資訊安全系統總體設計、資訊安全系統詳細設計、資訊安全系統裝置選型、資訊安全系統工程招投标、密鑰密碼機制确定、資源界定和投權、資訊安全系統施工中需要注意防洩密問題和施工中後期的資訊安全系統割試、營運、維護的安全管理等問題。 業務應用資訊系統工程所主要關注的是客戶的需求、業務流程、價值鍊等組織的業務優化和改造的問題。資訊安全系統建設所關注的問題恰恰是業務應用資訊系統正常營運所不能缺少的。
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯

添加圖檔注釋,不超過 140 字(可選)

資訊安全系統服務于業務應用資訊系統并與之密不可分,但又不能混為一談。資訊安全系統不能脫離業務應用資訊系統而存在,如建立國稅資訊系統、公安資訊系統、社保資訊系統等,一定包含業務應用資訊系統和資訊安全系統兩個部分,但二者的功能、操作流程、管理方式、人員要求、技術領域等都完全不同。 業務應用資訊系統是支撐業務營運的計算機應用資訊系統,如銀行櫃台業務資訊系統、國稅征收資訊系統等。資訊系統工程即建造資訊系統的工程,包括兩個獨立且不可分割的部分,即資訊安全系統工程和業務應用資訊系統工程。 資訊安全系統工程是指為了達到建設好資訊安全系統的特殊需要而組織實施的工程。資訊安全系統工程作為資訊系統工程的一個子集,其安全體系和政策必須遵從系統工程的一般性原則和規律。資訊安全系統工程原理适用于系統和應用的開發、內建、運作、管理、維護和演變,以及産品的開發、傳遞和演變。 5.4.2 安全系統 資訊安全系統是客觀的、獨立于業務應用資訊系統而存在的資訊系統。下面用一個“宏觀”三維空間圖來反映資訊安全系統的體系架構及其組成。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  1. X軸是“安全機制”。安全機制可以了解為提供某些安全服務,利用各種安全技術和技巧,所形成的一個較為完善的結構體系。
  2. Y軸是“OSI網絡參考模型”。資訊安全系統的許多技術、技巧都是在網絡的各個層面十實施的,離開網絡資訊系統的安全也就失去意義。
  3. Z軸是“安全服務”。安全服務就是從網絡中的各個層次提供給資訊應用系統所需要的安全服務支援。如對等實體認證服務、通路控制服務、資料保密服務等。

由X、Y、Z三個軸形成的資訊安全系統三維空間就是資訊系統的“安全空間”。随着網絡的逐層擴充,這個空間不僅範圍逐漸加大,安全的内涵也就更豐富,達到具有認證、權限、完整、加密和不可否認五大要素,也叫作“安全空間”的五大屈性。

1安全機制

安全機制包含基礎設施實體安全、平台安全、資料安全、通信安全、應用安全、運作安全、管理安全、授權和審計安全、安全防範體系等。

  1. 基礎設施實體安全。基礎設施實體安全主要包括機房安全、場地安全、設施安全、動力系統安全、災難預防與恢複等。
  2. 平台安全。平台安全主要包括作業系統漏洞檢測與修複、網絡基礎設施廂洞檢測與修複、通用基礎應用程式漏洞檢測與修複、網絡安全産品部署等。
  3. 資料安全。資料安全主要包括媒體與載體安全保護、資料通路控制、資料完整性、資料可用性、資料監控和審計、資料存儲與備份安全等。
  4. 通信安全。通信主要包括通信線路和網絡基礎設施安全性測試與優化、安裝網絡加密設施、設定通信加密軟體、設定身份鑒别機制、設定并測試安全通道、測試各項網絡協定運作漏洞等。
  5. 應用安全。應用安全主要包括業務軟體的程式安全性測試(Bug分析)、業務交往的防抵賴測試、業務資源的通路控制驗證測試、業務實體的身份鑒别檢測、業務現場的備份與恢複機制檢查,以及業務資料的唯一性與一緻性及防沖突檢測、業務資料的保密性測試、業務系統的可靠性測試、業務系統的可用性測試等。
  6. 運作安全。運作安全主要包括應急處置機制和配套服務、網絡系統安全性監測、網絡安全産品運作監測、定期檢查和評估、系統更新和更新檔提供、跟蹤最新安全漏洞及通報、災難恢複機制與預防、系統改造管理、網絡安全專業技術咨詢服務等。
  7. 管理安全。管理安全主要包括人員管理、教育訓練管理、應用系統管理、軟體管理、裝置 管理、文檔管理、資料管理、操作管理、運作管理、機房管理等。
  8. 授權和審計安全。授權安全是指以向使用者和應用程式提供權限管理和授權服務為目标, 主要負責向業務應用系統提供授權服務管理,提供使用者身份到應用授權的映射功能,實作與實際應用處理模式相對應的,與具體應用系統開發和管理無關的通路控制機制。
  9. 安全防範體系。組織安全防範體系的建立,就是使得組織具有較強的應急事件處理能力,其核心是實作組織資訊安全資源的綜合管理,即EISRM(Enterprise Information Security Resource Management)。組織安全防範體系的建立可以更好地發揮以下六項能力:預警(Warn)、保護(Protect)、檢測(Detect)、反應(Response)、恢複(Recover)和反擊(Counter-attack)6個環節,即綜合的WPDRRC資訊安全保障體系。

2安全服務

安全服務包括對等實體認證服務、資料保密服務、資料完整性服務、資料源點認證服務、禁止否認服務和犯罪證據提供服務等。

  1. 對等實體認證服務。對等實體認證服務用于兩個開放系統同等層中的實體建立連結或資料傳輸時,對對方實體的合法性、真實性進行确認,以防假冒。
  2. 資料保密服務。包括多種保密服務,為了防止網絡中各系統之間的資料被截獲或被非法存取而洩密,提供密碼加密保護。提供連結方式和無連結方式兩種資料保密,同時也可對使用者可選字段的資料進行保護。
  3. 資料完整性服務。防止非法實體對交換資料的修改、插入、删除及在資料交換過程中的丢失。分為:
  • 帶恢複功能的連結方式資料完整性;
  • 不帶恢複功能的連結方式資料完整性;
  • 選擇字段連結方式資料完整性;
  • 選擇字段無連結方式資料完整性;
  • 無連結方式資料完整性。

(4)資料源點認證服務。資料源點認證服務用于確定資料發自真正的源點,防止假冒。

(5)禁止否認服務。由兩種服務組成:不得否認發送和不得否認接收。

(6)犯罪證據提供服務。指為違反國内外法律法規的行為或活動,提供各類數字證據、資訊線索等。

3安全技術

安全技術主要涉及加密、數字簽名技術、防控控制、資料完整性、認證、資料挖掘等。

5.4.3 工程基礎

資訊安全系統的建設是在OSI網絡參考模型的各個層面進行的,是以資訊安全系統工程活動離不開其他相關工程,主要包括:硬體工程、軟體工程、通信及網絡工程、資料存儲與災備工程、系統工程、測試工程、密碼工程群組織資訊化工程等。

資訊安全系統建設是遵從組織所制定的安全政策進行的。而安全政策由組織群組織的客戶和服務對象、內建商、安全産品開發者、密碼研制機關、獨立評估者和其他相關組織共同協商建立。是以資訊安全系統工程活動必須要與其他外部實體進行協調。

5.4.4I.一和休系架構

資訊系統安全工程(Information Security System Engineering, ISSE)是一門系統工程學,它的主要内容是确定系統和過程的安全風險,并且使安全風險降到最低或使其得到有效控制。

1.ISSE-CMM基礎

資訊安全系統工程能力成熟度模型(ISSE Capability Maturity Model, ISSE-CMM)是一種衡量資訊安全系統工程實施能力的方法,是使用面向工程過程的一種方法。ISSE-CMM是建立在統計過程控制理論基礎上的。ISSE-CMM主要用于指導資訊安全系統工程的完善和改進,使資訊安全系統工程成為一個清晰定義的、成熟的、可管理的、可控制的、有效的和可度量的學科。

ISSE-CMM模型是資訊安全系統工程實施的度量标準,它覆寫了:

  • 整個生命周期,包括工程開發、運作、維護和終止;
  • 管理、組織和工程活動等的組織;
  • 與其他規範如系統、軟體、硬體、人的因素、測試工程、系統管理、運作和維護等規範并行的互相作用;
  • 與其他組織(包括擷取、系統管理、認證、認可和評估組織)的互相作用。

ISSE-CMM主要适用于工程組織(Engineering Organizations)、擷取組織(Acquiring Organizations)和評估組織(Evaluation Organizations)。資訊安全工程組織包含系統內建商、應用開發商、産品提供商和服務提供商等,這些組織可以使用ISSE-CMM對工程能力進行自我評估。

2.ISSE過程

ISSE過程的目标是提供一個架構,每個工程項目都可以對這個架構進行裁剪以符合自己特定的需求。ISSE表現為直接與系統工程功能和事件相對應的一系列資訊安全系統工程行為。ISSE将資訊安全系統工程實施過程分解為:工程過程(Engineering Process)、風險過程(Risk Process)和保證過程(Assurance Process)三個基本的部分。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯

添加圖檔注釋,不超過 140 字(可選)

  1. 工程過程。資訊安全系統工程與其他工程活動一樣,是一個包括概念、設計、實作、測試、部署、運作、維護、退出的完整過程。資訊安全系統工程的實施必須緊密地與其他的系統工程組進行合作。
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  1. 風險過程。資訊安全系統工程的一個主要目标是降低資訊系統運作的風險。風險就是有害事件發生的可能性及其危害後果。出現不确定因素的可能性取決于各個資訊系統的具體情況。

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

  1. 保證過程。指安全需求得到滿足的可信程度。ISSE-CMM的可信程度來自于資訊安全系統工程實施過程可重複性的結果品質,基礎是工程組織的成熟性,成熟的組織比不成熟的組織更可能産生出重複的結果。
資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

3.ISSE-CMM體系結構

ISSE-CMM的體系結構完全适應整個資訊安全系統工程範圍内決定資訊安全工程組織的成熟性。這個體系結構的目标是為了落實安全政策,而從管理和制度化突出資訊安全工程的基本特征。為此,該模型采用兩維設計,其中一維是"域”(Domain),另一維是“能力”(Capability)。

  1. 域維/安全過程域

域維彙集了定義資訊安全工程的所有實施活動,這些實施活動稱為過程域。能力維代表組織能力,它由過程管理能力和制度化能力構成。這些實施活動被稱作公共特性,可在廣泛的域中應用。執行一個公共特性是一個組織能力的标志。通過設定這兩個互相依賴的維,ISSE­CMM在各個能力級别上覆寫了整個資訊安全活動範圍。ISSE包括6個基本實施,這些基本實施被組織成11個資訊安全工程過程域,這些過程域覆寫了資訊安全工程所有主要領域。

一個過程域通常需要滿足:

  • 彙集一個域中的相關活動,以便于使用;
  • 就是有關有價值的資訊安全工程服務;
  • 可在整個組織生命周期中應用;
  • 能在多個組織和多個産品範圍内實作;
  • 能作為一個獨立過程進行改進;
  • 能夠由類似過程興趣組進行改進;
  • 包括所有需要滿足過程域目标的基本實施(Base Practices, BP)。

基本實施的特性包括:

  1. 應用于整個組織生命期;
  2. 和其他BP互相不覆寫;
  3. 代表安全業界“最好的實施”;
  4. 不是簡單地反映目前技術;
  5. 可在業務環境下以多種方法使用;
  6. 不指定特定的方法或工具。

由基本實施組成的11個安全工程過程域包括:PA01實施安全控制、PA02評估影響、PA03評估安全風險、PA04評估威脅、PA05評估脆弱性、PA06建立保證論據、PA07協調安全、PA08監控安全态、PA09一提供安全輸入、PA10确定安全需求、PA11驗證和證明安全。

ISSE-CMM還包括11個與項目群組織實施有關的過程域:PA12保證品質、PAl3管理配置、PA14管理項目風險、PA15監測和控制技術工程項目、PA16規劃技術工程項目、PA17定義組織的系統工程過程、PA18一改進組織的系統工程過程、PA19管理産品線的演變、PA20一管理系統工程支援環境、PA21提供不斷更新的技能和知識、PA22與供應商的協調。

2)能力維/公共特性

通用實施(Generic Practices, GP),由被稱為公共特性的邏輯域組成,公共特性分為5個級别,依次表示增強的組織能力。與域維基本實施不同的是,“能力”維的通用實施按其成熟性排序,是以進階别的通用實施位于能力維的高端。

公共特性設計的目的是描述在執行工作過程(此處即為資訊安全工程域)中組織特征方式的主要變化。每一個公共特性包括一個或多個通用實施。公共特性滿足每一個級别成熟的資訊安全工程特性。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯切換為居中

添加圖檔注釋,不超過 140 字(可選)

3)能力級别

當評估一個組織能力時,如果這個組織隻執行了一個特定級别的一個特定過程的部分公共特性時,則這個組織對這個過程而言:處于這個級别的最底層。例如,在2級能力上,如果缺乏跟蹤執行公共特性的經驗和能力,那麼跟蹤項目的執行将會很困難。如果進階别的公共特性在一個組織中實施,但其低級别的公共特性未能實施,則這個組織不能獲得該級别的所有能力帶來的好處。評估組織在評估一個組織個别過程能力時,應對這種情況加以考慮。

當一個組織希望改進某個特定過程能力時,能力級别的實施活動可為實施改進的組織提供一個“能力改進路線圖”。基于這一理由,ISSE-CMM的實施按公共特性進行組織,并按級别進行排序。對每一個過程域能力級别的确定,均需執行一次評估過程。這意味着不同的過程域能夠或可能存在不同的能力級别上。組織可利用這個面向過程的資訊,作為側重于這些過程改進的手段。組織改進過程活動的順序和優先級應在業務目标裡加以考慮。業務目标是如何使用ISSE-CMM模型的主要驅動力。但是,對典型的改進活動,也存在着基本活動次序和基本的原則。這個活動次序在ISSE-CMM結構中通過公共特性和能力級别加以定義。能力級别代表工程組織的成熟度級别。

資訊系統項目管理師第四版知識摘編:第5章 資訊系統工程

編輯

添加圖檔注釋,不超過 140 字(可選)

5.5本章練習

1選擇題

  1. ____使系統的描述及資訊模型的表示與客觀實體相對應,符合入們的思維習慣,有利于系統開發過程中使用者與開發人員的交流和溝通。 A原型化方法B.面向對象方法C.結構化方法D面向服務的方法 參考答案:B
  2. 關于UML(統一模組化語言)描述中,不正确的是:____

A.UML适用于各種軟體開發方法B.UML适用于軟體生命周期的各個階段

C.行為事物是UML模型中的靜态部分D.UML不是程式設計語言

參考答案:C

(3)面向對象軟體開發方法的主要優點包括

①符合人類思維習慣 ②普适于各類資訊系統的開發

③構造的系統複用性好 ④适用于任何資訊系統開發的全生命周期

  1. ①③④ B. ①②③ C. ②③④ D. ①②④

參考答案:B

(4)關于面向對象方法的描述,不正确的是:____。

A相比于面向過程設計方法,面向對象方法更符合人類思維習慣

B封裝性、繼承性、子產品性是面向對象的三大特征

C面向對象設計中,應把握高内聚、低耦合的原則

D使用面向對象方法構造的系統具有更好的複用性

參考答案:B

(5)某行業協會計劃開發一個資訊管理系統,現階段使用者無法明确該系統的全部功能要求,希望在試用後再逐漸改進并最終實作使用者需求。則該資訊系統應采用的開發方法是____。

A結構化方法B面向對象方法C原型化方法D面向服務方法

參考答案:C

(6)軟體測試是發現軟體錯誤(缺陷)的主要手段,軟體測試方法可分為靜态測試和動态測試,其中____屬于靜态測試。

A代碼走查B功能測試C黑盒測試D白盒測試

參考答案:A

2案例題

某跨國公司70%的收入來源于出售他們國際新聞以及金融資訊等基本資訊産品。這些産品是通過它的市場顯示系統向使用者展示的。為改進市場顯示系統的可用性,使其能更容易、更友善地滿足顧客的要求,公司讓小張負責一個最高優先權的項目,任務是改進顯示系統的使用者界面。為此,小張組建了“可用性小組"。這實際上是一個“虛拟小組”,除包括小張及三名公司成員之外,還包括一些有關的技術公司,如互動圖形公司、微軟公司的代表。該小組還與500多名專家保持聯系,其中一位是“符号學專家”,專門負責把計算機的動作翻譯成像Windows的圖示那樣的一些符号。該小組并不通過市場調查,去問顧客想要一些什麼,而是在他們建立的”可用性實驗室”中觀察客戶們怎樣利用公司的顯示系統查找他們想要的資訊産品。

可用性實驗室有兩個房間,一間給使用者們用,使用者在公司助理人員的伴随下完成一系列就應用系統的實驗。另一間房間被玻璃隔成一些小間,各放有一台顯示器,顯示内容與使用者螢幕上的内容相同,并用可視信号或者是内部通信系統與使用者保待聯系實驗時,要求客戶完成一系列的操作。例如,可以要求使用者去查詢某隻股票的價格,畫出它在一定期間内走勢圖,找出一些相關的消息和公司的财務資料。随着使用者的操作,可用性小組的人員就在螢幕上觀察使用者在什麼地方發生問題,測試出完成每項操作的時間,留意引起使用者工作中斷的過程。使用者操作過程還被錄像,從錄像帶上能夠更精确地測暈所用的時間。該實驗室每個月能完成100個使用者的三項至四項主要測試。實驗室還要去了解公司服務機構接聽的使用者求助電話,将使用者求助問題分為四類,錄入資料庫并進行統計分析,找出使用者遇到的主要問題并設法改進。例如,1994年4月有34%的電話是有關RT工作站反映出的可用性問題的,進一步分析表明28%的電話是關于報價單問題的,于是公司就将報價單在工作站上的顯示形式進行了改進。

可用性小組最後制定了一系列規範,要求所有公司開發小組開發的軟體産品都要經過可用性小組的審查,相同的功能要用相同的圖示,圖示也必須在可用性小組開發的一系列标準圖示集中選用。這些圖示,開發小組可以在網絡上得到。

問題1:可用性實驗室為公司解決了什麼問題?

問題2:上述系統采用了什麼開發方法?簡述該方法的基本思想和基本步驟?

問題3:這種開發方法适合于解決哪一類問題?

問題4:常用的資訊系統開發方法有哪些?這些方法分别具有哪些優缺點?分别适用于哪些場合?

繼續閱讀