软件工程整理

软件工程整理

ID:26141263

大小:672.00 KB

页数:11页

时间:2018-11-25

软件工程整理_第1页
软件工程整理_第2页
软件工程整理_第3页
软件工程整理_第4页
软件工程整理_第5页
资源描述:

《软件工程整理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第一章软件工程研究的主要内容:为了在有限的资金、资源和时间条件下开发满足客户要求的高质量软件,需要研究与软件开发和管理相关的模型、方法、技术等。在《计算机科学技术百科全书》中,对计算机软件作出如下定义:计算机软件指计算机系统中的程序及其文档。程序是计算任务的处理对象和处理规则的描述。任何以计算机为处理工具的任务都是计算任务。处理对象是数据或信息。处理规则一般指处理的动作和步骤。文档是为了便于了解程序所需的阐述性资料。软件工程的定义:⑴IEEE在软件工程术语汇编中的定义:①软件工程是将系统化的的方法用于软件的开发、运行和维护,即将工程化应用于软件;②在①中所述方法的研究 ⑵软件工程是应用计算机科

2、学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本为目的。其中,计算机科学、数学用于构造模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于计划、资源等管理。软件工程的框架:目标,过程和原则软件工程目标是指生产具有正确性、可用性、和开销合宜的产品。正确性指软件产品达到预期功能的程度。可用性指软件基本结构、实现及文档为用户可用的程度。开销合宜指软件开发、运行的整个开销满足用户要求的程度。软件工程原则包括围绕工程设计、工程支付和工程管理所提出的以下4条基本原则(1)选取适宜的开发模型(2)采用合适的设计方法(3)提供高质量的工程支撑(4)重视软

3、件工程的管理软件生存周期是指软件产品或软件系统从产生、投入使用到被淘汰的全过程。软件生存周期分为6个阶段:计算机系统工程、需求分析、设计、编码、测试、运行和维护软件过程是生产一个最终满足需求且达到工程目标的软件产品所需的步骤。软件过程是软件生存周期中的一系列相关的过程。过程是活动的集合,活动是任务的集合。软件过程有3层含义:一是个体含义,即指软件产品或系统在生存周期中的某一类活动的集合;二是整体含义,即指软件产品或系统在所有上述含义下的软件过程的总体;三是工程含义,即指解决软件过程的工程,应用软件工程的原则、方法来构造软件过程模型、并结合软件产品的具体要求进行实例化,以及在用户环境,并结合软件

4、产品的具体要求进行实例化,以及在用户环境下运作,以此进一步提高软件生产率,降低成本。软件过程模型也称软件开发模型,是软件开发全部过程、活动和任务的结构框架。典型的软件过程模型有:瀑布模型、演化模型(如增量模型、原型模型、螺旋模型)、喷泉模型、基于构件的开发模型和形式方法模型等。瀑布模型是1970年由W.Royce提出的,它给出了软件生存周期活动的固定顺序,上一阶段的活动完成后向下一阶段的活动过渡,最终得到所开发的软件产品。其特征是:接受上一阶段活动的结果作为本阶段活动的输入 依据上一阶段活动的结果实施本阶段应完成的活动对本阶段的活动进行评审将本阶段活动的结果作为输出,传递给下一阶段瀑布模型也逐

5、渐暴露出它的不足(1)不少软件的需求存在着不确定性,(2)如果发现不满足客户需求的问题,那么修改软件的代价是巨大的演化模型,是从构造初始的原型出发,逐步将其演化成最终软件产品的过程。演化模型适用于对软件需求缺乏准确认识的情况。典型的演化模型有:增量模型、原型模型、螺旋模型增量模型将软件的开发过程分成若干个日程时间交错的线性序列,每个线性序列产生软件的一个可发布的“增量”版本,后一个版本是对前一个版本的修改和补充,重复增量发布的过程,直至产生最终的完善产品。增量模型融合了瀑布模型的基本成分和演化模型的迭代特征,强调每一次增量都发布一个可运行的产品。特征:(1)适用于需求经常发生变化的软件开发(2

6、)在市场急需而开发人员和资金不能在设定的市场期限之前实现一个完善的产品,此时也适宜用增量模型进行开发(3)能有计划的管理技术风险原型方法的目的是定义软件的总体目标,标识需求,然后快速制定原型开发的计划,确定原型的目标和范围,采用快速设计的方式对其建模并构建原型根据原型使用的目的不同,可以分为:探索型、实验型、演化型原型使用策略:废弃策略、追加策略螺旋模型将原型实现的迭代特征与瀑布模型中控制的和系统化的方面结合起来,不仅体现了这两种模型的优点,而且还增加了风险分析其有四个方面的任务:制定计划、风险分析、工程实施、客户评估一种基于构件的开发模型包括两个部分:领域工程和应用系统工程领域工程的目的:构

7、建领域模型、领域基准体系结构和可复用构件库应用系统工程的目的:使用可复用构件组装应用系统基于构件的开发模型的作用(优点):提高软件生产率、提高软件质量、降低成本、提早上市时间敏捷(Agile)开发的4个价值观:(1)个人和交互高于过程和工具(2)可运行软件高于详尽的文档(3)与客户协作高于合同谈判(4)对变更及时做出反应高于遵循计划计算机辅助软件工程(computeraidedsofrwareen

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。