This group will be used to tag all OE Hive content which relates to UML, modeling, and the Enterprise Architect product. Subscribe to this group to be notified of any additions or changes to this content.
To load the Profile into Enterprise Architect, start by loading the datatypes for OpenEdge found here.
To install each set of desired stereotypes, open a project in EA, select Tools from the menu, select Import Reference Data, browse for the downloaded file, select, highlight the dataset for "Stereotypes for OpenEdge Database" or other label as appropriate, and press button to complete. To avoid having to do this for every project, do the addition in EABase or other suitable base project from which new projects will be derived.
As of version 7.1, Enterprise Architect does not come supplied with datatype definitions for OpenEdge. There is a Utility provided by PSC under PSDN Community which includes these datatypes along with other functionality, but there are some issues with that implementation. (Also see this) That Utility does not currently provide the option for loading the datatypes separately from the stereotypes that are also in that Utility and these stereotypes are at variance with the proposed UML Profile for ABL.
Therefore, an XML file is provided here for independently loading datatypes appropriate for use with the proposed Profile. These datatypes should be suitable for any use of EA with OpenEdge. They are provided as open source and so may be customized to taste by any user. We will note differences between the implementation in the Utility and the present implementation as appropriate. All reference to "Utility" refers to the one provided at the links on PSDN Code Share above (also available here).
The following assumes that Enterprise Architect is being used on a Windows platform.
1. Select the Windows Control Panel | Administrative Tools | Data Sources (ODBC) option. The ODBC Data Sources Administrator window displays. Select the System DSN tab.
2. Click on the Add button. The Create New Data Source dialog displays, enabling you to add a new DSN.
3. Select the DataDirect/OpenEdge SQL or other appropriate Progress driver from the list. The name varies by version.
4. Click on the Finish button. The DSN Configuration dialog displays.
Associated with the presentation in this library entry were some demonstration files including some MDG technology to allow reading and writing .df files from within Enterprise Architect. These have been gathered here to make it easier for people to find this regularly requested technology.
In order to use an OpenEdge data repository in EA follow the steps below:
1. In the Open Project dialog, select the Connect to Server checkbox. This is in the upper right corner.
2. Click on the [...] (Browse) button, as you normally would to browse for a project. As you have selected Connect to Server, the Data Link Properties dialog displays instead of the Browse Directories dialog.
3. Select Microsoft OLE DB Provider for ODBC Drivers from the list.
4. Click on the Next button. The Connection tab displays.
Different people have different ideas of how they want to set up databases for SQL access, but in case this is an area unfamiliar to someone trying to setup an OpenEdge database for use with Enterprise Architect, the following describes one approach.
The standard repository for Enterprise Architect uses the JET database engine. This makes it accessible with Access and SQL, but those working with ABL may prefer to use an OpenEdge database and ABL, being more familiar and more powerful. An OpenEdge database is required for some of the ABL to UML tools available here.
The Enterprise Architect product from Sparx Systems is emerging as the preferred UML modeling tool at many OpenEdge sites. In order to make it easy for people to get started using this powerful tool, information will be collected here to assist people in this process.
The attached code represents the initial release of the ABL2UML open source tool set. This is an evolving project, so expect this code to evolve and expand over time.
Overview
Given the need to enhance or transform a large existing ABL application, one is often hampered in the task by limited or out of date documentation. This project seeks to create a tool set that will read existing ABL code and the corresponding database to build a UML model of the application. This model can then be used for analysis and potentially can serve as the basis for future changes.
This project will consist of three stages:
1. Defining a UML "Profile" for ABL so that there are appropriate UML stereotypes to express the structural realities and relationships of ABL code and the corresponding dictionary.
2. Creating a tool for loading Progress dictionary information into a UML modeling tool using these stereotypes.
3. Creating a tool which will read and analyze ABL code and then load this information into a UML modeling tool using the stereotypes of the Profile.
A UML profile is intended to provide a mapping from a particular domain language or the language of a particular methodology onto underlying UML constructs. This mapping is a combination of “stereotypes”, which are terms from the domain or methodology equated to a particular UML constructs, as well as additional constraints, rules of “well-formedness”, and identification of which particular elements will be used to model the elements associated with the domain or methodology.
This stage is directed at defining a UML Profile for ABL Code and Progress dictionary information. The goal is to arrive at an open standard since there will be far greater potential synergy if all people working on UML modeling are using a common vocabulary. This stage will occur in three phases: