软件工程概论-第一节:软件和软件危机

Posted 快乐江湖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件工程概论-第一节:软件和软件危机相关的知识,希望对你有一定的参考价值。

一:软件的概念、特点与发展

(1)软件发展的三个阶段

  • 程序设计阶段(50~60年代)
  • 程序系统阶段(60~70年代)
  • 软件工程阶段(70年代以后)

(2)软件的概念

软件:是计算机系统中与硬件相互依存的另一部分,包括程序、数据及其相关文档的完整集合

  • 数据:是使程序能够适当处理信息的数据结构
  • 程序:是能够完成预定功能和性能的可执行指令序列
  • 文档:是开发、使用和维护过程中程序所需要的图文资料

(3)软件的特点

  1. 软件本身具有复杂性
  2. 软件成本高昂
  3. 软件未摆脱手工开发方式
  4. 软件维护与硬件维护有本质区别,维护难度高
  5. 软件开发不是传统的硬件制造过程
  6. 软件是一种逻辑实体,无磨损性

二:软件危机

(1)软件危机的概念

软件危机:在计算机软件开发和维护过程中所遇到的一系列严重问题。主要包含两个方面

  • 如何开发软件,以满足日益增长的软件需求
  • 如何维护数量不断膨胀的已有软件

(2)软件危机的表现

  • 对软件开发成本和进度估算不准确
  • 用户对已完成软件不满意
  • 软件质量不可靠
  • 软件不可维护
  • 没有适当的文档资料
  • 软件成本在计算机系统中所占比例逐年上升
  • 软件开发生产率低

(3)软件危机产生的原因

A:主观原因

  • 忽视需求分析
  • 轻视软件维护
  • 没有认识到程序只是软件的一部分(很多人的共性问题)
  • 没有认识到软件开发只是软件漫长生命周期中一个比较次要的阶段
  • 越到后期如果引入变动则代价越高

B:客观原因

  • 软件是逻辑实体,具有不可见性,所以管理和控制较为困难
  • 软件不会磨损,维护意味着需要修改原来的设计,维护困难
  • 软件规模庞大,程序复杂性随规模增加而增加

(4)解决方法

  • 对计算机软件应该有正确的认识
  • 要吸取和借鉴人类长期从事各种工程项目积累的原理、概念、技术和方法
  • 积极开发和使用计算机辅助开发软件
  • 探索更好更有效的管理措施和手段对开发过程进行控制和管理

以上是关于软件工程概论-第一节:软件和软件危机的主要内容,如果未能解决你的问题,请参考以下文章

软件工程概论第一节

软件工程概论第一章阅读笔记

软件工程概论第一节课感想

复习笔记软件工程概论复习

软件工程概论习题

软件工程概论个人总结