软件工程---1.概述

软件的特征

  1. 抽象: 不可触摸,逻辑实体,可记录,但看不到
  2. 复制成本低:不受物质材料的限制,不受物理定律或加工过程的制约,与开发成本相比,复制成本很低无折旧、受硬件制约、未完全摆脱手工工艺开发费用高
    • 软件是开发出来的,不是制造出来的
    • 软件可能被“废弃”,但不会“用坏”
    • 软件大部分是定制的,而不是装配的

软件复杂度

  1. 计数复杂度
  2. 管理复杂度

IEEE对软件的定义

软件是计算机程序、规程以及运行计算机系统可能需要的相关文档和数据。

  1. 计算机程序是计算机设备可以接受的一系列指令和说明,为计算机执行提供所需的功能和性能。
  2. 数据是事实、概念或指令的结构化表示,能够被计算机设备接收、理解或处理。
  3. 文档是描述程序研制过程、方法及使用的图文材料

IEEE 对软件工程的定义

软件工程是:

  1. 将系统化的、规范的、可量化的方法应用于软件的开发、运行和维护,即将工程化方法应用于软件。
  2. 对(1)中所述方法的研究。

什么是软件工程

  • 软件工程是一项建模活动
  • 软件工程是一项解决问题活动
  • 软件工程是一项受事物基本原理指导的活动、

什么是建模

  • 对系统抽象的表示,可以了解未知的系统和领域。

为什么需要建模

  • 系统太大、太小、太复杂或体验代价太高时,需要模型。

应用域模型

从用户角度去描述的系统

解答域模型

从开发者的角度去描述的系统,评估具体实现时不同的方案

面向对象的方法将应用域建模和解答域建模合二为一,
面向对象方法的思想:解答域模型就是从应用域模型转化过来的。
采用UML对应用域及解答域建模,然后将其转化为具体实现

软件工程概念

软件工程---1.概述_第1张图片

功能性需求

系统必须支持功能的规格说明

非功能性需求

是对系统运行的一些约束,指导着系统如何去实现

软件工程开发活动

  1. 需求获取
  2. 分析
  3. 系统设计
  4. 对象设计
  5. 实现
  6. 测试

软件工程---1.概述_第2张图片

需求获取

客户和开发者定义系统目标,其结果是使用参与者和用 例来描述系统,包括功能性需求和非功能性需求
软件工程---1.概述_第3张图片

分析

将需求分析中产生的用例转化顺序图和状态图
软件工程---1.概述_第4张图片
软件工程---1.概述_第5张图片
软件工程---1.概述_第6张图片

你可能感兴趣的:(软件工程)