软件工程学习软件工程概论
Posted adventure.Li
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件工程学习软件工程概论相关的知识,希望对你有一定的参考价值。
一、软件工程基础
- 软件是什么?
(1)软件独立于硬件
早期软件是作为计算机硬件的零件来开发的,40年代中后期和50年代早期时,为了
利用计算机硬件
进行研究,使用针对专门的硬件的指令码
和汇编语言
编写程序,这就是软件的雏形。到60年代,硬件开始进入商业化,软件也得到发展,于是软件开始独立于硬件。
(2)软件是一个种工具
50年代:
科学计算
;
60年代:随着商业计算机普及,开始用于商业计算
和批量数据处理
;
70年代:复杂的应用软件,计算
和信息处理
(模拟现实的同时改变现实),核心逻辑是 将现实的复杂信息建模成(基于数学的)计算模型,然后利用超强计算能力和信息处理(存储,传输,共享)能力解决人们无法完成的任务。
(3)软件的核心是程序
软件由三部分组成:
程序
,机器指令的集合;文档
,描述程序的使用;数据
,程序运行时的信息。
编程时软件开发的核心活动,作为一个软件工程师首先应该能够很好地编程。
(4)软件开发远比编程复杂
随着软件的发展,软件规模和复杂度日益增长,用于解决实际问题的应用软件越来越多,当今的软件开发远不止编程。除编程之外还包括,
需求分析
、软件设计
、软件测试
、项目管理
等
(5)应用软件基于现实又高于现实
- 软件工程
(1)特性
- 具有
解决实际问题
的动机 - 应用科学指导工程活动
- 以成本效益比为基本条件
- 构建机器或事务
- 以服务人类为最终目的
(2)动机
软件工程需要解决的问题范围广泛,无行业和领域限制,需要客户和用户进行紧密合作沟通,因此 需求分析 是软件工程活动中最为重要的一环。
(3)软件工程是科学、实践性、工艺性并重的
科学知识指导:计算机科学,例如软件实体
(函数、方法、数据结构等),软件开发的理论、方法、技术、模型 。
实践方法和原则:配置管理、风险控制、需求管理办法,模块化、信息屏蔽、OO设计原则。
二、软件工程的发展
- 发展脉络
(1)基础环境的变化以及其对软件工程的推动
软件抽象实体
的发展(正确性基础):计算机科学需要从理论
上论证软件抽象实体以及其使用规则能够提高程序的正确性、清晰度、开发效率
。直接影响软件工程的基础构建能力。
虚拟计算机
的发展(硬件和系统软件(数据库、编译软件等)方面,实现基础):将程序员的精力从机器指令模式、性能、和效率等硬件相关细节解放出来,让其集中关注软件实体构建。
(2)现实问题的需要推动(目标)
软件工程的目标就是解决现实问题,当时代背景需要则推动其发展。
- 发展历程
以上是关于软件工程学习软件工程概论的主要内容,如果未能解决你的问题,请参考以下文章