Professional Documents
Culture Documents
2008-2009
2009-
2010
LOGICIEL DE CUISINE
VIRTUELLE
Date : 11/01/2010
1
Rapport final
2008-2009
1
Rapport final
2008-2009
SOMMAIRE
1 - Introduction..............................................................................................4
2.7 Contraintes...................................................................................12
2.8 Limites.........................................................................................12
4 Gestion du projet.......................................................................................29
5 Conclusion................................................................................................31
6 Annexe.......................................................................................................1
1
Rapport final
2008-2009
1 - Introduction
1
Rapport final
2008-2009
L’objectif du logiciel est de permettre à un utilisateur d’une part de gérer ces recettes
et de les stocker, et d’autre part lui faciliter la préparation de celle-ci à l’aide d’un menu
et d’animations qui montre les outils, produits et actions nécessaire.
1
Rapport final
2008-2009
1
Rapport final
2008-2009
1
Rapport final
2008-2009
Dans ces deux cas de recherches après avoir fait un choix de recette, l’utilisateur peut
exécuter un certains nombre d’actions ou tout simplement revenir au menu principal.
Les différentes actions que l’utilisateur peut exécuter après le choix d’une recette sont :
«uses» Modifier
Rechercher recette
Saisir mot-clé
par mot-clé
«uses»
«uses»
Exécuter
Choix de l'action à faire
«uses» «uses» «uses»
Rechercher recette
Choix recette
par liste
«uses»
Consulter
Acteur1
vérification insertion
«extends»
Insérer recette
1
Rapport final
2008-2009
Recette trouvée
consultation
ÉtatComposite1
Exécution
Recherche
d'une recette
Choix de l'action
Modification
Menu Principal
Le cercle plein représente l’état initial du système (Menu principal). Les cercles à
bordure blanche représentent les différents états finaux c'est-à-dire l’état à après
l’exécution d’une action. Nous en avons quatre :
• Recette consultée ;
• Recette modifiée ;
• Recette exécutée ;
• Recette insérée.
1
Rapport final
2008-2009
aff
commentair Recette
Aff
pro
n
oix tio
po
ch ac
se
n u
Me
saisire
pro
po
se
sais ie re Quitter
Aff
che rche
e
p os
p ro
Recherche
sa
isi
Paquet supérieur::Acteur1 e
inf
o
se
po
transer info
pro
Aff
Menu Erreur
choix
1
Rapport final
2008-2009
commentair
pr
op
os
e
e
isir
sa
aff
propose
choix
Menu action Recette Quitter
Af f
l
cho iste
e
ix
os
op
pr
Aff
Acteur1
liste recettes
choix
control erreur
pr
op
os
re e
is i ur
aff+tr info
sa erre
tr info
g
ms
propose
saisir Recette Quitter
sa
uv
e
sa gard
Acteur1 uv e
e g ef f
ar ec
de tué
Sauvegarde
choix
1
Rapport final
2008-2009
2.7 Contraintes
2.8 Limites
Nous avons identifiés comme limites :
• Erreur commise par l’utilisateur à la saisie ;
• Limite des actions, produit, et matériel qui pourra être utilisé dans les recettes ;
• Problème lié au format de l’animation que peut être ne pourra pas être lu par le PC
de l’utilisateur ;
• Ajout du son : il ne sera pas possible d’accompagner les différentes étapes de
notre recette à l’aide d’un commentaire audio.
1
Rapport final
2008-2009
• Utilité
Cette partie nous sert à présenter la recette à l’utilisateur une fois qu’il a
choisi de la recette à consulter. Pour cela, il est explicité la liste des
ingrédients et les étapes de la préparation.
• Implémentation
bool Recettes::Consulter()
{
Récupération du nom de la recette saisie par l’utilisateur
SetNom(name);
• Problèmes rencontrés
Diagramme de séquence
1
Rapport final
2008-2009
1
Rapport final
2008-2009
• Utilité
• Implémentation
Animer:
Une méthode de la classe recette qui récupère un string qui est le nom de
l'image correspondante à une partie de l'étape soit l’action, soit l’ingrédient,
soit l’ustensile ou le récipient.
Affichertab :
• Problèmes rencontrés
Utiliser une vraie animation, les conversions du string pour utiliser avec la
fonction cls ou les méthodes de la classe bdd.
1
Rapport final
2008-2009
Diagramme de séquence
1
Rapport final
2008-2009
• Utilité
• Implémentation
bool Recettes::AjouterRecette()
{
Affichage des listes
Recuperation du nom de la recette à créer
GetNom();
• Problèmes rencontrés
1
Rapport final
2008-2009
Diagramme de séquence
1
Rapport final
2008-2009
• Utilité
La recherche par mot-clé consiste à aider l’utilisateur pour qu’il n’ait pas à défiler
toutes les recettes. Ainsi dès son entrée dans le logiciel, il lui est proposé
d’effectuer une recherche par mot clé pour s’il détient une recette en tête.
• Implémentation
Le but principal du code est de trouver le mot clé recherché par l’utilisateur.
Ainsi, il s’agit de chercher dans la base de données toutes les recettes
contenant une partie du mot clé saisi.
Pour cela, lorsque le nom d’une recette est constitué de plusieurs mots, on
découpe cela en mettant chaque mot dans un tableau et on regarde s’il est
constitué du mot clé. Si c’est le cas, on propose à l’utilisateur la liste des
recettes trouvées sinon nous l’invitons à saisir un autre mot clé.
• Problèmes rencontrés
1
Rapport final
2008-2009
Le seul problème a été la connexion avec la base de donnée qui s’est avéré
moins compliqué une fois les fondements de sqlite maîtrisés.
Diagramme de séquence
1
Rapport final
2008-2009
1
Rapport final
2008-2009
• Utilité
• Implémentation
void Recettes::ChoixEtape()
{
Do{
Récupère dans un objet Etape des identifiants de l’ustensile, recipient, et action saisie
par l’utilisateur à partir de listes ci-dessus(1)
etap.AjouterElement(ustensile);
etap.AjouterElement(recipient);
etap.AjouterElement(recipient);
Récupère dans un objet Etape de la quantité et de l’identifiant d’un ingrédient saisie par
l’utilisateur à partir de listes ci-dessus(1)
etap.AjouterElement(qt);
etap.AjouterElement(ingredient);
etap.Effacertab();
1
Rapport final
2008-2009
Remarque : Les informations sont saisies autant de fois qu’il y’a d’étapes dans la
préparation de la recette. Nous avons donc à la fin de la saisie un tableau d’étapes qui
contient chacun de ses éléments un tableau d’ingredients, d’actions, d’ustensiles et de
récipients.
Permet à l’utilisateur de modifier les étapes qu’il a saisie avant l’enregistrement dans la
BDD
Modifier(etap);
Insertion dans la table Recettes de la BDD du nom saisie par l’utilisateur et récupération
de l’ID correspondant
Ba.querysave(requete);
GetID(req,0);
Boucle permettant de parcourir le tableau d’étapes afin de les insérer dans la table
Etapes de la BDD.
for(int i=0;i<(int)etap.list.size();i++)
{
Requete permettant l’insersion dans la BDD
Ba.querysave(req);
}
}
• Problèmes rencontrés
1
Rapport final
2008-2009
Diagramme de séquence
1
Rapport final
2008-2009
• Utilité
• Implémentation
class BDD
{
public:
constructeur
BDD();
destructeur
~BDD();
1
Rapport final
2008-2009
Table Recette
Table Ingrédients
Nom
IDingrédient
IDrecette Nom
Table Actions
IDaction Nom
3 Couper
Table Ustensiles
1
Rapport final
2008-2009
IDustensile Nom
12 couteau
Table Actions-Ingrédients-Quantités
4 3 6 1 _ 12
Table Recipients
IDRecipient Nom
5 saladière
Table Etapes
1 1 4
• Problèmes rencontrés
1
Rapport final
2008-2009
contenu.
1
Rapport final
2008-2009
4 Gestion du projet
La méthode de gestion de projet permet de travailler en équipe, et de réaliser
le produit dans le temps imparti.
Pour nous situer dans le temps au cours du projet un planning a été défini, sur
le modèle d’un diagramme de Gantt.
1
Rapport final
2008-2009
BIBLIOGRAPHIE
Supplément apporté
Nous avons jugé contenu de notre avancement assez rapide dans notre projet
d'associer une interface
graphique à notre logiciel. Ce qui à pour avantage d'améliorer très
significativement sa maniabilité et sa
facilité d'appréhension. Bien cet interface n'est qu'un prototype mais cela indique
va quelle fin nous
destinons ce logiciel.
1
Rapport final
2008-2009
5 Conclusion
Ce projet nous a permis de pouvoir s’adapter au travail de
groupe. En effet, nous avons pu nous rendre compte que le
travail de groupe doit être organisé et nécessite de la rigueur et
l’entente entre les membres du groupe. Il nous a permis aussi
de mettre en pratique nos connaissances acquises et de se
rendre comptes de leurs utilités dans la vie quotidienne.
1
Rapport final
2008-2009
1
Rapport final
2008-2009
6 Annexe
6.1 Planning prévisionnel