Modélisation adaptée aux besoins utilisateurs dans le développement des SID Estella Annoni, Franck Ravat, Olivier Teste, Gilles Zurfluh IRIT – Toulouse {annoni, ravat, teste, zurfluh}@irit.fr EDA.

Download Report

Transcript Modélisation adaptée aux besoins utilisateurs dans le développement des SID Estella Annoni, Franck Ravat, Olivier Teste, Gilles Zurfluh IRIT – Toulouse {annoni, ravat, teste, zurfluh}@irit.fr EDA.

Modélisation adaptée aux
besoins utilisateurs dans le
développement des SID
Estella Annoni, Franck Ravat, Olivier Teste, Gilles Zurfluh
IRIT – Toulouse
{annoni, ravat, teste, zurfluh}@irit.fr
EDA 2006
1
Plan



État de l’art
Contexte des travaux
Étape de l’analyse des besoins




Collecte des besoins utilisateurs
Formalisation des besoins utilisateurs
Règles de structuration
Conclusion et perspectives
2
Classification des méthodes

Approche ascendante (data-driven)



Approche descendante (requirement-driven)


Lourde avec des sources volumineuses
Pas de prise de compte des besoins utilisateurs
Schémas impossibles à mettre en œuvre
Approche mixte

Prise en compte des utilisateurs et des sources

Pas de méthode d’analyse des besoins utilisateurs
3
Contexte des travaux




Collaboration avec la société I-D6 spécialisée dans le
décisionnel
Focalisation sur les besoins utilisateurs / {pilotage, équipement}
Expression de besoins analytiques
Table multidimensionnelle


expression intuitive et la moins informelle
expression inadaptée pour la confrontation

Besoin de formaliser les informations ainsi que les traitements
4
Contexte de la proposition
5
Collecte des besoins utilisateurs (1)

Entrée : Documentation projet {manuel utilisateurs, spécifications de l’application métier}

Sortie : {Dictionnaire décisionnel}
1- Sélection


requêtes multidimensionnelles pertinentes exprimées en BI-Query
Analyser Immobilisations.Valeur_vénale
Quand Immobilisations.Valeur_vénale >1000
En Fonction Catégories.Familles, Catégories.Sous-familles
Temps.Année
Pour Temps.Année Dans (2003, 2004, 2005);

Analyser {S.Cr}+
Quand {Cond(S.Cr)}+
En Fonction {Ai.EkAi}
Pour {Cond(Ai.EkAi)}+
tables multidimensionnelles pertinentes
7
Collecte des besoins utilisateurs (2)



Entrée : {Tables multidimensionnelles, interviews utilisateurs relatifs aux processus ETL}
Sortie : {Diagrammes décisionnels}
2- Réalisation du dictionnaire décisionnel

Etude des lignes et des colonnes des tables multidimensionnelles

Définition des paramètres des traitements ETL (Extraction Transformation Chargement)
Y : année courante
y : année traitée
8
Formalisation des besoins utilisateurs (1)

Caractéristiques du modèle





Intégration des spécificités des besoins analytiques
Proche de la vision de l’information par les décideurs
Extension du diagramme de classes UML pour garantir la réutilisation
des schémas
Prise en compte des informations et des traitements
Spécification des traitements ETL

Concept de propriété d’informativité




h : attribut historisé
a : attribut archivé
* : attribut rafraîchi
c : attribut calculé
9
Formalisation des besoins utilisateurs (2)

Association d’un comportement à un attribut

Attribut : une classe à part entière [luján-Mora et al, 2004]



Proposition : Définir des méthodes attribut avec le stéréotype <<attribut>>
Association d’un traitement à chaque propriété





Limite : impossibilité d’associer une méthode à une classe-attribut
Historiser(p, c, cond)
Archiver (p, c, cond, fct)
Rafraîchir (cond, m)
Calculer ({vi}+)
Historiser (annee,Y>y-3 and Y<y)
Archiver(annee, Null, Y>y-5 and Y<y-1,sum)
Rafraîchir(y<>Y, merge)
Calculer(Valeur_venale, Valeur_achat, amortissement)
Modèle du diagramme décisionnel (DD)
11
Règles de structuration

Règles de transformation


Règles syntaxiques


Passage de la table multidimensionnelle au DD
Validation de la cohérence et consistance des DD
Règles de fusion

Fusion des DD suivant l’environnement du projet
12
Règles de transformation


Environnement
Fait et mesures



Informations
Traitements
Dimensions et paramètres


Informations
Traitements
13
Règles syntaxiques

Informations




SDI1 & 2 : Une classe-dimension,
classe-fait ne peut pas être reliée
respectivement à une autre classedimension, classe-fait
SD3& 4: A tout paramètre et mesure est
associé la propriété d’informativité d’
historisation sur l’exercice précédent
SD5: Si un attribut possède la propriété
d’informativité « * » alors la classe
possède la propriété aussi
Processus


SDP1: Si la propriété d’informativité
porte sur tous les attributs de la classe et
avec les mêmes paramètres alors la
méthode est spécifiée au niveau de la
classe
SDP2 : Si une des mesures du fait
possède la propriété d’informativité
« h » et « a » alors toutes les dimensions
liées doivent posséder cette propriété
14
Règles de fusion

DD ayant la même
classe-fait et des
dimensions en commun



FUS1 : Fusionner les
classes-dimension par
ajout des attributs et
des méthodes
FUS2 : Fusionner les
classes-fait par ajout
des attributs et des
méthodes
DD ayant des classes de
classes-fait différentes et
des dimensions en
commun

FDS1 : Fusionner les
classes-dimension par
ajout des attributs et
méthodes
16
Conclusion

Proposition d’une méthode pour l’analyse des
besoins utilisateurs



A partir de tables ou requêtes multidimensionnelles
Mécanisme basé un 3 types de règles
Diagramme décisionnel :


modèle proche de la vision des décideurs
Prise en compte des besoins


Information et Traitements
Possibilité de réutiliser les schémas générés
17
Perspectives




Analyse des besoins de Pilotage et
Équipement
Automatisation de l’étape de l’analyse
Faciliter la tâche de confrontation
Prise en compte des hiérarchies dès l’étape de
l’analyse des besoins
18
Merci

Contact : [email protected]
19
Immobilisations.Valeur_Vénale
Temps.Année
2003
2004
2005
Catégories.Famille
Catégories.Sous-Famille
Immatériel
Logiciels
115 999,26
69 059,42
173 170, 09
Progiciels
8 958,61
111 429, 69
63 769, 32
Ecrans
1 147,47
3 445,14
4624,12
PC
3 601,85
5 319,81
7 420,95
Terminaux
1 985,47
1 798,06
1 291,34
Postes Utilisateurs
S.Cr
Ai.El
Val1ElAi
…
ValmElAi
Ai.Ek
Val1EkAj
{ValCrs(Val1EkAj, Val1ElAi)}
{ValCrs(Val1EkAj, ValmElAi)}
Val2EkAj
{ValCrs(Val2EkAj, Val1ElAi)}
{ValCrs(Val2EkAj, ValmElAi)}
{ValCrs(ValnEkAj, Val1ElAi)}
{ValCrs(ValnEkAj, ValmElAi)}
...
ValnEkAj
20