第五章主要整理了信息系统相关的四大工程:软件、数据、系统集成、安全。整理的真好!
一、软件工程
1.软件架构风格
①数据流风格。数据流风格包括批处理序列和管道/过滤器两种风格。
②调用/返回风格。调用/返回风格包括主程序/子程序、数据抽象和面向对象,以及层次结构。
③独立构件风格。独立构件风格包括进程通信和事件驱动的系统。
④虚拟机风格。虚拟机风格包括解释器和基于规则的系统。
⑤仓库风格。仓库风格包括数据库系统、黑板系统和超文本系统
2.需求分析
QFD将软件需求分为三类,分别是常规需求、期望需求和意外需求
需求过程主要包括需求获取、需求分析、需求规格说明书编制、需求验证与确认等。
结构化分析核心是数据字典。围绕这个核心,有三个层次的模型,分别是数据模型(E-R图)、功能模型(数据流图DFD)和行为模型(状态转换图STD)
面向对象分析模型包括用例模型和分析模型,用例是一种描述系统需求的方法,使用用例的方法来描述系统需求的过程就是用例建模;分析模型描述系统的基本逻辑结构,展示对象和类如何组成系统(静态模型),以及它们如何保持通信,实现系统行为(动态模型)
面向对象分析阶段的核心工作是建立系统的用例模型与分析模型
UML的四种事物:结构事物、行为事物、分组事物、注释事物。四种关系:依赖、关联、泛化、实现。五种视图:逻辑、进程、实现、部署、用例。
UML的14种图:类图(静态)、对象图(动态)、构件、用例......
3. 软件设计
结构化设计(Structured Design,SD)是一种面向数据流的方法,它以SRS和SA阶段所产生的DFD和数据字典等文档为基础,是一个自顶向下、逐步求精和模块化的过程。分为概要设计和详细设计两个阶段。遵循原则:高内聚,低耦合
OO设计基本思想包括抽象、封装和可扩展性。原则包括:
●单职原则:设计功能单一的类。本原则与结构化方法的高内聚原则是一致的。
●开闭原则:对扩展开放,对修改封闭。
●李氏替换原则:子类可以替换父类。
●依赖倒置原则:要依赖于抽象,而不是具体实现;要针对接口编程,不要针对实现编程。
●接口隔离原则:使用多个专门的接口比使用单一的总接口要好。
●组合重用原则:要尽量使用组合,而不是继承关系达到重用目的。
●迪米特原则(最少知识法则):一个对象应当对其他对象有尽可能少的了解。本原则与结构化方法的低耦合原则是一致的。
4.设计模式
设计模式可分为创建型(Creational)模式、结构型(Structural)模式和行为型(Behavioral)模式三种:
①创建型模式主要用于创建对象,包括工厂方法模式、抽象工厂模式、原型模式、单例模式和建造者模式等;
②结构型模式主要用于处理类或对象的组合,包括适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式和代理模式等;
③行为型模式主要用于描述类或对象的交互以及职责的分配,包括职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式等
软件测试方法可分为静态测试和动态测试。动态测试是指在计算机上实际运行程序进行软件测试,一般采用白盒测试和黑盒测试方法。白盒测试方法中,最常用的技术是逻辑覆盖。黑盒测试将程序看作是一个不透明的黑盒,完全不考虑(或不了解)程序的内部结构和处理算法
容器化部署:上手简单,轻量级架构,体积很小;集合性更好,能更容易对环境和软件进行打包复制和发布;为软件的部署带来了前所未有的改进,不但解决了复制和部署麻烦的问题,还能更精准地将环境中的各种依赖进行完整的打包
蓝绿部署和金丝雀部署:蓝绿部署是指在部署的时候准备新旧两个部署版本,通过域名解析切换的方式将用户使用环境切换到新版本中,当出现问题的时候,可以快速地将用户环境切回旧版本,并对新版本进行修复和调整。金丝雀部署是指当有新版本发布的时候,先让少量用户使用新版本,并且观察新版本是否存在问题。如果出现问题,就及时处理并重新发布;如果一切正常,就稳步地将新版本适配给所有的用户。
软件过程能力成熟度五级模型:非正规实施级、规划和跟踪级、充分定义级、量化提升级、创新引领级
二、数据工程
数据模型划分为三类:概念模型、逻辑模型和物理模型。概念模型包括:实体、属性、域、键、关联;逻辑模型包括:层次模型、网状模型、关系模型、面向对象模型和对象关系模型;物理模型:表、字段、视图、索引、存储过程、触发器等
数据建模过程包括:数据需求分析、概念模型设计、逻辑模型设计和物理模型设计等过程
元数据最简单的定义是:元数据是关于数据的数据(Data About Data)
数据元是数据库、文件和数据交换的基本数据单元
数据元标准制定过程包括:描述;界定业务范围;开展业务流程分析和信息建模;借助信息模型,提取数据元,并按照一定规则规范属性;对于代码型数据元,编制其值域;与现有国家标准或行业标准协调;发布实施建立维护机制
数据标准化阶段的具体过程包括:确定数据需求、制定数据标准、批准数据标准和实施数据标准四个阶段
数据备份是数据容灾的基础。数据备份是数据高可用的最后一道防线,其目的是为了在系统数据崩溃时能够快速恢复数据
RPO(Recovery Point Object)和RTO(Recovery Time Object),其中RPO代表了当灾难发生时允许丢失的数据量;而RTO则代表了系统恢复的时间
数据服务主要包括:数据目录服务、数据查询与浏览及下载服务、数据分发服务
数据库安全机制包括:用户的身份认证、存取控制、数据库加密、数据审计、推理控制等内容
三、系统集成
基本原则包括:开放性、结构化、先进性和主流化
网络集成包括:传输子系统;交换子系统;安全子系统;网管子系统;服务器子系统;网络操作系统;服务子系统。
数据集成可以分为:基本数据集成、多级视图集成、模式集成和多粒度数据集成四个层次
数据集成需要考虑:异构数据集成的方法、开放数据库互联标准(ODBC)、基于XML的数据交换标准、基于JSON的数据交换格式
软件集成从结构化到面向对象、从集中到分布、从同构到异构、从独立到集成、从辅助到智能、从异步到协同的发展趋势。有代表性的软件构件标准:公共对象请求代理结构(Common Object Request Broker Architecture,CORBA)、COM、DCOM与COM+、.NET、J2EE应用架构等标准
在集成的堆栈上,应用集成在最上层,主要解决应用的互操作性的问题
四、安全工程
1. 信息安全空间
2.安全机制包含:基础设施实体安全、平台安全、数据安全、通信安全、应用安全、运行安全、管理安全、授权和审计安全、安全防范体系等
3. 安全服务包括:对等实体认证服务、数据保密服务、数据完整性服务、数据源点认证服务、禁止否认服务和犯罪证据提供服务等
4. 信息安全系统工程过程的组成部分