A4.1.1 Proposition d’une solution applicative

C4.1.1.1 Identifier les composants logiciels nécessaires à la conception de la solution

Pour mettre en production cette application l’environnement de développement retenue est :

studio-logo  Android Studio v 2.3.0.8

Langage utilisé :

java-icon3  Java Android

SGBDR utilisé :

SQLite Sqlite en version embarquée

Les modules impératif au renseignement des frais par les visiteurs seront catégoriser selon le design pattern Modèle Vue Contrôleur.

La logique sera écrit dans les différents fichiers « activity ».Lister les fichiers revient à estimer le nombre de modules nécessaire :

  • Un modandroid1ule des frais au forfait
  • Un module des frais hors forfait
  • Un module par menu
  • Un module la synthèse des frais
  • Un module pour les paramètres de l’utilisateur

Pour produire la totalité de l’application, 14 contrôleurs et autant de vues seront requis

 

Dans le cadre du PPE2 : PPE 2

 

 

 

 

 

 

Publicités

A4.1.2 Conception ou adaptation de l’interface utilisateur d’une solution applicative

C4.1.2.1 Définir les spécifications de l’interface utilisateur de la solution applicative

C4.1.2.2 Maquetter un élément de la solution applicative

Android Studio nous fournit un incroyable module de conception graphique suffisamment élaboré pour maquetter l’application.

android2

Finalement j’ai pu réaliser graphiquement plusieurs maquettes de mes différentes interface, et ainsi tester le rendue visuelle sur des résolutions différentes.

Dans le cadre du PPE2 : PPE 2

C4.1.2.2 Maquetter un élément de la solution applicative

Stage 2 – Mathematem

Nous avons utilisé un logiciel de maquettage Balsamiq mockup permettant de modéliser le site internet de mathematem.

balsamiq

menu mathematem

Dans le cadre de mon stage 2 : Stage 2

A4.1.3 Conception ou adaptation d’une base de données

C4.1.3.2 Implémenter le schéma de données dans un SGBD

C4.1.3.3 Programmer des éléments de la solution applicative dans le langage d’un SGBD

C4.1.3.4 Manipuler les données liées à la solution applicative à travers un langage de requête

Lors de mon PPE 1, un schéma de la base de donnée a été fournis :

InnoDB

La création de la base de donnée est effectuée grâce au SGBDR MySQL. MySQL est basé sur un langage Sql . La structure de la base de donnée et les requêtes ont été implémentée selon le modèle du diagramme du dessus :

dao

dao2

sha1

Dans le cadre du PPE1 : PPE 1

C4.1.3.2 Implémenter le schéma de données dans un SGBD

C4.1.3.3 Programmer des éléments de la solution applicative dans le langage d’un SGBD

C4.1.3.4 Manipuler les données liées à la solution applicative à travers un langage de requête

Lors de l’élaboration de PPE 2, un schéma de la base de donnée a été fournis :

DiagrammeDeClasse

J’ai intégré ce modèle à mon application.La création de la base de donnée est effectuée grâce au SGBDR SqLite. SqLite est basé sur le même langage Sql que Mysql. La structure de la base de donnée et les requêtes ont été implémentée selon le modèle du diagramme du dessus :

android3

Un exemple de requête permettant d’interroger la base :

android4

Dans le cadre du PPE2 : PPE 2

C4.1.3.4 Manipuler les données liées à la solution applicative à travers un langage de requête

Stage 1 – Relais Monceau

J’ai manipuler la base de donnée de l’hôtel relais monceau afin d’adapter mes classes métier :

relaismonceau1

relaismonceau2

Stage 2 – Guard industrie

Lors de la refonte du CMS Guard industrie j’ai remplir la colonne description et caractéristique des produits :

relaismonceau3

Dans le cadre du stage 1 : Stage 1

Dans le cadre du stage 2 : Stage 2

C4.1.3.2 Implémenter le schéma de données dans un SGBD

Dans le cadre du PPE 3 :

Nous avons importé une base de donnée sql dans le projet symfony par l’invite de commande windows :

symfony1

  1. Paramétrage de la BDD sous Symfony

    Ouvrir le fichier parameters.yml (config/parameters.yml)symfony2

  2. Les classes sous symfony sont appelées ‘Entity’

    Sous Symfony on peut géner automatiquement les classes à partir de la base de données en utilisant les commandes symfony

    En mode console se positionner sur le dossier siav :symfony3

Ces commandes ont permet de créer le dossier Entity.

Création des 5 classes

symfony4

A4.1.6 Gestion d’environnements de développement et de test

C4.1.6.1 Mettre en place et exploiter un environnement de développement

Pour débugger mon code et continuer de développer, j’ai utilisé les outils de débuggage d’Android Studio :

android5

Ce même outil charge les ressources natives et les classes du projet nécessaires à l’application :

android6

Il permet de synchroniser les besoins en modules grâce à la fonction ‘sync gradle’ :

sync-project-with-gradle-files

Il intégre un outil de conception graphique des IHM et des vues :

android7

Dans le cadre du PPE2 : PPE 2

C4.1.6.1 – Mettre en place et exploiter un environnement de développement

Dans le cadre du PPE3 :

Nous avons installer Symfony dans sa version 3.2 sous Windows, nous avons exécuté des commandes de symfony installer à partir de l’invite de commande de windows:

  1. Pour installer symfony il nous un executeur php en ligne de commande.il a fallu ajouter le répertoire où se trouve l’exécutable php à la variable d’environnement PATH.
  2. Dans l’invite de commande cmd, il faut se placer sur le dossier www en grâce au commande cd et ../ afin d’atteindre le répertoire CMD2
  3. Pour télécharger la dernière version du package symfony, nous avons exécuté la commande suivante :  c:\wamp64\www\>php -r     CMD3
  4.  Pour créer un nouveau projet, il faut dans l’invite de commande cmd il exécuter la commande : CMD4 .
  5. Il faut télécharger un certificat cacert.pem et le placer dans le répertoire  c:\wamp64\www\ .
  6. Il faut ensuite modifier le fichier php.ini qui se trouve dans le dossier  C:\wamp64\bin\php\php5.6 , remplacer la ligne  ;curl.cainfo = par ;curl.cainfo = c:\wamp64\cacert.prm  et relancer la commande de création d’un nouveau projet  CMD4.
  7. Pour exécuter le framework Symfony, il faut taper dans la barre d’adresse du navigateur internet, la commande http://localhost/siav/web  . Si la fenêtre suivante s’ouvre, c’est que la dernière version de Symfony est correctement installée.symfony3.2

A4.1.7 Développement, utilisation ou adaptation de composants logiciels

1.7.1 Développer les éléments d’une solution

1.7.2 Créer un composant logiciel

1.7.3 Analyser et modifier le code d’un composant logiciel

1.7.4 Utiliser des composants d’accès aux données

Pour mener à bien ce projet, j’ai développer cette arborescence de modules.

Pour chaque activities correspond les vues, ils créent ainsi un composant logiciel.

android8

Un module dont la fonction spinner permet à l’utilisateur de choisir le type de frais.

android16

android15

Un composant logiciel permet d’afficher d’un menu amenant à d’autres composant logiciel.

android10

Pour vérifier les données persistées par les frais forfait et les frais hors forfait renseignés par les visiteurs, j’ai utiliser le composant SqLiteBrower

Voici l’interface de gestion de la base de donnée :

android21

Dans le cadre du PPE2 : PPE 2