软件工程

来源:互联网 发布:阿里云cname绑定 编辑:程序博客网 时间:2024/06/05 15:28

软件工程

软件工程:是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。
软件工程过程

  • 软件规格说明
  • 软件开发
  • 软件确认
  • 软件改进

软件生存期 life cycle

  • 软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的生存期
**软件工程的设计步骤**
  1. 制定计划:确定要开发软件系统的总目标;给出功能、性能、可靠性以及接口等方面的要求;完成该软件任务的可行性研究。
  2. 需求分析和定义:对待开发软件提出的需求进行分析并给出详细的定义;编写软件需求说明书。
  3. 软件设计:把各项需求转换成软件的体系结构,按照功能划分不同的模块,给每个模块以明确的定义;详细设计,确定每个模块的数据结构,包括模块之间的接口。
  4. 软件测试:单元测试,查找个模块在功能和结构上存在的问题并加以纠正;组装测试,将已测试过的模块按一定顺序组装起来。
  5. 开发方法:遵循软件生命期的划分,明确规定每个阶段的任务,上一阶段完成确定的任务后就产一定格式的文档给下一阶段,不同阶段的任务一般有不同级别的软件人员承担。
  6. 开发特点:时间的顺序性和依赖性;推迟实现的观点;质量保证的观点。
**软件开发模型**
  • 瀑布模型
  • 演化模型
  • 螺旋模型
  • 喷泉模型

软件工程基本内容与目标

    1.从内容上划分软件工程学可分为理论、结构、方法、工具、环境、管理、规范等。
    2.基本目标
  • 定义良好的方法学,面向计划、开发维护整个软件生存周期的方法学。
  • 确定的软件成分,记录软件生存周期每一步的软件文件资料,按步显示轨迹。
  • 可预测的记过,在深谷才能周期中,每隔一定时间可以进行复审。
  • 软件工程学的最终目标是以较少投资获得易维护、易理解、可靠、高效率的软件产品。

软件工程的由来

软件危机
表现

  1. 产品不符合用户的实际需要。
  2. 软件开发生产率提高的速度远远不能满足客观需要,软件的生产率远远低于硬件生产率和计算机应用的增长,使人们不能充分利用现代计算机硬件提供的巨大潜力。
  3. 软件产品的质量差。
  4. 对软件开发成本和进度的估计常常不准确。
  5. 软件的可维护性差。
  6. 软件文档资料通常既不完整也不合格。
  7. 软件的价格昂贵,软件成本在计算机系统总成本中所占的比例逐年上升。

产生的原因

  1. 软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。
  2. 在写出程序代码并在计算机上试运之前,很难检验开发的正确性,而且软件开发的也较难评价。软件不同于一般程序,它的一个显著特点是规模庞大。
  3. 开发和管理人员只重视开发而轻视问题的定义,使软件产品无法满足用户的需求。
  4. 软件管理技术不能满足现代软件开发的需要,没有统一的软件质量管理规范。
  5. 在软件的开发与维护关系问题上存在错误的概念。

解决的原理

  • 用分阶段的生存周期计划严格管理
  • 坚持进行阶段评审
  • 实行严格的产品控制
  • 采用现代程序设计技术
  • 结果应能清楚地审查
  • 合理安排软件开发小组的人
  • 承认不断改进软件工程实现的必要性,就是必须不断改进
原创粉丝点击