软件工程概论知识总结

一、什么是软件

软件:一组对象或项目所形成的一个“配置”,由程序、文档和数据部分构成。

程序:可被计算机硬件理解并执行的一组指令,提供期望的功能和性能。

数据:程序能正常操纵信息的数据结构。

文档:与程序开发、维护和使用有关的图文材料。

二、软件所处的外部环境

软件工程概论知识总结


三、软件的四大特征

1. 复杂性:软件要解决的现实问题通常很复杂,数据、状态、逻辑关系的可能组合导致了软件本身的复杂性。软件无法以“制造”的方式被生产,只能采用手工开发方式,这是一种认为抽象化的智能活动,与人的水平密切相关,人类思维的不确定性导致了开发过程的复杂性。

2. 不可见性:尚未完成的软件是看不见的,无法像产品一样充分展现其结构,使得人们在沟通上面临极大的困难,难于精确地刻画和度量。

3. 易变性:软件所应用的环境由人群、法规、硬件设备、应用领域等因素汇集而成,而这些因素皆会频繁快速地变化。

4. 一致性:各子系统的接口必须协同一致,而随着时间和环境的演变,要维持这样的一致性通常十分困难。

四、软件的分类

系统软件:操作系统、编译器、数据库、集成开发环境

应用软件:商业软件、个人软件、工程和科学软件

开发方式上:商业软件、开源软件

存在形式上:嵌入式软件、单机软件、分布式软件;移动终端软件;基于Web的软件;服务形态的软件(SaaS)。

五、什么是软件工程

范围:软件开发过程;软件开发中应遵循的原则和管理技术:软件开发中所采用的技术和工具

目标:高质量;按时交付;控制成本;满足用户需求

软件开发的方法:结构化开发方法和面向对象的方法。

软件工程的过程:

管理和控制产品质量的关键;

由一系列活动与步骤组成:需求分析与设计、开发、验证与测试、演化与维护等;

定义了技术方法的采用、工程产品的产生、里程碑的建立、质量的保证和管理的变更;

将人员、技术、组织与管理有机地结合在 一起,实现了在规定时间和预算内开发高质量软件的目标。

软件质量:不取决于开发人员自身,通常与客户、用户、维护人员等提出的要求密切相关。

六、软件工程的知识和技术范畴


软件工程概论知识总结