t1 - devlog

27
T1.GT2 Quel(S) formalisme(S)? Pour quoi faire? JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique Animation: Laurent Pérochon (UMR METAFORT) (laurent.perochon [at] vetagro-sup.fr)

Upload: others

Post on 20-Jun-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: T1 - DevLOG

T1.GT2

Quel(S) formalisme(S)?

Pour quoi faire?

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Animation: Laurent Pérochon (UMR METAFORT) (laurent.perochon [at] vetagro-sup.fr)

Page 2: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Introduction

Contextes de l’ingénierie des besoins logiciels

Modéliser les besoins

Page 3: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

•Ingénierie des besoins logiciels (T1)

Contexte du groupe de travail

•Une dizaine de participants

•Domaines d’applications, connaissances et objectifs des participants inconnus (par l’animateur)

•Un animateur, informaticien modélisateur dans le domaine de l’agronomie, intervenant dans la modélisation conceptuelle par UML, mais il se soigne (élargissement aux autres formes de modèle)!

Page 4: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

•Quelle place accorder à la modélisation des besoins, quelS formalismeS utiliser?

problématique du groupe de travail

Nous sommes dans un zone d’échanges De ces échanges émergeront … on verra bien ;-)

Page 5: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Contextes de l’ingénierie des besoins logiciels

Page 6: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Etat d’avancement du projet

Les acteurs/organismes

taille du projet

Contextes de l’ingénierie des besoins logiciels

Page 7: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

•nouveau (on recense les besoins pour la première fois,) •changement de version •reprise d’un code dit legacy (historique … ou stagiaire parti)

Contextes de l’ingénierie des besoins logiciels

Etat d’avancement du projet

Page 8: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Contextes de l’ingénierie des besoins logiciels

Les acteurs/organismes

•Informaticien seul sur le projet, voir dans son laboratoire/unité, •Groupe d’informaticiens, •Les commanditaires peuvent être ou non les futurs utilisateur, •Les commanditaires et utilisateurs peuvent avoir des connaissances en projet informatique plus ou moins avancés. •Ils peuvent également être d’un autre domaine qu’informatique : agriculture, mathématiques, nucléaire … •L’organisation pour laquelle l’informaticien travaille peut imposer un méthode, un formalisme, des documents …

Page 9: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Contextes de l’ingénierie des besoins logiciels

La taille du projet

•Projet de plusieurs années/homme: plusieurs informaticiens, collaboration, travaux en parallèle, interconnexion à maîtriser. •Projet sur 2 jours/homme

Page 10: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Modéliser les besoins

Page 11: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Unified Modeling Language (UML) est une norme couramment utilisée dans les développements orientés objets, mais est-il toujours pertinent ? Faut-il l’utiliser seul, pas du tout, ou en complément avec d’autres formalismes (DEVS, PETRI …)

Modéliser les besoins

Afin d’aider l’analyse, on peut s’appuyer sur la modélisation de tout ou partie du projet. Celle-ci se fait souvent à l’aide de diagrammes, plus ou moins formalisés.

Page 12: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Object Management Group (OMG)

Regroupe les principaux acteurs

en informatique utilisant l’approche objet

Unified Modeling Langage

(UML)

UML 1 (1997)

UML 2 (2005)

XML

MOF

CORBA

UML

Page 13: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Classe

- âge

- dors()

Personne

Cas d ’utilisation Paquetage

Biologique

Gestant

État / Activités

Émission

CO2

Acteur

Eleveur

UML (entités)

Page 14: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Dépendance

Association

Généralisation/

Spécialisation

Agrégation

Alimente >

Associations

(entre entités)

UML

Page 15: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

13

Diagrammes

Classes

Cas d’utilisation Séquences

Paquetages

Etats-Transitions

Activités

Représentations graphiques

du logiciel

UML Vue d’ensemble

Page 16: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Chaque type d’utilisateur va avoir des besoins spécifiques / des utilisations du logiciel différentes

Découpage par fonctions, responsabilités, domaines d’expertise, par équipes …

Exemple : Logiciel Achat : secrétaire, responsable contrat achat, service informatique Simulateur PARIS : informaticien, expert comportement social, expert ingestion, expert végétation, stagiaires

Un type d’utilisateur UML Un acteur

Type de l’acteur

UML Fonctionnalités

Page 17: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

définir les fonctionnalités du logiciel pour chacun des acteurs

Exemple : Logiciel Achat : consulter un prix, passer commande, ajouter un nouveau compte utilisateur, inscrire un nouveau fournisseur Simulateur PARIS : caractériser les animaux et la végétation initiales, sélectionner les sorties désirées, lancer une simulation

Une fonctionnalité UML Un cas d’utilisation

Nom du cas d’utilisation

UML Fonctionnalités

Page 18: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Le diagramme des cas d’utilisation

acteurs + cas d’utilisation

Cas d’utilisation 1

Cas d’utilisation 7

Cas d’utilisation 6

Cas d’utilisation 5

Cas d’utilisation 4

Cas d’utilisation 3

Cas d’utilisation 2

Mon logiciel

Acteur 4

Acteur 2

Acteur 3

Acteur 1

UML Fonctionnalités

Page 19: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Exemple : logiciel achat

Consulter Un prix

Passer une commande

Inscrire un nouveau

fournisseur

Ajouter un nouveau

compte utilisateur

Logiciel achat

Responsable contrat achat

Service informatique

Secrétaire

UML Fonctionnalités

Page 20: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

Passer une commande

Exemple : logiciel achat

Secrétaire Logiciel

1- saisir code article Contrôle code correct et

renvoi libellé

2- saisie quantité enregistre

3- saisie code équipe Contrôle code correct

4- valide commande

Détailler chaque cas d’utilisation

UML Fonctionnalités

Page 21: T1 - DevLOG

Laurent Pérochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

diagramme de séquence système

UML

Secrétaire

: système

Saisie code article

libellé

Saisie quantité

contrôle

enregistre

Page 22: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

UML

Puis diagrammes de classes, séquences (détaillés), états-transitions, activités

Page 23: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

•Transférer les informations du domaine vers celui de l’ordinateur •Ajout d’objets techniques •Orienté objets

Pierre-Alexandre Garneau, flickr)

Shogunangel, flickr

Demandeur/utilisateur

Ordinateur

OUI … MAIS

Page 24: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

http://www.tonybuzan.com/about/mind-mapping/

Mind Map

Page 25: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

http://cmap.ihmc.us/Publications/

Concept Map

Un diagramme=Une question

Page 26: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

DEVS

Discrete Event System Specification

Modèle atomique/couplé, événement entrant/sortant, ports

Page 27: T1 - DevLOG

JDEV2013, 4-5-6 septembre 2013, Ecole polytechnique

•Intérêts/limites de la modélisation, dans l’ingénierie des besoins •Retours d’expériences/opinions sur l’usage des formalismes •Bilan / sujet intéressant … on creuse?

A VOUS

•Quelle place accorder à la modélisation des besoins, quelS formalismeS utiliser?

Problématique proposée:

Contextes proposés: Etat d’avancement du projet/ les acteurs ou organismes, taille du projet

RAPPEL