SOMMAIRE
INTRODUCTION....................................................................................................................................2
I. ANALYSE DES BESOINS.................................................................................................................3
II .CONCEPTION.......................................................................................................................................5
III. IMPLEMENTATION...........................................................................................................................6
IV. TEST.......................................................................................................................................................8
V. DEPLOIEMENT.....................................................................................................................................8
VI.MAINTENANCE...................................................................................................................................9
CONCLUSION..........................................................................................................................................11
1
INTRODUCTION
Un logiciel de gestion de profil est un outil informatique qui permet de gérer et de centraliser les
informations relatives à des individus ou des entités, telles que des clients, des employés. Il sera
question pour de modéliser ce logiciel en utilisant le langage de programmation Java et la
méthode MERISE pour l’analyse et la conception du système d’information qui fera l’objet de
notre logiciel.
2
I. ANALYSE DES BESOINS
1. Contexte et objectifs
L'application est un système de gestion de profils professionnels incluant des aspects
médicaux, éducatifs, linguistiques, de compétences et d’orientation de carrière.
Objectifs
Nous pouvons citer entre autre:
Permettre aux utilisateurs de créer et gérer leur profil. ;
Centraliser les informations personnelles, professionnelles, médicales ;
Suivre les parcours et les plans de carrière ;
Gérer les langues et domaines de compétence.
Fournir un tableau de bord utilisateur.
Faciliter l’exploitation des données pour un usage ou orientation ;
2. Acteurs identifiés
Utilisateur final : crée et met à jour son profil.
Administrateur : supervise les comptes, modifie les référentiels (langues, domaines, diplômes).
Système : effectue des opérations automatiques, statistiques,
2. Dictionnaire des données (résumé simplifié)
Entité Description
Utilisateur Données d’accès et rôle de l’utilisateur
Profil Informations personnelles et générales
Diplôme Niveau d’éducation lié au profil
Langue Langues disponibles dans le système
3
Antécédents médicaux État de santé lié au profil
Domaine Domaines de compétence professionnels
Plan de carrière Projets ou objectifs de développement
professionnel
Compétence Savoir-faire associé à un domaine
Tableau de bord Vue synthétique d’un profil
4. MCD – Modèle Conceptuel de Données (description textuelle)
Un utilisateur possède un profil.
Un profil peut avoir plusieurs diplômes, antécédents médicaux, langues,
domaines, plans de carrière.
Une langue ou un domaine peut être associé à plusieurs profils (relation n-n via
tables pivot).
Un domaine contient plusieurs compétences.
Un plan de carrière est lié à un profil et à un domaine.
5. MCT – Modèle Conceptuel des Traitement
Traitement Données manipulées
Création d’un utilisateur utilisateurs
Création/édition de profil profils, utilisateurs
Ajout d’un diplôme diplomes, profils
Enregistrement antécédents médic. antecedents_medicaux, profils
Ajout de langues/domaine profil_langue, profil_domaine
Définir un plan de carrière plans_de_carriere, domaines, profils
Visualisation tableau de bord tableaux_de_bord, synthèse d’infos du profil
Authentification utilisateurs
Authentification utilisateurs
4
6. Besoins fonctionnels
Authentification sécurisée.
Interface de gestion du profil par l’utilisateur.
Saisie simple des antécédents médicaux et du parcours éducatif.
Ajout de langues et compétences via sélection
Création de plans de carrière personnalisés.
Vue d’ensemble sous forme de tableau de bord.
Filtrage ou recherche des profils selon critères.
7. Besoins non fonctionnels
Sécurité : hachage des mots de passe, protection des données médicales.
Performance : chargement rapide du tableau de bord.
Accessibilité : interface responsive.
Évolutivité : ajout futur de modules (ex : historique d’emploi, formations continues).
Confidentialité : gestion des rôles (limiter l’accès aux données sensibles).
II .CONCEPTION
La conception d'un logiciel de gestion de profil implique plusieurs étapes :
Architecture
- Le logiciel sera développé en utilisant une architecture MVC (Modèle-Vue-Contrôleur).
- La base de données sera utilisée pour stocker les informations des utilisateurs et des
profils.
- L'interface utilisateur sera créée en utilisant Java
Fonctionnalités
- Création de profils : les utilisateurs pourront créer leur profil en fournissant les
informations requises.
- Gestion des diplômes : les utilisateurs pourront ajouter, modifier et supprimer leurs
diplômes.
- Gestion des plans de carrière : les utilisateurs pourront ajouter, modifier et supprimer
leurs plans de carrière.
5
- Gestion des domaines et des langues : les administrateurs pourront gérer les domaines et
les langues proposés dans le logiciel.
- Recherche de profils : les utilisateurs pourront rechercher des profils en fonction de
critères spécifiques.
Interface utilisateur
- La page d'accueil présentera un formulaire de connexion et un lien pour créer un
compte.
- La page de profil présentera les informations du profil, les diplômes, les plans de
carrière et les domaines et langues associés.
- La page de gestion des diplômes et des plans de carrière permettra aux utilisateurs de
gérer leurs informations.
Règles de gestion
- Les utilisateurs devront être authentifiés pour accéder à leur profil et aux fonctionnalités
du logiciel.
- Les administrateurs auront accès à toutes les fonctionnalités du logiciel, y compris la
gestion des domaines et des langues
Technologies
- Base de données : phpMyAdmin SQL
- Langage de programmation : Java
- Interface utilisateur : Eclipse
III. IMPLEMENTATION
L’application a été développée en Java avec les technologies suivantes :
JDK : Version 8 ou supérieure, pour compatibilité avec Swing et JDBC.
Swing: Pour l’interface graphique, avec des composants personnalisés (gradients,
ombres, etc.).
Classes principales :
WelcomeWindow.java : Contient la méthode main, lance l’application.
6
ViewProfile.java : Gère l’affichage des profils, la recherche, et la navigation vers les
détails.
ProfileDetails.java : Affiche les informations détaillées et permet la
modification/suppression.
AddProfile.java et ModifyProfile.java : Gèrent la création et l’édition des profils.
Utils.java : Fournit la connexion à la base de données SQLite
Gestion des ressources :
o L’image par défaut `user.png` est chargée via des chemins relatifs pour garantir la
portabilité dans le JAR.
o La base de données est accessible via jdbc:sqlite:profiles.db, avec gestion des erreurs
SQL.
Fonctionnalités :
- Recherche dynamique des profils par nom.
- Affichage des profils avec photo ou image par défaut.
- Validation des entrées lors de l’ajout/modification.
- Suppression avec confirmation via une boîte de dialogue.
7
IV. TEST
V. DEPLOIEMENT
1. Construction du JAR
- Les fichiers sources (src/profiler_app/*.java) ont été compilés avec java
- Les ressources (image/user.png) et la base de données (profiles.db) ont été incluses dans le
JAR ou placées dans un dossier associé.
- Un fichier manifeste spécifie profiler_app.WelcomeWindow comme classe principale.
8
- Commandes utilisées :
o Bash
o javac -d build -cp "lib/sqlite-jdbc-3.42.0.jar" src/profiler_app/*.java
o cp database/profiles.db build/
o cp -r src/image build/
o jar cfm profiler_app.jar manifest.txt -C build
2. Création d’un exécutable
- Le JAR est exécutable via java -jar profiler_app.jar.
- Pour un usage convivial, un exécutable Windows (.exe) a été envisagé avec Launch4j
- Le JAR est enveloppé dans profiler_app.exe.
- La base de données profiles.db est distribuée à la racine.
VI.MAINTENANCE
La maintenance sera basée sur plusieurs aspects :
1. Mises à jour
- Ajout de nouvelles fonctionnalités (par exemple, exportation de profils en PDF, statistiques).
- Mise à jour du pilote SQLite ou du JDK pour compatibilité future.
2. Correction de bugs
- Surveillance des erreurs signalées par les utilisateurs (par exemple, problèmes d’accès à
profiles.db).
- Amélioration de la gestion des erreurs dans Utils.java.
3. Sauvegarde
- Recommandation aux utilisateurs de sauvegarder profiles.db régulièrement.
- Possibilité d’ajouter une fonctionnalité de sauvegarde automatique dans une future version.
4 . Évolutivité
9
- Modularité du code pour faciliter l’ajout de tables ou de fonctionnalités.
- Possibilité de migrer vers une base de données distante (MySQL, PostgreSQL) si nécessaire.
10
CONCLUSION
Nous avons effectué un travail de conception et d'implémentation d'un logiciel de gestion
de profil pour les utilisateurs. Ce logiciel permet de stocker et de gérer les informations des
profils, des diplômes, des plans de carrière, etc. De ce fait, nous avons identifié les
fonctionnalités et les exigences du logiciel, défini la structure de la base de données pour stocker
les informations des utilisateurs et des profils, créé une interface utilisateur intuitive et conviviale
pour les utilisateurs, défini les règles de gestion des données et des accès pour assurer la sécurité
et la confidentialité des informations, en fin, nous avons implémenté le logiciel en utilisant
Eclipse.
11