Mini projet mes courses en lignes

Fermé
dibax1 Messages postés 6 Date d'inscription mardi 4 octobre 2016 Statut Membre Dernière intervention 11 février 2020 - 9 nov. 2019 à 00:41
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 14 nov. 2019 à 21:44
Bonsoir,
Bon je me suis décidé a réaliser une application JEE mais, à partir de 0. J'ai cherché un mini cahier de charge sur le quel je travaille.Du coup, j'ai réalisé le diagramme de classe mais, j'aurais besoin d'une validation concernant certains aspect que j'ai appliqué je vous donnes le cahier de charge dans un premier temps :
Description générale du projet:
Pour répondre à cet objectif, l'entreprise Mes Courses En Ligne, un magasin de vente en ligne, désir mettre en place un outil de gestion pour vendre des produits, et pour gérer ses produits. Les produits gérés par l’entreprise Mes Courses En Ligne sont des produits de supermarché, comme de la nourriture, des boissons.
Cet outil doit intégrer les fonctionnalités suivantes :
• Module d'identification : identification des clients, des gestionnaires, des superviseurs
• Module de vente : effectuer des achats pour les utilisateurs
• Module de gestion de produits : ajout/suppression de produits
• Module de statistique : visualisation des statistiques de vente

Spécifications fonctionnelles

Il est nécessaire pour agir sur l'application, de se connecter à l'application avec un identifiant et un mot de passe d'utilisateur. Afin de faciliter son utilisation et dans le but d'éviter toute mauvaise manipulation par la suite, voici la solution retenue :
Profil utilisateur
L’utilisateur pourra visualiser les produits vendus par Mes Courses En Ligne. L’utilisateur pourra passer une commande, à condition qu’il se soit inscrit auprès du site Mes Courses En Ligne.
Profil gestionnaire
Le gestionnaire pourra gérer les produits :

• Ajout / Modification / Suppression de produits
• Ajout / Modification / Suppression de catégorie
Ces insertions de données pourront être faites à l’aide de fichiers CSV ou XML, mais aussi grâce à différents formulaires du site Internet.

Le gestionnaire pourra visualiser les statistiques de ventes.

Profil superviseur
Le superviseur pourra ajouter des gestionnaires dont les rôles sont spécifiés plus haut. Le superviseur pourra visualiser les statistiques de ventes.
Le superviseur pourra visualiser l’ensemble des actions effectuées par les gestionnaires, une sorte de piste d’audit.

Voila mon diagramme de classe:


Bon je souhaites savoir déjà si vous avez des remarques à propos de ma conception. Ainsi que j'ai une confusion pour plusieurs méthodes, par exemple l'ajout,modification et suppression d'un produit. Dois-je les mettre dans la classe gestionnaire ou produit ? La composition que j'ai mise est-elle correct ou dois-je l'enlevé ?

Je vous remercie d'avance pour le temps que vous allez accorder a mon sujet
A voir également:

2 réponses

Xavierdpt Messages postés 1 Date d'inscription mercredi 23 janvier 2019 Statut Membre Dernière intervention 14 novembre 2019
14 nov. 2019 à 10:50
Bonjour dibax1,

La classe Produit correspond à une entité qui sera persistée en base de donnnées.
En général, on place les méthodes de création/modification/suppression dans une classe séparée, et on fait une classe de gestion par entitée. Il y a aurait donc la classe GestionProduit pour gérer les produits, la classe GestionCommande pour gérer les commandes, etc...
0
dibax1 Messages postés 6 Date d'inscription mardi 4 octobre 2016 Statut Membre Dernière intervention 11 février 2020
14 nov. 2019 à 16:16
Bonjour,
Dois-je la modéliser aussi sur mon diagramme de classe? Donc gestionProduit va contenir les méthodes de produit?
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
14 nov. 2019 à 21:44
Bonjour,

Une application JEE doit reposer sur une architecture multitiers (Distributed Multitiered Applications).
Chaque tiers aura une représentation différente de chacune des données, on trouvera alors des classes DAO (Data Access Object), des DTO (Data Transfert Object), POJO et/ou Bean, etc.
Et comme l'a précisé Xavierdpt, la manipulation de ces objets se fait par des classes de services, totalement indépendantes, qui font le lien entre les différentes couches et les différentes classes.

Tu peux par exemple regarder cet article : Implémentation d'une architecture deux tiers en Java EE, qui reprends ton cas d'utilisation "se connecter à l'application avec un identifiant et un mot de passe d'utilisateur".
0