Upload
azertytyty000
View
216
Download
0
Embed Size (px)
Citation preview
7/21/2019 Exp-GL42-SA-SD
1/32
Mthodes fonctionnelles :
Structured Analysis - Structured Design(SA - SD)
Bernard ESPINASSE
Professeur l'Universit d'Aix-Marseille
Plan SA - Analyse Structure (Structured Analysis)
Notations des outils de SA : DFD, dictionnaires, ...
Mise en oeuvre des outils graphiques
SD - Conception Structure (Structured Design)
Dcoupage des programmes en modules Diffrents types de couplage entre modules
Diffrents types de cohsions d'un module
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 1
7/21/2019 Exp-GL42-SA-SD
2/32
L e s m t h o d e s f o n ct i o nn e l l e s
ont leur origine dans le dveloppement des langages procduraux
plus orientes vers les traitementsque vers les donnes
mettent en vidence la ou les fonctions assurer
proposent une approche hirarchique, descendanteet modulaireen prcisant les liensentre les diffrents modules
utilisent souvent des modles/outils de type DFD
avec l'volution des langages de programmation et des systmes, prennent en compte la
modlisation des donneset les problmes poss par le temps rel (SA-RT)
mthodes fonctionnelle les plus connues :
SA-SD (Strutured Analysis -Structured Design - Yourdon, DeMarco, W.P.Stevens,G.J.Myers, Constantine, Gane & Sarson,...)
SADT (Structured Analysis and Design Technique - Softech)
SA-RT (Strutured Analysis / Real Temps- Hatley & Pirbhai 1991) spcialis temps rel
...
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 2
7/21/2019 Exp-GL42-SA-SD
3/32
B i b l i o g r a p h i e c o m p l m e n t a i r e
SA-SD (Strutured Analysis - Structured Design) :
C.Gane, T.Sarson, "Structured Analysis : Tools and Techniques", New York,Improved System Technologies, 1979, traduction franaise : "Analyse structuredes systmes : outils et techniques, IST, Gland, Suisse.
W.P.Stevens, G.J.Myers, U. Constantine, "Structured Design", IBM SystemsJournal, vol. 13, #12, pp. 115-139.
T. De Marco, "Structured Analysis and System Specification", Prentice Hall, 1978,Prentice Hall, Englewood Cliffs, 1979.
...
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 3
7/21/2019 Exp-GL42-SA-SD
4/32
S A - A n a l ys e S t r u ct u r e ( S t r u t ur e d A n a l ys i s)
SA-SD (Strutured Analysis / Structured Design - Yourdon, DeMarco, W.P.Stevens,G.J.Myers, Constantine, Gane & Sarson,...)
mthode descendante,par raffinements successifs des traitementsou processus:
Outils utiliss :
chaque niveau de dcomposition usage des DFD :
le niveau le plus haut reprsente l'ensemble du problme: usage d'undiagramme de contexte
chaque diagramme de niveau infrieur dcompose en plusieurs processus lesprocessus dfinis au niveau juste suprieur, en respectant les flots de donnesentrants et sortants
chaque processus non dcompos, est attache une "mini-spcification", sousune forme plus ou moins formelle, ayant pour but de prciser comment, pourchaque processus, les sorties sont produites partir des entres.
un dictionnaireprcise la dfinition des donnes, des processus et des fichiers usage dulangage naturel structur, des tables et arbres de dcision, d'aspects logique
de bas niveau
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 4
7/21/2019 Exp-GL42-SA-SD
5/32
L e s n ot a t i o ns D F D d a n s S A
Yourdon, DeMarco, ... Gane & Sarson
flux de donnes
processus
description duprocessus
identification
description duprocessus
localisation(optionnelle)
dpt de donnes
identification
entit externe
(source / destination dedonnes)
flux matriel
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 5
7/21/2019 Exp-GL42-SA-SD
6/32
D F D d a n s S A ( G a n e & S a r s on )
entit externe:ensemble logique de choses/personnes reprsentant une origine ou une destination detransaction (client, employ, service, ...) = gnrateur d'information primaire
flux de donnes :information relative ....
processus :
identification du processus
description du processus
localisation physique o le processus est excut (ex:service magasin)
dpt de donnes :
identificationdu dptD3 comptes clients
mmorisation des donnes
lecture des donnes
dpt de donnes = fentre sur la base de donnes
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 6
7/21/2019 Exp-GL42-SA-SD
7/32
Exemple de DF D da ns S A ( G a ne & S a rs on)
client affecterpaiement facture D1
paiement
dtails facture
dtails paiement
compte client
attention ! : on se place un niveau logique (et non physique) => flux = information
ex: paiement = information sur paiementmouvements de fonds mouvement d'information
niveau physique (support) niveau logique (information)
argent, chque, carte crdit, ... mme information : montant pay
niveau physique= support|
abst ract ion
|niveau logique= information
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 7
7/21/2019 Exp-GL42-SA-SD
8/32
Les interdits du DF D da n s S A ( G a ne & S a r s on )
a a
a a
a b a b
D1
D2
D1
D2
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 8
7/21/2019 Exp-GL42-SA-SD
9/32
L ' c l a t e m e n t d ' u n p r oc e s s u s
les entit externesne sont pas reprsentes l'intrieur d'un clatement :
a
clatement
logique des processusdictionnaire de donnes (E-R)
diagramme des accs immdiats
diagramme global niveau 1
diagramme clat niveau 2
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 9
7/21/2019 Exp-GL42-SA-SD
10/32
D t a i l s po u r la c o nc e p t i o n s t r u ct u r e
dictionnaire de donnes: modle E-R -> base de donnes
diagramme des accs immdiats: -> base de donnes
logique des processus: tables et arbres de dcision, langages semi-structurs
P r i se e n c o m pt e d e s e r r e u r s e t e x c e p t io ns
ne se fait que dans un diagramme de 2niveau (clatement)
l'analyse doit dcider si la fonction est assez importante pour tre intgre audiagramme de niveau suprieur
mthode descendante,par raffinements successifs des traitementsou processus:
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 10
7/21/2019 Exp-GL42-SA-SD
11/32
Exemple de DFD dans SA : diagramme de contexte
Ouvrir et grercompte- client
GDP: Client
GDP: Compte clientFORM.: Fiche client
FORM.: Compte
clientComptable
Prparerlivraison
GDP: LivraisonFORM.: Fiche de
stockEmploy
manutention
Vrifier
commande etlimite de crdit
GDP: Commande clientFORM.: Bon de
commandeEmploy commandes
CLIENT
PRODUCTION
Stocker nouveauxproduits
GDP: Entre en stockGDP: Inventaire
FORM.: Fiche de stock
Employ manutention
ENTREPT
FacturerGDP: Facture
FORM.:
Formulaire de
factureComptable
VENDEUR
Si l imi t e
cr ditdpasse
Coli
sProdui
Entreen stock
Sortie
destock
Si l imi t e
crdi t n o n
Comman
Factu
re
Nouveauclient
Nom du modle
Crateur Vers
Cr le Modifi le
Ventes
CSA R. MFO1
31/03/94 30/11/95
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 11
7/21/2019 Exp-GL42-SA-SD
12/32
E x e m p le d e D F D d a n s S A
SHINY: Activits de vente
SERVICE COMMANDES SERVICE COMPTABILIT ENTREPT
Quotidien-
nementau
besoin
Priodique
-ment
CLIENT(1/4)
Recevoircommande:
vrifier limitecrdit
MODULE: SaisieCommande
employcommandes
Enregister client
MODULE: FicheClient
comptable
Dcider limite decrdit
MODULE: CompteClient comptable
Inventaire
Produits(1/2)
RESPONSABLE
DES VENTES(1/2)
Recevoir commande:vrifier disponibilit du
produit
MODULE: Saisie
Commandeemploy commandes
CLIENT(2/
4)
Mettre solde jour
MODULE: Compte
Client comptable
PRODUCTION
Enregistrerrception produits
MODULE: Entre deProduction employ
manutention
Prparer et expdier colis
MODULE: ExpditionMODULE: Impression
Bordereau Expdition
employ manutention
Inventaire
Produits(2/2)
CLIENT(3/4)
Traiter et imprimerfactures
MODULE: Traitement
FacturesMODULE: Impression
comptable
CLIENT(4/
4)
Compte-client(1/2)
Commandes(1/2)
Commandes(
2/2)
Compte- client(2/2)
Modifier commandes
MODULE: SaisieCommande
employ commandes
Imprimer rapport des
ventes
MODULE: Rapport des
Ventesemploy commandes
RESPONSABLE DESVENTES(2/2)
Imprimer rapport des produits
MODULE: Impression Niveau
Inventaire
employ manutention
GESTIONNAIRE
DES PRODUITS
Enregistrernouveau produit
MODULE: FicheProduit employ
manutention
Imprimer rapports
clientle
MODULE: Impression
Compte Client
MODULE: Impression Li steemploy commandes
Effectuer etenregistrer
contrled'inventaire
MODULE: Contr leInventaire
employ
manutention
VENDEUR
commande
Si l imite
cr di tdpasse
Si
cr di tsuffisa
commandeacceptable
paiement
commande
expdie
entreproduit
colis, bordereaud'expdition
factures
info ficheclient
limite decrdit
commande
mise jour inventaire
modifications commande
toutes les deux
semaines
nouveau client
nouveau solde
nouveausolde
expdition
faite
Nom du modle
Crateur Ve
Cr le Modifi le
SHINY SOAP Cie
CSA R. MF
24/ 06/ 94 30/ 11/ 95
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 12
7/21/2019 Exp-GL42-SA-SD
13/32
d m a r c h e p r c on is e e n S A
1 identifier les entit externes -> les frontires du systme tudier
2 identifier les entres / sorties "rgulires" de ses entits externes
3 complments d'informations (rapports)
4 diagramme de contexte : entit externes et entres sorties
5 premier DFD (ne traite pas les erreurs et exceptions)
6 3 preuves
7 vrifier 1, 2, 3
8 autre version9 vrifier avec usager
10 explosion (clatement) et traitement des erreurs et cas d'exception
11 artistique...
C o n s e i l s
diagramme manipulable :
15 30 processus
10 dpts
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 13
7/21/2019 Exp-GL42-SA-SD
14/32
S D - C o n c e pt i on S t r u c t ur e ( S t r u ct u r e d D e s i g n)
reprend les principes de dcomposition fonctionnellede AS,
prcise les liens(simples, itratifs, alternatifs) et les passages de paramtres, entre lesdiffrents modules
la notation utilise est celle des diagrammes de structure
un modle d'information, type modle Entit-Association, complte souvent cette mthode.
L'analyse et la conception "temps rel" : SA-RT (Hatley et Pirbhai 1991)
les outils de base de l'analyse structure pas suffisants pour spcifier les contraintes de tempset de synchronisation, des extensions ont t apportes :
diagrammes de flots de contrle(CFD:Control Flow Diagram)
spcifications de contrle(Control Specification) permettant de reprsenter lesinformations qui activent ou dsactivent les processus reprsents dans les DFD
Ward & Mellor prconisent l'utilisation de diagrammes tats-transitions pour mettre enrelief les vnements dclenchant les processus.
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 14
7/21/2019 Exp-GL42-SA-SD
15/32
S D - C o n c e pt i on S t r u c t ur e ( S t r u ct u r e d D e s i g n)
ANALYSE STRUCTUREE: .......logique, DFD
-> qu'est ce quele systme doit faire
CONCEPTION STRUCTUREE: Stevens, Constantine, Myers, Yourdon (1975)
-> commentle systme doit-il tre fait
"processus itratif qui consiste :
prendre simultanment un modle logique d'un systmeavec un ensembled'objectifsbien spcifis
produire les spcifications d'un systme physiquequi satisferait cesobjectifs"
ensemble de considrationset de techniquespour :
la ralisation de logiciels, le dverminage, la maintenance plus facile et moinscoteuse
par rduction de complexit: dcoupage en modules
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 15
7/21/2019 Exp-GL42-SA-SD
16/32
Conception Structure : considrations gnrales
diviser le systme en modules disjoints, de telle manire que chacun puisse tre :
considr
implant
fix
modifi
avec le minimum de considrations des effets sur les autres modules du systme
pouvoir observer et valuer diffrentes alternatives de conception
considrer les effets dus des modifications raisonnables
objectifs principaux de la CS :
1 performance du systme
2 matrise du systme
3 aptitude au changement du systme
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 16
7/21/2019 Exp-GL42-SA-SD
17/32
P e r f o rm a n c e d u s y s t m e
Avec quelle rapidit le systme physique pourra raliser le travail :
cadencede traitement
temps de traitement
temps de rponse
rle dterminant de la capacit de la mmoire centrale
Facteurs lis la performance :
1 nb de fichiers intermdiairesdans un systme
2 nb de foispour lesquelles un fichierest explor
3 nb de recherches dans un fichiersur disque
-> optimisation du dplacement des ttes : rorganisation physique
4 temps d'excutionproprement dit (algorithme)
-> instruction machine = recherche sur disque * (103 104)
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 17
7/21/2019 Exp-GL42-SA-SD
18/32
M a t r i se d u sy s t m e
Niveau de scurit du systme par rapports aux erreurs humaines, aux dysfonctionnements deslogiciels et du matriel, au sabotage, ...
1 utilisation de digits de contrle :
ex: affectation d'un N de compte un client
nom: DUPONT Ncompte: 1234567 : f(dupont) = 7
2 journaux (logs) :
ex: chaque transaction laisse une trace sur un journal par exemple gr par le SGBD
3 limitation l'accs aux fichiers :
qui ne peut avoir accs ces donnes (consultation, mise jour)
qui est autoris modifier ces donnes ? ...
-> mot de passe, profil d'utilisateur, sauvegardes sous cl, ...
Contrle et Scurit cotent cher
=> compromis trouver par le concepteurMthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 18
7/21/2019 Exp-GL42-SA-SD
19/32
A p t i t u de a u c h a n g e m e n t d u s y st m e
Facilit avec laquelle la conception permet de modifierle systme (erreurs, adaptation auxbesoins, ...)
Activit et Proportion du cot li la miseau point proportion du cot pendant lapriode d'utilisationMise au point du systme :
analyse et conception : 35% programmation : 15% essai+correction : 50%
|| 20%|
Systme en fonctionnementMaintenance du systme :
correction en cours d'utilisation :
modification / nouveaux mat. et logiciels. amlioration
|
| 80%|
cot
temps, annes
matriels +logicielsspcialiss
-25%+10%
taux horaire d'un analysteprogrammeur
=> Conception Structure
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 19
7/21/2019 Exp-GL42-SA-SD
20/32
N o t i o n d e m o d u l e
module= ensemble d'instructions contigus de programme ayant un nom par lequel lesautres parties du systme peuvent l'invoquer (et ayant de prfrence son propre
ensemble de variables locales)
exemple :
PL1/Pascal : module = procdureC : module = fonctionfortran : module = sous-programmeAda : module = package
recherche de modules simpleset indpendants:
la rsolution d'un problmeest d'autant plus :
simple et rapidequ'il est divisibleen parties pouvant tre considres
sparment
difficilesi tous ses aspectsdoivent tre simultanmentpris en compte
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 20
7/21/2019 Exp-GL42-SA-SD
21/32
D e b on s m od ul e s . . .
Pour permettre une meilleure aptitude la modification, les systmes logiciels le plus facile grer sont constitus de :
petits modules : chaque module est associe une fonction :
processus A
B C
D E F G
module de base
modules simples grer : c'est dire, sur listing, possible de se faire une image pertinentede la fonction qui est assure par le module (150 lignes / module)
modules indpendants : viter l'effet de cascade :
A B C modif. A => modif. B => modif. C ...
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 21
7/21/2019 Exp-GL42-SA-SD
22/32
I s o la t i o n d e s f o n ct i o ns
une fonction est d'autant plus isole quelle concerne le moins de modules possible:
exemple : les utilisateurs d'un systme informatique veulent changer la politique decalcul de remise :
si la remise est calcule dans un seul module : pas d'effet de cascade, changementfacile et rapide
si diffrents lments de calcul de remise sont disperss dans plusieurs modules ousi les remise sont calcules indpendamment dans plusieurs modules diffrents :changement difficiles
fonction contenues dans des boites noires :
fonction f
donnes fourniesrsultats
1 une boite noire produit des rsultatsparfaitement prvisiblesvues partir du programmequi fait appel elle
2 pas besoin de connatre le programme interned'un module "boite noire" pour connatre safonction
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 22
7/21/2019 Exp-GL42-SA-SD
23/32
D c o up a g e d e s p r og r a m m e s e n m od u le s
Comment dcouper les programmes en modules ?
valuation des diffrentes alternatives de dcomposition
notation graphique utile : graphe structurels :
A
B
1
X Y
in out
1
A = module appelant le module B B est subordonn A B reoit un paramtre d'entre X (nomm dans A) et renvoie le paramtre Y (nomm
dans A)
Considration des connexionsentre modules :Plus la connexion est simple, rduite :
Plus facileest la comprhension d'un modulesans se rfrer auxautres
Plus rduitessont les propagationsdues des modifications
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 23
7/21/2019 Exp-GL42-SA-SD
24/32
D c o up a g e d e s p r og r a m m e s e n m od u le s
usage des graphes structurels:
A
B C
D E
A invoque B puis CB invoque D puis E
On doit considrer :
les connexions entre les modules :
-> notion de couplage l'intrieur d'un module :
-> notion de cohrence
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 24
7/21/2019 Exp-GL42-SA-SD
25/32
N o t i o n de c o u p l a g e
couplage= mesure de la contrainte de la relation tablie par une connexion d'unmodule un autre
le degr de couplagedpend de : la complexit de la connexion
si elle rfre :
au module lui-mme
quelque chose qui lui est interne
ce qui doit tre envoy et reu
couplage complexit del'interface
type de connexion type de couplage(communication)
faible simple,
vidente
au module
par nom
par donnes
par contrle
fort complique
obscure
des lments
internes
hybride
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 25
7/21/2019 Exp-GL42-SA-SD
26/32
Couplage par partage d'un environnement commun
2 ou plusieurs modules sont connects avec la mme zone de mmoire de donnes, device, ...
ex :
Pascal/PL1: ens. de donnes dclares avec l'attribut "external", copi dans lesdiffrents modules par un "include"
Fortran : donnes dfinies dans l'instruction "common" de chacun des modules
...
couple chaque module le partageant sans tenir comptede l'existence ou de l'absence derelation(s) fonctionnelle(s)
tout lment de cet environnement :
constitue un cheminle long duquel peut se propagerdes erreurs / modifs
empcheune bonne comprhension globaledu systme (nb de modulespouvant tre en relation)
les rfrences aux donnespeuvent devenir incontrle(voire inconnues ->prudentes sauvegardes et restaurations avant couplage...)
d'o : soit tablir un contexte de donnespour chaque appel un module,
soit passer entre modules des paramtresvia des interfaces dfinis.
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 26
7/21/2019 Exp-GL42-SA-SD
27/32
Couplage par partage d'un environnement commun
soit :
M objets
d'o : M (M - 1) paires ordonnes d'objets
N lments partags par les M modules
d'o :
N x M (M - 1) relations ( un niveau) possibles le long desquelles peuvent sepropager des erreurs et modifications
Exemple :
un programme en fortran :
3 modules
25 variables partagesd'o : 25 x (3 (2)) = 150 paths (chemins) possibles !!!!
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 27
7/21/2019 Exp-GL42-SA-SD
28/32
C o u p l a g e e n t r e m o du l e s
3 types principaux :
couplage par les donnes
couplage par la commande couplage externe ou pathologique
C o u p l a g e p a r l e s d o nn e s :
c'est le plus souhaitable
sortir lasolution
mettre la
solution auformat
sortie mise au format
solution
remarque: plus il y a de donnes assurant le couplage, plus l'aptitude la modification estrduite.
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 28
7/21/2019 Exp-GL42-SA-SD
29/32
C o u p l a g e p a r l a c o m m a n d e :
lorsqu'un module entre en contact avec l'extrieur (lecture, criture, ...)
introduction de variables de contrle ou "flag"
prendre la bonnesolution
diteur
flag d'dition
entre
brute
plus il y aura de branchements et de flags, plus le travail de maintenance sera difficile
Exemple : un module de base de lecture (contact extrieur) doit rfrer son "chef" pour luisignaler par exemple qu'il a rencontr la fin d'un fichier, ou trouv une transaction incorrecte=> variable de contrle (flag )
Remarque :
M1 M2
M1 transmet un flag de contrle en faisant appel M2 => M2 n'est plus une boite noire, car M2s'excutera selon les flags => mlange de fonctions dans M2
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 29
7/21/2019 Exp-GL42-SA-SD
30/32
C o u p l a g e e x t e r n e o u p a t h o lo g iq u e
couplage trs contraignant:M1 M2
le module M1 se rfre:
qq chose l'intrieur de M2ou en extrayant des donnesdfinies dans M2 ou passe le contrledes oprations qq chose l'intrieur de M2 modifie la manire dont fonctionne M2
Exemple : un module de sortie M1 lit un compteur de transactions qui appartient M2 (moduled'entre), d'o couplage non apparent : le compteur de transaction ne voit pas son contenupasser de M1 M2 en remontant ou descendant la hirarchie :
M2 M1
connexion pathologiqueif tcompt > 10000 then ...
entre sortie
compteur de
transaction : tcompt
si modifications de M2 => problmes sur M1 !!! couplage utilis que lorsque une situation se produit si rarement que cela ne vaut pas la peine
de remonter ou descendre la hirarchie : mais viter !
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 30
7/21/2019 Exp-GL42-SA-SD
31/32
C o h s i o n d ' u n m o d u l e
caractrise les modules bien faits
module forte
cohsion: ses composants contribuent une fonction unique (ne
ncessite en consquence peu de couplage avec d'autres modules)
Types de cohsions cohsion occasionnelle : la plus mauvaise :
le dcoupage en modules conduit ce qu'une fonction se retrouve assure parplusieurs modules
cohsion logique: la moins mauvaise combiner ensemble quelques fonctions lgrement diffrentes
cration d'un module plus compact que si programm sparment chaque fonction
ncessite l'usage de flags de contrle
difficile modifier (chemins logiques complexes)
ex: module qui dite tous les types de transactions
cohsion temporelle : mdiocre contient diffrentes fonctions dont le seul point commun est d'tre utilises au mme
moment
isoler chaque fonction
ex: modules d'initialisation, de nettoyage, ...
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 31
7/21/2019 Exp-GL42-SA-SD
32/32
T y p e s d e c o h s i o n s ( s u it e )
cohsion procdurielle : passable
lorsque les modules sont dduits d'un organigramme
dans chaque module on accomplit plusieurs fonctions, mais ordres de commandeinternes
M1 M2
cohsion communicationnelle : bonne
= cohsion procdurielle+ les fonctions travaillent sur les mmes donnes
ex : M1 = calculer et imprimer les rsultats
cohsion fonctionnelle : la meilleure
le module assure une seule fonction
ex: M1 = calcul solution; M2 = imprime solution
Mthodes Fonctionnelles : SA/SD - Gnie Logiciel - Bernard ESPINASSE - - 32