M1 : Ingénierie du Logiciel



Documents pareils
M1 : Ingénierie du Logiciel

Technologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21

Pré-conditions : Evénement déclencheur : le client souhaite un virement. Description du déroulement du cas : Description des Use cases

SPF FIN. Patris Spécification de Use Case: 15-UC01 Obtenir de l'information patrimoniale. Version 1.1

CONDITIONS GÉNÉRALES D ACCÈS ET D UTILISATION (C.G.A.U.) DU SERVICE BIXI PAR LES ABONNÉS 1 AN OU 30 JOURS ARTICLE 1 OBJET DU SERVICE BIXI

Etude et développement d un moteur de recherche

Paiement sécurisé sur Internet. Pack Factures Documentation générale sur le paiement de factures par carte bancaire sur apayer.fr

Guichet automatique de banque

UTILISATION DE LA BORNE PAR LE CLIENT

Manuel d utilisation JeResilieMonContrat.com. pour l agent

GUIDE D UTILISATION ADSL ASSISTANCE

NOTICE D UTILISATION DE LA PLATEFORME DES AIDES REGIONALES (PAR) UNEEM PREMIERE CONNEXION - CREATION & GESTION DE VOTRE COMPTE UTILISATEUR

COMMENT ACHETER VOS PLACES EN LIGNE? Nous allons vous aider étape par étape à acheter des places en ligne.

QUICK START RF Monitor 4.3-1

LPC 100 LECTEUR DES BADGES AVEC CLAVIER CODE 100 BADGES ET/OU 100 CODES

Manuel d utilisation du logiciel RÉSULTATS. Édition destinée aux départements

Procédure pour emprunter ou réserver un livre numérique

INSCRIRE MON ENFANT SUR UN SÉJOUR

Diagramme de déploiement

Site Web de paris sportifs

Petit guide pratique de dépannage du système d alerte centralisée (modèles de 1980 à 1988)

Prestation électronique de service pour la transmission d un bilan de phosphore

Chapitre 4 : Guide de Mouvement et Masque

Ajouter le moyen de paiement e-chèque-vacances (ANCV) Systempay 2.3

UBS Commercial Cards Online Portal Manuel d utilisation

Guide d utilisation «Extranet Formation» V3.5

Manuel d Installation et de Configuration Clic & Surf C&S 3.3

MODULE «Plateforme INSCRIPTIONS en ligne» MyOutDoorBox Mode opératoire

MODULE «Plateforme INSCRIPTIONS en ligne» MyOutDoorBox Mode opératoire

Ingénérie logicielle dirigée par les modèles

CAHIER DES CHARGES GESTION DES STOCKS

Service On Line : Gestion des Incidents

REGLEMENT D'UTILISATION DU PARC MINUTE DE L HOTEL D AGGLOMERATION

Solutions du chapitre 4

Partage avec collaboration Important : Ce type de partage exige la connexion à un serveur CmapServer.

Bases de données et interfaces Génie logiciel

e)services - Guide de l utilisateur e)carpa

Genie Logiciel Avancé Projet :Gestion d une chaîne hotelier low cost

Règlement public et conditions générales d utilisation du service de Vélo en Libre Service, V Lille, implanté sur le territoire de Lille Métropole

GUIDE DU NOUVEL UTILISATEUR

1- Maintenance préventive systématique :

COURS WINDEV NUMERO 3

Manuel de l utilisateur à l intention des candidats externes

L éduca onfinancière. Manuelduparticipant Lacotedecrédit. Unedivisionde

Configuration de la Borne Interactive

FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date :

GÉNÉRATEUR D ACTIVITÉS «PAGE»

TRAAM STI Acquisition et exploitations pédagogiques des données sur un système pédagogique

BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)

Les outils graphiques d expression pour l analyse fonctionnelle des systèmes Domaine d application : Représentation conventionnelle des systèmes

Traitement des données avec Microsoft EXCEL 2010

Qu est ce que Visual Guard. Authentification Vérifier l identité d un utilisateur

TD sur JMS ) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS?

Application de Gestion des Notes de Frais sous Lotus Notes via un navigateur avec WorkFlow 1

Publier dans la Base Documentaire

CONDITIONS PARTICULIERES DE VENTE EN LIGNE DE TITRES DE TRANSPORT SUR REMONTEES MECANIQUES

Utilisation du client de messagerie Thunderbird

Comment déposer les comptes annuels des associations, fondations et fonds de dotation.

Le réseau et les tables virtuelles Synapse

DISTRILOG 2 QUICK START

Guide d utilisation des fichiers bonus accompagnant le guide «L Argent est une science exacte»

1 Introduction C+ + Algorithm e. languag. Algorigramm. machine binaire. 1-1 Chaîne de développement. Séance n 4

Liste des FICHES PRATIQUES

Pas à pas. Saisie des Factures en décentralisé - UQAM

Il suffit de quelques clics pour réaliser votre paiement en ligne. Votre paiement est sécurisé à chaque étape.

DAG ADMIN. SOMMAIRE. Vos équipements I - Point de détection II - Caisse a) Caisse

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Contrôleur de communications réseau. Guide de configuration rapide DN

Écriture de journal. (Virement de dépense)

MANUEL UTILISATEUR DU SITE D INSCRIPTIONS FCL1.028 DGAC POUR LES CANDIDATS AUX CONTROLES DE COMPETENCES LINGUISTIQUES LANGUE ANGLAISE ORGANISES PAR LA

Paiement sécurisé sur Internet. Fonctionnalités du Pack Factures

Aide pour les abonnés aux listes sympa du LAAS

SERVICES EN LIGNE DES SUBVENTIONS ET DES CONTRIBUTIONS

GeFA. Logiciel de Gestion de Flotte Automobile

Avec une Carte Bancaire*

Écrit par Riphur Riphur.net

MANUEL D UTILISATION LIVRET DE L ENSEIGNANT

Bibliothèque Numérique de l INSA de Toulouse Mode d emploi des livres électroniques NUMILOG

CREATION DMP En Accès Web

Guide d implémentation. Réussir l intégration de Systempay

LA GMAO ACCEDER : EXPLOITATION POUR L ENSEIGNEMENT

Guide de l adhérent/ Manuel d utilisation Simpl-IR «Paiement des Versements des prélèvements sur revenus salariaux et assimilés»

EBOW DESCRIPTION APPLICATIVE

Guide Expert Comptable Production Coala

Pas à pas Saisie des RIG en décentralisé - UQAM

Guide d installation et d utilisation

PROCÉDURE ÉLECTRONIQUE DE REMISE DE NOTES

Guide de l utilisateur du Centre de gestion des licences en volume LICENCES EN VOLUME MICROSOFT

Documentation. Manuel Utilisateur. E-Shop

Documentation. Manuel Utilisateur. E-Shop

GUIDE MEMBRE ESPACE COLLABORATIF. Février 2012

Nom de l application

Contrat de location Studio-Orcieres Merlette. Mettre le prix de votre séjour ici

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Ce qu il faut savoir avant de partir : faire respecter vos droits, c est notre but

MANUEL D INSTALLATION

ACCUEIL - P. 5 DEMANDES DE PAIEMENT - P. 8

GESTION DU LOGO. 1. Comment gérer votre logo? Format de l image Dimensions de l image Taille de l image 9

Transcription:

M1 : Ingénierie du Logiciel UNIVERSITE PIERRE & MARIE CURIE (PARIS VI) Examen Réparti 1ere partie 8 novembre 2012 (2 heures avec documents : tous SAUF ANNALES CORRIGEES). Barème indicatif sur 22 points. 1. Questions de cours [5 Pts] Répondez de façon précise et concise aux questions. Barème : VALABLE sur toutes les questions de cours : -25 à -50% si la réponse inclut la bonne idée, mais qu elle est noyée dans des infos ou autres réponses fausses/inappropriées. Q1.1 : Pourquoi parle-t-on de rupture du cycle de vie du logiciel entre l analyse et la conception? On passe du QUOI (Problème) au Comment (Solution). Barème : 0 ou 100% Binaire Q1.2 : Le test permet-il de prouver qu un système fonctionne correctement? Justifiez votre réponse. Non, car non exhaustif, donc on ne peut que se satisfaire d une couverture. Exemples domaine String, séquences infinies d appels => impossible de prouver. Barème : 75% réponse 25% explication qui cite la nature infinie des domaines de test. Q1.3 : Pourquoi limite-t-on les signatures des opérations des interfaces des composants à des types simples (String, Bool, Float ) ou d autres interfaces? Pour éviter tout dépendance à une implémentation spécifique. Cela permet de franchir les barrières entre langage hétérogènes (dans divers composants) sans problèmes. Les interfaces sont ok, car prise en charge par le modèle de composant. Barème : 100% réponse qui cite la portabilité/hétérogénéité des plateformes. 50% si réponse sur les dépendances fonctionnelles. Q1.4 : A quel moment et dans quel but construit-on des diagrammes de séquence représentant des instances de composants dans le cycle en V de l ue? En conception générale ou architecturale pour découvrir puis figer les interfaces des composants et les grandes lignes de l interaction + valider le découpage proposé. Barème : sur 125%, majoré à 100%

25% en conception architecturale 25% découvrir/élaborer les opérations des itf 50% les figer/valider (au moins une des deux idées) 25% pour élaborer les tests d interaction 2. Problème: Analyse de AutoLib [16 Pts] Autolib c est le premier service de location courte durée de voitures 100% électriques en libreservice sans retour obligé au point de départ. Une révolution de vos modes de transport qui vous apporte liberté et sérénité. Avec Autolib, vous louez dans les 46 communes concernées une Bluecar pour circuler dans toute l'île-de-france. Simple et écologique. Autolib, comment ça marche? 1. L abonnement Le client s inscrit sur l une des bornes Autolib' entièrement automatisée, où il est mis en relation avec un agent AutoLib qui l accompagnera dans la démarche (demande des pièces à scanner, contrôle de la qualité des photos ) Une copie sera réalisée du permis de conduire, ainsi que d une pièce d identité (carte nationale d identité ou passeport en cours de validité). Une carte bancaire (Carte Bleue, Visa, Mastercard) est également nécessaire pour valider l inscription. Le client définit au cours de la procédure un mot de passe qui est associé à son badge. Après validation de la transaction, la borne délivre un badge personnel qui donne accès au service Autolib. 2. La location Equipé(e) d un badge personnel validé, le client se rend à la borne de location de son choix parmi les 600 stations et prend possession d une Bluecar. La station est constituée d une borne d accueil qui permet au client de passer son badge personnel sur le lecteur puis de s authentifier à l aide de son mot de passe. Le client peut alors choisir de retirer une Bluecar disponible, il valide un formulaire assurant qu il est en état de conduire, puis valide. Une voiture lui est alors attribuée. Si aucune voiture n est disponible, une carte des stations les plus proches comportant des voitures est proposée. Le client dispose de 5 minutes pour débrancher le câble d alimentation de la Bluecar et l enrouler pour pouvoir fermer le capot de la borne de charge. Il monte à bord et roule jusqu à une (autre) station AutoLib. En cas de problème, il peut faire une déclaration au centre d appel à tout moment à l aide d un bouton prévu à cet effet dans la Bluecar elle-même. L agent du centre d appel qui répond enregistre alors si nécessaire une fiche d incident. N.B : Au moment de la location et de la restitution de la Bluecar, c est le client qui est responsable du câble qui l alimente et la relie à une borne de charge. C est la déconnexion et la reconnexion de ce câble au véhicule qui déclenche et met fin au compteur de location. La voiture garée dans la station d arrivée, le client peut avec son badge ouvrir la borne de charge pour dérouler le câble et y brancher la Bluecar. La location prend fin lorsque le raccordement est correct et le clapet de la borne de charge fermé. Les portes de la Bluecar doivent être verrouillées. Pour cela, le client passe son badge personnel sur le lecteur afin de verrouiller la Bluecar. Il n est alors plus possible de démarrer le véhicule. Page 2

Votre SSII a décroché le gros lot, vous serez sous-traitant pour la construction du système d information permettant la gestion d AutoLib. Vous êtes chargé de développer l application cadre qui héberge le système d information d AutoLib. En particulier, ce système d information doit permettre le suivi de l état des voitures et des locations des clients (pour la facturation entre autres), ainsi que garder la trace des éventuels incidents rapportés par un client au cours d une location. Le lot correspondant à la facturation a été attribué à une autre SSII, «QuickCash». Quotidiennement, votre système devra transmettre à QuickCash les données de location du jour écoulé : identifiant du client, date(s) et lieu(x) de prise en charge, date(s) et lieu(x) de restitution. Question 2.1 : (3,5 pts) Réalisez le diagramme de cas d utilisation de la phase d analyse. Vous justifierez tous vos choix, par un texte ou des annotations sur le diagramme. Acteurs : Agent DRH, Client UC Client : créer compte, login/logout, établir contrat, valider devis UC Agent : modifier contrat client, satisfaire demandes, valider participation employé, émettre devis. Barême (sur 100%, majoré à 100%): 25% use case TransmettreFacturation, le use case, son acteur principal «cron», l acteur secondaire QuickCash (10%) 25% s inscrire lié au client ET à l agent. La modélisation d un acteur supplémentaire (visiteur=>pas encore abonné) est OK aussi. La modélisation avec deux use case séparés, un pour agent un pour client donne 15%. Si l agent n est pas lié à l inscription de quelque manière, donner 10% (use case + client). 25% use case louer voiture, possiblement découpé comme dans ce corrigé en emprunter restituer. On acceptera aussi emprunter et restituer comme use case principaux (sans «louer»). Si on a un use case «conduire» ne donner que 15%. 25% use case signaler anomalie, qui étends la location. Attention à la modélisation, on doit avoir l agent lié à ce use case (15% use case lié à l agent) mais aussi un lien vers la location ou au moins l acteur Client qui déclenche le traitement (10%). Ici l extends sur «louer» joue ce role. On donnera cependant 25% si la réponse ne lie pas au client mais Page 3

qu il y a un texte qui dit que l interaction téléphone est hors système. On donnera aussi 15% pour la modélisation avec un use case agent et un use case Client. -10% à +10% diagramme bien commenté (-10% aucun commentaire/aucun texte pour accompagner le diagramme, diagramme sec) Jusque -30% si niveau de détail trop fin, e.g. saisir mot de passe, débrancher véhicule, clic sur ok -20% par héritage, include ou extend injustifiable ou autre incohérence/mésusage d UML. -10% si on ne précise pas qui fait l action dans le scenario (use case sans acteur lié) Question 2.2 : (4,5 pts) Précisez la feuille détaillée (acteurs concernés, hypothèses/préconditions, post-conditions, scénario nominal, alternatives, exceptions) du (ou des) cas d utilisation(s) correspondant à la phase où le client loue une voiture. On arrêtera le scenario quand l acteur démarre la voiture. Titre : Emprunter véhicule Hypothèse : La borne est correctement connectée au système. Pré : aucune Post : La location d une voiture par le client est enregistrée. Le client a pris possession de sa BlueCar. Scénario : 1. Le client badge la borne 2. Le système demande son mot de passe 3. Le client saisit son mot de passe 4. Le système propose de louer une voiture 5. Le client valide 6. Le système affiche le formulaire de santé 7. Le client valide 8. Le système indique la borne de retrait 9. Le client badge la borne, l ouvre et débranche le véhicule. 10. Le système enregistre la date de prise en charge du véhicule comme début de location. 11. Le client déverrouille la voiture et démarre. Exception E1 : Echec authentification En SN4, si l identifiant et le login ne correspondent pas, la borne affiche un diagnostic et invite l utilisateur à réessayer. L interaction est terminée. Exception E2 : Pas de voiture disponible En SN4, s il n y pas de véhicules disponibles, la borne affiche la carte des stations disponibles. E2. 1 L utilisateur lit la carte et valide. Page 4

E2. 2 L interaction est terminée. Exception E3 : Abandon utilisateur En SN3, SN5 ou SN7, l utilisateur peut choisir d annuler. L interaction est terminée. Exception E4 : Timeout borne En SN9, si l utilisateur met plus de 5 minutes à activer la borne, la location est annulée. Exception E5 : mauvais badge EN SN2, si le badge n est plus actif ou pas reconnu, le système affiche un diagnostic et l interaction est terminée. Barême :sur 110% majoré à 100% Cette question est très délicate à corriger. Il faut donc vérifier les points suivants. -10 à +10% cohérence globale du texte, utilisation correcte des champs Pré/Post/Scenario etc... En particulier, -10% si les préconditions/hypothèses sont testées dans le scenario. +10% une post-condition au moins identifiée. +30% pour les étapes 2-3 (login 10%), 6-7 (formulaire 10%) et 9-10 (débrancher + début location 10%) correctement identifiées/couverte +50% : +10% par exception traitée (échec authentification, carte si pas de dispo, abandon, timeout, mauvais badge). Compter 0 si c est indiqué «alternatif» mais que ça viole les post-conditions. -10% le client n a pas l initiative (déclencheur) -10% on ne sait pas clairement qui du système ou de l acteur fait l action dans une étape du scenario -15% :Spécification d étapes hors système comme étapes du scenario (e.g. l agent téléphone à l employé). -10% à -30% les séquences sont mal expliquées/peu détaillée (ou compter 5 au lieu de 10% quand c est mal expliqué la séquence) Jusqu à -50% si on a découpé en plusieurs use case en question 1, mais que leur description détaillée n est pas cohérente avec le diagramme. Jusqu à -50% si les pré et post condition sont incohérentes avec le scénario nominal Jusqu à -50% si le scénario fait apparaître des interactions entre des entités autres que les acteurs et le système (a priori bornes et voiture font partie du système, du moins ils génèrent des actions visibles) Question 2.3 : (4,5 pts) Réalisez le diagramme de classes métier de la phase d analyse. Vous justifierez tous vos choix, par un texte ou des annotations sur le diagramme. On ne représentera pas la classe représentant le «Système», introduite dans l approche en V du module. Voici ma correction : Barême : Page 5

10% Classe client/et ou badge : identifiant/mdp et références personnelles. Images (permis, ID) ok 40% description de la classe location : liée à deux addresse (10% si lien sur borne, 5% si string), 10% avec les deux dates début fin liée à une voiture (10%) lien 1-* et à un client (10%) lien 1-* 10% classe borne matérialisée (ou classe station, si pas de bornes mais que c est bien fait) 10% station liée à des bornes 1-* 10% lien voiture borne potentiel (gareeà) 10% classe voiture 10% classe incident liée au moins à un client, possiblement via une location -15% si associations orientées, compositions etc -15% si opérations sur les classes -10% à 20% pour toute autre faute ou aberration -10% aucun commentaires, aucune note. Question 2.4 : (3 pts) Réalisez un diagramme de séquence présentant le déroulement (scénario nominal) de la procédure consistant à louer une voiture, de l emprunt à la restitution finale. Essentiellement, on doit voir sur ce diagramme toute l information circuler de l acteur vers le système, sous une forme ou une autre. Page 6

Barême : +30% lignes de vie correctes : Un acteur (agent), le système. (0% si autre chose, sauf éventuellement une création d objet métier) 15% On doit voir apparaitre l authentification (avec mot de passe qui circule, ne donner que 5% si on ne voit pas le mot de passe) 10% La validation du formulaire santé n est pas forcément modélisée, mais on devrait la voir, s ils l ont mise dans la fiche détaillée. Globalement, contrôler la cohérence avec la fiche détaillée dans les premières interactions. 25% les actions brancher et debrancher qui permettent le suivi des locations (pas nécessairement avec des paramètres, l énoncé est peu clair sur la frontière entre système et périphériques, donc on acceptera même avec des signatures vides). +20% on voit apparaitre comme responsabilités privées du système (boucles sur sa ligne de vie) des choses comme «enregistrer début location», «controler mdp», ou des affichages. -20% si appel du système à une opération de l acteur Agent (e.g. avec une demande de saisie par l agent). L envoi asynchrone d un message, ou une note expliquant qu on considère que Joe représente l acteur et son IHM => -10%. Cela reste incorrect. On cherche les responsabilités du système, pas des acteurs (donc externes au système). -10% les lignes de vie ne sont pas clairement des instances Question 2.5 : (1,5 pts) Ecrivez un test de validation traitant l affichage de la carte des stations les plus proches. TV042 : Test carte proximité Contexte : A exécuter sur la station de Test 01, après avoir loué l unique BlueCar qui s y trouve initialement (cf. TV012, Location) et l avoir restitué (cf TV017, Restitution) dans la station de Test02. Entrée : Badge valide associé au Client «Bob», un mot de passe : «soleil» Scenario : Page 7

1. Le client passe son badge sur la borne 2. Il saisit son mot de passe «soleil» 3. Il demande un véhicule Résultat attendu : le système affiche la carte des stations, sur laquelle doit figurer la station de test Test02 où l on a rendu la BlueCar (TV017). Moyens de vérification : visuel Barême : 50% données précises de test fournies, clairement reproductible et non ambigu 50% test cohérent (scénario, contexte initial et donnée d entrée) et essayant de faire planter l application. 25 % si manque de cohérence mais l objectif est correct 0% sinon Page 8