软件工程:解耦与危机应对
需积分: 0 74 浏览量
更新于2024-07-13
收藏 3.5MB PPT 举报
软件工程是一门旨在解决软件开发过程中出现的严重问题的学科,它起源于20世纪60年代末的软件危机。软件危机主要表现为开发成本和进度难以准确预估、用户满意度低、产品质量不稳定、软件维护困难、文档缺乏以及软件成本占比持续增长,而软件开发生产率却未能跟上计算机应用的发展步伐。
软件危机产生的原因主要有两方面:一是软件本身的复杂性,比如忽视需求分析,将软件开发简单地理解为编写代码并运行;二是软件开发方法的不足,如轻视软件维护,导致在不同阶段进行修改的成本差异显著。为应对这些问题,软件工程作为一门交叉学科应运而生,它运用工程的方法和技术来研究软件开发、维护的策略、工具和管理。
软件工程的诞生是在1968年的NATO会议上,会议提出将软件开发提升到工程化的层次,即软件工程学。该学科关注的是如何系统化、规范化地设计、构建、测试和维护软件,通过推广成功的开发技术和方法、发展高效工具,以及实施良好的组织管理来改善软件开发过程。
另一方面,程序设计方法学则侧重于数学方法的应用,研究程序的内在结构、设计原理和理论,为软件开发提供更为深入的理论支持。这两者相互补充,共同构成了现代软件开发的基础框架,帮助工程师们更好地应对软件危机,提高软件质量和生产率,确保软件系统的可靠性和可维护性。
软件工程的核心目标是通过科学的方法和实践,克服软件开发中的各种挑战,从而提高软件质量,控制成本,缩短开发周期,使得软件成为计算机系统中高效、可靠的重要组成部分。
2010-03-29 上传
2009-08-16 上传
2009-03-29 上传
2009-05-27 上传
2007-12-15 上传
2023-05-24 上传
2011-02-16 上传
2021-08-16 上传
2022-06-14 上传
四方怪
- 粉丝: 28
- 资源: 2万+
最新资源
- Java集合ArrayList实现字符串管理及效果展示
- 实现2D3D相机拾取射线的关键技术
- LiveLy-公寓管理门户:创新体验与技术实现
- 易语言打造的快捷禁止程序运行小工具
- Microgateway核心:实现配置和插件的主端口转发
- 掌握Java基本操作:增删查改入门代码详解
- Apache Tomcat 7.0.109 Windows版下载指南
- Qt实现文件系统浏览器界面设计与功能开发
- ReactJS新手实验:搭建与运行教程
- 探索生成艺术:几个月创意Processing实验
- Django框架下Cisco IOx平台实战开发案例源码解析
- 在Linux环境下配置Java版VTK开发环境
- 29街网上城市公司网站系统v1.0:企业建站全面解决方案
- WordPress CMB2插件的Suggest字段类型使用教程
- TCP协议实现的Java桌面聊天客户端应用
- ANR-WatchDog: 检测Android应用无响应并报告异常