Modéliser les traitements d’une application PHP


Lorsqu’on veut créer une page web simple, il est naturel d’écrire directement le code HTML ou PHP de cette page puis de tester son fonctionnement. En revanche, lorsqu’on veut créer une application web complète, composée de plusieurs pages PHP, il est préférérable de commencer par une phase de modélisation au cours de laquelle on va réfléchir sur les données à utiliser et sur les traitements à effectuer.

La page « Modéliser une base de données MySQL » disponible depuis la page Liens Divers du présent site montre comment modéliser les données d’une application web. La présente page vient en complément et montre comment modéliser les traitements d'une telle application.

La phase de modélisation des traitement passe, comme pour les données, par la création de trois modèles : Le Modèle Conceptuel des Traitements (MCT), Le Modèle Organisationnel des Traitements (MOT ) et Le Modèle Physique des Traitements (MPT).

1) Modèle Conceptuel des Traitements

Le modèle conceptuel des traitements d’une application, notamment d’une application web, consiste à décrire le fonctionnement de cette application en reliant entre eux un certain nombre de blocs présentant la structure suivante.

modèle conceptuel des traitements

Un évènement est un fait (une circonstance) qui apparaît à un moment donné. Par exemple le fait qu’un internaute donné ait subitement besoin de s’informer sur un sujet donné constitue un évènement.

Une synchronisation est la condition (de type ET ou OU) pour laquelle plusieurs évènements entrants sont suceptibles de provoquer le déclenchement d'une opération. Par exemple le fait qu’un internaute donné ait besoin de se connecter à l’ordinateur d’un établissement ET que l’établissement soit ouvert à ce moment constitue une synchronisation de type ET entre ces deux évènements.

Une opération est une action concrète (manuelle ou informatique) qui conduit à un évènement de sortie (résultat). Par exemple le fait qu’un internaute consulte une information constitue une opération.

Une règle d’émission est une condition (OUI ou NON) avec laquelle un évènement de sortie pourra se produire. Par exemple, un formulaire papier rempli de façon manuscrite (opération) sera accepté (évènement) si son contenu est correct (règle).

Un évènement de sortie est résultat qui apparaît suite une opération (action). Par exemple le fait qu’un internaute connaisse une information suite à une opération de consultation constitue un évènement de sortie.

2) Modèle Organisationnel des Traitements

Le modèle conceptuel des traitements décrit l'ensemble des opérations que doit effectuer l'application (QUOI)

Le modèle organisationel des traitements complète le modèle conceptuel des traitements en faisant apparaître les acteurs (QUI), le moment (QUAND) et la nature (manuelle, conversationnelle ou automatique) de l'opération (COMMENT).

Une opération de nature manuelle est une opération non informatique. Elle s’effectue sans utiliser le poste de travail (vérification du contenu d’un formulaire papier rempli par exemple). Une opération de nature conversationnelle est une opération informatique. Elle nécessite l’action d'une personne sur le poste de travail (saisie et enregistrement informatique d’un formulaire papier qui a été rempli à la main par exemple). Une opération de nature automatique est une opération informatique. Elle s’effectue sans que l’action d'une personne soit nécessaire (travaux de type "batch", impression ou sauvegarde automatique de données la nuit par exemple).

On pourrait résumer simplement le passage du MCT au MOT par l’égalité MOT= MCT + acteur + moment + nature

00a

3) Modèle Physique des Traitements

Le Mdèle Physique des Traitements (MPT) consiste en l’écriture détaillée en langage algorithmique, des différentes opérations décrites dans le MOT, juste avant la phase de programmation.

Le programmeur va ensuite s'appuyer sur le MPT pour écrire les procédures et les fonctions correspondantes en langage PHP. On pourrait résumer simplement le passage du MOT au MPT puis au code source par le tableau suivant.

00b

4) Exemple

L’exemple suivant est utilisé pour illustrer concrètement les notions précédentes. Soit une association qui organise régulièrement des activités (soirée dansante, randonnée, visite…) à l’attention de ses membres. A chaque fois qu’une nouvelle activité est envisagée, la secrétaire de l’association rédige une page indiquant le nom de l’activité, la date et le lieu de rendez-vous ainsi que le descriptif de cette activité. Elle envoit ensuite cette page aux membres de l’association par messagerie. Les membres de l’association qui souhaitent participer à cette activité lui répondent par messagerie ou par téléphone. La secrétaire constitue alors la liste des participants et effectue les éventuelles réservations nécessaires (nombre de repas, places de parking…).

Pour faciliter son travail, la secrétaire de l’association aimerait pouvoir disposer d’une application web qui offrirait à tous moments les possibilités suivantes à elle-même et aux membres de l’association:

  • Possibilité pour la secrétaire de saisir et enregistrer une fiche descriptive pour chaque nouvelle activité envisagée ;
  • Possibilité pour la secrétaire et pour les membres de l’association de consulter les activités proposées par l’association.
  • Possibilité pour les membres de l’association de s’inscrire à l’une de ces activités proposées par l’association ;
  • Possibilité pour la secrétaire de consulter les listes des membres inscrits pour participer aux activités proposées.

4.1) Saisir et enregistrer une fiche d’activité

La possibilité pour la secrétaire de l’association de saisir et enregistrer une fiche descriptive pour chaque nouvelle activité envisagée est définie par le processus « P1-Saisie et Enregistrement d’une fiche d’activité » qui peut être décrit par le schéma suivant dans le MCT .

01

4.2) Consulter les activités proposées

La possibilité, pour la secrétaire et pour les membres de l’association, de consulter les activité proposées par l’association est définie par le processus « P2-Consultation des activités  proposées  par l’association» qui peut être décrit par le schéma suivant dans le MCT.

02

4.3) S’inscrire à une activité

La possibilité pour les membres de l’association de s’inscrire à l’une des activités proposées par l’association est définie par le processus « P3-Inscription à une activité  proposée  par l’association» qui peut être décrite par le schéma suivant dans le MCT.

03

4.4) Consultation des membres inscrits

La possibilité pour la secrétaire de consulter les listes des membres inscrits pour participer aux activités proposées par l’association est définie par le processus « P4-Consultation des membres inscrits à une activité» qui peut être décrite par le schéma suivant dans le MCT.

04

En compléments des processus d’inscription des nouveaux membres et de connexion des membres inscrits à l’application (processus qui ne sont pas décrits ici), l’application est composée de quatre processus  :

  • Le processus P1 (Saisie d’une nouvelle activité) qui comprend 2 opérations O1_1 et O1_2
  • Le processus P2 (Consultation des activités proposées) qui comprend 1 opération O2_1
  • Le processus P3 (Inscription à une activité) qui comprend 3 opération O3_1, O3_2 et O3_3
  • Le processus P4 (Consultation des listes d’inscrits à une activité) qui comprend 3 opération O4_1, et O4_2

Le MCT fait apparaître les processus et les opérations effectuées par l’application (QUOI) sans faire apparaître de façon formelle les acteurs pouvant effectuer ces opérations (QUI) et les moments où ces opérations sont effectuées (QUAND).

Le passage du MCT au MOT se fait en faisant apparaître ces éléments organisationnels non plus de façon intuitive mais de façon formelle. Dans l’exemple ci-dessus ces éléments peuvent être rassemblés dans le tableau suivant.

04

Le passage du MOT (Modèle Organisationnel des Traitements) au MPT (Modèle Physique des Traitement) s’effectue en remplaçant chaque opération par l’algorithme correspondant. Par exemple "O1_1 Saisie d’une fiche d’activité" devient l’algorithme "O1_1_Algorithme" suivant :
Début
• Saisir (nom_activite, date_activite, lieu_activite description activite)
• Envoyer formulaire à enregistrement_activite()
fin

Le passage du MPT (Modèle Physique des Traitement) au code programme s’effectue en remplaçant l’algoritme de chaque opération par le code programme correspondant (procédures et fonctions écrites en langage PHP comprenant des requêtes MySQL). Par exemple "O1_1_Algorithme devient" "O1_1_saisie_activite.php" avec les lignes de code suivantes.

05