Test process analysis of Gateway GPRS Support Node Author: Jorma Tuominen

advertisement
Test process analysis of
Gateway GPRS Support Node
Author:
Jorma Tuominen
Supervisor:
Nokia Networks
Professor Sven-Gustav Häggman
Agenda
• Introduction
•
•
•
GGSN in GPRS and 3G packet core network
GGSN in Nokia Intelligent Content Delivery system
Software development process and testing phases
• Research problem
• Research method
• Results
• Conclusions
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
2 (15)
GPRS and 3G packet core network
Mobile ISP
News
Trading
Sports
Games
WAP
MMS
BTS
NMS
BSC
CG
LIG
2G SGSN
FW
IP
backbone
BS
RNC
GGSN
3G SGSN
FW
BG
Inter-PLMN
network
17.1.2006
Intranet
services
Internet
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
Corporate
customer
3 (15)
Nokia Intelligent Content Delivery System
ICD
LDAP
CG
GTP’
user data
GGSN
OSC
NSM
RADIUS or
DIAMETER
LDAP
user data
TA
user data
CA
user data
+ RADIUS
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
4 (15)
SW development process and testing
phases
Customer/Business
Requirements
Customer
Acceptance
Network/System
Requirements
System Verification
SyVe
System Integration
System Program
Product Program
Product
Requirements
System Testing
ST
Product Architecture
Design
Functional Testing
FT
Functional
Specifications
Product Integration
PI
Detailed Design &
Specifications
Module Testing
MT
Implementation
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
5 (15)
Research problem
Testing requires tradeoffs between cost, time and
quality.
How available testing time and resources can be used
as effectively as possible to find and correct the
critical defects from the product before it is released?
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
6 (15)
Research method
• Participating in GGSN system testing
• Literature study of GPRS and 3G packet core network
elements and protocols
• Literature study of software process and software
testing
• Collecting and analyzing testing metrics
• Defect analysis
• Risk analysis
• Planning risk based testing
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
7 (15)
Testing metrics
• Testing effort metrics
•
Distribution of working hours by test phases
• Defect metrics
•
•
Number of discovered defects per week
Percentage of “correction not needed” defect reports
• Test case metrics
•
•
Number of test cases
Percentage of not relevant test cases
• Testing effectiveness metrics
•
•
•
17.1.2006
Hours needed to discover one defect
Number of test cases needed to discover one defect
Defect Removal Effectiveness
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
8 (15)
50%
Testing metrics
examples
45%
40%
35%
30%
Rel1
Rel2
Rel3
25%
• Distribution of
working hours by
test phases
(lessons learned)
20%
15%
10%
5%
0%
PI
FT
ST
18
16
E3
E3.5
14
12
• Number of
discovered defects
per week
(real-time metrics)
PI
10
FT
8
ST
E4
Cu
6
E2
4
2
0
1
17.1.2006
Jorma Tuominen
3
5
7
9
11
13
15
17
Test process analysis of Gateway GPRS Support Node
19
21
23
9 (15)
25
27
29
Defect analysis
• Search for the error prone functionality areas
•
•
•
Defects discovered in the earlier product releases
Defects discovered in the earlier testing phases
Defects discovered by the customers
• Can be done after product release or during testing
• Pareto 80-20 phenomena
•
•
17.1.2006
Many software phenomena follow a Pareto distribution:
80% of contribution comes from 20% of the contributors
[Boehm 1989]
Examples:
• 20% of the software modules contribute 80% of the
errors.
• 20% of the errors cause 80% of the down time
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
10 (15)
Risk analysis
• System requirements must be prioritised
• What is the likelihood that this feature will fail to
operate?
• What would be the impact on the user if this feature
will fail to operate?
• The likelihood of failure depends on the following:
•
•
•
error proneness of the requirement
newness of the requirement
complexity of the requirement
• Likelihood of failure: 1 = very high, ... 5 = very low
• Impact on the user: 1 = severe, ... 5 = negligible
• Risk priority =
(Likelihood of failure) x (Impact on the user)
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
11 (15)
Risk based testing
Risk
100%
Risk based testing
Traditional testing
50%
17.1.2006
Jorma Tuominen
E
E
2
1
Testing effort
Test process analysis of Gateway GPRS Support Node
12 (15)
Results
• Requirements have been divided into three groups:
•
High, medium and low risk requirements
• Test case titles will be planned for each requirement
• Test cases will be designed and executed as follows:
•
•
•
High risk requirements:
Medium risk requirements:
Low risk requirements:
100% of test cases
70% of test cases
30 % of test cases
• Test design and execution effort can be reduced about
30%.
• Effect on the quality of the product can not be
estimated yet, because the product is not yet
released.
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
13 (15)
Conclusions and future work
• The availability of the real-time testing metrics should
be improved.
• Co-operation between the product development, the
testing and the customer support should be
strengthened.
• The most important future work is to harmonize the
usage of requirement management database, test
case database and defect tracking database.
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
14 (15)
Thank You!
Questions?
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
15 (15)
Additional slides
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
16 (15)
Cost of defects
Customer/Business
Requirements
Customer
Acceptance
Phase where defect is
discovered
Requirements
Network/System
Requirements
System Verification
SyVe
1
Design
3-6
Coding
10
Development testing
15-40
System Program
Acceptance testing
30-70
Product Program
Production
System Integration
Product
Requirements
System Testing
ST
Product Architecture
Design
Functional Testing
FT
Functional
Specifications
Product Integration
PI
Detailed Design &
Specifications
Module Testing
MT
Implementation
17.1.2006
Relative cost to
correct a
defect
Jorma Tuominen
40-1000
Phase where defect is
discovered
Relative cost to
correct a
defect
Definition
1
High-level design
2
Low-level design
5
Code
10
Unit test
15
Integration test
22
System test
50
Post delivery
100+
Test process analysis of Gateway GPRS Support Node
17 (15)
Early involvement of the testers
• Important aspects of early involvement of the testers
are: “Testers need a solid understanding of the
product so they can devise better and more complete
test plans, designs, procedures, and cases. Early testteam involvement can eliminate confusion about
functional behavior later in the project lifecycle. In
addition, early involvement allows the test team to
learn over time which aspects of the application are
the most critical to the end user and which are the
highest-risk elements. This knowledge enables testers
to focus on the most important parts of the application
first, avoiding over-testing rarely used areas and
under-testing the more important ones.” [Dustin 2003].
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
18 (15)
Thoughts about testing
• “Program testing can be used to show the presence of
bugs, but never to show their absence!”
[Dijkstra 1969].
• Testing completion criteria:
Risk of stopping testing = Risk of continuing testing
• “In most cases ‘what’ you test in a system is much
more important than ‘how much’ you test”
[Craig 2002].
• “Prioritise tests so that, when ever you stop testing,
you have done the best testing in the time available”
[ISEB 2003].
• No risk  No test
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
19 (15)
References
•
Myers G. The art of software testing, USA, John Wiley & Sons, ISBN 0-471-04328-1, 1979,
177 p.
•
Hetzel B. Complete Guide to Software Testing, USA, John Wiley & Sons, ISBN 0-471-565679, 1988, 284 p.
•
Craig R., Jaskiel S. Systematic Software Testing, USA, Artech House Publishers, ISBN 158053-508-9, 2002, 536 p.
•
Dijkstra E. W. Structured programming. Proceedings of the Second NATO Conference on
Software Engineering Techniques, Rome Italy, NATO, 1969, pp. 84-88.
•
Dustin E. Effective Software Testing, USA, Addison-Wesley, ISBN 0-201-79429-2, 2003, 271
p.
•
Bender R. Requirements Based Testing presentation. Proceedings of StarEast 2005,
Software testing analysis & review conference, USA Orlando, Bender RBT Inc. 2005, 232 p.
•
Beizer B. Black-Box Testing: Techniques for Functional Testing of Software and Systems,
USA, John Wiley & Sons, ISBN 0-471-12094-4, 1995, 294 p.
•
Koomen T., Pol M. Test Process Improvement: A practical step-by-step guide to structured
testing, Great Britain, Addison-Wesley, ISBN 0-201-59624-5, 1999, 218 p.
•
Hutcheson M. Software Testing Fundamentals: Methods and Metrics, USA, John Wiley &
Sons, ISBN 0-471-43020-X, 2003, 408 p.
•
Boehm B. W. Software Risk Management, USA, IEEE Press, ISBN 0-8186-8906-4, 1989,
495 p.
•
Grove Consultants, ISEB testing foundation course material, Great Britain, Grove
Consultants, 2003, 98 p.
17.1.2006
Jorma Tuominen
Test process analysis of Gateway GPRS Support Node
20 (15)
Download