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.
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
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
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
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
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.
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
Figure 4. 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
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
Figure 6. JET2 Wizard saves about 20 minutes when linking to UML models
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
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
Rational Software Architect for WebSphere Software V7.5 simplifies software delivery with support for Rational Team Concert.
Rational Team Concert support
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
Figure 9. 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
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
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
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
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
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
This article will finish with a summary of the supported hardware and software requirements.
For a complete list of operating system and system requirements, please read the Installation Guidelines that accompany the product.
- Understand more about JavaServer Faces tooling in Rational Application Developer Version 7.5 by reading this article What's new in JavaServer Faces tooling in Rational Application Developer Version 7.5?.
- Understand more about how Rational Application Developer Version 7.5 provides solutions to the many challenges that software teams face when tasked to deliver Web and service-oriented applications by reading this article Why Rational Application Developer for WebSphere Software Version 7.5?.
- Understand more about how the new functionality of the UML Modeler component common to both IBM Rational Software Architect Standard Edition Version 7.5 and IBM Rational Software Architect for WebSphere Software Version 7.5 by reading this article Using the new features of UML Modeler in IBM Rational Software Architect Version 7.5.
- Visit the Rational software area on developerWorks for technical resources and best practices for Rational Software Delivery Platform products.
- Explore Rational computer-based, Web-based, and instructor-led online courses. Hone your skills and learn more about Rational tools with these courses, which range from introductory to advanced. The courses on this catalog are available for purchase through computer-based training or Web-based training. Additionally, some "Getting Started" courses are available free of charge.
- Subscribe to the Rational Edge newsletter for articles on the concepts behind effective software development.
- Subscribe to the IBM developerWorks newsletter, a weekly update on the best of developerWorks tutorials, articles, downloads, community activities, webcasts and events.
- Browse the technology bookstore for books on these and other technical topics.
Get products and technologies
- Download trial versions of IBM Rational software.
- Download these IBM product evaluation versions and get your hands on application development tools and middleware products from DB2®, Lotus®, Tivoli®, and WebSphere®.
- Read the developerWorks blogs and get involved in the developerWorks community.
- Join the Rational Software Architect forum on developerWorks.