利用UML进行简单的面向对象分析
程序员文章站
2022-07-08 23:50:07
...
UML不是OOA/OOD,也不是方法,而是一种图形表示法,是一种面向对象的思考工具。
分析——对问题和需求的调查研究
设计——满足需求的概念上的解决方案
面向对象分析(OOA)——在问题域内,发现和描述对象
面向对象设计(OOD)——如何定义软件对象,已经他们之间如何协作,以实现需求
“东北人都是活雷锋”面向对象分析:
1.“是”体现了继承关系;
2.“东北人”也继承了“人”;
3.JAVA不能支持多继承;
4.所以,“活雷锋”可以看做一个接口,由“东北人”实现“活雷锋”的“助人为乐”的方法。
快速开始UML的示例
骰子游戏:软件模拟游戏者投掷两个骰子,总数为7则赢,否则输
面向对象分析过程:定义用例-》定义领域模型-》定义交互图-》定义设计类图
1.定义用例
——用例是需求分析的一种工具,是情节描述。用于定义功能性需求,表示这个软件用来干什么。
a.游戏者请求投掷骰子
b.系统显示结果
2.定义领域模型(OOA)
——相当于业务模型,用于识别问题中的概念,并抽象出来,确立概念之间的关系(暂时不考虑概念的属性细节,逐步进行功能分解)
a.游戏者
b.骰子
c.骰子游戏(一个时间玩一个游戏)
3.定义交互图(动态建模)——
关注软件对象的职责与协作,分配对象的职责,考虑具体的实现,即这些对象之间应该进行怎样的交互去实现它,并绘制交互图
此图为顺序图,箭头表示调用关系
4.定义设计类图(OOD静态建模)——
从领域模型和交互图中获得提示,定义软件类,包括属性和方法
局部设计类图
分析——对问题和需求的调查研究
设计——满足需求的概念上的解决方案
面向对象分析(OOA)——在问题域内,发现和描述对象
面向对象设计(OOD)——如何定义软件对象,已经他们之间如何协作,以实现需求
“东北人都是活雷锋”面向对象分析:
1.“是”体现了继承关系;
2.“东北人”也继承了“人”;
3.JAVA不能支持多继承;
4.所以,“活雷锋”可以看做一个接口,由“东北人”实现“活雷锋”的“助人为乐”的方法。
快速开始UML的示例
骰子游戏:软件模拟游戏者投掷两个骰子,总数为7则赢,否则输
面向对象分析过程:定义用例-》定义领域模型-》定义交互图-》定义设计类图
1.定义用例
——用例是需求分析的一种工具,是情节描述。用于定义功能性需求,表示这个软件用来干什么。
a.游戏者请求投掷骰子
b.系统显示结果
2.定义领域模型(OOA)
——相当于业务模型,用于识别问题中的概念,并抽象出来,确立概念之间的关系(暂时不考虑概念的属性细节,逐步进行功能分解)
a.游戏者
b.骰子
c.骰子游戏(一个时间玩一个游戏)
3.定义交互图(动态建模)——
关注软件对象的职责与协作,分配对象的职责,考虑具体的实现,即这些对象之间应该进行怎样的交互去实现它,并绘制交互图
此图为顺序图,箭头表示调用关系
4.定义设计类图(OOD静态建模)——
从领域模型和交互图中获得提示,定义软件类,包括属性和方法
局部设计类图
上一篇: [CSS]添加横向滚动条
下一篇: 细说websocket - php篇