




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章软件过程模型ProcessModel 瀑布模型 waterfallmodel 快速原型模型 rapidprototypemodel 螺旋模型 spiralmodel 转换模型 transformationalmodel 构件集成模型 componentintegrationmodel 开发模式 Paradigm 开发模式又称为范型 范例或模式 Pattern 它定义了特定问题和应用的开发过程中将遵循的步骤 确定将用于表示问题和解的那些成分的类型 利用这些成分表示与问题解决有关的抽象 得到问题的结构 开发模式的选择影响到整个软件开发生存期 它支配了设计方法编码语言测试和检验技术的选择问题 瀑布模型 问题定义 可行性研究 需求分析 软件设计 编码 测试 维护 开发时期 定义时期 运行时期 问题定义和可行性研究 确定要开发软件系统的总目标给出功能 性能 可靠性以及接口等方面的要求完成该软件任务的可行性研究估计可利用的资源 计算机硬件 软件 人力等 成本 效益 开发进度制定出完成开发任务的实施计划 连同可行性研究报告 提交管理部门审查 需求分析 对待开发软件提出的需求进行分析并给出详细的定义编写软件需求说明书或系统功能说明书及初步的系统用户手册提交管理机构评审 设计 总体设计 如何解决问题 可以列出多种解决方案进行比较把各项需求转换成软件的体系结构 结构中每一组成部分都是意义明确的和某些需求相对应的模块详细设计 对每个模块要完成的工作进行更具体的描述 为源程序编写打下基础编写设计说明书 提交评审 编码 把软件设计转换成计算机可以识别并运行的程序代码 即写成以某一种特定程序设计语言表示的 源程序 写出的程序应当结构良好 清晰易读 且与设计相一致 测试 单元测试 查找各模块在功能和结构上存在的问题并加以纠正组装测试 将已测试过的模块按一定顺序组装起来有效性测试 按规定的各项需求 确定已开发的软件是否合格 能否交付用户使用 运行和维护 改正性维护运行中发现了软件中的错误需要修正适应性维护为了适应变化了的软件工作环境而做适当变更完善性维护为了增强软件的功能而需做变更 瀑布模型的特点 顺序性 依赖性 推迟程序的物理实现的观点 质量保证的观点 阶段文档与评审的要求 利于尽早发现错误 易于组织 易于管理缺点 需求变化后引起的代价将很高 不适合需求模糊的系统 结构分析设计过程 结构分析设计过程 本质上是功能分解 以实现功能的过程为中心 而用户的需求变化主要是针对功能的 功能变化往往引起结构变化较大 稳定性不好 系统有明确的边界定义 且系统结构依赖于系统边界的定义 不易扩充和修改 数据与操作分开处理 可能造成软构件对具体应用环境的依赖 可重用性 reusability 较差 结构化技术的缺点 快速原型模型 快速原型模型 特点快速开发工具循环低成本种类渐进型 演化型 抛弃型 快速原型法 Prototyping 适用于用户驱动的系统 即需求模糊或随时间变化的系统 抛弃原型法 throw awayprototype Brooks 1975 Doittwice 用于试验某些概念 试验完系统将无用处 演化原型法 evolutionaryprototype 原型系统不断被开发和被修正 最终它变为一个真正的系统 螺旋模型 thespiralmodel Boehm 1988 原型法 原型的好处从实践中学习 Learningbydoing 改善的用户参与使部分已知的需求清晰化展示描述的一致性和完整性可能可以减少文档特征约束 利用工具构造原型可以将某些特性落到实处 而非在纸上写的那样容易失误 试验是否能产生期待的结果 原型法 原型法的缺点用户有时误解了原型的角色 例如他们可能误解原形应该和真实系统一样可靠缺少控制 由于用户可能不断提出新要求 因而原型迭代的周期很难控制额外的花费 研究结果表明构造一个原型可能需要10 额外花费运行效率可能会受影响原型法要求开发者与用户密切接触 有时这是不可能的 例如外包软件 构造原型的对象 人机接口系统的部分功能 何时引入原型系统 支持客户销售人员通过电话回答有关客户询问汽车保险价格的系统设计用户对话界面时保险公司考虑实施一个基于MSAccess的电话销售系统 他们不知道Access是否能够开发出相应界面的系统并具备足够快的相应时间 方案设计阶段 螺旋模型 螺旋模型 特点瀑布模型 快速原型 风险分析迭代过程一个螺旋式周期确定目标 选择方案 选定完成目标的策略风险角度分析该策略启动一个开发阶段评价前一步的结果 计划下一轮的工作 转换模型 转换模型 特点形式化软件开发方法形式化需求规格说明变换技术程序自动生成技术确保实现的正确性 构件集成模型 构件集成模型 特点面向对象基于构件库融合螺旋模型特征支持软件开发的迭代方法软件重用 基于构件的软件开发 CBSD CBSD Component basedSoftwareDevelopment 的兴起主要是源于如下四个不同的背景 研究方面 现代软件工程思想 特别是对复用技术的强调产业方面 支持用构件建造GUI 数据库和应用的其他部件的一些理论上质朴但实际可用的技术的成功政治方面 某些主流互操作技术 如CORBA COM和EJB的开发者的推动在软件界 对象技术的广泛使用 提供了建造和使用构件的概念基础和实用工具 基于构件的软件开发 CBSD CBSD提供了一种自底向上的 基于预先定制包装好的类属元素 构件 来构造应用系统的途径 当前讨论的重点主要局限于基于COM CORBA和EJB等的二进制构件但是 应该涉及整个软件生存周期 从软件开发的整体角度来看 没有理由仅仅从这个局限的角度来看待构件 RUP 用例驱动迭代和增量的过程五个活动 需求 分析 设计 实现和测试四个阶段 杭州 上海 Message Sendbymethod 对象Object Object 数据Attribute Attributes location employee 操作Method Methods send sell 注意 Object内部的attributes不允许外部用户直接改动 只有当它提供了相应的服务method时 用户才能通过发送message来提请它执行 我想把邮局搬到我家门口 多加几个邮递员 24小时都开门 对不起 本邮局不提供此类服务 唉 那就先送束花吧 Post office Send request payment 面向对象方法学 OOM 特点 尽可能模拟人类习惯的思维方式 即问题域与求解域在结构上尽可能一致OOM以数据或信息为主线 把数据和处理结合构成统一体 对象 面向对象思想的起源 维特跟斯坦是本世纪乃至人类哲学史上最伟大的哲学家之一 他生前只于1922年出版了一本著作 逻辑哲学论 TractatusLogico Philosophicus 在该书中 他阐述了一种世界观 或者说一种认识世界的观点 这种观点 在六七十年后的今天 终于由一种哲学思想沉淀到技术的层面上来 成为计算机业界的宠儿 这就是 OO Object Oriented 面向对象 面向对象思想的起源 维特根斯坦在 逻辑哲学论 一书中提出了如下思想 世界可以分解为事实 Theworlddividesintofacts 事实是由原子事实 atomicfacts 组成的 一个原子事实是多个对象 objects 的组合 对象是简单的 基本的 对象形成了世界的基础 OOM的四要素 对象 对象是面向对象开发模式的基本成份 每个对象可用它本身的一组属性和它可以执行的一组操作来定义 属性一般只能通过执行对象的操作来改变 操作又称为方法或服务 它描述了对象执行的功能 OOM的四要素 类 类是一组具有相同数据结构和相同操作的对象的集合类定义可以视为一个具有类似特性与共同行为的对象的模板 用来产生对象对象是类的实例 Instance 对象的状态包含在实例的属性中 继承 inheritance 类可分层 下层子类与上层父类有类似特征 称为继承 OOM的四要素 继承 世界的相似性与多样性 继承是使用已存在的定义做为基础建立新定义的技术新类的定义可以是既存类所声明的数据和新类所增加的声明的组合 类的继承层次 OOM的四要素 消息 合作之道 消息 message 对象间只能通过发送消息进行联系 外界不能处理对象的内部数据 只能通过消息请求它进行处理 如果它提供相应消息的话 消息是一个对象与另一个对象的通信单元 是要求某个对象执行类中定义的某个操作的规格说明 发送给一个对象的消息定义了一个方法名和一个参数表 可能是空的 并指定某一个对象 OOM Object OrientedMethod Object Class Inheritance Communicationwithmessages 1 传统方法 面向过程设计 数据与操作分离 不易理解OOM 以object为核心 强调对现实概念的模拟2 传统方法结构依赖于功能 不稳定OOM 以object模拟实体 需求变化不会引起结构的整体变化3 传统方法 通过建立标准函数库来重用软构件 难以适应不同场合的不同需要OOM 一个class所有的instances都可重用它的代码 并且可以修改 扩充而不影响其父类的使用4 传统方法 可维护性是最令人头痛的问题OOM Class独立性强 稳定性好 容易理解 容易测试 调试 比较 OOM与传统方法 从面向对象分析 到面向对象设计 再到面向对象程序设计语言是一种与表示法十分一致的策略 UML产生与发展 面向对象的分析与设计 OOA D 方法的发展在80年代末至90年代中出现了一个高潮 UML UnifiedMoedlingLanguage 是这个高潮的产物 它不仅统一了Booch Rumbaugh和Jacobson的表示方法 而且对其作了进一步的发展 并最终统一为大众所接受的标准建模语言 UML 软件体系结构建模 UML将软件的体系结构分解为五个不同的侧面 称为视图 view 分别是 用例视图 Usecaseview 设计视图 designview 进程视图 processview 实现视图 implementationview 分布视图 deploymentview 设计视图和进程视图
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年厦门第一中学招聘心理教师笔试真题
- 2024年泸州市招聘中小学教师笔试真题
- 课堂纪律管理提升策略计划
- 2024年北京市杂技学校招聘笔试真题
- 职业生涯发展对财务的影响计划
- 保安工作全面提升计划
- 开展社团比赛与评比活动方案计划
- 2025届甘肃省嘉峪关市名校数学七下期末监测试题含解析
- 内蒙古鄂尔多斯市名校2025届数学八下期末学业水平测试试题含解析
- 数据处理工具及技巧试题及答案
- 受处分以来的思想工作生活情况【4篇】
- 课件:第四章 社会工作项目的执行(《社会工作项目策划与评估》课程)
- 冷库施工组织设计施工方案
- 登杆作业课件共
- 吸痰技能操作及评分标准(评分表)
- 尼可地尔调研
- 发酵法生物制氢技术课件
- 机械制造技术基础(第7章完成)课件
- 主动脉夹层护理查房-PPT课件
- 2022年江苏省卫生系统事业单位考试(护理学专业知识)参考题库汇总(含答案)
- 危急值放射科ppt课件
评论
0/150
提交评论