第二章面向对象建模.docx
《第二章面向对象建模.docx》由会员分享,可在线阅读,更多相关《第二章面向对象建模.docx(10页珍藏版)》请在冰豆网上搜索。
第二章面向对象建模
第二章面向对象建模
•川例驱动
•抽象机制
•用人类理解世界的口然方法
•主语+谓语+宾语
•用例与场景的关系
传统型商务
流
面向过程的困难
面向对象方法
面向对象的困难
对象如何被抽象?
为什么是这样抽象而不那样抽象?
(why)
怎么知道一个组合正好满足实现世界的需求?
什么样的组合是好的,什么样的组合是差的?
(How)
如果只给我一个对象组合,我怎么才能理解它表达的含义呢?
(What)
需求如何与设计互为映射
学习这门课的目的
一种把现实世界映射到对象世界的方法
一种从对象世界描述现实世界的方法
一种验证对彖世界行为是否正确反映了现实世界的方法
从现实世界对业务模型
•建模:
人们解决现实问题的一种常用方法。
•我们的实现世界有丰富多彩杂乱无章的信息,要建…个模型并不容易。
•抽象:
世界=人+事+物+规则
建O(
从业务模型到概念模型
•业务模型记录了实现世界,但这只是原始需求信息,距离町执行代码还很远。
•分析模型:
介于原始需求和计算机实现之间。
向上H央射到原始需求,向下为计算机实现规定了一种高层次的抽象。
从业务模型到概念模型
从概念模型到设计模型
•转化
•规则
1、软件架构和框架
2、编程语言
3、规范或中间件
概念模型到设计模型
面向对象的困难解决了吗?
一种把现实世界映射到对象世界的方法。
一种用对彖世界描述现实世界的方法。
一种验证对彖世界行为正确反映了现实世界的方法。
UML仃没冇提供给我们解决上述困难的方法?
面向对象分析设计完整过程
用
侧
9S
•通过对客观事物建立一种抽象的方法用以表征事物并获得对于爭物木身的理解,同时把这种理解概念化,将这些逻辑概念组织起来,构成一种对所观察的对象的内部结构和工作原理的便于理解的表达。
•怎么建?
依赖于方法论,或上升到哲学高度就是认识论
•模是什么?
依赖于确定了抽象角度下的场景模拟
静态的事务上,并产生一定的效果
模是什么要达到一个目标必须要有一个动作附加在
依赖确定了抽彖角度下的场景模拟。
静态的事物(物)+特定的条件(规则)+特定动作(参与者的驱动)=特定的场景(出件)
人=业务卞角(BusinessActor)、业务工人
(BusinessWorker)、参与者(Actor)
事=业务用例(BusinessUseCase)、系统用例
(UseCase)
物=业务实体(BusinessEntity)、实体(Entity)
建模公式
问题领域=$剜彖巾度
抽彖角度=山题领域边界之外的参与者的业务目标=业务用例
业务用例=±特疋场駅
特定场景=静态事物+特定的条件+特定的动作or
特定的事=特定的事物+特定的规则+特定的人的行为
用例驱动
用例驱动的原理
逻辑视图
进程视图
部署视图
实施视图
也就是建模公式中的那些“人”、“事”、“物”、
“规则”如何构成系统的“零部件”、以及我们如何组织人力生产和组装这些“零部件”以建成最终的系统。
用例驱动整个软件生产过程就是用例驱动的
抽象层次
•抽象层次越高,具体信息越少,概括能力越强。
•越具体的事物越容易理解吗?
•抽彖的两种方法:
口顶向下、口底向上
•开发过程如何应用两种抽象方法?
抽象层次
视图
•视图用于组织UML元素,农达出模型某一方面的含义。
•实际工作屮,什么地方应用视图、应用哪一种视图、总共需要哪些视图。
•例如想要绘制流程图时,到底是用活动图还是交互图?
•视图和视角
对象分析方法
我们经常需耍分析很多个该对彖的实例所参与的场;黑以获得刈象的多个侧面,再通过归纳姿理这些对線的^^个实例抽象汨对彖的般特件
对象分析方法