Archive

Articles taggués ‘template’

Comment créer simplement un template pour générer un document avec Enterprise Architect

La dernière fois nous avons vu comment utiliser simplement un template pour générer un document avec Enterprise Architect, nous allons voir aujourd’hui comment créer notre propre template.

Les outils de modélisation, dont Enterprise Architect, sont très souvent critiqués sur leur module de génération de documentation (considéré généralement comme complexe, incomplet et peu performant). Nous allons voir en fait que la création et la génération de rapports et autres documents est possible et même assez simple à réaliser avec Enterprise Architect.

(Article réalisé avec la version 10.0.1009 de l’outil.)

 

 

Ouvrons la fenêtre de création de template à l’aide du menu <Project>/<Documentation>/<Document Template Designer>.

La fenêtre de création de template contient un explorateur et un éditeur de texte. L’explorateur contient l’ensemble des éléments structurant un projet Enterprise Architect et l’éditeur va permettre d’insérer du texte et des champs.
 
1ère étape : création du template

Je clique sur l’icône <New Template> pour faire apparaître la boîte de création de template et me permettre de cocher les cases qui jusqu’à présent étaient grisées.

Je donne ensuite un nom à mon template et je valide.
 
2e étape : Insertion de la structure

Je souhaite Créer un document de cas d’utilisation avec leurs scénarios, exigences, pré et post conditions et diagrammes associés.
Je coche alors les cases correspondant aux éléments que je veux incorporer dans mon document.
Je commence par cocher <Package> pour générer l’arborescence des packages

Je constate que quand je coche une case, EA insère un marqueur de début et de fin dans le document. (Pour le marqueur <package>, EA coche automatiquement <Child package> – ce qui permettra une génération récursive-).

package >
[right-click-to-insert-Package-field(s)]
child packages >
< child packages
< package
 

Puis je sélectionne la ligne contenant le texte <[right-click-to-insert-Package-field(s)]> et avec le menu contextuel (clique droit de la souris) <Insert Filed>/…. J’insère le champ qui m’intéresse ; par exemple le nom du package.

Ensuite je peux lui affecter un style, je sélectionne la ligne <Pkg.Name> (en faisant attention de ne pas sélectionner les marqueurs) et dans la liste déroulante des styles je choisis <Heading 1>.

Je rajoute le champ <Notes> sous le <package Name> pour insérer la note du package.
 
Puis je coche <Element,> (nous pouvons constater que la case à cocher <Child Elements> est cochée par défaut)  j’insère le stéréotype, le nom et la note de l’élément comme pour le package.

Je procède ensuite de la même façon pour insérer les diagrammes présents sous les packages.

package >
{Pkg.Name}
{Pkg.Notes}
diagram >
{Diagram.Name}
{Diagram.DiagramImg}
{Diagram.Notes}
< diagram
element>
{Element.Stereotype} {Element.Name}
{Element.Notes}
child elements >
< child elements
< element
child packages >
< child packages
< package

 
3ème étape : Création de tableaux

Pour les pré et post conditions je crée des tableaux. Je coche d’abord <Constraint-Pre> et <Constraint-Post>.

Entre les marqueurs de début et fin à l’aide du menu contextuel je sélectionne le menu <Table> / <Insert Table>.

J’indique 2 lignes et 3 colonnes dans la boite de dialogue <New Table Parameters> et je valide.

Dans la première  ligne j’écris les entêtes Nom, Note et Statut.
Je sélectionne cette ligne d’entêtes et à l’aide du menu contextuel <Table>/<Cell Color…>, je sélectionne un fond gris.

Dans la deuxième ligne j’insère les champs <Name>, <Notes> et <Status>.

Il est impératif de supprimer la ligne ajoutée automatiquement sous le tableau pour éviter d’avoir un espace entre chaque ligne du tableau.

 

constraint-pre >

Nom

Notes

Statut

{ElemConstraintPre.Name} {ElemConstraintPre.Notes} {ElemConstraintPre.Status}

< constraint-pre>

 
Puis je fais de même pour insérer les exigences internes et externes au cas d’utilisation. (Les exigences internes sont créées à partir de la rubrique <Requirements> du cas d’utilisation et les exigences externes sont des éléments de type <Requirement> reliés à l’aide d’un lien de réalisation avec le cas d’utilisation).

Pour les scénarios, si j’utilise l’onglet description, pour écrire mes étapes de scénarios, seuls le nom et la note suffisent ; si par contre j’utilise les scénarios structurés alors je crée de nouveau un tableau dans lequel j’insère principalement les champs <Step> (numéro de l’étape) et <Action>.

Pour les scénarios alternatifs et d’exceptions, je coche la case <Exception>, et j’insère les champs <Step>, <Type> (si je veux préciser alternatif ou exception), <Name> et<Join> (pour indiquer l’étape de retour dans le scénario nominal).

Faire attention au fait que la numérotation des étapes est imposée par EA et que le nom de chaque alternative est inséré dans les étapes du nominal.

scenario >
{ElemScenario.Scenario}
{ElemScenario.Notes}
structured scenarios >

{Scenario_Structured.Step} {Scenario_Structured.Type} {Scenario_Structured.Action}

exception >

({Exception.Type}){Exception.Step} {Exception.Name} (retour étape {Exception.Join})

< exception
< structured scenarios
< scenario

Attention : si vous décochez un élément dans l’explorateur, les marqueurs seront supprimés avec le texte inséré entre eux.

La prochaine fois nous verrons comment insérer des éléments reliés (comme les acteurs par exemple) à l’aide de <Template Fragments>.

Comment utiliser simplement un template pour générer un document avec Enterprise Architect

Vous êtes utilisateurs de l’outil de modélisation Enterprise Architect, je vous propose une petite série d’articles pour vous aider à utilisateur le générateur de documents de l’outil. (Articles réalisés avec la version 10.0.1009 de l’outil.)

Première partie, rappel sur la génération avec un template de document existant.

Si par exemple je souhaite générer un document sur une modélisation de cas d’utilisation.

Je sélectionne le package contenant les cas d’utilisation et accède à la boite de dialogue de génération de documents à l’aide du raccourci F8.

Ensuite je choisis le template qui correspond à ma génération (ici UseCaseTemplate). Je vérifie la destination de mon livrable (dans la partie Output to File) et génère le document en cliquant sur le bouton <Generate>.

Deuxième partie, je filtre ma génération

Dans mon document généré, je constate que les informations détaillées sur des éléments comme des activités et actions sont ajoutées alors que seuls les cas d’utilisation m’intéressent. Je retourne alors dans la boite de génération de documents.

Je sélectionne l’onglet <Options> et puis tous les types d’éléments à exclure, exceptés <Actor> et <UseCase> qui sont les seuls qui m’intéressent.

Je peux aussi filtrer ma génération en fonction d’une phase, d’un statut ou d’une date de création d’élément si besoin.

Troisième partie, je complète les filtres de ma génération

Je souhaite maintenant ne générer que les cas d’utilisation qui possèdent une description. Je souhaite aussi ne générer que les sous packages du package sélectionné.

Il me suffit de cocher les cases correspondantes.

Si je souhaite réaliser un filtrage avancé (par exemple en fonction d’un stéréotype), j’utilise alors l’onglet <Element Filters> pour créer le bon filtre. Nous aborderons cette fonctionnalité plus tard.

Quatrième partie, je paramètre mon template pour ne pas avoir à refaire les manipulations de filtrage à chaque génération.

Si je ferme la boîte de dialogue de génération de documents et que je l’ouvre à nouveau, je constate qu’aucun de mes paramétrages n’a été sauvegardé, alors plutôt que de cocher à chaque génération les cases qui m’intéressent, je choisis de dupliquer le template proposé par sparx pour pouvoir le modifier.

Depuis l’onglet <Generate>, dans la liste déroulante je sélectionne <new template>.

Je sélectionne ensuite le template que je veux dupliquer, je lui donne un nom, puis je valide.

EA ouvre alors un éditeur de texte, contenant tous les éléments du template, nous y reviendrons plus tard.

Pour l’instant à l’aide du menu contextuel dans la page, je sélectionne le menu <File>/<Document Options> et dans cette boîte de dialogue je procède aux filtrages comme fait précédemment.

Je sauvegarde le nouveau template en cliquant sur la petite disquette et je ferme la boîte de dialogue.

Ensuite je sélectionne à nouveau mon package, j’utilise le raccourci F8 et cette fois je sélectionne dans la liste déroulante le template que je viens de créer (au passage je constate que mon template n’est pas entouré de parenthèses contrairement aux templates de sparx). Si je vérifie les onglets <Options> et <Advanced>, je constate alors que mon paramétrage a été sauvegardé.

La prochaine fois nous aborderons la création de notre propre template de document