Partage
  • Partager sur Facebook
  • Partager sur Twitter

analyse fonctionnelle

Débutant / premier projet

    28 juin 2022 à 10:58:03

    Bonjour,

    Je suis technicien avec quelques connaissances en informatique, sans plus.

    Il y a un an m'a été confié un projet de création d'une application 3D.

    N'étant pas ingénieur, j'ai très peu de notion en gestion de projet.

    Je me suis jeté sur la première idée venue, c'est à dire l'utilisation d'un moteur de jeu connecté à une base de données, avec plus ou moins de succès.

    Après quelques lectures, je découvre les sciences de l'ingénieur et je réalise qu'un projet se construit selon des étapes bien définies...

    Je me suis alors documenté et je prends connaissances de ces étapes (étude de l'existant, analyse du besoin, ...).

    Mon but n'est pas de développer une application de toute pièce mais bien de déterminer la/lesquelles (gratuites ou du commerce) peuvent nous convenir.

    Je suis persuadé, que le moteur de jeu est notre solution MAIS j'aimerais reprendre l'analyse depuis le début dans les règles de l'art afin de présenter mon travail.

    MES QUESTIONS : J'ai lu quelques documents sur l'analyse fonctionnelle et au sujet de la bête à corne, les fonctions, le diagramme pieuvre, etc...

    Mais d'un autre côté, il y a des méthodes de modélisation de type MERISE, UML,...

    Alors je suis perdu : quelle méthode de modélisation dois je suivre pour finalement aboutir à un choix de logiciels ?

    En vous remerciant par avance pour votre aide !

    • Partager sur Facebook
    • Partager sur Twitter
      28 juin 2022 à 18:01:17

      Bonjour,

      Je pense que les étapes à suivre sont :

      • Rédaction d'un cahier des charges clair et le plus possible exhaustif décrivant les fonctionnalités attendues avec précision
      • A partir du CdC, modélisation des données à gérer (dictionnaire de données, entités, attributs et relation, puis MCD, puis MLD, puis SQL). Un bon logiciel de modélisation libre et gratuit : Looping MCD. Cette étape peut nécessiter quelques lectures et je pense que la méthode MERISE est adaptée ici, cf. doc "Conception BDD" via ma signature.
      • A partir du CdC, modélisation des schémas fonctionnels d'utilisation de l'application, ce qui permettra de définir les écrans (IHM) et méthodes (au sens POO) à mettre en place.
      • Création de la base de données (MPD) à partir du SQL généré par Looping.
      • Création de l'API de communication entre l'application et la base de données, par exemple type REST. Il faudra ici choisir un langage de programmation capable de communiquer avec la base de données (la plupart le font).
      • Création des écrans (IHM) intégrant la logique du moteur 3D, et "câbler" ces écrans avec l'API.

      Déplacement vers un forum plus approprié

      Le sujet est déplacé de la section Présentation de vos projets vers la section Discussions développement

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
        29 juin 2022 à 15:48:37

        Bonjour,

        Merci beaucoup Benzouye pour votre réponse exhaustive.

        - Lorsque vous parlez de modélisation des schémas fonctionnels, voulez-vous parler d'une modélisation de type "diagramme pieuvre" ?

        - Concernant la recherche de solutions techniques à mettre en face des fonctions recherchées, la littérature parle de modélisation FAST et SADT : Or je sais que la solution technique sera un moteur de jeu (utilisant par ailleurs C++ pour les API de connexion avec la BDD). Des outils de modélisations tels que FAST et SADT peuvent -ils déboucher/conclure vers cette solution (le moteur de jeu). L'idée étant :

        - 1/ Je cherche un moyen de représenter un environnement en 3D que je vais connecter à un ensemble de données

        - 2/ Je cherche une modélisation permettant de trouver des solutions techniques qui pourraient aboutir à :

                      A - Développer une application de toute pièce

                                            OU

                      B - Intégrer/une solution logiciel déjà existante (ici un moteur de jeu)

                                            OU

                      C - autre possibilité ?

        Comment dans l'analyse, par la modélisation (laquelle?), identifier les solutions possibles ?

        J'imagine que si l'on se dirige vers une la création d'une application on se dirige vers une modélisation de type UML ?

        Mais si on identifie une application déjà existante, quel modélisation utiliser ?

        Merci beaucoup !!

        • Partager sur Facebook
        • Partager sur Twitter
          29 juin 2022 à 18:41:01

          Jean-YvesLeblain1 a écrit:

          Lorsque vous parlez de modélisation des schémas fonctionnels, voulez-vous parler d'une modélisation de type "diagramme pieuvre" ?

          Peu importe l'outil de modélisation choisi. L'important c'est que vous puissiez représenter de façon exhaustive (le plus possible) les besoins d'interactions entre les utilisateurs et l'application en approfondissant progressivement la modélisation, et que cette représentation soit comprise et partagée par les acteurs du projet.

          Plus le projet se complexifie (nombre élevé d'acteurs, nombre élevé d'interfaces avec d'autres systèmes, fortes contraintes techniques ou financières) plus la formalisation sera nécessaire avec des outils qui feront consensus au sein du groupe projet.

          Il existe des dizaines d'outils de modélisation possibles, UML à elle seule en contient déjà pléthore !

          Jean-YvesLeblain1 a écrit:

          Comment dans l'analyse, par la modélisation (laquelle?), identifier les solutions possibles ?

          En tout début de projet, une fois le cahier des charges établi, on réalise normalement un benchmark, ou "état de l'art". Le but de cet étape est justement de balayer les solutions existantes, les technologies mise en œuvre dans chacune, et les avantages et inconvénients de chacune. En sortie de cet "état de l'art", le groupe projet doit être en mesure d'arbitrer la solution retenue pour la suite. Il n'est pas ici question de modélisation. Après cette étape, le cahier des charges peut être amendé pour le confronter à la réalité : point par point on met en face de chaque fonctionnalité demandée la faisabilité ou non, les freins, les risques, etc.

          Si il existe une application existante répondant à tous les points du cahier des charges, alors banco ! Vous n'avez plus qu'à rédiger un mode opératoire avec des copies d'écran et toutes descriptions utiles, point.

          Si aucune application existante ne répond au cahier des charges, alors le groupe projet doit trancher sur la piste à suivre : from scratch, hybride avec de l'existant et des développements spécifiques.

          J'ai l'impression que tu te poses beaucoup (trop ?) de questions. La méthode est simple, les outils disponibles sont nombreux, choisis ceux qui te plaisent le plus en compréhensibilité, esthétique, ou je ne sais quel critère subjectif (le nom, les couleurs, etc.), et avance.

          Pour un projet sans trop de complexité (peu d'interfaces, peu d'acteurs), je dirais qu'un cahier des charges exhaustif, un dictionnaire de données, et une modélisation entité/relation (MCD) sont largement suffisants pour travailler. Tu peux rajouter des diagrammes de séquence (ou logigrammes, plus simples) pour affiner le déroulé des actions autour de l'application.

          • Partager sur Facebook
          • Partager sur Twitter
          Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
            30 juin 2022 à 13:33:18

            Merci beaucoup pour le temps que vous avez bien voulu me consacrer.

            Bien cordialement.

            • Partager sur Facebook
            • Partager sur Twitter

            analyse fonctionnelle

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown