diff --git a/rapport/rapport.pdf b/rapport/rapport.pdf index bd9a61a..c5e9ca5 100644 Binary files a/rapport/rapport.pdf and b/rapport/rapport.pdf differ diff --git a/rapport/rapport.tex b/rapport/rapport.tex index 1d1ea16..b85b358 100644 --- a/rapport/rapport.tex +++ b/rapport/rapport.tex @@ -82,23 +82,25 @@ Ce projet se base sur un langage simplifié de modélisation de processus de dé Nous sommes donc parti du modèle Ecore de base du modèle SimplePDL auquel nous avons ajouté progressivement des nouveaux éléments. Dans un premier temps, il a fallu ajouter la modélisation des guidances comme indiqué dans le sujet. -% \begin{figure}[H] -% \centering -% \includegraphics[width=15cm]{simplePDL_guidance.png} -% \caption{Métamodèle simplePDL avec guidance} -% \label{simplePDL_guidance} -% \end{figure} +\begin{figure}[H] + \centering + \includegraphics[width=15cm]{simplePDL_guidance.png} + \caption{Métamodèle simplePDL avec guidance} + \label{simplePDL_guidance} +\end{figure} Nous avons ensuite dû choisir une manière de modéliser les ressources nécessaires au processus de développement. Notre choix de modélisation s’est porté sur : une Ressource (qui implémente ProcessElement) est demandée par le biai d’une Request elle-même générée par une WorkDefinition. On se retrouve donc avec un nouveau modèle Ecore de la forme : -% \begin{figure}[H] -% \centering -% \includegraphics[width=15cm]{simplePDL_guidance_ressource.png} -% \caption{Métamodèle simplePDL avec guidance et ressource} -% \label{simplePDL_guidance_ressource} -% \end{figure} +\begin{figure}[H] + \centering + \includegraphics[width=15cm]{simplePDL_guidance_ressource.png} + \caption{Métamodèle simplePDL avec guidance et ressource} + \label{simplePDL_guidance_ressource} +\end{figure} + +\newpage Les relations Ressource-Request et Request-WorkDefinition sont déclarées en EOpposite pour pouvoir facilement passer d’un fils à un parent et vice versa. Le modèle SimplePDL est maintenant complet pour représenter des processus de développement. @@ -127,6 +129,8 @@ Ses arcs ont un attribut entier nommé weight pour indiquer le poids de l’arc \label{petriNet_complet} \end{figure} +\newpage + \section{Sémantique statique (avec OCL)} Les contraintes OCL sont là pour vérifier des informations du modèle vis-à-vis du métamodèle. @@ -177,9 +181,10 @@ inv negativeQuantity: self.quantity > 0 context Request inv greedy: self.quantity <= self.target.quantity -\subsection{petriNet.ocl} \end{textcode} +\newpage + \subsection{petriNet.ocl} Les modèles PetriNet étant relativement similaires aux modèles SimplePDL, nous avons établi des contraintes OCL similaires. @@ -204,6 +209,8 @@ context Arc inv negativeQuantity: self.weight >= 0 \end{textcode} +\newpage + \section{Eclipse Modeling Framework (EMF)} Pour permettre une meilleur intégration de nos métamodèles dans notre environnement de developpement (sous Eclipse), nous pouvons créer des greffons nous permetttant de les intégrer dans d'autres projets, ainsi que des éditeurs arborescents nous permettant de mieux visualiser/éditer des modèles conformes à nos métamodèles Ecore. @@ -221,12 +228,14 @@ Ces plugins seront déployés dans une Eclipse Application séparée de notre en \subsection{plugin petriNet} -% \begin{figure}[H] -% \centering -% \includegraphics[width=15cm]{petriNet_emf.png} -% \caption{Éditeur arborecent d'un modèle petriNet} -% \label{petriNet_EMF} -% \end{figure} +\begin{figure}[H] + \centering + \includegraphics[width=15cm]{petriNet_emf.png} + \caption{Éditeur arborecent d'un modèle petriNet} + \label{petriNet_EMF} +\end{figure} + +\newpage \subsection{simplePDL $\rightarrow$ petriNet (avec Java)} @@ -241,23 +250,23 @@ Il nous est possible de transcrire nos modèles vers d'autres formats de fichier Nous pouvons dans un premier temps de transformer nos modèles simplePDL selon le langage de balisage HTML. \begin{htmlcode} - developpement - +developpement +

Process "developpement"

Work definitions

- + \end{htmlcode} \subsection{simplePDL $\rightarrow$ dot} @@ -274,6 +283,8 @@ digraph "developpement" { } \end{textcode} +\newpage + \subsection{petriNet $\rightarrow$ tina} Enfin, il nous est possible de transformer nos modèles petriNet selon le language de description de réseau de Petri TINA (format .net). @@ -289,7 +300,7 @@ tr debut2fin debut*1 -> fin*1 Tout comme lors de la création d'éditeurs arborescent spécifiques à nos métamodèles (cf EMF), il nous est possible de créer des éditeurs graphiques spécifiques à nos métamodèles. -\subsection{Éditeur graphique simplePDL} +\subsection{simplePDL.odesign} \begin{figure}[H] \centering @@ -298,7 +309,7 @@ Tout comme lors de la création d'éditeurs arborescent spécifiques à nos mét \label{simplePDL_sirius} \end{figure} -\subsection{Éditeur graphique petriNet} +\subsection{petriNet.odesign} \begin{figure}[H] \centering @@ -307,6 +318,8 @@ Tout comme lors de la création d'éditeurs arborescent spécifiques à nos mét \label{petriNet_sirius} \end{figure} +\newpage + \section{Définition de syntaxes concrètes textuelles (avec Xtext)} Dans la continuité de la création d'outils pour manipuler et visualiser nos modèles, il nous est possible de définir une styntaxe textuelle associée à nos métamodèles.