CH10 面向对象分析与设计 经典软件工程PPT 教学课件.pptVIP

  • 2
  • 0
  • 约8.13千字
  • 约 50页
  • 2018-01-25 发布于浙江
  • 举报

CH10 面向对象分析与设计 经典软件工程PPT 教学课件.ppt

CH10 面向对象分析与设计 经典软件工程PPT 教学课件

99-5-5 Software Engineering 第一章 软件和软件工程 传统方法的缺点 瀑布模型的缺点:僵化 瀑布模型要求:生命周期各阶段间遵守严格的顺序。 实际情况是:软件开发往往在反复实践中完成。 瀑布模型要求:预先定义并“冻结”软件需求。 实际情况是:某些系统的需求的一个逐渐明确的过程,且预先定义的需求到软件完成时可能已经过时。 本质上是功能分解,以实现功能的过程为中心,而用户的需求变化主要是针对功能的。这就使基于过程的设计不易被理解;且功能变化往往引起结构变化较大,稳定性不好。 系统有明确的边界定义,且系统结构依赖于系统边界的定义,这样的系统不易扩充和修改。 数据与操作分开处理,可能造成软构件对具体应用环境的依赖,可重用性较差. 软 件 工 程 §1. OOM 面向对象方法学(Object - Oriented Methodology),简称OOM §1. OOM OOM:以object 为核心,强调对现实概念的模拟而不强调算法。“面向对象方法学的基本原则,是按照人们习惯的思维方式建立问题域的模型,开发出尽可能直观、自然地表现求解方法的软件系统”。 ? Class:由特殊到一般的归纳(induction) ? Inheritance:由一般到特殊的演绎(deduction) §1. OOM 稳定性好:软件功能需求的变化不牵动全局,只需局部修改; Class 独立性强:只要修改不涉及class的对外接口,则内部修改完全不影响外部调用; Inheritance和多态性(polymorphism)使其很容易被修改和扩充; 容易理解; 3、实例Instance:某个class描述的具体对象; 4、消息Message: = object_ID. method_ID (parameter(s)); 5、操作Method: object能做的操作,亦称为service 、responsibility, 在 class 中须定义相应的代码; 6、属性Attribute :object 的固有数据; 特点: ① 若桂林人的 methods中有与中国人的同名,则李士执行该 method 时以桂林人为准,不执行中国人中定义的同名 method。 注意:multiple inheritance 在定义中应避免二义性(ambiguity),即二个父类中定义重名,但各具不同性质。 ④ 修改与扩充可以很容易地通过派生子类来完成。 §3. 面向对象的分析 (Object-Oriented Analysis) 1. OOA的基本过程: 建立三种模型: ① 描述系统数据结构的对象模型(object model). ② 描述系统控制结构的动态模型(dynamic model). ③ 描述系统功能的功能模型(function model). 第2步:去粗取精 ② 需求陈述中隐含的关联 ? 总行由各个分行组成 ? 系统维护事务日志 ? 分行保管账户 ? 系统提供必要的安全性 ? 总行拥有中央计算机 ? 储户拥有现金兑换卡 第2步:筛选删除 —— 2)、确定关联 ? 结构层 第1步:收集 —— ① 需求陈述中涉及objets的动词短语: ? 分行计算机维护账户 ? 柜员终端与分行计算机通信 ? 柜员输入针对账户的事务 ? ATM与中央计算机交换关于事务的信息 ? 中央计算机确定事务与分行的对应关系 ? ATM读现金兑换卡 ? ATM与用户交互 ? ATM吐出现金 ? ATM打印账单 ? 系统处理并发的访问 ? ATM、中央计算机、分行计算机及柜员终端组成网络 ? 总行拥有多台ATM ? ATM设在主要街道上 ? 分行提供分行计算机和柜员终端 ? 柜员终端设在分行营业厅及储蓄所内 ? 分行分摊软件开发成本 ? 储户拥有账户 ? 分行计算机处理针对账户的事务 ③ 根据问题域知识得出的关联 ? 现金兑换卡访问账户 ? 分行雇用柜员 ① 与已删去的object 有关的关联 ② 与问题无关的或应在实现阶段考虑的关联 ? ATM、中央计算机、分行计算机及柜员终端组成网络 ? 总行拥有多台ATM ? ATM设在主要街道上 ? 分行提供分行计算机和柜员终端 ? 柜员终端设在分行营业厅及储蓄所内 ? 分行分摊软件开发成本 ? 储户拥有账户 ? 总行由各个分行组成 ? 分行计算机处理针对账户的事务 ? 分行计算机维护账户 ? 柜员终端与分行计算机通信 ? 柜员输入针对账户的事务 ? ATM与中央计算机交换关于事务的信息 ? 中央计算机确定事务与分行的对应关系 ? ATM读现金兑换卡 ? ATM与用

文档评论(0)

1亿VIP精品文档

相关文档