【软件工程学习】软件工程概论

阳光穿透心脏的1/2处 2022-10-12 04:23 384阅读 0赞

一、软件工程基础

  1. 软件是什么?

(1)软件独立于硬件

早期软件是作为计算机硬件的零件来开发的,40年代中后期和50年代早期时,为了利用计算机硬件进行研究,使用针对专门的硬件的指令码汇编语言编写程序,这就是软件的雏形。到60年代,硬件开始进入商业化,软件也得到发展,于是软件开始独立于硬件。

(2)软件是一个种工具

50年代:科学计算
60年代:随着商业计算机普及,开始用于商业计算批量数据处理
70年代:复杂的应用软件,计算信息处理(模拟现实的同时改变现实),核心逻辑是 将现实的复杂信息建模成(基于数学的)计算模型,然后利用超强计算能力和信息处理(存储,传输,共享)能力解决人们无法完成的任务。

(3)软件的核心是程序

软件由三部分组成:程序,机器指令的集合;文档,描述程序的使用;数据,程序运行时的信息。
编程时软件开发的核心活动,作为一个软件工程师首先应该能够很好地编程。

(4)软件开发远比编程复杂

随着软件的发展,软件规模和复杂度日益增长,用于解决实际问题的应用软件越来越多,当今的软件开发远不止编程。除编程之外还包括,需求分析软件设计软件测试项目管理

(5)应用软件基于现实又高于现实

  1. 软件工程

(1)特性

  • 具有解决实际问题的动机
  • 应用科学指导工程活动
  • 以成本效益比为基本条件
  • 构建机器或事务
  • 以服务人类为最终目的

(2)动机

软件工程需要解决的问题范围广泛,无行业和领域限制,需要客户和用户进行紧密合作沟通,因此 需求分析 是软件工程活动中最为重要的一环。

(3)软件工程是科学、实践性、工艺性并重的

科学知识指导:计算机科学,例如软件实体(函数、方法、数据结构等),软件开发的理论、方法、技术、模型 。

实践方法和原则:配置管理、风险控制、需求管理办法,模块化、信息屏蔽、OO设计原则。

二、软件工程的发展

  1. 发展脉络
    (1)基础环境的变化以及其对软件工程的推动

软件抽象实体的发展(正确性基础):计算机科学需要从理论上论证软件抽象实体以及其使用规则能够提高程序的正确性、清晰度、开发效率。直接影响软件工程的基础构建能力。
虚拟计算机的发展(硬件和系统软件(数据库、编译软件等)方面,实现基础):将程序员的精力从机器指令模式、性能、和效率等硬件相关细节解放出来,让其集中关注软件实体构建。

(2)现实问题的需要推动(目标)

软件工程的目标就是解决现实问题,当时代背景需要则推动其发展。

  1. 发展历程
    在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,384人围观)

还没有评论,来说两句吧...

相关阅读

    相关 软件工程概论

    ![Center][]   一、软件 1.概念:软件时计算机系统中与硬件相互依存的另一部分,它包括程序,数据及其相关文档的完整集合。 2.软件的特点: (1)软件是一

    相关 软件工程软件工程视频总结

    前言         软工的五十集视频看完了,给我的感触是需要记得,需要背的东西太多了。我做了相应的笔记,但是我没打算再去仔细地翻看,当然如果我可以看一遍视频就记住