mirror of
https://github.com/LucasVbr/interpreteur-lir.git
synced 2026-07-09 15:08:05 +00:00
MAJ Plan Projet
This commit is contained in:
+55
@@ -0,0 +1,55 @@
|
||||
\title{Résumé de cas d'utilisation --- Charger un programme} % à remplacer
|
||||
|
||||
\subparagraph{Acteurs}
|
||||
Programmeur : Il entre la commande "charge" suivie du "chemin"/de l'arborescence du fichier que l'on veut charger.
|
||||
|
||||
\subparagraph{Objectifs}
|
||||
Charger un programme en mémoire, en ayant pour seule indication son arborescence
|
||||
|
||||
\subparagraph{Pré-conditions, Post-conditions}
|
||||
Il faut que le programme ai été préalablement sauvegardé au stocké en mémoire
|
||||
|
||||
\subparagraph{Pré-Condtions}
|
||||
L'interpréteur LIR est en mode édition.
|
||||
Il faut que le programme ai été préalablement sauvegardé au stocké en mémoire, et qu'il soit un fichier texte.
|
||||
Et que sont chemin/arborescence soit accessible à l'interpréteur.
|
||||
|
||||
\subparagraph{Post-Conditions}
|
||||
Le code source a été entièrement chargé sur LIR alors le chargement s'arrête.
|
||||
|
||||
\subparagraph{Scénario nominal (grandes étapes)}
|
||||
\begin{enumerate}
|
||||
\item Le programmeur veut charger un fichier stocké.
|
||||
|
||||
\item Le programmeur consulte l'arborescence de son fichier.
|
||||
|
||||
\item Le programmeur entre la commande \verb|charge| suivie de l'arborescence de son fichier.
|
||||
|
||||
\item L'interpréteur signale au programmeur que le chargement a pu se faire par un "ok".
|
||||
\end{enumerate}
|
||||
|
||||
\subparagraph{Scénarios d'échec}
|
||||
|
||||
\paragraph{Point 2 du scénario nominal :} Aucun fichier n'est situé dans l'arborescence signalée
|
||||
\begin{itemize}
|
||||
\item L'interpréteur en avise le programmeur au moyen d'un message d'erreur.
|
||||
\item Retour au point 1.
|
||||
\end{itemize}
|
||||
|
||||
\paragraph{Point 3 du scénario nominal :} Le fichier ne correspond pas au type de fichier accepté par LIR.
|
||||
\begin{itemize}
|
||||
\item L'interpréteur affiche un message informant le programmeur.
|
||||
\item Retour au point 1.
|
||||
\end{itemize}
|
||||
|
||||
\paragraph{Point 4 du scénario nominal :} La ligne de commande est incorrecte.
|
||||
\begin{itemize}
|
||||
\item Un message d'erreur en informe le programmeur
|
||||
\item Retour au point 1.
|
||||
\end{itemize}
|
||||
|
||||
\paragraph{Point 4 du scénario nominal :} Le code source du fichier est corrompu
|
||||
\begin{itemize}
|
||||
\item Un message d'erreur en informe le programmeur
|
||||
\item Retour au point 1.
|
||||
\end{itemize}
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
|
||||
\title{Résumé de cas d'utilisation --- Éditer un programme} % à remplacer
|
||||
|
||||
|
||||
\subparagraph{Acteurs}
|
||||
Programmeur : Il écrit ou modifie un programme à faire exécuter par
|
||||
l'interpréteur.
|
||||
|
||||
\subparagraph{Objectifs}
|
||||
Écrire un nouveau programme ou en modifier un existant dans le
|
||||
but de l'exécuter ou de le sauvegarder.
|
||||
|
||||
\subparagraph{Pré-conditions}
|
||||
L'interpréteur LIR est en mode édition. Un code vierge est
|
||||
affiché ou un code préexistant est chargé depuis un fichier.
|
||||
|
||||
\subparagraph{Post-conditions}
|
||||
Le code source édité est prêt à être exécuté, abandonné ou sauvegardé,
|
||||
selon l'intention du programmeur.
|
||||
|
||||
\subparagraph{Scénario nominal (grandes étapes)}
|
||||
\begin{enumerate}
|
||||
\item Le programmeur écrit une ligne de code par instruction, en la
|
||||
faisant précéder de son étiquette.
|
||||
|
||||
\item Le programmeur consulte le code déjà écrit à tout moment avec la
|
||||
commande \verb|liste|. Selon la syntaxe choisie, l'interpréteur
|
||||
affiche la plage demandée ou la totalité des lignes de code
|
||||
du programme dans l'ordre croissant des étiquettes.
|
||||
|
||||
\item Le programmeur consulte la liste des identificateurs déclarés et
|
||||
leurs valeurs en entrant la commande \verb|defs|.
|
||||
|
||||
\item Au besoin, le programmeur efface une ou plusieurs lignes avec la
|
||||
commande \verb|efface|.
|
||||
|
||||
\item Au besoin, le programmeur efface les lignes de code et identificateurs
|
||||
mémorisés et commence un nouveau code avec la commande \verb|debut|.
|
||||
\end{enumerate}
|
||||
|
||||
\subparagraph{Scénarios d'échec}
|
||||
|
||||
\paragraph{Point 2 du scénario nominal :} Aucune ligne de code n'est écrite ou
|
||||
la plage de code à afficher n'est pas correcte.
|
||||
\begin{itemize}
|
||||
\item L'interpréteur en avise le programmeur au moyen d'un message d'erreur.
|
||||
\item Retour au point 1.
|
||||
\end{itemize}
|
||||
|
||||
\paragraph{Point 3 du scénario nominal :} Aucun identificateur n'a encore été
|
||||
déclaré.
|
||||
\begin{itemize}
|
||||
\item L'interpréteur affiche un message informant le programmeur.
|
||||
\item Retour au point 1.
|
||||
\end{itemize}
|
||||
|
||||
\paragraph{Point 4 du scénario nominal :} La plage de ligne à effacer est
|
||||
incorrecte.
|
||||
\begin{itemize}
|
||||
\item Un message d'erreur en informe le programmeur
|
||||
\item Retour au point 1.
|
||||
\end{itemize}
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
|
||||
\title{Résumé du cas d'utilisation --- Exécuter un programme}
|
||||
\subparagraph{Acteurs}
|
||||
Programmeur : Il lance l'exécution du programme présentement chargé dans l'interpréteur.
|
||||
|
||||
\subparagraph{Objectifs}
|
||||
Le but est d'exécuter les instructions du programme chargé.
|
||||
|
||||
\subparagraph{Pré-conditions, Post-conditions}
|
||||
|
||||
\subparagraph{Pré-conditions}
|
||||
Toutes les instructions chargées sont correctes.
|
||||
|
||||
\subparagraph{Post-conditions}
|
||||
Le contexte (variables) de l'interpréteur inclus le contexte final du programme.
|
||||
|
||||
\subparagraph{Scénario nominal (grandes étapes)}
|
||||
\begin{enumerate}
|
||||
\item Le programmeur exécute la commande \textbf{lance}.
|
||||
\item L'interpréteur exécute l'instruction ayant l'étiquette la plus petite.
|
||||
\item L'interpréteur passe l'instruction suivante (étiquette supérieure la plus proche sauf si changement du compteur ordinal).
|
||||
\item Tant qu'il reste des instructions avec une étiquette supérieure retour en 3.
|
||||
\item Le programme a fini de s'exécuter.
|
||||
\item Le contrôle est rendu au programmeur qui peut à nouveau saisir.
|
||||
\end{enumerate}
|
||||
|
||||
\subparagraph{Scénarios d'échec}
|
||||
\textbf{Point 2 du scénario nominal :} Aucune instruction est chargée dans l'interpréteur
|
||||
\par - L'interpréteur affiche un message d'erreur explicite.
|
||||
\par - Retour au point 6 du scénario nominal.
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
\subparagraph{Acteurs}
|
||||
Programmeur : il entre une commande à faire exécuter immédiatement par l'interpréteur.
|
||||
|
||||
\subparagraph{Objectifs}
|
||||
Exécuter la commande entrée dans l'interpréteur.
|
||||
|
||||
\subparagraph{Pré-Conditions}
|
||||
L'interpréteur LIR est lancé et le curseur est derrière l'invite.
|
||||
|
||||
\subparagraph{Post-Conditions}
|
||||
La commande est exécutée et le résultat est affiché.
|
||||
|
||||
\subparagraph{Scénario nominal (grandes étapes)}
|
||||
\begin{enumerate}
|
||||
\item Le programmeur écrit derrière l'invite une ligne de commande.
|
||||
\item Le programmeur valide cette commande.
|
||||
\item L'interpréteur effectue une analyse lexico-syntaxique.
|
||||
\item L'interpréteur interprète la ligne de commande.
|
||||
\end{enumerate}
|
||||
|
||||
\subparagraph{Scénarios d'échec}
|
||||
\subparagraph{Point 3 du scénario nominal :} la syntaxe de la ligne écrite est incorrecte.
|
||||
\begin{itemize}
|
||||
\item Un message d'erreur explicite informe le programmeur.
|
||||
\item Retour au point 4 du scénario nominal.
|
||||
\end{itemize}
|
||||
|
||||
\subparagraph{Point 4 du scénario nominal :} la commande conduit à une erreur d'exécution.
|
||||
\begin{itemize}
|
||||
\item Un message d'erreur explicite informe le programmeur.
|
||||
\item Retour au point 4 du scénario nominal.
|
||||
\end{itemize}
|
||||
|
||||
%\end{document}
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
\title{Résumé de cas d'utilisation --- Sauvegarder le programme dans un fichier}
|
||||
\subparagraph{Acteurs}
|
||||
Programmeur : il entre la commande de sauvegarde `sauve' suivit du chemin vers le nom du fichier dans lequel on veut sauvegarder le programme.
|
||||
|
||||
\subparagraph{Objectifs}
|
||||
L'objectif est de sauvegarder le programme rédigé dans l'interpréteur, dans un fichier texte
|
||||
|
||||
\subparagraph{Pré-Condtions}
|
||||
\begin{itemize}
|
||||
\item Un programme doit être rédigé (au moins une ligne)
|
||||
\item Le chemin vers le fichier ne doit pas contenir de caractères spéciaux(pour éviter les erreur)
|
||||
\end{itemize}
|
||||
|
||||
\subparagraph{Post-Conditions}
|
||||
\begin{itemize}
|
||||
\item Le fichier doit être crée (si il n'existe pas déjà)
|
||||
\item Le fichier doit contenir le programme rédigé par le programmeur
|
||||
\end{itemize}
|
||||
|
||||
\subparagraph{Scénario nominal (grandes étapes)}
|
||||
\begin{enumerate}
|
||||
\item Le programmeur execute la commande de sauvegarde
|
||||
\item Le programme empèche la saisie à l'utilisateur
|
||||
\item Le programme sauvegarde le code saisi (en mettant les étiquettes dans l'ordre croissant) et l'enregistre dans un fichier
|
||||
\item Le programme affiche un message qui indique la fin de la sauvegarde
|
||||
\item Le programme permet la saisie à l'utilisateur
|
||||
\end{enumerate}
|
||||
|
||||
\subparagraph{Scénarios d'échec}
|
||||
\begin{itemize}
|
||||
\item Point 2 : Si le chemin du fichier éxécuté dans la commande de sauvegarde contiens des caractères spéciaux;
|
||||
\begin{enumerate}
|
||||
\item Affiche un message d'erreur spécifiant qu'il ne faut pas de caractères spéciaux dans le chemin
|
||||
\item Reprend au point 5
|
||||
\end{enumerate}
|
||||
|
||||
\item Point 3 : Si aucun programme n'as été écrit;
|
||||
\begin{enumerate}
|
||||
\item Affiche un message d'erreur spécifiant qu'il faut déjà avoir rédigé le programme avant de le sauvegarder
|
||||
\item Reprend au point 5
|
||||
\end{enumerate}
|
||||
|
||||
\item Point 3 : Si aucun programme comporte plus de 99999 lignes;
|
||||
\begin{enumerate}
|
||||
\item Affiche un message d'erreur spécifiant que le nombre de lignes dépasse la valeur maximale
|
||||
\item Reprend au point 5
|
||||
\end{enumerate}
|
||||
\end{itemize}
|
||||
Reference in New Issue
Block a user