软件工程之系统建模篇【设计实体类型模型】

 本文主要介绍实体类模型的设计过程,首先识别类及类之间的关系,然后画出类图和包图,最后识别类的属性和操作。类是面向对象方法的一个全新概念,类模型是面向对象分析的核心,实体类位于系统结构的商业规则服务层。实体类是系统需要持久保存的对象最终要映射到数据库。实体类模型用类图和包图描述。

1、类的识别

    1.1 类的识别

  识别类币识别用例要困难的多,实体世界中,一切都是对象,识别起来并非易事。我们在程序设计过程中,一般是用名词识别方法,然而你也可以用其他的方法。用名词识别法时,从系统中找出名词、名词短语或名词性代词,他们往往对应着类。其中单数名词可以识别为对象,而复数名词则可以识别为类。并不是每个名词都对应着一个对象或类,可能有的名词是其他对象的一个属性,也可能几个名词对应着一个对象或类。

  1.2  识别过程示例 

  第一步,从系统描述中找出描述问题域实体的名词。如:草拟人、草搞文件、办理人、公文、机关领导、办理意见、审核意见、复核人、签发人、分发人、发文登记表等

  第二步,从候选对象或类中筛选去掉一部分名词。如:公文比较笼统,可以去掉。办理人、复核人、签发人、分发人等可以识别为一个类“用户(User)”。

2、类的关联

  要建立类模型,不仅要识别出类,还要识别出类与类之间的关系。显示的关系可以从用例中找到,如:用户(User)涉及会议参加人(Attendee),而隐式的关系在用例中没有明确说明,这需要项目分析员进一步去分析。

3、类图

  通过以上步骤可以识别出系统的类以及类之间的关系,现在可以画出类图。先画出单个类图,分析每一个类与其他类的关系,再画出系统类图,从而建立实体类模型。

4、包图

  在结构化方法中,划分子系统最常用的方法是功能分解。与此相对应,UML则提供了按用例类实现对问题域的分解,并用包图来管理模型元素。包是一种分组机制,它将UML模型元素中紧密相关的部分放置在同一个包中,实行集中管理,以减小系统的规模。

5、类属性

  类的属性一般用于描述类的特征,在识别属性时,要从类的语义完整性的角度来斟酌取舍。所谓语义完整性,是指类的属性能够在一起完整地描述一个类所具有的特性和特征。从系统找出的名词,并不都对应着一个对象或类,有的名词可能是其他对象的一个属性。类的属性最后映射到数据库中的数据表的列,与类的识别一样,类属性的识别也需要往复多次才能完成。

  与用户相关的信息中,本系统只关心姓名、部门、职务、用户唯一标识、访问权限、密码对应的属性分别为name、department、occupation、account、accessAuthority、password。

6、类操作

  类的操作定义了类支持的行为。如用户(User)类应该具有登录操作,草拟公文等你操

原文地址:https://www.cnblogs.com/chedahui/p/10001031.html

时间: 2024-10-10 01:49:57

软件工程之系统建模篇【设计实体类型模型】的相关文章

数据库设计与 ER 模型 - 数据库系统原理

数据库系统生存周期 数据库应用系统的开发是一项软件工程,一般具有信息的采集.组织.加工.抽取.综合.传播等功能,但又有自己的特点,所以称为 数据库工程. 数据库应用系统从开始规划.设计.实现.维护到最后被新的系统取代而停止使用的整个周期,称为 数据库系统生存期. 数据库系统生存期一般可划分成下面七个阶段: (1)规划:是数据库系统生存周期的第一步.在规划阶段需要做的工作是:通过了解用户的实际需求,明确该系统需要实现的目标和任务,确定数据库系统的总目标. 规划阶段需要做的工作有: a. 系统的调查

.NET使用DAO.NET实体类模型操作数据库

一.新建项目 打开vs2017,新建一个项目,命名为orm1 二.新建数据库 打开 SqlServer数据库,新建数据库 orm1,并新建表 student . 三.新建 ADO.NET 实体数据模型 这里点击 新建连接,新建数据库连接.其实服务器名输入 . 代表本地服务器,身份验证选择默认的Windows身份认证. 选择我们的创建好的数据库 orm1 . 记住这里的连接名 orm1Entities ,后面写代码需要用到. 这里记得勾选表 点击完成就OK了,有可能会弹出下面的警告,点确定就好了.

asp.net core系列 28 EF模型配置(字段,构造函数,拥有实体类型)

原文:asp.net core系列 28 EF模型配置(字段,构造函数,拥有实体类型) 一. 支持字段 EF允许读取或写入字段而不是一个属性.在使用实体类时,用面向对象的封装来限制或增强应用程序代码对数据访问的语义时,这可能很有用.无法使用数据注释配置.除了约定,还可以使用Fluent API为属性配置支持字段. 1.1 约定 public class Blog { // _<camel-cased property name> private string _url; public int

【自考】数据库系统原理(二)——详解(数据库设计和ER模型)

万事万物都有一个生存周期,当然数据库系统也不例外! 数据库设计和ER模型这一章主要是依据数据库系统生存周期,对其中的设计阶段展开来进行讲解的. 我们先来看看数据库系统的生存周期: 如图所示,数据库系统生存周期划分为五个阶段:规划,需求分析,设计,实现,运行维护.其中设计阶段包括,概念,逻辑,物理三个方面的设计. 后面两节的内容主要是针对设计阶段的概念设计和逻辑设计以及从概念设计到逻辑设计的转换来展开的. 一.概念设计(ER模型)    第一章里讲过了数据抽象的四个模型:概念数据模型,逻辑数据模型

如何运用领域驱动设计 - 实体

原文:如何运用领域驱动设计 - 实体 目录 概述 何为实体 似曾相识 你确定它真的需要ID吗 运用实体 结合值对象 为实体赋予它的行为 尝试转移一部分行为给值对象 愿景是美好的 现实是残酷的 总结 概述 本文将介绍领域驱动设计(DDD)战术模式中另一个常见且非常重要的概念 - 实体.相对战术模式中其他的一些概念(例如 值对象.领域服务等)来说,实体应该比较容易让人理解和运用.但是我们如何去发现所在领域中的实体呢?如何保证建立的实体是富含行为的?实体运用时又有那些注意的细节呢?本文将从不同的角度来

数据库设计之E-R模型转换成关系模型

个人重构版机房收费系统中需要自己重新设计数据库,那么如何设计数据库呢?这也是咱们自考中一门重要的课程<数据库原理>,对于考过这科的同学想必已经从中受益,直接就可以学以致用.我是今年10月份考这本书,所以就先实践一把. 原先看过的耿建玲老师的视频,里面重点讲解的是数据库内部的具体操作,没有怎么涉及到数据库设计中不可或缺的一个步骤即从概念模型到逻辑模型的转换.进入正题: 背景:数据系统生存期 我们把数据库应用系统从开始规划.设计.实现.维护到最后被新的系统取代而停止使用的整个期间,称为数据库系统生

PowerDesigner设计实体类图解

关于PowerDesigner的介绍详见百科http://baike.haosou.com/doc/5497977.html,今天主要以图片指导如何用PowerDesigner设计实体类以及如何将实体类转换成物理模型生成数据库. 创建实体类 在工具栏中选择你要使用的工具,在这里选择"class"创建类图.之后即可在对应的画板上点击画类. 有了类就可以设置类的名称.属性.方法. Powerdesigner提高自动生成代码的功能. 这样实体类就设计好了,这里只设计到简单的设计类的属性问题.

系统管理模块_部门管理_设计(映射)本模块中的所有实体并总结设计实体的技巧_懒加载异常问题_树状结构

系统管理模块_部门管理_设计本模块中的所有实体并总结设计实体的技巧 设计实体流程 1,有几个实体? 一般是一组增删改查对应一个实体. 2,实体之间有什么关系? 一般是页面引用了其他的实体时,就表示与这个实体有关联关系. 3,每个实体中都有什么属性? 1,主键.推荐使用代理主键 2,关联关系属性.在类图中,关联关系是一条线,有两端,每一端对应一个表达此关联关系的属性.有几个端指向本类,本类中就有几个关联关系属性. 3,一般属性.分析所有有关的页面,找出表单中要填写的或是在显示页面中要显示的信息等.

权限模块_整体方案说明_设计实体&amp;映射实体_实现初始化权限数据的功能

权限模块_整体方案说明 要点说明 权限就是控制功能的使用(功能对应着URL). 对功能的控制就是对URL的访问控制. 在我们的程序中,一个功能对应一个或两个URL: 1,例如列表或删除功能,只对应一个URL. 2,例如添加或修改功能,对应两个URL:..add, ..addUI 权限模型 权限方案: 用户 *----* 角色 *----* 权限 与权限相关的功能具体有哪些: 初始化数据:... 分配权限:... 使用权限:... 具体有哪些功能 初始化数据(安装) 权限数据. 超级管理员. 分配