UML软件工程组织

用Rational Rose和UML开发J2EE应用(二)
(来自Rational公司)
实现工作

  Rational Rose可让你直接从框图中产生, JavaBean, HTML, Servlet和EJB代码。例如,两个JSP间的<<include>>关系将会在导致在相应的JSP中产生<%@ include file="header.jsp" %> 。同样,<<Use Bean>>将会在JSP中产生<jsp:useBean id="cd" class="com.rational.cdshop.util.CD" scope="session">,这样就可使用CD JavaBean。

  在EJB方面,除了可为EJB2.0中的全部三种EJB产生代码外(以及符合EJB1.1的EJB),Rational Rose还提供了一些特性以简化EJB的开发。例如,在开发EJB时,其中一个较麻烦的是需要在接口和实现类中写方法的代码。Rational Rose提供了一个菜单的选项,你只需要按一下按钮就解决了。它还提供了一个"check and repair"菜单选项,可以验证定义的EJB的合法性(例如,remote接口中的remote方法和EJB实现类中的是对应的),如果不是,可以为你修复它们。

  Rational Rose中另一个和EJB相关的特性是Rational Quality Architect (RQA),可用作设计测试EJB。例如,可以使用RQA为EJB作单元测试。还可以使用在Rose中定义的顺序图来作多个EJB的测试。当依赖某个软件组件,但是它还未设计好,那么可以使用RQA来产生框架。

  为了确保可以用自己的条件来实现,而无需担心UML模型的改变,反之亦然,Rational Rose提供了一个内置的代码编辑器,用户可以设置同步的选项。例如,你可以选择一直保持同步。在这种情况下,每当你更新源代码并且保存时,Rose中的UML模型就会自动被更新。有些时候,你可以只是想看一下它们是如何处理的,并不想影响你的模型。在这种情况下,你可以在全局或者基于每个类的设置将同步关掉。

  当然,当谈到实现和编码时,你将需要一个好的IDE,例如Sun's Forte for Java或者Borland JBuilder。Rational Rose 2001a提供的主流IDE的深度集成和自动同步,所以可以在享受Rational Rose在UML模型和开发J2EE应用好处的同时,继续使用自己最喜爱的IDE。

  关于UML和J2EE的更多方面

  我们只是很简略地谈了一下使用UML作模型及开发J2EE应用。例如,通过session中涉及到的各种实体,你可以使用UML活动图来模型化session管理。

  另一个挑战是传达session EJB需要的正确操作调用顺序。一个顺序图可以标识某个情景,但是你需要大量的顺序图来表示组件支持的各种情景(有些人尝试使用带有控制和分支语句的顺序图,但是这样只会得到一个复杂和费解的顺序图)。另一方面,UML状态图提供了一个强大的功能,可以模型化和传达这些信息。通过状态图,你可以查看顺序图的每个情景,这样你就可以验证每个顺序图,并且看组件是否支持你需要用的操作。

  总结

  通过使用UML,你可以理解需求,作正确的分析和设计,并且在一个经过验证的规则上开发一个方案和作最佳的实现,从而可以明显的提升开发可扩展、易维护和可长时间使用的软件的机会。

  Rational Rose是仅有的可以支持全程建模及J2EE应用设计的UML模型工具。
 

版权所有:UML软件工程组织