分析方法如何适应面临的挑战? 1.是否有利于对问题及系统责任的理解 要求分析方法采用与问题域一致的概念、术语及系统成 分,产生一个较好地映射问题域、准确反映系统责仼的 系统模型。 2.是否有利于人员之间交流 要求分析方法使用与问题域一致的概念及术语,尽可能 体现人类的日常思维方式,使各类人员具有共同语言。 3.对需求变化的适应性 要求分析方法把系统中最容易变化的因素隔离起来,并 使系统的各个单元之间接口尽可能少。即把需求变化所 引起的影响局部化。 是否支持软件复用 系统模型的基本成分具有完整性(能完整地对应问题域 中的事物)和独立性(与其它成分接口尽量少)
分析方法如何适应面临的挑战? 1.是否有利于对问题及系统责任的理解 要求分析方法采用与问题域一致的概念、术语及系统成 分,产生一个较好地映射问题域、准确反映系统责任的 系统模型。 2.是否有利于人员之间交流 要求分析方法使用与问题域一致的概念及术语,尽可能 体现人类的日常思维方式,使各类人员具有共同语言。 3.对需求变化的适应性 要求分析方法把系统中最容易变化的因素隔离起来,并 使系统的各个单元之间接口尽可能少。即把需求变化所 引起的影响局部化。 4.是否支持软件复用 系统模型的基本成分具有完整性(能完整地对应问题域 中的事物)和独立性(与其它成分接口尽量少)
分析方法的比较 对问题域 和系统责改进交流适应变化支持复用 任的理解 功能分解法差 最差 差 数据流法较差 差差 较差 差 信息建模法较好较好略好 略好 OOA 好 好 好 好
分析方法的比较 功能分解法 数据流法 信息建模法 OOA 对问题域 和系统责 任的理解 改进交流 适应变化 支持复用 差 差 最差 差 较差 差 较差 差 较好 较好 略好 略好 好 好 好 好
OOA的主要优点 有利于对问题的理解,使系统的复杂性得到控制 采用与问题域—致的概念、术语及系统成分,使系统能较 好地映射问题域,准确反映系统责仼。 有利于各类人员之间的交流 使用与问题域—致的概念及术语,体现人类的日常思维方 式,从而使各类人员具有一种比较易懂的共同语言。 对需求变化的适应性 按封装原则把系统中最容易变化的田考口应村市的 各个单元成分之间接口很少,把可 立性完整性、可标识局 部化。 性、一般性、适应性、可 支持软件复用 靠性、标准化 封装、继承、聚合等原则,对象的完整性、独立性以及与 问题域的良好对应,使面向对象方法非常有利于软件复用
OOA的主要优点 有利于对问题的理解,使系统的复杂性得到控制 采用与问题域一致的概念、术语及系统成分,使系统能较 好地映射问题域,准确反映系统责任。 有利于各类人员之间的交流 使用与问题域一致的概念及术语,体现人类的日常思维方 式,从而使各类人员具有一种比较易懂的共同语言。 对需求变化的适应性 按封装原则把系统中最容易变化的因素隔离起来,系统的 各个单元成分之间接口很少,把需求变化所引起的影响局 部化。 封装、继承、聚合等原则,对象的完整性、独立性以及与 问题域的良好对应,使面向对象方法非常有利于软件复用。 可复用构件的特征: 独立性、完整性、可标识 性、一般性、适应性、可 靠性、标准化 支持软件复用
贯穿软件生命周期全过程的一致性 从OOA开始使用与问题域一致的概念、词汇、原则及表 示法,这种—致性保持到设计、编程、测试、维护等各个 阶段,这对于整个软件生命周期的各种开发、维护及管理 活动都具有重要的意义。 实用性 仅仅数年以前,面向对象的软件开发还被许多人看作一种 理论研究或未来的新技术,现在已经无可置疑地成为-种 实用技术。 国外情况,国内情况。 有利于用户参与 中国的国情一用户更希望参与应用系统的开发 对用户而言,学习OO方法的困难要比其它方法少得多。 先进不等于难学难用
贯穿软件生命周期全过程的一致性 从OOA开始使用与问题域一致的概念、词汇、原则及表 示法,这种一致性保持到设计、编程、测试、维护等各个 阶段,这对于整个软件生命周期的各种开发、维护及管理 活动都具有重要的意义。 实用性 仅仅数年以前,面向对象的软件开发还被许多人看作一种 理论研究或未来的新技术,现在已经无可置疑地成为一种 实用技术。 国外情况,国内情况。 有利于用户参与 中国的国情——用户更希望参与应用系统的开发 对用户而言,学习OO方法的困难要比其它方法少得多。 ——先进不等于难学难用