OOD:跨越业务与软件系统的桥梁

需积分: 15 16 下载量 105 浏览量 更新于2024-08-18 收藏 2.83MB PPT 举报
"OOD的地位-OOA、OOD和UML" 面向对象分析(OOA)、面向对象设计(OOD)和统一建模语言(UML)是软件开发过程中的关键环节,尤其是在构建复杂系统的背景下,它们的重要性不言而喻。OOD作为其中的核心,其主要任务是将业务领域的模型转化为可实际运行的软件系统,它需要跨越理论与实践之间的巨大鸿沟。 OOD的难度在于它要求设计者具备深入理解业务领域的能力,同时还需要精通软件工程原理和技术。因此,承担OOD工作的人被称为系统架构设计师,他们的职责重大且复杂。系统架构设计师不仅要确定系统的总体框架,通常会利用已有的领域框架,还要正确理解需求分析的结果,用面向对象的设计原则来构建软件的体系结构。此外,他们需要考虑现有的技术资源,对软件的各个组件进行分解,并规划开发流程,即系统概要设计和详细设计。 在OOD过程中,设计师需要回答一系列关键问题,例如系统包含多少个类,这些类之间有何种关系(系统静态特性),类生成的对象如何协作来完成任务(系统动态特性),以及如何管理和控制这些类和对象。这些答案将直接影响到软件的结构和性能。 OOA是OOD的前提,侧重于业务领域的分析,产出包括业务领域用例图、活动图、协作图等,以及大量的业务文档,这些都是软件开发的基础。而OOP则是实现OOD设计的编程实践,通过如Java、C++、C#等面向对象语言将设计转化为代码。然而,重要的是要理解,仅仅使用面向对象的语言编程并不等同于真正实现了面向对象的编程(OOP)。OOP不仅涉及语法层面,更关乎设计理念,如封装、继承、多态等原则的应用。 UML作为一种可视化建模工具,贯穿于OOA和OOD之中,它帮助设计师以图形化的方式表达和沟通设计方案,包括用例图、类图、序列图、状态图等多种图表,使得复杂的系统设计变得更为直观和易理解。 案例学习是掌握这些概念的有效途径,比如编写简化版的WinZip,设计事件驱动系统,应用缓冲池思想于数据集,以及构建三层结构的杂志社管理软件系统,通过实际操作可以更好地理解和应用面向对象的分析与设计方法。 OOD在软件开发中的地位至关重要,它是连接业务需求与实际软件实现的桥梁,需要系统架构设计师具备丰富的业务知识、扎实的软件工程基础以及灵活的技术应用能力。通过OOA获取需求,利用UML进行设计表达,最后借助OOP将设计转化为代码,构成了面向对象软件开发的完整流程。