首 页 - ┆ 小小说社会科学搜榜改进建议哲学宗教政治法律文化科教语言文字医学管理资源艺术资料数理化天文地球专业技术教育资源建筑房地产
当前位置:e书联盟 > 建筑房地产 > 建筑房地产ppt
软件架构设计教程.ppt
运行环境:Win9X/Win2000/WinXP/Win2003/
建筑语言:简体中文
建筑类型:国产软件 - 建筑房地产ppt
授权方式:共享版
建筑大小:1.39 MB
推荐星级:
更新时间:2019-12-30 18:03:19
联系方式:暂无联系方式
官方主页:Home Page
解压密码:点击这里
  • 好的评价 此建筑真真棒!就请您
      100%(1)
  • 差的评价 此建筑真差劲!就请您
      0%(0)

软件架构设计教程.ppt介绍

本章要点 工程的概念 软件工程的发展  软件工程分析 三种过程模型 工程化思考 工程是什么? 工程简而言之就是多人参与并有计划、有步骤地完成一项任务的活动 工程强调 目的 计划 步骤 软件发展与软件工程起源 软件的发展四个阶段: 1950年前后到1960年前后,程序设计阶段; 1960年前后到1970年前后,软件系统阶段; 1970年前后到1980年前后互联网络兴起,软件工程阶段; 1980年前后到现在,分布式软件工程阶段; 1968年,北大西洋公约组织的计算机科学家召开国际会议,第一次提出软件危机的概念,产生了应对软件危机的对策---软件工程。  软件工程与建筑工程的对比 工程策略 任何工程都有如下的策略: 分而治之 复用 折衷优化 检验并保证质量 软件工程也会充分利用这些策略 分而治之 把复杂的问题分解为小的问题并一一解决 分而治之图示 复用 利用现有的组件来构筑软件的一部分功能 组件技术有:CORBA、EJB、COM 软件复用图示: 软件开发的发展与变化   软件技术的发展带来了一些变化: 1 用户对软件要求的变化:软件规模在扩大;对软件的质量要求在提高; 2 软件技术本身的变化:新的理念、新的方法和新的工具 3 软件开发队伍的变化:从单人开发、小组开发,到大规模团队开发;从稳定、相对稳定到全员流动  软件开发的发展与变化   应对这些变化的是: 1 市场化:软件开发由个人爱好行为转变为企业行为,需要大量的投资、大量的人力,并且要按照市场规律来运作 2 知本化:要求技术的积累、模块的积累和成果的积累; 3 开发过程的规范化:来应对需求多变,人员流动 4 标准化:能力成熟度,质量控制  软件工程的目标 软件工程的目标是提高软件的质量与生产率,最终实现合格的软件。  质量是软件需求方最关心的问题。 生产率是软件供应方最关心的问题。  软件工程的四项基本原则  选取适宜开发范型              采用合适的设计方法  提供高质量的工程支持         重视开发过程的管理  软件工程准则 七条基本准则 1) 生命周期计划; 2) 阶段评审; 3) 变更控制; 4) 改进程序设计技术; 5) 控制人员规模; 6) 定义评审;  7) 不断改进软件工程; 软件工程的要素  方法:软件工程方法为软件开发提供了“如何做”的技术,是完成软件工程项目的技术手段; 工具:软件工具是在开发软件的活动中智力和体力的扩展和延伸,为软件工程方法提供了自动的或半自动的软件支撑环境;  过程:软件工程的过程则是将软件工程的方法和工具综合起来以达到合理、及时地进行计算机软件开发的目的。  软件工程的组成 人员管理 项目管理 过程管理 瀑布模型 瀑布模型将软件生命周期的各项活动顺序进行,形如瀑布流水,最终得到软件产品             是最早的软件工程模型,是其他所有现代模型的基础  瀑布模型  continue 阶段任务、结果及人员    瀑布模型特征  从上一项活动接收该项活动的工作对象,作为输入;  利用这一输入实施该项活动应完成的内容; 给出该项活动的工作成果,作为输出传给下一项活动;  对该项活动实施的工作进行评审,若其工作得到确认,则继续下一项活动,否则返回前项,甚至更前项的活动进行返工。  瀑布模型各个阶段概述 可行性分析:做还是不做 需求分析: 都有什么功能 概要设计:供有多少子功能 详细设计:子功能怎么实现 编码:子功能实现了吗 测试:功能完备吗 部署:需要多少设备和软件的支持 维护:软件运行的正常吗 可行性分析 可行性分析因素 经济 技术 社会环境 人才   需求分析   概要设计 提供多少子功能 面向对象分析(OOA) 详细设计 子功能如何实现 面向对象设计(OOD)   编码 子功能是否实现? 程序员严格按照规范编码; 测试 单元测试 系统测试 用户测试 部署 部署要求 增强自动化程度,用ant等工具 培训最终用户 要有详细计划 记录详细的过程数据 及时反馈软件兼容性缺陷  维护 一般维护分三类: 纠错性维护 改正软件漏洞、发布补丁程序 适应性维护 使得软件在新的硬件、操作系统、编译器和解释器下运行 完善性维护 增加新功能、更改原有的设计等 影响维护成本的因素 非技术因素  需求的复杂性 开发人员的岗位稳定性 软件的生命期 外部环境的变化,例如财政政策影响财务软件 技术因素  软件运行环境 编程语言 编程风格  测试工作的有效性 文档的质量  瀑布模型的优点  通过设置里程碑,明确每阶段的任务与目标 可为每阶段制定开发计划,进行成本预算,组织开发力量 通过阶段评审,将开发过程纳入正确轨道 严格的计划性保证软件产品的按时交付  瀑布模型的缺点  缺乏灵活性,不能适应用户需求的改变 开始阶段的小错误被逐级放大,可能导致软件产品报废 返回上一级的开发需要十分高昂的代价 随着软件规模和复杂性的增加,软件产品成功的机率大幅下降  演化模型 迭代模型 迭代模型 continue   迭代模型 continue 迭代的定义:迭代包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必需的所有其他外围元素。 生命周期是基于对一个系统进行连续的扩充和精化,需要经历若干个开发周期,每个周期都需要经历分析、设计、实现和测试阶段。每个开发周期只针对比较小的一部分需求 在某种程度上,开发迭代是一次完整地经过所有工作流程的过程:(至少包括)需求工作流程、分析设计工作流程、实施工作流程和测试工作流程; 类似小型的瀑布式项目。RUP认为,所有的阶段(需求及其它)都可以细分为迭代。每一次的迭代都会产生一个可以发布的产品,这个产品是最终产品的一个子集。 迭代的优点 降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个开发有误的迭代的花费。   降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。   加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率。   由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代过程这种模式使适应需求的变化会更容易些。 迭代模型和瀑布模型的差别 最大的差别在于风险的暴露时间上。 任何项目都会涉及到一定的风险。如果能在生命周期中尽早确保避免了风险,那么计划自然会更趋精确。 有许多风险直到已准备集成系统时才被发现。不管开发团队经验如何,都绝不可能预知所有的风险。 迭代模型和瀑布模型的差别   统一软件过程RUP模型  RUP中的软件生命周期 初始阶段(Inception):目标是为系统建立商业案例并确定项目的边界。  细化阶段(Elaboration):目标是分析问题领域,建立健全的体系结构基础,编制项目计划,淘汰项目中最高风险的元素。  构造阶段(Construction):所有剩余的构件和应用程序功能被开发并集成为产品,所有的功能被详细测试。  交付阶段(Transition):重点是确保软件对最终用户是可用的。        每个阶段结束于一个主要的里程碑(Major Milestones);每个阶段本质上是两个里程碑之间的时间跨度。在每个阶段的结尾执行一次评估以确定这个阶段的目标是否已经满足。如果评估结果令人满意的话,可以允许项目进入下一个阶段。   RUP模

软件架构设计教程.ppt

下载此电子书资料需要扣除0点,

电子书评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

下载说明

* 即日起,本站所有电子书免费、无限量下载下载,去掉了每日50个下载的限制
* 本站尽量竭尽努力将电子书《软件架构设计教程.ppt》提供的版本是完整的,全集下载
* 本站站内提供的所有电子书、E书均是由网上搜集,若侵犯了你的版权利益,敬请来信通知我们!
Copyright © 2005-2020 www.book118.com. All Rights Reserved