Upload
millicent-parks
View
219
Download
0
Embed Size (px)
Citation preview
Aircraft Design and an Engineer’s Approach to Software Testing
Daniel BöhnkeIntegrated Aircraft Design
Air Transportation Systems
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke www.DLR.de • Chart 2
Source: Boeing
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke www.DLR.de • Chart 3
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
nPax = 140.7
www.DLR.de • Chart 4
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Overview
► Conceptual Aircraft Design
►An Engineer’s Approach to►Unit ►Integration ►System
►Conclusion & Outlook
www.DLR.de • Chart 5
Conceptual Aircraft Design
Simple Methods►Transparency
Changing Requirements►Flexibility
Requirements
Design
Concept
www.DLR.de • Chart 6 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
python VAMPzero.py
Requirements
Concept
Calculate
Dependencies
Sensitivities
Flexibility
Transparency
www.DLR.de • Chart 7 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
VAMPzero
Aircraft
Geom
Wing
…
…Aero
Component
Discipline
Area
Parameter
www.DLR.de • Chart 8 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
value►122m²
status►fix►calc►init
calc()►Handbook-Methods►otherParameter.getValue()
Parameter: Area
choose
replace
www.DLR.de • Chart 9 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Unit Testing
“[…] the comparison of the unit’s actual behavior with its required behavior as specified in the unit’s requirements documentation.”
IEEE Standard for Software Unit Testing
www.DLR.de • Chart 11
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Unit Test Plan
► Actual Behaviour: ►If nPax changes mPayload changes
► Required Behaviour:
►If nPax changes mPayload changes►If nPax increases mPayload must increase
► Check for Sensitivities
www.DLR.de • Chart 12
10-20
10-15
10-10
10-5
100
-50
-45
-40
-35
-30
-25
-20
-15
-10
-5
0
step size h
Rel
ativ
e er
ror
Error for different h of specified DV
fd
cs
Sensitivities
► Finite Differences
► Complex Step DerivativeErr
or
%
Step size h
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke www.DLR.de • Chart 13
Dynamic Typing
from cmath import …
class zeroComplex(complex):
def __eq__(self,other):
if self.real == other:
return True
else:
return False
www.DLR.de • Chart 14 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Inputs
►Integrated Aircraft Design Department
►Dependencies
►Estimated Sensitivities
Outputs
► Reference Point
►Calculated Sensitivities
www.DLR.de • Chart 15 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Unit Test Data
0
+ or - directional sensitivity
++ or - - superior sensitivity
+++ or --- largest impact (1 occurrence)
< and > bandwidth
Unit Test Evaluation
► Simple “Regular Expressions”
► High Effort
► Detailed Insight
►Validation & Verification►Is the model implemented correctly?►Does the model return correctly?
www.DLR.de • Chart 16 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Integration Testing
“Testing in which software components […] are combined and tested to evaluate the interaction among them.”
IEEE Standard for System and Software Verification and Validation
www.DLR.de • Chart 17 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Integration Test Plan
► User overwrites calculations
► Actual Behaviour: ►If nPax changes mPayload changes►Fails if nPax and mPayload are inputs
► Check if input set is over-determined
www.DLR.de • Chart 18 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Integration Test
www.DLR.de • Chart 19 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
If caller.status == ‘fix’ and calles.status == ‘fix’
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Integration Test Evaluation
► During Runtime
► Dependent on User Inputs► nearly infinite ► from an infinite number of inputs 99% useless
► Not really a test
www.DLR.de • Chart 20
System Testing
“Testing conducted on a complete, integrated system to evaluate the system’s compliance with its specified requirements”
IEEE Standard for System and Software Verification and Validation
www.DLR.de • Chart 21 > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
System Test Plan
www.DLR.de • Chart 22
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
System Test Data
►Aircraft Characteristics for
Airport Planing
►Mission Profile
►Geometry
►Mass Data
►Publicly available
www.DLR.de • Chart 23
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Inputs
►Geometry►Speed►Passengers►Engines►Technology Factors
Outputs
►Takeoff Mass►Empty Mass
www.DLR.de • Chart 24
System Test Data
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke www.DLR.de • Chart 25
A300-600
A310-300
A319-100
A320-200
A321-100
A330-200
A330-300
A340-200
A340-500
A340-600
A380-800
B707-320
B717-200
B727-200Adv
B737-200
B737-400
B737-500
B737-700
B737-800
B747-400
B757-200
B757-300
B767-200
B767-300
777-200ER
0.00 50000.00 100000.00 150000.00 200000.00 250000.00 300000.00 350000.00 400000.00
Operational Empty Weight [kg]
► 25 aircraft
► all converge
► all low
► indicator for improvement
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
Outlook and Conclusion
“An engineer’s approach to software testing
does not substitute software testing”
► Calibration and Validation are closely coupled
► Applicable for “expert” mathematical software
► Increases the quality of actual code and development
► Include system test in release cycle
www.DLR.de • Chart 26
> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke www.DLR.de • Chart 27
Thanks for Attending !!!
code.google.com/p/vampzero/downloads/list