Rational Rose - ProfitEnGrosAut
Transcription
Rational Rose - ProfitEnGrosAut
C1: {dateCommande/heureCommande >= dateInscription/heureInscription} CD4:{Ne peut supprimer une Commande si une Livraison est enregistrée pour cette CD2:{Modification de Livraison Commande} interdite si Facture générée} <<entity>> Client {UNIQUE : noClient} noClient : EntierPositif nom : ChaîneAlpha15 prénom : ChaîneAlpha15 adresseLivraison : TypeAdresseCivique dateInscription : Date heureInscription : TypeHeure courriel : TypeAdresseCourriel motDePasse : TypeMotDePasse 1 C5:{dateLimitePaiement et datePaiement>=dateLivraison} C4:{somme des paiements <= total facture} <<entity>> Facture {UNIQUE: noFacture} noFacture : EntierPositif dateLimitePaiement : Date <<entity>> Article {UNIQUE : noArticle} noArticle : EntierPositif description : String 0..* URL : TypeURL quantitéEnStock : EntierNonNégatif ... <<datatype>> TypeLibellé {String max. 30 caractères} CarteCrédit sorteCarte : TypeSorteCa... noCarte : TypeNoCarte dateExpiration : Date {UNIQUE: noCarte} {disjointe,complète} 1..* PaiementParChèque 0..1 1 PaiementParCarte numéroAutorisation : Integer noCheque : Integer 1 CompteBancaire idBanque : Integer noCompte : Integer {UNIQUE: idBanque,noComp... C3: {Une Livraison traite des Commandes d'un seul Client} 0..* <<entity>> DétailLivraison quantitéLivrée : EntierPositif <<entity>> 1..* LigneCommande quantité : EntierPositif prixNégocié[0..1] : TypeMontant dateEntréeEnVigueur : Date heureEntréeEnVigueur : TypeHeure 1 1 1 <<entity>> Livraison {UNIQUE : noLivraison} noLivraison : EntierPositif dateLivraison : Date 0..* 1..* <<entity>> PrixEnVigueur prixUnitaire : TypeMontant 0..1 <<entity>> Paiement datePaiement : Date 0..* montantPayé : TypeMontant 0..1 C2: {dateLivraison >= dateCommande} 0..* <<entity>> Commande {UNIQUE : noCommande} noCommande : EntierPositif dateCommande : Date heureCommande : TypeHeure statut : TypeStatutCommande C10:{Pas la même carte pour deux clients} C7:{Le prixNégocié < prixUnitaire} C6:{quantité de LigneCommande >= total livré} CD3:{Lors d'une nouvelle Livraison, la quantitéLivrée ne doit pas dépasser la quantitéEnStock} CD5:{Modification/suppression interdites pour Article} <<entity>> Catégorie {UNIQUE: code} 0..1 code : EntierPositif libellé : TypeLibellé C9:{Le même compte ne peut être employé pour deux clients } +parent C8:{Un Article doit avoir au moins un prix} 0..1 0..* <<datatype>> TypeMontant {Décimal deux chiffres après le point} <<datatype>> TypeHeure <<datatype>> TypeNoCarte {...} {12 chiffres} <<datatype>> <<datatype>> <<datatype>> EntierNonNégatif TypeAdresseCourriel TypeMotDePasse {Integer >= 0} {String de 6 carac.; au moins un non alphabétique} <<datatype>>{String incluant un @, max. 30 carac.}} <<datatype>> EntierPositif {Integer >0} TypeURL {...} <<datatype>> ChaîneAlpha15 {String, alphabétique max. 15 carac.} <<datatype>> TypeAdresseCivique {String max. 100 carac.} <<datatype>> TypeSorteCarte {enum(Visa,MasterCard,AmericanExpress)} <<datatype>> TypeStatutCommande {enum(confirmé,enNégociation,annulé... File: C:\Users\Robert\Documents\Travail\Docs\Enseignement\INF5180\Aut2013\ProfitEnGrosAut2013.mdl Diagram: Logical View / Main Page 1 18:04:38 5 novembre 2013 Class