Le Génie Logiciel, Pourquoi - boitasite.comEmmanuel ADAM –Universitéde Valenciennes et du...
Transcript of Le Génie Logiciel, Pourquoi - boitasite.comEmmanuel ADAM –Universitéde Valenciennes et du...
1
Introduction aux méthodes Introduction aux méthodes
d’analyse et de modélisationd’analyse et de modélisation
Emmanuel ADAMEmmanuel ADAM
Groupe de recherche RAIHMRaisonnement Automatiqueet Interaction Homme-Machine
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Le Génie Logiciel, Pourquoi ?
• Apparu en 1968 pour
– construire des logiciels fiables,
– respecter les délais,
– travailler en équipe,
– décomposer la complexité,
– assurer la qualité,
– permettre la réutilisation,
– ...
2
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Le Génie Logiciel pour des problèmes complexes
• Ajouter un programmeur sans organisation ne fait que ralentir la mise en œuvre du projet.– Problème de nb de communications : (Loi de Brooks)
– Problème de communication (compréhension)• malentendus, erreurs d’interprétation, ...
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Quelques définitions
• le génie logiciel est l'art de spécifier, de concevoir, de réaliser, et de faire évoluer, avec des moyens et dans des délais raisonnables, des programmes, des documentations et des procédures de qualité en vu d'utiliser un ordinateur pour résoudre certains problèmes. [MC Gaudel & co, 96]
• Le génie logiciel se caractérise par une approche rigoureuse et systématique de la construction de logiciels ne pouvant être maîtrisés par une seule personne. [JP Fournier 00]
3
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les étapes de développement
1 - Analyse des besoins
2 - Spécification
3 - Conception
4 - Codage
5 - Intégration
6 - Mise en œuvre
7 - Exploitation - Maintenance
40%40%
20%
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Analyse des besoins
• Etude de faisabilité
• Type d’analyse– orientée processus, orientée rôle, orientée données
• Techniques d’acquisitions– entretiens, observations, questionnaires, ...
4
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Spécification(inspiré de IEEE Std 830 & [Jaulent 90])
• Première description du futur système (le quoi, Ce qu’il doit faire)– Les fonctions générales,– Les caractéristiques des utilisateurs,– Contraintes (développement, exploitation, maintenance),– Interfaces (homme-machine, logiciel/matériel, logiciel/logiciel),– Objets, entités constituant le système.
• Garder une trace des différentes spécifications (justification)• Ne pas oublier le glossaire !• Dans une annexe, placer les références aux documents
utilisés• Ne pas faire de choix d’implémentation à ce niveau...
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Conception
• Augmenter la spécification pour se rapprocher de l’implémentation, du codage
• Conception Architecturale
– Décomposer le système en sous-systèmes
– Définir les interfaces, les liens entres les composants
• Conception détaillée
– Détailler le fonctionnement des composants• définir quelques algos, la représentation des données, ...
5
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Le codage et l’intégration
• Ne représente que 15 à 20% du temps dans un projet complexe et bien structuré
• Ne pas oublier de gérer les différentes versions des composants
• L’intégration nécessite une bonne définition préalables des interfaces entre composants
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les langages de programmation (1/2)
• Programmation impérative– programmation structurée,– basé sur des algos,– ex : fortran, pascal, c, ADA, …
• Programmation applicative– programmation fonctionnelle et déclarative,– programmation objet– ex : Lisp, Caml, Smalltalk, C++, Java, ...
6
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les langages de programmation (2/2)
• Programmation logique– issue de l’IA– ex : prolog, Level5, …
• Programmation orientée agent ?– Agent = objet autonome communicant
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Mise en œuvre
• Porter le logiciel sur le système client
• Vérifier l’adéquation avec le système visé– Validation
• De manière générale, il faut tenter de valider à tout niveau (spécifications & conceptions)– test unitaires (composants)– test d ’intégration (logiciel complet)– test système (logiciel sur site)
7
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les AGL: des outils d’aide
• AGL = Atelier de Génie Logiciel– Atelier de modélisation
• Une méthode n’existe que si elle est supportée par un outil
– Atelier de développement• facilite la programmation (Visual Basic, Visual C++, ...)
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Aide à lagénération dedocumentation
Aide à lagestion desversions
AnalyseSpécification
Coda
ge
ConceptionDétaillée Co
nceptio
n
Préliminaire
Transform
ationLibrairie
modèles
des modèles à
la conception
a - ........
b - .......
........
d - ........
dictionnaire
de données
architecture
du logiciel
fonction(....) ........ ....... fin
pseudo code
générateurde code Java
générateurde codeVisual Basic
générateurde code C++
Aide à lagestion deprojet
Atelier de modélisation
8
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
éditeur de code
éditeur d'interfaceshomme-machine
compilateur debugger
Atelier de développement
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les différents modèles de développement
• Enchaînement des étapes – Le modèle cascade– Le modèle en V– Le modèle évolutif– Le modèle spirale
9
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les différents modèles de développement
• Le modèle cascade
Spécification
Faisabilité, cahier
des charges
Conception
préliminaire
Conception
détaillée
Codage
Intégration
Installation
Exploitation &
maintenance
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les différents modèles de développement
• Le modèle en V
Programmation
Spécification
Faisabilité, cahier
des charges
Conception
préliminaire
Conception
détaillée
Test d’acceptation
Installation et
tests systèmes
Intégration et test
d’intégration
Test unitaire
10
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les différents modèles de développement
• Le modèle incrémental (évolutif)Faisabilité, cahier des charges
Validation
Spécification
Validation
Conception
Vérification
Conception détaillée
Vérification
CodageTests unitaires
Intégration
Vérification
Mise en œuvre
Test
Exploitation, Maintenance
Revalidation
Conception détaillée
Vérification
CodageTests unitaires
Intégration
Mise en œuvre
Itération 2
Itération 1
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les différents modèles de développement
• Le modèle spirale
prototype1
plan généraldu projet
conceptsd'opération
analyse de
risque
prototype2 prototype3
prototype
opérationnel
analyse de
risque
analyse de
risque
analyse de
risque
détermination des objectifs,des alternatives,
des contraintes
plan de
développement
plan d'intégration
et de test validation de la
conception
Vérification
Validation des
besoins
conception
détaillée
Programmation et
test unitaires
Intégration et test
Test Système
Mise en oeuvre
simulation, modélisation, benchmark
11
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les modèles
• Représenter le système (initial ou visé)
• 4 types de modèle : – modèle des données– modèle des flux de données– modèle de traitement– modèle dynamique
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Quelques méthodes d’analyse,de spécification et de conception
MERISE : orientée BdD
SADT : méthode structurée
1 3
2 4
vue globa le du s ystèm e
1
2
3
OSSAD : organisation CISAD : coopération
MKSM : gestion des connaissances
OMT : orientée objetUML
12
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
MERISE
• Orientée Base de données
• Cycle cascade
• Approche descendante
• Modélisation : données & activités, traitements
• Particularités : – modèles conceptuels, organisationnels, logique et physique
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
MERISEModèle Conceptuel de Communication
DT
FDC
FDC
FDC
FDC
FDC
FDC
FDC
FDC
FDC
rôle 5
rôle 4
rôle 2
rôle 6
rôle 5
rôle 3
rôle 6
rôle 4
rôle 2
13
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
MERISEModèle Conceptuel des Données : Modèle Entité-Relation
nom,
prénom
rôle 5
type,
domaine
rechercheeffectuer
1,1
0,n
accord
avis de
brevetabilité
domaine,
état de l'art,
description
Dossier
Technique
constituer
DT
1,1
1,1
1,n
1,1 rédiger
PjtDmd
1,1
référence,organisme,
nom rôle 5
Farde de
Circulation
1,1
nom,
prénom
rôle 4
résumé du projet
texte du projet
projet de
demande
remplir
FdC
1,1
1,n
1,1
1,n
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
MERISEModèle Organisationnel des traitements
Acteur 2 Acteur 1Acteur 3Acteur 4Acteur 5Acteur 6
- copier et placer
PJTDMD dans la
farde COG,
prise de
connaissance
Constituer DT
rediger et mettre
en forme le
projet de
demande
non
correctcorrect
remplir la farde
de circulationcréer n° cas
Dossier
Technique
Projet dedemande
demande n°
n° index
farde de
circulation
farde decirculation
avis de
brevetabilité
14
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OMT : Object Modeling Technique
• Orientée Objet
• Cycle spirale
• Approche descendante
• Modélisation : données, dynamique, traitements
• Particularités : – Méthode objet utilisée dans qqs entreprises avant l’apparition d’UML
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OMTModèle de données
Dosssier Technique
(DT)
- Référence invention
- Domaine de l'invention
- Etat de l'art
- Caractéristiques de l'invention
- Référence invention,
- Résumé de l'invention,
- Etat de l'art,
- Description de l'invention
Projet de demande de brevet
(Prj.Dmd)
- n° de dossier,
- noms inventeurs,
- mots clés
Dossier de circulation
(DdC)
Dossier principal
Avis de brevetabilité
(Avis)
- Référence invention
- avis
correspond àcorrespond à
15
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OMTDiagramme d’événements
Rôle 2 Rôle 1Rôle 3Rôle 4Rôle 5Rôle 6
Dossier Technique
constitué
n° farde demandé
avis de brevetabilité
transmis
n° farde créé
farde de circulation
complétée
projet de demande
incorrect
projet de demande
modifié
projet de demande
correct
projet de demande
classé dans farde
COG
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OMTDiagramme d’état
première vérification
création
de la farde COGfaire : copier le projet
Constitution du
Dossier
faire : compléter la
farde de circulation
Projet de
demande créé
nouvelle fdc /
demande n°
avis de
brevetabilité
Dossier Technique
constitué
rédaction du projet
de demande
création d'un
n°de cas
n° créé
Farde de Circulation
constituée
Farde de Circulation
incorrecte
Farde de Circulation
correcte
FCOG créée /
transmettre fdc
16
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OMTDiagramme de flux de données
remplir dossier
lire
compléter le
dossier
enregistrer
passage
compléter le
texte
vérifier
enregistrer passage,mettre à jour le
dossier principal
classer le
dossier
principal
lire, parapher
rôle 2
rôle 6
Dossier
Principal
dossier decirculation
rôle 3
dossier de
circulation
dossier de
circulation
dossier de
circulation
dossier decirculation
dossier de
circulation
Dossier
principal
Dossier
principal
rôle 1
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
UML : Unified Modelling Language
• Langage, fusion des différentes méthodes orientées objets
• supporté par des outils
• +, cf. prochains cours
17
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
UMLCas d’utilisation
création
du dossier principalfaire : copier le projet
Constitution du
Dossier
création du dossier
de circulation
rédaction du projet
de demande
acteur 5
acteur 4
acteur 4acteur 6
acteur 2
acteur 6
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
UMLScénario
copier et placer
le projet dans le
dossier principal
prendre
connaissance
Constituer
Dossier
Technique
rediger et mettre
en forme le
projet de
demande
remplir le
dossier decirculation
créer n° cas
Acteur 2 Acteur 1Acteur 3Acteur 4Acteur 5Acteur 6
18
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
UMLDiagramme de séquence
Acteur 2 Acteur 1Acteur 3Acteur 4Acteur 5Acteur 6
Dossier
Technique
constitué
avis de brevetabilité
n° dossier
dossier de circulation
dossier de circulation
Dossier
Technique
Projet de demande
créé et n° dossier
demandén° dossier créé
demande n°
dossier de circulation
complétée,
TQ projet non correct
loop
projet non correctend loop
projet correctdossier de circulation
projet de demande
classé dans
dossier principaldossier de
circulation lu
dossier de circulationdossier de
circulation
complété
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
SADT : Structured Analysis and Design Technique
• Méthode structurée
• Cycle cascade
• Approche descendante
• Modélisation : données, activités
• Particularités : – Actigrammes fortement utilisés
19
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
SADTActigrammes
créer un n°
unique
n° dossier
remplir
dossier de
circulation
vérifier
copier,
remplir dossier
principal
lire
dossier de
circulation
acteur 6
acteur 5
acteur 6
acteur 4
acteur 2
dossier de
circulationdossier de
circulation
dossier de
circulation
dossier de
circulation
avis de
brevetabilité
constituer le
Dossier
Technique
dossier
Technique
rédiger Projet
de demande,
demander n°
acteur 5
acteur 4
demande n°
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
SADTDatagrammes
avis de brevetabilité,
recherche
donner un avis
chercher
Dossier
Technique
constituer le
Dossier
Technique
(acteur 5)
Projet de
demande
rédiger projet
de demande
(acteur 4)
dossier de
circulation
remplir le
dossier
de circulation
(acteur 4)
dossier
vérifié
lire
(acteur 5)dossier lu
vérifer
(acteur 2)
compléter
le dossier
(acteur 3,
acteur 4)
dossier
complété
revérifier
(acteur 2)
Dossier
revérifié
dossier
principal
créer
dossier
principal
(acteur 6)
dossier
principal
vérifié
vérifier
(acteur 1)
20
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OSSAD : Office Support System Analysis and Design
• Méthode pour modélisation des organisations
• Cycle V
• Approche descendante
• Modélisation : activités, traitement, données
• Particularités : – 8 formalismes proposés !
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OSSADDiagramme A1
Relations entre les fonctions de l’organisme
constituer le
dossier
technique
rediger et mettre
en forme le
projet de
demande
créer et remplir
le dossier de
circulation
DossierTechnique
Avis debrevetabilité
Projet dedemande
Dossier de
circulation
copier et placerle projet dans
le dossier
principal
parapher
compléter
Dossier principal
21
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OSSADDiagramme A2
Matrice Activité/Rôle
Constitution du dossier
Rédaction du projet de demande
Création du dossier de circulation
Création du dossier principal
Modification du dossier de circulation
Acteur 6
Modification du texte du brevet
Modification et envoi du dossier
principal
Acteur 5
Acteur 4
Acteur 3
Acteur 2
Acteur 1
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OSSADExemple de Diagramme D1 : Relations entre rôles
acteur 5acteur 4acteur 2
acteur 1
Dossier TechniqueDossier de
Circulation
Dossier de
Circulation
acteur 3Dossier de
Circulation
Dossier de
Circulation
Dossier de
Circulation
Dossier de
Circulation
Dossier
Principal
acteur 6
n° dossier
demande n°
22
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OSSADExemple de diagramme D2 : Relations entre procédures
Rédaction duprojet de
demande
Création dudossier de
circulation
Création dudossier principal
Modification et
Classement dudossier pricipal
dossier deCirculation
Dossier
Technique
Projet de
demande
dossier deCirculation
Modification dudossier decirculation
dossier deCirculation
dossier principal
Rôle 5
dossier de
Circulation
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OSSADFiche représentant une tâche
Fiche Tâche
Nom de la tâche + (Id) :
(Decription) :
remplir Dossier de Circulation par acteur 4
(Ta402)
Liens (arborescence) :
/ asc. (Procédure)
\ desc. (Opérations)
Création du dossier de Circulation (Pr003)
Demander n° dossier (Op402),
Remplir (Op403)
Relations avec tâches :
par ressources entrantes
par ressources sortantes
Rédaction du Projet / Acteur 4,
Création du dossier principal / Acteur 6
Projet de demande (Doc001)
Farde de Circulation (Doc002)
23
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OSSADFiche représentant une donnée
Fiche Ressource
Nom de la ressource + (Id) :
(Decription) :
Projet de demande (doc001)
Liens (arborescence) :
/ asc. (Super Ress.)
\ desc. (Rubriques)
néant
référence invention, résumé, état de l'art,
description de l'invention
Relations avec opérations :
Origine :
Destination :
Rédiger le projet de demande (Op451)
projet de demande de dépôt de brevet
Mettre en forme le projet (Op452)
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
OSSADDiagramme d ’une procédure
Acteur 2 Acteur 1Acteur 3Acteur 4Acteur 5Acteur 6
- copier et placer
Projet dans le
dossier principal
AVIS
prise de
connaissance
dossier deCirculation
Dossier Technique
Constituer
DossierTechnique
rediger et mettre en forme
le projet de demande
remplir ledossier de
circulation
créer n°dossier
dmde n° dossier
n° dossier
Projet de demande
dossier de Circulationcorrect
oudossier de Circulation
non correct
24
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
CISAD : Cooperative Information System Analysis and design
• Étend OSSAD en permettant la prise en compte de la coopération
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
CISADExemple de modèle descriptif de rôle adapté (type D1)
Agent
service
prêt(2)
Client(1)
Chef de
service
demande
dossier Conditions
Offre
Agent
service
prêt(1)
Client(2)
Plan A Plan C
Plan B
25
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
CISADMatrice de Grudin pour la modélisation des communications
site 1 ... site imprévisible
rôle A rôle B ... rôle A rôle B ... rôle A rôle B ...
rôle A
rôle B
...
rôle A
rôle B
...
rôle A
rôle B
...
site 1
site ...
site
imprévisible
SynchroneAsynchrone et moment
imprévisible
Asynchrone et moment
prévisible
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
CISADExemple de modèles d’argumentation
A : Constitution de l'ordre du jour
Question
Demande
de sujet
proposition sujet 1
proposition sujet 2
proposition sujet 3
justification
justification
justification
options critères
régulateur Participants à la réunion (n)
C : Conversation / Débat
Question
Question
sur le sujet
proposition de
solution 1
arguments positifs
options critères
régulateur Participants à la réunion (n)
proposition de
solution 2
arguments négatifs
arguments positifs
arguments négatifs
26
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
CISADUn exemple de représentation de la conversation
A : constitution
de l'ordre du jour
Accord
Sujet proposé
ParticipantRégulateur
Acceptation
Demande de sujet
B : Convocation
des participants
Accord pour répondre
Réponse participation
ParticipantRégulateur
Prise en compte
Convocation
Réunion
Accord pour participation
Exécution
ParticipantRégulateur
Validation de la réunion
Organisation d'une réunion
Prise en compte
Démarrage sur un sujet
C : Conversation
/ Débat
Annonce de l'intérêt
Proposition de solution / résolution
ParticipantRégulateur
E : Evaluation de
la réunion
Accord pour évaluer
Avis sur la réunion
ParticipantRégulateur
Prise en compte de la réponse
Demande d'évaluation
D : Question /Réponse
Veut répondre
Réponse
Participant
(n-1)
Participant
(1)
Prise en compte de la réponse
Prépare une question
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
MKSM : Methodology for Knowledge System Management
• Méthode pour la gestion des connaissances
• Cycle V
• Approche descendante
• Modélisation : traitement, activités, données
• Particularités : – s’arrête à la modélisation du système réel, passe la main à OMT pour la spécification du système informatique.
27
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
MKSMModèle du domaine: représentation d ’un processus
Champ Actif
département de propriété
Industrielle
Système Source
acteur 5
Système Cible
acteur 4
Action Source
constitution d'un
dossier technique
Action Cible
rédaction d'un
projet de demande
conséquence
emission d'un projet
de demande
Flux
Dossier Technique
événement déclencheur
réception d'un bulletin d'avis
positif
Champ Actif
département de propriété
Industrielle
Système Source
acteur 5
Système Cible
acteur 3
Action Source
prendre connaissance des
modifications sur la demande de
brevet
Action Cible
compléter le dossier de circulation
conséquence
emission d'un
dossier de circulation
Flux
Dossier de circulation
événement déclencheur
réception d'un dossier de
circulation
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
MKSMModèle de concepts : Exemple d ’un réseau de concepts
dossier principal
projet de demande
référence àl'invention
résumé del'invention
état de l'art description
dossier technique
référence àl'invention
domaine del'invention
état de l'artcaractéristiquesde l'invention
texte texte texte texte texte texte texte texte
28
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
MKSMModèle de tâches
vérifier le dossier de circulation
(par acteur 2)
retourner le dossier
(à acteur 4)
transmettre le
dossier (à acteur 6)
des corrections sont
à apporterle dossier est correct
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Autre modèle : le réseau de Petri
• Outil mathématique pour la représentation de la dynamique de systèmes à événements discrets
• Il existe de nombreuses extensions (temporisés, colorés, objets, …)
29
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Exemple d’application
• Modéliser des processus de type workflow
• au sein d’organisations humaines
• dans le but de spécifier des outils informatiques d’aide à la gestion de documents
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Modéliser l’organisation humaine
• Nécessité de représenter :
– les documents, les flux de documents, leurs traitements
– les acteurs ayant différents niveaux de responsabilité
– la dynamique des échanges (interruptions, parallélisme)
– …
30
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Recherche d'une méthode
MERISE : orientée BdD
SADT : méthode structurée
1 3
2 4
vue globa le du s ystèm e
1
2
3
OSSAD : organisation CISAD : coopération
MKSM : gestion des connaissances
OMT : orientée objetUML
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Cadre de comparaison
• 5 dimensions de comparaison
– dimension méthodologie : cycle de développement, implication de l ’utilisateur, ...
– dimension environnement d’application : types d'organisation et d'environnement, ...
– dimension représentation : formalismes, principe de construction, ...
– dimension technologie : programmation, ...
– dimension coopération : communication, coordination, relations
31
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Confrontation des méthodes
=> Intégration de méthodes [Paide 99], ...
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Proposition d'une méthode
• MAMOSACO : Méthode Adaptable de MOdélisation de Systèmes Administratifs COmplexes
• méthodologie : approche évolutive, intégrant les acteurs dans les étapes d’analyse, de modélisation et de spécification
• environnement d ’application : organisation basée sur les flux de documents
• représentation : modèles accessibles, de données, de flux de données, de traitements, et dynamique
• coopération : utilisation du modèle dynamique et d’un simulateur
• technologie : orientation multi-agents
32
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Les étapes de MAMOSACO
Acteurs
SimulationAnalyse
Modélisation
Données Dynamique
Activité Traitements
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Modélisation des données
- Objectif de l'invention
- Description de l'invention
- Revendications
Texte de la demandeTDMD
- n° de version
- date
Texte non définitiftnd
Version finale du textevft
Dossier de
candidatureDDC
Curiculum vitaeCV
Annexeanx
33
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Modélisation des activités
chef de
département
constituer le
dossier
technique
rédiger un
projet de
demande
(Avis) (DT)
créer et remplir
un dossier de
cisculation(DC)
(PjtDmd)
copier DC et le
classer dans le
dossier principal
prendre
note
(DC)
compléter le
dossier
(DC)
chef-adjoint
responsable
secteur
conseil en
brevet
inventeur
bureau
administratif
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Modélisation des traitements
chef-adjointresponsable
secteur
conseil en
brevetinventeur
bureau
administratif
recevoir Avis
si
constituer ledossier
technique
(Avis)
(Avis) positif
créer un n° de
dossier
créer et remplir le
dossier decirculation
(dmd n°)
(n° dossier)
(DC) vérifier le dossier
si(DC) ok
copier le dossierde circulation,
le classer dans ledossier principal
rédiger un projet de demande,demander un n° de dossier
(DT)
34
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Avis
Avis positif
Chef AdjointResponsablesecteur
Conseil en
brevet
InventeurBureau
Administratif
Constituer DT
n° dossier
n° dossier créé
DT
DT prêt
créer PjtDmd
dmd
infos
envoi infos
PjtDmd créé
créer, mettre en
fome DC
dmd
n° dossier
créer n°dossier
DC
DC incorrect
Modélisation de la dynamique
Règles globales
Règles locales
Règles personnelles
RdP Paramétrés
[Agimont 96]
5. Atelier de Génie Logiciel supportant la 5. Atelier de Génie Logiciel supportant la
méthode MAMOSACOméthode MAMOSACO
Modèle d’organisation multi-agents pour l’aide au travail coopératif dans les processus d ’entreprise : application aux systèmes administratifs complexes
35
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Atelier de Modélisation MAMOSACO
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Démarche d’utilisation
1 2 3
4
5
6
Page de présentation Fiche descriptive Modèle des données
Modèle dynamique
Modèle des traitements
Modèle de flux de données
36
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Matrice Activité-Rôle
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Modèle des données
37
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
SimOH : Simulateur d’organisation humaine
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Application à un cas concret
• L’application à un cas réel d’un méthode nécessite quelquefois quelques ajustements en fonction des spécificités du domaine
• Exemple :
38
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Application de MAMOSACO
Acteurs
SimulationAnalyse
Modélisation
Données
Dynamique
Activité Traitements
[[ErgodinErgodin 95]95][[CarrereCarrere 95]95]
SimplificationSimplificationdes procéduresdes procédures
Démarche participative Démarche participative très appréciéetrès appréciée
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Simplification des procédures
prof il
d 'i nte rroga tion
InterrogerBibliothèque
Chef de Service ID
Secrétariat PI/ID
Chargé d'Etude à
finalité ID
Cellule
Dactylo
Sélectionner
demandes à
priori
menaçantes
Imprimer les
demandes
sélectionnées
li re, parapher,nommer CE
dater fc et ppdmd,
classer ppdmd
sélectionner les dmd les
plus menaçantes,
rediger mi nute du fDBTAT,dater, parapher
enregi st rer
passage
encoder demandes,li re et modifi er min. ,
dater et parapher fc
enregistrer
passage
taper le formul aire
de DBTAT,
dater, parapher
vérif ier, dater,parapher
modifier leformulaire de
DBTAT ,
dater, parapher
enregist rer
passage
vérif ier,dater,
parapher
enregi strer
passage
demander copies
de la dmd de
brevet , dater,
parapher
copier,
dater,
parapher
copi er fbtat, lier auxcopies de dmd de
brevet, distribuer
selon la li ste dans fc,
détruire fc
adjoint chef
dept PI/ID
chef relations
PI/Recherche
Conseil en Brevet
Chargé d'Etude à
finalité PI
Bureau
Administratif
Cellule courrier
Bibliothèque
Chef de Service ID
Secrétariat PI /ID
Chargé d'Etude à f inalité ID
Cellule Dactylo
adjoi nt chef
dept PI /ID
chef service
relat ions PI/Recherche
Conseil en Brevet
Chargé d'Etude à fi nal ité PI
Bureau Administrati f
Cell ule courri er
Diffuser l es
demandesà DCR-PI
surveiller et
suivre le
dossier
surveiller et
suivre le
dossier
Encoder
enregistrer
passage
répons e
prendre
connaissance,parapherréponse
enregist rer
passage
réponse
copier 3
fois le
formulaire
répons e
dater et
parapher,indiquer CE et
CB sur copies
prendre
connaissance
cop ie
répons e
réponse +
2 copies
réponse
compléter
encodage,
t ransmett recopies
2 copies
réponse
prendre
connaissance
prendre
connaissance
c op ie
réponse
classer
fdtat+pp
classeroriginal,
ok
enregistrerréponse
(ppdmd)
(ppdmd)
selectionnées
(dmdbvt)
(fc)
(dmdbvt)
(fc)
(dmdbvt)
(fc)
(dmdbvt)
reselect ionnées
(dmdbvt) non
selecti onnées
(fc) +
(mi nute)
(dmdbvt)
reselect ionnées
(dmdbvt) non
select ionnées
(fc) +(minute)
(fc) +
(mi nute)
(fc) +
(m inute)
(fdbtat )
(fdbtat )
(fdbtat )
(fdbtat )
(fdbtat )(fdbtat )
(fdbtat)
(fdbtat )
(fdbtat )
copies
(dmdbvt)
(fdbtat)
(fdbtat) +(dmdbvt)
(fdbtat) +(dmdbvt)
(fdbtat ) +
(ppdmd)
AvantAvant
encoder demandes,
lire et approuver
fdbtat,
dater et parapher
1 profil
d'interrogation
par CHET
Interroger
(5 paquetspour 5 CHET)
Bibliothèque
Chef de Service ID
Secrétariat PI/ID
Chargé d'Etude à
finalité ID (CHET ID)
Cellule
Dactylo
Sélectionner
demandes à
priori
menaçantes
Imprimer les
demandes
sélectionnées
sélectionner les dmd les
plus menaçantes,
rediger minute du fDBTAT,
dater, parapher
Vérifier fdbtat
adjoint chef
dept PI/ID
chef relationsPI/Recherche
Conseil en Brevet
Chargé d'Etude àfinalité PI (CHET PI)
BureauAdministratif
Cellule courrier
dater et
parapher,indiquer CE et
CB sur copies
prendre
connaissance
réponse + 2 copies réponse
copieréponse
prendre
connaissance
prendreconnaissance
encoder par code PI,
CGP, n° surveillance,
date, mots-clés
"surveiller"
taper le formulaire
de DBTAT,
dater, parapher
classerfdtat+pp
classer
original,
original
prendre
connaissance
copieréponse
(1 paquetpour SPERT)
copier la dmd de brevet, copier fdbtat,
lier aux copies de dmd de brevet,
distribuer selon la liste dans fdbtat
Diffuser lesdemandes
à DCR-PI
"surveiller" et
suivre le dossier
"surveiller" et
suivre le dossier
"classer"
Trier et
copier 3
fois
copie réponse
réponsepour SPE
SPE
Bibliothèque
Chef de Service ID
Secrétariat PI/ID
Chargé d'Etude à
finalité ID
Cellule
Dactylo
adjoint chef
dept PI/ID
chef relationsPI/Recherche
Conseil en Brevet
Chargé d'Etude àfinalité PI
BureauAdministratif
Cellule courrier
SPE
(ppdmd)
(ppdmd)
(ppdmd)
sélectionnées
(dmdbvt)
(minute)
+ (dmdbvt)
(dmdbvt)(fdbtat) +
(fdbtat) +(dmdbvt)
(dmdbvt)
(fdbtat) +
(dmdbvt)
(fdbtat) +
(dmdbvt)(fdbtat) +
(fdbtat) +
(fdbtat) +(ppdmd)
(dmdbvt)
(fdbtat) +
(fdbtat) sous
surveillance
AprèsAprès
39
Emmanuel ADAM – Université de Valenciennes et du Hainaut Cambrésis – Introduction aux méthodes du Génie Logiciel
Conclusion
• Il existe de nombreuses méthodes
• Les méthodes doivent être choisies en fonction du besoin, du domaine
• et surtout suite à une « bonne » analyse devant contenir TOUTES les informations utiles.
• L’analyse est la base de tout projet,
• Ne pas hésiter à coupler les méthodes si cela est nécessaire et de façon rigoureuse.