\chapter{Modèle conceptuel} \section{Diagramme de classe} \begin{figure}[h] \centering \includegraphics[width=0.70\textwidth]{diagramme-de-classe3.jpg} \caption{Diagramme de classe} \label{fig:diagramme-de-classe3} \end{figure} \section{Cas d'utilisation} \begin{figure}[H] \centering \includegraphics[width=0.70\textwidth]{UC's-diagram-02.jpg} \caption{Cas d'utilisation} \label{fig:UC's-diagram-02} \end{figure} \subsection{Utilisateur} \textbf{créer compte :} n'importe quelle personne accédant à la page d'accueil de l'application a la possibilité de créer son propre compte. Pour cela, l'utilisateur rentre dans les champs appropriés ses informations (nom, prenom, e-mail, mot de passe) et confirme. Le compte est alors créé avec le statut désactivé et un mail est envoyé à l'administrateur : ce dernier peut alors choisir ou non d'accepter la création d'un compte par cette personne, et cela en choisissant soit d'activer le compte en question, soit de le détruire. L'utilisateur peut alors, à l'aide de son compte, accéder aux fonctionnalités du logiciel.\\ \textbf{gérer composant :} comprend la création, l'affichage, l'édition et la suppression de composants. L'affichage de tous les composants est possible, l'édition et la suppression n'est faisable que par le propriétaire du document (celui qui l'a créé).\\ \textbf{poser verrou :} permet de définir, pour le propriétaire d'un composant, la visibilité des documents attachés au composant en question. Il y a trois types de verrous : ''public'', définissant un document comme consultable et téléchargeable par les utilisateurs, ''protégé'', signalant simplement aux utilisateur l'existence du document, et enfin ''privé'', empêchant l'accès à toutes les informations relatives au fichier attaché, jusqu'à son existence. Bien evidemment, ces verrous ne s'appliquent pas au propriétaire du document, qui garde en toutes circonstances le contrôle sur les documents qu'il a ajouté.\\ \textbf{gérer panier :} La notion de ''panier'' dans notre application est la suivante : le panier représente un ensemble, en l'occurence un ensemble de composants, qui peut être modifié, consulté et exploité à loisir par l'utilisateur. Les modifications consistent à ajouter un composant (ou un groupe de composants) que l'utilisateur choisit à partir de ceux qu'il visualise dans la zone de consultation de notre logiciel, ou encore à supprimer un element du panier, dans la zone de consultation du panier. Le panier est personnel à l'utilisateur : il est le seul à disposer des fonctionnalités enoncées precedemment sur son panier. De plus, le contenu du panier à une durée de vie égale à la durée de la session de l'utilisateur : en d'autres termes, le panier d'un utilisateur est vidé losr de sa déconnexion. L'exploitation du panier consiste à tracer des graphiques avec pour échantillon de données le contenu du panier.\\ \textbf{trier composants :} permet d'organiser la liste des composants selon différents critères (critères encore à determiner).\\ \textbf{tracer graphique :} permet de tracer un graphique représentatif des données présentes dans la base de données : l'utilisateur pourra choisir les données représentées en abscisse et en ordonnée ainsi que le type de graphique qu'il souhaite tracer. L'échantillon de données représenté sera selectionné à l'aide du panier.\\ \textbf{demander création nouveau type :} lors de la création d'un nouveau composant, un utilisateur doit notamment remplir les champs ''technologie'' et ''materiaux'', et cela en choisissant une valeur parmis un ensemble de propositions. Seulement, un utilisateur peut parfois avoir besoin de rentrer une technologie ou un matériau qui ne lui est pas proposé : pour cela, lorsqu'il rentre un composant, il lui est proposé de demander la création d'un nouveau type, ce qui consiste en la rédaction d'un mail à l'administrateur afin de lui soumettre l'ajout d'une valeur. Ce dernier choisit alors d'ajouter ou non cette valeur.\\ \textbf{exporter données graphiques :} permet, à partir d'un graphique, d'exporter les données numeriques s'y rapportant (coordonnées des points) afin de les traiter dans des logiciels scientifiques (Matlab, Scilab etc). On pourra notamment les exporter au format CSV et dans un format compatible avec Matlab ou Gnuplot.\\ \subsection{Administrateur} \textbf{activer / desactiver compte :} l'administrateur a accès à un gestionnaire de compte, lui permettant de visualiser les comptes de tous les utilisateurs du logiciel. Dans ce gestionnaire, il a la possibilité d'activer / de desactiver n'importe quel compte, permettant ainsi à son propriétaire de pouvoir ou non accéder au logiciel.\\ \textbf{détruire compte :} dans un souci de cohérence des données de la base, on ne détruira jamais un compte utilisateur, et ce afin d'avoir toujours un contrôle (les droits nécessaires) sur toutes les données de la base. On fera cependant un exception, en proposant à l'administrateur la destruction d'un compte qui n'a jamais été activé, correspondant donc à un utilisateur qui n'a jamais entré de données dans la base. Cette fonction sert notamment lorsque l'adminstrateur souhaite rejeter la création d'un compte utilisateur.\\ \textbf{ajouter nouveau type :} permet à l'administrateur de proposer de nouvelles technologies et materiaux aux utilisateurs souhaitant créer un nouveau composant.\\