Download presentation
Presentation is loading. Please wait.
Published byMillicent Parks Modified over 9 years ago
1
Aircraft Design and an Engineer’s Approach to Software Testing Daniel Böhnke Integrated Aircraft Design Air Transportation Systems
2
www.DLR.de Chart 2> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke Source: Boeing
3
www.DLR.de Chart 3> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
4
nPax = 140.7 www.DLR.de Chart 4> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
5
Overview ► Conceptual Aircraft Design ►An Engineer’s Approach to ►Unit ►Integration ►System ►Conclusion & Outlook www.DLR.de Chart 5> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
6
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
7
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
8
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
9
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
10
vampzero.googlecode.com Dependencies S = 122m² Area AspectRatio = b/2 = 17m Span² 34²m² 122m² 9,475 =
11
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
12
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> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
13
Sensitivities ► Finite Differences ► Complex Step Derivative Error % Step size h > Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnkewww.DLR.de Chart 13
14
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
15
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) bandwidth
16
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
17
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
18
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
19
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’
20
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> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
21
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
22
System Test Plan www.DLR.de Chart 22> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke
23
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
24
Inputs ►Geometry ►Speed ►Passengers ►Engines ►Technology Factors Outputs ►Takeoff Mass ►Empty Mass www.DLR.de Chart 24> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke System Test Data
25
www.DLR.de Chart 25> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke ► 25 aircraft ► all converge ► all low ►indicator for improvement
26
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
27
www.DLR.de Chart 27> Aircraft Design and an Engineers Approach to Software Testing > Daniel Böhnke Thanks for Attending !!! daniel.boehnke@dlr.de code.google.com/p/vampzero/downloads/list
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.