EA窍门——如何设置不同包中元素之间的关系
在画EA图的时候,D层的写好的类需要实现接口层的类,因为我已经建好包了,但是不同包之间的元素如何建立关系呢??由于之前我是用rose来画图的,这次用EA,我可以说完全陌生。在查找资料过程中发现EA超级强大。
一、解决工具
官网(了解大体流程,查看相关文档,视频)我自己安装的EA打开官网后是英文版的,后来找到了中文的官网。 网址:http://www.sparxsystems.cn/resources/ |
谷粉搜搜(个人比较喜欢用这个搜索引擎) |
百度文库、博客 |
二、解决内容【关系矩阵】
1.使用关系矩阵的原因:
关系矩阵可以让你创建和浏览关系,而不用考虑它们从属于那个包或图。它可以应用到任何一种元素,但是有两个原因使得它对需求有特别的功用:
1) 用大型系统定义,需求可能被定义在不同的有独立关系的包和图里。关系矩阵可以用来设置这些关系,否则它们需要在图中来手动定义。 |
2) 在开发阶段进行时,需求下的每一个元素,诸如用例,类等等,需要被需求组或指定需求进行根定义。这个连接对追朔跟踪性至关重要。 |
2. 关系矩阵图
在上图中笔者通过关系矩阵实现了DAL包中的类“实现”IDAL的关系。如图,DAL:StudentImpl通过关系矩阵 “实现” IDAL:IStudnet。所以在设计D层类图的时候便不用添加其方法,如下图:
这样,只要画出上图这样子程度就可以生成完整代码,无需再添加方法。
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '' '' StudentImpl.vb '' Implementation of the Class StudentImpl '' Generated by Enterprise Architect '' Created on: 03-5月-2015 10:40:37 '' Original author: tqq113 '' ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '' Modification history: '' '' ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Option Explicit On Option Strict On Imports IDAL.IDAL Namespace DAL Public Class StudentImpl Implements IDAL.IStudent ''' ''' <param name="enStudent"></param> Public Function CheckStudentMgr(ByVal enStudent As StudentEntity) As List(Of StudentEntity) Implements IStudent.CheckStudentMgr CheckStudentMgr = Nothing End Function End Class ' StudentImpl End Namespace ' DAL总结:
事实上,我要是理解的没错的话,应该还是可以用视图来解决。我觉得EA很强大,在网站上我也看了不少让我惊奇的东西,这个就算是抛砖引玉吧。通过这件事情我认为,当我们拿到一个新东西了之后,不要一味按照自己的理解去做,要了解它的特性等,有助于我们更加高效的使用他。