概述
此工具向导假定您已按 RSx 模型构造指南所述定义了实施模型的顶层结构。此工具向导中的各步骤允许对这一初始结构进行优化。
在本工具向导中执行以下步骤:
推荐的方法是 MDD - 模型驱动开发(请参阅模型驱动开发和
Model Driven Architecture)。如果开发团队遵照这种方法,实施模型将由设计模型组织强力驱动。确定实施子系统后,应将它们作为设计模型中的包或子系统进行建模。
一般而言,当您确定设计模型中的包时,应考虑它们将如何映射到特定于工具的项目。较大的子系统通常映射到它们自己的项目,比较细分的包通常映射到项目中的源文件夹。请参阅 RSx 模型构造指南中讨论项目结构以及实施和设计模型的内部组织的那些部分。
实施视图可以通过 <<perspective>> 包来定义,它们包含
显示子系统之间依赖关系的图。根据应用于设计模型的转换的种类,您定义的包/子系统之间依赖关系可以映射到 3GL 导入声明和项目元数据中的项目依赖关系声明。
一旦生成了代码,就可以制作更详细的 UML 图来显示实施级的构造体和它们的关系,方法是直接在项目中创建类图并将实施工件拖到类图上进行填充。请参阅 UML Visual Editor for Java 的相关联机帮助主题。
如果您需要从代码库中引用特定类、接口和包等,以便在实施模型中表示它们,您可以使用该产品的代码可视化功能来创建这些表示。 如果您在设计和开发 J2EE 应用程序,下列 JAR 文件包含一些您可能感兴趣的文件:
-
j2ee.jar、jsf-api.jar、soap.jar 和 soap-sec.jar(都在 lib 目录下)
-
core.jar、xml.jar 和 security.jar(都在 java\jre\lib 目录下)
当您需要在模型中引用其中一个库的元素时,执行下列步骤:
-
创建一个新的 Java 项目,并添加对库的引用
-
打开一个您想要添加可视化元素的图
-
切换到 Java 透视图
-
查找您要添加到模型中的元素(包、类、接口等)
-
右键单击元素,并选择“可视化 > 添加到当前图”
如果需要在任何代码生成之前表示实际的项目和包,而您希望代码和相关文件位于这些项目和包中,那么实施概要模型可能是有用的。有关更多信息,请参阅 RSx 模型构造指南白皮书中的实施模型相关主题。
以下一系列步骤会帮助您调整实施子系统:
-
使用下列方法识别引起问题(例如循环依赖关系)的子系统:
-
-
主题图和浏览图
-
体系结构发现
-
代码复审/结构代码分析
-
创建新的子系统
-
将已识别的元素移动到新的子系统中
-
绘制新的依赖关系
在 MDD 环境中,实施模型的依赖关系将极为精确地反映设计模型中显式或隐式定义的依赖关系。具体细节则取决于应用于设计模型的代码生成转换。
除了输入模型,执行转换还需要其他一些工件。转换过程需要转换定义和转换规则。
转换规则描述了转换过程,该过程将源模型中的一个元素转换为目标模型中的零个或多个元素。特别是它能把一个抽象层中的元素映射到更低抽象层中更为详细的相应位置。
如果您使用手动转换 - 您要确保在开发者们将设计模型转换成代码时,您向他们提供了足够的指导信息。从根本上说,您需要提供包括一组转换规则在内的转换定义。这一附加指导信息可采取下列形式:
-
已记录的概要文件中的元素
-
模型中的注释
-
软件体系结构文档中的附加信息
-
开发指南
如果使用了实施概要模型,就可以在这里显示项目和包之间的预期依赖关系,这对于确定系统构建需求将是很有帮助的(请参阅 RSx 模型构造指南)。
在 MDD 环境中,根据应用于设计模型的转换的种类,可以生成不同类型的可部署工件。例如,从 <<control>> 和 <<entity>> 类这样的元素中,可以为 J2EE
目标生成会话和实体 EJB,包括:实施类的代码和接口,以及关于将 EJB 分配到 EJB JAR、并将这些 JAR 映射到 EAR 的部署描述符内容。
您可以选择通过部署模型,在概念级别对可部署工件进行建模。如果您选择这样做,则将使用 UML 节点和工件进行建模。目前,和工具一起封装的转换没有利用这种图的语义来生成部署数据,因此您的图将是纯概念性的,并且仅用作文档。
您也可以选择在这种图中描绘实际的实施工件,方法是将它们拖入背景并(使用依赖关系)将它们连接到图中的概念性元素。
影响测试资产结构的一个主要考虑事项是确定如何创建测试资产。
可以选择使用“自动组件”测试功能来创建测试。如果是这样,则作为创建过程的一部分,会为您建立一个或多个单独的测试用例项目。使用这一特性的一个关键好处是您可以利用初始代码生成并使用代码的存根来驱动测试用例的创建。
保持以目录组或目录层次结构的形式组织项目存储库。建议将测试资产保存在能隔离不同种类的测试(单元测试、集成测试和系统测试)的独立测试目录中。
如果存在独立的实施视图,则必须保留该视图。RSx模型构造指南白皮书中提出的一般建议是使用 <<perspective>> 包,这些包所包含的图显示子系统之间的依赖关系。
您要确保子系统依赖关系(和其他依赖关系)在系统演进时继续遵循最佳实践。在该步骤结束时,通常使用体系结构发现和代码复审(特别是使用结构分析)来验证模型是否遵循了最佳实践。
如上文所述,您也可能希望花时间来引入一些定制的规则,它们可以用来强制实施所确定的依赖关系。在复审的手动部分,您要记录那些尚未开发的规则,并且将它们添加到这一组规则中,以便进行下次迭代。
将模型发布为 html 格式可能会有帮助。同时请注意,图可以复制到 Microsoft Word 和其他程序。
有关更多信息,请参阅 发布模型和 将模型发布到 Web 教程。
|