Architecture générale d'une application de base de données

Définition

Une application de base de données comporte :

  1. Une base de données : Elle pose le modèle de données, stocke les données, définit des vues sur les données (préparation des modalités de lecture)

  2. Une application : Elle définit les interfaces homme-machine pour écrire et lire les données et contient le programme informatique de traitement des données avant insertion dans la base ou présentation à l'utilisateur.

Fondamental

Architecture générale d'une application de base de données

MéthodeProcédure générale de développement

  1. Développement de la BD[1] : Conception en UML[2] ou EA[3], puis traduction en R[4] ou RO[5], puis implémentation SQL[6]

    • Déclarer les types (en RO)

    • Ajouter les vues utiles, pour simplifier l'accès aux données en lecture

    • Ajouter des triggers, pour implémenter les contraintes complexes non exprimables en SQL (lorsque le SGBD le permet, comme Oracle ou PostgreSQL)

    • Implémenter les méthodes d'accès aux données (en RO), ou à défaut les fonctions stockées (en R) permettant de renvoyer les valeurs calculées prévues par le modèle conceptuel

  2. Développement de l'application : traitements, formulaires et états

    • Les traitements proches des données sont réalisés dans le langage associé à la BD s'il existe (PL/SQL, PL/pgSQL, VBA)

    • Les traitements proches de l'application sont réalisés dans le langage applicatif choisi (PHP, Java, VBA & Macros sous Access)

ExempleExemple de technologies

  • BD :

    • SQL pour les tables, les types et les vues

    • PL/SQL (Oracle), PL/pgSQL (PostgreSQL) pour les triggers

    • PL/SQL, PL/pgSQL, VBA (Access) pour les fonctions stockées

  • Application

    • HTML avec la balise <form> et le protocole HTTP/POST (Web), formulaires Access

    • PHP (echo) et présentation HTML (<table> par exemple), état Access

    • PL/SQL, PL/pgSQL, VBA (Access) pour les procédures et fonctions stockées (traitements proches de la base de données)

    • PHP (Web), Macros & VBA (Access)

ExempleExemple PHP/PosgreSQL

Exemple d'application de base de données