Université de Montréal Département d'informatique et de recherche opérationnelle IFT39 Automne 007 Novembre 007 IFT39 Développement, Maintenance de Logiciels Démo7 - Etude de Cas: Points de Fonction Professeur: Yann-Gaël Guéhéneuc MODELE ENTITE ASSOCIATION Démonstrateur: Naouel Moha
CALCUL DES POINTS DE FONCTION Le logiciel de gestion des tournois requiert les fonctionnalités qui sont réparties dans les modules suivants :. Gestion «Equipe». Mettre à jour. Obtenir des informations d une équipe (nom et joueurs et performance) à l écran. Gestion. Obtenir des informations concernant un joueur à l écran (équipe, buts marqués). 3. Gestion 4. Gestion 5. Gestion. Mettre à jour performance 6. Gestion. Obtenir un rapport du programme du tournoi 7. Gestion 8. Gestion «Tournoi». Exporter les noms des équipes et leurs performances dans une base de données oracle. Obtenir un rapport de classement des équipes.. Classement des buteurs. ayant le plus de billets vendu. Quel est le pourcentage où le visiteur marque le premier?. Ecart entre buts marqués et buts subis par équipe. Remarque : Gestion (fonctionnalités internes) (initiateur Equipe). Mettre à jour (initiateur )
I. Calcul des Points de Fonction Non Ajustés Fichiers Logiques Internes. joueurs. performance. adresse. heure début. arbitre. stade. résultat. journée. date s. minute. camp (hôte, visiteur). buteur. résultat bre buts hôte bre buts visiteur. buts s. points bre de victoires bre de rencontres nuls bre de défaites bre de buts marqués bre de buts subis Fichiers d interfaces Externes (Suite 5.) Billet 8. Statistiques pour Exporter les noms des équipes et leurs performances bre de billets vendus d équipe. points bre de victoires bre de rencontres nuls bre de défaites bre de buts marqués Voir Table dans Annexe Voir Table dans Annexe Simple 5 Simple 5 3
dans une base de données. bre de buts subis Entrées Externes IMPORTANT : Le tableau ci-dessous décrit seulement une liste partielle des Entrées Externes. Car le reste est déterminé de façon similaire. (Voir la description des fonctionnalités du logiciel décrite auparavant). Créer. Supprimer.3 Mettre à jour. Créer.3 Supprimer 3. Créer arbitre 3 arbitre 3.3 Supprimer arbitre 4. Créer 4 4.3 Supprimer 5. Créer une Fichiers référencés 3. adresse. adresse. heure début 7. arbitre. stade. journée (résultat sont créées auto. Voir Table dans Annexe Complexe 6 4
5 une 5.3 Supprimer une (avant début) 5.4 Mettre à jour performance 6. Créer une 6 une 6.3 Supprimer une. heure début. arbitre. stade. journée 5 3 4. date. date. date Complexe 6 Moyen 4 Moyen 4 7. Créer un 7 un. minute. camp (hôte, visiteur). buteur. minute. camp (hôte, visiteur). buteur 4 4 Moyen 4 Moyen 4 Sorties Externes IMPORTANT : Le tableau ci-dessous décrit seulement une liste partielle des Sorties Externes. Car le reste est déterminé de façon similaire. (Voir la description des fonctionnalités du logiciel décrite auparavant) 6.4 Obtenir un rapport du programme du tournoi 8. Obtenir un rapport de classement des équipes 8.3 Classement des buteurs. heure début. arbitre. spectateurs. stade. résultat. journée. points bre de buts Fichiers référencés 6 Voir Table dans Annexe Complexe 7 5
8.4 ayant le plus de billets vendu 8.5 Quel est le pourcentage où le visiteur marque le premier? 8.6 Écart entre buts marqués et buts subis par équipe. hote nombre de billets. pourcentage. écart Requêtes externes IMPORTANT : Le tableau ci-dessous décrit seulement une liste partielle des Requêtes Externes. Car le reste est déterminé de façon similaire. (Voir la description des fonctionnalités du logiciel décrite auparavant).4 Obtenir des informations d une Equipe à l écran.4 Obtenir des informations d un à l écran En Entrée : de l équipe En Sortie :. les joueurs (nom, prénom). les performances (points, victoires, nuls, défaites, buts marqués, buts subis) En Entrée : joueur En Sortie :, bre de buts marqués Fichiers référencés 3 3 Voir Table dans Annexe 6
GRILLE DE CALCUL DES POINTS DE FONCTION NON AJUSTÉS Type d Item Nombre Simple Moyen Complexe Entrées Externes 0 6*3 *4 *6 68 Sorties Externes 6 5*4 *7 7 Fichiers Logiques 9 9*7 63 Internes Fichiers d interface *5 0 Externes Requêtes Externes *3 6 TOTAL des Points de Fonction non ajustés 74 II. GRILLE DE CALCUL DES FACTEURS D INFLUENCE 0 : absent ou sans influence : influence insignifiante : influence modérée 3 : influence moyenne 4 : influence notable 5 : influence très forte Caractéristiques de l application Degré Justification d influence. Communication des données 3 Les données sont saisies en direct. L application est un système d interrogation de bases de données (plusieurs postes : architecture Client /serveur).. Fonctions distribuées 4 L application gère le transfert des données des postes vers les serveur(s) et des serveurs aux postes. 3. Comme c est une application web, le temps de réponse doit être raisonnable. 4. Configuration très utilisée (Charge de l équipement) Certains aspects de sécurité ou de synchronisation doivent être pris en considération 5. Taux de transactions 4 Comme c est une application web, il y a une pointe quotidienne de taux de transaction. 6. Saisie de données en ligne 5 Toutes les transactions sont faites en mode interactif (on-line). 7
7. Efficacité pour l usager 5 Le logiciel doit être facile à utilisé. Il faut noté que les utilisateurs finaux ne sont pas des informaticiens. 8. Mise à jour en ligne 5 les utilisateurs utilisent en même temps le logiciel, accèdent aux données. 9. Traitement complexe Le logiciel ne pose peu de difficulté de traitement majeure. Toutefois, il peut inclure des mécanismes de gestion de accès simultané aux données. Caractéristiques de l application Degré Justification d influence 0. Réutilisation du code 4 Même si le client n a pas implicitement indiqué ce paramètre, le team du projet développe des logiciels pour de nombreuses ligues sportives. Par conséquent, Ils ont intérêt à favoriser la réutilisation. Le logiciel doit être bien conçu et documenté pour faciliter sa réutilisation.. Facilité d implantation 0 Le client n a donné aucunes spécifications de conversion et d exploitation.. Facilité d opération 5 Mécanisme automatique de back up et de recouvrement après panne est nécessaire pour ce système car il y a une énorme quantité d information. 3. Sites multiples 3 Le logiciel va être installé sur plusieurs sites. Plusieurs environnements (matériel+ OS) est supposé supporter ce logiciel. Donc les besoins d opérations sur plusieurs sites ont été considérés. l application est conçue pour être utilisée dans des environnements hétérogènes (matériels et OS). 4. Facilité de changement 0 Aucune information n a été précisé concernant la modificabilité des paramètres de contrôle du logiciel par les utilisateurs de façon interactive et immédiate. TOTAL 43 FA = FACTEUR d AJUSTEMENT = 0.65 + (0.0 * Total Facteurs d Influence) = 0.65 + (0.0 * 43) =.08 8
III. Points de Fonction = PF Non Ajustés * FA = 74 *.08 = 88. IMPORTANT : Dans cette exemple, cette valeur reflète seulement un sous-ensemble de fonctionnalités du logiciel. IV. Nombre de lignes de code en Java = 88* 53 = 9964 lignes IMPORTANT : Dans cette exemple, cette valeur reflète seulement un sous-ensemble de fonctionnalités du logiciel. NOTE : Point de Fonction est équivalent en moyenne à 64 lignes de code en C++ (d après Roger S. Pressman) Annexe Tables de Noter que dans les tables qui suivent, les trois lettres S, M et C correspondent respectivement à Simple, Moyen et Complexe. Nombre d attributs pour les Entrées Externes - 4 5-5 6 + Fichiers Référencés < S S M S M C > M C C Nombre d attributs pour les Sorties Externes - 5 6-9 0+ Fichiers Référencés < S S M - 3 S M C > 3 M C C pour les Fichiers Logiques Internes et Fichiers d Interface Externes Nombre d attributs - 9 0-50 5+ (Record Element) S S M - 5 S M C > 5 M C C NOTE : Nous considérons que tous les fichiers logiques et d interface ont le Record Element égal à. pour les Requêtes Externes Noter qu une Requête Externe comporte une Entrée de données et une Sortie de données. La valeur de complexité (S, M, ou C) d une Requête Externe est celle qui est la plus grande entre celles de Entrée de données et de Sortie de données. Voir les tables ci-haut Entrées Externes et Sorties Externes pour déterminer la complexité respectivement de Entrée de données et de Sortie de données. 9