《软件工程》知识点复习总结

您所在的位置:网站首页 软件和软件工程的概念 《软件工程》知识点复习总结

《软件工程》知识点复习总结

2024-07-01 05:49| 来源: 网络整理| 查看: 265

目录 一、软件及软件工程 1. 软件的本质 2. 软件危机 3. 软件工程定义 4. 软件生命周期 二、软件过程及过程模型 1. 软件过程 2. 软件过程模型 3. 通用过程模型 4. 过程流 5. 过程模型 5.1 瀑布模型 5.2 原型开发模型(快速原型) 5.3 增量模型 5.4 螺旋模型 5.5 专用过程模型 5.6 形式化方法模型 三、敏捷开发 敏捷开发 敏捷原则 敏捷过程 极限编程XP Scrum 四、软件需求 软件需求 需求工程 需求获取技术 五、需求建模 需求建模概述 基于场景的建模 基于数据流的建模 基于数据的建模 面向状态的建模方法 六、软件设计 七、软件测试 八、软件项目管理

一、软件及软件工程 1. 软件的本质

计算机软件 指计算机系统中的程序、数据及其相关文档

三要素:

程序:按照特定顺序组织的计算机数据和指令的集合。

数据:使程序能正常执行的数据结构

文档:为了便于理解程序所需的与开发、维护和使用有关的资料

软件 = 程序 + 文档 + 数据

软件的特点

软件是设计开发的,而不是传统意义上生产制造的。

软件不会“磨损”,但会退化。

大多数软件还是用户定制的。

计算机软件可分为七个大类:

系统软件 应用软件 工程/科学软件 嵌入式软件 人工智能软件 产品线软件 WebApp 移动App

另一种分类

系统软件: 位于计算机系统中最靠近硬件的一层,其它软件一般都通过系统软件发挥作用,它与具体的应用领域无关。如操作系统、编译程序等。

支持软件: 支持软件的开发和维护的软件。如数据库管理系统、网络软件、软件开发环境等。

应用软件: 特定应用领域专用的软件。如实时软件、嵌入式软件、科学和工程计算软件、事务处理软件、人工智能软件等。

2. 软件危机

软件危机(Software Crisis):计算机软件的开发和维护过程所遇到的一系列严重问题。

软件危机的表现:

对软件开发成本和进度的估算很不准确,甚至严重拖期和超出预算; 无法满足用户需求,导致用户很不满意; 质量很不可靠,经常失效; 难以更改、调试和增强; 没有适当的文档; 软件成本比重上升; 软件开发生产率跟不上计算机应用迅速深入的趋势。

软件为什么要更新和迭代?

软件必须适应新的计算环境或技术的需要。 必须增强软件来实现新的业务需求。 软件必须扩展到与其他更现代的系统或数据库进行互操作。 必须重新构建软件,使其在网络环境中可行。

为什么会产生软件危机?

与软件本身的特点有关 (难于维护, 逻辑复杂) 与软件开发与维护的方法不正确有关 3. 软件工程定义

1993年IEEE进一步给出了一个更全面更具体的定义:

软件工程是: (1)将系统化的、规范化、可量化的方法应用于软件的开发、运行和维护,即将工程化方法应用于软件。 (2)在(1)中所述方法的研究

《计算机科学技术百科全书》中的定义:

软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等。

软件工程的内容

软件工程是一种层次化的技术。任何工程方法必须构建在质量承诺的基础上。 软件工程的基础是过程。软件过程将各个技术层次结合在一起,使得合理及时地开发计算机软件成为可能。 软件工程方法为构建软件提供技术上的解决方法。 软件工程工具为过程和方法提供自动化或半自动化的支持。 在这里插入图片描述

软件工具是指能支持软件生存周期中某一阶段(如系统定义、需求分析、设计、编码、测试或维护等)的需要而使用的软件工具。

在这里插入图片描述

4. 软件生命周期

软件生命周期, 又称为软件生存周期,是软件从产生直到报废的整个时期。

在这里插入图片描述

思考

什么是计算机软件?软件的特点是什么? 何谓“软件危机”? 主要有哪些软件工程方法?软件工程有哪三个要素? 软件生命周期主要包含哪几个阶段? 二、软件过程及过程模型 1. 软件过程

(教材)一个为创建高质量软件所需要完成的活动、动作和任务的框架 。

(百度百科)一个为建造高质量软件所需完成的任务的框架,即形成软件产品的一系列步骤,包括中间产品、资源、角色及过程中采取的方法、工具等范畴。

通用活动

沟通:包含了与客户(和其他共利益者)之间大量的交流和协作,还包括需求获取以及其他相关活动。 策划:指为后续的软件工程工作制定计划。它描述了需要执行的技术任务、可能的风险、资源需求、工作产品和工作进度计划。 建模:包括创建模型和设计两方面。创建模型有助于客户和开发人员更好地理解软件需求;设计可以实现需求。 构建:包括编码(手写或自动生成)和测试。 部署:软件(全部或者完成的部分)交付到用户,用户对其进行评测并给出反馈意见。 2. 软件过程模型

也称 软件开发模型 或 软件生存周期模型

是软件生存周期中一系列有序的软件开发活动的流程,是软件开发全部活动的结构框架。

对一个软件的开发无论其大小,都需要选择一个合适的软件过程模型,主要根据软件的类型、规模,开发方法、开发环境等多种因素来确定。

3. 通用过程模型



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3