信息系统工程监理-前导课

文章目录

  • [第一章 软件工程概述与过程模型](#第一章 软件工程概述与过程模型)
    • [1.1 软件的概念与特点](#1.1 软件的概念与特点)
    • [1.2 软件危机的产生](#1.2 软件危机的产生)
    • [1.3 软件工程知识体系](#1.3 软件工程知识体系)
    • [1.4 软件过程模型和能力成熟度模型概念](#1.4 软件过程模型和能力成熟度模型概念)
    • [1.5 传统模型,现代模型,选择过程模型](#1.5 传统模型,现代模型,选择过程模型)
  • [第二章 需求分析 & 系统设计](#第二章 需求分析 & 系统设计)
    • [2.1 需求分析概述](#2.1 需求分析概述)
    • [2.2 面相过程的分析方法](#2.2 面相过程的分析方法)
    • [2.3 面相对象的分析方法](#2.3 面相对象的分析方法)
    • [2.4 系统设计概述](#2.4 系统设计概述)
    • [2.5 面相过程的系统设计](#2.5 面相过程的系统设计)
    • [2.6 面相对象的系统设计](#2.6 面相对象的系统设计)
  • [第三章 UML详解](#第三章 UML详解)
    • [3.1 UML用例图](#3.1 UML用例图)
    • [3.2 UML类图](#3.2 UML类图)
    • [3.3 UML顺序图 & 协作图](#3.3 UML顺序图 & 协作图)
    • [3.4 UML活动图 & 泳道图](#3.4 UML活动图 & 泳道图)
    • [3.5 UML包图](#3.5 UML包图)
    • [3.6 UML构件图 & 部署图](#3.6 UML构件图 & 部署图)
  • [第四章 程序实现 & 质量保证](#第四章 程序实现 & 质量保证)
    • [4.1 程序设计语言的特点](#4.1 程序设计语言的特点)
    • [4.2 编程习惯](#4.2 编程习惯)
    • [4.3 程序的效率](#4.3 程序的效率)
    • [4.4 编码管理](#4.4 编码管理)
    • [4.5 质量保证与软件测试概念](#4.5 质量保证与软件测试概念)
    • [4.6 软件测试策略](#4.6 软件测试策略)
    • [4.7 软件测试技术](#4.7 软件测试技术)
  • 第五章

第一章 软件工程概述与过程模型

1.1 软件的概念与特点

  • 1 软件的定义:
    1、软件=程序+数据+文档
    2。程序:按照实现设计的功能和性能需求执行的指令序列
    3、数据:程序能正常操作信息的数据结构
    4、文档:与程序开发、维护和使用有关的图文材料
  • 2 软件的特征:

    1、软件是开发的或者是工程化的,并不是制造的

    2、软件生产是简单的拷贝

    3、软件会多次修改

    4、软件开发环境对产品的影响较大

    5、软件开发时间和工作量难以估计

    6、软件的开发进度几乎没有客观标准

    7、软件测试非常困难

    8、软件不会磨损或者老化

    9、软件维护容产生新的问题

  • 3 软件的双重作用:

    1、一方面是一种产品

    提供计算能力

    产生管理获取修改显示或者传输信息

    2、另一方面是开发其他软件产品的的工具

    支持或者直接提供系统所需的功能

    控制其他程序--如操作系统

    改善通信--如网络软件

    帮助开发其他软件--如软件开发工具IDEA VSCode

  • 4 软件的分类:按照功能分类
    1、系统软件:操作系统、数据库管理系统、设备驱动程序、通信处理程序
    2、支撑软件:文本编辑程序、文件格式化程序、程序库系统、支持需求分析/设计/实现/测试/支持管理的软件
    3、应用软件:商业数据处理软件、工程与科学计算软件、计算机辅助设计、系统仿真软件、事务管理/办公自动化软件
  • 5 软件的分类:按照服务对象

    项目软件

    产品软件

  • 6 软件的发展

    个体化、 50-60

    作坊化、 60-70

    工程化、 70-80

    产业化、 80-现在

  • 7 软件规模越来越大

    1、汽车系统

    2、波音飞机

    3、宇宙飞船

    4、航天飞机

    5、VISTA系统

    6、国际空间站

  • 8 为什么软件发展如此之快

    1、计算需求,软甲必须适应新的额计算环境或技术

    2、业务需求,软件必须改善,已实现新的业务需求

    3、嵌入需求,软件必须扩展,以满足和新一代系统或数据库之间的相互操作

    4、架构需求,软件必须重新设计,使其在新的网络环境中是可以使用的

1.2 软件危机的产生

  • 1 什么是软件危机

    概念:在计算机软件的开发和维护的过程中所遇到的一系列问题

    分类:

    项目超出预算

    项目超出计划完成时间

    软件运行效率很低

    软件质量很差

    软件通常不符合要求

    项目难以管理并且代码难以维护

    软件不能交付

  • 2 软件危机案例

  • 4 软件成本日益增加

  • 5 软件技术进步 < 需求增长

  • 6 软件危机产生的原因

    客观:软件本身的特点---逻辑部件、规模庞大

    主观:不正确的开发方法---忽略需求分析,错误的认为:软甲开发=代码编写、轻视软件维护

  • 7 消除软件危机产生的途径---软件工程
    1、对计算机软件有一个清晰的认识-- 软件!=程序
    2、必须充分的认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好,管理严密,各类人员协同配合,共同完成的工程项目
    3、推广使用在实践中总结出来的开发软件的成功技巧和方法,开发软件使用更好的软件工具

1.3 软件工程知识体系

  • 1 软件工程有什么用
  • 2 软件工程三要素
  • 4 软件工程的发展阶段

1.4 软件过程模型和能力成熟度模型概念

1.5 传统模型,现代模型,选择过程模型

第二章 需求分析 & 系统设计

2.1 需求分析概述

2.2 面相过程的分析方法

2.3 面相对象的分析方法

2.4 系统设计概述

2.5 面相过程的系统设计

2.6 面相对象的系统设计

第三章 UML详解

3.1 UML用例图

3.2 UML类图

3.3 UML顺序图 & 协作图

3.4 UML活动图 & 泳道图

3.5 UML包图

3.6 UML构件图 & 部署图

第四章 程序实现 & 质量保证

4.1 程序设计语言的特点

4.2 编程习惯

4.3 程序的效率

4.4 编码管理

4.5 质量保证与软件测试概念

4.6 软件测试策略

4.7 软件测试技术

第五章