diff --git a/rapport/rapport.pdf b/rapport/rapport.pdf index 16bc3b2..adcf734 100644 Binary files a/rapport/rapport.pdf and b/rapport/rapport.pdf differ diff --git a/rapport/rapport.tex b/rapport/rapport.tex index 2d15c66..77d2371 100644 --- a/rapport/rapport.tex +++ b/rapport/rapport.tex @@ -21,7 +21,8 @@ \usepackage{multicol} \usepackage{svg} -\newminted{bash}{numbersep=6pt} +\newminted{text}{linenos, numbersep=6pt, frame=leftline} +\newminted{html}{linenos, numbersep=6pt, frame=leftline} \usepackage{contour} \usepackage{ulem} @@ -138,7 +139,7 @@ Les noms doivent aussi être unique pour les WorkDefinition et les Ressource pou Nous avons aussi contraint l’utilisateur à utiliser les WorkSequence sur des WorkDefinition appartenant au même Process. Pour éviter des non-sens, les WorkSequence ne peuvent pas non plus avoir le même successeur et prédécesseur. Nous avons aussi ajouté des contraintes sur les quantités des Resource et Request. -En effet, cela n’a pas de sens d’avoir des Resource ou des Request avec des quantités négatives. +En effet, cela n’a pas de sens d’savoir des Resource ou des Request avec des quantités négatives. De plus, une Request ne peut pas être plus grande que le nombre initial de ressources. (Le nombre initial de ressources est le maximum puisqu’il n’y a pas de création.) @@ -156,12 +157,12 @@ Ces plugins seront déployés dans une Eclipse Application séparée de notre Ap \subsection{plugin simplePDL} -% \begin{figure}[H] -% \centering -% \includegraphics[width=15cm]{simplePDL_emf.png} -% \caption{Éditeur arborecent d'un modèle simplePDL} -% \label{simplePDL_EMF} -% \end{figure} +\begin{figure}[H] + \centering + \includegraphics[width=15cm]{simplePDL_emf.png} + \caption{Éditeur arborecent d'un modèle simplePDL} + \label{simplePDL_EMF} +\end{figure} \subsection{plugin petriNet} @@ -176,26 +177,127 @@ Ces plugins seront déployés dans une Eclipse Application séparée de notre Ap \section{Transformation de modèle à texte (avec Acceleo)} +Il nous est possible de transcrire nos modèles vers d'autres formats de fichiers pour nous permettre de les utiliser dans logiciels tierces, et ainsi de les modifier/visualiser plus aisaiment. + \subsection{simplePDL $\rightarrow$ html} +Nous pouvons dans un premier temps de transformer nos modèles simplePDL selon le langage de balisage HTML. + +\begin{htmlcode} +developpement + +

Process "developpement"

+

Work definitions

+ + +\end{htmlcode} + \subsection{simplePDL $\rightarrow$ dot} +Nous pouvons de même transformer nos modèles simplePDL selon le langage de description de graphe DOT. + +\begin{textcode} +digraph "developpement" { + "Conception" -> "RedactionDoc" [arrowhead=vee label=finishToFinish] + "Conception" -> "RedactionDoc" [arrowhead=vee label=startToStart] + "Conception" -> "Programmation" [arrowhead=vee label=finishToStart] + "Conception" -> "RedactionTests" [arrowhead=vee label=startToStart] + "Programmation" -> "RedactionTests" [arrowhead=vee label=finishToFinish] +} +\end{textcode} + \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). + +\begin{textcode} +net coolNetwork +pl debut (1) +pl fin (0) +tr debut2fin debut*1 -> fin*1 +\end{textcode} + \section{Définition de syntaxes concrètes graphiques (avec Sirius)} +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} +\begin{figure}[H] + \centering + \includegraphics[width=15cm]{simplePDL_sirius.png} + \caption{Éditeur graphique d'un modèle simplePDL} + \label{simplePDL_EMF} +\end{figure} + \subsection{Éditeur graphique petriNet} +\begin{figure}[H] + \centering + \includegraphics[width=15cm]{petriNet_sirius.png} + \caption{Éditeur graphique d'un modèle petriNet} + \label{petriNet_EMF} +\end{figure} + \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. + \subsection{Éditeur textuel simplePDL} +Ainsi, pour simplePDL, la syntaxe textuelle suivante permet de manipuler nos modèles, sans passer par des outils complexes générés automatiquement par Eclipse. + +\begin{textcode} +process Developpement { + res Crayon 10 + res Papier 20 + wd Conception + req Crayon 10 + req Papier 5 + wd RedactionTest + wd RedactionDoc + wd Programmation + ws f2s from Conception to Programmation + ws s2s from Conception to RedactionTest + ws s2s from Conception to RedactionDoc + ws f2f from Conception to RedactionDoc + ws f2f from Programmation to RedactionTest +} +\end{textcode} + \subsection{Éditeur textuel petriNet} +De même pour petriNet + +% \begin{figure}[H] +% \centering +% \includegraphics[width=15cm]{petriNet_xtext.png} +% \caption{Éditeur textuel d'un modèle petriNet} +% \label{petriNet_xtext} +% \end{figure} + \section{Transformation de modèle à modèle (avec ATL)} +Finalement il nous est possible, tout comme lors de la transformation modèle à modèle via l'écriture d'un programme, de transformer un modèle selon un autre métamodèles via l'outil ATL. + \subsection{simplePDL $\rightarrow$ petriNet} +% \begin{figure}[H] +% \centering +% \includegraphics[width=15cm]{simplePDL_ATL_petriNet.png} +% \caption{Transformation d'un modèles simplePDL en modèle petriNet via ATL} +% \label{simplePDL_ATL_petriNet} +% \end{figure} + \end{document}