文章目录
目录
文章目录
前言
一、软件的定义及本质特征
1.1软件的定义
1.2 软件的本质特征
一致性
可变性
不可见性
二、软件工程发展历程及目前面临的主要挑战
2.1软件工程发展历程
2.2软件开发面临的挑战
客户不满意
项目过程失控
风险与成本问题
无力管理团队
三、软件工程的基本概念及组成要素:过程、方法、工具。
3.1软件工程的基本概念
3.2软件工程的基本要素
3.3软件开发活动
总结
前言
软件工程是一门研究用工程化方法构建和维护有效、实用和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用促进了经济和 会的发展,也提高了工作效率和生活效率 。
一、软件的定义及本质特征
1.1软件的定义
软件 = 程序 + 数据 + 文档
-
程序:计算机可以接受的一系列指令,运行时可以提供所要求的功能和性能。
-
数据:使得程序能够适当地操作信息的数据结构。
-
文档:描述程序的研制过程、方法和使用的图文资料。
1.2 软件的本质特征
软件具有复杂性、一致性、可变性、和不可见性等固有的内在特性,这是造成软件开发困难的根本原因
- 复杂性
-
一致性
- 软件不能独立存在,需要依附于一定的环境(如硬件、 络以及其他软件)
- 软件必须遵从人为的惯例并适应已有的技术和系统。
- 软件需要接口不同而改变,随时间推移而变化,而这些变化是不同人设计的结果。
-
可变性
- 人们总是认为软件是容易修改的,但忽视了修改所带来的副作用。
- 不断的修改最终导致软件的退化,从而结束其生命周期。
-
不可见性
- 软件是一种“看不见、摸不着”的逻辑实体,不具有空间的形体特征。
- 开发人员可以直接看到程序代码,但是源代码并不是软件本身。
- 软件是以机器代码的形式运行,但是开发人员无法看到源代码是如何执行的。
总之软件所具有的复杂性、一致性、可变性、不可见性等特性,使得软件开发过程变得难以控制,开发团队如同在焦油坑中挣扎的巨兽。
二、软件工程发展历程及目前面临的主要挑战
2.1软件工程发展历程
1968年,北大西洋公约组织(NATO)召开国际会议,提出“软件工程”概念和术语
- 史前时代
2.2软件开发面临的挑战
-
客户不满意
- 交付的许多功能不是客户需要的
- 交付的日期没有保障
- 客户使用时发现许多BUG
-
项目过程失控
- 客户需求变化频繁,无力应对
- 无法预见软件的交付质量
- 对流程盲目遵从,忽视客户业务价值
-
风险与成本问题
- 开发团队专注技术,忽视风险
- 无能力预测成本,导致预算超支
-
无力管理团队
- 无法评估开发人员能力及工作进度
- 困扰于如何提升团队的能力与效率
三、软件工程的基本概念及组成要素:过程、方法、工具。
3.1软件工程的基本概念
软件工程是 ① 将系统性的、规范化的、可定量的方法应用于软件的开发、运行和维护, 即工程化应用到软件上;② 对①中所述方法的研究
软件?程的目标 —— 创造“?够好”的软件
3.2软件工程的基本要素
3.3软件开发活动
总结
这一章主要讲解的是一些概念性和基础性的内容,例如软件的概念、特性,软件危机的主要表现,软件工程的概念等等。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!