> 文章列表 > 软考-信息系统工程(五)

软考-信息系统工程(五)

软考-信息系统工程(五)

信息系统工程

Garlan和Shaw对通用软件架构风格进行了分类,他们将软件架构分为:(曾经考过1分选择题 区分)

  • 数据流风格:数据流风格包括批处理序列和管道/过滤器两种风格。
  • 调用/返回风格:调用/返回风格包括主程序/子程序、数据抽象和面向对象,以及层次结构。
  • 独立构件风格:独立构件风格包括进程通信和事件驱动的系统。
  • 虚拟机风格:虚拟机风格包括解释器和基干规则的系统
  • 仓库风格。仓库风格包括数据昨系统、黑板系统和超文本系统

5.1.2需求分析 (P131)

软件需求是指用户对新系统在功能、行为、性能、设计约束等方面的期望。
1.需求的层次
简单地说,软件需求就是系统必须完成的事以及必须具备的品质。需求是多层次的,包括业务需求、用户需求和系统需求,这三个不同层次从目标到具体,从整体到局部,从概念到细节。

质量功能部署(Quality Function Deployment,QFD)是一种将用户要求转化成软件需求的技术,其目的是最大限度地提升软件工程过程中用户的满意度。为了达到这个目标,QFD将软件需求分为三类,分别是常规需求、期望需求和意外需求。

2.需求过程
需求过程主要包括需求获取、需求分析、需求规格说明书编制、需求验证与确认等。
1)需求获取
需求获取是一个确定和理解不同的项目干系人的需求和约束的过程。需求获取方法包括用户访谈、问卷调查、采样、情节串联板、联合需求计划等。
2)需求分析(考过1分选择题)
使用结构化分析 (Structured Analsis.SA) 方法进行需求分析其建立的模型的核心是数据字典。围绕这个核心,有三个层次的模型,分别是数据模型、功能模型和行为模型(也称为状态模型)。在实际工作中,一般使用实体关系图 (ER图)表示数据模型,用数据流图 (Data Flow Diagram.DFD) 表示功能模型,用状态转换图 (State Transform Diagram,STD) 表示行为模型
面向对象的分析(Object-Oriented Analysis,00A) (略类和对象)

3)需求规格说明书编制
软件需求规格说明书(Sofware Requirement Specifcation,SRS) 是需求开发活动的产物,编制该文档的目的是使项目于系人与开发团队对系统的初始规定有一个共同的理解,使之成为整个开发工作的基础。SRS是软件开发过程中最重要的文档之一,对于任何规模和性质的教件项目都不应该缺少

4)需求验证与确认(略)

3.UML
统一建模语言 (Unibed Modeling Language,UML) 是一种定义良好、易于表达、功能强大且普遍适用的建模语言

  1. UML中的事物
    UM中的事物也称为建模元素,包括结构事物(Structural Thine)、行为事物 (B:havioral Things也称动作事物) 、分组事物(Grouping Things) 和注释事物 (Annotational Things也称注解事物).

软件设计阶段解决"怎么做”的问题。

  • 结构化设计
    结构化设计 (Structured Desigp,SD) 是一种面向数据流的方法,它以SRS和SA阶段所产生的DFD和数据字典等文档为基础,是一个自顶向下、逐步求精和模块化的过程。
    在SD中,需要遵循一个基本的原则:高内聚、低耦合。内聚表示模块内部各成分之间的联系程度,是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做目标单一的一件事情;耦合表示模块之间联系的程度。紧密耦合表示模块之间联系非常强,松散耦合表示模块之间联系比较弱,非耦合则表示模块之间无任何联系,是完全独立的。
  • 面向对象设计

常用的OOD原则包括:
单职原则:设计功能单一的类。本原则与结构化方法的高内聚原则是一致的。
开闭原则:对扩展开放,对修改封闭
李氏替换原则:子类可以替换交类
依赖倒置原则;要依赖于抽象,而不是具体实现,要针对接口编程,不要针对实现编程
接口隔离原则: 使用多个专门的接口比使用单一的总接口要好
组合重用原则: 要尽量使用组合,而不是继承关系达到重用目的.
迪米特原则(最小知识法则):一个对象应当对其他对象有尽可能少的了解.本原则与结构化方法的低耦合原则是一致的

  • 设计模式
    设计模式可分为:创建型模式、结构型模式、行为型模式三种.

软件测试(考1分选择题)
软件测试是在将软件交付给客户之前所必须完成的重要步骤。软件测试仍是发现软件错误(缺陷) 的主要手段。软件测试方法可分为静态测试和动态测试.
1)静态测试是指被测试程序不在机器上运行、而采用人工检测和计算机辅助静态分析的手段对程序进行检测。静态测试包括对文档的静态测试和对代码的静态测试。对文档的静态测试主要以检查单的形式进行,而对代码的静态测试一般采用桌前检查 (Desk Checking) 、代码走查和代码宙查。经验表明,使用这种方法能够有效地发现30%~70%的逻辑设计和编码错误。

2)动态测试是指在计算机上实际运行程序进行软件测试,一般采用白盒测试和黑盒测试方法。白盒测试也称为结构测试,。最常用的技术是逻辑覆盖,即使用测试数据运行被测程序,考查对程序逻辑的覆盖程度。主要的覆盖标准有语句覆盖、判定覆盖、条件覆盖、条件/判定覆盖、条件组合覆盖、修正的条件/判定覆盖和路径覆盖等。黑盒测试也称为功能测试,一般包括等价类划分、边界值分析、判定表、因果图、状态图、随机测试、猜错法和正交试验

5.3.1集成基础(P163)

系统集成的内容包括技术环境的集成、数据环境的集成和应用程序的集成。在技术上需要遵循的基本原则包括: 开放性结构化、先进性和主流化。
(1) 开放性:系统硬软件平台、通信接口、软件开发工具、网络结构的选择要遵循工业开放标准,这是关系到系统生命周期长短的重要问题。
(2) 结构化:复杂系统设计的最基本方法依然是结构化系统分析设计方法。(分解)
(3) 先进性:先进性有两层意义,目前先进性和未来先讲性
(4)主流化:系统构成的每一个产品应属于该产品发展的主流有可靠的技术支持,有成熟的使用环境,并具有良好的升级发展势头

数据集成的目的是运用一定的技术手段将系统中的数据校定的规则组织成为一个整体,使得用户能有效地对数据进行操作。数据集成处理的主要对象是系统中各种异构数据库中的数据。数据仓库技术是数据集成的关键。
数据集成层次
数据集成可以分为基本数据集成、多级视图集成、模式集成和多粒度数据集成四个层次。

安全机制
安全机制包含基础设施实体安全、平台安全、数据安全、通信安全、应用安全、运行安全、管理安全、授权和审计安全、安全防范体系等
(1)基础设施实体安全。基础设施实体安全主要包括机房安全、场地安全、设施安全、动力系统安全、灾难预防与恢复等.

平台安全。平台安全主要包括操作系统漏洞检测与修复网络基础设施漏洞检测与修复、通用基础应用程序漏洞检测与修复、网络安全产品