19

Click here to load reader

Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis ([email protected]) ... formalized

  • Upload
    lytruc

  • View
    213

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Experiences from applying mbt in an agile scrum context

Athanasios Karapantelakis ([email protected]) Allan andersson ([email protected]) johan malmberg ([email protected]) bogumila rutkowska ([email protected]) Ericsson AB, Tellusborgsvägen 83-85, 126 25 Stockholm, Sweden

An mbt uc 2011 presentation

Page 2: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 2

Overview

› Introduction to test domain

› Approach

› Contributions and results

› Technical challenges

› A mental model for deployment of MBT in SCRUM projects

› Conclusion

Page 3: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 3

Introduction to test domain

› Test Scope: modeling of O&M interfaces (man-machine

communication) for a telecommunication system.

› User point of view when creating models

› Because of a strict, formalized structure of commands, there is

no requirement for wrappers or APIs.

- Success story with MBT: Generic command and printout

handling in test execution harness.

- Cost efficiency: wrapper class per interface versus wrapper

class per command.

› Test methodology: application of MBT for testing a system

being developed using SCRUM.

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 4: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 4

APPROACH (1/3)

› Background and tool selection – Conformiq:

› Provider of an MBT tool suite used to design models and generate test cases out of those models.

› Model design is UML-based complemented by Java-like code.

› Black-box testing approach: models describe sequences of incoming and outgoing messages to and from the system being modeled.

– Glue logic

› Code between the model domain and the test execution platform

› Translates the sequence diagrams produced from the model to executable test cases.

› Incoming messages to the system are O&M commands, and outgoing messages are command printouts.

- Based on logic in the model, glue logic creates a set of executable test scripts, through a process within which incoming messages from the model are interpreted as O&M commands, and ougtoing messages are interpreted as command printouts.

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 5: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 5

APPROACH (2/3)

Model

MBT tool

Glue Logic

Automated Test

Execution Framework

Input

Generated sequence diagrams

Generated executable test scripts

Design/Modify

Telecommunications

System

O&M interface

Tester

Issue commands

Receive

printouts

Model Designer

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 6: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 6

APPROACH (3/3)

Sprint 1 Sprint 2 Sprint X

Product backlog Test specifications

of previous system

versions

Models

Glue Logic code and test

execution harness

Reusable Model Assets

Test Automation Framework

Design Model and execute

Timeline

Reuse Execute and verify Contribute

MBT Evaluation MBT Deployment

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 7: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 7

EVALUATION › Duration (approximately two months)

› Time segmentation (man hours)

– As a percentage of total time

› Creation and refinement of glue logic (one time effort): 53%

› Creation of models (including verification of models/execution of

test cases): 47%

Efficiency of model based testing versus manual

testing in evaluation phase

0,00%

500,00%

1000,00%

1500,00%

2000,00%

2500,00%

3000,00%

Model number

Gain

in

test

scri

pt

cre

ati

on

tim

e

usin

g M

BT

over

man

ual

testi

ng

Efficiency: average gain in time of MBT versus manual testing ~14x

Test cases covered by MBT as a percentage of the total

number of test cases selected for the evaluation phase

78%

22%

Percentage of test cases

covered by MBT

Percentage of test cases

requiring manual user

intervetion

Completeness: We managed to cover 78% of the test specification

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 8: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 8

Technical Challenges

› Read data from printouts

– Contracts between the test harness and model-level design.

› Non-deterministic situations

– Ambiguous command printouts

› Large number of test cases (impacts test execution time)

– Compacting test suite

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 9: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 9

Modeling a process

› Value of modeling the “MBT introduction” process – Simulations help correlate measurable parameters to varying values of

preset parameters.

– Facilitates project planning, assignment of resources, estimation of costs.

› Using System Dynamics (SD) mental models as a tool for planning for MBT deployment within a SCRUM project.

– Define MBT introduction stages

› Preparation

- Automated test execution framework

- MBT training

› Deployment

– Define model parameters

› Measurable parameters

- Cost of resources, time to deliver, quality

› Preset parameters

- Number of engineers allocated, project/training deadlines

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 10: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 10

Mbt training

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 11: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 11

Mbt training dynamics

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 12: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 12

DEVELOPMENT OF TEST execution AUTOMATION FRAMEWORK

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 13: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 13

Dynamics of the framework development process

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 14: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 14

Capturing the performance of mbt within scrum

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 15: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 15

MBT Team efficiency dynamics

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 16: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 16

Combining models

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 17: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 17

Lessons learned

Experiences from evaluation

– Models can focus on the final solution

› In every sprint, execute only the subset of test cases generated from the model that correspond to implemented functionality.

– Design teams may come up with temporary workarounds, not present in the final version

› Model workarounds can be introduced and deactivated later

› Save efforts for redesigning the model later

Experiences from simulation of SD models

– SD models capture the inter-relations of variables that determine project success.

› Resource allocation, based on engineer experience, that leads to lower costs.

› Resource allocation, based on engineer experience, that delivers results faster.

- But also: Optimal allocation of engineers that leads to the best compromise of time and costs.

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 18: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized

Slide title

Do not add objects or

MBT UC 2011 Presentation | © Ericsson AB 2011 | 2011-08-01 | Page 18

Planning ahead

A third level of testing process automation – Complete model creation versus model “stubs”.

– Generated test cases consistency, correctness.

– Reduced testing costs, lead-time.

MBT Test Scripts

Interpret and design model

Automated generation Automated execution

Formalized Test

Specifications

System Under Test (SUT)

Stakeholders

Draft

Introduction → Approach → Contributions and results → Technical Challenges → MBT in SCRUM mental model → Conclusion

Page 19: Experiences from applying mbt in an agile scrum context from applying mbt in an agile scrum context Athanasios Karapantelakis (athanasios.karapantelakis@ericsson.com) ... formalized