prsentationlmo0v6湖北某大型剧场水电安装施工组织设

上传人:新** 文档编号:568591435 上传时间:2024-07-25 格式:PPT 页数:79 大小:2.55MB
返回 下载 相关 举报
prsentationlmo0v6湖北某大型剧场水电安装施工组织设_第1页
第1页 / 共79页
prsentationlmo0v6湖北某大型剧场水电安装施工组织设_第2页
第2页 / 共79页
prsentationlmo0v6湖北某大型剧场水电安装施工组织设_第3页
第3页 / 共79页
prsentationlmo0v6湖北某大型剧场水电安装施工组织设_第4页
第4页 / 共79页
prsentationlmo0v6湖北某大型剧场水电安装施工组织设_第5页
第5页 / 共79页
点击查看更多>>
资源描述

《prsentationlmo0v6湖北某大型剧场水电安装施工组织设》由会员分享,可在线阅读,更多相关《prsentationlmo0v6湖北某大型剧场水电安装施工组织设(79页珍藏版)》请在金锄头文库上搜索。

1、Testetdiagnostic:desobjetsauxmodlesYves Le Traonin God we trust, for the rest we test (A. Petrenko)1Unevisiondelarechercheengnielogiciel01Testingcanprovethepresenceofbugs,butnevertheirabsenceDijkstraBienvenuedansledomainedelincertitude!lMonde pas idal = gnie logicielCompromis entre une solution idal

2、e en pratique inapplicable et solution imparfaite mais praticableTest et gnie logiciel : difficile alchimiesolution idalepratique actuellebon dosage ?24/03/20062LetestdelogicielslCest important !lObjectifs du testexaminer ou excuter un programme dans le but dy trouver des fautesrelativement une spci

3、ficationformalisation de critres pour guider la slection des testscas de test / oracle24/03/20063ProblmatiqueLe test Vrification/preuvetestsconformit du produit par rapport sa spcification24/03/20064Problmatiquedutestanalyse desbesoinsspcificationImplmentationtestLe cot du test dans le dveloppement+

4、 maintenance = 100 % du cot global de dveloppement ! TestAn. bSpcif.Implm.24/03/20065ProblmatiquedutestPourquoi ?CotEffortConfiance24/03/20066Letestdynamique:processusDonne de testProgramme PExcutionOracleRsultatSpcification SVerdictCritre darrtvraiLocalisation / Mise au pointfauxnon vrifiProblmesGn

5、ration de donnes de testOracleDiagnostic24/03/20067Letest:cestunpeudsordrelAutant de techniques que de domaines dapplicationlNombreux problmes (gnration/oracle/environnement, tape du processus/critre)lPsychologiquement redoutable24/03/20068LetestdeslogicielsobjetsAu dpart une certaine mfiance des te

6、steurs24/03/20069SentimentmitigauniveauducodeC.m1()B.m1()A.m1()C.m4()B.m2()MethodcallsflowforprocessingC.m1()Am1()m2()m3()m4()Bwm1()m2()m3()Cm1()m4()TheYo-yoEffect(Binder,Offut)callssuper()callssuper()callsm4()callsm2()ImplementsImplements24/03/200610Etpourtant.lOO fonctionne aussi bien que le procd

7、ural classique lCulture testEnvironnement pour assister la ralisation des tests: JunitTest-first development24/03/200611JUnitlPermet de structurer les cas de testcas de test / suite de testlPermet de sauvegarder les cas de testimportant pour la non rgressionquand une classe volue on r-excute les cas

8、 de test24/03/200612Test-firstdevelopmentlXtreme programminglOn crit les tests dabord, on ralise ensuitelLes cas de test servent de support la documentationlTester avec une intention prciselRetours rapides sur la qualit du codeitrations courtes dans le cycle de dveloppementon excute le code tout de

9、suite (avant mme de lavoir crit)On ne code que quand un test a chourefactorings frquentslApproche anti-modle24/03/200613Test-firstdevelopmentcrireuncasdetestExcuterlescasdetestFaireunpetitchangementExcuterlescasdetestchecsuccschecdveloppementsarrtedveloppementcontinueExemple:ajoutdansunelistechainep

10、ublicvoidtestAdd()list.add(first);assertTrue()=1);publicvoidadd(Stringit)Nodenode=newNode();node.setItem(it);node.setNext(null);if(firstNode=null)node.setPrevious(null);this.setFirstNode(node);lastNode=node;this.setCurrentNode(node);publicvoidadd(Stringit)24/03/200614DesobjetsauxmodlesrefactoringTis

11、sagecompositioncoderefactoring24/03/200615DestapesdetestautestdestapesAnalyse Conception globaleConceptiondtailleExigencesImplmentation SystmeSystmeIntgrationIntgrationUnitaireUnitaireTest transfoTest transfomodlesmodles24/03/200616PlanlTest de composantslAssemblage de composantslTest systmelDiagnos

12、ticlTest et modles24/03/20061724/03/200618Composantsettest24/03/200619ComposantsdeconfiancelDu point de vue utilisateur.Components“off-the-shelf”?24/03/200620ComposantsdeconfianceDu point de vue utilisateur.Components“off-the-shelf”85%“replay”selftests100%55%100%24/03/200621ComposantdeconfianceSpcif

13、icationImplantationV&V:ensembledecasdetestConfiance fonde sur la cohrencecontratsexcutablesComposants autotestables24/03/200622AnalysedemutationR. DeMillo, R. Lipton and F. Sayward, Hints on Test Data Selection : Help R. DeMillo, R. Lipton and F. Sayward, Hints on Test Data Selection : Help For The

14、Practicing Programmer. IEEE Computer For The Practicing Programmer. IEEE Computer 1111(4): 34 - 41 April 1978.(4): 34 - 41 April 1978. lTechnique pour valuer lefficacit dun ensemble de cas de testInjection derreurs dans le programme sous testCalcul de la proportion derreurs dtectes par les cas de te

15、st24/03/200623AnalysedemutationPGnrationdemutantsMutant1Mutant2Mutant3Mutant4Mutant5Mutant6CTExcutionMutanttuDiagnosticMutantvivantSpcificationincomplteAutomatiqueManuelOptimiseurMutantquivalentSupprimdelensembledesmutantsAjoutdecontratsCasdetestinsuffisants24/03/200624Optimisationautomatiquedecasde

16、testlScore de mutation moyen facile atteindrelComment optimiser ces testsAnalogie avec lvolution24/03/200625ClasseAAmliorationdestestsTestTest1Test2Test3Test4Test5PopulationdeprdateursPopulationdeproies mutantA5 mutantA6 mutantA7 mutantA8 mutantA9 mutantA10 mutantA1 mutantA2 mutantA3 mutantA4 mutant

17、A14 mutantA11 mutantA18 mutantA12 mutantA13 mutantA17Test624/03/200626tudedunparserC#24/03/200633RsultatslApproche composant autotestablelAlgorithme original pour la gnration de cas de testlDveloppement doutils pour les expriences24/03/200634Assemblagedecomposants24/03/200635TestdintgrationlPlan de

18、testordonnancementminimiser le nombre de testing stubs24/03/200636Autrestravaux:conceptiontestablelTestabilit dun diagramme de classesidentification d anti-patternslTransformations de modles pour supprimer les ambiguts dune architectureApplication aux design patterns courantslrefactorings24/03/20063

19、7Testsystme24/03/200638Lesexigencesattention!terraininstablelPoint dentre dun projetlPremires approchesFonctionnellesExtra-fonctionnelles ?Techniques ?lComment valider du flou, de linformel ?lComment sen servir pour valider la conception/implmentation 24/03/200639TestpartirdesexigenceslPartir des ex

20、igencesSoit textuellesSoit cas dutilisation tendus avec des contrats (dans une logique proche du B)Gnrer automatiquement des objectifs/cas de test lAdaptable aux lignes de produitslExprimentations industrielles24/03/200640Mtamodle dexigences requirement 1.1 Register a book the book becomes registere

21、d after the librar ian did register the book. the book is available after the librarian did register the book.8Mtamodle dobjectifs de tests :C1:C2:C3CallActionCallAction12Mtamodle statique C1C2C30.1*Mtamodle UCTS s1s2s3s4/a1/a5/a4/a3/a2 7Mtamodle de cas dutilisationPackageActorUseCaseobservable(x)=d

22、ummytrue34Mtamodle de configuration :C1:C2:C1observable=dummystatus=on56if the mode of the system is dummy or real and the user did deselect Example function then the phase of the system is no phase and the status of the component is released implies the presence of the component is false. Traabilit

23、MModles indpendants24/03/200641ExprimentationslQuestion de baseDes cas de test gnrs partir des exigences peuvent-ils tester correctement un systme ?Etudes de caslDeuxime questionapplicable au niveau industriel (ROI) ?% des exigences couvert pour un vrai systme ?24/03/200642Nominal code24/03/200643Ex

24、igenceslStabiliser les concepts grce la mtamodlisationlSe servir des mtamodles pourLa vrificationLa simulationLa drivation des tests24/03/200644Diagnosticmaiso?24/03/200645DiagnosticetDesign-by-contract24/03/200646DiagnosticetDesign-by-contractlDesign by Contract : Robustesse / VigilanceCapacit dun

25、composant dtecter un tat interne erronlDesign by Contract : DiagnosabilitFacilit localiser une faute dans un composant sachant quune dfaillance est dtecte24/03/200647RobustesseARobustesselocalecapacitdescontratsdtecterdeserreursCombinaisonamliorelaqualitRobustesseglobaleBCAcontratsDet(A,C)24/03/2006

26、48UnexempleEiffel24/03/200649Exemplep_date.ep_time.ep_date_time.eTotalnumberofmutants673275199Nbrequivalent491815Mutation score100%100%100%Initial contracts efficiency10,35%17,90%8,7%Improved contractsefficiency69,42%91,43%70,10%Firstversiontestsize1069378Reducedtestssize72334424/03/200650ExemplelRo

27、bustesse des autotests contre un environnement infectlp_date_time selftest24/03/200651Robustesse24/03/200652ZonedediagnostiqueLogicielclassiqueDiagnosabilitZonedediagnostiqueLogicielconuparcontratsTraitementdexception24/03/200653Diagnosabilit00,20,40,60,81DensitdescontratsDiagnosabilit01002003004005

28、0060070080090010000.20.40.60.8Efficacit des contrats24/03/200654Rsultatsltude qualitative de la conception par contratslBilanLajout de contrats, mme peu efficaces, amliore la qualit du composantLefficacit amliore plus que la densit24/03/200655Diagnosticettest24/03/200656Testetdiagnostic:objectifsdif

29、frentsl2 activits relierlTest gnrer un minimum de donnes de test qui satisfont le critre darrt. Les fautes sont dtectes.lDiagnostic les algorithmes de localisation des fautes ncessitent de recouper un maximum dinformations. 24/03/200657Recoupementdetraces?Nombre de cas de test + capacit isoler la fa

30、ute24/03/200658FaultlocalizationalgorithmError : it should be p := -yDiagnosis matrix1234x=2 x=-2 x=2 x=-3y=4 y=0 y=-4 y=-3%Passed%FailedTrustIntens.Rankpow(x, y:integer) : float i := 0;11111100%100%0,50100%3 Result := 1;21111100%100%0,50100%3 if y0 then p := -x;3001133%100%0,25100%14110066%0%1,0066

31、%5 Result := Result * x;5100166%0%1,0066%5 i := i + 1;6100166%0%1,0066%5 Result := 1/Result; 7001133%100%0,25100%1endVerdicts :PPFP local i, p : integer else p := y; while ip do done if y contrats24/03/200668GnrationdedonnesdetestClassAStringnameClassBIntval *a1brandom null1; 1011; 0- ;-1Critre AllP

32、erECStopCriteria = 2ClassAname:totoClassAname:ClassBval:0a24/03/200669LetestdetransformationsdemodlesOraclelLe problme de loracleDisposant du modle attendu :lComparaison de modlesConformit du modle son mtamodle travaux de Jim SteelContrats (OCL)lContrats sur le modle de sortielContrats de la spcific

33、ation de la transformation24/03/200670OracleContratdelaspcificationfortlEn OCL:context MetaUmlRdbms inv:-select(e|e.oclIsTypeOf(Class) and -exists(s|=persistent)-collect(ecp|ecp.oclAsType(Class)-forAll(cp|-one(t|t.name= and(-collect(p|(Class).feature)-select(f|f.oclIsTypeOf(Attribute)-collect(fa|fa.

34、oclAsType(Attribute)-forAll(a|-one(tc|= and =)and ()=(-collect(p|p.oclAsType(Class).feature)-select(f|f.oclIsTypeOf(Attribute).size()and ()=-select(e|e.oclIsTypeOf(Class) and -exists(s|s.name=persistent).size()24/03/200671AnalysedemutationpourlestransformationsdemodleslOprateurs classiquesOrients ob

35、jet ou nonlOutil java de OffuttlNcessit doprateurs spcifiquesOprateurs smantiques24/03/200672LanalysedemutationDcompositionsmantiquelNavigation, filtrage, cration, modification Exemple de transformationname:stringID:intA Bpersistentname:stringID:intA Bpersistentname:stringID:intA BpersistenttableBna

36、me:stringID:intA IDnametableBname:stringID:intA BpersistentIDnametableBID nametableB(a)(b)(c)(d)(e)(f) Bpersistentnavigationfiltragecrationnavigationcrationnavigationfiltragemodification24/03/200673FaultmodelsExample for navigation mutationsWrong role to a correct class: from class A, navigate b2 in

37、stead of b1 Wrong role to a wrong class: from class A, navigate c instead of b124/03/200674Analysedemutation/OracleRsultatsexprimentauxlDifficult du test + 24/03/200675Modles & AspectsDesignModelUseCaseModelSecurityModelQoSModelBusinessModelObjectModelTestModelUIModelPlateformeModelCodeModeltesterCh

38、allenges:-Tissageautomatique-ProductFamilies(variations)-Rutilisationdetransformations24/03/200676ConclusionmodleslContributionsGnration de donnes de testMutation pour lIDMOracle par contrats24/03/200677LargeuretperspectivesLefacteurdispersionTransformation de modlesTissages de vues : daspectsDiagnosticEt composantsTraabilitRaffinement des testsTest guid par les exigences24/03/200678Questions ?24/03/200679

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号