UNIVERSITE DE LA MANOUBA -----¤¤¤¤-----
ECOLE NATIONALE DES SCIENCES DE L'INFORMATIQUE
ANNEE UNIVERSITAIRE
2013-2014
Matière : Génie Logiciel 1 Niveau : II2
Devoir Surveillé : corrigé
Date : Mardi 12 Novembre 2013 Durée: 2H Documents : non autorisés
Enseignantes : L. JEMNI BEN AYED, R. DRIRA, N. BEN YAHIA, S. ZBIDI
La précision, la consistance, la clarté seront appréciées
Etude de cas : Librairie en ligne (13 pts)
Remarque : Toute ambiguïté que vous pourriez rencontrer dans ce sujet devra être résolue en décrivant brièvement le choix que vous avez fait.
Une librairie souhaite vendre des livres exclusivement à travers un site Web « SitLib ».
Le système d’information de la librairie doit gérer les données relatives aux livres, aux
clients, aux commandes, aux éditeurs de livres ainsi que les interactions avec les clients, les
éditeurs et le personnel de la librairie.
Le site de la librairie doit offrir la possibilité de recherche d’un livre dans le catalogue grâce à
un moteur qui renvoie les livres dont la description contient les mots indiqués par
l’utilisateur. Le catalogue contient des ouvrages, mais également des packs contenant
plusieurs livres. Les packs sont des suggestions proposées par les éditeurs. Il existe
également des ensembles, suggestions proposées par la librairie. Un ensemble peut contenir
des livres et des packs. Les packs et les ensembles n’offrent aucune remise : le prix des packs
et des ensembles est la somme du prix des livres le composant. De même, un pack ou un
ensemble n’a pas d’existence dans le stock, seuls leurs composants sont stockés. Leur
Publicité
disponibilité est calculée en fonction de la disponibilité des livres le composant.
Un client passe sa commande sur Internet. Il choisit un ensemble de livres, de packs et
d’ensembles parmi le catalogue. Pour chacun des ces éléments, il peut choisir une quantité.
Les ensembles et les packs sont transformés en une ligne commande pour chaque livre
contenu. Ensuite, le client peut fournir l’adresse de livraison puis payer par carte de crédit. Si
tous les livres ne sont pas disponibles en stock, le client peut choisir de recevoir
immédiatement ceux qui sont en stock et les autres livres au fur et à mesure de leur
disponibilité. Le système ne garde pas de trace du client mais simplement de sa commande.
Le stock est géré par le système d’information de la librairie. Lorsqu’un utilisateur consulte
SitLib, il peut savoir combien d’exemplaires sont éventuellement disponibles en stock. Cette
quantité exclut les livres déjà commandés mais non encore livrés.
Chaque jour, le système informatique de chaque éditeur génère une commande d’après les
informations disponibles dans le système de la librairie. Cette commande contient les livres
1
commandés par un ou plusieurs clients depuis la veille et qui ne sont pas disponibles en
stock. Chaque lundi, la commande contient également les livres dont les ventes ont dépassé
10 unités depuis le dernier lundi. Pour chacun de ces livres, la commande est de 50% des
ventes de la semaine écoulée.
Le personnel de la librairie doit réaliser quatre opérations :
• Recevoir les livres en provenance des éditeurs et les introduire dans le stock. Cette opération permettra, dans la journée, au système d’information de livrer des clients en attente. Il convient de remarquer que les commandes les plus anciennes sont livrées en priorité.
• Ajouter des nouveaux livres ou packs dans le catalogue, en modifier ou en
supprimer.
• Créer de nouveaux ensembles, en modifier ou en supprimer. • Expédier les livres aux clients. Le système détermine une fois par jour les expéditions à réaliser. Comme il a déjà été précisé. Une expédition peut être totale ou partielle, en fonction du choix du client.
Publicité
Travail à faire
1. D’après vous, Quels sont les modèles de processus qui peuvent être candidats
pour mener le développement de SitLib ? Justifier (1,5pts)
2. Parmi les alternatives trouvées dans la question précédente, quel est le modèle
qui vous semble le plus adéquat ? Justifier (1pt)
3. Identifier les acteurs (justifiez) (1 pt)
Client, SI Editeur, Personnel, Réseau bancaire
4. Identifier les besoins fonctionnels par acteur (4.5pt)
Client :
• Rechercher livre • passer commande
Editeur :
• générer commande quotidienne • générer commande hébdomadaire
Personnel :
• expédier les livres aux clients • ajouter/modifier/supprimer livre • ajouter/modifier/supprimer pack • ajouter/modifier/supprimer ensemble
5. Ecrire deux besoins non fonctionnels (2*0.25)
2
o Le système devra permettre à un nouveau client de passer une commande
au bout de 15 minutes de navigation sur SitLib.
o Le système ne devra pas garder trace des informations de la carte bancaire
du client.
o Etc.
6. Elaborez le diagramme de contexte (2pts)
Client
Publicité
1,2,3, 5
6
SitLib
7
17
Réseau bancaire
13,14, 15, 16
9,10
Personnel Librairie
4 ,8
11,12
SI Editeur
1-requête recherche livre 2- commande 3-infos livraison 4-résultat recherche 5-paiement 6-Dde prise en chrge paiement 13- Dde gestion Livre 14- Dde gestion pack 7-confirmation
11- commande hebdo 12-commande quotid
8-résultat commande 9-Dde commande hebdo 10-Dde commande quotid
15- Dde gestion ensemble 16-infos livraison 17-Bulletin livraison 7. Elaborez le DFD1(2.5pt)
3
8.
4