Conception et développement d’un système d’alerte et notification

Chapitre 1 : Etude préalable

1.1 Introduction

Dans ce chapitre, nous allons exposer en premier lieu le cadre général de notre projet.
Nous commençons par formuler une présentation de notre organisme d’accueil, nous enchaînons ensuite avec l’étude de l’existant qui nous mènera à dégager notre problématique.
Nous enchainerons ensuite par présenter notre solution proposée ainsi que la démarche que nous comptons utiliser et enfin la méthodologie que nous souhaitons pratiquer pour la gestion de projet.

1.2 Présentation de l’organisme d’accueil
1.2.1 Présentation de 2PCS Solutions GmbH
2PCS Solutions GmbH est une start-up autrichienne fondée en 2016 et née d’un projet réalisé au cours du troisième appel de l’AAL JP. Elle est spécialisée dans le domaine de surveillance et d’alerte rapide. 2PCS Solutions GmbH offre un savoir-faire reconnu dans la mise en œuvre des projets couvrant les environnements de vie et de soins ainsi que les milieux hospitaliers et ambulatoires.

Atouts de 2PCS Solutions GmbH
2PCS Solutions GmbH allie la maîtrise des nouvelles technologies de l’information à la connaissance du métier de ses clients. Ses équipes pluridisciplinaires maîtrisent un large éventail de compétences, toutes au service d’un même objectif : optimiser la croissance et la satisfaction de ses clients tout en assurant cette variable essentielle pour toute entreprise qu’on nomme qualité. 2PCS Solutions GmbH s’engage auprès de ses clients comme un véritable partenaire, en leur assurant un ensemble de services basé sur un dispositif innovant et moderne semblable à une montre. Les services offerts par cette dernière prennent en compte les intérêts individuels et les conditions de vie de chacun.

La solution de 2PCS Solutions GmbH
Le système 2PCS – Personal Protection and Caring System est un système d’alerte et de localisation conçu pour les tâches de prise en charge professionnelle visant la sécurité et l’indépendance des personnes prises en charge. La solution et la conception technologique de 2PCS permettent son utilisation dans divers environnements de vie et de soins, tant en milieu hospitalier qu’en soins ambulatoires. Le système 2PCS agit et réagit d’une manière efficace et décontractée pour gagner du temps et de l’argent, ainsi que pour soulager le personnel soignant et les proches. La personne qui porte la montre de sécurité 2PCS bénéficie d’un sentiment de sécurité, d’une indépendance et d’une mobilité soutenus en portant un seul appareil pour une utilisation interne et externe au sein des établissements de santé, qui sont équipé eux même par un ensemble d’antennes communicantes responsable sur la précision de la localisation de ces

pensionnaires. 2PCS Solutions GmbH offre actuellement :
• Une plateforme du système 2PCS : Conçu pour les agents des services hospitaliers pour garder un oeil sur leurs pensionnaires.
• Montre de sécurité 2PCS : Utilisation et communication simples et fiable (intérieur et extérieur)
• Antennes 2PCS : Facile de les mettre en place dans les bâtiments pour la communication et la localisation d’urgence
1.3 Présentation du sujet
1.3.1 Contexte du sujet

Le présent projet est réalisé dans le cadre de la préparation d’un projet de fin d’études présenté en vue de l’obtention du diplôme national d’ingénieur informatique de l’école supérieur privée d’ingénierie et de technologie pour l’année universitaire 2018/2019, il consiste en l’étude, la conception et la réalisation d’un outil d’implémentation qui permet d’auditer et de manipuler des antennes à distance.
1.4 Étude de l’existant
1.4.1 Description de l’existant

Lors l’implémentation des antennes du système 2PCS dans un nouvel établissement, l’équipe a l’habitude de se baser sur l’intuition lors du choix de l’emplacement de ces dernières, afin de garantir un maximum de signal entre les antennes et les Montres de sécurité 2PCS. Quant à l’attribution des adresses IP aux antennes, elle se fait d’une manière statique, d’où la nécessiter de vérifier la disponibilité de toutes ces adresses une par une. Cette méthode est le seul moyen de l’équipe pour connaitre les adresses IP des antennes.
Afin de garantir le bon fonctionnement du système l’équipe doit configurer les antennes placées à la sortie du bâtiment « antenna Gate », pour cela il doit télécharger manuellement un fichier nommée « antenna-gate.jar » et l’exécuter après avoir accéder à l’antenne à travers le protocole de communication SSH.
Lors d’un disfonctionnement correcte des antennes, l’équipe n’a aucun moyen d’y accéder distance.

1.4.2 Critique de l’existant
Cette démarche présente un ensemble de lacune :
— Perte de temps lors de la vérification des disponibilités des adresses IP.
— Lors de l’implémentation des antennes l’équipe ne dispose pas d’un outil qui permet de visualiser l’intensité du signal établie entre les antennes et les différentes Montres de sécurité 2PCS
— Le téléchargement de l’exécutable « antenne-gate.jar » vers les antennes choisies se fait manuellement avec l’impossibilité d’effectuer aucune mise à jour à distance.
— Pour configurer des nouvelles « antennes Gate » l’équipe était obligé de se déplacer dans les lieux pour récupérer les antennes afin d’effectuer les modifications nécessaires manuellement.
— Absence de tout outil de contrôle à distance des antennes Gate.
— Absence de suivi : Aucun moyen disponible afin de suivre l’état actuel des « antennes Gate ».
—Absence d’un outil qui permet de connaitre les adresses IP des antennes.

1.4.3 Travail demandé
Face à la forte demande de la solution 2PCS et faisant partie de sa nouvelle politique de travail, la société a décidé de revisiter sa méthode d’implémentation afin de garantir un fonctionnement meilleur de la solution et d’assurer une certaine évolutivité du projet.
Pour ce faire la société nous a confié cette tâche afin de répondre, aux besoins soulignés. Notre travail consiste donc à concevoir et réaliser un outil d’implémentation permettant de manipuler et auditer des antennes gate à distance. Les avantages offerts par cette solution sont :
— Un gain de temps et d’argent significatif.
— La disponibilité d’une plateforme qui offre la main de contrôler à distance l’exécution du « antenne-gate.jar » dans les antennes.
— La mise à jour du fichier « antenne-gate.jar » dans les antennes Gate doit être automatique.
— La disponibilité d’une interface qui permet de visualiser, en temps réel, l’intensité des signaux établis entre les antennes et les différentes Montres de sécurité.
— La disponibilité d’une interface qui permet de connaitre les adresses IP internes et externes des antennes vu que l’attribution des adresses IP se fera dynamiquement.
1.5 Méthodologie de travail
Un processus de développement définit une séquence d’étapes, en partie ordonnée, qui concoure à l’obtention d’un système logiciel ou à l’évolution d’un système existant, pour produire des logiciels de qualité, qui répondent aux besoins des utilisateurs dans des temps et des coûts prévisibles.
Cette démarche s’appuie principalement sur les quatre activités du Processus Unifié (la capture des besoins, l’analyse, la conception et la réalisation.) et utilise les langages de modélisation unifié des données et des traitements UML (Unified Modeling Language).
Les processus unifiés sont le résultat de l’unification, non pas des processus, mais plus exactement les meilleures pratiques du développement objet .Un processus unifié se distingue par les caractéristiques suivantes :
•itératif : Le logiciel nécessite une compréhension progressive du problème à travers des raffinements successifs et développer une solution effective de façon incrémentale par des itérations multiples.
•Piloté par les risques : les causes majeures d’échec d’un projet logiciel doivent être écartées en priorité.
• centré sur l’architecture : le choix de l’architecture logicielle est effectué lors des premières phases de développement du logiciel. La conception des composants du produits est basée sur ce choix.
•Conduit par les cas d’utilisation : le processus est orienté parles besoins utilisateurs présentés par des cas d’utilisation.
C’est dans ce contexte que s’articule notre méthodologie qui a été divisée en quatre principales parties tel suit :
– Capture des besoins fonctionnel et non fonctionnel
– Analyse et conception
– Réalisation
– Test
Conclusion

Chapitre 2 analyse et spécification des besoins
Introduction
Ce chapitre sera dédié à l’analyse et à la spécification des besoins où nous allons, en premier
lieu, identifier les différents acteurs de notre application. Par la suite, nous allons définir les différents besoins fonctionnels et non fonctionnels puis
nous enchainerons avec la présentation des diagrammes des cas d’utilisations générale relative à la solution globale. Nous élaborons juste ensuite les diagrammes détaillés de quelques cas d’utilisation. Enfin, nous présentons les diagrammes de séquence système
2.1 Cadre des besoins
La définition des besoins permettra de cadrer notre projet pour une meilleure visibilité. A l’issue de cette étape, nous identifierons les différents besoins de chacun des utilisateurs.
2.2 Identification des acteurs
Dans cette partie nous allons identifier les acteurs du système informatique en prenant compte de ceux du métier qui toucheront de façon direct ce système pour cela
nous avons déduit la présence de deux type d’acteur :
-Un acteur principal qui interagie directement avec le système tout en obtenant des résultats visible tel que l’administrateur et l’utilisateur.
-Un acteur secondaire sollicité par le système afin d’obtenir des résultats primordiaux au bon fonctionnement du système tel que l’antenne.
Utilisateur : il est permis de gérer les informations qui concernent l’intensité des signaux établies entre les montres de sécurité et les différentes antennes ‘Rssi Data’. Il est permis aussi de gérer les informations qui concerne les adresses IP externe et interne des antennes ‘Reader Connection Info’
L’administrateur : il est l’unique responsable de l’installation du « antenna-gate.jar » dans les antennes ainsi qu’à la mise à jour de ce fichier. Il peut aussi contrôler l’exécution du fichier dans les antennes à distance.
2.3 Besoins fonctionnels

Les besoins fonctionnels sont les contraintes et les conditions que doit remplir le système pour assurer un résultat juste et acceptable. Ces conditions définissent les services que les utilisateurs s’attendent à voir par le système. Une étude détaillée permet de dégager les besoins fonctionnels suivants :
• Authentification : L’utilisateur s’authentifie avec un nom d’utilisateur et un mot de passe et sera redirigé selon son rôle vers la plateforme qui lui correspond.
• Gérer les « Rssi Data » : Visualiser en temps réel les données qui reflètent l’intensité du signal établies entre les montres de sécurité et toutes les antennes.
• Gérer les « Antenna Gate Files » : L’administrateur peut consulter la liste de diverses versions du fichier « antenna-gate-files.jar » hébergé dans le serveur. L’admin peut aussi supprimer ses fichiers du serveur ainsi qu’il peut en télécharger.
• Gérer les « Antenne Gate » : L’administrateur peut contrôler l’exécution du fichier « antenna-gate-files.jar » dans les antennes. Il peut télécharger le fichier vers l’antenne, exécuter le fichier, arrêter l’exécution ou l’effacer.
• Gérer les « «Reader Connection Information » : L’utilisateur Consulte la liste des antennes connectées dans le même réseau ainsi que de visualiser les adresses IP internes et externe de toute les antennes.
Le système doit permettre à l’antenne d’effectuer les tâches suivantes :

• Administrer l’exécution du « antenna-gate-file.jar » : Télécharger, exécuter, arrêter, effacer le fichier à la demande de l’utilisateur.
• Fournir les adresses IP internes et externes : L’antenne met à jour les données qui concerne les adresses IP et son dernier temps de connexion.
• Vérification de l’exécution du « antenna-gate-file.jar » : L’antenne vérifie le bon fonctionnement du « antenna-gate-file.jar » si elle est demandée de l’exécuter.
2.4 Besoin non fonctionnels
Bien qu’ils ne soient pas en relation avec le métier, les besoins non fonctionnels sont tout
aussi essentiels et assurent une meilleure qualité de la solution .Notre application devra assurer :

Use case : Gérer les « Reader Connection Info »
Acteur : Administrateur, utilisateur, antenne
Description : L’antenne agissant comme un acteur secondaire fournit toutes les données nécessaires qui concernent les adresses IP et le dernier temps de connexion. L’utilisateur peut ainsi consulter la liste de toutes les antennes connectées avec leurs adresses IP.

Use case : Gérer les « Antenne Gate »
Acteur : Administrateur, antenne
Description : Ce cas d’utilisation permet à l’administrateur de configurer à distance l’ensemble des antennes choisies, il peut ainsi télécharger la dernière version du fichier « antenna-gate.jar » vers les antennes.
L’administrateur peut aussi manipuler le comportement de l’antenne, il peut exécuter le fichier en indiquant les arguments souhaités, il peut arrêtera l’exécution ainsi que il peut effacer ce fichier de l’antenne. L’antenne agissant comme un acteur secondaire afin d’assurer le bon fonctionnement du système.

Use case : Gérer les « Antenne Gate File »
Acteur : Administrateur, utilisateur
Description : Ce cas d’utilisation permet à l’utilisateur d’hébergé dans le serveur les différentes et nouvelles versions du fichier «antenna-gate.jar ».

2.6 Spécification des cas d’utilisations
Cette section permet de mieux décortiquer les cas d’utilisations générales afin de clarifier le déroulement de la fonctionnalité et de décrire la chronologie des actions qui doit être réalisées. La spécification des cas d’utilisation permet aussi de définir les contraintes et les conditions qui doivent être pris en considération
2.6.1 Raffinement de cas s’utilisation « s’authentifier »

Cas d’utilisation : S’authentifier
Acteur : Utilisateur, Admin
Précondition : Aucune
Post condition : L’utilisateur identité
Description du scénario principal :
• L’utilisateur saisit son nom d’utilisateur et son mot de passe
• L’utilisateur appuie sur le bouton « Login »
• Le système vérifie les cordonnées saisies par l’utilisateur et affiche l’interface appropriée selon son rôle
Exception : Si l’identifiant ou mot de passe sont invalides, le système affiche un message d’erreur.

2.6.1 Raffinement de cas s’utilisation « Gérer les Rssi Data »
Dans le système de 2PCS-Solution un Rssi Data représente un ensemble d’information qui concerne l’état des montres de sécurités connectées et leurs relation avec les antennes.
L’utilisateur gère ses données afin d’avoir un aperçu général sur l’état du système.
La figure2.3 représente le diagramme du cas d’utilisation raffiné du « Gérer Rssi Data».

Cas d’utilisation : Consulter la liste des montres connectées
Acteur : Utilisateur, Administrateur
Précondition L’utilisateur doit être authentifié
Post condition Consultation exécutée
Description du scénario principal
• L’utilisateur ou l’administrateur appui sur le sous-menu « Reader Status » et choisit « Rssi Data ».
• L’administrateur choisit l’onglet « Administrateur«
• Le système affiche les détails techniques de la liste des administrateurs,à savoir leurs nombres, le nombre des groupes, des rôles et des adhésions auxquels ils sont associés
Exception Aucune