L’analyse fonctionnelle constitue une étape essentielle dans le processus de développement d’un système. Elle consiste à détailler les besoins métiers et à définir les fonctionnalités attendues du système. Ce processus rigoureux permet de :
Comprendre les objectifs du système : L’analyse fonctionnelle commence par une compréhension approfondie des objectifs du système et des problèmes qu’il vise à résoudre. Cela implique de recueillir les besoins des utilisateurs et des parties prenantes, en tenant compte de leurs attentes et de leurs contraintes.
Identifier les fonctionnalités requises : Sur la base des objectifs définis, l’analyse fonctionnelle permet d’identifier l’ensemble des fonctionnalités que le système doit offrir. Cela inclut les fonctions principales, les fonctions secondaires et les fonctions annexes, en veillant à ce que chacune d’entre elles contribue à la réalisation des objectifs fixés.
Définir les spécifications fonctionnelles : Pour chaque fonctionnalité identifiée, l’analyse fonctionnelle établit des spécifications détaillées. Ces spécifications décrivent le comportement attendu de la fonctionnalité, ses interactions avec les utilisateurs et les autres systèmes, ainsi que les critères de performance à respecter.
Servir de base pour la conception et la réalisation : L’analyse fonctionnelle fournit une base solide pour les étapes ultérieures du développement, telles que la conception architecturale, la programmation et les tests. En définissant clairement les fonctionnalités attendues, elle permet d’éviter les malentendus et de garantir que le système répond aux besoins réels des utilisateurs.
En résumé, l’analyse fonctionnelle joue un rôle crucial dans la réussite d’un projet en garantissant que le système développé répond aux besoins métiers et aux attentes des utilisateurs.
Diagamme de cas d’utilisation : gestion des compétences
Conception - gestion des compétences
php artisan make:model NiveauCompetence -m php artisan make:model Competence -m php artisan make:model CategorieTechnologie -m php artisan make:model Technologie -m
php artisan make:migration add_description_nom_to_competences_table --table=competences php artisan make:migration add_nom_and_description_to_niveau_competences_table --table=niveau_competences
php artisan migrate:fresh
php artisan migrate:fresh --seed
Question v6 : Mettre en place une interface utilisateur pour gérer les compétences.
php artisan make:test pkg_competences/NiveauCompetenceTest php artisan test
php artisan make:model Notification -m php artisan make:migration add_title_message_isVue_to_notifications_table --table=notifications
Les cas d’utilisation
php artisan make:migration add_nom_description_to_categorie_technologies_table --table=categorie_technologies php artisan migrate
php artisan make:test pkg_competences/CategorieTechnologieTest php artisan test
Question v7 : Créer une interface utilisateur pour gérer les catégories des technologies utilisées dans le projet.
php artisan make:migration add_nom_description_to_technologies_table --table=technologies php artisan migrate
pkg_competences
Variant 3: class - NiveauCompetences
Variant 4: class - Competences
Variant 5: class - CategorieTechnologies
Variant 2 : class - Technologies
Question v8 : Développer une interface utilisateur pour gérer les niveaux de compétences
Question v9 : Mettre en place une interface utilisateur pour gérer les technologies utilisées dans le projet.
cd ../../prototype/app mkdir app/View/Composers/pkg_notificationsTest cd app/View/Composers/pkg_notificationsTest type NotificationComposer.php
php artisan make:provider pkg_notification/ViewComposerServiceProvider
'providers' => [ App\Providers\pkg_notifications\ViewComposerServiceProvider::class ]