SlideShare a Scribd company logo
1 of 34
Modeling and Testing
Dovetail in MagicDraw
Gregory Solovey
MD facilitates the creation of system models. This
presentation proposes to extend this functionality by
adding the ability to monitor the model implementation:
• A test management plugin allows to build tests that
verify the models and monitor the test implementation
progress. Our ultimate goal is to deliver products with
zero implementation defects (“shift left”)
• A project management plugin allows to monitor new
feature implementation. Our ultimate goal is to monitor
the new development-related KPIs
MagicDraw - value added
Proposal
In the presence of a modeling tool, to
ensure test completeness, the “Model
Driven Testing” approach has to be
used
are run against
SYSTEM
Model Driven Testing
Code
management:
Executable
Test Scripts
Test
management:
Abstract Tests
Model
management:
Structural &
behavioral
models
describe
are derived from
are mapped to
Project
management:
Feature
Backlog are associated with
dashboards
MagicDraw
“Enriched” model management
The author of the PERL EXPECT plugin once said:
“I took 5% of EXPECT language that is used 95%
of time.”
Similarly, my proposal is to augment MD with
~5% traditional test management and project
management functionality to assure the test
completeness against the models and monitor
the new feature implementation.
For knowing…
Nikola Tesla visited Henry Ford at his factory, which was
having some kind of difficulty. Ford asked Tesla if he
could help identify the problem area. Tesla walked up
to a wall of boilerplate and made a small X in chalk on
one of the plates. Ford was thrilled, and told him to
send an invoice. The bill arrived, for $10,000. Ford
asked for a breakdown. Tesla sent another invoice,
indicating a $1 charge for marking the wall with an X,
and $9,999 for knowing where to put it.
Project management
E2E traceability
Model management
Test management
releases  features
REQs/ AC  models
tests  test scripts
Model management
Model management
• The system can be presented by two integrated
parts: existing system features and features that are
under development.
• A feature is a subset of models and/or their
elements.
• There are thousands of features that make up a
system. Therefore, it is essential to identify the
features that are under current development; only
these features need to be monitored.
Model management - structural view
Application/
Business
layer
Application
1
Application
2
Application
6
Middleware/
Platform
layer
Service
1
Service
2
Service
3
HW
abstraction
layer
Component 1 Component 2 Component 3
Interface
layer API 1 API 2 API 7
Model management - behavioral view
Use case
Diagram 1
Activity
Diagram 9
Sequence
diagram 5
Activity
diagram 3
Sequence
diagram 2
Sequence
diagram 7
Activity
diagram 3
Use case
diagram 2
Activity
Diagram 5
Activity
Diagram 3
Activity
diagram 9
State
machine 8
Activity
diagram 3
Model management - system view
Application/
Business
layer
Application
1
Application
2
Application
6
Middleware/
Platform
layer
Service
1
Service
2
Service
3
HW
abstraction
layer
Component 1 Component 2 Component 3
Interface
layer API 1 API 2 API 7
Model management - feature view
Use case
Diagram 1
Activity
Diagram 9
Sequence
diagram 5
Activity
diagram 3
Sequence
diagram 2
Sequence
diagram 7
Activity
diagram 3
Use case
diagram 2
Activity
Diagram 5
Activity
Diagram 3
Activity
diagram 9
State
machine 8
Activity
diagram 3
Use case
Diagram 1
Activity
Diagram 9
Sequence
diagram 5
Activity
diagram 3
Sequence
diagram 2
Sequence
diagram 7
Activity
diagram 3
Use case
diagram 2
Activity
Diagram 5
Activity
Diagram 3
Activity
diagram 9
State
machine 8
Activity
diagram 3
Feature WWW-111
Feature XYZ-321
A feature is represented by new and/or updated diagrams/diagram elements
Test management
Preamble
The coverage of requirements and
acceptance criteria (REQs/AC) is
necessary, but not sufficient, to
achieve complete test.
Example: REQs/AC coverage
REQs TEXT AC
RPREQ_1500
As Application_3 SW, I want Platform SW to control state LEDs during early HW start-up, warm and
cold reset, so that sate HW physical LEDs indicate when module is in resetting phase and initialized.
RPREQ_1747
As Application_3 SW, I want Platform SW to set color and pattern on state and interface LEDs
according to received requests, so that I can see a state of a particular unit.
RPAC_498
RPAC_523
AC TEXT REQ
RPAC_498
Service_5 notifies Component_5 about new state LED color and pattern, Component_5 requests
Component_9 to set state LED according to Sefice_5 notification. Component_9 sets the state LED
accordingly. RPREQ_1747
RPAC_523
Service_8 notifies Component_2 about new state LED color and pattern. Component_2 requests
Component_9 to set LED according to Service_8 notification. Component_9 sets particular state LED
color and pattern. RPREQ_1747
The coverage of REQs/AC by test is typically required by most
organizations. Often, the AC are just a rephrasing of the
respective requirements.
In this example, testers can get away with just ~15 test cases to
cover these REQs/AC. However …
Example: Specification coverage
Use case diagram (1 diagram):
start-up, cold/ warm reset/ OFF
for various boards Activity diagram (7 diagrams):
Algorithms/ conditions of
start-up, cold/ warm reset/ OFF
Sequence diagram (4 diagrams):
Message exchange for LED settings
The previous requirements are described by 12 UML models.
These models require ~200 test cases (as opposed to 15).
MD TMS vs traditional TMS
A traditional TMS:
• Deals with requirements coverage. In contrast, the
MD TMS maps tests to specification models. This
allows to control the test completeness.
• Is a release-oriented tool - all feature test plans exist
only temporarily and independently from the
regression tests.
• Does not allow to see how well the regression test
covers the existing system, because a traditional TMS
is not linked to the overall system architecture/
behavior.
Principles of model-based tests
• The main purpose of a TMS within MD is to associate
tests to models, to ensure the test completeness.
• Tests are built based on the model types.
• Tests are not generated automatically.
• Test completeness is verified during the review.
• Tests include a requirement ID, a model ID, and a
unique tag for traceability purposes.
• Executable test scripts are not intended to be stored
in TMS, but they have to cover the tests in TMS, using
the test tag.
Test model
Test Case layer
Test Scenario layer
Test Suite layer
Test Plan layer TP 1
TS 1
UC 1
TC 1 TC 2 TC 3
UC 2
TC 5 TC 6
TS 2
UC 7
TC 7
TS 3
UC 5
TC 8 TC 9
• A Test Plan represents one of the traditional test
types, such as application, feature, sanity, regression,
performance, etc.
• A Test Suite reflects the structural view of the system.
• A Test Scenario mirrors the behavioral view, such as
end-to-end scenarios or business functions.
• A Test Case is a set of actions, such as a message
exchange, with one compare statement.
Test hierarchy
Model - Test
Use case
Diagram 1
Activity
Diagram 9
Sequence
diagram 5
Activity
diagram 3
Sequence
diagram 2
Sequence
diagram 7
Activity
diagram 3
Use case
diagram 2
Activity
Diagram 5
Activity
Diagram 3
Activity
diagram 9
State
machine 8
Activity
diagram 3
Application/
Business
layer Application 1 Application 2 Application 6
Middleware/
Platform
layer Service 1 Service 2 Service 3
HW
abstraction
layer Component 1 Component 2 Component 3
Interface
layer
API 1 API 2 API 7
Test management: GUI
MagicDraw
Model
management
Test
management
Project
management
Test management: Interfaces
Dashboards
Jason -
Test tags
CI result
repository
Jason -
Test Plan
Jason -
Test Plan -
review
Jason -
Test Plan
Export
Import
Project management
Project management
• The main purpose is to monitor the quality of new feature
development.
• The decomposition/refinement process produces the backlogs
for various system levels/ components, that represent the initial
data for MD project management.
• MD project management uses only data that are necessary to
monitor the development and verification of the models, such as
the relationship between features, models and tests.
• Most of the common project management artifacts, such as
implementation tasks, schedule, builds, definition of done, etc.
are not included in the MD project management.
KPI sourcesFilter sources
Project management
feature
releases
products
requirements AC
references to
models
references to
Test Plans
belongs to
is used in
is defined by
is verified by
is implemented through
is verified by
variants
is applied to
Export
MagicDraw
Model
management
Test
management
Project
management
Interfaces
Dashboards
Jason -
release/ feature
Test Plans
Import
Jason -
requirements
/ AC data
Jason -
features data
Requirement
repository
Backlogs
Reports, Dashboards, search pages:
Select artifacts: release, product, component, feature,
architectural layer, test plan
Show KPIs:
test plans coverage by automated tests
test plan requirements/ AC coverage by automated tests
feature requirements/ AC coverage by automated tests
model coverage by abstract test
Show relationship/ traceability:
release <-> requirements/ AC <-> models <->
test plans <-> test scripts <-> test cases
Solution: Report management
Test Quality Dashboard
Quality Dashboards:
• system components coverage by test
• new features coverage by test
Daily: Extract
features data
Doc repository:
requirements
and acceptance
criteria
E2E Process
JIRA
Backlogs:
releases and
features
Modeling Tool:
Specifications
and Design
Test
Management
System: abstract
testware
DevOps environment
Source Control
System: Test
Scripts
Daily: Extract testware
tags/ results
DevOps
environment:
Logs and Reports
feature/reqs/models/tests repository
Conclusion
The test and project management, as additions
to MagicDraw, provide the possibility to verify
the system development and to monitor the
implementation progress.
These “extensions” have the potential of making
MagicDraw attractive to a broader customer
base, looking for model implementation
aspects.
Further reading
• Requirements coverage - a false sense of security,
Professional Tester magazine, issue 42, 12-17; December
2017. Is the forerunner of the this presentation
• Tower of Babel insights Professional Tester magazine, issue
35, 15-18; December 2015. Proposes standards that make
requirements testable
• From test techniques to test methods Professional Tester
magazine, issue 29, November 2014; 4-14; Presents test
design methods for all UML software models
• QA of testing, Professional Tester magazine, issue 28, August
2014; 9-12; Describes the process that guaranties the test
automation in parallel with code development
Thank you
for attending this session
gregory.solovey@nokia.com

More Related Content

What's hot

Business Process Testing
Business Process TestingBusiness Process Testing
Business Process TestingPraveen Gorantla
 
Capstone Technology Canada - Advanced Process Control Project Lifecycle
Capstone Technology Canada - Advanced Process Control Project LifecycleCapstone Technology Canada - Advanced Process Control Project Lifecycle
Capstone Technology Canada - Advanced Process Control Project Lifecyclemorinsteve_capstone
 
A Test Automation Framework
A Test Automation FrameworkA Test Automation Framework
A Test Automation FrameworkGregory Solovey
 
Optimica Testing Toolkit
Optimica Testing ToolkitOptimica Testing Toolkit
Optimica Testing ToolkitModelon
 
Sap Integration Testing Test Scripting V0.1
Sap Integration Testing   Test Scripting V0.1Sap Integration Testing   Test Scripting V0.1
Sap Integration Testing Test Scripting V0.1ASCARR1
 
Critical System Validation in Software Engineering SE21
Critical System Validation in Software Engineering SE21Critical System Validation in Software Engineering SE21
Critical System Validation in Software Engineering SE21koolkampus
 
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...Modelon
 
Selenium Tutorial for Beginners | Automation framework Basics
Selenium Tutorial for Beginners | Automation framework BasicsSelenium Tutorial for Beginners | Automation framework Basics
Selenium Tutorial for Beginners | Automation framework BasicsTechcanvass
 
HP ALM QC
HP ALM QCHP ALM QC
HP ALM QCFayis-QA
 
An Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringAn Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringCorrelsense
 
Introduction to Performance testing
Introduction to Performance testingIntroduction to Performance testing
Introduction to Performance testingsilviasiqueirahp
 
Test Automation Framework Online Training by QuontraSolutions
Test Automation Framework Online Training by QuontraSolutionsTest Automation Framework Online Training by QuontraSolutions
Test Automation Framework Online Training by QuontraSolutionsQuontra Solutions
 
Test automation wipro
Test automation   wiproTest automation   wipro
Test automation wiproambreprasad77
 
Test Driven Development #sitFRA
Test Driven Development #sitFRATest Driven Development #sitFRA
Test Driven Development #sitFRAChristian Drumm
 
SAP Performance Testing Best Practice Guide v1.0
SAP Performance Testing Best Practice Guide v1.0SAP Performance Testing Best Practice Guide v1.0
SAP Performance Testing Best Practice Guide v1.0Argos
 

What's hot (18)

Business Process Testing
Business Process TestingBusiness Process Testing
Business Process Testing
 
Capstone Technology Canada - Advanced Process Control Project Lifecycle
Capstone Technology Canada - Advanced Process Control Project LifecycleCapstone Technology Canada - Advanced Process Control Project Lifecycle
Capstone Technology Canada - Advanced Process Control Project Lifecycle
 
A Test Automation Framework
A Test Automation FrameworkA Test Automation Framework
A Test Automation Framework
 
Optimica Testing Toolkit
Optimica Testing ToolkitOptimica Testing Toolkit
Optimica Testing Toolkit
 
Sap Integration Testing Test Scripting V0.1
Sap Integration Testing   Test Scripting V0.1Sap Integration Testing   Test Scripting V0.1
Sap Integration Testing Test Scripting V0.1
 
Critical System Validation in Software Engineering SE21
Critical System Validation in Software Engineering SE21Critical System Validation in Software Engineering SE21
Critical System Validation in Software Engineering SE21
 
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
Closing the Design Cycle Loop with Executable Requirements and OSLC - IBM Int...
 
Selenium Tutorial for Beginners | Automation framework Basics
Selenium Tutorial for Beginners | Automation framework BasicsSelenium Tutorial for Beginners | Automation framework Basics
Selenium Tutorial for Beginners | Automation framework Basics
 
HP ALM QC
HP ALM QCHP ALM QC
HP ALM QC
 
An Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringAn Introduction to Software Performance Engineering
An Introduction to Software Performance Engineering
 
Agile testing approach
Agile testing approachAgile testing approach
Agile testing approach
 
Introduction to Performance testing
Introduction to Performance testingIntroduction to Performance testing
Introduction to Performance testing
 
Test Automation Framework Online Training by QuontraSolutions
Test Automation Framework Online Training by QuontraSolutionsTest Automation Framework Online Training by QuontraSolutions
Test Automation Framework Online Training by QuontraSolutions
 
Test automation wipro
Test automation   wiproTest automation   wipro
Test automation wipro
 
Test Driven Development #sitFRA
Test Driven Development #sitFRATest Driven Development #sitFRA
Test Driven Development #sitFRA
 
ASP.MVC Training
ASP.MVC TrainingASP.MVC Training
ASP.MVC Training
 
SAP Performance Testing Best Practice Guide v1.0
SAP Performance Testing Best Practice Guide v1.0SAP Performance Testing Best Practice Guide v1.0
SAP Performance Testing Best Practice Guide v1.0
 
RAD10987USEN.PDF
RAD10987USEN.PDFRAD10987USEN.PDF
RAD10987USEN.PDF
 

Similar to Modeling and Testing Dovetail in MagicDraw

Testing Frameworks
Testing FrameworksTesting Frameworks
Testing FrameworksMoataz Nabil
 
Test Director Ppt Training
Test Director Ppt TrainingTest Director Ppt Training
Test Director Ppt Trainingshrikantg
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models MohsinAli773
 
Software Processes
Software Processes Software Processes
Software Processes Usman Bin Saad
 
How To Transform the Manual Testing Process to Incorporate Test Automation
How To Transform the Manual Testing Process to Incorporate Test AutomationHow To Transform the Manual Testing Process to Incorporate Test Automation
How To Transform the Manual Testing Process to Incorporate Test AutomationRanorex
 
Manualtestingppt
ManualtestingpptManualtestingppt
Manualtestingpptbalaji naidu
 
Fundamentals of software development
Fundamentals of software developmentFundamentals of software development
Fundamentals of software developmentPratik Devmurari
 
SE18_Lec 03_ RUP
SE18_Lec 03_ RUPSE18_Lec 03_ RUP
SE18_Lec 03_ RUPAmr E. Mohamed
 
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v modelMinal Kashyap
 
testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2Dr. Ahmed Al Zaidy
 
software Processes
software Processessoftware Processes
software ProcessesSeif Shaame
 
VCS_QAPerformanceSlides
VCS_QAPerformanceSlidesVCS_QAPerformanceSlides
VCS_QAPerformanceSlidesMichael Cowan
 
Hot sos em12c_metric_extensions
Hot sos em12c_metric_extensionsHot sos em12c_metric_extensions
Hot sos em12c_metric_extensionsKellyn Pot'Vin-Gorman
 
Design & Implementation.pptx
Design & Implementation.pptxDesign & Implementation.pptx
Design & Implementation.pptxSalmaItagi2
 
Mercury Testdirector8.0 using Slides
Mercury Testdirector8.0 using SlidesMercury Testdirector8.0 using Slides
Mercury Testdirector8.0 using Slidestelab
 

Similar to Modeling and Testing Dovetail in MagicDraw (20)

Testing Frameworks
Testing FrameworksTesting Frameworks
Testing Frameworks
 
Test Director Ppt Training
Test Director Ppt TrainingTest Director Ppt Training
Test Director Ppt Training
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models
 
Software Processes
Software Processes Software Processes
Software Processes
 
How To Transform the Manual Testing Process to Incorporate Test Automation
How To Transform the Manual Testing Process to Incorporate Test AutomationHow To Transform the Manual Testing Process to Incorporate Test Automation
How To Transform the Manual Testing Process to Incorporate Test Automation
 
Manualtestingppt
ManualtestingpptManualtestingppt
Manualtestingppt
 
Introduction & Manual Testing
Introduction & Manual TestingIntroduction & Manual Testing
Introduction & Manual Testing
 
Fundamentals of software development
Fundamentals of software developmentFundamentals of software development
Fundamentals of software development
 
SE18_Lec 03_ RUP
SE18_Lec 03_ RUPSE18_Lec 03_ RUP
SE18_Lec 03_ RUP
 
Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016Modelon Modelica executable requirements Ansys Conference 2016
Modelon Modelica executable requirements Ansys Conference 2016
 
Amq Overview Continuous Quality Assurance
Amq Overview Continuous Quality AssuranceAmq Overview Continuous Quality Assurance
Amq Overview Continuous Quality Assurance
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v model
 
testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2
 
software Processes
software Processessoftware Processes
software Processes
 
I
II
I
 
VCS_QAPerformanceSlides
VCS_QAPerformanceSlidesVCS_QAPerformanceSlides
VCS_QAPerformanceSlides
 
Hot sos em12c_metric_extensions
Hot sos em12c_metric_extensionsHot sos em12c_metric_extensions
Hot sos em12c_metric_extensions
 
Design & Implementation.pptx
Design & Implementation.pptxDesign & Implementation.pptx
Design & Implementation.pptx
 
Mercury Testdirector8.0 using Slides
Mercury Testdirector8.0 using SlidesMercury Testdirector8.0 using Slides
Mercury Testdirector8.0 using Slides
 
Design pattern
Design patternDesign pattern
Design pattern
 

Recently uploaded

Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 

Recently uploaded (20)

Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 

Modeling and Testing Dovetail in MagicDraw

  • 1. Modeling and Testing Dovetail in MagicDraw Gregory Solovey
  • 2. MD facilitates the creation of system models. This presentation proposes to extend this functionality by adding the ability to monitor the model implementation: • A test management plugin allows to build tests that verify the models and monitor the test implementation progress. Our ultimate goal is to deliver products with zero implementation defects (“shift left”) • A project management plugin allows to monitor new feature implementation. Our ultimate goal is to monitor the new development-related KPIs MagicDraw - value added
  • 3. Proposal In the presence of a modeling tool, to ensure test completeness, the “Model Driven Testing” approach has to be used
  • 4. are run against SYSTEM Model Driven Testing Code management: Executable Test Scripts Test management: Abstract Tests Model management: Structural & behavioral models describe are derived from are mapped to Project management: Feature Backlog are associated with dashboards MagicDraw
  • 5. “Enriched” model management The author of the PERL EXPECT plugin once said: “I took 5% of EXPECT language that is used 95% of time.” Similarly, my proposal is to augment MD with ~5% traditional test management and project management functionality to assure the test completeness against the models and monitor the new feature implementation.
  • 6. For knowing… Nikola Tesla visited Henry Ford at his factory, which was having some kind of difficulty. Ford asked Tesla if he could help identify the problem area. Tesla walked up to a wall of boilerplate and made a small X in chalk on one of the plates. Ford was thrilled, and told him to send an invoice. The bill arrived, for $10,000. Ford asked for a breakdown. Tesla sent another invoice, indicating a $1 charge for marking the wall with an X, and $9,999 for knowing where to put it.
  • 7. Project management E2E traceability Model management Test management releases  features REQs/ AC  models tests  test scripts
  • 9. Model management • The system can be presented by two integrated parts: existing system features and features that are under development. • A feature is a subset of models and/or their elements. • There are thousands of features that make up a system. Therefore, it is essential to identify the features that are under current development; only these features need to be monitored.
  • 10. Model management - structural view Application/ Business layer Application 1 Application 2 Application 6 Middleware/ Platform layer Service 1 Service 2 Service 3 HW abstraction layer Component 1 Component 2 Component 3 Interface layer API 1 API 2 API 7
  • 11. Model management - behavioral view Use case Diagram 1 Activity Diagram 9 Sequence diagram 5 Activity diagram 3 Sequence diagram 2 Sequence diagram 7 Activity diagram 3 Use case diagram 2 Activity Diagram 5 Activity Diagram 3 Activity diagram 9 State machine 8 Activity diagram 3
  • 12. Model management - system view Application/ Business layer Application 1 Application 2 Application 6 Middleware/ Platform layer Service 1 Service 2 Service 3 HW abstraction layer Component 1 Component 2 Component 3 Interface layer API 1 API 2 API 7
  • 13. Model management - feature view Use case Diagram 1 Activity Diagram 9 Sequence diagram 5 Activity diagram 3 Sequence diagram 2 Sequence diagram 7 Activity diagram 3 Use case diagram 2 Activity Diagram 5 Activity Diagram 3 Activity diagram 9 State machine 8 Activity diagram 3 Use case Diagram 1 Activity Diagram 9 Sequence diagram 5 Activity diagram 3 Sequence diagram 2 Sequence diagram 7 Activity diagram 3 Use case diagram 2 Activity Diagram 5 Activity Diagram 3 Activity diagram 9 State machine 8 Activity diagram 3 Feature WWW-111 Feature XYZ-321 A feature is represented by new and/or updated diagrams/diagram elements
  • 15. Preamble The coverage of requirements and acceptance criteria (REQs/AC) is necessary, but not sufficient, to achieve complete test.
  • 16. Example: REQs/AC coverage REQs TEXT AC RPREQ_1500 As Application_3 SW, I want Platform SW to control state LEDs during early HW start-up, warm and cold reset, so that sate HW physical LEDs indicate when module is in resetting phase and initialized. RPREQ_1747 As Application_3 SW, I want Platform SW to set color and pattern on state and interface LEDs according to received requests, so that I can see a state of a particular unit. RPAC_498 RPAC_523 AC TEXT REQ RPAC_498 Service_5 notifies Component_5 about new state LED color and pattern, Component_5 requests Component_9 to set state LED according to Sefice_5 notification. Component_9 sets the state LED accordingly. RPREQ_1747 RPAC_523 Service_8 notifies Component_2 about new state LED color and pattern. Component_2 requests Component_9 to set LED according to Service_8 notification. Component_9 sets particular state LED color and pattern. RPREQ_1747 The coverage of REQs/AC by test is typically required by most organizations. Often, the AC are just a rephrasing of the respective requirements. In this example, testers can get away with just ~15 test cases to cover these REQs/AC. However …
  • 17. Example: Specification coverage Use case diagram (1 diagram): start-up, cold/ warm reset/ OFF for various boards Activity diagram (7 diagrams): Algorithms/ conditions of start-up, cold/ warm reset/ OFF Sequence diagram (4 diagrams): Message exchange for LED settings The previous requirements are described by 12 UML models. These models require ~200 test cases (as opposed to 15).
  • 18. MD TMS vs traditional TMS A traditional TMS: • Deals with requirements coverage. In contrast, the MD TMS maps tests to specification models. This allows to control the test completeness. • Is a release-oriented tool - all feature test plans exist only temporarily and independently from the regression tests. • Does not allow to see how well the regression test covers the existing system, because a traditional TMS is not linked to the overall system architecture/ behavior.
  • 19. Principles of model-based tests • The main purpose of a TMS within MD is to associate tests to models, to ensure the test completeness. • Tests are built based on the model types. • Tests are not generated automatically. • Test completeness is verified during the review. • Tests include a requirement ID, a model ID, and a unique tag for traceability purposes. • Executable test scripts are not intended to be stored in TMS, but they have to cover the tests in TMS, using the test tag.
  • 20. Test model Test Case layer Test Scenario layer Test Suite layer Test Plan layer TP 1 TS 1 UC 1 TC 1 TC 2 TC 3 UC 2 TC 5 TC 6 TS 2 UC 7 TC 7 TS 3 UC 5 TC 8 TC 9
  • 21. • A Test Plan represents one of the traditional test types, such as application, feature, sanity, regression, performance, etc. • A Test Suite reflects the structural view of the system. • A Test Scenario mirrors the behavioral view, such as end-to-end scenarios or business functions. • A Test Case is a set of actions, such as a message exchange, with one compare statement. Test hierarchy
  • 22. Model - Test Use case Diagram 1 Activity Diagram 9 Sequence diagram 5 Activity diagram 3 Sequence diagram 2 Sequence diagram 7 Activity diagram 3 Use case diagram 2 Activity Diagram 5 Activity Diagram 3 Activity diagram 9 State machine 8 Activity diagram 3 Application/ Business layer Application 1 Application 2 Application 6 Middleware/ Platform layer Service 1 Service 2 Service 3 HW abstraction layer Component 1 Component 2 Component 3 Interface layer API 1 API 2 API 7
  • 24. MagicDraw Model management Test management Project management Test management: Interfaces Dashboards Jason - Test tags CI result repository Jason - Test Plan Jason - Test Plan - review Jason - Test Plan Export Import
  • 26. Project management • The main purpose is to monitor the quality of new feature development. • The decomposition/refinement process produces the backlogs for various system levels/ components, that represent the initial data for MD project management. • MD project management uses only data that are necessary to monitor the development and verification of the models, such as the relationship between features, models and tests. • Most of the common project management artifacts, such as implementation tasks, schedule, builds, definition of done, etc. are not included in the MD project management.
  • 27. KPI sourcesFilter sources Project management feature releases products requirements AC references to models references to Test Plans belongs to is used in is defined by is verified by is implemented through is verified by variants is applied to
  • 28. Export MagicDraw Model management Test management Project management Interfaces Dashboards Jason - release/ feature Test Plans Import Jason - requirements / AC data Jason - features data Requirement repository Backlogs
  • 29. Reports, Dashboards, search pages: Select artifacts: release, product, component, feature, architectural layer, test plan Show KPIs: test plans coverage by automated tests test plan requirements/ AC coverage by automated tests feature requirements/ AC coverage by automated tests model coverage by abstract test Show relationship/ traceability: release <-> requirements/ AC <-> models <-> test plans <-> test scripts <-> test cases Solution: Report management
  • 31. Quality Dashboards: • system components coverage by test • new features coverage by test Daily: Extract features data Doc repository: requirements and acceptance criteria E2E Process JIRA Backlogs: releases and features Modeling Tool: Specifications and Design Test Management System: abstract testware DevOps environment Source Control System: Test Scripts Daily: Extract testware tags/ results DevOps environment: Logs and Reports feature/reqs/models/tests repository
  • 32. Conclusion The test and project management, as additions to MagicDraw, provide the possibility to verify the system development and to monitor the implementation progress. These “extensions” have the potential of making MagicDraw attractive to a broader customer base, looking for model implementation aspects.
  • 33. Further reading • Requirements coverage - a false sense of security, Professional Tester magazine, issue 42, 12-17; December 2017. Is the forerunner of the this presentation • Tower of Babel insights Professional Tester magazine, issue 35, 15-18; December 2015. Proposes standards that make requirements testable • From test techniques to test methods Professional Tester magazine, issue 29, November 2014; 4-14; Presents test design methods for all UML software models • QA of testing, Professional Tester magazine, issue 28, August 2014; 9-12; Describes the process that guaranties the test automation in parallel with code development
  • 34. Thank you for attending this session gregory.solovey@nokia.com

Editor's Notes

  1. Defect Detection Efficiency (DDE) is the number of defects injected and detected during a phase divided by the total number of defects injected during that phase. ALU PLTF data ~75%, but can be 95%