分析设计的讨论:软件建模的对象层次
软件建模的对象层次
软件建模是现实世界到软件世界的映射,可以多个视点观察,这里只说逻辑视点。
软件建模是分多个层次,这样才能阐述清楚问题,分析时可以清晰有序进行。
1.业务模型对象
实对象
引入了业务的元素,包括业务参与者、业务工作者、业务实体。
2.系统——分析模型对象
实对象
引入了系统的元素,包括操作界面、协作系统、内部子系统/包、数据库对象等。
3.系统——设计模型对象
[实对象]、[虚对象]
//实对象在设计因素的作用下,部分或全部转化为虚对象。
引入了设计元素,包括 gof 设计模式抽象出来的observer,builder等虚对象。
在设计制约条件下(性能、可使用性、可维护性、可升级性),
考虑了一些设计因素(对象内部的可见性、扩展性、子系统结构的划分合理性、系统/包之间的依赖)等。
备注:
实对象,是一种真实可见的具体的对象,实体。
虚对象,是一种为了某种目的抽象的对象,虚体。
[]表示可选项,0或多个。
简单的作了一点总结,能想我上面说的一样理解吗?要是错了,错在哪里?请指点!
另外,有经验的大哥们,能谈一下在系统建模开始,在业务模型的基础上,引入了系统的元素,包括操作界面、协作系统、内部子系统/包、数据库对象等。那么系统的元素还包括那些东西呢?设计的元素呢?大家举个例子,多多益善,最后我们一起总结一下。