第2章 MIS的开发方法.ppt_第1页
第2章 MIS的开发方法.ppt_第2页
第2章 MIS的开发方法.ppt_第3页
第2章 MIS的开发方法.ppt_第4页
第2章 MIS的开发方法.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

主要内容 结构化系统开发方法原型法面向对象方法 第2章MIS的开发方法 管理信息系统的开发策略 1 自下而上 的开发策略 自下而上 的略就是从现行系统的业务状况出发 先实现一个个具体的功能 逐步地由低级到高级建立信息系统 这种策略对信息系统实行逐步发展 符合事物的发展规律 可以避免大规模系统运行不协调的危险 但是由于没有进行整体规划 缺乏从整个系统出发考虑问题 2 自上而下 的开发策略 自上而下 的开发策略从整体上协调和规划 由全面到局部 由长远到近期 从探索合理的信息流出发来设计信息系统 这种开发策略要求很强的逻辑性 因而难度较大 通常 自下而上 的适用于小型系统的设计 适用于对开发工作缺乏经验的情况 在开发实践中 对于大型系统往往把这两种方法结合起来使用 即先自上而下地作好信息系统的战略规划 再自下而上地逐步实现各系统的应用开发 这是建设MIS的正确策略 信息系统的开发方式及其选择 1自行开发自行开发是由用户依靠自己的力量独立完成系统开发的各项任务 自行开发的优点是开发速度快 费用少 容易开发出适合本单位需要的系统 方便维护和扩展 有利于培养自己的系统开发人员 缺点是由于不是专业开发队伍 容易造成系统开发时间长 开发人员调动后 系统维护工作没有保障的情况 采用这种方式时 需要大力加强领导 切实实行 一把手 原则 同时要向专业开发人士或公司进行必要的技术咨询 或聘请他们作为开发顾问 2委托开发 委托开发就是由使用单位 甲方 委托给富有开发经验的机构或专业开发人员 乙方 按照用户的需求承担系统开发的任务 用户首先要明确自己的需求 然后选择委托单位 签订开发合同 并预付部分资金 开发方 乙方 根据合同要求 独立地完成系统分析 设计 实施 用户对系统验收通过后直接投入运行 采用委托开发方式 关键是要选择好委托单位 这种开发方式适合于用户 甲方 没有信息系统的系统分析 系统设计及软件开发人员或开发队伍力量较弱 信息系统内容复杂 投资规模大 但资金较为充足的单位 委托开发方式的优点是省时 省事 开发的系统技术水平较高 缺点是费用高 系统维护与扩展需要开发单位的长期支持 不利于本单位的人才培养 3合作开发 合作开发由使用单位 甲方 和有丰富开发经验的机构或专业开发人员 乙方 共同完成开发任务 双方共享开发成果 实际上是一种半委托性质的开发工作 合作开发一般是由用户负责开发投资 根据项目要求组建开发团队 建立必要的规则 分清各方的权责 以合同的方式明确下来 协作完成新系统的开发 这种开发方式适合于使用单位 甲方 有一定的信息系统分析 设计及软件开发人员 但开发队伍力量较弱 需要外援 希望通过信息系统的开发来建立 完善和提高自己的技术队伍 以便于系统维护工作的单位 相对于前面的委托开发 这种开发方式的优点是相对比较节约资金 可以培养 增强使用单位的技术力量 便于系统维护工作 系统的技术水平较高 但是 其缺点是双方在合作中沟通容易出现问题 因此 需要双方及时达成共识 进行协调和检查 一 结构化系统开发方法的基本思想采用结构化思想 系统工程的观点和方法 按照用户至上的原则 先将整个系统作为一个大模块 自顶向下进行模块分解 然后 再自下而上按照系统的结构将各个模块进行组合 最终实现系统的开发 2 1结构化系统开发方法 二 结构化系统开发方法的步骤系统规划 确定系统的总体方案 开发顺序 资源分配等 系统分析 可行性分析 系统调查 建立系统的逻辑模型 解决系统 做什么 的问题 系统设计 代码设计 系统流程设计 数据库设计 处理流程设计 程序设计说明书的编写 解决系统 怎样做 的问题 系统实施 程序的设计与调试 系统转换 系统运行与维护 系统运行及系统评价 2 1结构化系统开发方法 结构化系统开发方法的工作阶段 结构系统开发方法中 整个开发过程包括系统规划 系统分析 系统设计 系统实施 系统运行五个首尾相联的阶段 称为结构化系统开发的生命周期 在结构化系统开发的生命周期中 每个阶段都产生相应的文挡资料 如图4 1所示 生命周期法各阶段 提出开发要求 初步调查 可行性研究 详细调查 系统分析 总体设计 详细设计 编程 测试 系统转换 系统维护 审核 审核 审核 系统运行 审核 信息系统的生命周期 系统分析阶段 系统设计 系统实施 系统维护 三 结构化系统开发方法的优点1严格区分系统开发的阶段性2自顶向下的分析与设计和自底向上逐步实施相结合3充分预料可能发生的变化4系统开发过程工程化 文档资料标准化四 结构化系统开发方法的缺点1开发周期过长 文档过多2过于理想化 2 1结构化系统开发方法 一 原型法的基本思想首先 系统开发人员根据对用户需求的理解与用户共同确定系统的基本要求和主要功能 接着 由系统开发人员利用软件工具 快速开发出一个满足用户需求的初始系统原型并运行之 然后开发人员与用户一起针对原型系统的运行情况反复协商修改 最后 形成完全满足用户需求的管理信息系统 原型应具备以下特点 实际可行 原型不是抽象的系统结构模型或理论设计模型 而是可以实际运行的软件系统 具有最终系统的基本特征 原型是形成最终系统的基础 通过不断丰富其功能 最终形成实际的管理信息系统产品 构造方便 快速 造价低 2 2原型法 二 原型法的步骤确定系统的基本要求和功能 构造初始原型 运行 评价 修改原型 确定最终信息系统 2 2原型法 三 原型法的优点1有利于对问题的认识2便于用户和开发人员之间的沟通3降低了系统开发的风险4能够启发用户需求5提高了系统开发的效率四 原型法的缺点1与结构化系统开发相比 原型法不够成熟 不利于控制和管理 对软件开发工具依赖性强2原型法系统开发过程中 由于缺乏对系统全面 细致的分析 可能导致系统质量不高 从而增加系统维护的代价 2 2原型法 3不适合开发大型管理信息系统 这种方法还容易导致人们认为最终系统过快产生 开发人员忽略彻底的测试 文档不够健全 4原型法建立的基础是最初的解决方案 以后的循环和重复都在以前的原型基础上进行 如果最初的原型不适合 则系统开发会遇到较大的困难 5没有正规的分阶段评价 因而对原型的功能范围的掌握有困难 由于用户的需求总在改变 系统开发永远不能结束 1 面向对象法的基本思想OO方法认为 客观世界是由许多各种各样的对象所组成的 每种对象都有各自的内部状态和运动规律 不同的对象之间的相互作用和联系就构成了各种不同的系统 我们设计和实现一个客观系统时 如果能在满足需求的条件下 把系统设计成由一些不可变的 相对固定 部分组成的最小集合 这个设计就是最好的 因为它把握了事物的本质 因而不再会被周围环境 物理环境和管理模式 的变化以及用户没完没了的变化需求所左右 而这些不可变的部分就是所谓的对象 客观事物都是由对象组成的 对象是在原来事物基础上抽象的结果 任何复杂的事物都可以通过对象的某种组合而构成 2 3面向对象方法 Object OrientedMethod 2 面向对象法的基本概念 1 对象 对象是现实世界中具有相同属性 服从相同规则的一系列事物的抽象 2 对象的属性 对象的属性是实体所具有的某个特性的抽象 3 类 类是具有相同属性和相同行为描述的一组对象 4 消息 消息是向对象发出的服务请求 5 行为 行为是指一个对象对于属性改变或消息收到后所进行的行动的反映 6 操作 对象行为 动态功能或实现功能的具体方法 7 关系 关系是指现实世界中两个对象或多个对象之间的相互作用和影响 8 接口 对象受理外部消息所指定操作的名称或外部通讯协议 9 继承 指一个类因承袭另一个类的能力和特征的机制 举例说明面向对象和面向过程的差异 面向过程就是分析出解决问题所需要的步骤 然后用函数把这些步骤一步一步实现 使用的时候一个一个依次调用就可以了 面向对象是把构成问题事务分解成各个对象 建立对象的目的不是为了完成一个步骤 而是为了描叙某个事物在整个解决问题的步骤中的行为 例如五子棋 面向过程的设计思路就是首先分析问题的步骤 1 开始游戏 2 黑子先走 3 绘制画面 4 判断输赢 5 轮到白子 6 绘制画面 7 判断输赢 8 返回步骤2 9 输出最后结果 把上面每个步骤用分别的函数来实现 问题就解决了 而面向对象的设计则是从另外的思路来解决问题 整个五子棋可以分为 1 黑白双方 这两方的行为是一模一样的 2 棋盘系统 负责绘制画面 3 规则系统 负责判定诸如犯规 输赢等 第一类对象 玩家对象 负责接受用户输入 并告知第二类对象 棋盘对象 棋子布局的变化 棋盘对象接收到了棋子的变化就要负责在屏幕上面显示出这种变化 同时利用第三类对象 规则系统 来对棋局进行判定 是可以明显地看出 面向对象是以功能来划分问题 而不是步骤 同样绘制棋局 这样的行为在面向过程的设计中分散在了总多步骤中 很可能出现不同的绘制版本 因为通常设计人员会考虑到实际情况进行各种各样的简化 而面向对象的设计中 绘图只可能在棋盘对象中出现 从而保证了绘图的统一 功能上的统一保证了面向对象设计的可扩展性 比如我要加入悔棋的功能 如果要改动面向过程的设计 那么从输入到判断到显示这一连串的步骤都要改动 甚至步骤之间的循序都要进行大规模调整 如果是面向对象的话 只用改动棋盘对象就行了 棋盘系统保存了黑白双方的棋谱 简单回溯就可以了 而显示和规则判断则不用顾及 同时整个对对象功能的调用顺序都没有变化 改动只是局部的 到这里就可以很明显的看出面向对象和面向过程的区别所在了 2 4面向对象的系统开发工具 UML 面向对象的分析与设计 OOA D 方法的发展在80年代末至90年代中出现了一个高潮 统一建模语言 UnifiedModelLanguage UML 是这个高潮的产物 最终统一为大众所接受的统一建模语言 UML是一种定义良好 易于表达 功能强大且普遍适用的建模语言 它溶入了软件工程领域的新思想 新方法和新技术 它的作用域不限于支持面向对象的分析与设计 还支持从需求分析开始的软件开发的全过程 需要说明的是 UML是一种建模语言 而不是一种方法 面向对象的分析与设计语言UML 每种UML的视图都是由一个或多个图组成 一个图就是系统架构在某个侧面的表示 它与其他图是一致的 所有的图一起组成了系统完整的视图 UML包括以下若干图 1 用例图用例实际上就是从用户的角度去定义具有交互过程的系统功能 每个功能与一个或多个参与者 actor 相连接 参与者是指处于系统之外 需要使用用例的人或事物 对系统开发人员来说 用例是很有实用价值的 可以帮助其从用户的观察角度收集可靠的系统需求 这对建立人机交互式系统极为重要 我们需求分析阶段的用例模型就是开发者和用户反复讨论的结果 表明了开发者和用户对需求规格达成共识 面向对象的分析与设计语言UML 2 类图类图描述类和类之间的静态关系 与数据模型不同 类图不仅显示了信息的结构 同时还描述了系统的行为 类图为开发人员提供了模仿现实世界的表达方式 它允许分析员使用客户采用的术语与其交流 促使客户提出所要解决问题的相关细节 面向对象的分析与设计语言UML 3 对象图对象图可以看作是类图的一个实例 对象之间的链接是类之间的关联的实例 面向对象的分析与设计语言UML 4 状态图在任何一个时刻 一个对象总处于某一特定的状态 一个状态图就包括一系列的状态以及状态间的转移 面向对象的分析与设计语言UML 5 时序图在一个运行的系统中 对象之间要发生交互 且这些交互要经历一定的时间阶段 时序图所表达的则是这种对象之间的基于时间的动态交互关系 着重体现对象间消息传递的时间顺序 面向对象的分析与设计语言UML 6 活动图活动图用于反映一个连续的活动流 相对于描述活动流来说 活动图常用于描述某个操作执行时的活动状况 面向对象的分析与设计语言UML 7 协作图协作图表达为完成系统的工作目标 系统中相互合作的对象间的交互关系和链接关系 协作图着重体现交互对象间的静态链接关系 表示一段时间后 计时器对象先向进水管发出停止进水消息 然后再向洗涤缸对象发送旋转洗

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论