CAHIER DE CONCEPTION Réseau social éducatif CHIRMENI BOUJIKE MICHAEL KAKOS CONS

CAHIER DE CONCEPTION Réseau social éducatif CHIRMENI BOUJIKE MICHAEL KAKOS CONSULTING 16/05/2019 Date de création 16/05/2019 Auteur CHIRMENI BOUJIKE MICHAEL Historique des modifications et validation du document : Version Date Parties modifiées Nature du Changement Statut V1.0 16/05/2019 - Création A Valider V1.1 19/05/2019 Chapitre 3 et 4 Modification A Valider Pour le Directeur de Projet Pour la KAKOS Consulting CAHIER DE CONCEPTION Version : 1.1 Statut : Confidentiel ROJET DE MISE EN PLACE D’UNE APPLICATION « FAN-ZONE » DE RENFORCEMENT DES CAPACITES INTELLECTUELLES ET ACADEMIQUES. RÉVISIONS Version Date Objet Statut 1.0 16/05/2019 Version initiale VISAS Action Responsable Date Visa Rédaction CBM 16/05/2019 DIFFUSION KAKOS CONSULTING (POUR VALIDATION) Destinataires Date Validation KAKOS CONSULTING VALIDATION KAKOS Reproduction interdite sans autorisation préalable Réf : Cahier_de_Conception_Fan_Zone_final_04072019 ROJET DE MISE EN PLACE D’UNE APPLICATION « FAN-ZONE » DE RENFORCEMENT DES CAPACITES INTELLECTUELLES ET ACADEMIQUES. Pour MOE, Pour la KAKOS CONSULTING KAKOS Reproduction interdite sans autorisation préalable Réf : Cahier_de_Conception_Fan_Zone_final_04072019 SOMMAIRE LISTE DES ACRONYMES ET ABREVIATIONS 7 1. Introduction 8 1.1 Présentation du contexte technique du projet 8 1.2 Objectifs du projet 8 1.3 Document de références 8 2. Normes, Standards, Outils 9 2.1 Méthodes de conception 9 2.2 Langages et outils de développement 9 2.2.1 Langages de développement utilisés 9 2.2.2 Outils de développement 10 3. Analyse détaillée 12 3.1 Identification des acteurs 12 3.2 Identification des modules 12 3.3 Identification des fonctionnalités 13 3.3.1 Le module Gestion des comptes 13 3.3.2 Le module gestion de groupe 14 3.3.3 Le module Publipostage 15 3.3.4 Le module Chatte instantané 15 3.3.5 Le module Publicité 16 3.3.6 Le module Paramétrage 16 3.3.7 Le module Administration 17 4. Conception 18 4.1 Conception préliminaire 18 4.1.1 Description des cas d’utilisation 18 4.1.2 Modèle de données : Diagramme de classe 48 4.1.3 Diagramme de déploiement (Déploiement physique) 49 4.2 Conception détaillé 51 4.2.1 Architecture logicielle la solution cible 51 4.2.2 Stratégie de traitement des erreurs 52 4.2.3 Mécanisme de sécurité 53 5 LISTE DES ACRONYMES ET ABREVIATIONS AOP Aspect Oriented Programming OOP Object Oriented Programming SOP Services Oriented Programming JSON JavaScript Object Notation MVC Modèle Vue Contrôleur MVVM Model View ViewModel ORM Object Relational Mapping SI Système d’Information REST Representional State Transfer 6 1. Introduction 1.1 Présentation du contexte technique du projet KAKOS Consulting, dans le souci de diminuer le taux d’analphabètes et d’augmenter le taux de rétention des populations dans le domaine éducatif, la mise en place d’un dispositif de renforcement des capacités intellectuelles et académiques est nécessaire : FAN-ZONE. C’est un outil qui se veut qui se veut pionnier dans la promotion de l’éducation. Ce dernier devra être accessible via les terminaux mobile (Android, IPhone) et Web (plateforme en ligne). 1.1 Objectifs du projet Fluidifier la transmission de connaissance académique entre des personnes de divers établissements, Niveler le niveau académique entre différentes zones géographiques, proposer un socle de connaissances accessibles à tous dans le monde, créer des échanges de formations entre divers établissements de par le monde. 1.2 Document de références Le document de référence du présent dossier de conception est le Cahier des Charges fonctionnel Détaillé dans sa version finale. Ce document décrivait conformément au périmètre du projet, les contraintes à respecter les contraintes à satisfaire pour réaliser le projet en dû forme. 7 2. Normes, Standards, Outils 1.2Méthodes de conception Dans le cadre de ce projet, nous utiliserons la méthode objet avec UML 2.0 comme langage de modélisation et Scrum comme démarche ou processus de mise en œuvre. En effet, cette méthode a été choisie parce que le cycle en Y qu’elle préconise, introduit tout de même une forme itérative interne à certaines tâches et de plus, elle met en exergue des performances intéressantes telles que les services réutilisables et la conception générique (Framework et Design pattern choisis dans le cadre de ce travail tel qu’explicité par la suite). 1.3Langages et outils de développement 1.1.1 Langages de développement utilisés ✔Langage coté Serveur Spring MVC, Hibernate, Entity Framework ●Spring MVC qui implémente l’aspect MVC : afin de mettre sur pied les services web RESTFUL pouvant être consommés par un large éventail d’utilisateurs indépendamment de la plateforme ; ●Spring IOC qui implémente l’injection de dépendance dans le but d’appliquer le principe ultime de la programmation orientée objet : couplage faible ; ●Spring AOP qui implémente la gestion des aspects. Il existe des module transversales (cruss cutting) qui peuvent être implémenté indépendamment du module métier et être appelé ou il faut et quand il faut : On dit généralement qu’il faut se concentrer sur la résolution du problème réel et ceux transversales seront implémentés et appelé au bon moment et au bon endroit ; ●Spring SOP qui implémente la gestion des services. Le backend est tout simplement une boîte noire qui expose les services grâce au principe de la programmation orientée Service ; ●Le langage utilisé Java supporté par le Framework ASP.Net et l’utilisation efficace du Framework .NET ; ●Ou le langage de programmation C#/VB.NET supporté par l’environnement DOT.NET ; ●Hibernate / Entity Framework comme solution de mapping objet relationnel (ORM) retenue dans le cadre de ce projet surtout qu’elle a l’avantage de fournir la couche d’abstraction nécessaire pour ne plus accéder directement à la base de données, mais plutôt par l’intermédiaire d’entités définies par EDM (Entity Data Model). 8 L’application Web API de type REST a l’avantage d’être indépendante du client qui demande l’accès aux ressources, et permet que les données soient échangées au format JSON ; ce qui garantit l’interopérabilité des langages. Les technologies utilisées côté serveur nous permettent également d’étendre les applications clientes à partir desquelles les utilisateurs pourront se connecter. ✔Langage coté client : Angular, Ionic, HTML, CSS3, ASP.NET ● AngularJS : afin de faire des interfaces web plus réactives et « One Page » ; c’est-à-dire sans le rechargement de la page. Ce qui améliore considérablement la fluidité et l’ergonomie de l’application grâce à plusieurs librairies intégrées. AngularJS 1.5.x est l’une des technologies clientes qui implémente le mieux le patron MVVM qui est une extension du MVC. Cette implémentation permet de faciliter la communication des données avec le serveur d’une part et de faciliter le développement et la maintenance des codes au niveau du client d’autre part. ● HTML : pour l’écriture des pages Angular interprétées par les navigateurs. Nous utiliserons la version HTML5 ; ● CSS : afin de mettre en forme les pages écrites en HTML. Dans le cadre de ce projet, nous utiliserons le CSS3. ● ASP.NET : langage de programmation basée sur le HTML et le UHTML pour la gestion du Frontend. Il a plusieurs dérivés ASP.NET MVC1,2,3,4,5. ✔Base de données - Mysql 5.x ou toute autre version équivalente ou supérieure. Le choix du choisit pour robustesse, sa popularité. - PostgreSql - MS SQL Server 1.1.2 Outils de développement Dans le cadre ce projet, nous utilisons les outils suivants pour le développement : ✔Système d’exploitation : Windows 7, Win8.1, Win10, ✔SGBD : Mysql 5.x / MS SQL Server ; ✔IDE : Eclipse STS, Visual Code / Visual Studio core; ✔Outils de Modélisation : Enterprise Architect 12.1 / Power AMC ✔Gestionnaire de Version : Git / SVN. 9 3. Analyse détaillée 1.4 Identification des acteurs Les acteurs identifiés sont : ❖Support (SU) L’utilisateur SU est celui-là qui est chargé d’assister les utilisateurs durant leur séjour dans le système ; il répond instantanément à toutes les préoccupations de ces derniers. ❖Administrateur (AD) L’utilisateur AD est un personnel de l’entreprise KAKOS Consulting qui a tous les droits sur le système et qui l’octroi certains droits aux autres administrateurs. ❖Enseignant (EN) L’utilisateur EN est un enseignant ou toute autre personne du corps enseignant exerçant dans un établissement publique ou privé. ❖Apprenant (AP) L’utilisateur AP est un élève, un étudiant ou toute autre personne qui souhaite améliorer son niveau éducatif. ❖Utilisateur (UT) Acteur englobant n’importe quel autre acteur précédemment défini. ❖Système A l’Etude (SAE) Acteur représentant le système logiciel. 1.5 Identification des modules En nous référant à l’étude du besoin menée dans le cahier des charges, nous avons identifié un certain nombre de fonctionnalités qui peuvent être regroupés en plusieurs modules (packages). Les modules ainsi regroupés en fonction de leurs objectifs sont les suivants : 10 - Gestion des comptes : l’objectif de ce module est de gérer (Création, Modification, Suppression/Archivage, Activation, Désactivation) des comptes par les utilisateurs (enseignant ou apprenant). Elle permet d’octroyer à chaque utilisateur une page que ce dernier pourra manager à sa guise ; - Gestion des groupes : l’objectif de ce module est de permettre aux utilisateurs ayant au préalable un compte de pouvoir demander/supprimer l’amitié à un autre utilisateur, de pouvoir créer/modifier/supprimer/activer/désactiver un groupe et ajouter des utilisateurs dans ce dernier ; - Publipostage : l’objectif de ce module est de gérer l’affichage des notifications et publications des utilisateurs (textes, vidéos, audio etc…) ; - Chatte instantané : l’objectif de ce module est de permettre aux utilisateurs (2 ou plusieurs) de pouvoir échanger en live entre eux. Ces derniers peuvent s’échanger des images, des vidéos et des audio ; - Publicité : l’objectif de ce module est de uploads/Ingenierie_Lourd/ cahier-de-conception-fan-zone-final-04072019.pdf

  • 15
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager