IFT2251 Démo 3 Professeur : Houari Sahraoui Cueillette d information Démonstrateur : Guillaume Langelier 1 Question 1 Quelle est la différence entre un besoin fonctionnel et un besoin non-fonctionnel. Donnez trois exemples pour chacun. R : Un besoin fonctionnel est relatif aux fonctions, c est-à-dire à ce que le logiciel va faire. Un besoin non-fonctionnel est plus relatif aux contraintes sur comment le logiciel doit effectuer une fonction. (Contraintes de qualité) Besoin fonctionnel : fonction de traduction, Calcul de la moyenne d un étudiant, fonction d aide disponible sur la demande d un utilisateur. Besoin non-fonctionnel : un maximum de deux secondes entre la requête et la réponse, facilité d utilisation, maintenable. Question 2 Voici une liste de besoins. Faites la matrice des besoins conflictuels et faites une hiérarchisation de ces besoins. 1. Utilisation de fonction mathématique 2. Calcul symbolique 3. Différentielle d une fonction 4. Intégrale d une fonction 5. Recherche de 0 d une fonction 6. Représentation graphique d une fonction 7. Résolution d équations 8. Résolution numérique d équations 9. Affichage très rapide de fonctions en 3D 10. Affichage très fin des fonctions à l aide de rendu logiciel 11. Affichage de fonctions en 4D 12. Affichage de fonctions en 5D 13. Affichage de fonctions en 100D 1 Le cas d utilisation de la question 3 est tiré de la démonstration donnée à l hiver 2005. (Amine M. H. Rouane)
R : 1 2 3 4 5 6 7 8 9 10 11 12 1 R R R R R R R R R R R 2 R R R ok R ok ok ok ok ok 3 ok ok ok ok ok ok ok ok ok 4 ok ok ok ok ok ok ok ok 5 ok R ok R ok ok ok 6 ok ok R R R R 7 R ok ok ok ok 8 ok ok ok ok 9 C R R 10 R R 11 R 12 Hiérarchie : Mathématique o 1 o Rendu 6 9 10 11 12 o Calcul Symbolique 2 3 4 5 7 Numérique 8 Question 3 Concernant le texte suivant : Faites ces étapes dans le but de rédiger un cahier des charges. Portée du système (Diagramme de contexte) Énumération des besoins fonctionnels Énumération des besoins non-fonctionnels Répertorier les événements et donner leur type (externe, temporel, état) Les présenter comme à la page 45
Rechercher les éléments du texte (p.48 et 49) First Bid Insurance (FBI) La First Bid Insurance (FBI), compagnie d assurances automobile, demande à votre entreprise de développer un logiciel pour automatiser la gestion de ses clients. En effet, elle voudrait rapidement informatiser sa gestion qui pour l instant est uniquement «papier». Elle n a aucune expérience en informatique et après discussion avec vos analystes, ne semble pas vraiment avoir cerné complètement ses besoins. Le logiciel s adresse aux employés de l agence qui doivent faire l enregistrement puis le suivi des clients de la compagnie, des différents types d assurances souscrites par ceux-ci, des voitures assurées (dont les clients sont assumés être les propriétaires) et des conducteurs autorisés des voitures, c est-à-dire les bénéficiaires des assurances souscrites (ceux-ci peuvent être autres que le propriétaire). Une police concerne une voiture unique et un ou plusieurs conducteurs. La compagnie FBI propose trois formules d assurance : «vol / vandalisme», «accident» et «tous risques», dont une seule peut être souscrite pour une voiture donnée. Chacune des formules autorise la déclaration de plusieurs conducteurs. Les formules diffèrent par le calcul des montants de la prime et des cotisations annuelles (en fonction des données techniques de la voiture et des cotes de risque des conducteurs autorisés). Pour qu un client soit enregistré, il doit souscrire au moins à une assurance. Pour qu une personne puisse souscrire une assurance pour une voiture, elle doit être le propriétaire de cette voiture. En revanche, un client n est pas obligé de se déclarer comme étant conducteur de la voiture qu il assure (par exemple, celle-ci peut être conduite par un membre de sa famille). Une personne peut être propriétaire de plusieurs voitures. Les employés de l agence interagissent avec le logiciel et sont en contact direct ou téléphonique, avec les clients. Description du logiciel Pour chaque personne, propriétaire ou conducteur, le logiciel préserve son identité (nom, prénom) et son adresse. Les propriétaires des véhicules ont un numéro unique de contribuable pour des raisons d imposition, les conducteurs possèdent un numéro de permis de conduire. Une voiture est décrite par sa marque, son constructeur, son année de production et son numéro d immatriculation. Une police d assurance est caractérisée par un numéro de police, par la formule d assurance choisie, par le nombre maximal de conducteurs autorisés et par le montant des cotisations et des primes. Fonctionnalités du logiciel Les fonctionnalités désirées du logiciel incluent : enregistrement d un nouveau client ; souscription d une assurance pour une voiture et un conducteur ; annulation d une police d assurance ; départ d un client (annulation de toutes les assurances souscrites par le client, suppression de toutes les voitures qu il possède et de tous les conducteurs qui ne sont assurés que pour ses voitures).
Précision sur le fonctionnement 1. Souscription d une assurance pour un conducteur et une voiture. Le client fournit la description de la voiture et l identité du conducteur : pour une voiture déjà assurée, le logiciel vérifie que la police actuelle autorise un conducteur de plus et, le cas échéant, rajoute le conducteur à la police ; dans le cas contraire, le logiciel recalcule les montants (cotisation et prime) pour le nouvel ensemble de conducteurs et les affiche. Le client peut alors conclure une nouvelle police avec les nouveaux montants ou retirer sa demande de souscription ; pour une nouvelle voiture, le logiciel calcule les montants pour un nombre minimal de conducteurs et, tout comme dans le cas précédent, laisse le choix au client. (Pour les deux derniers cas, la police n est effectivement créée que si le client donne son accord aux conditions proposées.) 2. Départ d un client : toutes les polices sont annulées. Les voitures possédées par le client et les conducteurs assurés exclusivement sur ces voitures sont supprimées du logiciel. R : Info clients 1) Info clients + police Gestion assurance 2) Énumération des besoins fonctionnels : Enregistrement d un nouveau client, Conservation de l information client, souscription d une assurance, annulation d une police, départ d un client, On doit empêcher le logiciel de se retrouver dans un état incohérent en fonction des contraintes du texte. 3) Énumération des besoins non-fonctionnels : Facilité d utilisation pour quelqu un qui a peu de connaissances en informatique. 4) Événements Type Événement Déclencheur Source Activité Réponse Destination Externe Enregistrement Message au Ajouter Validation de un client l enregistrement Externe Souscription Message au Souscrire Validation à une police Externe / état Annulation Message au Validation / système Annuler une police
Externe Départ client Message au Annuler toutes les polices Validation 5) Éléments : Police, conducteur, voiture, propriétaire Question 4 R : Même question qu en 2. Vous êtres responsable de l ingénierie des besoins au sein d une entreprise. Le texte qui suit résume bien l entretien qu un membre de votre personnel a eu avec un client. L entreprise Attraction³ œuvre dans le domaine des parcs d amusements. L entreprise compte à l heure actuelle une centaine d employés saisonniers qui travaillent dans le parc d amusements, 18 employés d entretien et de maintenance et quelques 20 employés s occupant de l administration tout au long de l année. L entreprise est désireuse de mieux retracer les employés saisonniers (souvent étudiants) qui ont bien performé durant une saison dans le but de leur refaire une offre. Plusieurs statistiques sont aussi conservées sur les formations données et sur l impact de différents projets pilotes portant sur la gestion de personnel sur chaque employé passé ou présent. La gestion des paies est en ce moment une tâche fastidieuse qui requiert beaucoup d interventions manuelle de la part de la préposée aux ressources humaines. De plus le parc d attractions a beaucoup de problèmes ponctuels avec des files d attentes trop longues à certains manèges à cause de la maintenance. Dans le but de donner un service plus uniforme, le parc aimerait se doter d un système lui permettant de gérer la maintenance sur ses divers manèges. On veut tenir des statistiques sur les bris et sur l achalandage. En fonction de ces données on veut déterminer automatiquement un horaire et prioriser les tâches de maintenance à l intérieur du parc. Le système devrait aussi être en mesure de détecter les anomalies sur les manèges à la lumière des données qu ils produisent (les données diffèrent selon les constructeurs). À l aide de ces données, le logiciel doit décider d arrêter le manège ou de le laisser continuer. Dans les deux cas, il avertit automatiquement l équipe de maintenance la plus près en temps réel. Finalement, on veut envoyer de la promotion au début de chaque saison. Le parc aimerait aussi amasser et gérer de l information sur sa clientèle dans le but d augmenter ses revenus. Elle doit découvrir quel type de clientèle rapporte le plus (détenteur de billets de saisons, jeunes adultes, adolescents, famille) et évaluer l impact de ses campagnes de promotions.
Direction Client Administratif Info client / Bilan Feuille de temps Promotion Gestion du parc État manège Horaire maintenance Manèges Arrêt manège Maintenance 2)Énumération des besoins fonctionnels : gestion de la paie, statistique anciens employés, promotion client, gestion maintenance, gestion urgence, statistique sur les bris, statistique achalandage, détecteur anomalie, traduction état des manèges, fournir bilan à la direction sur les promotions, fournir bilan sur prototype de gestion d employés. 3) Besoins non-fonctionnels : temps réel pour les urgences. 4) Événements : Type Événement Déclencheur Source Activité Réponse Destination Externe Entrer Entrer une Entrer une Validation feuille de feuille Administratif feuille de temps temps Externe Entrer Entrer un Ajout d un Validation employé nouvel employé Administratif employé Temporel Début de Horloge Envoyer de la Avertissement Client saison promotion Temporel Jour de Horloge Calculer les Sortie des Imprimante paie chèques de chèques de paies paies état Bris d un Signal Manège Stopper le Envoyer signal Manège / manège provenant du fonctionnement Manège plus pagette manège + avertir maintenance maintenance maintenance Temporel Fin de Horloge Fournir bilan Envoyer bilan Courriel saison à l administration État 1 personne Signal Tourniquet Mettre à jour Rien passe au provenant du électronique les statistiques tourniquet tourniquet 5) Éléments : employé administratif, employé de maintenance, employé saisonnier, manège, client, promotion, prototype gestion de personnel, bilan, formation