Je suis ADJOUA MARIE PAULE KONAN étudiante en troisième année(3ème) de dévéloppement d’application et e-service(DAS) à l’Université Virtuelle De Cote D’ivoire (UVCI) ,je réside a abidjan précisément à yopougon .
Etant en fin de formation,je me suis retrouvé dans l’entreprise Not a NUMBER (NaN) pour mon stage ; Mes maitres de stages se nommaient Mr KEFFADI et Mr VERNIER ANSE.
Au cour de ce stage , j’ai eu comme inspiration de mettre en place UNE APPLICATION MOBILE DE SANTE(suivie d’activité sportive quotidienne et une methode d’aliments sains ).
Voila une bref description de mon parcourt, pour les plus curieux vous pouvez savoir plus sur moi en consultant mon curciluim vitae(cv) dans ce fichier ci joint…… .
Les maladies cardiales vasculaires,
l’avc, l’obésité et pleins d’autres que nous pouvons encore cités sont à nos
portes à cause des nombreux aliments chimiques que nous mangeons, mais nombreux
sommes-nous à trouver des excuses comme le manque de temps et le travail pour
éviter de faire le sport et pourtant tous cela nuire à notre santé.
C’est pour remédier à ce problème que
je veux mettre en place une application mobile de santé.
Une application mobile, est un
logiciel développé pour les appareils électroniques ou l’on peut manipuler
facilement.
Dès lors quel peut être l’apport de
cette application mobile de santé pour le bien-être de la population ?
Mon but est d’emmener le monde a la
suivie de sa santé, en se basant sur de simple pratique quotidienne et
régulière.
Mon travail consistera à présenter, tout
d’abord mon entreprise d’accueil pour mon stage, puis vous guider sur le
fonctionnement de l’application.
Situé à Angré Nouveau CHU carrefour Gestoci, Not a Number (NaN) est la
première école de programmation informatique atypique, open source et gratuite
en côte d’ivoire.
Elle a été fondé par EVOX TRADING & KALIMATEC CMCC ; deux
entreprises de télécommunication qui ont décidé d’unir leurs forces pour faire
face aux changements dans l’industrie des télécommunications en cherchant et
formants des talents. Elle a ensuite été installé en côte d’ivoire en 2018 et a
sa tête Mr KEFFA YEBE DIOMANDE, à sa suite plus de 18 développeur son compté au
sein de cette entreprise.
NaN est une entreprise a forme juridique SARL avec un capital d’un
million (1.000.000) FCFA, son domaine d’activité s’érige dans la formation de Développeur
d’application Mobile et web. Comme informations supplémentaires nous pouvons noter :
Comme cité plus haut, l’entreprise NaN compte 18 développeurs repartis dans des domaines spécialisés. Certains parmi eux sont spécialisé en développement web et quelque uns des langages utilisés sont HTML, BOOSTRAP, JAVASCRIPT, PHYTHON etc. …. Et d’autres spécialisés dans le développement mobile, quelques langages aussi utilisé sont FLUTTER, JAVA etc……. Pour les autres il y a le secrétariat pour le service d’accueil et comme service j’ai été affecté a la spécialité de développement mobile.
II. FONCTIONNEMENT DE NaN
II.1 CAHIER DE CHARGE
1-OBJECTIF
NaN, c’est le retour d’une opération impossible, indéfinie
qui symbolise leur recherche dans la définition du devenir de l’éducation sans
toutefois avoir la réponse finale.
NaN a pour but de propager l’amour du développement
web et mobile en formant gratuitement toute personne désirant intégré l’école
atypique.
Certes elle vise un niveau nationale mais en encore
plus elle vise un niveau international.
CARACTERISTIQUE
Not a Number (NaN) a pour caractéristique, la
formation des développeurs atypiques, et plus mieux elle a une formation
gratuite pour les jeunes sur 1 ans.
MOYEN
Pour accomplir ces objectifs fixés, l’entreprise met à
la disposition de ces dits développeurs atypiques une salle aérée, équipée de
plusieurs machines (IMac), et d’une connexion wifi.
Lors de ce chapitre, nous allons identifier les
diagrammes d’utilisations réalisé pour mettre en œuvre l’architecture de
l’application proposée. La motivation fondamentale de la modélisation est de
fournir une démarche antérieure afin de réduire la complexité du système étudié
lors de la conception et d’organiser la réalisation du projet en définissant
les modules et les étapes de la réalisation. Plusieurs démarches de modélisation
sont utilisées. Nous adoptons dans notre travail une approche objet basée sur
un outil de modélisation UML. En fait UML (Unified Modeling Language) est un
standard ouvert contrôle par l’OMG.
I-2
PRESENTATION DE ArgoUML
La modélisation de notre application sera réalisée
avec ArgoUML. Alors qu’est-ce que ArgoUML ? Eh bien, ArgoUML est un
logiciel de création de diagramme UML sous licence libre et programmé en java (et
donc multi- systèmes).
Mais qu’est-ce que l’UML ? c’est un langage
permettent de décrire des objets et leurs relations. L’emploi de l’UML facilite
grandement le développement d’application dans des langages dirigés par les
objets en permettant d’en établir un modèle formel et facile à comprendre.
Ainsi ArgoUML permet :
La
modélisation d’une application informatique.
La
création des neuf types de diagrammes UML de manière simple et graphique :
Le
diagramme de cas d’utilisation
Le
diagramme de classe
Le
diagramme de séquence
Le
diagramme de collaboration
Le
diagramme d’état
Le
diagramme d’activité
Le
diagramme de déploiement
La figure ci-dessus est un extraire de la plateforme
II-1- CONCEPTION
II-1-1 Définition
cycle de vie d’une application
Un logiciel ou une application
ne se résume pas à un ou plusieurs programmes utilisés par des clients. Une application naît, vit et
meurt. C’est pourquoi on parle de cycle de vie d’une application. Le
cycle de vie d’une application est constitué de toutes les étapes jalonnant son
parcours, depuis l’idée de départ jusqu’à l’abandon de l’application par ses
utilisateurs, en passant par la conception, la réalisation et la maintenance.
II-1-2 Les activités
d’un cycle de vie
La réalisation du logiciel va être décomposée en itérations
reprenant chacune les phases suivantes :
Analyse
des besoins :
recueil et expression des besoins et des contraintes avec le client, rédaction
d’un document de synthèse.
Conception ou spécification générale :
architecture globale et description des fonctionnalités de l’application.
Conception
ou spécification détaillée : définition
du détail des fonctionnalités en créant des lots, ou des sous-ensembles de
l’application qui regrouperont des fonctionnalités apparentées ou liées.
Conception
ou spécification technique : les fonctionnalités étant définies, il faut maintenant déterminer de
quelles manières elles seront réalisées concrètement.
Réalisation :
il s’agit de la phase de développement. Les développeurs vont traduire en code
les fonctionnalités décrites dans les étapes précédentes.
Tests unitaires : les tests unitaires permettent de vérifier unitairement que chaque
unité de code lorsqu’elle est exécutée, se comporte de façon conforme par
rapport aux spécifications. Idéalement, le développement est piloté par les
tests (TDD ou Test Driven Développent) et par conséquent, les tests sont écrits par les développeurs
durant la phase de réalisation.
Intégration :
l’ensemble des éléments développés séparément sont regroupés afin de vérifier
qu’ils communiquent correctement et qu’ils fonctionnent ensembles. Ces
vérifications sont effectuées à l’aide des tests d’intégration. Ils peuvent
être réalisés conjointement avec l’équipe projet et le client.
Qualification :
le client vérifie la conformité de l’application développée aux spécifications
établies.
II-2 MODELISATION DE L’APPLICATION
II-2-1 Diagramme de cas d’utilisation
La connaissance des
fonctionnalités à implémenter est essentielle pour établir le diagramme de cas
d’utilisations de l’application. Une fois encore, l’étude réalisée pour la
compréhension de l’application et l’écriture du cahier des charges ont permis
d’avoir des éléments solides pour lister les fonctionnalités à implémenter et
faciliter la réalisation de ce diagramme de cas d’utilisation. Dans cette
section, nous allons détailler les différents diagrammes de cas d’utilisation
réalisés.
Le diagramme de cas est
composé de trois principaux éléments qui sont :
Un Acteur : c’est l’idéalisation d’un rôle joué par une personne externe, un
processus ou une chose qui interagit avec un système. Il se représente par un
petit bonhomme avec son nom inscrire dessus.
Un cas d’utilisation : c’est une unité cohérente représentant une
fonctionnalité visible de l’extérieur. Il réalise un service de bout en bout,
avec un déclenchement et une fin, pour l’acteur qui l’initie.
Les relations : trois types de relations sont pris en charge
par la norme UML et sont graphiquement représentées par des types particuliers
de ces relations. Les relations indiquent que le cas d’utilisation source
présente les mêmes conditions d’exécution que le cas issu. Une relation simple
entre un acteur et une utilisation est un trait simple.
Diagramme de cas d’utilisation de mon application
La figure ci-dessus représente
le diagramme de cas d’utilisation principal, à savoir celui concernant le
fonctionnement de l’application. Comme nous pouvons le constater, les acteurs
principaux de ce diagramme sont le couturier et le client. L’application doit
pouvoir leurs permettre de gérer des tâches, et pour cela implémenter des
fonctionnalités comme l’enregistrement des mesures d’un client, le choix des
modèles …
D’autres personnes sont
également des acteurs de ce diagramme, bien que secondaire. Leur rôle ici se
résume uniquement à la consultation des modèles.
Diagramme de cas d’utilisation détaillé
Ce diagramme ci-dessus met en évidence le passage
obligatoire de l’utilisateur sur l’application par une identification.
Apres identification, l’utilisateur entre sur la page
d’accueil avec trois champs t.de bord, programme et profil. Ceci est représenté
par le diagramme ci-dessus.
Ainsi au programmes, l’utilisateur pourra suivre les
différentes étapes citées dans le diagramme énuméré plus haut.
Le diagramme ci-dessus énumère, le contenu du profil, il y a la partie rappel qui bouge l’utilisateur à suivre le programme et le comptage qui est la fonctionnalité qui décompte les activités de l’utilisateur .
Ainsi prends fin le rapport detaillé de ma conception, nous verrons le resultat de tout ceci dans la realisation.
Au cours de
ce stage, j’ai eu l’opportunités de découvrir un métier sous toutes ses formes
et de comprendre de manière global les difficultés que l’informatique pouvais
rencontrés dans l’exercice du développement d’application. Pour une meilleure
compréhension des taches que j’ai pu effectuer, il parait approprier de traiter
en premier lieu les outils qui étaient mis à disposition, puis de traiter de
manière détaillée les taches que j’ai pu effectuer.
II- ENVIRONNEMENT DE TRAVAIL
Au cours de
stage, j’ai passé le plu clair de mon temps à développer. A mesure que
j’apprenais, mes recherches ce sont approfondies. Ce n’est qu’a partir du
milieu de mon mis de stage que j’ai été véritablement opérationnel, du fait de
ma moyenne maitrise de Flutter, Sketch, Visual studio code, IMac.
II-1 DEFINITION ET MODE D’UTILISATION DES OUTILS
v Flutter
Flutter est un
nouveau Framework développé par Google, le plus récent
de tous. En effet ce
Framework est utilisé pour tout ce qui est interface utilisateur.
Mais
aujourd’hui Flutter se fait surtout connaître pour sa capacité à concevoir des
applications natives multiplateforme pour Android et iOS (Windows/Mac/Linux
sont également supportés). Et aussi pour compiler son code en flutter il nous
faut un émulateur, pour ce cela nous avons la possibilité de d’utiliser un
téléphone Android après plusieurs configurations ou encore flutter nous donne
la possibilité d’en avoir sur notre écran d’ordinateur.
NB
: Pour ma part j’ai eu à utiliser mon
téléphone portable.
v Sketch
Sketch est un logiciel
de design d’interface
qui s’adresse aux
webdesigners
sur Mac. Il est utilisé pour représenter ses interfaces avant de les codés.
Un
moyen très riche pour les développeurs
v Visual studio code
Visual Studio Code est un éditeur de code multiplateforme
édité par Microsoft. Cet outil destiné aux développeurs supporte plusieurs
dizaines de langages de programmation comme le HTML, C++, PHP, JavaScript,
Markdown, CSS, etc. Visual Studio Code
intègre plusieurs outils facilitant la saisie de code par les développeurs
comme la coloration syntaxique ou encore le système d’autocomplétion
IntelliSense. En outre, l’outil permet aux développeurs de corriger leur code
et de gérer les différentes versions de leurs fichiers de travail puisqu’un
module de débogage est aussi de la partie.
v IMac
Le iMac est une gamme d’ordinateurs de bureau
fabriqués par Apple Computer et introduit en 1998. L’iMac est connu pour être
un « tout -en-un » ordinateur avec l’écran et le processeur intégré en
un seul morceau. En 2011, il y a eu quatre modèles distincts de l’iMac, et
chaque mise à jour du processeur a été accompagnée par une révision majeure
dans la conception.
II-2
PRESENTATION DES INTERFACES
La figure si dessous
montre la première page sur lequel l’utilisateur verra avant toute autre page
de l’application. Je l’es nommé page d’acceuil, puisque elle s’affichera a
chaque fois que l’utilisateur ouvra l’application. HelpHealth est le nom de mon application.
Ensuite il est dans
l’obligation qu’à l’ouverture de la tout première fois de l’application de
s’identifier, afin que nous puissions avoir plus d’information sur l’
utilisateur avant d’adhérer au sein de l’App. D’où la figure ci-dessus qui est
la page d’identification.
La figure ci-dessus montre le tableau de
bord, cette page comporte les informations et activité faite par l’utilisateur,
le cercle représente un diagramme de l’évolution de l’activité de
l’utilisateur.
1-T.de bord
2-programme
La figure ci-dessus
présente les différents programmes utiles à l’utilisateur.
A ces programmes
respectifs sont insérer de bref propos sur le programme et de jeune méthodes
que pourrons suivre l’utilisateur.
3-Profil
Cette page est celle
qui affiche les informations renseignées par l’utilisateur, la partie ou il
peut ajouter des amis et la place de rappel.
La figure ci-dessus
est cliquable sur l’App, et elle permet l’activation de l’accéléromètre qui
permettra le décompte des activités.
Toujours le profil
nous avons la partie RAPPEL , cette
partie a été instaurer pour permettre au utilisateur de pouvoir suivre en
quelques sorte les méthodes donner plus haut dans le programme.
Au cliqué de chaque
images, l’utilisateur pourra voir le moment opportun pour chaque programme et
en enregistrant il recevra des notifications aux heures indiqués pour le quand
?
DIFFICULTES RENCONTRES
Mon stage à NaN, m’a
été très instructifs. Au cours de ces 2 mois j’ai pu observer le fonctionnement
de Flutter et sketch. Par ailleurs, la distance lointaine de l’entreprise, la
faible capacité de l’internet, etc.…, m’ont permis de mieux me responsabiliser
pour mettre le maximum a ma disposition.
ENSEIGNEMENT TIRE
Au cours de stage j’ai appris beaucoup à NaN. Et dans toute cette
formation je peux dire que j’ai appris à développer une application mobile avec
Flutter et à disgné avec sketch, deux choses qui m’ont plus lors de ce stage
Mon stage a été sous plusieurs aspects riches d’enseignements.
Le stage consistait à réaliser une application mobile
pour gérer la santé du monde. Ce stage est une opportunité pour développer mes
connaissances en création des applications mobile, et notamment en ce qui
concerne l’utilisation nouvelles des logiciels tels que Flutter, Sketch etc…,
ainsi la mise en pratique par l’utilisatisaton d’argoUML.
Je n’ai pas complété l’App jusqu’au bout car j’ai
trouvé des problèmes techniques durant la phase du codage. En revanche, j’ai
développé les principales fonctionnalités.
En conclusion, mon stage m’a permis de mettre en œuvre
des compétences scolaire, professionnelles et humaines pour un sujet
intéressant. J’ai de pus acquis de nouvelles compétences dans le domaine du
développement mobile.