网站建设建站网,wordpress教程 付费,优秀设计案例网站,wordpress 相册 外链第5章 信息系统工程信息系统工程是用系统工程的原理、方法来指导信息系统建设与管理的一门工程技术学科#xff0c;它是信息科学、管理科学、系统科学、计算机科学与通信技术相结合的综合性、交叉性、具有独特风格的应用学科。5.1软件工程软件工程是指应用计算机科学、数学及管…第5章 信息系统工程信息系统工程是用系统工程的原理、方法来指导信息系统建设与管理的一门工程技术学科它是信息科学、管理科学、系统科学、计算机科学与通信技术相结合的综合性、交叉性、具有独特风格的应用学科。5.1软件工程软件工程是指应用计算机科学、数学及管理科学等原理以工程化的原则和方法来解决软件问题的工程其目的是提高软件生产率、提高软件质量、降低软件成本。电气与电子工程师协会(Institute of Electrical and Electronics Engineers, IEEE)对软件工程的定义是将系统的、规范的、可度量的工程化方法应用于软件开发、运行和维护的全过程及上述方法的研究。软件工程由方法、工具和过程三个部分组成软件工程方法是完成软件工程项目的技术手段它支待整个软件生命周期软件工程使用的工具是人们在开发软件的活动中智力和体力的扩展与延伸它自动或半自动地支待软件的开发和管理支待各种软件文档的生成软件工程中的过程贯穿于软件开发的各个环节管理人员在软件工程过程中要对软件开发的质量、进度和成本进行评估、管理和控制包括人员组织、计划跟踪与控制、成本估算、质量保证和配置管理等。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需求过程需求过程主要包括需求获取、需求分析、需求规格说明书编制、需求验证与确认等。需求获取需求获取是一个确定和理解不同的项目干系人的需求和约束的过程。需求获取是一件看上去很简单做起来却很难的事情。需求获取是否科学、准备充分对获取出来的结果影响很大这是因为大部分用户无法完整地描述需求而且也不可能看到系统的全貌。因此需求获取只有与用户的有效合作才能成功。常见的需求获取方法包括用户访谈、问卷调查、采样、情节串联板、联合需求计划等。需求分析在需求获取阶段获得的需求是杂乱的。一个好的需求应该具有无二义性、完整性、一致性、可测试性、确定性、可跟踪性、正确性、必要性等特性。需求分析对已经获取到的需求进行提炼、分析和审查以确保所有的项目干系人都明白其含义并找出其中的错误、遗漏或其他不足的地方。为了便于理解问题域现代软件工程方法所推荐的做法是对问题域进行抽象将其分解为若干个基本元素然后对元素之间的关系进行建模。使用结构化分析(Structured Analysis, SA)方法进行需求分析其建立的模型的核心是数据字典。围绕这个核心有三个层次的模型分别是数据模型、功能模型和行为模型(也称为状态模型)。在实际工作中一般使用实体关系图(E-R图)表示数据模型用数据流图(Data Flow Diagram, DFD)表示功能模型用状态转换图(State Transfonn Diagram, STD)表示行为模型。E-R图主要描述实体、属性以及实体之间的关系DFD从数据传递和加工的角度利用图形符号通过逐层细分描述系统内各个部件的功能和数据在它们之间传递的情况来说明系统所完成的功能STD通过描述系统的状态和引起系统状态转换的事件来表示系统的行为指出作为特定事件的结果将执行哪些动作(例如处理数据等)。面向对象的分析(Object-Oriented Analysis, OOA)的基本任务是运用面向对象的(ObjectOriented,OO)方法对问题域进行分析和理解正确认识其中的事物及它们之间的关系找出描述问题域和系统功能所需的类和对象定义它们的属性和职责以及它们之间所形成的各种联系。最终产生一个符合用户需求并能直接反映问题域和系统功能的OOA模型及其详细说明。OOA模型包括用例模型和分析模型用例是一种描述系统需求的方法使用用例的方法来描述系统需求的过程就是用例建模分析模型描述系统的基本逻辑结构展示对象和类如何组成系统(静态模型)以及它们如何保持通信实现系统行为(动态模型)。需求规格说明书编制软件需求规格说明书(Software Requirement Specification, SRS)是需求开发活动的产物编制该文档的目的是使项目干系人与开发团队对系统的初始规定有一个共同的理解使之成为整个开发工作的基础。SRS是软件开发过程中最重要的文档之一对于任何规模和性质的软件项目都不应该缺少。在国家标准GB/T 8567《计算机软件文档编制规范》中规定SRS应该包括范围、引用文件、需求、合格性规定、需求可追踪性、尚未解决的问题、注解和附录。国家标准GB/T 9385《计算机软件需求说明编制指南》也给出了一个详细的SRS写作大纲。需求验证与确认在系统分析阶段检测SRS中的错误所采取的任何措施都将节省相当多的时间和资金。需求验证与确认活动内容包括SRS正确地描述了预期的、满足项目干系人需求的系统行为和特征SRS中的软件需求是从系统需求、业务规格和其他来源中正确推导而来的需求是完整的和高质量的需求的表示在所有地方都是一致的需求为继续进行系统设计、实现和测试提供了足够的基础。在实际工作中一般通过需求评审和需求测试工作来对需求进行验证。需求评审就是对SRS进行技术评审它可以发现那些二义性的或不确定性的需求为项目干系人提供在需求问题上达成共识的方法。在业务需求基本明确用户需求部分确定时同步进行需求测试可及早发现问题从而在需求开发阶段以较低的代价解决这些问题。3.UML统一建模语言(UnifiedModelingLanguage,UM1)是一种定义良好、易于表达、功能强大且普遍适用的建模语言它融入了软件工程领域的新思想、新方法和新技术它的作用域不限于支持OOA和OOD(Object-OrientedDesign,面向对象设计)还支待从需求分析开始的软件开发的全过程。从总体上来看UML的结构包括构造块、规则和公共机制三个部分。编辑切换为居中添加图片注释不超过 140 字可选UML中的事物UML中的事物也称为建模元素包括结构事物(Structural Things)、行为事物(Behavioral Things,也称动作事物)、分组事物(Grouping Things)和注释事物(Annotational Things,也称注解事物)。这些事物是UML模型中最基本的OO构造块。结构事物在模型中属于最静态的部分代表概念上或物理上的元素。 UML 有七种结构事物分别是类、接口、协作、用例、活动类、构件和节点。行为事物是 UML 模型中的动态部分代表时间和空间上的动作。 UML 有两种主要的行为事物。第一种是交互(内部活动)交互是由一组对象之间在特定上下叉中为达到特定目的而进行的一系列消息交换而组成的动作第二种是状态机状态机由一系列对象的状态组成。分组事物是 UML 模型中组织的部分可以把它们看成是个盒子模型可以在其中进行分解。UML 只有一种分组事物称为包。包是一种将有组织的元素分组的机制。与构件不同的是包纯粹是一种概念上的事物只存在于开发阶段而构件可以存在于系统运行阶段。注释事物是UML模型的解释部分。UML中的关系依赖(Dependency)依赖是两个事物之间的语义关系一个事物发生变化会影响另一个事物的语义。关联(Association)关联描述一组对象之间连接的结构关系。泛化(Generalization)泛化是一般化和特殊化的关系描述特殊元素的对象可替换一般元素的对象。实现(Realization)实现是类之间的语义关系其中的一个类指定了由另一个类保证执行的契约。UML2.0中的图编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 140 字可选UML视图UML对系统架构的定义是系统的组织结构包括系统分解的组成部分以及它们的关联性、交互机制和指导原则等提供系统设计的信息包括5个系统视图逻辑视图逻辑视图也称为设计视图它表示了设计模型中在架构方面具有重要意义的部分即类、子系统、包和用例实现的子集。进程视图进程视图是可执行线程和进程作为活动类的建模它是逻辑视图的一次执行实例描述了并发与同步结构。实现视图实现视图对组成基于系统的物理代码的文件和构件进行建模。部署视图部署视图把构件部署到一组物理节点上表示软件到硬件的映射和分布结构。用例视图用例视图是最基本的需求分析模型。另外UML还允许在一定的阶段隐藏模型的某些元素遗漏某些元素可不保证模型的完整性但模型逐步地要达到完整和一致。4.面向对象分析OOA的基本任务是运用OO方法对问题域进行分析和理解正确认识其中的事物及它们之间的关系找出描述问题域和系统功能所需的类和对象定义它们的属性和职责以及它们之间所形成的各种联系。最终产生一个符合用户需求并能直接反映问题域和系统功能的OOA模型及其详细说明。面向对象分析阶段的核心工作是建立系统的用例模型与分析模型。用例模型结构化分析(Strnctured Analysis, SA)方法采用功能分解的方式来描述系统功能在这种表达方式中系统功能被分解到各个功能模块中通过描述细分的系统模块的功能来达到描述整个系统功能的目的。用例方法是一种需求合成技术先获取需求并记录下来然后从这些零散的要求和期望中进行整理与提炼从而建立用例模型。在OOA方法中构建用例模型一般需要经历四个阶段分别是识别参与者、合并需求获得用例、细化用例描述和调整用例模型其中前三个阶段是必须的。编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 140 字可选分析模型捕获了用例并不意味着分析的结束还要对需求进行深入分析获取关于问题域本质内容的分析模型。分析模型描述系统的基本逻辑结构展示对象和类如何组成系统(静态模型)以及它们如何保待通信实现系统行为(动态模型)。领域模型又称为概念模型或简称为域模型也就是找到那些代表事物与概念的对象即概念类。概念类可以从用例模型中获得灵感经过完善将形成分析模型中的分析类。每一个用例对应一个类图描述参与这个用例实现的所有概念类而用例的实现主要通过交互图来表示。例如用例的事件流会对应产生一个顺序图描述相关对象如何通过合作来完成整个事件流复杂的备选事件流也可以产生一个或多个顺序图。所有这些图的集合就构成了系统的分析模型。建立分析模型的过程大致包括定义概念类确定类之间的关系为类添加职责建立交互图等其中有学者将前三个步骤统称为类-责任-协作者(Class-Responsibility-Collaborator, CRC)建模。类之间的主要关系有关联、依赖、泛化、聚合、组合和实现等。编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 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软件编码目所谓编码就是把软件设计的结果翻译成计算机可以“理解和识别”的形式用某种程序设计语言书写的程序。作为软件工程的一个步骤编码是设计的自然结果程序的质量主要取决于软件设计的质量。但是程序设计语言的特性和编码途径也会对程序的可靠性、可读性、可测试性和可维护性产生深远的影响。程序设计语言。编码的目的是实现人和计算机的通信指挥计算机按人的意志正确工作。程序设计语言是人和计算机通信的最基本工具程序设计语言的特性不可避免地会影响入的思维和解决问题的方式会影响人和计算机通信的方式和质量也会影响其他人阅读和理解程序的难易程度。程序设计风格。阅读程序是软件开发和维护过程中的一个重要组成部分而且读程序的时间比写程序的时间还要多。程序设计风格包括4个方面源程序文档化、数据说明、语旬结构和输入/输出方法。应尽量从编码原则的角度提高程序的可读性改善程序的质量。程序复杂性度量。定量度量程序复杂程度的方法很有价值把程序的复杂度乘以适当的常数即可估算出软件中故障的数量及软件开发时的工作量。定量度量的结构可以用于比较两个不同设计或两种不同算法的优劣程序的定量的复杂程度可以作为模块规模的精确限度。编码效率。编码效率主要包括程序效率。程序的效率是指程序的执行速度及程序所需占用的内存空间。任何对效率无重要改善且对程序的简单性、可读性和正确性不利的程序设计方法都是不可取的。算法效率。源程序的效率与详细设计阶段确定的算法的效率直接相关。在详细设计翻译转换成源程序代码后算法效率反映为程序的执行速度和存储容量的要求。存储效率。存储容量对软件设计和编码的制约很大。因此要选择可生成较短目标代码且存储压缩性能优良的编译程序有时需要采用汇编程序。I/O效率。输入/输出可分为两种类型一种是面向人(操作员)的输入/输出另一种是面向设备的输入/输出。3软件测试根据国家标准GB/T 15532《计算机软件测试规范》软件测试的目的是验证软件是否满足软件开发合同或项目开发计划、系统/子系统设计文档、SRS、软件设计说明和软件产品说明等规定的软件质量要求。通过测试发现软件缺陷为软件产品的质量测量和评价提供依据。软件测试方法可分为静态测试和动态测试。静态测试是指被测试程序不在机器上运行而采用人工检测和计算机辅助静态分析的手段对程序进行检测。静态测试包括对文档的静态测试和对代码的静态测试。对文档的静态测试主要以检查单的形式进行而对代码的静态测试一般采用桌前检查(Desk Checking)、代码走查和代码审查。经验表明使用这种方法能够有效地发现30%~70%的逻辑设计和编码错误。动态测试是指在计算机上实际运行程序进行软件测试一般采用白盒测试和黑盒测试方法。白盒测试也称为结构测试主要用于软件单元测试中。它的主要思想是将程序看作是一个透明的白盒测试入员完全清楚程序的结构和处理算法按照程序内部逻辑结构设计测试用例检测程序中的主要执行通路是否都能按预定要求正确工作。白盒测试方法主要有控制流测试、数据流测试和程序变异测试等。使用静态测试的方法也可以实现白盒测试。白盒测试方法中最常用的技术是逻辑覆盖即使用测试数据运行被测程序考查对程序逻辑的覆盖程度。主要的覆盖标准有语句覆盖、判定覆盖、条件覆盖、条件/判定覆盖、条件组合覆盖、修正的条件/判定覆盖和路径覆盖等。黑盒测试也称为功能测试主要用于集成测试、确认测试和系统测试中。黑盒测试将程序看作是一个不透明的黑盒完全不考虑(或不了解)程序的内部结构和处理算法而只检查程序功能是否能按照SRS的要求正常使用程序是否能适当地接收输入数据并产生正确的输出信息程序运行过程中能否保持外部信息的完整性等。黑盒测试根据SRS所规定的功能来设计测试用例一般包括等价类划分、边界值分析、判定表、因果图、状态图、随机测试、猜错法和正交试验法等。5.1.5部署交付软件部署是一个复杂过程包括从开发商发放产品到应用者在他们的计算机上实际安装并维护应用的所有活动。这些活动包括软件打包、安装、配置、测试、集成和更新等。1软件部署与交付软件部署与交付是软件生命周期中的一个重要环节属于软件开发的后期活动即通过配置、安装和激活等活动来保障软件制品的后续运行。部署技术影响着整个软件过程的运行效率和成本投入软件系统部署的管理代价占到整个软件管理开销的大部分。其中软件配置过程极大地影响着软件部署结果的正确性应用系统的配置是整个部署过程中的主要错误来源。2持续交付持续交付是一系列开发实践方法用来确保让代码能够快速、安全地部署到生产环境中。持续交付是一个完全自动化的过程当业务开发完成的时候可以做到一键部署。待续交付提供了一套更为完善的解决传统软件开发流程的方案主要体现在在需求阶段抛弃了传统的需求文档的方式使用便于开发入员理解的用户故事在开发测试阶段做到持续集成让测试人员尽早进入项目开始测试在运维阶段打通开发和运维之间的通路保待开发环境和运维环境的统一。持续交付具备的优势主要包括待续交付能够有效缩短提交代码到正式部署上线的时间降低部署风险待续交付能够自动、快速地提供反馈及时发现和修复缺陷持续交付让软件在整个生命周期内都处于可部署的状态待续交付能够简化部署步骤使软件版本更加清晰持续交付能够让交付过程成为一种可靠的、可预期的、可视化的过程。在评价互联网公司的软件交付能力的时候通常会使用两个指标仅涉及一行代码的改动需要花费多少时间才能部署上线这也是核心指标开发团队是否在以一种可重复、可靠的方式执行软件交付。持续部署方案容器技术目前是部署中最流行的技术常用的待续部署方案有KubernetesDocker和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定义的软件过程能力成熟度模型旨在通过提升组织的软件开发能力帮助顾客提升软件的业务价值。该模型借鉴吸收了软件工程、项目管理、产品管理、组织治理、质量管理、卓越绩效管理、精益软件开发等领域的优秀实践为组织提供改进和评估软件过程能力的一个成熟度模型。编辑切换为居中添加图片注释不超过 140 字可选CSMM模型由4个能力域、20个能力子域、161个能力要求组成治理包括战略与治理、目标管理能力子域用于确定组织的战略、产品的方向、组织的业务目标并确保目标的实现。开发与交付包括需求、设计、开发、测试、部署、服务、开源应用能力子域这些能力子域确保通过软件工程过程交付满足需求的软件为顾客与利益干系人增加价值。管理与支持包括项目策划、项目监控、项目结项、质量保证、风险管理、配置管理、供应商管理能力子域这些能力子域稷盖了软件开发项目的全过程以确保软件项目能够按照既定的成本、进度和质量交付能够满足顾客与利益干系人的要求。组织管理包括过程管理、人员能力管理、组织资源管理、过程能力管理能力子域对软件组织能力进行综合管理。2成熟度等级按照软件过程能力的成熟度水平由低到高演进发展的形势CSMM定义了5个等级高等级是在低等级充分实施的基础之上进行。编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 140 字可选5.2数据工程数据工程是信息系统的基础工程。围绕数据的生命周期规范数据从产生到应用的全过程目标是为信息系统的运行提供可靠的数据保障和服务为信息系统之间的数据共享提供安全、高效的支撑环境为信息系统实现互连、互通、互操作提供有力的数据支撑。5.2.1数据建模数据建模是对现实世界中具体的人、物、活动和概念进行抽象、表示和处理变成计算机可处理的数据也就是把现实世界中的数据从现实世界抽象到信息世界和计算机世界。1数据模型根据模型应用目的不同可以将数据模型划分为三类概念模型、逻辑模型和物理模型。概念模型。概念模型也称信息模型它是按用户的观点来对数据和信息建模这种信息结构不依赖于具体的计算机系统也不对应某个具体的DBMS,它是概念级别的模型。编辑切换为居中添加图片注释不超过 140 字可选通常对概念模型要求有概念模型是对现实世界的抽象和概括它应该真实、充分地反映现实世界中事物和事物之间的联系有丰富的语义表达能力能表达用户的各种需求概念模型应简洁、明晰、独立于机器、容易理解方便数据库设计人员与用户交换意见使用户能够积极参与数据库的设计工作概念模型应易于变动。当应用环境和应用要求改变时容易修改和补充概念模型概念模型应容易向关系、层次或网状等各种数据模型转换易于从概念模型导出与DBMS相关的逻辑模型。2)逻辑模型逻辑模型是在概念模型的基础上确定模型的数据结构目前主要的数据结构有层次模型、网状模型、关系模型、面向对象模型和对象关系模型。其中关系模型成为目前最重要的一种逻辑数据模型。关系模型的基本元素包括关系、关系的属性、视图等。关系模型是在概念模型的基础上构建的因此关系模型的基本元素与概念模型中的基本元素存在一定的对应关系。编辑切换为居中添加图片注释不超过 140 字可选关系数据模型的数据操作主要包括查询、插入、删除和更新数据这些操作必须满足关系的完整性约束条件。关系的完整性约束包括三大类型实体完整性、参照完整性和用户定义的完整性。其中实体完整性、参照完整性是关系模型必须满足的完整性约束条件用户定义的完整性是应用领域需要遵照的约束条件体现了具体领域中的语义约束。3)物理模型物理数据模型是在逻辑数据模型的基础上考虑各种具体的技术实现因素进行数据库体系结构设计真正实现数据在数据库中的存放。物理数据模型的内容包括确定所有的表和列定义外键用于确定表之间的关系基于性能的需求可能进行反规范化处理等内容。在物理实现上的考虑可能会导致物理数据模型和逻辑数据模型有较大的不同。物理数据模型的目标是如何用数据库模式来实现逻辑数据模型以及真正地保存数据。物理模型的基本元素包括表、字段、视图、索引、存储过程、触发器等其中表、字段和视图等元素与逻辑模型中基本元素有一定的对应关系。2数据建模过程通常来说数据建模过程包括数据需求分析、概念模型设计、逻辑模型设计和物理模型设计等过程。数据需求分析。数据需求分析就是分析用户对数据的需要和要求。数据需求分析是数据建模的起点数据需求掌握的准确程度将直接影响后续阶段数据模型的质量。数据需求分析采用数据流图作为工具描述系统中数据的流动和变化强调数据流和处理过程。概念模型设计。将需求分析得到结果抽象为概念模型的过程就是概念模型设计其任务是确定实体和数据及其关联。逻辑模型设计。概念模型独立于机器更抽象从而更加稳定但是为了能够在具体的DBMS上实现用户的需求还必须在概念模型的基础上进行逻辑模型的设计。逻辑模型设计的任务就是将概念模型中实体、属性和关联转换为关系模型结构中的关系模式。物理模型设计。如果要将数据模型转换为真正的数据库结构还需要针对具体的DBMS进行物理模型设计使数据模型走向数据存储应用环节。物理模型考虑的主要问题包括命名、确定字段类型和编写必要的存储过程与触发器等。5.2.2数掘标惟化数据标准化是实现数据共享的基础。数据标准化主要为复杂的信息表达、分类和定位建立相应的原则和规范使其简单化、结构化和标准化从而实现信息的可理解、可比较和可共享为信息在异构系统之间实现语义互操作提供基础支撑。数据标准化的主要内容包括元数据标准化、数据元标准化、数据模式标准化、数据分类与编码标准化和数据标准化管理。1元数据标准化元数据是关于数据的数据(Data About Data)。元数据被定义为提供关于信息资源或数据的一种结构化数据是对信息资源的结构化描述。其实质是用于描述信息资源或数据的内容、覆盖范围、质量、管理方式、数据的所有者、数据的提供方式等有关的信息。信息对象元数据描述的对象可以是单一的全文、目录、图像、数值型数据以及多媒体等也可以是多个单一资源组成的资源集合或是这些资源的生产、加工、使用、管理、技术处理、保存等过程及产生的参数的描述。元数据体系根据信息对象从产生到服务的生命周期、元数据描述和管理内容的不同以及元数据作用的不同元数据可以分为多种类型。从最基本的资源内容描述元数据开始指导描述元数据的元元数据形成了一个层次分明、结构开放的元数据体系。编辑切换为居中添加图片注释不超过 140 字可选2数据元标准化随着国际电子商务和贸易的快速发展需要一个互连、互通、互操作的开放系统互连环境(Open Systems Interconnection Environment, OSIE)。OSIE四个基本要素(硬件、软件、通信和数据)中的三个要素(硬件、软件和通信)已经或正在制定相应的标准。为了使数据在各种不同的应用环境中易于交换和共享国际标准化组织(,ISO)提出了数据元标准的概念要求按共同约定的规则进行统一组织、分类和标识数据规范统一数据的含义、表示方法和取值范围等保证数据从产生的源头就具备一致性。数据元数据元是数据库、文件和数据交换的基本数据单元。数据库或文件由记录或元组等组成而记录或元组则由数据元组成。数据元是在数据库或文件之间进行数据交换时的基本组成。数据元通过一组属性描述其定义、标识、表示和允许值的数据单元。在特定的语义环境中被认为是不可再分的最小数据单元。数据元一般来说由三部分组成对象。对象类是可以对其界限和含义进行明确的标识且特性和行为遵循相同规则的观念、抽象概念或现实世界中事物的集合。它是人们希望采集和存储数据的事物。特性。特性是指一个对象类的所有成员所共有的特征。它用来区别和描述对象构成对象类的内涵。特性对应于面向对象模型或实体-关系模型中的属性如身高、体重、血压、脉搏、血型等。表示。表示可包括值域、数据类型、表示类(可选的)和计最单位四部分其中任何一部分发生变化都成为不同的表示。值域是数据元允许值的集合。数据元提取目前常用的数据元提取方法有两种自上而下(Top-Down)提取法和自下而上(Down-Top)提取法。对于新建系统的数据元提取一般适用“自上而下”的提取法。基本步骤是在流程和功能分析的基础上通过建模分析确立关心的“对象”。在概念数据模型和逻辑数据模型的基础上分析提取数据元及其属性。自下而上提取法也称逆向工程对于已建系统的数据元提取一般适用这种自下而上提取法。在这种情况下数据元直接来自各个信息系统。数据元标准一般来说制定一个数据元标准应遵循若干个基本过程。编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 140 字可选3数据模式标准化数据模式是数据的概念、组成、结构和相互关系的总称。为了保证能够顺畅进行信息的共享对特定领域而言需要一个统一的数据模式作为数据共享与交换的基础。通过数据集模式的标准化一方面对数据的内容、组成、结构以及各部分的相互关系进行统一规范相关领域、部门或者数据集制作者都可以根据数据模式制作出标准化的数据另一方面数据集按照数据库理论对数据进行了规范化处理有利于减少数据冗余。数据模式的描述方式主要有图描述方法和数据字典方法。图描述方法常用的有IDEFIX方法和UML图主要用来描述数据集中的实体和实体之间的相互关系数据字典形式用来描述模型中的数据集、单个实体、属性的摘要信息。4数据分类与编码标准化数据分类是根据内容的属性或特征将数据按一定的原则和方法进行区分和归类并建立起一定的分类体系和排列顺序。数据分类有分类对象和分类依据两个要素。分类对象由若干个被分类的实体组成分类依据取决于分类对象的属性或特征。所谓数据分类与编码标准化就是把数据分类与编码工作纳入标准化工作的领域按标准化的要求和工作程序将各种数据按照科学的原则进行分类以编码经有关方面协商一致由主管机构批准、注册以标准的形式发布作为共同遵守的准则和依据并在其相应的级别范围内宣贯和推行。5数据标准化管理在数据标准化活动中首先要依据信息需求并参照现行数据标准、信息系统的运行环境以及法规、政策和指导原则在数据管理机构、专家组和开发者共同参与下运用数据管理工具得到注册的数据元素、物理模式和扩充的数据模型。数据标准化阶段的具体过程包括确定数据需求、制定数据标准、批准数据标准和实施数据标准四个阶段。确定数据需求。本阶段将产生数据需求及相关的元数据、域值等文件。在确定数据需求时应考虑现行的法规、政策以及现行的数据标准。制定数据标准。推荐的、新的或修改的数据标准记录于数据字典中。这个阶段将产生供审查和批准的成套建议。批准数据标准。本阶段的数据管理机构对提交的数据标准建议、现行数据标准的修改或封存建议进行审查。一经批准该数据标准将扩充或修改数据模型。实施数据标准。本阶段涉及在各信息系统中实施和改进已批准的数据标准。5.2.3 数据运维数据开发利用的前提是通过合适的方式将数据保存到存储介质上并能保证有效的访问还要通过数据备份和容灾手段保证数据的高可用性。数据质量管理是在数据产品的生产过程中确定质量方针、目标和职责并通过质量策划、质量控制、质量保证和质量改进来实现所有管理职能的全部活动。1数据存储根据不同的应用环境逍过采取合理、安全、有效的方式将数据保存到物理介质上并能保证对数据实施有效的访问。这里面包含两个方面1.数据临时或长期驻留的物理媒介2.保证数据完整安全存放和访问而采取的方式或行为。数据存储介质。数据存储首先要解决的是存储介质的问题。存储介质是数据存储的载体是数据存储的基础。要根据不同的应用环境合理选择存储介质。存储介质的类型主要有磁带、光盘和磁盘三种。存储管理。存储管理在存储系统中的地位越来越重要例如如何提高存储系统的访问性能如何满足数据瞿不断增长的需要如何有效的保护数据、提高数据的可用性如何满足存储空间的共享等。编辑切换为居中添加图片注释不超过 140 字可选2数据备份数据备份是为了防止由于用户操作失误、系统故障等意外原因导致的数据丢失而将整个应用系统的数据或一部分关键数据复制到其他存储介质上的过程。这样做的目的是保证当应用系统的数据不可用时可以利用备份的数据进行恢复尽量减少损失。当前最常见的数据备份结构可以分为四种DAS备份结构、基于LAN的备份结构、LANFREE备份结构和SERVER-FREE备份结构。常见的备份策略主要有三种完全备份、差分备份和增量备份。在数据备份系统中备份服务器、RAID和磁带机等设备提供了硬件基础具体备份策略的制定、备份介质的管理以及一些扩展功能的实现都需要软件来完成。备份软件主要分为两大类一是操作系统自带的软件如麒麟操作系统的备份“工具二是专业备份软件其能够实现比较全面的功能。3数据容灾根据容灾系统保护对象的不同容灾系统分为应用容灾和数据容灾两类。应用容灾用于克服灾难对系统的影响保证应用服务的完整、可靠和安全等一系列要求使得用户在任何情况下都能得到正常的服务数据容灾则关注于保证用户数据的高可用性在灾难发生时能够保证应用系统中的数据尽量少丢失或不丢失使得应用系统能不间断地运行或尽快地恢复正常运行。容灾按其灾难恢复能力的高低可分为多个等级例如国际标准SHARE 78定义的容灾系统有七个等级从最简单的仅在本地进行磁带备份到将备份的磁带存储在异地再到建立应用系统实时切换的异地备份系统。从技术上看衡量容灾系统有两个主要指标RPO(Recovery Point Object)和RTO(Recovery Time Object),其中RPO代表了当灾难发生时允许丢失的数据量而RTO则代表了系统恢复的时间。4数据质量评价与控制数据质量必须从用户使用的角度来看即使准确性相当高的数据如果时效性差或者不为用户所关心仍达不到质量管理标准。数据质量是一个广义的概念是数据产品满足指标、状态和要求能力的特征总和。数据质量描述数据质量可以通过数据质量元素来描述数据质量元素分为数据质量定量元素和数据质量非定量元素。数据质量评价过程数据质量评价过程是产生和报告数据质量结果的一系列步骤。编辑切换为居中添加图片注释不超过 140 字可选数据质量评价方法数据质量评价程序是通过应用一个或多个数据质量评价方法来完成的。数据质量评价方法分为直接评价法和间接评价法直接评价法通过将数据与内部或外部的参照信息如理论值等进行对比。确定数据质量。间接评价法利用数据相关信息如数据只对数据源、采集方法等的描述推断或评估数据质量。4)数据产品的质量控制分成前期控制和后期控制两个大部分。前期控制包括数据录入前的质量控制、数据录入过程中的实时质量控制后期控制为数据录入完成后的后处理质量控制与评价。依据建库流程可分为前期控制是在提交成果(即数据入库)之前对所获得的原始数据与完成的工作进行检查。过程控制实施减少和消除误差和错误的实用技术和步骤主要应用在建库过程中用来对获得的数据在录入过程中进行属性的数据质量控制。系统检测在数据入库后进行系统检测设计检测模板利用检测程序进行系统自检。精度评价对入库属性数据用各种精度评价方法进行槽度分析为用户提供可靠的属性数据。5)数据清理数据清理也称数据清洗。从广义上讲是将数据库精简以除去重复记录并使剩余部分转换成符合标准的过程。而狭义上的数据清理是特指在构建数据仓库和实现数据挖掘前对数据源进行处理使数据实现准确性、完整性、一致性、唯一性、适时性、有效性以适应后续操作的过程。从提高数据质量的角度出发凡是有助于提高数据质量的处理过程都可以认为是数据清理。编辑切换为居中添加图片注释不超过 140 字可选数据分析是指从数据中发现控制数据的一般规则比如字段域、业务规则等通过对数据的分析定义出数据清理的规则并选择合适的清理算法。数据检测是指根据预定义的清理规则及相关数据清理算法检测数据是否正确比如是否满足字段域、业务规则等或检测记录是否重复。数据修正是指手工或自动地修正检测到的错误数据或重复的记录。5.2.4数据开发利用通过数据集成、数据挖掘和数据服务(目录服务、查询服务、浏览和下载服务、数据分发服务)、数据可视化、信息检索等技术手段帮助数据用户从数据资源中找到所需要的数据并将数据以一定的方式展现出来实现对数据的开发利用。1数据集成数据集成就是将驻留在不同数据源中的数据进行整合向用户提供统一的数据视图(一般称为全局模式)使得用户能以透明的方式访问数据。其中“数据源”主要是指DBMS广义上也包括各类XML文档、HTML文档、电子邮件、普通文件等结构化、半结构化和非结构化数据。数据集成的目标就是充分利用已有数据在尽量保持其自治性的前提下维护数据源整体上的一致性提高数据共享利用效率。数据集成系统为用户提供了统一的数据源访问接口执行用户的访问请求。编辑添加图片注释不超过 140 字可选2数据挖掘数据挖掘是指从大量数据中提取或“挖掘”知识即从大量的、不完全的、有噪声的、模糊的、随机的实际数据中提取隐含在其中的、人们不知道的、却是潜在有用的知识。数据挖掘是一门交叉学科其过程涉及数据库、人工智能、数理统计、可视化、并行计算等多种技术。数据挖掘与传统数据分析不同两者分析对象的数据量有差异数据挖掘所需的数据薹比传统数据分析所需的数据量大数据量越大数据挖掘的效果越好两者运用的分析方法有差异传统数据分析主要运用统计学的方法、手段对数据进行分析而数据挖掘综合运用数据统计、人工智能、可视化等技术对数据进行分析两者分析侧重有差异传统数据分析通常是回顾型和验证型的通常分析已经发生了什么而数据挖掘通常是预测型和发现型的预测未来的情况解释发生的原因两者成熟度不同传统数据分析由于研究较早其分析方法相当成熟而数据挖掘除基于统计学等方法外部分万法仍处于发展阶段。数据挖掘流程一般包括确定分析对象、数据准备、数据挖掘、结果评估与结果应用五个阶段这些阶段在具体实施中可能需要重复多次。编辑切换为居中添加图片注释不超过 140 字可选数据挖掘的结果经过决策人员的许可才能实际运用以指导实践。只有通过对分析知识的应用才能对数据挖掘的成果做出正确的评价。3数据服务数据服务主要包括数据目录服务、数据查询与浏览及下载服务、数据分发服务。数据目录服务。由于专业、领域、主管部门、分布地域和采用技术的不同数据资源呈现的是海量、多源、异构和分布的特点。数据目录是用来快捷地发现和定位所需数据资源的一种检索服务是实现数据共享的重要基础功能服务之一。数据查询与浏览及下载服务。数据查询、浏览和下载是网上数据共享服务的重要方式用户使用数据的方式有查询数据和下载数据两种。数据分发服务。数据分发是指数据的生产者通过各种万式将数据传达到用户的过程。通过分发能够形成数据从采集、存储、加工、传播向使用流动实现数据的价值。4数据可视化可视化技术是指将抽象的事物或过程变成图形图像的表示方法。和学计算可视化(Visualizationm Scientific Computing)的基本含义是运用图形学的原理和方法将科学与工程计算等产生的大规模数据转换为图形、图像以直观的形式表示出来。数据可视化(Data Visualization)概念来自科学计算可视化。数据可视化(见图5-7)主要运用计算机图形学和图像处理技术将数据转换成为图形或图像在屏幕上显示出来并能进行交互处理它涉及计算机图形学、医像处理、计算机辅助设计、计算机视觉及人机交互技术等多个领域是一门综合性的学科。主要可分为七类一维数据可视化、二维数据可视化、三维数据可视化、多维数据可视化、时态数据可视化、层次数据可视化和网络数据可视化。编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 140 字可选5信息检索信息检索(Information Retrieval)有广义和狭义之分。广义的信息检索是指将信息按一定的方式组织和存储起来然后根据用户需求查找出特定信息的技术所以全称是信息存储与检索(Information Storageand Retrieval)。狭义的信息检索仅指用户查找特定信息这部分。信息检索的主要方法如下全文检索。以文本数据为主要处理对象根据内容而不是外在特征来实现的信息检索手段。字段检索。把检索对象按一定标准在不同字段中进行著录并把不同字段作为检索依据。基于内容的多媒体检索。按检索内容可分为图像检索、视频检索和声音检索等。数据挖掘。从大量的、不完全的、模糊的、随机的数据中提取隐含在其中且人们事先不知道的潜在、有用的信息和知识的过程。信息检索的常用技术包括布尔逻辑检索技术、截词检索技术、临近检索技术、限定字段检索技术、限制检索技术等。布尔逻辑检索技术。严格意义上的布尔检索法是指利用布尔逻辑运算符连接各个检索词然后由计算机进行相应的逻辑运算以找出所需信息的方法。截词检索技术。截词检索技术是指用截断的词的一个局部进行检索并认为凡是满足这个词局部的所有字符的信息都为命中的信息。截词符用“?”或“*”表示。临近检索技术。临近检索又称位置检索主要是通过检索式中的专门符号来规定检索词在结果中的相对位置。在某些情况下若不限制检索词之间的位置关系则会造成误检影响查准率。限定字段检索技术。限定字段检索即指定检索词在记录中出现的字段。检索时计算机只对限定字段进行匹配运算以提高检索效率和查准率。限制检索技术。限制检索是通过限制检索范围达到优化检索的方法。限制检索的方5.2.5数据库安全数据是脆弱的它可能被无意识或有意识地破坏、修改需要采用一定的数据安全措施确保合法的用户、采用正确的万式、在正确的时间、对相应的数据进行正确的操作确保数据的机密性、完整性、可用性和合法使用。数据库安全是指保护数据库防止不合法的使用所造成的数据泄露、更改或破坏。1数据库安全威胁在数据库环境中不同的用户通过数据库管理系统访问同一组数据集合这样减少了数据的冗余、消除了不一致的问题同时也免去程序对数据结构的依赖。然而这也导致数据库面临更严重的安全威胁。编辑切换为居中添加图片注释不超过 140 字可选2数据库安全对策编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 140 字可选3数据库安全机制数据库安全机制是用于实现数据库的各种安全策略的功能集合。数据库安全机制包括用户的身份认证、存取控制、数据库加密、数据审计、推理控制等内容。5.3系统集成系统集成概念专指计算机系统的集成包括计算机硬件平台、网络系统、系统软件、工具软件、应用软件的集成围绕这些系统的相应咨询、服务和技术支持。5.3.1集成基础系统集成的内容包括技术环境的集成、数据环境的集成和应用程序的集成。系统集成通过硬件平台、网络通信平台、数据库平台、工具平台、应用软件平台将各类资源有机、高效地集成到一起形成一个完整的工作台面。在技术上需要遵循的基本原则包括开放性、结构化、先进性和主流化。开放性。系统硬软件平台、通信接口、软件开发工具、网络结构的选择要遵循工业开放标准这是关系到系统生命周期长短的重要问题。一个集成的信息系统必然是一个开放的信息系统。只有开放的系统才能满足可互操作性、可移植性以及可伸缩性的要求才可能与另一个标准兼容的系统实现“无缝的互操作应用程序才可能由一种系统移植到另一种系统不断地为系统的扩展、升级创造条件。结构化。复杂系统设计的最基本方法依然是结构化系统分析设计方法。把一个复杂系统分解成相对独立和简单的子系统每一个子系统又分解成更简单的模块这样自顶向下逐层模块化分解直到底层每一个模块都是可具体说明和可执行的为止。这一思想至今仍是复杂系统设计的精髓。先进性。先进性有两层意义目前先进性和未来先进性。系统的先进性是建立在技术先进性之上的只有先进的技术才有较强的发展生命力系统采用先进的技术才能确保系统的优势和较长的生存周期。系统的先进性还表现在系统设计的先进性先进技术的有机集成、问题的合理划分以及应用软件符合人们认知特点等。系统设计的先进性贯穿在系统开发的整个生命周期乃至整个系统生存周期的各个环节。主流化。系统构成的每一个产品应属于该产品发展的主流有可靠的技术支持有成熟的使用环境并具有良好的升级发展势头。5.3.2网络集成网络集成不仅涉及不同厂家的网络设备和管理软件也会涉及异构和异质网络系统的互联问题。组织需要结合实际情况建立网络系统集成的体系框架指导网络系统建设实现真正的网络化管理。编辑切换为居中添加图片注释不超过 140 字可选传输子系统。传输线路带宽的高低不仅体现了网络的通信能力传输介质在很大程度上也决定了通信的质量从而直接影响到网络协议。目前主要的传输介质分为无线传输介质和有线传输介质。常用的无线传输介质主要包括无线电波、微波、红外线等常用的有线传输介质主要包括双绞线、同轴电缆、光纤等。交换子系统。网络按所覆盖的区域可分为局域网、城域网和广域网由此网络交换也可以分为局域网交换技术、城域网交换技术和广域网交换技术。安全子系统。网络安全主要关注的内容包括使用防火墙技术防止外部的侵犯使用数据加密技术防止任何入从通信信道窃取信息访问控制主要是通过设置口令、密码和访问权限保护网络资源。网管子系统。网络是一种动态结构。随着组织规模的扩大和改变网络也会跟着扩大和改变。配置好网络以后必须对其进行有效的管理确保网络能连续不断地满足组织的需要。服务器子系统。服务器的作用就是向工作站提供处理器内存、磁盘、打印机、软件数据等资源和服务并负责协调管理这些资源。选择网络服务器时要考虑以下因素CPU的速度和数量内存容量和性能总线结构和类型磁盘容量和性能容错性能网络接口性能服务器软件等。网络操作系统。主要任务是调度和管理网络资源并为网络用户提供统一、透明使用网络资源的手段主要包括网络服务器、工作站、打印机、网桥、路由器、交换机、网关、共享软件和应用软件等。服务子系统。网络服务主要包括互联网服务、多媒体信息检索、信息点播、信息广播、远程计算和事务处理以及其他信息服务等。5.3.3数据集成运用一定的技术手段将系统中的数据按一定的规则组织成为一个整体使得用户能有效地对数据进行操作。数据集成处理的主要对象是系统中各种异构数据库中的数据。数据仓库技术是数据集成的关键。1数据集成层次数据集成是将参与数据库的有关信息在逻辑上集成为一个属于异构分布式数据库的全局概念模式。数据集成可以分为基本数据集成、多级视图集成、模式集成和多粒度数据集成四个层次。基本数据集成。基本数据集成面临的问题很多。通用标识符问题是数据集成时遇到的最难的问题之一。由于同一业务实体存在于多个系统源中并且没有明确的办法确认这些实体是同一实体时就会产生这类问题。处理该问题的办法包括隔离保证实体的每次出现都指派一个唯一标识符。调和确认哪些实体是相同的并且将该实体的各次出现合并起来。当目标元素有多个来源时指定某一系统在冲突时占主导地位。数据丢失问题是最常见的问题之一通常的解决办法是为丢失的数据产生一个非常接近实际的估计值来进行处理。(2)多级视图集成。多级视图机制有助于对数据源之间的关系进行集成底层数据表示方式为局部模型的局部格式如关系和文件中间数据表示为公共模式格式如扩展关系模型或对象模型高级数据表示为综合模型格式。视图的集成化过程为两级映射数据从局部数据库中经过数据翻译、转换并集成为符合公共模型格式的中间视图进行语义冲突消除、数据集成和数据导出处理将中间视图集成为综合视图。(3)模式集成。模型合并属于数据库设计问题其设计的好坏常视设计者的经验而定在实际应用中可参考的成熟理论较少。模式集成的基本框架如属性等价、关联等价和类等价可最终归于属性等价。(4)多粒度数据集成。理想的多粒度数据集成模式是自动逐步抽象。数据综合(或数据抽象)指由高精度数据经过抽象形成精度较低但是粒度较大的数据。这个过程对各局域中的数据进行综合提取其主要特征。2异构数据集成数据集成的目的是为应用提供统一的访问支持因此集成后的数据必须保证一定的完整性包括数据完整性和约束完整性。数据集成还必须考虑语义冲突问题信息资源之间存在的语义区别可能引起各种矛盾。异构数据集成的方法异构数据集成方法归纳起来主要有两种分别是过程式方法和声明式方法。采用过程式方法一般是根据一组信息需求采用一种点对点(Ad-hoc)的设计方法来集成数据。声明式方法的主要特点就是通过一套合适的语言来对多个数据源的数据进行建模构建一个统一的数据表示。另一类方法是利用中间件集成异构数据库该方法不需要改变原始数据的存储和管理方式。开放数据库互联标准实现异构数据源的数据集成首先要解决的问题是原始数据的提取。从异构数据库中提取数据大多采用开放式数据库互联(Open Database Connectivity, ODBC)一种用来在数据库系统之间存取数据的标准应用程序接口。另一种提取数据的方法是针对不同的数据源编写专用的嵌入式C接口程序这样可提高数据的提取速度。基于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.COMCOM中的对象是一种二进制代码对象其代码形式是DLL或EXE执行代码。COM中的对象都被直接注册在Windows的系统库中所以COM中的对象都不再是由特定的编程语言及其程序设计环境所支持的对象而是由系统平台直接支待的对象。COM对象可能由各种编程语言实现并为各种编程语言所引用。COM对象作为某个应用程序的构成单元不但可以作为该应用程序中的其他部分而且还可以单独地为其他应用程序系统提供服务。3.DCOM与COMDCOM作为COM的扩展不仅继承了COM优点而且针对分布环境还提供了一些新的特性如位置透明性、网络安全性、跨平台调用等。DCOM实际上是对用户调用进程外服务的一种改进通过RPC协议使用户通过网络可以以透明的方式调用远程机器上的远程服务。COM为COM的新发展或COM更高层次上的应用其底层结构仍然以COM为基础几乎包容了COM的所有内容。COM倡导了一种新的概念它把COM组件软件提升到应用层而不再是底层的软件结构通过操作系统的各种支待使组件对象模型建立在应用层上把所有组件的底层细节留给操作系统。4..NET.NET是基于一组开放的互联网协议推出的一系列的产品、技术和服务。NET开发框架在通用语言运行环境基础上给开发入员提供了完善的基础类库、数据库访问技术及网络开发技术开发者可以使用多种语言快速构建网络应用。编辑添加图片注释不超过 140 字可选5.J2EEJ2EE架构是使用Java技术开发组织级应用的一种事实上的工业标准它是Java技术不断适应和促进组织级应用过程中的产物。J2EE为搭建具有可伸缩性、灵活性、通用语言运行环境易维护性的组织系统提供了良好的机制。J2EE的体系结构可以分为客户端层、服务器端组件层、EJB层和信息系统层。它还提供了EJB、JavaServletsAPI、JSP和XML技术的全面支持等。5.3.5应用集成如果一个系统支待位于同一层次上的各种构件之间的信息交换那么称该系统支持互操作性。从开放系统的观点来看互操作性指的是能在对等层次上进行有效的信息交换。如果一个子系统(构件或部分)可以从一个环境移植到另一个环境称它是可移植的。集成关心的是个体和系统的所有硬件与软件之间各种人/机界面的一致性。从应用集合的一致表示、行为与功能的角度来看应用(构件或部分)的集成化集合提供一种一致的无缝用户界面。从信息系统集成技术的角度看在集成的堆栈上应用集成在最上层主要解决应用的互操作性的问题编辑添加图片注释不超过 140 字可选语法、语义、语用三者对应到系统集成技术上网络集成解决语法的问题数据集成解决语义的问题应用集成解决语用的间题。应用集成或组织应用集成CEAI)是指将独立的软件应用连接起来实现协同工作。借助应用集成组织可以提高运营效率实现工作流自动化并增强不同部门和团队之间的协作。技术要求大致有具有应用间的互操作性应用的互操作性提供不同系统间信息的有意义交换即信息的语用交换而不仅限于语法交换和语义交换。此外它还提供系统间功能服务的使用功能特别是资源的动态发现和动态类型检查。具有分布式环境中应用的可移植性提供应用程序在系统中迁移的潜力并且不破坏应用所提供的或正在使用的服务。这种迁移包括静态的系统重构或重新安装以及动态的系统重构。具有系统中应用分布的透明性分布的透明性屏蔽了由系统的分布所带来的复杂性。它使应用编程者不必关心系统是分布的还是集中的从而可以集中精力设计具体的应用系统这就大大减少了应用集成编程的复杂性。实现上述目标的关键在于在独立应用之间实现实时双向通信和业务数据流这些应用包括本地应用和云应用。借助互联互通的流程和数据交换组织通常可以基于统一的用户界面或服务协调所有基础设施和应用的各种功能。当事件或数据发生变化时应用集成会确保不同应用之间保持同步。应用集成不同于数据集成数据集成是共享数据并不存储数据而应用集成是在功能层面将多个应用直接连接起来。由于应用集成重点关注的是工作流层面的应用连接因此需要的数据存储空间和计算时间并不多。应用集成既可以部署在云端集成SaaSCRM等云应用也可以部署在受防火墙保护的本地集成传统ERP系统等还可以部署在混合环境中集成本地应用和托管在专用服务器上的云应用。可以帮助协调连接各种应用的组件有应用编程接口(APOAPI是定义不同软件交互方式的程序和规则可以支待应用之间相互通信。API利用特定的数据结构帮助开发人员快速访间其他应用的功能。事件驱动型操作当触发器(即事件)启动一个程序或一组操作时系统就会执行事件驱动型操作。数据映射将数据从一个系统映射到另一个系统可以定义数据的交换方式从而简化后续的数据导出、分组或分析工作。5.4安全工程5.4.1 工程概述信息安全系统工程就是要建造一个信息安全系统它是整个信息系统工程的一部分而且最好是与业务应用信息系统工程同步进行主要围绕“信息安全“内容如信息安全风险评估、信息安全策略制定、信息安全需求确定、信息安全系统总体设计、信息安全系统详细设计、信息安全系统设备选型、信息安全系统工程招投标、密钥密码机制确定、资源界定和投权、信息安全系统施工中需要注意防泄密问题和施工中后期的信息安全系统割试、运营、维护的安全管理等问题。业务应用信息系统工程所主要关注的是客户的需求、业务流程、价值链等组织的业务优化和改造的问题。信息安全系统建设所关注的问题恰恰是业务应用信息系统正常运营所不能缺少的。编辑添加图片注释不超过 140 字可选信息安全系统服务于业务应用信息系统并与之密不可分但又不能混为一谈。信息安全系统不能脱离业务应用信息系统而存在如建立国税信息系统、公安信息系统、社保信息系统等一定包含业务应用信息系统和信息安全系统两个部分但二者的功能、操作流程、管理方式、人员要求、技术领域等都完全不同。业务应用信息系统是支撑业务运营的计算机应用信息系统如银行柜台业务信息系统、国税征收信息系统等。信息系统工程即建造信息系统的工程包括两个独立且不可分割的部分即信息安全系统工程和业务应用信息系统工程。信息安全系统工程是指为了达到建设好信息安全系统的特殊需要而组织实施的工程。信息安全系统工程作为信息系统工程的一个子集其安全体系和策略必须遵从系统工程的一般性原则和规律。信息安全系统工程原理适用于系统和应用的开发、集成、运行、管理、维护和演变以及产品的开发、交付和演变。5.4.2 安全系统信息安全系统是客观的、独立于业务应用信息系统而存在的信息系统。下面用一个“宏观”三维空间图来反映信息安全系统的体系架构及其组成。编辑切换为居中添加图片注释不超过 140 字可选X轴是“安全机制”。安全机制可以理解为提供某些安全服务利用各种安全技术和技巧所形成的一个较为完善的结构体系。Y轴是“OSI网络参考模型”。信息安全系统的许多技术、技巧都是在网络的各个层面十实施的离开网络信息系统的安全也就失去意义。Z轴是“安全服务”。安全服务就是从网络中的各个层次提供给信息应用系统所需要的安全服务支持。如对等实体认证服务、访问控制服务、数据保密服务等。由X、Y、Z三个轴形成的信息安全系统三维空间就是信息系统的“安全空间”。随着网络的逐层扩展这个空间不仅范围逐步加大安全的内涵也就更丰富达到具有认证、权限、完整、加密和不可否认五大要素也叫作“安全空间”的五大屈性。1安全机制安全机制包含基础设施实体安全、平台安全、数据安全、通信安全、应用安全、运行安全、管理安全、授权和审计安全、安全防范体系等。基础设施实体安全。基础设施实体安全主要包括机房安全、场地安全、设施安全、动力系统安全、灾难预防与恢复等。平台安全。平台安全主要包括操作系统漏洞检测与修复、网络基础设施厢洞检测与修复、通用基础应用程序漏洞检测与修复、网络安全产品部署等。数据安全。数据安全主要包括介质与载体安全保护、数据访问控制、数据完整性、数据可用性、数据监控和审计、数据存储与备份安全等。通信安全。通信主要包括通信线路和网络基础设施安全性测试与优化、安装网络加密设施、设置通信加密软件、设置身份鉴别机制、设置并测试安全通道、测试各项网络协议运行漏洞等。应用安全。应用安全主要包括业务软件的程序安全性测试(Bug分析)、业务交往的防抵赖测试、业务资源的访问控制验证测试、业务实体的身份鉴别检测、业务现场的备份与恢复机制检查以及业务数据的唯一性与一致性及防冲突检测、业务数据的保密性测试、业务系统的可靠性测试、业务系统的可用性测试等。运行安全。运行安全主要包括应急处置机制和配套服务、网络系统安全性监测、网络安全产品运行监测、定期检查和评估、系统升级和补丁提供、跟踪最新安全漏洞及通报、灾难恢复机制与预防、系统改造管理、网络安全专业技术咨询服务等。管理安全。管理安全主要包括人员管理、培训管理、应用系统管理、软件管理、设备管理、文档管理、数据管理、操作管理、运行管理、机房管理等。授权和审计安全。授权安全是指以向用户和应用程序提供权限管理和授权服务为目标主要负责向业务应用系统提供授权服务管理提供用户身份到应用授权的映射功能实现与实际应用处理模式相对应的与具体应用系统开发和管理无关的访问控制机制。安全防范体系。组织安全防范体系的建立就是使得组织具有较强的应急事件处理能力其核心是实现组织信息安全资源的综合管理即EISRM(Enterprise Information Security Resource Management)。组织安全防范体系的建立可以更好地发挥以下六项能力预警(Warn)、保护(Protect)、检测(Detect)、反应(Response)、恢复(Recover)和反击(Counter-attack)6个环节即综合的WPDRRC信息安全保障体系。2安全服务安全服务包括对等实体认证服务、数据保密服务、数据完整性服务、数据源点认证服务、禁止否认服务和犯罪证据提供服务等。对等实体认证服务。对等实体认证服务用于两个开放系统同等层中的实体建立链接或数据传输时对对方实体的合法性、真实性进行确认以防假冒。数据保密服务。包括多种保密服务为了防止网络中各系统之间的数据被截获或被非法存取而泄密提供密码加密保护。提供链接方式和无链接方式两种数据保密同时也可对用户可选字段的数据进行保护。数据完整性服务。防止非法实体对交换数据的修改、插入、删除及在数据交换过程中的丢失。分为带恢复功能的链接方式数据完整性不带恢复功能的链接方式数据完整性选择字段链接方式数据完整性选择字段无链接方式数据完整性无链接方式数据完整性。(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)三个基本的部分。编辑添加图片注释不超过 140 字可选工程过程。信息安全系统工程与其他工程活动一样是一个包括概念、设计、实现、测试、部署、运行、维护、退出的完整过程。信息安全系统工程的实施必须紧密地与其他的系统工程组进行合作。编辑切换为居中添加图片注释不超过 140 字可选风险过程。信息安全系统工程的一个主要目标是降低信息系统运行的风险。风险就是有害事件发生的可能性及其危害后果。出现不确定因素的可能性取决于各个信息系统的具体情况。编辑切换为居中添加图片注释不超过 140 字可选保证过程。指安全需求得到满足的可信程度。ISSE-CMM的可信程度来自于信息安全系统工程实施过程可重复性的结果质量基础是工程组织的成熟性成熟的组织比不成熟的组织更可能产生出重复的结果。编辑切换为居中添加图片注释不超过 140 字可选3.ISSE-CMM体系结构ISSE-CMM的体系结构完全适应整个信息安全系统工程范围内决定信息安全工程组织的成熟性。这个体系结构的目标是为了落实安全策略而从管理和制度化突出信息安全工程的基本特征。为此该模型采用两维设计其中一维是域”(Domain),另一维是“能力”(Capability)。域维/安全过程域域维汇集了定义信息安全工程的所有实施活动这些实施活动称为过程域。能力维代表组织能力它由过程管理能力和制度化能力构成。这些实施活动被称作公共特性可在广泛的域中应用。执行一个公共特性是一个组织能力的标志。通过设置这两个相互依赖的维ISSECMM在各个能力级别上覆盖了整个信息安全活动范围。ISSE包括6个基本实施这些基本实施被组织成11个信息安全工程过程域这些过程域覆盖了信息安全工程所有主要领域。一个过程域通常需要满足汇集一个域中的相关活动以便于使用就是有关有价值的信息安全工程服务可在整个组织生命周期中应用能在多个组织和多个产品范围内实现能作为一个独立过程进行改进能够由类似过程兴趣组进行改进包括所有需要满足过程域目标的基本实施(Base Practices, BP)。基本实施的特性包括应用于整个组织生命期和其他BP互相不覆盖代表安全业界“最好的实施”不是简单地反映当前技术可在业务环境下以多种方法使用不指定特定的方法或工具。由基本实施组成的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个级别依次表示增强的组织能力。与域维基本实施不同的是“能力”维的通用实施按其成熟性排序因此高级别的通用实施位于能力维的高端。公共特性设计的目的是描述在执行工作过程(此处即为信息安全工程域)中组织特征方式的主要变化。每一个公共特性包括一个或多个通用实施。公共特性满足每一个级别成熟的信息安全工程特性。编辑切换为居中添加图片注释不超过 140 字可选编辑切换为居中添加图片注释不超过 140 字可选3)能力级别当评估一个组织能力时如果这个组织只执行了一个特定级别的一个特定过程的部分公共特性时则这个组织对这个过程而言处于这个级别的最底层。例如在2级能力上如果缺乏跟踪执行公共特性的经验和能力那么跟踪项目的执行将会很困难。如果高级别的公共特性在一个组织中实施但其低级别的公共特性未能实施则这个组织不能获得该级别的所有能力带来的好处。评估组织在评估一个组织个别过程能力时应对这种情况加以考虑。当一个组织希望改进某个特定过程能力时能力级别的实施活动可为实施改进的组织提供一个“能力改进路线图”。基于这一理由ISSE-CMM的实施按公共特性进行组织并按级别进行排序。对每一个过程域能力级别的确定均需执行一次评估过程。这意味着不同的过程域能够或可能存在不同的能力级别上。组织可利用这个面向过程的信息作为侧重于这些过程改进的手段。组织改进过程活动的顺序和优先级应在业务目标里加以考虑。业务目标是如何使用ISSE-CMM模型的主要驱动力。但是对典型的改进活动也存在着基本活动次序和基本的原则。这个活动次序在ISSE-CMM结构中通过公共特性和能力级别加以定义。能力级别代表工程组织的成熟度级别。编辑添加图片注释不超过 140 字可选5.5本章练习1选择题____使系统的描述及信息模型的表示与客观实体相对应符合入们的思维习惯有利于系统开发过程中用户与开发人员的交流和沟通。A原型化方法B.面向对象方法C.结构化方法D面向服务的方法参考答案B关于UML(统一建模语言)描述中不正确的是____A.UML适用于各种软件开发方法B.UML适用于软件生命周期的各个阶段C.行为事物是UML模型中的静态部分D.UML不是编程语言参考答案C3面向对象软件开发方法的主要优点包括①符合人类思维习惯 ②普适于各类信息系统的开发③构造的系统复用性好 ④适用于任何信息系统开发的全生命周期①③④ B. ①②③ C. ②③④ D. ①②④参考答案B(4)关于面向对象方法的描述不正确的是____。A相比于面向过程设计方法面向对象方法更符合人类思维习惯B封装性、继承性、模块性是面向对象的三大特征C面向对象设计中应把握高内聚、低耦合的原则D使用面向对象方法构造的系统具有更好的复用性参考答案B(5)某行业协会计划开发一个信息管理系统现阶段用户无法明确该系统的全部功能要求希望在试用后再逐渐改进并最终实现用户需求。则该信息系统应采用的开发方法是____。A结构化方法B面向对象方法C原型化方法D面向服务方法参考答案C(6)软件测试是发现软件错误(缺陷)的主要手段软件测试方法可分为静态测试和动态测试其中____属于静态测试。A代码走查B功能测试C黑盒测试D白盒测试参考答案A2案例题某跨国公司70%的收入来源于出售他们国际新闻以及金融信息等基本信息产品。这些产品是通过它的市场显示系统向用户展示的。为改进市场显示系统的可用性使其能更容易、更方便地满足顾客的要求公司让小张负责一个最高优先权的项目任务是改进显示系统的用户界面。为此小张组建了“可用性小组。这实际上是一个“虚拟小组”除包括小张及三名公司成员之外还包括一些有关的技术公司如交互图形公司、微软公司的代表。该小组还与500多名专家保持联系其中一位是“符号学专家”专门负责把计算机的动作翻译成像Windows的图标那样的一些符号。该小组并不通过市场调查去问顾客想要一些什么而是在他们建立的”可用性实验室”中观察客户们怎样利用公司的显示系统查找他们想要的信息产品。可用性实验室有两个房间一间给用户们用用户在公司助理人员的伴随下完成一系列就应用系统的实验。另一间房间被玻璃隔成一些小间各放有一台显示器显示内容与用户屏幕上的内容相同并用可视信号或者是内部通信系统与用户保待联系实验时要求客户完成一系列的操作。例如可以要求用户去查询某只股票的价格画出它在一定期间内走势图找出一些相关的消息和公司的财务数据。随着用户的操作可用性小组的人员就在监视器上观察用户在什么地方发生问题测试出完成每项操作的时间留意引起用户工作中断的过程。用户操作过程还被录像从录像带上能够更精确地测晕所用的时间。该实验室每个月能完成100个用户的三项至四项主要测试。实验室还要去了解公司服务机构接听的用户求助电话将用户求助问题分为四类录入数据库并进行统计分析找出用户遇到的主要问题并设法改进。例如1994年4月有34%的电话是有关RT工作站反映出的可用性问题的进一步分析表明28%的电话是关于报价单问题的于是公司就将报价单在工作站上的显示形式进行了改进。可用性小组最后制定了一系列规范要求所有公司开发小组开发的软件产品都要经过可用性小组的审查相同的功能要用相同的图标图标也必须在可用性小组开发的一系列标准图标集中选用。这些图标开发小组可以在网络上得到。问题1可用性实验室为公司解决了什么问题?问题2上述系统采用了什么开发方法?简述该方法的基本思想和基本步骤?问题3这种开发方法适合于解决哪一类问题?问题4常用的信息系统开发方法有哪些?这些方法分别具有哪些优缺点?分别适用于哪些场合?