OOAD(Object Orient Analysis Design,面向对象的分析和设计,面向对象分析与设计)是现代软件企业广为采用的一项有效技术。OOAD方法要求在设计中要映射现实世界中指定问题域中的对象和实体,例如:顾客、汽车和销售人员等。这就需要设计要尽可能地接近现实世界,即以最自然的方式表述实体。所以面向对象技术的优点即为能够构建与现实世界相对应的问题模型,并保持他们的结构、关系和行为为模式。
大师说:"没有不变的需求,世上的软件都改动过3次以上,唯一一个只改动过两次的软件的拥有者已经死了,死在去修改需求的路上。"
目前众多的软件项目有什么样的问题呢?早些时候上ERP的企业在企业发展的时候发现原有的ERP系统需要改进,可是要改进或者是更改现有的ERP系统,唯一的方法就是重新开发一个ERP系统。这对于企业来说是笔不小的支出。此时,落后的信息系统就成为制约企业发展的重要因素。是什么原因造成了这种情况呢?主要的因素是传统的系统分析是在假定需求不变的情况下进行的,这样可以把企业的资源配置到最优的程度。可是在现代瞬息万变的社会,一个企业固守旧有模式,势必会在竞争中处于劣势(因此现在也出现了"组件化"的ERP,这是题外话)。既然企业的需求是变化的、不稳定的,那么以变化的需求为基础建立起来的企业信息系统当然也就不稳定了。这时候,有个问题就产生了,前面我们已经说过,需求是项目的根本,既然需求都是不稳定的,那么何以建立起稳定的企业信息系统呢?
要回答这个问题,首先要比较面向过程和面向对象的开发方法的差别,传统的面向过程的开发方法在前20年大行其道,为中国企业的信息化建设立下了汗马功劳。之所以称为面向过程,是因为开发的焦点集中于过程,开发者集中于以函数为核心的过程,例如前些年很多人试图编写一些通用转账函数来满足银行的需求。面向过程的开发语言包括:Cobol、Pascal、C及C的变形语言。面向对象的概念是在近10年才进入中国的,而它的思想至今也没有真正意义上得到普及。简单的说,面向对象就是面向世界,世界上的任何事物都是对象,因此面向对象是很自然的思想,是符合我们的思维习惯的。面向对象的语言包括了Smalltalk、C++、Java,还有Object Pascal,以及刚刚诞生的C#。
需求是不稳定的,那么需求之中是不是没有稳定的东西呢?有的,就是对象。世界都是由对象组成的,而对象都是持久的,例如动物、植物已经有相当长的时间。虽然对象也在变化,动物,植物也在不断的进化。但对象在一个相当长的时期内都存在,动植物的存在时间肯定比任何一家企业长久。面向对象的开发方法的精髓就是从企业的不稳定需求中分析出企业的稳定对象,以企业对象为基础来组织需求、构架系统。这样得出的系统就会比传统的系统要稳定得多,因为企业的模式一旦变化,只需要将稳定的企业对象重新组织就行了。这种开发的方法就被称为OOAD(Object Orient Analysis & Design 面向对象的分析和设计),而分析出的企业对象就被称为Common Business Object。
分享到:
相关推荐
本书介绍了分析师必学的3种UML图:类图、用例图和序列图,以及3种最实用、最常用的OOAD概念和工具:事务模式、用例描述、BCE模式。通过贯穿全书的“酒店联合订房系统”案例,展示了这些图和OOAD工具的实际应用。本书...
例如,"OOAD - Lecture 2 Requirements (ch05-08).pdf"可能详细介绍了如何进行需求收集和用例描述,而"OOAD - Lecture 5 Object Design 2(ch18-25).pdf"和"OOAD - Lecture 6 Object Design 3(ch26-31).pdf"则深入...
在书中,UML作为主要的建模工具被详细介绍。UML是一种可视化建模语言,它提供了多种图表类型,如用例图、类图、序列图、状态图和活动图等,用于描述系统的静态结构和动态行为。用例图描述了用户与系统之间的交互,...
`www.pudn.com.txt` 文件可能是关于OOAD的一些参考资料链接或笔记,它可能包含具体案例分析、最佳实践或工具的介绍,帮助深化对OOAD的理解。 `ooad` 文件可能是一个文档、代码示例或者一个实际的项目案例,用于实践...
本文将详细介绍 LSP、OCP、SRP、ISP 和 DIP 这五大设计原则,并结合 UML 图表进行说明。 #### 1. LSP:Liskov 替换原则 (The Liskov Substitution Principle) Liskov 替换原则由 Barbara Liskov 在 1987 年提出,...
面向对象分析与设计(Object-Oriented Analysis and Design,简称OOAD)是软件开发中的一种重要方法,它结合了面向对象编程的思想,用于系统分析、设计阶段,旨在提高软件的可维护性和可扩展性。本系列PPT涵盖了OOAD...
4. **设计模式**:介绍一些常见的设计模式,如工厂模式、单例模式、观察者模式等,以及它们在OOAD中的应用。 5. **软件生命周期**:OOAD在软件开发生命周期中的位置,以及如何与其他阶段(如需求分析、编码、测试等...
该书介绍了分析师必学的3种UML图:类图、用例图和序列图,以及3种最实用、最常用的OOAD概念和工具:事务模式、用例描述、BCE模式。通过贯穿全书的“酒店联合订房系统”案例,展示了这些图和OOAD工具的实际应用。 该...
通过以上内容的介绍,我们可以看到面向对象分析与设计(OOAD)及统一建模语言(UML)在软件开发过程中的重要作用。它们不仅能够帮助开发者更好地理解问题域,还能指导他们设计出高质量的软件系统。
1. **UML_OOAD_Lesson_Day1**:基础理论介绍,涵盖UML的基本元素和术语,以及OOAD的基本概念。 2. **UML_OOAD_Lesson_Day2**:用例图和类图的创建,讲解如何描述系统的需求和类的结构。 3. **UML_OOAD_Lesson_Day3...
《面向对象的分析与设计》(Head First OOAD)是一本深入浅出介绍面向对象设计思想的书籍,由Brett D. McLaughlin、Gary Pollice和Stefan Pochmann共同编写。这本书以生动易懂的方式讲解了如何在实际项目中应用面向...
本文将详细介绍几种经典的面向对象分析和设计方法:OMT、OOD、RDD、OOAD和OOSE。 1. **OMT(Object Modeling Technique)**: OMT是由James Rumbaugh开发的面向对象分析方法。它基于实体关系模型,但扩展了概念,...
**OOAD(面向对象分析与设计)** 面向对象分析与设计(Object-Oriented Analysis and Design,简称OOAD)是一种软件工程方法,用于创建复杂的软件系统。它强调使用面向对象编程的思想来理解和描述问题领域,进而...
《UML和OOAD快速入门》PPT的全六章可能涵盖了以上概念的详细介绍,通过实例和案例帮助初学者快速掌握UML和OOAD的基本知识。学习这些内容,不仅可以提升软件设计能力,还能增强团队间的沟通效率,确保项目开发的质量...
《ooad设计模式软件架构分析资料》集合涵盖了面向对象编程、软件架构、设计模式、软件分析以及UML等多个核心IT领域的经典著作。这些资源对于深入理解软件开发过程、提升设计能力以及优化项目管理具有极高的价值。 ...
在本压缩包中,"建立需求模型2课时.pdf"可能详细介绍了如何使用用例图、类图、序列图等UML元素来描绘系统的需求和动态行为。 3. **设计模式**:设计模式是解决软件设计中常见问题的经验总结,是成熟的解决方案模板...