Home

Télécharger

image

Contents

1. y a pas de d veloppement s rieux sans mod lisation Il est au moins quatre raisons qui favorisent la diffusion d un mot ou d une expression 1 Le mot est tr s g n rique et il est employ la place d autres termes plus pr cis Le verbe faire et le substantif chose sont deux exemples extr mes emprunt s au fran ais courant 2 Le mot est dot d une grande polys mie des significations diff rentes mais assez pr cises qui lui permet d tre employ dans des contextes tr s diff rents L entr e Mod le pour s en tenir notre propos dans le grand Robert a neuf acceptions diff rentes dont trois seulement dans des domaines sp cifiques 3 Le mot r pond un besoin ponctuel tr s fort En GL par exemple l expression contr le de la configuration r pond ou a r pondu un besoin fort et r pandu 4 Le mot est tr s publicis par ceux qui ont le pouvoir d influencer les utilisateurs On arrive des cas extr mes o le nom d une marque devient un nom commun comme le tr s connu Frigidaire Au del des qualit s qui favorisaient son adoption dans les nouvelles approches du d veloppement en GL nous ne sachions pas que le succ s de mod le est attribuable aussi aux quatre causes pr c dentes Nous ne trouverons pas d opposition si nous r glons les deux derni res cavali rement en disant que le succ s commercial de UML y est pour quelque chose et que le besoin
2. classe Les erreurs ne sont pas dues un manque de connaissance de UML car la majorit a crit que Marc est une sous classe d Homme et que donc l association entre Homme et Marc est correcte Il serait sans doute abusif de tirer des consid rations th oriques de cette simple exp rience mais le r sultat est tellement d cevant et inattendu que nous nous permettons quelques r flexions Avant tout il est clair que les tudiants savent conceptualiser m me si dans ce cas tr s simple ils semblent ne pas avoir vu la diff rence entre un individu et son type entre classe et occurrence Dans la vie de tous les jours il est bien rare qu ils confondent Sylvie en os et surtout en chair avec le concept de femme Il nous semble plut t que le fait que dans la langue fran aise on emploie est un pour repr senter la sp cialisation entre concepts un homme est un mammif re comme pour repr senter le lien entre l individu et son type Marc est un homme est un pi ge psychologique Si le triangle en UML signifie est un alors le triangle doit pointer de Marc Homme S il s agit l d une bonne interpr tation alors le fait de mod liser rend la description moins ambigu et donc elle est utile Un d veloppeur leste pourrait bien s r r torquer que pour cela on n a pas besoin d un diagramme UML une fois qu il aurait cr la classe Homme l tudiant l aurait instanci e avec Marc comme val
3. de d crire les syst mes et les domaines au moyen de langues sp ciales tait pr sent d s les d buts du GL SWEBOK en tant que guide pour le corpus des connaissance en g nie logiciel est un bon terrain pour v rifier les succ s des mots dans la discipline Dans les 202 pages de la version 2004 mod le et ses d riv s apparaissent 295 fois tandis que module et ses d riv s n apparaissent que 19 fois Mais ce sont la g n ricit et la polys mie qui dans un contexte d analyse des lieux communs nous semblent les causes les plus int ressantes Souvent les termes du langage commun quand ils sont transport s dans un domaine technique perdent une partie de leur polys mie et de leur g n ricit et assument une signification tr s sp cifique Cette restriction du champ s mantique est ce qui permet de plus ou moins les d sambigu ser ce qui les rend souvent incompr hensibles aux non sp cialistes Dans le cas de mod le le passage du langage commun au langage technique du GL n a pas eu cet effet Il y a eu pratiquement l effet inverse aux significations du langage commun abstraction l ment de r f rence prototype repr sentant type d une cat gorie repr sentation sch matis es etc on a ajout celle de la logique math matiques et de la linguistique structure dans laquelle tout nonc d une th orie est vrai construction abstraite axiomatis e Cet largissement de la s
4. des emplois courants en GL mod liser est devenu un terme creux et donc Nous ne parlerons jamais d activit de mod lisation dans le d veloppement ni de mod lisation du probl me ni d une partie du monde ni de la machine C est simplement trop d routant 6 Trop d routant parce que l on confond deux genres de mod les les mod les analytiques et les mod les analogiques Dans la figure suivante nous avons abord le premier niveau de classification des mod les selon UML et selon M Jackson Dans le cas de UML le discriminateur est la machine le syst me dans la terminologie UML pour M Jackson le discriminateur c est la mani re de repr senter analytique ou analogique Un mod le analytique est une description du domaine de la machine ou de leur interaction Comme exemple de mod le analytique emprunt la physique on peut consid rer la description probabiliste de la position d un lectron avec l quation de Schr dinger Un mod le analogique n est pas une description mais une autre r alit avec certaines propri t s semblables 6 Toujours en nous inspirant de la physique on peut penser au mod le atomique de Bohr La diff rence entre les deux mod les est si grande que que la confusion r gne Un mod le analytique est un mod le plus pr cis mais moins expressif qu un mod le analogique La plus grande expressivit du mod le analogique d rive du fait que la compr hensi
5. De la n cessit des mod les We should reconcile ourselves with the fact that we are confronted not with one concept but with several different concepts which are denoted by one word we should try to make these concepts as clear as possible to avoid further confusions we should agree to use different terms for different concepts and then we may proceed to a quiet and systematic study of all the concepts involved Alfred Tarski Cit en http www arts mcpill ca philo speaks 415 Tarski html x1 190004 1 Introduction Le jour o l on planta le mot mod le dans le champ passablement inculte du g nie logiciel GL il e t fallu avoir une imagination fort d brid e pour deviner que quelques saisons plus tard ce mot e t fleuri jusque dans les parcelles les plus rocailleuses du domaine Qui aurait pu soup onner qu en l espace de quelques ann es 1l e t supplant le mot module dans la majorit des articles livres et conf rences proposant des rem des aux maux de notre discipline Tr s peu de gens Certes l importance accrue des phases initiales du d veloppement demande l abandon de module terme trop li la programmation structur e en faveur de termes plus g n raux Mais ne sommes nous pas tomb s dans l exc s oppos Ce qui est certain c est que mod le a toutes les qualit s requise pour s imposer comme mot magique et donner ainsi naissance au lieu commun qui veut qu il n
6. ant leurs yeux Cette position qui semble aller l encontre de toute bonne pratique de GL va chercher des assises th oriques 5 qu il est difficile de r futer par des arguments trop simples Nous pourrions r sumer et simplifier le raisonnement qui se trouve la base de ce type d anti mod lisation inspir par 5 comme suit La documentation sans les gens qui ont particip au d veloppement du produit n est pratiquement pas utile parce qu il est impossible de d crire les particularit s qui permettent de faire voluer un produit Les ing nieurs du logiciel ont dans la t te des descriptions des perceptions m me des impressions qui ne pourront jamais tre mises sur papier mais qui sont fondamentales pour pouvoir intervenir efficacement sur le produit Lors de l change entre les membres de l quipe les mod les se forment dans les t tes et ce sont ces mod les qui permettent d entretenir et de faire voluer le produit et non les mod les sur papier Quand il y a des interventions faire sur un produit dont l quipe de d veloppement s est dissoute m me s il existe des mod les sur papier il est pr f rable de refaire compl tement le programme 3 2 Descriptions et mod les La critique selon nous la plus valable et la plus int ressante pour am liorer les pratiques dans le GL est celle de Michael Jackson M Jackson ne conteste pas l utilit des mod les en soi mais il pense qu cause
7. d le en deux Nous appellerons Mod leSR SR pour Simplification de la R alit le mod le qui satisfait la premi re d finition du Manuel de UML et Mod leAS AS pour Abstraction du Syst me celui qui satisfait la seconde 2 1 Mod leSR Reprenons la d finition et analysons la en d tails 1 ily a un syst me r aliser c est le but 2 il faut essayer de comprendre le mieux possible le syst me que nous voulons cr er c est la condition pour r aliser le syst me Ce donc qui aimerait sans doute passer inaper u est trop charg d histoire et lourd de cons quences pour que nous n ajoutions pas au moins cette note Nous avons assez d int r t pour la langue fran aise pour ne pas appeler UML un langage et sans doute pas assez de courage pour laisser tomber langue aussi et parler de notation UML 3 pour mieux comprendre le syst me il faut simplifier la r alit c est le moyen Il est pratiquement impossible de ne pas tre d accord avec l esprit de la d finition mais nous croyons qu il faut la changer l g rement pour mieux saisir l importance de Mod leSR Nous dirons donc que 1 Le but est de construire une machine Le passage de syst me machine permet d viter certaines ambigu t s li es au terme syst me En tant qu ing nieurs nous construisons des machines qui s int grent dans un syst me pouvant contenir autres choses que des machines Un pro
8. e serait un mod le de documentation dont le but principal serait de faciliter la compr hension Cette premi re division est utile surtout pour la formation des nouveaux ing nieurs du logiciel qui n ont surtout pas besoin d une terminologie confuse au d but de leur carri re Voir ce propos lencadr Marc est un homme Est ce que les tenants du d veloppement leste pourraient refuser les deux types de mod les Certainement pas M me les plus extr mistes ne pourraient pas refuser le mod le d crit dans une langue de programmation Voici quelques questions pour pr parer le terrain pour aller au del Et si en GL on ne pouvait pas tablir de r gles g n rales dans les m thodologies de d veloppement Et si le d veloppement leste avait sa place et le d veloppement lourd du GL traditionnel la sienne Et si l influence du domaine est telle que la 7 Que les petits des humains acqui rent le raisonnement inductif et d ductif longtemps apr s le raisonnement transductif indique que ce dernier est plus naturel m thodologie au moins dans la premi re partie du cycle de vie devrait tre dict e par le domaine o la machine doit tre install e plut t que par les exigences propres la discipline du GL Et si la description du probl me du domaine et des exigences devait tre faite hors du GL Et si au risque de tomber en contradiction avec nous m me il ne fallait pas parler d ing nierie des exi
9. eur de l attribut nom et donc il aurait fait son travail d analyste programmeur correctement Dans un cas aussi simple sans doute Mais un d veloppeur lourd pourrait son tour dire que le fait qu il n ait pas mod lis hors langue de programmation ne lui clarifiera jamais les id es sur la diff rence entre type et individu ce qui est fondamental pour un programmeur qui ne veut pas tre un simple codeur Il y a sans doute aussi le fait que quand les tudiants mod lisent avec des graphiques ils oublient leur sens commun et leurs connaissances de base tellement ils sont obnubil s par les objets graphiques ce propos il faut ajouter que dans ce m me test nous avons demand d expliquer la signification de mod le et dans bien des cas la r ponse a t une repr sentation graphique
10. gences ni d ing nierie des mod les ni d ing nierie de la facilit d utilisation 5 R f rences 1 Booch G Rumbaugh J Jacobson I The Unified Modeling Language User Guide Addison Wesley 199 2 Stoy J E Denotational Semantics MIT Press 1985 3 Maffezzini I Kerherv B Mod les l gu s RIFV 05 4 Cockburn A Agile Software Development Addison Wesley 2002 5 Naur P Programming as Theory Building pp 37 48 Computing A human activity ACM Press 1992 6 Jackson M Problem Frames Addison Wesley 2001 Encadr 1 Abstraction s mantiquement close S mantiquement close dans la deuxi me d finition de mod le de UML nous semble cr er plus de probl mes qu elle n en r sout Le fait que l on retrouve cette d finition dans des dizaines de sites web mais que nous n avons trouv nulle part une explication de s mantiquement close semble indiquer que 1 la signification est tellement pr cise et connue qu il ne vaut pas la peine d y r fl chir 2 la signification n est pas claire mais dans le GL on ne ressent pas le besoin de l expliquer tant donn que ind pendamment de la signification du mot mod le les mod les UML fonctionnent Signification pr cise Pour que la signification soit pr cise et connue il faut au moins qu il existe une d finition standard que la majorit des ing nieurs du logiciel accepte La seule d fin
11. gramme est bien s r lui aussi une machine 2 La condition est avant tout de comprendre la r alit Pour r aliser le syst me il faut comprendre la r alit dans laquelle la machine s installe et les modifications qu elle est cens e y apporter La modification que nous proposons changer syst me par r alit a un certain nombre d impacts sur l approche au d veloppement 3 Le moyen est de simplifier la r alit Ici nous ne faisons aucune modification la formulation originale Mais il n est sans doute pas inutile d ajouter que la r alit comprend aussi les besoins et les exigences qui poussent la modifier et qu il est tr s important de ne pas confondre les besoins de changements avec les contraintes que la r alit le domaine impose sur ces changements m mes Au terme de cette br ve analyse nous proposons la d finition suivante Une simplification de la r alit cr e pour mieux la comprendre et pouvoir ainsi y ins rer des machines Selon cette d finition Mod lesSR est donc un instrument permettant aux humains de voir et de communiquer ce qui est important dans la partie de la r alit que l on veut automatiser Mais ce qui est important n tant pas n cessairement donn priori Mod lesSR doit aussi aider comprendre ce qui est important et cela ne peut tre r alis qu en explicitant certains concepts qui sont normalement implicites L op rati
12. igences parce que tout est num ris le mod leSR qui d crivait que sais je d tection de la porteuse doit tre modifi pour refl ter la nouvelle r alit Doit tre c est dire l humain doit intervenir sur le mod le s il ne veut pas que le mod le ne soit pas inutile ou m me nuisible NOTE Simplification de la r alit ne veut pas dire comme on l entend souvent ignorer les d tails mais pouvoir tablir quels l ments consid r s comme des d tails ne le sont pas et quels l ments jug s fondamentaux sont en effet des d tails Cela parce que les d tails ne sont pas donn s priori mais sont cr s dans le processus m me de mod lisation SR en fonctions des buts vis s Une approche erron e en GL qui a souvent des cons quences catastrophiques accepte les d tails qui ne sont des d tails que parce que la r alit n a pas t analys e assez attentivement et vice versa FIN DE LA NOTE 2 2 Mod leAS La d finition du Manuel de UML de Mod leAS est d une part moins probl matique que celle de Mod leSR car elle ne contient ni buts ni moyens et au lieu de faire r f rence r alit et syst me elle ne fait r f rence qu syst me D autre part elle est plus probl matique car l expression s mantiquement close est loin d tre claire Pour restreindre le champ s mantique de Mod lesAS que le mot syst me contribue largir nous introduisons le ter
13. ignification rend tr s difficile l emploi du terme dans un domaine technique comme le GL o l exigence de ma trise de d veloppement est loin d tre satisfaite Que faire Jeter mod le avec tous ses signifi s Sans doute pas Son norme succ s ne justifie pas que par une prise de position puriste ou dogmatique on le rejette compl tement Le proverbe on ne jette pas le b b avec l eau du bain nous semble s appliquer parfaitement notre mod le qui une fois bien lav m rite sans doute d tre conserv 2 Honneur La mani re la plus efficace selon certains la seule et je fais partie de ceux l d appr hender la r alit pour la contr ler et ventuellement la modifier c est de b tir des mod les Les mod les en faisant abstraction des d tails du r el qui sont nuisibles l intellection favorisent la compr hension des concepts et de leurs associations et donc la compr hension de la r alit Mais qu est ce qu un mod le tant donn le succ s de la langue de mod lisation UML nous allons prendre la d finition donn e dans son Manuel d utilisation 1 Une simplification de la r alit cr e pour mieux comprendre le syst me cr er une abstraction s mantiquement close d un syst me M me si les deux d finitions sont s par es par un simple elles sont tellement diff rentes qu il vaut la peine de s parer le concept de mo
14. ition de s mantiquement clos que nous avons trouv e est celle de Tarski dans The semantic Conception of Truth and the Foundation of Semantics We have implicitly assumed that the language in which the antinomy is constructed contains in addition to its expressions also the names of these expressions as well as semantic terms such as the term true referring to sentences of this language we have also assumed that all sentences which determine the adequate usage of this term can be asserted in the language A language with these properties will be called semantically closed ttp www ditext com tarski tarski c html Toujours dans le m me article Tarski crit que The languages either the formalized languages or what is more frequently the case the portions of everyday language which are used in scientific discourse do not have to be semantically closed Cette deuxi me consid ration nous semble indiquer que les auteurs de UML ne pouvaient pas penser la d finition de Tarski car la cl ture s mantique semble tre un d faut plut t qu une qualit Mais il y quelque chose d autre qui nous fait penser que les auteurs de UML ne pensaient pas la d finition de Tarski Tarski parle d une langue et donc sa d finition s applique ventuellement UML et non l abstraction crite en UML On peut donc comprendre la phrase UML est s mantiquement clos mais il est difficile de comprendre
15. l abstraction du syst me est s mantiquement close En prenant la signification de s mantiquement clos de Tarski pour que la d finition de mod le tienne il faudrait la transformer ainsi Une langue s mantiquement close du syst me Mais cette d finition ne fait qu embrouiller les id es sur ce qu est un mod le ce qui apporte de l eau au moulin du d shonneur Signification non claire Parmi toutes les d finitions possibles nous proposons la suivante une abstraction s mantiquement close d un syst me est une description qui contient tous les l ments dont on a besoin pour cr er la machine qui s int grera au syst me pour satisfaire les exigences tablies NOTE Nous sommes loin d tre s rs de la valeur de notre incursion dans la logique par contre nous sommes conscients que ignorantia non excusat Encadr 2 Marc est un homme Voici un test que nous avons soumis des tudiants en g nie logiciel qui venaient de suivre et de r ussir un cours d analyse o ils avaient employ la notation UML La figure suivante est une traduction en UML de la phrase Marc est un homme qui aime les chiens Etes vous d accord Pourquoi Homme aime s Marc Chien Quatre 4 tudiants seulement sur trente trois 33 ont r pondu que le diagramme n tait pas correct parce que Marc est une instance d Homme et non une sous
16. me machine Nous avons ainsi Un Mod leAS est une repr sentation abstraite d une machine Avoir coup s mantiquement close selon nous n est pas important Voir dans l encadr abstraction s mantiquement close la justification de cette coupure La n cessit d avoir un mod le de la machine ne nous semble pas poser de probl me une difficult ventuelle r side dans le fait de d finir combien de mod lesAS il faut avoir pour faciliter sa construction Sans oublier que parmi ces mod les 1l y a le programme lui m me qui est pr vu pour mod liser le comportement de quelque chose 2 3 D shonneur Puisqu en GL tout est mod le tout le monde mod lise Voici une liste loin d tre exhaustive d expressions en GL contenant le terme mod le mod le logique d veloppement dirig par les mod les mod le objet mod le conceptuel mod le de donn es mod le physique mod le math matique mod le du syst me mod le d ing nierie mod le environnemental mod le abstrait m ta mod le ontologique mod le des processus m ta mod le linguistique mod le de qualit mod le s mantique mod le utilisateur mod le du programmeur mod le formel mod le dynamique mod le statique mod le du domaine mod le de d veloppement mod le du cycle de vie mod les visuels Nous nous sommes d j demand Est ce que le terme mod le garde une signification stable en changeant de sy
17. ntagme ou est ce que le terme qui l accompagne en bouleverse la signification 3 Et sur la r ponse nous n avons pas de doutes dans plusieurs cas la signification change et c est cause de tous ces changements que mod liser est devenu un mot fourre tout qui nous dupe tous ou presque 3 1 D veloppement leste agile development La critique de la mod lisation partir de la g n ricit et de la polys mie de mod le n est pas la seule possible Bien des gens consid rent que les mod les et une grande partie de la documentation ne sont pas utiles dans le d veloppement du logiciel titre d exemple consid rerons ce qu crit A Cockburn Caract riser le d veloppement logiciel comme construction de mod les conduit directement des mauvaises d cisions de projet Les produits du travail d une quipe doivent tre mesur s par rapport leur capacit communiquer avec le groupe cibl I n est pas important que les mod les soient incomplets repr sent s avec une syntaxe incorrecte et en fait non comme le monde r el s ils communiquent suffisamment avec les destinataires 4 Ce qui est surtout important pour les tenants du d veloppement leste comme A Cockburn et pour ceux de la programmation extr me c est la communication dans l quipe les changes informels entre les programmeurs en partant du code qu ils ont ou qu ils pourraient avoir dev
18. on telle qu on la consid re dans le langage courant est fond e sur l analogie ou la transduction Mod le Selon les d f S Mod le Selon M de UML Jackson Fr N Mod leAnalitique POS ERAITORLE Mod leSR Mod leAS Description X Transduction Semplification de Abstraction de la a Re ARS ee Ce de Schrodinger de Bohr Fig 1 cat gorisation des mod les selon UML et selon M Jackson Il nous semble que cette simple diff rence de classification de mod lisation a des implications th oriques et pratiques normes Vaut il la peine d insister aupr s des ing nieurs du logiciel tenants des mod les ou de la programmation extr me peu importe sur le fait que le choix du premier discriminateur dans une classification a une influence norme sur la mani re de voir un concept Certainement pas 4 Au del Le premi re conclusion que l on peut tirer de nos consid rations est contenue dans la phrase de A Tarski cit e en exergue We should agree to use different terms for different concepts Il faudrait introduire plusieurs signifiants la place de mod le et on pourrait commencer par deux signifiants comme le fait M Jackson Le mod le analytique pourrait tre le mod le qui est l origine d un d veloppement dirig par les mod les tandis que le mod le analogiqu
19. on d explicitation est r alis e dans un premier temps en d crivant en une langue naturelle et dans un deuxi me temps en une langue de mod lisation Le simple fait de traduire d une langue l autre oblige les intervenants claircir les concepts souvent en les multipliant Cette multiplication et donc cette complexification du Mod lesSR est la condition n cessaire mais non suffisante un claircissement et donc une simplification de la r alit Mod leSR est un artefact ins r dans la r alit du projet et 1l a une vie ind pendante de la r alit qu il d crit m me si en th orie il devrait toujours la refl ter Par exemple si dans la r alit o l on veut ins rer la machine il n y a plus de modem Dans un article du num ro 73 de cette revue par exemple on crit Dans le domaine de la mod lisation le terme syst me est utilis pour faire r f rence la r alit Ce qui est un constat d une r alit sic factuelle mais aussi signe d une grande confusion Nous ne sommes pas satisfaits du terme r alit non plus mais la justification du changement de ce terme pour un autre d borderait du th me de cet article 6 Ce qui ne veut pas dire que tout puisse tre explicit Surtout que veut dire tout dans une approche d automatisation de la r alit avec les lois qui structurent les domaines et les humains qui aimeraient plier le domaine leurs ex

Download Pdf Manuals

image

Related Search

Related Contents

MIPS R10000 Microprocessor User's Manual  Plattenspieler mit Stereo-Radio und Aufnahme auf USB/SD  FICHA TÉCNICA 1. NOMBRE DEL MEDICAMENTO Prismasol 2  Guide d`installation  Mode d`emploi pour être la/le meilleur(e) au pair(e)  

Copyright © All rights reserved.
Failed to retrieve file