You can copy formulations from a URequire project to the Business Rules section in USoft Teamwork (part of USoft Definer).
Do this only if you plan to keep ALL your business specifications in URequire. You need to copy (synchronise) the latest version to USoft Definer on a regular basis.
WARNING: This utility will automatically overwrite data in the Business Rules table. If you use it, you must no longer edit this table manually. Using Definer User Groups, you can prevent yourself and your team members from editing this table. See Authorizer Help for details.
Advanced users can write a custom XSLT transformation to determine exactly how URequire translates into USoft Teamwork Business Rules and other objects. For more information, go to the last section of this help topic.
Getting the data from URequire
1. | In URequire, on the Home page, in the My Projects tile, make sure you have selected the project from which you want to transfer the formulations. |
2. | If necessary, press the Start Work button and, in the Formulations page, make sure that the formulations you want to get into USoft Teamwork have the status "Current" or "Deprecated". This is the set of formulations returned when you search by Status = "In Force" in the FILTERS tab on the left. |
TIP: If you have not been using version control, all your formulations will have Status = Planned, so none will be selected for export. To fix this, you can easily set them to Status = Current. In URequire, set their "Defined In Version" property (on the ATTRIBUTES tab) to the current vocabulary version (which is 1.0 by default). Do this by holding the Shift or Ctrl key down and selecting all the formulations you want to transfer to USoft Teamwork. Submit.
2. | In the Home page, press the Administration button. |
| The Administration page appears. Check that the name displayed across the top is the project you want to transfer to USoft Definer. |
| This downloads an XML file. |
4. | Rename the downloaded file to a standard name that you use for the transfer, such as "export.xml", then place it in a standard local directory that you use for the transfer, such as "c:\temp\". |
Importing the data into USoft Definer
2. | Choose Teamwork, Object Shopping, Import from URequire from the USoft Definer menu, or click the "Import from URequire" icon button on the icon ribbon immediately below the menu. |
| The "Import from URequire" dialog opens. |
3. | In the Export File field, specify where your URequire export file is located. |
4. | In the XSL Transformation field, specify where the XSL stylesheet is located that you want to use to transform the URequire output into Teamwork Business Rules input. |
| By default, this is the "ImportFromURequire.xsl" file that USoft delivers in the \xsl\Util subdirectory of the USoft installation folder. |
|
A formulation is transferred only if it meets the following 3 conditions:
•The formulation is NOT a detail line. Detail lines are formulations made via option New, Detail Line. A detail line always has one of the following Classification values: Note, Example, Implementation, Acc. Criteria. •The formulation is NOT a reference to a diagram or to an external resource. Such a reference has Classification = Location. •The formulation is IN FORCE. A formulation is "in force" if it has Status = Current or Status = Deprecated. TIP: If you have not been using version control, all your formulations will have Status = Planned, so none will be selected for export. To fix this, you can easily set them to Status = Current. In URequire, set their "Defined In Version" property (on the ATTRIBUTES tab) to the current vocabulary version (which is 1.0 by default). Do this by holding the Shift or Ctrl key down and selecting all the formulations you want to transfer to USoft Teamwork. Submit. For each formulation transferred, the following information is transferred:
•The ID of each formulation. •The value of the "Requires Implementation" flag (Yes or No). •The value of the "Approved" flag (Yes or No). •The value of the "Classification" of the formulation (eg., Definition, Necessity). •The formulation itself. Transferred values for "Classification" are always in the following list. These are NOT necessarily the values shown in the "Classification" column in the URequire screen:
•Definition •Term (noun) •Term (unary fact type) •Term (binary fact type) •Synonym •Necessity •Possibility •User story •Other |
When you transfer specifications with this utility:
•Each new URequire formulation is added to USoft Teamwork, with Source = UREQUIRE. •Each changed URequire formulation is changed in USoft Teamwork, with Source = UREQUIRE. •Each dropped URequire formulation that does not have any related implementations in USoft Teamwork is dropped also from USoft Teamwork. •Each dropped URequire formulation that does have one or more related implementations in USoft Teamwork remains in USoft Teamwork, but with Source = NULL. NOTE 1: USoft Teamwork automatically logs all changes made to Business Rules. Click the Status History tab in the Business Rules window.
NOTE 2: The transfer utility sets the Source attribute of each rule to either the value 'UREQUIRE' or to the empty value (NULL):
•'UREQUIRE' indicates that the formulation comes from URequire and that it is known there. •NULL indicates that the formulation no longer exists in URequire. |
The intended use is that you import from URequire regularly to keep synchronized with URequire. If you do that, you need to keep all specifications in URequire and all implementations (as well as all mappings between specifications and implementations) in USoft Teamwork Business Rules.
It is important to follow this principle through because otherwise, the limitations of the "Import from URequire" option can become a problem:
•A repository that has Business Rules imported from URequire cannot also keep Business Rules of its own: the Import from URequire routine automatically drops all Business Rule formulations that are not known in URequire, except formulations associated with at least one implementation. •Information transferred from URequire in the Source, Classification and Requires Implementation attributes must not be edited directly in USoft Teamwork, because such work would be automatically overwritten next time you use Import from URequire. •Values that classify a rule or definition by Motivation, Source, Business Area, Business Object or Rule Set are NOT transferred to USoft Teamwork. Keep this information in URequire and look it up there. |
Advanced users can write a custom XSLT transformation to determine exactly how URequire translates into USoft Teamwork Business Rules and other objects. This replaces the behavior explained in earlier sections of this help topic.
If you replace the XSLT transformation, the following will still apply:
•Before import, the Source foreign key in all existing Business Rules records is set to NULL. •After import, any unsynchronized Notes, that is, any Notes that belong to a Business Rule, are dropped. •After import, the Belongs To foreign key in all existing Business Rules records is set to NULL. •After import, all Business Rule records that have Source = NULL and no corresponding Implementations, are dropped. IMPORTANT: Because of the last item in this list, your custom XSLT transformation must set the Source attribute of each successfully imported Business Rule to a non-NULL value, for example, 'UREQUIRE'.
To apply a custom XSLT transformation:
1. | In the Rules Engine Parameters table, for the UREQUIRE_INPUT_XSL parameter, replace the setting '(null)' with the filepath and filename of your custom XSLT transformation. |
| TIP: You can test if this filepath and filename is processed as an existing file. This is the case when the following (in SQL Command of USoft Definer) returns 1 and not 0: |
SELECT usd_files.existing( filepath-and-filename )
2. | Write your custom XSLT transformation. You probably want to do this by altering the USoft default, which is "ImportFromURequire.xsl" in the \xsl\Util\ subdirectory of the USoft installation directory. |
| TIP: The path to the USoft installation directory is returned by: |
SELECT rulesengine.getproperty( 'SystemDir' )
3. | Place the custom XSLT transformation of Step 2 at the file location that you have specified in Step 1. |
4. | Perform the steps described in the section "How do I get data from URequire into USoft Teamwork" at the top of this help topic. |
|
See Also
URequire Studio
|