软件工程实践.ppt
《软件工程实践.ppt》由会员分享,可在线阅读,更多相关《软件工程实践.ppt(29页珍藏版)》请在三一文库上搜索。
1、软件工程实践,软件学院 高海昌 ,2,内容,1. 概述 2. 软件过程和生命周期 3. 项目管理 4. 需求工程 5. 软件设计 6. 软件实现 7. 软件测试 8. 软件交付,3,软件开发过程,IEEE给过程下的定义:过程描述了针对一个给定目标的一系列操作步骤,操作步骤说明有哪些操作以及按照何种方式来执行操作。 软件开发过程应该明确定义以下元素: (1) 过程中所执行的活动及其顺序关系。 (2) 每一个活动的内容和步骤。 (3) 团队人员的工作和职责,4,软件开发过程,软件开发一共包括七个过程: 获取过程 供应过程 开发过程 操作过程 维护过程 管理过程 支持过程,5,软件开发过程模型,常见
2、的软件开发过程模型包括: 瀑布模型 快速原型模型 增量模型 迭代模型 螺旋模型 RUP (Rational Unified Process),6,瀑布模型,要求软件项目的开发严格按照软件生命周期的方式进行 特点: 分阶段 阶段间有因果关系 评审 允许反馈,7,瀑布模型,优点: 严格规范软件开发过程,克服了非结构化的编码和修改过程的缺点 强调文档的作用,要求每个阶段都要仔细验证 缺点: 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,中间提出的变更要求很难响应 早期的错误可能要等到开发后期的测试阶段才能发现,进
3、而带来严重的后果,8,快速原型模型,允许在需求分析阶段对软件的需求进行初步的分析和定义,9,快速原型模型,优点: 不需要需求预先完备定义 支持用户参与软件项目的开发过程 缺点: 需要多次迭代,无法预知次数,给项目管理带来困难 快速建立起来的系统结构加上连续的修改可能会导致产品质量低下,10,增量模型,与瀑布模型类似,但软件系统是被增量式地一块块开发的,11,增量模型,优点: 各模块可以并行开发 较好地适应需求的变化,用户可以不断地看到所开发软件的可运行中间版本 重要功能被首先交付,从而使其得到最多的测试 缺点: 容易退化为边做边改的方式,从而使软件过程的控制失去整体性,12,迭代模型,通过多次
4、逐步的迭代,建立软件系统,每次迭代都是一个相对独立的软件过程,13,迭代模型,优点: 能够较好地适应需求难以确定、不断变更的软件系统的开发 缺点: 迭代次数难以事先确定,增加了过程管理的复杂度,14,螺旋模型,结合了瀑布模型、快速原型模型和迭代模型的思想,并引入了风险分析活动。 每个循环迭代都包含4个阶段: 制定计划 风险分析 设计实施 用户反馈,15,螺旋模型,优点: 以风险驱动开发过程,强调可选方案和约束条件从而支持软件的重用 关注于早期错误的消除,将软件质量作为特殊目标融入产品开发之中 缺点: 要求许多客户接受和相信风险分析并做出相关反应是不容易的,往往适应于内部的大规模软件开发 需要软
5、件开发人员具备风险分析和评估的经验,否则将会带来更大的风险,16,RUP模型,RUP (Rational Unified Process)统一软件过程。 由 Ivar Jacobson的 The Objectory Approach 和 The Rational Approach 发展而来,是一个文档化的软件工程产品,所有RUP 的实施细节及方法导引均以Web文档的方式呈现。 RUP又是一套软件工程方法框架,各个组织可根据自身的实际情况,以及项目规模对RUP进行裁剪和修改,以制定出合乎需要的软件工程过程。,17,RUP模型,在RUP中,软件开发生生命周期根据时间和RUP的核心工作流划分为二维空
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 实践
链接地址:https://www.31doc.com/p-2612200.html