软件工程概述

1、软件工程发展史

1950's~1960's中,规模较小的程序,个体化 的软件开发,只有程序清单

1960's中~1970'中,软件作坊",广泛使用 产品软件,软件危机出现

1970's~1980's,微处理器的出现并广泛应 用,如分布式系统、嵌入智能

1980's~至今,网络迅速普及,强大的桌面系统、 面向对象技术、专家 系统、人工智能、神经网络、并行计算、网格计算、虚拟现实

2、软件危机

软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

软件危机主要表现,如:对软件开发成本和进度估计不准确、软件产品的质量靠不住、用户对"已完成的"软件系统不满意、软件开发速度跟不上、软件不可维护以及没有适当的文档资料等。

3、软件工程

NATO:软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善的工程原理。

Boehm:运用现代科学技术知识来设计并构造 计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。

IEEE定义:软件工程是(1)把系统化的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;(2)研究(1)中提到的途径。

综上,软件工程采用工程的概念、原理、技术和方法来开发与维护软件,把管理技术和最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

4、软件生命周期

软件定义、软件开发和软件维护三个时期。

(1)软件定义时期,确定软件开发必须完成的总目标和可行性;导出实现工程目标应该采用的策略及系统必须完成的功能;估计完成该项工程需要的资源和成本,并且制定工程进度表。

软件定义时期分成三个阶段:问题定义、可行性研究和需求分析。

(2)开发时期,具体设计和实现在前一个时期定义的软件,通常包括四个阶段:总体设计、详细设计、编码、测试。

(3)维护时期,使软件持久地满足用户的需要。主要包括:改正错误;改进软件适应新的环境或满足用户的新需要。

相关推荐
千维百策6662 天前
AI 软件开发中的人与智能体:软件工程循环、人在环路中与框架工程
大数据·人工智能·软件工程
老郑聊AI业财智造2 天前
TOGAF、DDD与微服务:软件架构的多维透视
spring boot·spring cloud·微服务·金融·架构·软件工程·制造
m0_547486662 天前
《软件工程与实践》 全套PPT课件2026
软件工程
梁辰兴3 天前
软件工程:类和实例
软件工程·实例··类的定义·梁辰兴·类的组成·类的类型
海天鹰3 天前
扩容U盘恢复
软件工程
梁辰兴5 天前
软件工程:数据结构设计
数据库·软件工程·设计原则·设计方法·梁辰兴·数据库结构设计·数据库结构类型
梁辰兴5 天前
软件工程:详细设计规格说明
软件工程·梁辰兴·文档定位·内容体系·详细设计规格说明·核心要素·评审机制
XDevelop AI智能应用软件开发5 天前
AI演进下的“第五次软件危机”与软件工程重塑
人工智能·软件工程·ai编程·软件危机
梁辰兴5 天前
软件工程:详细设计规格说明评审
软件工程·梁辰兴·评审内容·评审方法·评审意义·评审流程·详细设计规格说明评审
嘟哩DuliDuli5 天前
AI 账单变高的技术原因:重复上下文和用量归属
android·人工智能·安全·ai·软件工程