M1 : Ingénierie du Logiciel



Documents pareils
M1 : Ingénierie du Logiciel

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

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

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

Université de Bangui. Modélisons en UML

EFM.me Document de version. Version 2.2 Nouveautés et améliorations

La messagerie électronique avec La Poste

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

Installation et utilisation du client FirstClass 11

Créer et partager des fichiers

Chapitre VI- La validation de la composition.

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Guide d utilisation pour W.access - Client

Ouvrir le compte UQÀM

Manuel d utilisation de la messagerie.

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

Utilisation avancée de SugarCRM Version Professional 6.5

Guichet automatique de banque

Site Web de paris sportifs

Barid Al Maghrib. Guide d utilisateur Boite Postale Electronique. Fonctions de base. Version 1.0

Campagnes d ings v.1.6

UTILISER LA MESSAGERIE

Votre appareil est configuré en usine pour permettre d'envoyer immédiatement des SMS.

Votre adresse ... Pour consulter vos s, connectez-vous sur le site :

Nom de l application

SCOLARITE Services. Guide pour les Parents et les Elèves. Version Dernière Mise à jour 26 Juin Scolarité services guide de l utilisateur

Business Talk IP Centrex. guide. web utilisateur. pour. les services standards

Initiation à l informatique. Module 7 : Le courrier électronique ( , mail)

Se repérer dans l écran de Foxmail

Manuel d utilisation du web mail Zimbra 7.1

OMGL6 Dossier de Spécifications

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe :

Etude et développement d un moteur de recherche

TP3 Intégration de pratiques agiles. 1. User Stories (1) Scénario d intégration agile. En direct-live du château

OMGL 6 Cahier des charges

1 Modélisation d une base de données pour une société de bourse

Service On Line : Gestion des Incidents

Master MIDO 2ème année. Spécification et Conception en UML Maude Manouvrier

AGASC / BUREAU INFORMATION JEUNESSE Saint Laurent du Var Tel : E mail : bij@agasc.fr CONSEILS ET ASTUCES

Plan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml

Le Guide Pratique des Processus Métiers

Manuel de l utilisateur client

Informations sur l utilisation du webmail du CNRS. Webmail du CNRS. Manuel Utilisateur

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

PORTAIL INTERNET DE LA GESTION PUBLIQUE Guide d'utilisation du Portail Internet de la Gestion Publique

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

OCL - Object Constraint Language

IFT2255 : Génie logiciel

MEMOIRE DE STAGE DE FIN D ETUDE

SOMMAIRE. 1. Connexion à la messagerie Zimbra Pré-requis Ecran de connexion à la messagerie 4

PREMIERE UTILISATION D IS-LOG

Micro-ordinateurs, informations, idées, trucs et astuces. Utiliser une caméra IP Trendnet IP-TV110. Auteur : François CHAUSSON

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

Office 365/WIFI/Courrier. Guide pour les étudiants

MÉDICLICK! STUDIO 3 DOCUMENT CENTER : MAILCLICK! SOMMAIRE

GUIDE ADMINISTRATEUR COMMENT ADMINISTRER SIMPLEMENT?

COMMENT ENVOYER UN ING?

Espace Numérique Régional de Santé Formation sur la messagerie sécurisée. Version Auteur : Nathalie MEDA

Informations Scanner. Manuel utilisateur

Comment configurer mon iphone pour accéder à internet et lire mes s?

Guichet ONEGATE COLLECTE XBRL SOLVABILITE II (S2P) Manuel d utilisateur VERSION /04/2014 ORGANISATION ET INFORMATIQUE SDESS.

Configuration de tous les systèmes d exploitations

F O R M A T I O N S LOTUS NOTES. 8.5 Utilisateurs rue de la Bôle. E U R L. a u c a p i t a l d e

Dévéloppement de Sites Web

Diagramme de déploiement

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Patrons de Conception (Design Patterns)

ALLIANZ MODE OPERATOIRE DE MIGRATION D UNE AGENCE WINDOWS Août Version du document : 010

Manuel d utilisation du Guichet électronique V2

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

Club informatique Mont-Bruno Séances du 05 octobre et du 24 octobre 2012 Présentateurs : Réjean Côté

INSCRIRE MON ENFANT SUR UN SÉJOUR

ASIP Santé DST des interfaces MSSanté des Clients de messagerie v /02/ / 95

Manuel d utilisation du site web de l ONRN

0.1 Mail & News : Thunderbird

Table des Matières. Pages 3-4. A propos d emblue. Page 5. L environnement emblue. Création d une campagne d marketing. Pages 6-15.

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

RAPPORT DE CONCEPTION UML :

Club informatique Mont-Bruno Séances du 08 et 20 novembre 2013 Présentateur : Guy Bélanger Co-auteur : Réjean Côté

Création et utilisation de formulaire pdf

Utiliser le service de messagerie électronique de Google : gmail (1)

Formation. Module WEB 4.1. Support de cours

Guide d utilisation OGGI. Gestionnaire d incidents à l usage des clients. Date de rédaction : 04/02/2013. Version : 1.0.

Documentation Honolulu 14 (1)

Tout sur les relations d approbations (v2)

Espace de stockage intermédiaire. Compte de Messagerie. Communication «Asynchrone» «Compte de Messagerie»

Business Process Modeling (BPM)

[OUTLOOK EXPRESS WINDOWS MAIL]

Installation de GFI FAXmaker

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision

Les outils collaboratifs : bonnes pratiques, bons réflexes. Christine LOURDELET et Hélène TELLITOCCI

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

GOL502 Industries de services

(Fig. 1 :assistant connexion Internet)

Guide de l abonné KX-TVM50 KX-TVM200. Système de Messagerie vocale. Nº de modèle. Version du document /07

Guide pour la configuration d adresse

3. UML - Unified Modeling Language Diagrammes statiques

Transcription:

M1 : Ingénierie du Logiciel UNIVERSITE PIERRE & MARIE CURIE (PARIS VI) Examen Réparti 1ere partie 7 novembre 2013 (2 heures avec documents : tous SAUF ANNALES CORRIGEES). Barème indicatif sur 22 points. 1. Questions de cours [4*1,25= 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 : Expliquez la nature d une dépendance fonctionnelle et d une dépendance structurelle. Laquelle préférer en général? Fonctionnel = ens de méthodes, e.g. interface Structurel = connaitre une classe concrète On préfère fonctionnel. Barème : sur 100% 35% par élément Q1.2 : Quelles métriques peut-on proposer pour mesurer la couverture des tests de validation? Couvrir tous les use case, tous les Alt et Exc des fiches détaillées, utiliser plusieurs jeux de données pour chaque test Barème : 25% réponse qui montre qu on sait ce qu est une métrique de couverture de test. Sur 75% on cite des métriques pertinentes. Q1.3 : Quel intérêt présentent les tables de hash pour la réalisation en orienté-objet d un composant qui présente une interface basée sur des identifiants? Pour indexer les objets stockés via leur identifiant. On a du O(1) pour retrouver les objets. Barème : 0 ou 100% binaire. Q1.4 : A quel moment et dans quel but construit-on des diagrammes de séquence représentant le système opposé aux acteurs? En analyse pour découvrir les opérations (responsabilités) du système et les données que lui fournissent les acteurs. Ils servent également à l élaboration des Tests de Validation. Barème : sur 100%

25% en analyse 50% pour découvrir les opérations du système, 35% pour le formulation «données exactes échangées avec le système» pris dans les fiches de cours 25% si on cite les données fournies par les acteurs ou les tests de validation 2. Problème: Analyse de emessage [17 Pts] On souhaite mettre en place un système de messagerie type email sur un intranet professionnel. Il y a deux types de comptes, les comptes personnels et les comptes de groupe ou liste de diffusion. Chaque compte dispose d une adresse unique. Chaque compte personnel est associé à une personne physique nommée. Chaque groupe aura un unique propriétaire et un ensemble de membres. Le compte propriétaire du groupe doit être associé à un compte personnel, mais les membres du groupe peuvent être des comptes personnels ou d autres groupes. Tout message est émis par un expéditeur (qui doit être un compte personnel) à destination d au moins un compte destinataire. Un message porte un objet («Re : réunion») et une date d émission ainsi qu un texte et potentiellement des pièces jointes (fichiers). Chaque adresse personnelle est associée à un espace organisé en dossiers où sont stockés les messages entrants. L utilisateur peut ainsi consulter ses mails, les ranger et/ou les effacer. Les comptes personnels sont créés par un administrateur pour chaque nouvel employé dans la société. Ensuite tout employé peut créer un groupe dont il sera le propriétaire. Le propriétaire est le seul à pouvoir ajouter ou supprimer des membres d un groupe. Les utilisateurs se logent via une combinaison identifiant/mot de passe sur une interface web d où ils peuvent consulter et émettre des emails. L interface permettra de distinguer les mails lus et non-lus, de trier les mails et de rechercher des emails par mot clé. On aura la possibilité de répondre aux mails et de les forwarder à un tiers. Question 2.1 : (3 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. Sur 105%, écrêté à 100%. Acteurs 25% : Administrateur, Personnel (10% chacun, s ils sont liés aux bons use case, e.g. Admin ne doit pas envoyer d emails, ne doit pas étendre Personnel). +5% si on a matérialisé le Propriétaire en tant qu acteur différent. UC Admin 10% : créer compte (10%) UC Personnel 70% : login/logout, (10) émettre email (10), Forwarder et/ou reply, possiblement en extends sur envoyer mail (10) consulter emails (10) recherche en tant que UC et/ou extends consulter (10) créer groupe, (10) administrer groupe (add user). (10) -5 à -15% pour les fautes Page 2

+10% si le diagramme a un grain homogène mais grossier, i ;e. on ne voit ni rechercher, ni forward/reply. Compense le fait qu ils ont moins de u.c. mais que le diagramme est bon -10 si tout est détaillé supprimer, ajouter, ranger, trier etc sont des use case, trop fin DIAGRAMME Barême (sur 100%, majoré à 100%): TODO, une ébauche au-dessus, à affiner -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 : (3 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ù un utilisateur (déjà authentifié) crée un groupe. On arrêtera le scénario après l ajout de membres au groupe. Page 3

Titre : Créer groupe Acteur : Personnel Hypothèse : aucune Pré : L utilisateur est authentifié Post : Un compte groupe est créé dont l acteur est le propriétaire. Scénario : 1. Le personnel choisit de créer un groupe 2. Le système affiche un formulaire permettant la saisie des données du groupe 3. Le client saisit un nom pour le groupe et valide 4. Le système vérifie l unicité du nom de groupe 5. Le client valide 6. Le système créé le groupe Alternative A1 : nom déjà utilisé En SN4, si le nom de groupe est déjà utilisé, le système affiche une erreur. Retour en SN2 en réinitialisant le nom de groupe. Exception E1 : Annulation En SN3 ou SN5, l utilisateur peut choisir d annuler. Le système affiche alors l écran d accueil de l utilisateur. Titre : Administrer groupe Acteur : Personnel Hypothèse : aucune Pré : L utilisateur est authentifié Post : Les comptes cibles du groupe sont mise à jour Scénario : 1. Le personnel choisit d administrer un groupe 2. Le système affiche les groupes dont l utilisateur est le propriétaire 3. Le personnel choisit un groupe 4. Le système affiche la liste des membres du groupe 5. Le personnel choisit d ajouter des membres au groupe 6. Le système affiche une liste des comptes existants 7. Le personnel sélectionne les cibles souhaitées et valide 8. Le système met à jour le groupe 9. Retour en SN4 Alternative A1 : supprimer membres En SN5, si le personnel choisit de supprimer des membres. Page 4

A1.1. Le système affiche une liste des membres actuels du groupe. A1.2. Le personnel sélectionne les cibles à supprimer et valide. A1.3 Retour en SN8. Alternative A2 : Retour En SN2 ou SN4, l utilisateur peut choisir de sortir. Le système affiche alors l écran d accueil de l utilisateur. 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 et +10% si les étapes sont bien affectées à acteur ou système et que la première action est à l acteur +10% precondition etre authentifié +10% une post-condition au moins identifiée. +30% pour les étapes 2-3 (créer groupe 15%), et ajouter un membre (15%) correctement identifiées/couverte + 10% alternative nom de groupe existe +10% on peut ajouter plusieurs membres au groupe correctement exprimé +10% on ne peut pas ajouter d adresse de membre invalide (soit parce qu il est précisé qu on choisit dans une liste, soit via une alternative) +10% on peut annuler à au moins certaines étapes +10% si on a un u.c. gérer groupe et qu on a spécifié «effacer membre) -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 à -10% à -20% 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. E.g. on a mis un extends, mais le comportement est invoqué par le nominal (include). 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 Question 2.3 : (5,6 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. Page 5

Sur 140%, saisir directement une note sur 140, sans écrêter. Donc total possible de : 140% 4 points = 5,6 points Voici ma correction : 10% par élément, ne donner que 5 si la formulation est incomplète (e.g. cardianlités mal renseignées, il manque des attributs parmi ceux recherchés, ). 10% ComptePerso : à une adresse, nom de la personne 10% ComptePerso associé à une paire login/pass 10% CompteGroupe : à une adresse 10% CompteGroupe a des membres, qui peuvent être groupe ou compteperso 10% CompteGroupe à un propriétaire, qui est une personne 10% On a fait un Composite propre pour les groupe i.e. on a un héritage sur un Compte parent de Groupe et Personnel 10% Email porte un objet, un texte, une date 10% Email porte un ens de pièces jointes (5 si * n est pas explicite), 10% Email peuvent être lus ou non 10% Email à un expéditeur compteperso 10% Email à plusieurs * destinataires, groupe ou perso 10% Compte associé à une boite aux lettres (association * mails est ok), d une manière ou d une autrre 10% on modélise plusieurs Dossiers qui portent des emails, 10% Gestion des sous dossiers -10 classe Admin liée aux comptes perso(acteur!) Barême : Page 6

-10% si associations orientées, compositions etc -10% si opérations sur les classes -10% à 20% pour toute autre faute ou aberration Question 2.4 : (3 pts) Réalisez un diagramme de séquence de niveau analyse présentant le déroulement (scénario nominal) de l envoi d un email par un utilisateur, puis de sa consultation par un des destinataires. On représentera l authentification. Essentiellement, on doit voir sur ce diagramme toute l information circuler de l acteur vers le système, sous une forme ou une autre. Donc : Deux occurrences d acteur Personnel A et B. A : auth(«a», «soleil») A : envoyeremail(«coucou»,b@com, «salut») B : auth(«b»,»123») B : consulteremails() (le système les affiche) DIAGRAMME TODO Barême : +20% deux membres du personnel distincts (10 si un seul) +20% On voit les authentifications (les deux) +20% on envoie le mail, +10% pour une signature un peu solide (texte, objet,dest) +20% on consulte le mail, 0 si le système invoque l acteur +10% on voit les données sur les messages -10% lignes de vie incorrectes : autres que Un acteur (agent) ou le système. Page 7

-5% on ne voit pas clairement que les lignes de vie sont des instances (notation o:obj) -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 : (2,5 pts) Ecrivez un test de validation traitant l envoi d une réponse à un email. TV042 : Test reply Contexte : A exécuter sur le compte de Bob, après avoir execute le test 41 : envoi de mail de Alice à Bob. Un mail d alice est dans la boite d eréception de Bob. L utilisateur Bob est connecté (cf TV40) Entrée : sujet «test43», texte «test» Scenario : 1. Le client ouvre sa boite de réception 2. Il sélectionne le mail d Alise 3. Il sélectionne l action «répondre» 4. Il saisit l objet «test 43» et le texte «test» 5. Il sélectionne l action «envoyer» Résultat attendu : le système affiche une confirmation d envoi. Un mail est disponible dans la boite de réception d Alice. Moyens de vérification : visuel pour la confirmation, se loger comme Alice (Test 39) pour examiner la boite de réception Barême : 20% l utilisateur est logé, soit dans le scenario, soit via le contexte 20% le contexte précise qu un mail d Alice est présent dans la boite de Bob 20% toutes les données saisies sont mentionnées dans la section «entrée» (texte de la réponse en particulier) 20% R.A. un mail a été envoyé (pas juste le sys affiche une confirmation) et on propose en Moyen d ouvrir la boite du récepteur pour controler qu un message est là Sur 20% le test est reproductible et non ambigu -25% le scenario mentionne des actions du système (autre que résultat attendu) Page 8