Skip to content

软件

  1. 生命周期

    • 软件的规划和定义
    • 需求分析
    • 软件设计
    • 编程
    • 软件测试
    • 运行与维护
  2. 定义:软件 = 程序 + 数据 + 文档 + 服务

  3. 特点

    • 具有抽象性

    • 没有明显的制造过程

    • 存在退化问题

    • 对计算机系统有着不同程度的依赖性

    • 尚未完全摆脱人工的开发方式

    • 软件本身是复杂的

    • 软件成本相当昂贵

    • 相当多的软件工作涉及社会因素

  4. 分类

软件危机

  1. 产生的原因:人们对软件产品认识的不足以及对软件开发的内在规律理解的偏差是软件危机出现的本质原因。

软件工程

  1. 定义:软件工程是以借鉴传统工程的原则、方法, 以提高质量,降低成本为目的指导计算机软件开发和维护的工程学科。它是一种层次化的技术。
  2. 三要素:过程、方法、工具
  3. 三元组:目标、原则、活动
  4. 研究内容
    • 软件开发技术
    • 软件开发过程管理
  5. 六个目的
    • 达到要求的软件功能
    • 取得较好的软件性能
    • 开发出高质量的软件
    • 付出较低的开发成本
    • 需要较低的维护费用
    • 能按时完成开发工作,及时交付使用
  6. 七个原则
    • 用分阶段的生命周期计划严格管理
    • 坚持进行阶段评审
    • 实行严格的产品控制
    • 采用现代程序设计技术
    • 软件工程结果应能清楚的审查
    • 开发小组的人员应该少而精
    • 承认不断改进软件工程实践的必要性
  7. 知识体系
    • 软件需求
    • 软件设计
    • 软件构建
    • 软件测试
    • 软件维护
    • 软件配置管理
    • 软件工程管理
    • 软件工程过程
    • 软件工程模型和方法
    • 软件质量
    • 软件工程职业实践
    • 软件工程经济学
    • 计算基础
    • 数学基础
    • 工程基础

软件开发方法

  1. 结构化方法
  2. 面向数据结构方法
  3. 面向对象方法
  4. 形式化方法

软件工程工具

  1. 分类标准
    • 按照功能划分
    • 按照支持的过程划分
    • 按照支持的范围划分

基于 MIT 许可发布