软件工程概念.ppt

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

;提示:设计与建模要点;第一章软件工程概念;1.1软件的定义与分类;软件的特点;软件的开发至今尚未完全摆脱手工艺的开发方式

软件本身是复杂的

实际问题的复杂性

程序逻辑结构的复杂性

软件成本相当昂贵

相当多的软件工作涉及到社会因素;软件的分类;程序库系统

支持需求分析、设计、实现、测试和支持管理的软件

应用软件

商业数据处理软件

工程与科学计算软件

计算机辅助设计/制造软件

智能产品嵌入软件

事务管理、办公自动化软件

计算机辅助教学软件

;按软件规模进行划分:

类别参加人员数研制期限源程序行数

微型 1 1~4周0.5k

小型1 1~6月1k~2k

中型2~5 1~2年5k~50k

大型5~20 2~3年50k~100k

甚大型100~10004~5年1M(=1000k)

极大型2000~50005~10年1M~10M ;按软件工作方式划分:

实时处理软件

分时软件

交互式软件

批处理软件

按软件服务对象的范围划分:

项目软件

产品软件;按使用的频度进行划分:

一次使用

频繁使用

按软件失效的影响进行划分:

高可靠性软件

一般可靠性软件;1.2软件发展阶段; “软件作坊”基本上沿用了软件发展早期所形成的个体化的开发方式,软件的开发与维护费用以惊人的速度增加。许多软件产品根本不能维护,最终导致出现了严重的“软件危机”。

软件工程阶段—70年代以后

软件的开发以工程化的思想为指导,用工程化的原则、方法和标准来开发和维护软件。

软件工程概念的出现源自软件危机。

软件危机的主要特征

软件价格在整个项目投入中的比例不断升高;;软件开发成本严重超标;

软件开发周期大大超过规定日期;

软件质量难于保证;

软件修改、维护困难;

失败的根本原因在于:开发人员写出的东西达不到用户要求(人的问题、技术问题)

为了解决软件危机,人们借鉴其他领域的经验和知识,从而认识到“摆脱软件危机的出路在于软件开发的标准化和工程化”,出现了“软件工程”的概念。;1968年德国人Bauer在北大西洋公约组织会议上的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。

1983年IEEE的软件工程定义:软件工程是开发,运行,维护和修复软件的系统方法。

1993年IEEE的一个更加综合的定义:将系统化的,规范的,可度量的方法应用于软件的开发,运行和维护的过程,即将工程化应用于软件中。;软件工程框架;软件工程框架给出了软件工程三个主要方面。

软件工程目标—包括可用性、正确性和合算性,规定了软件工程实践的结果(即软件)应具有的基本性质;

软件工程过程—包含的基本活动有需求、分析与设计、实现、确认与测试、维护与支持;

软件工程的四条原则--采用适宜的开发模型,使用恰当的开发方法,提供高质量的工程支持,实施有效的工程管理,从四个方面指导每一项工程的活动,以实现软件工程目标。;软件工程的知识结构;ISO9000定义:软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。

从软件开发的观点看,它就是使用适当的资源(包括人员、硬软件工具、时间等),为开发软件进行的一组开发活动,在过程结束时将输入(用户要求)转化为输出(软件产品)。;软件工程过程定义了:方法使用的顺序、要求交付的文档资料、为保证质量和适应变化所需要的管理、软件开发各个阶段完成的里程碑。

软件工程过程包含四种基本的过程活动:

plan:软件规格说明

do:软件开发

check:软件确认

action:软件演进;软件生存周期包含三个阶段:软件定义、软件开发及软件运行维护。

软件生存周期模型是软件工程思想的具体化,是跨越软件生存周期的系统开发、运行、维护所实施的全部活动和任务的过程框架。

常用的软件生存周期模型有瀑布模型,演化模型,螺旋模型,增量模型,喷泉模型,快速应用开发(RAD)模型。;瀑布模型;;演化模型;;螺旋模型;决定目标、

方案和限制;增量模型;;;喷泉模型;;变换模型;;基于第四代技术的模型; 转换为程序代码。这大大减少了分析、设计、编码和测试的时间。

以4GL为核心的软件开发技术成为第四代技术(4GT),采用4GT的软件开发模型如图。;快速应用开发(

文档评论(0)

151****9459 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档