软件设计模型

 软件设计模型

在面向对象的设计中,几个重要的思想就是抽象、继承、封装,在分析和设计时同样要遵循这些原则。分析过程是对需求进行分析,产生出概念模型,此概念模型和设计阶段的模型是不同的,概念模型停留于业务层面,而设计模型则为所设计的概念模型提出技术级别的解决方案。

软件设计模型主要分为三种:概念模型,域模型,数据模型。三者之间的关系如下:

一:概念模型

概念模型不依赖于具体的计算机系统,他是纯粹反映信息需求的概念结构。
建模是在需求分析结果的基础上展开,常常要对数据进行抽象处理。常用的数据抽象方法是‘聚集’和‘概括’。
ER方法是设计概念模型时常用的方法。用设计好的ER图再附以相应的说明书可作为阶段成果。
概念模型描述了每个实体的概念与属性,以及实体之间的关系。在这个阶段,并布描述实体的行为。

创建概念模型的目的是更好的理解问题域,识别系统中的实体,这些实体在设计阶段很有可能变成类。

二:域模型

域模型模式的作者 Martin Fowler 给出了以下定义(Fowler,2003 年): 融合了行为和数据的域的对象模型。
域模型是面向对象的。
构成域模型的基本元素就是域对象。域对象,即Domain Object,是对真实世界的实体的软件抽象。域对象还可以叫做业务对象,即Business Object 。

(1)域对象的分类:

实体域对象
    实体域对象可以代表人、地点、事物或概念。
过程域对象
    过程域对象代表应用中的业务逻辑活流程。
事件域对象
    事件域对象代表应用中的一些事件。

(2) 域对象之间的关系
关联
    关联指的是类之间的引用关系,这是实体域对象之间最普遍的一种关系。关联可以分为一对一、一对多和多对多关联。
依赖
    依赖指的是类之间的访问关系。
聚集
    聚集指的是整体与部分之间的关系。
泛化(也称一般化)
    泛化指的是类之间的继承关系。

三:数据模型

数据模型所描述的内容包括三个部分:数据结构、数据操作、数据约束。
1)数据结构
:数据模型中的数据结构主要描述数据的类型、内容、性质以及数据间的联系等。数据结构是数据模型的基础,数据操作和约束都建立在数据结构上。不同的数据结构具有不同的操作和约束。
2)数据操作:数据模型中数据操作主要描述在相应的数据结构上的操作类型和操作方式。
3)数据约束:数据模型中的数据约束主要描述数据结构内数据间的语法、词义联系、他们之间的制约和依存关系,以及数据动态变化的规则,以保证数据的正确、有效和相容。

到目前为止,关系数据库仍然是使用最广泛的数据库,它存储的是关系数据。关系数据模型是在概念模型的基础上建立起来的,用于描述这些关系数据的静态结构。它由以下内容组成:

  • 一个或多个表
  • 表的所有索引
  • 视图
  • 触发器
  • 表与表之间的参照完整性

四:域对象的持久化概念

当实体域对象在内存中创建后,它们不可能永远存在,最后,它们要么从内存中清除,要么被持久化到数据存储库中。内存无法永久性地保存数据,因此必须对实体域对象进行持久化,否则如果对象没有持久化,用户在应用运行时创建的信息将在应用结束运行后随之消失。

并不是所有的域对象都需要持久化,通常只有实体域对象才需要持久化,而过程域对象不需要持久化。

狭义的理解,“持久化”仅仅是指把域对象永久保存到数据库中;广义的理解,“持久化”还包括和数据库相关的各种操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值