软考高项复习知识点(一)信息系统&软件开发

279 阅读4分钟

一、信息系统知识

1、大型信息系统特点

  • 规模庞大:多个独立子系统;
  • 跨地域性:部署不集中;
  • 网络结构复杂:多级网络结构,跨多个安全域;
  • 业务种类多:业务逻辑复杂;
  • 数据量大:业务信息量大,数据复杂多样;
  • 用户多:使用者多,角色多,对系统的访问和操作多;

2、信息系统生命周期

  • 系统规划:可行性研究报告、系统设计任务书(系统建设方案、实施计划)——立项阶段

    • 开发请求
    • 初步调查
    • 可行研究
  • 系统分析:新系统逻辑模型、系统需求规格说明书、确认测试计划(需求)、系统测试计划 ——开发阶段

    • 详细调查
    • 逻辑设计
  • 系统设计:新系统物理模型、系统设计说明书 ——开发阶段

    • 总体设计
    • 详细设计
  • 系统实施:源码、测试报告 ——开发阶段

    • 编程调试
    • 系统转换
  • 系统运行和维护:维护与评价日志 ——运维阶段、消亡阶段

    • 系统维护
    • 系统评价

二、软件开发知识

1、软件开发方法

  • 结构化法

  • 面向对象方法

    • 与现实世界对应,符合人们的思维习惯
    • 更好的复用性
    • 关键在于建立一个全面,合理,统一的模型
    • 分析,设计,实现三个阶段,界限不明确

    注:结构化与面向对象关系:相互依存,不可替代

  • 面向服务的方法

    • OO(面向对象)-> 构件化 ->  标准化 -> SO(面向服务)
    • 提高系统可复用性,信息资源共享和系统之间的互操作性
  • 原型法

    • 适用范围:需求不明确的开发;分析层面难度大,技术层面难度不大的系统
    • 特点:降低成本与风险,加快速度
    • 缺点:开发环境要求高;管理水平要求高
    • 开发过程:确定用户基本需求 -> 设计原型 -> 试用与评价原型 -> 修改完善原型 -> 整理原型提供文档

2、需求分析

软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望。

需求分类:

  • 业务需求:系统高层次目标,反映了企业或客户对系统层次的目标需求;
  • 用户需求:用户视角;
  • 系统需求:系统的角度看问题;
    • 功能需求
    • 性能需求(非功能需求)
    • 设计约束

质量功能部署(QFD):

  • 基本需求:用户要求的,必须做;
  • 期望需求:用户认为要做的,不做不满意;
  • 兴奋需求:用户不认为要做,一般不做;

需求分析的步骤:

  • 需求获取:用户访谈,问卷调查,采样等;
  • 需求分析:检测和解决需求之间的冲突;发现软件的边界,以及软件与其环境如何交互;
  • 需求定义:需求规格说明书(SRS);
  • 需求验证:需求评审,需求测试;

3、UML(统一建模语言)

UML特征:

  • 可视化的建模语言;
  • 面向对象分析与设计的一种标准表示;
  • 允许任何一种过程和方法使用;
  • 简单并且可扩展;
  • 强调重用(架构,框架,模式和组件);

UML静态图(结构图):

  • 类图
    • 依赖关系:一个事物发生变化影响另一个事物;
    • 泛化关系:特殊/一般关系;
    • 关联关系:描述了一组链,链是对象之间的连接;
      • 聚合关系:整体与部分生命周期不同(空心菱形);
      • 组合关系:整体与部分生命周期相同(实心菱形);
    • 实现关系:接口与类之间的关系
  • 对象图
  • 构件图
  • 部署图:软硬件之间映射
  • 制品图:系统的物理结构
  • 包图
  • 组合结构图

UML动态图(行为图)

  • 用例图:系统与外部参与者的交互
    • 包含关系(include):提取公共用例;
    • 扩展关系(extend):根据情况可能发生多种分支;
    • 泛化关系:父子用例;
  • 状态图:状态转移变迁
  • 活动图:类似程序流程图,并行行为
  • 顺序图:强调按时间顺序 —— 交互图
  • 通信图(协作图):强调消息收发对象的结构组织 —— 交互图
  • 定时图:强调实际时间 —— 交互图
  • 交互概览图 —— 交互图