三大块知识点
OO analysis的目的
domain class diagram
system sequence diagram

这个图是从业务需求到软件设计,最后用程序实现的一个过程。其中每个一过程都离不开 use case(用例)
用例其实就是字面意思,它指的是在软件设计的过程中的一个使用场景,它说明了系统是如何与用户以及其他系统进行交互的,也就是说它要
体现你这个系统能在这个场景下干什么
Actor有三种,primary, supporting and offstage
primary一般在左边,是使用service的人(actor)
supporting一般是外部的服务,在右边
offstage用来辅助system完成目标(government tax agency)

什么是domain model(领域模型)?它是一种分析模型,帮助人们了解现实业务的工具。它描述了实体之间相互的关系。
符合OO analysis 的定义:Object-oriented analysis: emphases finding and describing objects and related concepts in the problem domain.
domain model需要用 domain model diagram来体现(基于UML)

把这种图吃透,就没啥问题了。其中设计到一些UML的知识点,回顾一下
UML六大关系,以强到弱一次排列:generalization(泛化),realization(实现), asscoiation(关联), aggregation(聚合)
composition(组合),dependancy(依赖)
generalization:继承关系,比如老虎是动物的一种

realization:类与接口的关系,类是接口的所有特征和行为的实现

association:拥有关系,比如老师的学生

aggregation:整体和部分的关系,引擎是车的一部分

compisition:跟aggregation一样,但是比aggregation关系强,比如公司要是没有了,部分一定就没有了

dependancy:使用关系,比如我用(玩)电脑


System sequence diagram(系统时序图),描述了在特定场景下(use case)系统与用户是具体如何交互的(时间和顺序)
SSD 跟SD(sequence diagram)是有区别的,SSD把system当作黑盒,不管它内部的东西。SD而主要是以对象之间的交互为主。
而ssd和sd内的元素也不同




design model
在domain model的基础上每个类都增加了function以及relationship之间的名字
参考:https://blog.csdn.net/davidwillo/article/details/73294409
作者:victor