OOA/OOD UML RUP Architecture Pattern MDA Rational Rose/Rational Software Architecture
徐迎晓 xuyingxiao@126.com 复旦大学软件学院 1.1 面向对象分析与设计 徐迎晓 xuyingxiao@126.com 复旦大学软件学院
Outline OOA & OOD OOA OOD
Outline OOA & OOD OOA OOD 先总体介绍OOA/OOD,在介绍一个简单的例子,分别看OOA和OOD
OOA and OOD object-oriented analysis object-oriented design OOA和OOD是使用对象技术和面向对象语言创建设计良好、健壮、可维护的软件系统的基础 知道面向对象的编程语言及其大量的库是必须的 但从对象的视角来分析和设计系统同样是关键 应用Principle和Pattern创建更好的对象设计 熟练地为不同软件组件分配职责——OOA/D关键、基本的能力
分析与设计 分析Analysis 设计Design 调查问题和需求, 而非解决问题 ——do the right thing 包括:需求分析(调查需求),对象分析(调查领域对象) 设计Design 为满足需求的概念解决方案, 而非其实现 —— do the thing right 如数据库schema,软件对象 包括:对象设计,数据库设计
分析与设计 object-oriented analysis:在问题领域中查找并描述对象 object-oriented design:定义对象及对象之间的协作 OOA--concepts in a Library Information System include Book, and Library. OOD---A Book software object may have a title attribute and a getChapter method.
Outline OOA & OOD OOA OOD
例子-掷骰子Play a Dice Game brief version of the Play a Dice Game use case: Play a Dice Game: A player picks up and rolls the dice. If the dice face value total seven, they win; otherwise, they lose.
领域模型 对现实世界中的概念进行可视化
Outline OOA & OOD OOA OOD
设计——交互图,软件对象及其协作
设计类图——软件类 通过检查交互图得到 对比领域类: