阅读笔记9.28

第一章 软件的本质
软件的定义
软件:(1)指令的集合(计算机程序),通过执行这些指令可以满足预期的特性,功能和性能需求;(2)数据结构,使得数据可以合理利用信息;(3)软件描述信息,它以硬拷贝和虚拟形式存在,用来描述程序的操作和使用。

软件应用领域
系统软件 整套服务用于其他程序的程序。
某些系统软件(例如编译器、编辑器、文件管理软件)处理复杂但确定地信息结构,另一些系统应用程序(例如操作系统构建,驱动程序,网络软件、远程通信处理器》主要处理的是不确定的数据。

工程/科学软件 解决特定业务需要的独立应用程序。
这类应用软件处理商务或技术数据,以协助业务操作或协助做出管理或技术决策。

嵌入式软件 嵌入式软件存在于某个产品或者系统中,可实现和控制面向最终用户和系统本身的特性和功能。
嵌入式软件可以执行有限的和内部的功能(例如微波炉的按键控制),或者提供重要的功能和控制能力(例如汽车中的燃油控制、仪表盘显示、刹车系统等汽车电子功能)。

产品线软件 为多个不同用户的使用提供特定功能。
产品线软件关注有限的及内部的市场(例如库存控制产品)或者大众消费品市场。

Web/移动App 以网络为中心,
其概念覆盖了宽泛的应用软件产品,包括基于浏览器的App和安装在移动设备上的软件。*

人工智能软件 利用非数值算法解决计算和直接分析无法解决的复杂问题。
这个领域的应用程序包括机器人、专家系统、模式识别(图像和语音)、人工神经网络、定理证明和博弈等。

遗留软件
定义:在几十年前开发,不断被修改以满足商业需要和计算平台变化的软件系统。
特点:生命周期长,业务关键性,质量差。

第二章 软件工程
软件工程的定义
定义:(1)将系统化的,规范化的,可量化的方法应用于软件的开发、运行和维护、即将工程化方法应用于软件;(2)对以上方法的研究。

软件工程的层次
自顶向下:工具、方法、过程、质量关注点。
(1)支持软件工程的根基在于质量关注点;
(2)软件工程的基础是过程层;

软件过程将各个技术层次结合在一起,使得合理、及时地开发计算机软件成为可能。过程定义了一个框架有效实施软件工程技术。软件过程构成了软件项目管理控制的基础。建立了工作环境以便于应用技术方法、提交工作产品(模型、文档、数据、报告、表格等)

(3)软件工程的方法为构建软件提供技术上的解决方法;

方法覆盖面很广,包括沟通、需求分析、设计模型、程序构造、测试和技术支持

(4)软件工程工具为过程和方法提供自动化或半自动化的支持。

工具可以集成起来,使得一个工具产生地信息可被另外一个工具使用,这样就建立了软件开发地支撑系统,称为计算机辅助软件工程

软件过程的定义
软件过程是工作产品构建时所执行的一系列活动、动作和任务的集合。

活动主要实现宽泛的目标
动作包含了主要工作产品生产过程中的一系列任务
任务关注了小而明确的目标

过程框架
过程框架定义了若干个框架活动,为实现完整的软件工程过程建立了基础。

沟通
策划
建模
构建
部署
普通性活动
软件项目跟踪和控制、风险管理、软件质量保证、技术评审、测量、软件配置管理、可复用管理、工作产品的准备和生产。

软件开发神话
关于软件开发过程中的一些被人们盲目相信的说法,它实际上误导了管理者和从业人员对软件开发的态度。

posted @ 2021-09-28 19:28  王昊宁  阅读(22)  评论(0编辑  收藏  举报