课程表

信息系统项目管理师课程

工具箱
速查手册

信息系统工程

注意:本页面内容为W3xue原创,未经授权禁止转载,违者必究!
来源:W3xue  发布时间:2024/4/1 10:40:24

信息系统工程是用系统工程原理方法指导信息系统建设与管理的工程技术学科,结合信息科学、管理科学、系统科学、计算机科学与通信技术,具有独特风格。其主要任务是研究信息处理规律,利用计算机、互联网和云计算等技术形式化表达和处理规律。其基本概念、原理和方法提供了完整、科学、实用的研究与工程体系,对实际信息系统建设具有重要指导意义。

一、软件工程

软件工程是应用计算机科学、数学及管理科学原理,以工程化的原则和方法解决软件问题的工程。其目标是提高软件生产效率、质量和降低成本。IEEE对软件工程的定义是将系统的规范、可度量的工程化方法应用于软件开发、运行和维护的全过程及相关研究。

软件工程包括方法、工具和过程三个部分:软件工程方法是完成项目的技术手段,支持整个软件生命周期;软件工程使用的工具是智力和体力的延伸,在开发软件的活动中自动或半自动地支持软件的开发和管理,生成各种软件文档;软件工程过程贯穿软件开发的各个环节,管理人员评估、管理和控制软件开发的质量、进度和成本,包括人员组织、计划跟踪与控制、成本估算、质量保证和配置管理等。

1、架构设计

软件架构为软件系统提供了高级抽象,包括结构、行为和属性,由构件的描述、构件相互作用(连接件)、指导构件集成的模式以及这些模式的约束组成。它指定了系统的组织结构、拓扑结构,并显示了系统需求和构件之间的对应关系,提供了设计决策的基本原则。

软件架构是软件工程的一部分,同时也借鉴了计算机架构和网络架构的思想和方法。近年来,软件架构已成为计算机科学的一个独立学科分支,涉及软件架构描述、软件架构风格、软件架构评估和软件架构的形式化方法等。其核心目标是解决软件的复用、质量和维护问题。

  1. 软件架构风格: 软件架构设计的核心问题之一是能否实现架构级别的软件复用。软件架构风格描述了特定应用领域中系统组织方式的惯用模式,包括一组构件、连接件类型和组合方式。Garlan和Shaw将软件架构分为数据流风格、调用/返回风格、独立构件风格、虚拟机风格和仓库风格。

  2. 软件架构评估: 软件架构设计是软件开发的关键步骤,选择合适的架构对系统设计至关重要。然而,如何评估所选架构的适用性以及确保其能顺利开发成功的软件产品是一个挑战。架构评估关注系统的质量属性,涉及敏感点和权衡点的概念。基于调查问卷、基于场景和基于度量的评估方式是常见的方法。基于场景的评估方式主要包括架构权衡分析法(ATAM)、软件架构分析法(SAAM)和成本效益分析法(CBAM),通过描述刺激、环境和响应来评估架构对质量需求的满足程度。

2、需求分析

软件需求指用户对新系统在功能、行为、性能、设计约束等方面的期望。根据IEEE的软件工程标准词汇表,软件需求是指用户解决问题或达到目标所需的条件或能力,以及反映这些条件或能力的文档说明。

  1. 需求的层次: 软件需求包括业务需求、用户需求和系统需求。业务需求涉及目标和整体概念,用户需求则更具体,反映了用户对系统的期望,而系统需求则是具体的功能和设计要求。质量功能部署(QFD)是一种将用户要求转化成软件需求的技术,将软件需求分为常规需求、期望需求和意外需求。

  2. 需求过程: 需求过程包括需求获取、需求分析、需求规格说明书编制、需求验证与确认。

    • 需求获取涉及确定和理解不同项目干系人的需求和约束,常用方法包括用户访谈和问卷调查。

    • 需求分析将获取到的需求转化为清晰、无歧义、可测试的用户需求,其中结构化分析和面向对象的分析是常用方法。

    • 需求规格说明书编制是将用户需求转化为软件需求文档的过程,其目的是为项目干系人和开发团队提供一个共同的理解基础。

    • 需求验证与确认包括对软件需求正确性和完整性进行验证,以确保需求为后续开发工作提供了足够的基础。常用的方法包括需求评审和需求测试。

  3. UML: 统一建模语言(UML)是一种功能强大且普遍适用的建模语言,支持从需求分析到软件开发的全过程。其结构包括构造块、规则和公共机制,提供了一套统一的标准,有助于软件工程师进行系统设计和开发。

1.png

1)UML中的事物

UML中的事物也称为建模元素,包括结构事物(StructuralThings)、行为事物(BehavioralThings,也称动作事物)、分组事物(Grouping Things)和注释事物(Annotational Things,也称注解事物)。这些事物是 UMI 模型中最基本的 O0 构造块,如表 5-2 所示。

1.png

2.png

2)UML中的关系

UML用关系把事物结合在一起,主要有四种关系,分别为:依赖(Dependency):依赖是两个事物之间的语义关系,其中一个事物发生变化会影响另一个事物的语义。

@关联(Association):关联描述一组对象之间连接的结构关系。

泛化(Generalization):泛化是一般化和特殊化的关系,描述特殊元素的对象可替换般元素的对象。

实现(Realization):实现是类之间的语义关系,其中的一个类指定了由另一个类保证执行的契约。

3)UML2.0中的图

UML 2.0 包括 14 种图,如表 5-3 所示。

1.png

2.png

4)UML 视图

UML对系统架构的定义是系统的组织结构,包括系统分解的组成部分,以及它们的关联性、交互机制和指导原则等提供系统设计的信息,包括5个系统视图:

●逻辑视图:逻辑视图也称为设计视图,它表示了设计模型中在架构方面具有重要意义的部分,即类、子系统、包和用例实现的子集。

●进程视图:进程视图是可执行线程和进程作为活动类的建模,它是逻辑视图的一次执行实例,描述了并发与同步结构。

●实现视图:实现视图对组成基于系统的物理代码的文件和构件进行建模。

●部署视图:部署视图把构件部署到一组物理节点上,表示软件到硬件的映射和分布

结构。

●用例视图:用例视图是最基本的需求分析模型。另外,UML还允许在一定的阶段隐藏模型的某些元素,遗漏某些元素,可不保证模型的完整性,但模型逐步地要达到完整和一致。

4.面向对象分析

面向对象分析(OOA)的基本任务是利用面向对象的方法对问题领域进行分析和理解,识别事物及其之间的关系,找出描述问题领域和系统功能所需的类和对象,定义它们的属性和职责以及它们之间的关联。最终目标是产生一个符合用户需求并能直接反映问题领域和系统功能的OOA模型及其详细说明。OOA模型独立于具体实现,即不考虑与系统具体实现相关的因素,这与面向对象设计(OOD)的区别在于,OOA关注“做什么”,而OOD关注“怎么做”。面向对象分析阶段的核心工作是建立系统的用例模型与分析模型。

1)用例模型: 用例模型是用来描述系统提供的各种服务以及参与这些服务的用户(或系统外部角色)之间的交互。与结构化分析方法不同,用例方法将系统功能视为用户所需的服务,而不是简单地将功能分解为各个模块。用例方法是一种需求合成技术,通过识别参与者、合并需求以获得用例、细化用例描述和调整用例模型等阶段,逐步建立用例模型。这个过程着重于从用户的角度理解系统功能,并确保用例模型能够满足用户的需求。

2)分析模型:在用例建模阶段从用户的角度对系统进行了描述,但是捕获了用例并不意味着分析的结束,还需要对需求进行深入的分析,以获取有关问题领域本质内容的分析模型。分析模型描述系统的基本逻辑结构,展示对象和类如何组成系统(静态模型),以及它们如何保持通信,实现系统行为(动态模型)。为了使模型独立于具体的开发语言,系统分析师需要将注意力集中在概念性问题上,而不是软件技术问题上,这些技术的起点是领域模型。领域模型又称为概念模型或简称为域模型,它表示代表事物与概念的对象,即概念类。概念类可以从用例模型中获得灵感,并经过完善形成分析模型中的分析类。每个用例对应一个类图,描述参与该用例实现的所有概念类,用例的实现主要通过交互图来表示。例如,用例的事件流会对应产生一个顺序图,描述相关对象如何通过合作来完成整个事件流,复杂的备选事件流也可以产生一个或多个顺序图。所有这些图的集合构成了系统的分析模型。建立分析模型的过程大致包括定义概念类,确定类之间的关系,为类添加职责,建立交互图等,其中有学者将前三个步骤统称为类-责任-协作(CRC)建模。类之间的主要关系包括关联、依赖、泛化、聚合、组合和实现等,它们在UML中的表示方式如表5-5所示。

1.png

2.png

3、软件设计

需求分析阶段解决了系统“做什么”的问题,而软件设计阶段解决了“怎么做”的问题,也是系统实施的基础。一个合理的软件设计方案可以保证系统质量,提高开发效率,并为系统实施工作奠定基础。从方法上来说,软件设计分为结构化设计与面向对象设计。

  1. 结构化设计(Structured Design,SD): 结构化设计是一种自顶向下、逐步求精和模块化的过程,基于需求分析阶段产生的文档,如数据流图(DFD)和数据字典。该方法将软件设计成由相对独立且具有单一功能的模块组成的结构,分为概要设计和详细设计两个阶段。在概要设计阶段,将系统的功能需求分配给软件模块,确定每个模块的功能和调用关系,形成系统结构图。在详细设计阶段,根据任务的不同,对输入/输出、处理流程、数据存储、用户界面、安全性和可靠性等进行设计。在结构化设计中,需要遵循高内聚、低耦合的原则,即模块内部各成分联系紧密,模块之间联系松散。

  2. 面向对象设计(Object-Oriented Design,OOD): 面向对象设计是面向对象分析方法的延续,其基本思想包括抽象、封装和可扩展性,主要通过继承和多态来实现。在面向对象设计中,数据结构和操作算法封装在一个对象中,更贴近现实世界的设计方法。其主要任务是对类和对象进行设计,包括属性、方法以及类与类之间的关系。在面向对象设计中,提高软件的可维护性和可复用性是至关重要的。常用的设计原则包括单一职责原则、开闭原则、李氏替换原则、依赖倒置原则、接口隔离原则、组合重用原则和迪米特原则。

  3. 设计模式: 设计模式是前人经验的总结,方便地复用成功的软件设计。根据处理范围和用途的不同,设计模式可分为类模式和对象模式,以及创建型、结构型和行为型三种。创建型模式用于创建对象,结构型模式处理类或对象的组合,行为型模式描述类或对象的交互以及职责的分配。常见的设计模式包括工厂方法模式、适配器模式、观察者模式等。设计模式的使用可以降低分析设计和实现的难度,提高系统的可复用性和灵活性。

4、软件实现

  1. 软件配置管理: 软件配置管理通过标识产品的组成元素、管理和控制变更、验证、记录和报告配置信息来控制产品的演进和完整性。它与软件质量保证活动密切相关,有助于实现软件质量保证目标。软件配置管理活动包括制定软件配置管理计划、软件配置标识、软件配置控制、软件配置状态记录、软件配置审计、软件发布管理与交付等。制定软件配置管理计划需要了解组织结构环境和组织单元之间的联系,明确软件配置控制任务。软件配置标识活动识别要控制的配置项,并为这些配置项及其版本建立基线。软件配置控制关注的是管理软件生命周期中的变更。软件配置状态记录标识、收集、维护并报告配置管理的配置状态信息。软件配置审计是独立评价软件产品和过程是否遵从已有的规则、标准指南、计划和流程而进行的活动。软件发布管理和交付通常需要创建特定的交付版本,完成此任务的关键是软件库。

  2. 软件编码: 软件编码是将软件设计的结果翻译成计算机可以“理解和识别”的形式的过程,也称为程序设计语言。编码是软件工程中的一个步骤,其质量主要取决于软件设计的质量。选择适当的程序设计语言是编码之前的重要工作之一。程序设计语言的特性会影响人的思维方式、程序的可读性和测试性。在软件编码过程中,应注意编码风格、程序复杂性度量和编码效率等方面。编码风格包括源程序文档化、数据说明、语句结构和输入/输出方法,应提高程序的可读性和质量。程序复杂性度量可以定量衡量软件的性质,进而评估软件的质量。编码效率涉及程序效率、算法效率、存储效率和IO效率等方面,应优化程序设计以提高效率。

  3. 软件测试: 软件测试是在将软件交付给客户之前的重要步骤,其目的是验证软件是否满足软件质量要求。软件测试方法包括静态测试和动态测试。静态测试是通过人工检测和计算机辅助分析进行的检测,包括对文档和代码的检测。动态测试是在计算机上实际运行程序进行的测试,包括白盒测试和黑盒测试。白盒测试主要用于单元测试,通过测试程序的内部逻辑结构设计测试用例。黑盒测试主要用于集成测试和系统测试,测试程序的功能是否符合需求。软件测试方法应根据软件质量要求进行选择和设计,以发现软件缺陷,提高软件质量。

5、部署交付

软件开发完成后,需要将其部署在最终用户的运行环境中,才能为用户创造价值。传统的软件工程流程通常不包括软件部署与交付,但随着软件复杂度的增加和部署风险的加剧,人们开始关注软件部署问题。软件部署是一个复杂的过程,涉及从开发商发布产品到最终用户在其计算机上安装和维护应用的一系列活动。这些活动包括软件打包、安装、配置、测试、集成和更新等。随着需求和市场的变化,软件部署和交付已经不再是一次性的过程,而是一个持续的过程,贯穿整个软件开发周期。

  1. 软件部署与交付: 软件部署与交付是软件生命周期中的重要环节,涉及到保障软件制品后续运行的配置、安装和激活等活动。部署技术的选择会影响整个软件过程的运行效率和成本投入,软件系统部署的管理代价占据了整个软件管理开销的大部分。软件部署过程中的配置活动对部署结果的准确性有着巨大的影响,应用系统的配置错误是部署过程中主要的问题来源。据Standish Group的统计,软件缺陷造成的损失中相当大的一部分是由于部署与交付失败所引起的。目前,软件部署常见的问题包括分支冗余导致的合并困难、缺陷过多导致的测试阻塞、环境不统一导致的未知错误等。

  2. 持续交付: 为解决软件部署与交付中的问题,持续交付应运而生。持续交付是一系列开发实践方法,旨在确保代码能够快速、安全地部署到生产环境中。持续交付是一个完全自动化的过程,使得业务开发完成后可以一键部署。持续交付提供了一套更完善的解决方案,包括在需求阶段使用用户故事、持续集成、打通开发和运维通路等。持续交付的优势包括缩短提交代码到部署上线的时间、提供快速反馈、使软件在整个生命周期内可部署等。

  3. 持续部署: 对于持续交付来说,持续部署非常重要。常见的持续部署方案包括Kubernetes+Docker和Matrix系统。持续部署的原则包括部署包来自统一的存储库、环境使用相同的部署方式和脚本、部署流程编排阶梯式晋级等。部署层次的设置也是部署管理中的重要一环,包括Build-Ship-Run等环节。不可变服务器是一种部署模式,除了更新和安装补丁程序外,不对服务器进行任何更改。蓝绿部署和金丝雀部署是常见的部署方式,分别用于快速回滚和稳步发布新版本。

  4. 部署与交付的新趋势: 持续集成、持续交付和持续部署的出现反映了新的软件开发模式与趋势。工作职责和人员分工的转变、大数据和云计算基础设施的普及以及研发运维的融合是其中的主要特点。评价软件交付能力时通常会使用部署时间和可重复性等指标,而高频率的部署能够更快地响应客户需求。

6、过程管理

软件过程能力是指组织综合运用软件过程、技术、资源和人员能力达成业务目标的能力。它涵盖了治理、开发与交付、管理与支持、组织管理等方面。软件过程能力成熟度则指组织在提升软件产品开发或服务能力过程中,各个发展阶段的软件能力成熟度。常见的软件过程管理方法包括CMMI和CSMM,它们旨在帮助组织提升软件开发能力,提供了评估和改进软件过程能力的成熟度模型。CSMM结合了软件工程、项目管理、产品管理、组织治理、质量管理等领域的优秀实践,为组织提供了一个综合的成熟度模型,帮助提升软件的业务价值。其层次结构如图 5-1所示。

1.png


CSMM模型包括4个能力域、20个能力子域、161个能力要求。治理领域包括战略与治理、目标管理子域,用于确定组织战略、产品方向和业务目标,确保目标实现。开发与交付领域包括需求、设计、开发、测试、部署、服务、开源应用子域,确保通过软件工程过程交付满足需求的软件,增加价值。管理与支持领域包括项目策划、项目监控、项目结项、质量保证、风险管理、配置管理、供应商管理子域,覆盖软件开发项目全过程,确保按成本、进度和质量交付,满足需求。组织管理领域包括过程管理、人员能力管理、组织资源管理、过程能力管理子域,综合管理软件组织能力。CSMM定义了5个成熟度等级,高等级建立在低等级充分实施基础上。成熟度等级的总体特征如表5-6所示。

1.png

2.png

能力域的等级要求如表 5-7 所示。

1.png


二、数据工程

数据工程是信息系统的基础工程,规范数据生命周期,提供可靠数据保障,支持数据共享和互操作。主要包括数据建模、标准化、运维、开发利用和安全等。

1、数据建模

数据建模将现实世界的人、物、活动和概念抽象成计算机可处理的数据,在信息世界和计算机世界中表示和处理。主要运用关系数据库设计理论和数据建模工具建立能正确反映客观世界、便于计算机处理的数据模型。数据模型可分为概念模型、逻辑模型和物理模型。概念模型按用户观点建模,抽象现实世界对象为信息结构,不依赖具体计算机系统或数据库管理系统,是概念级别的模型。概念模型的基本元素如表5-8所示。

1.png

概念模型应真实、充分反映现实世界,具有丰富语义表达能力,且简洁易懂、独立于机器。易于修改和补充,方便数据库设计人员与用户交流,用户积极参与设计。应容易转换为各种数据模型,并易于导出逻辑模型。逻辑模型在概念模型基础上确定数据结构,如关系模型成为重要逻辑数据模型,包括关系、属性和视图等基本元素,见表5-9。

1.png


关系数据模型的操作包括查询、插入、删除和更新数据,需符合完整性约束。实体完整性、参照完整性是必须满足的约束,用户定义的完整性则由具体领域的语义约束确定。物理数据模型考虑技术实现因素,设计数据库结构,包括表、列、外键等,以实现数据存放。物理模型目标是实现逻辑数据模型,可能与逻辑模型有较大不同,但基本元素相对应。

数据建模过程

数据建模包括数据需求分析、概念模型设计、逻辑模型设计和物理模型设计等阶段。

  1. 数据需求分析:这是数据建模的起点,通过分析用户对数据的需求和要求来确定数据模型的基础。需求分析通常与系统需求分析融合进行,利用数据流图描述数据的流动和变化。

  2. 概念模型设计:将用户需求抽象为信息结构,形成概念模型。这一阶段确定了实体、数据和它们之间的关联。

  3. 逻辑模型设计:在概念模型的基础上,设计适合具体数据库管理系统(DBMS)的逻辑模型。由于大多数DBMS采用关系模型,因此逻辑模型设计主要涉及关系模式的设计,将概念模型中的实体、属性和关系转换为关系模式。

  4. 物理模型设计:在完成概念模型和逻辑模型设计后,需要根据具体的DBMS进行物理模型设计,以便将数据模型转换为数据库结构。物理模型设计涉及命名、字段类型确定以及存储过程和触发器的编写等问题。

2、数据标准化

数据标准化是实现数据共享的基础,通过建立相应的原则和规范,使复杂的信息表达、分类和定位简单化、结构化和标准化,从而实现信息的可理解、可比较和可共享,为信息在异构系统之间实现语义互操作提供基础支撑。数据标准化的主要内容包括元数据标准化、数据元标准化、数据模式标准化、数据分类与编码标准化和数据标准化管理。

  1. 元数据标准化: 元数据是关于数据的数据,是对信息资源或数据的结构化描述。它描述了信息资源或数据的内容、覆盖范围、质量、管理方式、所有者、提供方式等信息。元数据描述的对象可以是单一的全文、目录、图像、数值型数据、多媒体等,也可以是资源集合或其生产、加工、使用、管理等过程的描述。根据信息对象的生命周期、元数据描述和管理内容的不同以及元数据的作用,可以划分多种类型,形成一个层次分明、结构开放的元数据体系,如图5-2所示。

  2. 1.png

  3. 数据元标准化随着国际电子商务和贸易的快速发展,需要一个互连、互通、互操作的开放系统互连环境(Open Systems Interconnection Environmen,OSIE)。OSIE四个基本要素(硬件、软件通信和数据)中的三个要素(硬件、软件和通信),已经或正在制定相应的标准。为了使数据在各种不同的应用环境中易于交换和共享,国际标准化组织(Interational Organization fo1Standardization,ISO)提出了数据元标准的概念,要求按共同约定的规则进行统一组织、分类和标识数据,规范统一数据的含义、表示方法和取值范围等,保证数据从产生的源头就具备一致性。数据元: 数据元是数据库、文件和数据交换的基本数据单元。通过一组属性描述其定义、标识、表示和允许值的数据单元。数据元一般由对象、特性和表示组成,其中对象类是可以对其界限和含义进行明确的标识,且特性和行为遵循相同规则的观念、抽象概念或现实世界中事物的集合。表示包括值域、数据类型、表示类和计量单位,用于描述数据元的允许值、数据类型、表示类别和计量单位。数据元提取: 数据元提取是数据元标准化的一项重要内容,目前常用的提取方法有自上而下和自下而上两种。自上而下方法适用于新建系统,通过建模分析确定关心的对象,在概念和逻辑数据模型的基础上分析提取数据元及其属性。自下而上方法适用于已建系统,通过分析和梳理已有的信息系统数据,归纳整理出数据元,并根据应用需求定义各个属性的约束要求和属性描述符。数据元标准: 制定数据元标准需要遵循一定的基本过程,包括确定标准的范围、参与者和制定过程,制定标准文档,并进行评审和修订,如表5-10所示。

1.png

2.png

数据模式标准化:数据模式是数据的概念、组成、结构和相互关系的总称。不同人群对同一客观世界的认知差异导致不同领域存在不同的数据模式,限制了信息共享与交换。为确保信息共享顺畅,需要统一领域的数据模式,保证相关人员对其准确理解。数据模式标准化统一了数据内容、组成、结构及关系,有利于减少数据混乱。建立数据模式需要对实体进行分析和抽象,并采用图描述和数据字典方法来规范描述数据集的内容、组成及结构。

数据分类与编码标准化:数据分类是根据数据内容的属性或特征,按一定原则和方法进行区分和归类,建立分类体系和排列顺序。分类依据应取决于相对最稳定的本质属性,但对于具有多重本质属性的信息,分类需要符合交叉性、双重性或多重性原则。数据编码将事物或概念赋予具有一定规律和易于计算机、人识别处理的符号,形成代码元素集合。数据分类与编码标准化将数据分类与编码工作纳入标准化领域,按科学原则进行分类编码,并由主管机构批准注册发布,作为共同遵守的准则和依据。标准化是简化信息交换、实现信息处理和资源共享的前提,为信息管理系统提供重要技术基础和信息保障依据。标准化消除信息命名、描述、分类和编码的不一致,减少信息的重复采集、加工、存储等操作,确立代码与事物或概念的一一对应关系,保证数据的准确性和相容性,提供信息系统共享和互操作的基础。

数据标准化管理:在数据标准化活动中,首先依据信息需求,并参照现行数据标准、信息系统的运行环境、法规、政策和指导原则,由数据管理机构、专家组和开发者共同参与,运用数据管理工具,得到注册的数据元素、物理模式和扩充的数据模型。数据标准化包括确定数据需求、制定数据标准、批准数据标准和实施数据标准四个阶段。1)确定数据需求。考虑现行法规、政策和数据标准,生成数据需求及相关元数据、域值等文件。2)制定数据标准。处理“确定数据需求”阶段提出的需求,如现有标准不满足,建议新标准或修改现有标准,并记录于数据字典,形成审查和批准的成套建议。3)批准数据标准。数据管理机构审查提交的标准建议和修改,一经批准,扩充或修改数据模型。4)实施数据标准。在各信息系统中实施和改进已批准的数据标准。

3、数据运维

数据开发利用的前提是通过合适的方式将数据保存到存储介质上,并能保证有效的访问,还要通过数据备份和容灾手段,保证数据的高可用性。数据质量管理是在数据产品的生产过程中,确定质量方针、目标和职责,并通过质量策划、质量控制、质量保证和质量改进,来实现所有管理职能的全部活动。

1)数据存储

数据存储指将数据安全、有效地保存到物理介质上,并保证有效访问。包括两个方面:选择合适的物理介质和保证数据安全存放和访问的方式。

  1. 数据存储介质:解决存储介质问题是首要任务。不同应用环境需要不同存储介质,如磁带、光盘和磁盘等,选择适合的介质至关重要,价格和先进性并非唯一标准。

  2. 存储管理:存储管理在系统中至关重要,包括提高访问性能、应对数据不断增长、保护数据和提高可用性、实现存储空间共享等。如何有效管理存储系统是当前重要问题。

存储管理的具体内容如表5-11所示。

1.png

2)数据备份

数据备份是为了防止用户操作失误或系统故障等原因导致数据丢失,将整个系统数据或关键数据复制到其他介质的过程。目的是在系统数据不可用时,利用备份数据进行恢复,减少损失。常见备份结构有DAS、基于LAN、LANFREE和SERVER-FREE。备份策略包括完全备份、差分备份和增量备份。备份系统需备份服务器、RAID和磁带机等硬件,并依赖备份软件完成具体策略和管理,备份软件可分为操作系统自带和专业备份软件两类,前者功能简单,后者功能更全面。

3)数据容灾

灾难包括自然灾害、系统故障、误操作和恶意攻击等事件,都可能导致系统非正常停机。容灾系统分为应用容灾和数据容灾,前者确保应用服务在任何情况下都可用,后者保证数据高可用性。数据容灾是应用容灾的基础,因为数据是应用系统的核心。数据备份是数据容灾的基础,但传统备份方式受限于磁带存储和本地管理,无法应对整体灾难。真正的数据容灾需全面、及时地恢复系统,按容灾系统的恢复能力分为不同等级,例如从本地备份到异地实时切换备份系统。衡量容灾系统的指标包括RPO(允许丢失的数据量)和RTO(系统恢复时间)。

4)数据质量评价与控制

数据质量的概念和标准随时间而变化。现在,普遍认为数据质量必须从用户使用的角度来看待,即使数据准确性很高,如果时效性差或不符合用户需求,也不能达到质量管理标准。数据质量是指数据产品满足指标、状态和要求能力的特征总和。

  1. 数据质量描述可以通过数据质量元素来实现,分为定量元素和非定量元素。

  2. 数据质量评价过程是产生和报告数据质量结果的一系列步骤。评价过程描述了数据质量评价的步骤。

  3. 数据质量评价方法包括直接评价法和间接评价法:

  • 直接评价法通过将数据与内部或外部参照信息(如理论值)进行对比来确定数据质量。

  • 间接评价法利用数据相关信息(如数据源、采集方法)来推断或评估数据质量。



1.png

  1. 数据质量控制分为前期控制和后期控制两个部分。前期控制包括数据录入前的质量控制和数据录入过程中的实时质量控制;后期控制则是在数据录入完成后对数据进行后处理质量控制和评价。根据建库流程,可以划分为以下几个阶段:

  • 前期控制:在提交成果(即数据入库)之前,对原始数据和工作成果进行检查,及时发现和改正错误。

  • 过程控制:在建库过程中实施减少和消除误差和错误的技术和步骤,对录入的数据进行实时质量控制。

  • 系统检测:数据入库后进行系统检测,设计检测模板,并利用检测程序进行系统自检。

  • 精度评价:对入库属性数据进行各种精度评价方法的分析,为用户提供可靠的数据。

  1. 数据清理,又称数据清洗,是对数据库进行精简以去除重复记录,并使剩余部分符合标准的过程。在狭义上,数据清理指的是在构建数据仓库和实现数据挖掘前对数据源进行处理,以确保数据的准确性、完整性、一致性、唯一性、适时性和有效性,以适应后续操作。从提高数据质量的角度来看,任何有助于提高数据质量的处理过程都可以称为数据清理,主要包括数据分析、数据检测和数据修正三个步骤。

1.png

数据清理的三个步骤:

数据分析:是指从数据中发现控制数据的一般规则,比如字段域、业务规则等,通过对数据的分析,定义出数据清理的规则,并选择合适的清理算法。数据检测:是指根据预定义的清理规则及相关数据清理算法,检测数据是否正确,比如是否满足字段域、业务规则等,或检测记录是否重复。

数据修正:是指手工或自动地修正检测到的错误数据或重复的记录。

4、数据开发利用

数据必须经过充分的开发利用,才能发挥其作用。通过数据集成、数据挖掘、数据服务(包括目录服务、查询服务、浏览和下载服务、数据分发服务)、数据可视化和信息检索等技术手段,帮助数据用户找到所需数据并以适当方式展现,实现数据的开发利用。

1)数据集成

数据集成是将不同数据源中的数据整合,向用户提供统一的数据视图(通常称为全局模式),使用户能透明地访问数据。数据源主要包括DBMS,也包括各种结构化、半结构化和非结构化数据,如XML文档、HTML文档、电子邮件和普通文件。这些数据源存储位置分散,数据类型异构,数据库产品多样。 数据集成的目标是在保持数据源自治性的前提下,维护数据整体一致性,提高数据共享利用效率。数据集成系统提供统一的数据源访问接口,用于执行用户对数据源的访问请求。典型的数据集成系统模型如图 5-5 所示。

1.png

2)数据挖掘

数据挖掘是从大量数据中提取知识的过程,即从实际数据中提取隐含的、潜在有用的知识。它将数据分析提升到从数据库中挖掘知识、提供决策支持的层面。数据挖掘涉及数据库、人工智能、数理统计、可视化和并行计算等多种技术,是一门交叉学科。

与传统数据分析不同,数据挖掘在数据量、分析方法、分析侧重和成熟度上有所差异。首先,数据挖掘所需的数据量较大,数据量越大,效果越好。其次,数据挖掘综合运用多种技术对数据进行分析,而传统数据分析主要采用统计学方法。此外,传统数据分析通常是回顾型和验证型的,而数据挖掘通常是预测型和发现型的。最后,传统数据分析方法相对成熟,而数据挖掘的部分方法仍在发展阶段。

数据挖掘的目标是发现数据中隐藏的规律或关系,以服务于决策。其主要任务包括数据总结、关联分析、分类和预测、聚类分析和孤立点分析。数据挖掘流程包括确定分析对象、数据准备、数据挖掘、结果评估与结果应用等阶段,需要多个专业人员参与,包括业务分析人员、数据挖掘人员和数据管理人员。数据挖掘的结果需要经过决策人员许可,才能实际应用以指导实践。

将数据挖掘得出的预测模式和领域专家知识结合,构成可供不同类型人员使用的应用程序。通过对分析知识的应用,才能对数据挖掘的成果进行正确评价。

1.png

3)数据服务

数据服务包括数据目录服务、数据查询与浏览及下载服务、数据分发服务。数据目录服务解决了用户在海量、多源、异构和分布的数据资源中发现和定位所需数据的困难。它是一种检索服务,为实现数据共享提供了重要基础。数据查询与浏览及下载服务是用户使用数据的主要方式。用户可以通过查询数据和下载数据两种方式来获取所需数据。数据分发服务指数据生产者将数据传送给用户的过程。通过分发,数据从采集、存储、加工到传播和使用,实现数据的价值。分发服务的核心内容包括数据发布、数据发现、数据评价和数据获取。

4)数据可视化

可视化技术将抽象的事物或过程以图形图像的形式呈现出来。科学计算可视化是利用图形学原理和方法,将科学与工程计算等产生的大规模数据转换为图形或图像,以直观的形式展示出来。

1.png

数据可视化概念源自科学计算可视化,主要利用计算机图形学和图像处理技术,将数据转换为图形或图像在屏幕上显示,并支持交互处理。涉及计算机图形学、图像处理、计算机辅助设计、计算机视觉、人机交互等领域,是一门综合性学科。数据可视化的表现方式多种多样,包括二维、三维、多维、时态、层次和网络数据可视化,如表5-12 所示。

2.png

2.png

5)信息检索

信息检索包括广义和狭义两种理解。广义的信息检索是指将信息组织和存储起来,并根据用户需求查找特定信息的技术,称为信息存储与检索。狭义的信息检索仅指用户利用检索工具或数据库查找特定信息的过程。信息检索的方法主要包括全文检索、字段检索、基于内容的多媒体检索和数据挖掘。

全文检索是根据文本数据内容而不是外在特征进行的信息检索。字段检索则根据指定字段进行著录和检索。基于内容的多媒体检索包括图像、视频和声音等多种形式。数据挖掘则是从大量数据中提取隐藏的有用信息和知识的过程。

常用的信息检索技术包括布尔逻辑检索、截词检索、临近检索、限定字段检索和限制检索。布尔逻辑检索利用布尔逻辑运算符连接检索词,进行逻辑运算以找出所需信息。截词检索是利用词的部分进行检索,通过截断的词的一个局部来匹配信息。临近检索通过专门符号规定检索词在结果中的相对位置。限定字段检索指定检索词出现的字段,提高检索效率。限制检索通过限制检索范围来优化检索,可以使用字段检索、限制符或命令等方式进行限制。

5、数据库安全

数据是脆弱的,它可能被无意识或有意识地破坏、修改,需要采用一定的数据安全措施确保合法的用户、采用正确的方式、在正确的时间、对相应的数据进行正确的操作,确保数据的机密性、完整性、可用性和合法使用。数据库安全是指保护数据库,防止不合法的使用所造成的数据泄露、更改或破坏。

1)数据库安全威胁

在数据库环境中,不同的用户通过数据库管理系统访问同一组数据集合,这样减少了数据的冗余、消除了不一致的问题,同时也免去程序对数据结构的依赖。然而,这也导致数据库面临更严重的安全威胁。数据库安全威胁的主要类型如表 5-13所示。

1.png

2)数据库安全对策

根据数据库安全威胁的特点,数据库安全对策如表5-14所示。

2.png

1.png

3)数据库安全机制

数据库安全机制是用于实现数据库的各种安全策略的功能集合,正是由这些安全机制来实现安全模型,进而实现保护数据库系统安全的目标。数据库安全机制包括用户的身份认证、存取控制、数据库加密、数据审计、推理控制等内容。


三、系统集成

随着信息技术的发展,系统集成逐步成为信息系统实施中一项重要的工作。此处的系统集成概念专指计算机系统的集成,包括计算机硬件平台、网络系统、系统软件、工具软件、应用软件的集成,用绕这些系统的相应咨询、服务和技术支持。它是以计算机有关技术储备为基础以可靠的产品为工具,用以实现某一特定的计算机系统功能组合的工程行为。

1、集成基础

系统集成涉及技术环境、数据环境和应用程序的集成。对于信息系统设计者而言,理解其体系结构并实现系统集成至关重要。网络信息系统的集成是利用先进的计算机与通信技术,将各个信息孤岛的小运行环境集成统一在一个大运行环境中。现代用户希望将不同系统连接起来,构建一个完整的组织级系统,需要应对多供应商平台之间的兼容性问题。

系统集成是开放系统驱动的,顺应了计算机工业的发展潮流。系统集成通过硬件平台、网络通信平台、数据库平台、工具平台和应用软件平台将各类资源有机地集成到一起,形成一个完整的工作台面。系统集成对系统开发和维护有着重要的影响,需要遵循开放性、结构化、先进性和主流化等基本原则。

首先,开放性要求系统遵循工业开放标准,选择开放标准能够保证系统的长期可维护性。由于信息系统往往涉及多个供应商提供的系统平台,因此需要标准化和开放的接口来实现系统集成。开放标准能够满足可互操作性、可移植性和可伸缩性的要求,使得应用程序可以在不同系统之间无缝迁移,为系统的扩展和升级创造条件。

其次,结构化是复杂系统设计的基本方法。通过自顶向下的逐层分解,将复杂系统分解成相对独立和简单的子系统和模块,确保每个模块都可执行和可具体说明。这种结构化思想是复杂系统设计的核心。

先进性包括目前先进性和未来先进性。系统的先进性依赖于先进的技术,采用先进的技术能够确保系统的优势和较长的生存周期。系统设计的先进性表现在技术集成、问题划分和应用软件符合人们认知特点等方面。

最后,主流化要求系统构成的每个产品都属于产品发展的主流,具有可靠的技术支持、成熟的使用环境和良好的升级发展势头。这保证了系统在整个生命周期内的稳定性和持续发展。

2、网络集成

计算机网络系统集成涉及技术和管理问题,尤其对于大型网络系统而言更为复杂。技术上,网络集成涉及不同厂家设备和管理软件的整合,以及异构网络系统的连接。管理上,各组织的管理方式和思想不同,转向网络化管理会受到人为因素的影响。因此,建立适合实际情况的集成体系框架至关重要,以指导网络系统建设,实现真正的网络化管理,如图 5-8 所示。

1.png

下面将重点介绍网络系统的几个关键方面:

  1. 传输子系统:传输是网络的核心,反映了网络的通信能力和现代化水平。传输介质包括无线和有线两大类,如无线电波、微波、红外线,以及双绞线、同轴电缆、光纤等。

  2. 交换子系统:根据覆盖范围可分为局域网、城域网和广域网,对应不同的交换技术。

  3. 安全子系统:着重解决网络安全问题,包括防火墙、数据加密和访问控制等技术。

  4. 网管子系统:负责网络的管理和维护,确保网络持续满足组织需求,解决网络扩展中的问题和瓶颈。

  5. 服务器子系统:提供资源和服务给工作站,具有高性能、大内存、大磁盘容量和高可靠性。

  6. 网络操作系统:调度和管理网络资源,为用户提供统一透明的网络资源使用手段。

  7. 服务子系统:网络服务是网络应用的核心,包括互联网服务、多媒体信息检索、信息广播、远程计算和事务处理等。

3、数据集成

数据集成的目的是运用一定的技术手段将系统中的数据按一定的规则组织成为一个整体,使得用户能有效地对数据进行操作。数据集成处理的主要对象是系统中各种异构数据库中的数据。数据仓库技术是数据集成的关键。

1)数据集成层次

数据集成是将参与数据库的信息逻辑上集成为一个异构分布式数据库的全局概念模式,以实现信息共享。数据集成包括基本数据集成、多级视图集成、模式集成和多粒度数据集成四个层次。

  1. 基本数据集成面临诸多问题,如通用标识符问题和数据丢失问题。解决方法包括隔离和调和,以及生成接近实际估计值的方式处理数据丢失。

  2. 多级视图集成利用多级视图机制对数据源之间的关系进行集成,实现从局部数据库到综合视图的映射。

  3. 模式集成是数据库设计中的重要问题,其设计取决于设计者的经验。在实际应用中,数据源的模式集成与数据库设计存在差距,需要解决冲突问题。

  4. 多粒度数据集成是异构数据集成中最复杂的问题,旨在实现数据的自动逐步抽象和细化。该过程包括数据综合和数据细化,以提取主要特征和获取高精度数据。数据集成是实现数据共享和辅助决策的基础。

2)异构数据集成

数据集成的目的是为应用提供统一的访问支持,确保数据的完整性和约束完整性,并解决语义冲突问题。异构数据集成主要采用过程式方法和声明式方法,或利用中间件实现。过程式方法依赖于软件模块来存取数据源,而声明式方法通过建模和推理机制对数据进行查询。中间件位于数据库系统和应用程序之间,提供统一的数据模式和通用接口。数据提取常用的方法是使用开放数据库互联标准(ODBC)或编写专用的嵌入式C接口程序。全局数据模式需要满足描述各种数据格式、易于发布和交换的要求。最近,JSON作为一种轻量级的数据交换格式在应用中得到广泛应用,代替了传统的XML格式。

4、软件集成

随着对象技术和网络技术的发展,信息系统开发环境呈现出从结构化到面向对象、从集中到分布、从同构到异构、从独立到集成、从辅助到智能、从异步到协同的发展趋势。应用系统的开发已从以单机为中心逐步过渡到以网络环境为中心,成千上万台个人计算机与工作站已成为全球共享的计算机信息资源。开放系统使用户能够透明地使用来自不同厂商制造的不同硬件平台和操作系统的异构计算资源,构建起信息共享的分布式系统。面对这一趋势,必须对面向对象技术进行改进和扩展,以满足异构网络应用的需求。对用户来说,这种软件构件能够“即插即用”,并便于重用;对供应商来说,这种软件构件便于用户裁剪、维护和重用。在这一背景下出现了有代表性的软件构件标准,如公共对象请求代理结构 (CORBA)、COM、DCOM与COM+、.NET、J2EE应用架构等。

1)CORBA:对象管理组织 (OMG) 是CORBA规范的制定者,由800多个信息系统供应商、软件开发者和用户构成的国际组织。OMG在理论上和实践上促进了面向对象软件的发展。CORBA支持现有平台和未来平台的集成,可将对象和分布式系统技术集成为一个可相互操作的统一结构。CORBA自动匹配许多公共网络任务,如对象登记、定位、激活、多路请求等。

2)COM:COM中的对象是一种二进制代码对象,代码形式是DLL或EXE执行代码。COM中的对象直接注册在Windows的系统库中,因此不再是由特定编程语言及其程序设计环境支持的对象,而是由系统平台直接支持的对象。COM对象可以由各种编程语言实现,并为各种编程语言所引用。

3)DCOM与COM+:DCOM是COM的扩展,提供了一些新的特性,如位置透明性、网络安全性、跨平台调用等。DCOM通过RPC协议,使用户可以以透明的方式调用远程机器上的远程服务。COM+为COM的新发展或COM更高层次上的应用,其底层结构以COM为基础,几乎包容了COM的所有内容。

4).NET:.NET是一组基于开放的互联网协议推出的产品、技术和服务。.NET开发框架在通用语言运行环境基础上提供了完善的基础类库、数据库访问技术和网络开发技术,开发者可以使用多种语言快速构建网络应用。

1.png

5)J2EE:J2EE架构是使用Java技术开发组织级应用的工业标准,为构建具有可伸缩性、灵活性、易维护性的组织系统提供了良好的机制。J2EE提供了一整套服务、应用编程接口和协议,可用于开发多层应用和基于Web的应用。J2EE的核心是EJB、Java Servlets API、JSP和XML技术的全面支持。

5、应用集成

随着网络和互联网的发展以及分布式系统的流行,大量异构网络及各计算机厂商推出的软、硬件产品广泛存在着互操作问题,严重影响了系统间的互操作性。要实现在异构环境下的信息交互和系统应用层的集成,需要研究多项新的关键技术。互操作性指系统支持同一层次上构件之间的信息交换,或提供系统各构件间交换信息的机制。可移植性则取决于系统及其环境的特征。集成关心的是所有硬件与软件之间的一致性,提供一致的用户界面和解决应用的互操作性问题,如图5-10所示。

1.png

语言的语法、语义、语用三个层面可以类比为系统集成技术中的网络集成、数据集成和应用集成。网络集成解决系统间的语法问题,数据集成解决语义问题,应用集成解决语用问题。应用集成或组织应用集成(EAI)是指将独立的软件应用连接起来,实现协同工作,提高运营效率,自动化工作流,增强不同部门和团队之间的协作。

对于应用集成,关键的技术要求包括具有应用间的互操作性、分布式环境中应用的可移植性以及系统中应用分布的透明性。互操作性要求不同系统间进行有意义的信息交换,提供系统间功能服务的使用功能,资源的动态发现和类型检查。可移植性要求应用程序在系统中迁移时不破坏服务。透明性则要求屏蔽分布系统的复杂性,使开发者无需关心系统是分布式还是集中式。

实现应用集成的关键在于实时双向通信和业务数据流,在本地和云应用中都需要考虑。应用集成确保不同应用之间保持同步,帮助打造动态且高度适应性的应用和服务。与数据集成不同,应用集成是在功能层面将多个应用直接连接起来,而不是仅仅共享数据。

应用集成可以部署在云端或本地,也可以部署在混合环境中,集成各种应用和服务。为了实现应用集成,可以利用应用编程接口(API)、事件驱动型操作、数据映射等组件。这些组件帮助不同的应用之间进行通信、触发操作、以及映射数据,从而实现流程互联和数据交换,提高业务效率。


五、安全工程

随着国际互联网信息高速公路的畅通和国际化的信息交流,业务大范围扩展,信息安全的风险也急剧增加。由业务应用信息系统来解决安全性问题,已经不能胜任。由操作系统、数据库系统、网络管理系统来解决安全问题,也不能满足实际的需要,于是才不得不建立独立的信息安全系统。信息系统安全是一门新兴的工程实践课题。加大对信息系统安全工程的研究,可规范信息系统安全工程建设的过程和提高建设信息系统安全工程的成熟能力。

1、工程概述

信息安全系统工程是整个信息系统工程的一部分,旨在建立与业务应用信息系统同步的安全系统。其主要内容包括信息安全风险评估、策略制定、需求确定、总体设计、详细设计、设备选型、招投标、密钥密码机制确定、资源界定和授权、防泄密、测试、运营和维护。与业务应用信息系统不同,信息安全系统专注于保障系统安全,是业务正常运营的必需组成部分。为了进一步探讨信息安全系统工程,需要明确信息系统、业务应用信息系统、信息安全系统、信息系统工程、业务应用信息系统工程和信息安全系统工程等术语,并理解它们之间的关系,它们之间的关系如图5-11所示。

1.png

信息安全系统与业务应用信息系统密不可分,但二者不可混为一谈。业务应用信息系统是支撑业务运营的计算机应用,如银行柜台业务系统、国税征收系统等。信息系统工程包括信息安全系统工程和业务应用信息系统工程,它们是两个独立且不可分割的部分。业务应用信息系统工程旨在建设业务应用系统,常称为信息系统集成项目工程;信息安全系统工程则是为了满足信息安全需求而组织实施的工程,是信息系统工程的一部分。

信息安全系统工程原理适用于系统和应用的开发、集成、运行、管理、维护和演变,以及产品的开发、交付和演变。因此,信息安全系统工程确保信息安全体系和策略符合系统工程的一般性原则和规律,能在系统、产品或服务中得到体现。

需要明确区分信息安全系统工程与信息系统安全工程。前者专注于建设信息安全系统,而后者可能仅关注系统的整体安全性,而忽略了信息安全问题。因此,信息安全系统工程明确了其目标:建设一个具备信息安全子系统的信息系统。

2、安全系统

信息安全保障系统一般简称为信息安全系统,它是“信息系统”的一个部分,用于保证“业务应用信息系统”正常运营。现在人们已经明确,要建立一个“信息系统”,就必须要建立一个或多个业务应用信息系统和一个信息安全系统。信息安全系统是客观的、独立于业务应用信息系统而存在的信息系统。下面用一个“宏观”三维空间图来反映信息安全系统的体系架构及其组成。

1.png


(1)X轴是“安全机制”。安全机制可以理解为提供某些安全服务,利用各种安全技术和技巧,所形成的一个较为完善的结构体系。如“平台安全”机制,实际上就是指安全操作系统安全数据库、应用开发运营的安全平台以及网络安全管理监控系统等。

(2)Y轴是“OSI网络参考模型”。信息安全系统的许多技术、技巧都是在网络的各个层面上实施的,离开网络信息系统的安全也就失去意义。

(3)Z轴是“安全服务”。安全服务就是从网络中的各个层次提供给信息应用系统所需要的安全服务支持。如对等实体认证服务、访问控制服务、数据保密服务等。

由X、Y、Z三个轴形成的信息安全系统三维空间就是信息系统的“安全空间”。随着网络的逐层扩展,这个空间不仅范围逐步加大,安全的内涵也就更丰富,达到具有认证、权限、完整、加密和不可否认五大要素,也叫作“安全空间”的五大属性。

1)安全机制

安全机制涵盖基础设施实体、平台、数据、通信、应用、运行、管理、授权和审计安全等方面:

  1. 基础设施实体安全:包括机房、场地、设施、动力系统和灾难恢复等安全。

  2. 平台安全:涉及操作系统漏洞修复、网络基础设施漏洞修复、通用基础应用程序漏洞修复和网络安全产品部署。

  3. 数据安全:包括介质和载体安全、数据访问控制、数据完整性、数据可用性、数据监控和审计、数据存储与备份安全。

  4. 通信安全:涵盖通信线路和网络基础设施安全性测试与优化、网络加密设施安装、通信加密软件设置等。

  5. 应用安全:包括业务软件的程序安全性测试、业务交往的防抵赖测试、业务资源的访问控制验证、业务实体的身份鉴别检测、业务数据的安全性测试等。

  6. 运行安全:包括应急处置机制、网络系统安全性监测、网络安全产品运行监测、系统升级和补丁提供等。

  7. 管理安全:涉及人员、培训、应用系统、软件、设备、文档、数据、操作、运行和机房管理等。

  8. 授权和审计安全:提供权限管理和授权服务,实现访问控制机制,并建立安全防范体系,即EISRM(Enterprise Information Security Resource Management)。

  9. 安全防范体系:建立预警、保护、检测、反应、恢复和反击六个环节的信息安全保障体系,以应对各种安全事件。组织可以结合WPDRRC能力模型构建信息网络安全保障体系,确保信息安全工作有序开展。

2)安全服务

安全服务涵盖对等实体认证、数据保密、数据完整性、数据源点认证、禁止否认和犯罪证据提供等方面:

  1. 对等实体认证服务:用于确认两个开放系统同等层中实体的合法性和真实性,防止假冒。

  2. 数据保密服务:采用密码加密保护,防止数据被截获或非法存取而泄密。可提供链接方式和无链接方式两种数据保密,同时对用户可选字段的数据进行保护。

  3. 数据完整性服务:防止非法实体对交换数据进行修改、插入、删除或数据丢失。包括带/不带恢复功能的链接方式数据完整性、选择字段链接/无链接方式数据完整性等。

  4. 数据源点认证服务:确保数据发自真实源点,防止假冒。

  5. 禁止否认服务:防止发送方否认发送数据、接收方否认接收数据或伪造接收数据。包括不得否认发送和不得否认接收两种服务。

  6. 犯罪证据提供服务:为违反法律法规的行为提供数字证据和信息线索。

3、工程基础

信息安全系统建设涉及到OSI网络参考模型各个层面,与硬件工程、软件工程、通信及网络工程、数据存储与灾备工程、系统工程、测试工程、密码工程和组织信息化工程等相关。安全策略由组织、客户与服务对象、集成商、安全产品开发者、密码研制单位、独立评估者等共同协商建立,因此与其他外部实体必须协调。信息安全系统工程吸纳安全管理的成熟规范,包括物理安全、计算机安全、网络安全、通信安全、输入/输出产品安全、操作系统安全、数据库系统安全、数据安全、信息审计安全、人员安全、管理安全和辐射安全等。

4、工程体系架构

信息系统安全工程(Information Security System Engineering,ISSE)是一门系统工程学它的主要内容是确定系统和过程的安全风险,并且使安全风险降到最低或使其得到有效控制。

1)ISSE-CMM 基础

信息安全系统工程能力成熟度模型(ISSE-CMM)是一种评估信息安全系统工程实施能力的方法,采用面向工程过程的方法。该模型建立在统计过程控制理论的基础上,认为所有成功组织都具有严格定义、管理完善、可测可控的有效业务过程。ISSE-CMM从这些“好的”工程中提取并定义了过程的“能力”。主要用于指导信息安全系统工程的完善和改进,使其成为一个清晰定义的、成熟的、可管理的、可控制的、有效的和可度量的学科。

ISSE-CMM覆盖了整个生命周期,包括工程开发、运行、维护和终止;管理、组织和工程活动等的组织;与其他规范如系统、软件、硬件、人的因素、测试工程、系统管理、运行和维护等规范并行的相互作用;以及与其他组织(包括获取、系统管理、认证、认可和评估组织)的相互作用。

ISSE-CMM主要适用于工程组织、获取组织和评估组织。工程组织包括系统集成商、应用开发商、产品提供商和服务提供商等,可以使用ISSE-CMM对工程能力进行自我评估。获取组织包括采购系统、产品以及从外部/内部资源和最终用户处获取服务的组织,可以使用ISSE-CMM判断供应者组织的信息安全系统工程能力,识别可信任的产品和系统,以及完成一个工程的可信任性。评估组织包括认证组织、系统授权组织、系统和产品评估组织等,可以使用ISSE-CMM建立被评组织整体能力的信任度。

2)ISSE过程

一个组织的过程能力有助于预见项目达到目标的能力。低能力级组织的项目在达到成本、进度、功能和质量目标上会有很大的变化,而高能力组织的项目则相反。信息安全系统工程(ISSE)的目的是使信息安全系统成为系统工程和系统获取过程的必要部分,从而保证用户目标的实现,满足客户和服务对象的需求,将信息系统安全选项集成到系统工程中,以获得最优解决方案。ISSE过程将信息安全系统集成到信息系统生命周期的工程实施过程中,并与业务需求、环境需求、项目计划、成本效益、政策、标准、指令保持一致。ISSE通过确认、评估、控制已知或假定的安全威胁,最终得到可接受的安全风险等级。在系统设计、开发和运行中,科学工程原理应用来确认和减少系统对攻击的脆弱性或敏感性。ISSE是系统工程和获取过程的一部分,其目标是提供一个框架,每个工程项目都可以根据需要进行裁剪。ISSE包括工程过程、风险过程和保证过程三个基本部分,它们相互独立但又有着有机联系。在风险过程中,人们识别出产品或系统的风险,并对其进行优先级排序。ISSE过程与其他工程一起确定安全策略和解决方案,并由安全保证过程建立解决方案的可信性并向用户传达。

1.png

  1. 工程过程:信息安全系统工程与其他工程活动一样,是一个包括概念、设计、实现、测试、部署、运行、维护、退出的完整过程。在此过程中,信息安全系统工程的实施必须与其他系统工程组合紧密合作。ISSE-CMM强调了信息安全系统工程是大型项目团队中的一部分,需要与其他科目工程的活动相互协调。这有助于确保安全成为项目过程中的一个部分,而不是一个独立的部分。使用风险管理过程中描述的信息以及有关系统需求、相关法律和政策的其他信息,信息安全系统工程可以与用户一起识别安全需求。一旦需求被识别,信息安全系统工程就可以识别和跟踪特定的安全需求。对于信息安全问题,创建信息安全解决方案通常涉及识别可能的解决方案,然后评估决定哪种解决方案更可能被接受。将这些活动与工程过程的其他活动结合起来,不仅要解决安全问题,还需要考虑成本、性能、技术风险和使用简易性等因素。

2.png

  1. 风险过程:信息安全系统工程的一个主要目标是降低信息系统运行的风险。风险是有害事件发生的可能性及其危害后果。有害事件由威胁、脆弱性和影响三个部分组成。脆弱性包括可被威胁利用的资产性质。如果不存在脆弱性和威胁,则不存在有害事件,也就不存在风险。风险管理是调查和量化风险的过程,并建立组织对风险的承受级别,是安全管理的重要部分。不确定因素的出现使得对安全的规划和判断变得困难,因为大多数因素是不能准确预测的。在评估风险时,需要考虑各种不确定因素,因此,对一种具体风险的影响进行评估是复杂的。风险管理过程,如图5-15所示。

  2. 1.png

  3. 安全措施可减轻风险,但无法消除所有威胁。消除风险的代价及不确定性需考虑。必须接受残留风险。在不确定情况下,确定何种程度接受风险是问题。ISSE-CMM包含分析威胁、脆弱性和影响的活动。

  4. 保证过程是确保安全需求满足的关键,形式多样。ISSE-CMM的可信程度源于信息安全系统工程实施过程的可重复性。成熟的组织更可能产生重复结果,增强了可信性。安全保证无法增加对安全风险的抵抗能力,但能提供减少风险的信心。它确保安全措施按需求运行,来自于措施正确性和有效性。安全机制的强度受保护级别和保证程度的制约。

  5. 1.png

3)ISSE-CMM 体系结构

ISSE-CMM 是一个衡量信息安全系统工程组织成熟度的体系结构,旨在落实安全策略,突出了信息安全工程的管理和制度化。其体系结构采用了两维设计,分别是“域”和“能力”。

  1. 域维/安全过程域

    • 过程域:定义了信息安全工程的所有实施活动,被称为过程域。

    • 能力维:代表组织的能力,包括过程管理能力和制度化能力。

    • 公共特性:这些实施活动被称为公共特性,反映了组织的能力。每个过程域包括一组目标和集成的基本实施,以实现这些目标。

  2. 公共特性/能力维

    • 通用实施(GP):由公共特性组成,分为5个级别,表示增强的组织能力。高级别的通用实施位于能力维的高端。

    • 目的:描述组织特征的主要变化方式,以帮助确定项目管理水平,并改进每个过程域。

    1.png

    2.png

  3. 能力级别

    • 评估方法:将通用实施划分为公共特性,再划分为能力级别。

    • 实施活动:提供了改进组织能力的路线图,按公共特性进行组织,并按级别排序。

    • 重要性:评估组织能力时,需要考虑是否执行了特定级别的公共特性。

3.png

ISSE-CMM 体系结构提供了一个综合的框架,帮助组织评估和改进信息安全系统工程的能力,促进组织的成熟度提升。



注意:本页面内容为W3xue原创,未经授权禁止转载,违者必究!
来源:W3xue  发布时间:2024/4/1 10:40:24
 友情链接:直通硅谷  直通硅谷 怎么样 mac软件下载