




已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第13章信息系统开发方法 AnIntroductiontoDatabaseSystem 本章内容 信息系统开发方法结构化开发迭代化开发面向对象思想 AnIntroductiontoDatabaseSystem 系统开发过程中的认知方法 人们从事任何一项工程项目时 首先必须了解对象 即明确要做什么 然后考虑怎么做 最后才是实际动手去做 对应于信息系统的开发的三个步骤 系统分析阶段 系统设计阶段 系统实现阶段 AnIntroductiontoDatabaseSystem 系统开发过程中的认知方法 在传统的系统开发中 由于计算机软硬件设备条件所限 系统开发过程的重心向下 随着计算机技术的进步 应用软件的变成实现越来越容易 系统开发过程的重心开始前移 AnIntroductiontoDatabaseSystem 结构化系统开发方法 1 结构化开发 瀑布模型 结构化系统开发该方法强调从系统的角度出发来分析问题和解决问题 面对要开发的系统 从层次的角度 自顶向下地分析和设计系统 开发过程强调严格的规范管理和系统生命周期 工作文档要成文 要标准 AnIntroductiontoDatabaseSystem 系统开发生命周期 AnIntroductiontoDatabaseSystem 结构化系统开发方法 结构化开发的过程 严格按照生命周期五个阶段 系统规划 系统分析 系统设计 系统实施 系统运行和维护 AnIntroductiontoDatabaseSystem 瀑布模型 AnIntroductiontoDatabaseSystem 结构化系统开发方法的优缺点优点 整体思路清楚 能够从全局出发 步步为营 减少返工 有利于提高开发质量 设计工作中阶段性强 每一阶段均有工作成果出现 且是下一阶段工作的依据 工作进度比较容易把握 有利于系统开发的总体管理和控制 缺点 1 系统开发周期太长 风险高 2 不符合人们循序渐进认识事物的规律性 结构化系统开发方法 AnIntroductiontoDatabaseSystem 风险 时间 传统的瀑布式开发流程 SubsystemTesting SystemTesting Code UnitTesting Design RequirementsAnalysis AnIntroductiontoDatabaseSystem 瀑布模型无法有效控制项目风险 保证项目进度 测试时才发现系统性能无法达到预定指标 增加的开发活动 整个项目的延误 AnIntroductiontoDatabaseSystem 本章内容 信息系统开发方法结构化开发迭代化开发面向对象思想 AnIntroductiontoDatabaseSystem 迭代化开发方法 2 迭代化开发用户与系统分析设计人员合作 在短期内定义用户的基本需求 开发出一个功能不十分完善的 实验性的 简易的应用软件基本框架 称为原型 先运行这个原型 再不断评价和改进原型 使之逐步完善 其开发是一个分析 设计 编程 测试 运行 评价多次重复 不断演进的过程 AnIntroductiontoDatabaseSystem 迭代化开发过程 包含了结构化开发 系统申请 运行 评价 开发一个原型系统 确定系统的基本要求和主要功能 确定模型后处理 实际系统运行 维护 满意吗 满意 不满意 主要任务 构造模型的依据 修改 分析 设计 实施 测试 评价 AnIntroductiontoDatabaseSystem 迭代化的软件项目生命周期模型 迭代计划的依据 风险驱动把复杂的问题分解成一系列相对简单的问题早期的迭代解决风险最高的问题 每次迭代都增加系统的功能并产生一个可运行的结果每次迭代都包括有测试工作 时间 Iteration1 Iteration2 Iteration3 AnIntroductiontoDatabaseSystem 什么是风险 常见的风险类型 技术 架构风险未经证实的技术 从未涉足的应用领域资源风险缺乏足够的开发人员 技术 资金商业风险竞争对手 ROI 供应商进度风险无法按时完成项目 项目经理需要维护一张风险列表来对风险进行跟踪并评估风险的优先等级 风险是人们目前拥有或即将产生的一种顾虑 担心某种因素会严重影响到项目的成功 AnIntroductiontoDatabaseSystem 迭代式项目的执行 迭代一的目标是开发一个系统核心原型 满足性能需求指标迭代执行的结果可能实现预定目标 也可能没有达到预定目标项目经理需要对每次迭代结果进行评估根据上一次迭代执行的结果来决定下一次迭代的工作内容 AnIntroductiontoDatabaseSystem 迭代一失败之后 调整过的计划 AnIntroductiontoDatabaseSystem 迭代化开发vs 结构化开发 AnIntroductiontoDatabaseSystem 在一次迭代中 我们会走过所有的规程 discipline 迭代是按预先计划所进行的一系列开发活动 通过迭代会产生一个软件发布结果 内部或外部的 并且根据预先制定的标准来对该结果进行评估 什么是迭代 iteration AnIntroductiontoDatabaseSystem 迭代化开发的四个阶段 AnIntroductiontoDatabaseSystem 初启阶段 Inception 确定项目开发的目标和范围定义主要的需求 主要的用例场景估算开发周期和成本估计潜在的风险 AnIntroductiontoDatabaseSystem 手机开发项目 初启阶段 AnIntroductiontoDatabaseSystem 精化阶段 Elaboration 尽快稳定并验证软件架构定义所有的需求 所有的用例及用例场景根据主要的需求来开发一个基本架构 开发 测试 为构建阶段 Construction 制定一个详细的开发计划 AnIntroductiontoDatabaseSystem 手机开发项目 精化阶段 AnIntroductiontoDatabaseSystem 构建阶段 Construction 尽快完成软件产品的开发 开发 测试 尽可能降低开发成本 优化开发资源和避免不必要的返工在保证开发进度的同时达到足够的软件质量获得一些有用的版本 alpha beta等 AnIntroductiontoDatabaseSystem 手机开发项目 构建阶段 AnIntroductiontoDatabaseSystem 交付阶段 Transition 获得涉众的认同 产品部署已经完成并且满足预定的质量标准向客户交付产品 进行系统切换 AnIntroductiontoDatabaseSystem 迭代化开发四个阶段 AnIntroductiontoDatabaseSystem 项目的关注点随时间而发生变化 AnIntroductiontoDatabaseSystem 迭代化开发 AnIntroductiontoDatabaseSystem 本章内容 信息系统开发方法结构化开发迭代化开发面向对象思想 AnIntroductiontoDatabaseSystem 面向对象的方法 ObjectOriented OO 客观世界是由各种各样的对象组成的 对象是一个独立存在的实体 从外部可以了解它的功能 但其内部细节是 隐蔽 的 它不受外界干扰 每种对象都有各自的内部状态和运动规律 不同的对象之间相互作用和联系构成了各种不同的系统 AnIntroductiontoDatabaseSystem 历史 OOPL ObjectOrientedProgrammingLanguage面向对象程序设计语言 20世纪70年代到80年代 美国Xerox公司 PaloAlto研究中心 PARC 的AlanKay AdaleGoldberg和DanIngans等人主持开发的Smalltalk语言正式使用了 面向对象 这个术语 它的问世标志着面向对象程序设计方法的正式形成 AnIntroductiontoDatabaseSystem 贝尔实验室的BjarneStroustrup及其研究小组在当时最受欢迎的C语言基础上开发的C 语言 引入了对面向对象概念的支持 C 语言以其与C语言兼容 高运行效率等优良特性 使面向对象程序设计技术受到软件工业界的广泛关注 使之进入一个全面发展的时期 尽管C 只能算作一种混合式面向对象语言 但是正是由于大量C程序员通过C 的帮助才迅速掌握了面向对象的概念和方法 全面促进了面向对象技术的应用 从而使C 成为最有影响的面向对象语言 甚至许多人把C 当作面向对象的代名词 历史 AnIntroductiontoDatabaseSystem 历史 面向对象技术的流行进一步促进了面向对象语言的繁荣 90年代涌现出了一大批实用的面向对象语言 如ObjectPascal Eiffel Java等等 Java语言是由SunMicrosystem公司推出的一种纯面向对象语言 Java从C 语言中继承了大量的语言成分 抛弃了C 语言中冗余的和容易引起问题的功能 它将面向对象 平台无关性 稳定性 安全性等集于一身 提供了一个良好的程序设计环境 因而成为适合于分布式计算的程序设计语言 Java语言于90年代中期的迅速流行与它定位于当时迅速发展的Internet的WWW应用开发有关 展示了面向对象技术与分布式计算结合的重大前景 AnIntroductiontoDatabaseSystem 面向对象的基本思想 1 客观事物都是由对象组成的任何复杂的事物都可以通过对象的某种组合构成 2 对象由属性和方法组成属性反映了对象的信息特征 如 特点 值 状态等 方法则是用来定义改变属性状态的各种操作 3 对象之间的联系通过传递消息来实现 4 对象可按其属性进行归类类有一定的结构 类上可以有超类 类下可以有子类 这种对象或类之间的层次结构是靠继承关系维系着的 5 对象是被封装的实体封装指严格的模块化 这种封装了的对象满足软件工程的一切要求 而且可以直接被面向对象的程序设计语言所接受 AnIntroductiontoDatabaseSystem 面向对象的基本思想 从计算机软件设计的角度 引入类和对象的概念 将客观世界和主观世界中的实体和问题直接映射到计算机世界的程序空间 这就是面向对象方法的基本出发点 面向对象方法通过对客观世界和问题世界的直接模拟 建立较为准确 自然的程序设计模型 从而获得信息处理的更高性能 AnIntroductiontoDatabaseSystem 面向对象的基本思想 优点 与人类习惯的思维方法一致 使用现实世界的概念抽象的思考问题从而自然的解决问题稳定性好 系统的功能需求变化时不会引起软件结构的整体变化 往往仅需要做一些局部的修改可重用性好 较易开发大型软件产品 可以把一个大型软件产品分解成一系列相互独立的小产品来处理可维护性好 易于理解 修改 测试 AnIntroductiontoDatabaseSystem 面向对象的思想 对象和类 对象 Object 猪 狗 所有动物 松树 兰花 所有植物 灯 笔 汽车 所有物体 现实世界中所有有意义的一切事物 对象是现实世界中某个具体的物理实体或概念在计算机逻辑中的映射和体现 AnIntroductiontoDatabaseSystem 面向对象的思想 对象和类 类 Class 具有相同属性和操作的一组对象的集合 属性 客观事物所具有的性质 特征的抽象方法 功能 即对象中所包含的方法实际上就是过程或函数 是实现对象功能算法的代码块 比如人类 有年龄 性别 身高 体重 健康状态 所属工作单位等特征 即属性 是区分不同个体的依据 人类还有行为特征 方法 如吃饭 走路 学习 成长等 行为特征是同一个类的所有个体共有的 AnIntroductiontoDatabaseSystem 面向对象程序设计 对象和类 类的定义ClassATypeName Classbody 类具有属性和方法属性 类具有哪些性质方法 类具有什么样的功能 AnIntroductiontoDatabaseSystem Java ClassPerson privateintage hight 属性publicvoidmove 方法 方法内容 面向对象程序设计 对象和类 AnIntroductiontoDatabaseSystem 对象 类的具体实例ATypeNamea newATypeName 例如 Personzhangsan newPerson 新建实例对象zhangsan age 25 为对象属性赋值zhangsan hight 175 为对象属性赋值zhangsan move 调用对象的方法 面向对象程序设计 对象和类 AnIntroductiontoDatabaseSystem 面向对象程序设计 对象和类 类和对象的区别共性和个性的区别类是对象的抽象对象是类的实例类是静态的对象是动态的 AnIntroductiontoDatabaseSystem 面向对象程序设计 类的特性 类的三大基本特性 封装性 继承性和多态性封装 Encapsulation 把内部实现细节隐藏起来 使其他外部对象无法访问 仅仅提供某些功能使对象形成接口 AnIntroductiontoDatabaseSystem 面向对象程序设计 类的特性 封装的作用 数据和过程的内部实现细节对外界隐藏 减少当变化发生时的副作用的传播数据结构和操纵它们的操作被合并在类中 便于构建复用 被封装对象间的接口被简化 系统耦合
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 共享出行信用体系建设与行业信用评价体系研究报告
- 中级银行从业资格之中级银行业法律法规与综合能力综合检测题型汇编附答案详解(模拟题)
- 注册公用设备工程师考前冲刺练习【轻巧夺冠】附答案详解
- 旅游行业智慧旅游产品设计开发方案
- 自考专业(工商企业管理)复习提分资料附答案详解【典型题】
- 自考公共课考试彩蛋押题含答案详解【突破训练】
- 综合解析北师大版8年级数学上册期末试卷附答案详解【培优A卷】
- 综合解析广东省恩平市中考数学真题分类(二元一次方程组)汇编专题攻克试题(含解析)
- 建筑工地现场管理实务操作指南
- 自考专业(计算机信息管理)预测复习含答案详解(培优)
- 病历书写基本规范-课件
- 魔兽世界85-90升级路线(BL)
- 纤支镜在麻醉科的应用
- 微生物发酵中药研究进展
- 《矿业权评估指南》
- 机动车维修竣工出厂合格证样式
- 整套教学课件《现代心理与教育统计学》研究生
- 手机拍照技巧大全课件
- 工业建筑钢筋工程监理实施细则
- 2023版北京协和医院重症医学科诊疗常规
- 人工膝关节置换术护理查房
评论
0/150
提交评论