Follow sidelabs on Twitter

SIDE-ALPHA:BlueXMLDeveloperStudio Manual/fr

From SIDE-Labs.org

Guide utilisateur 1.0 pour BlueXML Developer Studio version 1.4.3

Dernière modification: Mars 2008

Guide en construction

Contents

Introduction

guide d'installation

Vous pouvez installer BlueXML Developer Studio en utilisant:

Ce chapitre décrit les procédures d'installation pour:

  • Alfresco
  • BlueXML Modules pour Alfresco

Installation d'Alfresco

Alfresco offre une vraie alternative Open Source pour la Gestion de Contenu d'Entreprise (ECM) fournissant la Gestion de Documents, Collaboration, Gestion des Archives/Enregistrements légaux, Gestion de Contenu Web et Gestion des Documents Numérisés.

Nous travaillons avec la version communauté 2.9B d'Alfresco, qui est téléchargeable comme EXE à l'adresse suivante:

Vous pouvez maintenant lancer votre Alfresco.

Links :

Installer les modules BlueXML pour Alfresco

Pour améliorer la qualité du serveur web d'Alfresco, nous avons créé quelques composants qui s'installent directement dans le répertoire d'installion d'Alfresco. Il faut tout d'abord lancer Alfresco (le fichier WAR contenu dans le repertoire d'installation d'Alfresco doit extraire le répertoire Alfresco, cela se fait durant le lancement d'Alfresco). Nos composants sont téléchargeable à l'adresse suivante:

Ce fichier ZIP contient un ensemble de fichiers ZIP. Ce fichier doit être déplacé et extrait dans ce répertoire: <ALFRESCO_DIR>\tomcat\webapps\alfresco. Vous devez relancer Alfresco pour vérifier la bonne installation de nos composants.

Guide de mise à jour

Ce chapitre présente les procédures de mise à jour pour :

  • BlueXML Developer Studio
  • BlueXML Modules for Alfresco

Mise à jour de BlueXML Developer Studio

Pour mettre à jour BlueXML Developer Studio, il suffit de suivre les étapes ci-dessous:

1. Sélectionnez Help > Software Updates > Find And Install....

TopcaseUpdate.JPG

2. Dans la fenêtre Install/Update, choissez Search for new features to install et cliquer sur Next.

OMF Manual UpdateManager01.jpeg

3. Sélectionnez BlueXML Update dans la liste des sites de mise à jour et cliquez sur Finish.

UpdateBDS.JPG

4. Attendez que la recherche soit terminée. Sélectionnez les modules à mettre à jour et cliquer sur Next.

OMF Manual UpdateManager03.jpeg

5. Après avoir accepté la licence, cliquez sur Next.

Updatelicense.JPG

Puis cliquez sur Finish.

UpdateInstall.JPG

6. Dans la fenêtre Verification, cliquez sur le bouton Install All pour lancer l'installation. Il est conseillé de redémarer Topcase avant d'utiliser les plugins.

UpdateVerification.JPG

Mise à jour des modules BlueXML pour Alfresco

Suivez les étapes d'installation des modules de BlueXML pour Alfresco.

Guide général des fonctionnalités de BlueXML Developer Studio

Dans ce chapitre, vous allez découvrir les fonctionnalités de base de BlueXML Developer Studio. Vous allez apprendre comment créer et modifier un diagramme de classe, diagramme de cas d'utilisation, diagramme de sécurité et diagramme de workflow.

Introduction à BlueXML Developer Studio

Cette partie décrit les principales capacités et concepts de BlueXML Developer Studio.

Qu'est ce que BlueXML Developer Studio?

BlueXML Developer Studio est un réel environnement de développement dans lequel il est possible de créer, d'éditer, de gérer et de communiquer sur les modèles rédigés. BlueXML Developer Studio permet pour le moment de créer 4 diagrammes:

  • Les diagrammes de classes,
  • Les diagrammes de cas d'utilisation,
  • Les diagrammes de sécurité,
  • Les diagrammes de workflow.

Quelles sont les fonctionnalités supplémentaires ajoutées à BlueXML Developer Studio ?

  • Un environnement performant afin de gérer ses modèles grâce aux fonctionnalités de recherche, de validation, de visualisation, de publication de documentation HTML...
  • Des transformations de modèles afin d'exporter d'UML1 et d'UML2 vers BlueXML et d'exporter de BlueXML vers UML1 et UML2.
  • Des outils de génération afin d'obtenir des formulaires, documentation ou applications.
  • Un environnement collaboratif pour créer, éditer, mettre à jour et partager les modèles au sein de l'équipe.

L'interface utilisateur de BlueXML Developer Studio

L'interface utilisateur est organisée en 4 parties:

  • Une fenêtre principale qui permet de créer ou d'éditer le modèle.
  • Une vue navigateur qui affiche les fichiers et répertoire du projet.
  • Une vue outline qui affiche la structure du modèle (package, classe, association...).
  • Une vue propriété qui montre les propriétés de l'objet sélectionné.

La figure suivante montre un aperçu de l'interface utilisateur.

BLUEXMLDS.JPG

Démarrage

Création d'un projet

Eclipse (ou Topcase) vous permet de créer différents types de projet (Projet java, Projet Topcased, Projet Général). Dans ce guide, nous allons travailler avec Topcase, nous allons donc créer un projet Topcase. Pour créer votre projet, vous devez sélectionner dans la barre de menu : File > New > Project...

Eclipse is connected to a workspace (it can be chosen during the launching of Eclipse), it is a particular folder. This workspace contains one or more projects. There are different types of projects (Java Project, Topcased Project, General Project). In this guide we will work with Topcased, so we will create a TopCased Project. To create your project, you have to select on the top menu bar : File > New > Project...

Quick start menubar.gif

Next, you need to choose Topcased > Topcased Project and click on Next. On the next screen, you will enter name of your project. For example, you can call it Test and click on Finish.

Quick start createproject 01.gif
Quick start createproject 02.gif

Now you have a new project called Test which contains a subfolder called Models.

Quick start createproject 03.gif

Configuration

To configure BlueXML Developer Studio, select Window > Preferences.... The preferences of BlueXML Developer Studio are grouped under the category called BlueXML Developer Studio.

PeferenceBDS.JPG

If the option Highlight attributes if constraints (figure above) is enabled then all the attributes having meta-information will be highlight on the main window (showing the graphical view of a diagram). For example, in the following figure the attribute Name of the class Compagny has a meta-information specifying that it is required.

HighlightOption.JPG

Under the category BlueXML Developer Studio there are two sub-categroy:

  • Alfresco Generator enables you to define configuration and add new configuration for the Alfresco generator. A configuration specify the URL to access to Aflresco and the installation directory of Alfresco. If you select the option Is default configuration your configuration will be the default one when you will use the Alfresco generator


PeferenceAG.JPG


PreferenceNConf.JPG


PreferenceNConfM.JPG


  • Modeler Parameters enables to specify delete actions : Do not ask for confirmation before deleting graphical elements and Do not ask for confirmation before deleting model elements


PeferenceMP.JPG

Model's creation

To create a model follow the step given below:

1. Click on the top menu bar : File > New > Other....

NewOther.JPG

2. Choose Topcased > Topcased Diagrams > BlueXML Diagram and click on Next.

Quick start createmodel 01.gif

3. In the next screen, choose the directory (on our case, it is /Test/Models), the model name (myModel), and the template. The template is the type of the main diagram. With BlueXML Developer Studio you can create 4 different kind of diagram: BPM Diagram, Class Diagram, Security Diagram, and UC Diagram. A model can contain many diagrams. After choosing the type of diagram you will need, click Finish

Quick start createmodel 02.gif


The result is :

Quick start createmodel 03.gif

Different kind of files

BlueXML developer Studio use 3 different kind of files:

  • an OBL file which contains the model. It is a simple XMI file with all the data. An extract of an OBL file is shown below:
<?xml version="1.0" encoding="UTF-8"?> 
<MMUseCase:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" 
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
                   xmlns:MMUseCase="http://MMUseCase" xmi:id="_TnQCYKb7Edyg0-Q2ek6f8g" name="crm">
  <packageSet xmi:id="_V_-0UKb7Edyg0-Q2ek6f8g" documentation="" name="com">
  <packageSet xmi:id="_XPZ00Kb7Edyg0-Q2ek6f8g" name="bluexml">
  <packageSet xmi:id="_YWL2sKb7Edyg0-Q2ek6f8g" name="sem">
  <packageSet xmi:id="_blBKMKb7Edyg0-Q2ek6f8g" name="crm">
  ...
  <classSet xmi:id="_nYP48KcBEdyjnooseSwyow" documentation="" name="Project"
                title="Projet" description="" associations="_-ww3gKcBEdyjnooseSwyow">
     <comments xmi:id="_mZTqccjtEdyC9JwX7EOdEA" stereotypes="_yXB5sKcMEdy1ioBnpUnfzA" value="{Projet},name"/>
     <metainfo xmi:id="_r8Zu4dWLEdy_g5UDd75T2w" value="VerticalTab" key="visual-component"/>
     <attributes xmi:id="_oOVMYKcBEdyjnooseSwyow" documentation="" name="startDate" typ="Date" 
                                                          title="Date de début" description=""/>
     <attributes xmi:id="_okis8KcBEdyjnooseSwyow" documentation="" name="endDate" typ="Date" 
                                                         title="Date de fin" description=""/>
     <attributes xmi:id="_oy_YoKcBEdyjnooseSwyow" documentation="" name="name" typ="String" 
                                                                 title="Nom" description="">
         <metainfo xmi:id="_bwh58NPaEdyjn5pDRsG5lg" value="True" key="required"/>
     </attributes>
     <attributes xmi:id="_pwPEAKcBEdyjnooseSwyow" documentation="" name="description" typ="String" 
                                                             title="Description" description="">
         <metainfo xmi:id="_zkw5IKcBEdyjnooseSwyow" value="30" key="textarea-cols"/>
         <metainfo xmi:id="_zkw5IacBEdyjnooseSwyow" value="5" key="textarea-rows"/>
     </attributes>
  </classSet>
  ....
  </packageSet>
</MMUseCase:Package>
  • an OBLI file which contains the graphical representation of the model. This file is automatically linked to an OBLI file which means that a modification of the graphical representation will be automatically reflected on the real model (contained in the OBL file).
  • a REF file allows to build an overall model.

Package organization

It is highly recommended to organize the model. Follow the steps provided below to create the hierarchy org > openbluelab > test:

1. In the navigator view, select the OBLDI file.

TopCaseNavigatorView.JPG

2. In the outline view, select the root package.

3. Enter the name org in the properties view. All package must have a name because its name will be the prefix of model in Alfresco.

TopCaseOutlineView.JPG

4. Choose Create child > Package in the outline view.

TopCasePackageAdd.JPG

5. Enter the name openbluelab in the properties view.

6. Repeat 4. and 5. to create the package test

7. On the contextual menu of the package test, select Add diagram > Class diagram. The creation of this diagram allow to place model's element on the package test directly.


TopCasePackageTest.JPG

Meta-information

The meta information are additional information added to the model in order to specify constraints. There is a list of constraints defined by BlueXML Developer Studio. To specify a constraint you will just need to select it in the property window of an element. You will find in the following table the list of all constraint and which element they are associated.


Type of the element Constraint Name Possible value Description
Class treeNode Boolean
Attribute size Integer width of the field
Attribute required Boolean Input in the form is required
Attribute hidden Boolean Field hidden in the form
Attribute treeNodeName Boolean
Attribute tree Boolean + String
Attribute type = String email Boolean Verification of the email syntax
Attribute type = String rte-rows Integer Number of line for a text area Rich Text Edit (with a possible formatting)
Attribute type = String rte-cols Integer Number of column for a text area Rich Text Edit (with a possible formatting)
Attribute type = String rte-width Integer Width for a text area Rich Text Edit (with a possible formatting)
Attribute type = String rte-height Integer Height for a text area Rich Text Edit (with a possible formatting)
Attribute type = String textarea-rows Integer Number of line for a text area Rich Text Edit (without a possible formatting)
Attribute type = String textarea-cols Integer Number of column for a text area Rich Text Edit (without a possible formatting)
Operation type {button,action}
Association asList Boolean Representation with a list
Use case layout-renderer-name {window,nowindow,borderless_window} Graphical representation of the portlet
Use case Col Stereotype accessible conform to the regular expression Col[0-9]* Selection of the column where the portlet will be
Use case ColDef Stereotype accessible conform to the regular expression ColDef:[[0-9]+,]*[0-9]+ Selection of the layout of the portlets in a level

Creating Class Diagram

In this part you will learn how to create a class diagram.

Toolbox

The Class Diagram Toolbox is used to create objects and links between objects on a class diagram. This toolbox is shown in the following figure:

BDSToolbox.JPG

To add an object to a class diagram, click on the required icon and put it on the diagram. Set an object name and its properties by double clicking on this object.

To add a link, click on the required icon. In the class diagram, click on the first end object and drag to the second end object. Set a link name and its properties by double clicking on this link

To delete an object or link from the class diagram, right-click the object or link and select Delete From Diagram or Delete From Model . If you choose Delete From Diagram you still can see the object or link in the outline view, because the object or link is only deleted from the graphical view.

Class

Tab Field Description
General Name Name of the class
Title Name display in the menu of Alfresco
Description Description of the class
Is abstract Specify if it is an abstract class or not
Is deprecated Specify if the class is deprecated or not
View Specify how an instance of a class will be display in Alfresco. Example for a class "Society" with 2 attributes: Name, Adress
Layout Specify the layout of the attributes of a class. Example for the class Contact:

[ [{firstName},{lastName}], [{surname}, {title}], [{language}], [{contacts}] ]

Aspects Organisation This enables to organize the aspect linked to the class
Options isContainer If Checked, it will create under Alfresco a Space. If not, it will create a content
visual-component If nothing is selected the attribute of the class will not be separated from the attributes of the aspects linked to the class in Alfresco

Separator: add a separator between the attributes of the class and the attributes of the aspects in Alfresco

HorizontalTab: Displays the attributes in a horizontal tab (A tab for the attribute for the attributes of the class, a tab for each aspect linked to the class)

VerticalTab: Displays the attributes in a vertical tab (A tab for the attribute for the attributes of the class, a tab for each aspect linked to the class)

Documentation Enables to write documentation

Aspect

An aspect is a collection of attributes. It can be linked to one or many classes.


Tab Field Description
General Name Name of the aspect
Title Name display in the menu of Alfresco
Description Description of the aspect
Layout Specify the layout of the attributes of the aspect.

Property

Attributeproperties.JPG


Tab Field Description
General Name Name of an attribute.
Type Type of an attribute: boolean, byte, char, double, float, int, long, short, String, void, Date, Object.
Visibility Specify if the attribute is private, protected or public.
Title Name display in Alfresco
Short description Short description of the attribute.
Value List Specify if the attribute is linked to an enumeration element. When you will create an instance, this attributes will have fixed value.
Options email If yes is selected, Alfresco will verify if the input value for this attribute is an email
regular-expression Alfresco will verify if the input value follow the regular-expression.
size size of the field in alfrescotaille du champs a l affichage
required obligatoire ou pas
hidden cache
read-only lecture seul
propertySearched si on peut le recherche index du champs
multiple si elle est multivalue
textarea-rows avoir une zone de text
texarea-cols definition colonne
min-length taille max de la donnee saisie
max-length min

Create elements

Now, we can create a class. We click on Class on the left panel. Next, click on the white part to create the class. We call it Contact. If we double-click on this class, we can set more additional informations as title, description, visual representation (we choose vertical tab on the options tab for visual-component).

Quick start createmodel 05 01.gif
Quick start createmodel 05 02.gif


We want now to add properties on this class. So click on Property on the left panel. Next, click on the class Contact. The new property can be modified if we double-click on. A new dialog appear and we can set additionnal informations.

Quick start createmodel 05 03.gif
Quick start createmodel 05 04.gif


We create 2 class Contact and Company. The contact has a first name and a last name. The company has only a name.

Quick start createmodel 05 05.gif

Link elements

Now, we want to link our 2 classes. We click on Association on the left panel. Next, we click on the first class (Contact per example) and we click on the other class.

Quick start createmodel 06 01.gif

We can double-click on the association and set properties on the dialog :

Quick start createmodel 06 02.gif
Quick start createmodel 06 03.gif
Quick start createmodel 06 04.gif

We obtain this result :

Quick start createmodel 06 05.gif



Creating Use Case Diagram

Toolbox

UCToolsbox.JPG

Creating Security Diagram

Toolbox

CSToolsbox.JPG

Creating Workflow Diagram

Toolbox

BPMToolsbox.JPG

Alfresco generation

On the contextual menu of the obl file, you can click on Deploy Alfresco Configuration. It's recommended to choose to copy and not to publish (it's a new feature actually in test). To copy in Alfresco directory, you must set it in Eclipse preferences. We have a new folder called with the name of the prefix in the folder Alfresco Configuration. This folder contains 2 folders shared and webapps. This folders must be moved in the Alfresco installation folder (or copied during the deployment).

Quick start generatemodel 01.gif
Quick start generatemodel 02.gif


The relation association class is not implemented in Deploy Alfresco Configuration because Alfresco (version 2.9B) doesn't have this relation.

Integration of the Alfresco Generation

The folders shared and webapps must be merged with the Alfresco installation directory. We must move this folders in the folder <ALFRESCO_DIRECTORY>/tomcat. After relaunch Alfresco, you can create and link contact and company. You must connect to Alfresco and to go on your home space.

Quick start integration 01.gif
Quick start integration 02.gif


On the right part, you can create a new content by Create > Create content.

Quick start integration 03.gif


You fill the name of the content and the type. First, we want to create a company. You click on Finish and fill the name of the company. The name of the company will be BlueXML. After we can clik on OK.

Quick start integration 04.gif
Quick start integration 05.gif


We have now create our company called BlueXML.

Quick start integration 06.gif


We want now to create a new contact with the same method (Create > Create content) :

Quick start integration 07.gif
Quick start integration 08.gif
Quick start integration 09.gif

This demonstration show a little example to use Alfresco. Our generator permits to make more actions. By example, we can consult the last contents added on the dashboard :

Quick start integration 10.gif