Upload
lionel-thompson
View
221
Download
2
Tags:
Embed Size (px)
Citation preview
Early Testing
2
1. Introduction2. Extension of NDT3. Conclusions
Index
Table of Contents
3
Introduction
4
The test phase is one of the most important in quality assurance. It guarantees that the system meets its necessities in relation to requirements(Binder 1999).
The quality assurance of a system is one of the most studied and analyzed aspects in Software Engineering. The finding of methods, techniques and tools to reduce quality assurance costs and increase the guarantee of the results becomes an essential aim for enterprises and development teams (Ahmed 2012).
Introduction
5
NDT (NAVIGATIONAL DEVELOPMENT TECHNIQUES)
NDT is a methodology included in the MDE paradigm that is used primarily in developing information systems for the WEB.
NDT defined a set of derivation rules, expressed under the standard QVT (Query- View-Transformation) (OMG 2008)
Introduction
Introduction
7
8
Introduction
9
Extension of NDT
Extension of NDT
• Work overview:– Study related approaches– Identifiy the techniques used to genetaret test
cases– Model the information of these techniques– Generate transfromartios from requirements
models.
11
Graph Pathfinder Cathegory-Partition Method
Extension of NDT
12
3
class Functional Requirement Metamodel
SystemActor
name: Stringdescription: String
FunctionalRequirement
name: Stringdescription: Stringpriority: Stringnotes: String [0..1]
Step
action: StringmainStep: Boolean
Subsystem
name: Stringdescription: String
Constraint
value: String
ExecutionOrder
target
1
in
*
reference*
referencedFR
0..1
source
1
out
*
executor 0..1
interaction 1..*
functionalRequirement
1
step
1..*{ordered}
functionalRequirement1..*
subsystem1
postconditionFR
0..1
postcondition
*
preconditionFR
0..1
precondition
*
constraint
0..1
exceptionPoint
0..1
Functional Requirement Metamodel
Element: SystemActor
Element: Subsystem
Element: FunctionalRequirement
Extension of NDT
class Test scenarios
TestScenario
name: Stringdescription: Stringnotes: String [0..1]
StepFromTestScenario
body: String
TestActor
name: Stringdescription: String
VerificationFromTestScenarioActionFromTestScenario
testScenarioStep
1..* {ordered}
scenario
1..*
executor
1
interaction
1..*
{complete,disjoint}
class Test Values
OperationalVariable
name: Stringdescription: Stringdomain: String [0..1]comments: String [0..1]
InstanceCombination
description: String [0..1]
DataPartition
name: Stringdescription: String [0..1]rangeOfValues: String [0..1]
Instance
Quantum
partition
1..*
subdomain
specific *
general0..1
instance
1..*{ordered}
operationalVariable
quantums
1..*
combination
1..*
quantum
1..*
instance1
quantum
1..*
dataPartition
1
Test Scenario Metamodel
Test Values Metamodel
Element: SystemActor
Element: TestScenario
Element: OperationalVariable & Category
Extension of NDT
T1 T2
T3
class Dependencies
Functional Requirements Metamodel
Test Scenario Metamodel Test Values MetamodelTest Case Metamodel
«trace» «trace»«trace»
«trace» «trace»
An Overview of the
Transformations
Tracing information is also added.
Extension of NDT
15
NDT-Driver produces the test plan is automatic.
This Test Plan has shown all the functionality and casuistry of the project.
Extension of NDT
16RF-01
Extension of NDT
17
Conclusions
18
Conclusions
ADVANTAGES:
1. We can generate functional test cases from functional requirements in an automatic way.
2. We can keep functional test independ of the life cycle. 3. We can reduce the cost of testing with the automatic generation. 4. We improve final user experience in validation.
DISADVANTAGES:5. We have to improve the way to select which are the more critical test: we have
to improve testing priorization. 6. We depend of use cases quality