Overview of Rational Software Architect for WebSphere Software Version 7.5

This article focuses on the new modeling and transformation features in IBM® Rational® Software Architect for WebSphere Software Version 7.5. New IBM® Rational® Application Developer features around EJB3, JPA, Web 2.0 and other areas are detailed in the companion articles referenced at the end of this article.

Steve Arnold (steve.arnold@uk.ibm.com), Senior IT Specialist, IBM

Steve is a senior technical consultant who works for IBM Rational in the U.K., where he has worked since 2000. His main areas of expertise are UML design and Model-Driven Architecture (MDA), plus he has a strong interest in Eclipse and product extensibility.


developerWorks Professional author
        level

26 September 2008

Also available in Chinese Russian

Rational Software Architect for WebSphere Software V7.5 overview

The Version 7.5 release of IBM® Rational® Software Architect for WebSphere Software is a synchronised release of the IBM Rational Modeling Platform, built on top of Eclipse V3.4. It has three main themes:

  • Abstraction: Essentially modeling with particular focus on IT resource modeling and DSL support
  • Automation: EJB3 (Enterprise Java™Beans technology) and JPA (Java™ Persistence API) transformations, improved transformation authoring, architectural governance for SOA (Service-Oriented Architecture), and IBM® Rational® Asset Manager integration
  • Simplification: UML viewpoints and capabilities, IBM® Rational® Team Concert integration with collaborative debugging and BIRT (Business Intelligence and Reporting Tools) reporting

The rest of this article will explore each of these themes in detail, and describe some of the key new capabilities in Rational Software Architect for WebSphere Software.

First, let's touch on some of the key benefits that this release brings to you:

  • Greater model agility and productivity, and improved communication among all project stakeholders: By leveraging new capabilities for configuring "just enough" UML to be exposed in the tools; by quickly and easily creating UML-based domain-specific modeling languages that reflect the particular concerns of your business; by generating complete tooling for such languages with the click of a button.
  • Improved communication between development and operations: Through the use of the new IT Resource Modeling features, you can now find potential deployment problems earlier and reuse best practice configurations across your organization.
  • Save time with architecture and model reuse: Through the ability to treat UML models (or subsets) and IT resource topologies and templates as architectural building blocks, by publishing them to and searching and downloading them from Rational Asset Manager.
  • Improved productivity with patterns and transformations: In this release, it is even easier to build patterns and transformations, and thus to get productivity improvements by automating the generation of repetitive models, code, xml, or other files.
  • Architectural Governance for SOA: This version improves the integration with IBM® WebSphere® Business Modeler, and also the transformations for generating WSDL (Web Services Description Language), SCDL (Service Component Definition Language), and BPEL (Business Process Execution Language) to IBM® WebSphere® Integration Developer. This means that you can build and manage service models for your enterprise in Rational Software Architect for WebSphere Software, allowing you to have an iterative, well-architected approach to building a SOA.

Abstraction

In this theme we have provided new support for modeling IT Resources, and how those resources will be used by software designs, so that you can model the deployment of a system into test, staging, and production environments. We've also made it much simpler to do modeling and to build your own domain specific modeling languages to represent key abstractions in your business.

IT resource modeling

What is a deployment topology?

A deployment topology is a model container for units of deployment, imports to other topologies, and links and constraints between units. The unit of deployment defines a set of capabilities that it exposes, and a set of requirements that are to be fulfilled for deployment. Topologies can also contain conceptual units, which are used to define a contract that constrains the concrete units that can be deployed to satisfy that logical topology. For instance, you might define a conceptual unit for a database with certain throughput requirements. Then, in the physical model, you could define an instance of an IBM® DB2® database that met those requirements.

Let's start with looking at the new IT resource and software deployment modeling support.

One of the key challenges that any successful project faces is how to make sure that the application is successfully deployed into the production environment. Therefore, support was added in Rational Software Architect for WebSphere Software to address the following challenges:

  • Poor communications between development and operations
  • New development is not checked against the target environment until late in the development cycle
  • Difficulty in enforcing organizational deployment standards and best practices

Version 7.5 of Rational Software Architect for WebSphere Software has added support for describing deployment (IT resource) topologies in a semantically rich form that can easily be shared between architects in development and production.

The deployment architecture platform supports logical, physical and concrete topologies, with the ability to define constraints between the various topologies. We also provide validation rules to ensure that the requirements of to-be-deployed units are matched to the capabilities of the target infrastructure. The tools actually step you through the process of verifying that all requirements are satisfied prior to physical deployment. This ensures there will be no problems when the application is deployed, saving you hours or even days of last-minute rework. When you deploy to a succession of different environments (unit test, integration test, performance test, staging, production) these savings can really add up.

Figure 1. Example infrastructure topology model
Infrastructure Topology

Support has also been added for creating what we call "template topologies" – these are essentially patterns that represent your organization's standard deployment structures. These patterns can be added to the product's drawing tool palette, and then reused or enforced in all of your deployment topologies. This allows you to define your standard deployment configurations, and to make sure that new applications are designed and written to work using those configurations. This reduces the risk that an application will not work in the target environments.

The deployment architecture platform has all of the usual integrations that you would expect from a model in Rational Software Architect for WebSphere Software. You can integrate with requirements in IBM® Rational® RequisitePro®, share models through Rational Team Concert, IBM® Rational® ClearCase®, CVS (Concurrent Versions System), and other Eclipse-conforming configuration management products. You can also create patterns or or treat your topology models as reusable assets in Rational Asset Manager.

UML-based domain-specific language (DSL) support

What is a domain-specific language?

The term domain-specific language (DSL) has become popular in recent years to indicate a programming language or specification language dedicated to a particular problem domain, a particular problem representation technique, or a particular solution technique. UML-based DSLs are profiles that can be used to customize the modeling tool so that you can specify a particular domain. Often, the DSL is used as the input to a transformation, to generate code and other files in a particular pattern.

Previous versions of Rational Software Architect supported the ability to create a UML profile and apply it to a model. However, if you wanted to add palette drawers, right click menus, property sheets, and other profile-specific tools, you needed to work with a specialist in Eclipse plug-in development.

This release automates the production of an Eclipse plug-in that provides all these tools and more - thus making it simple to customize Rational Software Architect for WebSphere Software to handle new UML based domain-specific languages.

When you combine this with the viewpoints and UML capabilities features that let you elide standard UML tools (see below, under "Simplification") you can very easily customise the Rational Software Architect for WebSphere Software user interface to show only your DSL. This raises the productivity of your analysts and designers and enables much more effective communication with non-technical project stakeholders who may not understand UML but will relate very readily to the visual depictions of problem and solution domain concepts that may already be well understood in your business. In the diagram below you can see a UML Profile, and its generated palette draw.

Figure 2. UML profile and generated palette Drawer
UML Profile and Generated Palette Draw

Automation

This release has also provided more capabilities to help you automate the generation of code and models using transformations. There are new Java™ Persistence API (JPA) and EJB3 transformations. In addition, the Version 7.5 release functionality improves the ease with which you can customize existing transformations, as well as build your own custom transformations and patterns. In this release it is now easier to reuse parts of models with the new integration to Rational Asset Manager.

New transformations

Rational Software Architect for WebSphere Software V7.5 now includes four new transformations to support JEE5 and EJB3.

  • UML to JPA
  • UML to EJB 3.0
  • JPA to UML
  • EJB 3.0 to UML

They all extend the standard Java transformations, but also come with their own profiles, which allows you to customize how your model transforms to code, as shown in Figures 3 and 4.

Figure 3. UML and JPA transformations
UML and JPA Transformations
Figure 4. UML and EJB3 transformations
UML and EJB3 Transformations

The V7.5 release also improves the reconciliation dialog, so that when you next apply the reverse transformation it remembers the settings from the previous reconcile session. This means you only have to mark the new elements that are required to move back into the model, which reduces the time to execute the transformation.

Improved transformation authoring

Transformations in Rational Software Architect

Rational Software Architect for WebSphere Software provides two transformation technologies. The first is model-to-text, which uses a technology called JET2 (Java™ Emitter Templates) from eclipse.org. This approach takes a series of example text files, and then turns them into a set of templates driven by an XML file. This means that similar files can be easily generated just by creating a new XML driver file and running the transformation.

The second kind of transformation is model-to-model, which you can use to create any kind of UML or XML file from another. This technology is supported with a graphical mapping editor, which you can use to create a transformation that takes a UML2 model, and then invokes a JET2 transformation. This enables you to create files from a UML model quickly. Both approaches support a Model-Driven Architecture and Pattern Based Engineering approach. Find out more from this Redbook...

The V7.5 release has made some significant improvements to transformation authoring. First, it provides a first class JET2 editor, with features such as code completion and syntax highlighting, as shown in Figure 5. Second, there are some new wizards that automate some of the steps when you front-load a JET2 transformation with UML. Previously, this took 20 minutes if you knew what you were doing (or longer if you were doing this for the first time) whereas now it is little more than a button click. So in combination with the improvements to the model-to-model mapping editor, this makes it much simpler for you to chain together UML and JET2 transformations, as shown in Figure 6.

Figure 5. JET2 editor with syntax highlighting and code completion
JET2 Editor with syntax highlighting and code completion
Figure 6. JET2 Wizard saves about 20 minutes when linking to UML models
UML to JET2 wizard

Third, the model to model authoring has also been much improved, with a lot of new capability available directly from the mapping tool, which means you have to revert to code less often. All told, the transformation authoring improvements make it much quicker to build transformations which means you can realize return on investment in a broader range of development scenarios, including small projects, and projects where you might use code generation techniques "early and often" in an agile process. Note that we used these new authoring technologies ourselves to develop some of the new build-in transformations such as the XML transformation.

Architectural governance for SOA

Providing architectural governance to an SOA has several aspects. One is ensuring that when business services are designed and built, they are correctly aligned to the business process (which might for instance be defined in IBM WebSphere Business Modeler). Another is ensuring that the service specifications tied to such business contracts can be iteratively exported to a SOA application orchestration tool such as WebSphere Integration Developer. Yet another is the "magic in the middle" where steps are taken to ensure that the candidate services (as suggested by the tasks in the business process definition) are properly factored in terms of granularity, that existing application assets are re-purposed as services where appropriate, and that the architecture of the service providers is consistent, scalable, secure, reusable, and a host of other "-ables".

To support the first aspect in the integration between IBM WebSphere Business Modeler and IBM Rational Software Architect for WebSphere Software, we've added support for human and business rule tasks, and also made improvements to the merge on re-application of a transformation, thus making it easier to support iterative development.

To support the second aspect we have done a number of things. By strengthening pattern and transformation authoring tools we have made it easier to develop automation assets that generate model refinements and/or code that inject the kinds of "-able" architectural concerns noted above. By introducing three new transformations to go from XML, Java (POJOs), and EJB Session Beans to UML, we provide new support for harvesting and repurposing existing assets as services from which you can then generate artifacts such as SCDL, BPEL and WSDL that are consumable by IBM WebSphere Integration Developer. This means you can quickly build a service model out of your existing assets, and then generate the artifacts you need to support an SOA quickly and simply.

Rational Asset Manager Integration

Rational Asset Manager

Rational Asset Manager helps create, modify, govern, find, and reuse any type of development assets, including SOA and systems development assets. It reduces software development costs, and improves quality by facilitating the reuse of all types of software development related assets. Find out more about Rational Asset Manager here.

A new integration between Rational Software Architect and Rational Asset Manager was added in the V7.5 release. This allows you to publish models or subsets of models ( i.e. model fragments ) to Rational Asset Manager, and also to import model artifacts from Rational Asset manager into your current modeling workspace. Thus you can treat aspects of models as reusable specifications or "architecture building blocks" and share them consistently across any number of projects, leveraging a governance workflow defined and supported by Rational Asset Manager. The same treatment can be given to deployment topologies and templates. Finally as part of the publishing process, we also generate a web published view of the model contents, which allows people searching for assets to quickly examine the models to determine whether the assets meet their needs.

Figure 7. Submitting a model to Rational Asset Manager
Submitting a model to RAM

Simplification

Rational Software Architect for WebSphere Software V7.5 simplifies software delivery with support for Rational Team Concert.

Rational Team Concert support

Rational Team Concert

IBM Rational Team Concert is a collaborative software delivery environment that empowers project teams to simplify, automate, and govern software delivery. Automated data collection and reporting reduces administrative overhead, and provides the real-time insight required to govern software projects effectively. Dynamic project provisioning enables day one productivity, while real-time collaboration helps significantly reduce scrap and rework. Rational Team Concert extends the capabilities of the Team with integrated work item, build, software configuration management (SCM) and the collaborative infrastructure of the Jazz Team Server. Find out more about Rational Team Concert here.

There are several aspects to the Rational Team Concert support in Rational Software Architect for WebSphere Software. First, the V7.5 release packages the full Rational Team Concert client with Rational Software Architect so that you can connect to and participate in a Rational Team Concert project immediately following installation.

Second, it takes advantage of the Jazz server, so that if Rational Team Concert is being used, you will be able to set up a collaborative debug, as shown in Figure 8. This provides the ability for multiple team members to participate in a joint debugging session, and pass control between participants to collaboratively debug a problem. This should be a very useful feature where defects could be caused by multiple components, written by different team members who are potentially geographically dispersed.

Third, the Jazz-based configuration management workflows supported by Rational Team Concert, support not just code but also models, including invocation of Rational Software Architect for WebSphere Software’s unique visual model compare-merge capabilities. It is also possible to create Jazz work items from model reminders, and link model elements to work items, as shown in Figure 9.

Figure 8. Collaborating on a debug session
Collaborating on a debug session
Figure 9. Integration of models and work items
Integration of models and work items

Viewpoints and capabilities

Since Rational Software Architect began supporting UML2, its functionality recognized the importance for modelers to be able to simplify the user interface, and only expose those aspects of the UML that they actually use. This release has broken the UML up into a series of capabilities, as shown in Figure 10. You now have the choice to switch off capabilities in order to hide those parts of UML from the user interface. You can switch them off at a model level, for example, if you wanted to create a Use Case model, you could only switch on the capabilities for Actors, Use Cases, and Use Case diagrams to simplify the user interface of that model.

We have also introduced the idea of a viewpoint, which is a standard collection of capabilities for different activities that can be switched on-the-fly regardless of what specific model you are working on. For instance we provide the Analysis and Design viewpoint which only provides user interface options to create Class, Use Case, Activity and Sequence diagrams with their corresponding UML elements. Viewpoints are also defined for IT resource and deployment modeling tasks. And viewpoints are fully customizable, including the ability to define your own viewpoints.

Figure 10. UML capabilities
UML Capabilities

BIRT reporting

What is BIRT?

BIRT is an open source Eclipse-based reporting system that integrates with your Java and JEE application/development products to produce compelling reports. BIRT provides core reporting features such as report layout, graphing, data access, and scripting. Find out more...

The last main new feature of Rational Software Architect for WebSphere Software V7.5 is the introduction of BIRT reporting across UML models. This feature exposes the UML models as BIRT domains, and it allows the BIRT authoring tools to be used to construct custom reports, including diagrams, from a UML model, as shown in Figure 11.

Figure 11. Example BIRT report
Example BIRT Report

General updates

This final section about the new capabilities simply highlights some of the many other features that are particularly interesting in this release.

The first noteworthy thing is we've worked hard on usability issues, addressing 200+ customer requests around performance, model management and diagramming. In particular the rectilinear routing is much improved, with the ability to attach lines to nodes distributed around the edge of shapes and to more easily manipulate bend points. We've also improved the auto layout function, added grouping support, line width controls, and the ability to move elements around on the drawing surface through the arrow keys among many other improvements. WYSIWYG print preview with scaling and accurate representation of page breaks is now available.

On visualized static Java method sequence diagrams, you can now drill down on methods to produce new diagrams, as shown in Figure 12. Also, you can copy visualized methods back into a model to continue working on them, or to update the model to reflect what the code now does, which will reduce the time needed to keep models up to date and useful.

Figure 12. Visualized static sequence diagrams
Vizualized Static Sequence Diagrams

There have also been some new additions to sequence diagrams (as shown in Figure 13), including:

  • Gate support
  • Copy support between diagrams and interaction uses
  • The ability to extract sequence diagram elements into a separate interaction use
  • General improvements around signature layout and guard specification
Figure 13. Sequence diagrams with gate support and method signatures
Sequence Diagrams with Gate Support

Rational Software Architect for WebSphere Software has extended the model traceability functionality (that was released in IBM® Rational® Software Modeler Version 7.0.5) to also allow exploration of all RequisitePro traceability, as shown in Figure 14. So now you can build diagrams showing visualized code, tracing up through model elements to use cases, and then from the use cases up through the requirements structure to high-level business requirements or processes.

Figure 14. Traceability diagrams using requirements traceability
Traceability diagrams using Requirements Traceability

A number of enhancements around the model merge capability have also been implemented, and one especially is the ability to do a sparse full-context merge. This effectively shows only the changes that need to be merged. Therefore, on large models where you do not really expect too many clashes, it can make merging a lot simpler and faster.

It also enables larger models to be merged. For example, an IBM customer has a model with over 5,000 fragments, and which consumes over 100 MB of disk space. The model could not be merged using Rational Software Architect V7.0, but now it can be merged using Rational Software Architect for WebSphere Software V7.5.

Finally, there are more features to enable existing IBM® Rational Rose® customers to migrate. One of the key new ones is the ability to generate a tree view in the Web-published output for easier navigation of the Web-published model, as shown in Figure 15. This view was available in Rational Rose, but not with previous versions of Rational Software Architect.

Figure 15. Web publish with tree control
Web Publish with Tree Control

Supported platforms

This article will finish with a summary of the supported hardware and software requirements.

Supported Operating Systems
Microsoft® Windows® XP Professional SP1+
Windows XP Professional 64 Bit Edition
Windows 2000 Professional SP4+
Windows 2000 Server SP4+
Windows 2003 Advanced Server SP4+
Windows 2003 Enterprise SP1+
Windows 2003 Standard SP1+
Red Hat Enterprise Linux™ Workstation 4.0
Red Hat Desktop Version 4.0 (32-bit mode)
SuSE Linux Enterprise (SLES) Version 9 (All SP; 32-bit mode)
Novell Linux Desktop Version 10 (32-bit mode)
Recommended Hardware
Processor: Intel® Pentium® 4, 1.4GHz or higher
Memory: 1.5 GB+ RAM
Video: XGA 1280 x 1024
Microsoft mouse or compatible pointing device
Required Disk space: 3GB
A further 6GB is required if you download the product package to install.
If you extract the product package on your machine, a further 5-6GB is required.

For a complete list of operating system and system requirements, please read the Installation Guidelines that accompany the product.

Resources

Learn

Get products and technologies

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Rational software on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Rational
ArticleID=341423
ArticleTitle=Overview of Rational Software Architect for WebSphere Software Version 7.5
publish-date=09262008