Title: Implementation and rigorous verification of STEPTAS interfaces
1Implementation and rigorous verification of
STEP-TAS interfaces
- Hans Peter de Koning
- Simon Appel, David Alsina Orra, Duncan Gibson
- (European Space Agency / ESTEC, Noordwijk, The
Netherlands) - (ESA/ESTEC D/TEC-MCV)
2Topics
- Where are we with STEP-TAS?
- STEP-TAS STEP-based "Thermal Analysis for
Space" data exchange standard - Progress over last year
- Larger picture w.r.t. other data standardization
activities in European space - Focus on iterative, integrated data exchange
standard development process - Requirements ? Standard data model ? Interface
implementation ? Verification - Continuous interface implementation and rigorous
verification - What lessons did we learn?
- General recommendations
- STEP-based and non-STEP-based
- Attempt to extract best practices / patterns
- Further development and formal standardization
3Timeline of STEP-TAS development
4Iterative, incremental development scheme
Currently with STEP-TAS at increment (version)
5.2 Protocol now largely frozen
5Requirements on open data exchange standards and
implementation technology
- Shall be reliable
- Shall be easy to use and understand by end-users
- Absolute minimum number of transfer parameter
settings - Shall be rigorously verifiable
- Shall be complete and self-contained
- Yet achievable in reasonable time and as simple
as possible - Shall be designed for extension while keeping
full backwards compatibility - Shall be portable no computer platform
dependencies - Shall avoid dependence on third party proprietary
software - Shall be designed for low cost implementation and
maintenance - To minimize barriers for take-up and
implementation by tool/interface developers
6Main characteristics STEP-TASThermal Analysis
for Space (1)
- Supports three kinds of (thermal) models
- Thermal geometric models represented by bounded
surfaces - Thin shells with oriented faces, mesh and
notional thickness - Thermal (and thermal-hydraulic) network models
- All typical ESATAN or SINDA like data and results
- Thermal test (or flight) models with sensor
identification and possible location - E.g. test article with thermo-couples,
thermistors, data acquisition channels, - Can be used in conjunction with corresponding
STEP AP203/AP214 CAD model - STEP-TAS is the standard that end-users should
be aware of but includes generic
discipline-independent STEP-NRF protocol - NRF provides all the general features to enable
multi-discipline data exchange - NRF enables modular software engineering
7Main characteristics STEP-TAS Thermal Analysis
for Space (2)
- Geometric and mathematical sub-model hierarchy
no limitation on depth - Full parameterization of geometric and
mathematical model possible - Arbitrary number and depth of coordinate system
transformations - Retains human-understandable sequences of
rotations w.r.t. the major axes - Mesh definitions on geometric faces
- Mapping from geometric faces to thermal
mathematical model nodes - Separation of model and case specification
- Model is the representation of the static
structure of the object of interest - For case think of load-case / simulation scenario
/ test-case / operation-case - Multiple cases / sub-cases possible per model
- Named materials with their thermo-optical and
physical properties - Supports multiple sets of properties per material
property environment (e.g. BOL, EOL) - Rigid body kinematics with on-orbit pointing for
articulated parts
8Main characteristics STEP-TAS Thermal Analysis
for Space (3)
- Space trajectory, attitude and orientation
- Orbit arcs defined by Keplerian parameters or
general ephemeris - Definition of named discrete events, sequencing
of cases, parameterized attitude, etc. - Analysis, simulation, test or operation run
results - Contains complete run-execution informatione.g.
date time stamp of execution start / end,
tool/facility name and version, etc. - Supports choice of SI or other unit systems (but
requires one consistent set) - Conversion factors and offsets w.r.t. SI
reference units are explicitly defined - STEP-TAS dictionary fully defines all Imperial
units used in US projects
9STEP-TAS Conformance Classes( complete subsets
of standard)
NOTE Conduction model means All parameters
needed to compute conductive network, like
thickness, material with conductivity,
connectivity between shells with/without
contact conductance
10Main characteristics STEP-NRF Network-model
Results Format (1)
- Generic, discipline-independent protocol to
exchange models, cases results - Model definition, using a discrete network
representation - Supports model/submodel hierarchy with no
limitation on depth - Classification of network models, nodes, node
relationships through dictionary - Results data, produced in analysis, simulation,
test or operation - Meta-data, which records details of executed
actual analysis, simulation, test or operation
run - Provides common basis for a suite of
multi-discipline exchange standards - Discipline-dependent data is defined in
runtime-loadable dictionary - E.g. thermal-tailored NRF dictionary for STEP-TAS
- Results valued quantity types for discrete
observable items for discrete states of the
system - No support for continuous fields, etc.
- Any quantity has explicit quantity type and unit
no loose numerical values - E.g. quantity type temperature / unit kelvin
- Data model designed to cope efficiently with
large amounts of results data - Designed to map well onto existing scientific
data storage standards like HDF5
11Main characteristics STEP-NRF Network-model
Results Format (2)
- Central NRF data structure for results is the
so-called datacube - Each element of the datacube is a scalar, vector
or tensor property for a specific combination of
obervable_item, quantity_type, state - Designed for efficient storage and retrieval of
massive amounts of structured data - NRF supports
- Quantity value prescriptions withliteral or
expression values - Real, integer, complex and string enumeration
quantity types - Named variables, functions, interpolation tables
and polynomials
quantity types
observable items
states
typically sampled time or frequency
12Main characteristics STEP-NRF Network-model
Results Format (3)
Results creation pattern
analysis simulation test operation tool or
facility
Chaining results creation
13STEP-TAS standard - two parts
Note "Dictionary" is similar to "Reference Data
Library" in other STEP standards
Actually a STEP-TAS file itself
- Application Protocol contains core data model
formalized in ARM EXPRESS schema - Run-time Loadable Dictionary contains pre-defined
instancesAllows for backward compatible
extensions of standardwithout costly updates to
protocol and implemented interface software
14STEP-TAS architecture overviewfor interfaces /
converters
pyExpress (expressik) runtime library includes
STEP file reader/writer
STEP-TAS standard
STEP-TAS application protocol Thermal Analysis
for Space
pyExpress (today)
includes STEP-NRF protocol Network-model Results
Format
STEP-TAS protocol library (generated)
loaded at runtime
STEP-TAS API
STEP-TAS support library (handcoded)
expressik (future)
STEP-TAS dictionary Predefines needed units,
quantity types, node classes, Runtime download
possible from URI http//www.estec.esa.int/therma
l/
STEP-TAS .stp exchange file ISO 10303-21
15TASverter architecturewith areas of
responsibility
16Excerpts from STEP-TAS dictionary(Part 21 file
and HTML)
17STEP-TAS real model conversion galleryISS
thermal interface model
ESARAD
THERMICA
PATRAN
18STEP-TAS real model conversion galleryAutomated
Transfer Vehicle (ATV)
ESARAD
THERMICA
19STEP-TAS real model conversion galleryAutomated
Transfer Vehicle (ATV)
Original THERMICA .SYSBAS
Generated ESARAD .erg
20STEP-TAS real model conversion galleryIntegral
THERMICA
ESARAD
PATRAN
21STEP-TAS real model conversion galleryMETOP
stowed solar array
THERMICA
ESARAD
22STEP-TAS status today
- Stable protocol and dictionary
- v5.2 available end of April at http//www.estec.es
a.int/thermal/tools/standards.html - All geometry parameterized
- Large automated fully documented regression test
suite - 310 unit test cases (186 ESARAD, 124 THERMICA)
- 24 real analysis model test cases (14 ESARAD, 10
THERMICA) - pyExpress Python API generator (supports EXPRESS
edition 1) - With built-in full programmer's manual generator
from protocol (using epydoc) - Full domain and global rule validation (WHERE,
RULE) - Documented EXPRESS-to-Python mapping
- TASverter release 6 due end of April
- Free download from http//www.estec.esa.int/therma
l/tools/tasverter.html - Implements STEP-TAS CC1/CC3
- Now includes simple GUI (on Windows and Linux)
- ESATAN GFF-to-STEP-TAS model/case/results
converter implemented
23TASverter GUI
24Relation with other European space standardization
- STEP-SPE "Space Environment Analysis"
- In progress, extension of STEP-NRF and STEP-TAS
- ECSS E-10 Part 1B "System engineering -
Requirements and process" - Published November 2004
- ECSS E-10 Part 7A "Product data exchange"
- Officially published October 2004
- ECSS E-10 Part 9 "Engineering Database"
- In progress, ambitious standard to integrate
system engineering and all space disciplines - Looking at MDA, UML2/SysML/OCL, XMI, STEP AP233,
RDF, OWL, XML/Schema - ECSS E-10 Part 13 "Modelling Simulation"
- In progress, focuses on space/ground segment high
software content systems
Note ECSS standards can be freely downloaded as
PDF from http//www.ecss.nl(after simple
registration)
25Lessons learned
- Keep data models simple and robust
- Refrain from "fancy" EXPRESS constructs
- STEP-TAS uses single ONEOF inheritance throughout
and no SELECT TYPEs - Integrated team with incremental development
process works best - Data modeling without extensive interface
implementation and verification in-the-loop is
bound to produce mediocre quality models "the
devil is in the details" - Stick to ARM level models
- Already at ARM level it is a serious challenge to
achieve rigorous verification and adequate test
coverage - Invest in efficient schema mapping tools to
achieve interoperability - Serious doubt that the STEP AIM / MIM route will
ever be successful for interoperability - Python is an excellent language to implement
EXPRESS data models - Very flexible, very short and effective
development cycles - Performance confirmed for datasets up to 100,000
instances
26Recommendations
- EXPRESS data modeling
- Only use constructs that can be mapped with
minimum semantic loss to most target programming
languages and to other modeling environments like
UML2, XML/Schema following the MDA - High quality standard data models require such an
investment that they should be transferable
between different data modeling environments - Avoid complex entity instances, SELECT, multiple
inheritance, implicit ANDOR subtypes - Check expressions and algorithms in DERIVE,
INVERSE, UNIQUE, WHERE and RULE for performance
using profiling on interface implementations - Naive implementation may cause huge performance
penalties - Formalize model verification as much as possible
using WHERE rules and RULEs - They act as built-in test cases, that
automatically get executed in any implementation - Do graphical presentation in UML class diagrams
rather than now outdated EXPRESS-G - Much better communication to most implementers
- Use code generation as much as possible also for
documentation - Split standard into core protocol and runtime
loadable ISO 10303-21 dictionary - Simple approach that greatly enhances future
extensibility at affordable cost
27STEP-TAS roll-out plan
Note Resources between square brackets, e.g.
ESA
radiative
conductive
(1) Complete CC1 3 ESA
One week training course for developers at ESTEC
ESA developers
Intermediate TASverter release
Transfer ESARAD and THERMICA modules to
developers (ESA, Alstom, Astrium)
Assist Alcatel Maya upgrade/implementation CC1
3 ESA, Alcatel, Maya
(2) Develop CC2 4-7 (kinematics mission
definition) ESA, Alstom, Astrium
(3) Develop CC8 9 (ESATAN with simple MORTRAN)
ESA, Alstom
(4) Develop CC10 11 (ESATAN with full MORTRAN)
ESA, Alstom
(5) Develop CC12 (test results data) ESA
Present results at ESTEC workshop
Present results at ESTEC workshop
Standardise STEP-NRF STEP-TAS in ECSS ISO
ECSS WG chaired by ESA
STEP-TAS interfaces in US tools (targets TRASYS,
RADCAD, TSS, SINDA/FLUINT, SINDA-G) TBD
Support TASverter external release (helpdesk)
ESA
28Closing statements
- ESA is fully committed to making STEP-TAS a
success - Funding and maintaining robust open data exchange
standards and software is fully in line with the
ESAs mandate as an Agency - Its a key element in Thermal and Space
Environment Analysis Software Harmonisation - The user community as a whole will benefit from
reliable STEP-TAS middleware - Both end-users and developers
- Our hope is that it will create a higher level
playing field with healthy competition between
the analysis tools while still safeguarding the
long term interests of end-users - ESA open source licence agreement is in final
stage of approval - Official release of STEP(-TAS) support software
as OSS expected shortly - Licence modeled after NASA Open Source Agreement
(see http//www.opensource.org) - See University of Manchester presentation on
expressik for details on upcoming OSS EXPRESS
interface kit (supporting general EXPRESS parsing
and C, C, Python code generation)
29References
- ISO 10303 (STEP) standardshttp//www.tc184-sc4.or
g - STEP-TAShttp//www.estec.esa.int/thermal/tools/st
andards.html - TASverterhttp//www.estec.esa.int/thermal/tools/t
asverter.html - Hierarchical Data Format (version 5)
HDF5http//hdf.nsca.uiuc.edu - European Cooperation for Space Standardizationhtt
p//www.ecss.nl - Python (freely available open source scripting
language)http//www.python.org - SWIG (freely available open source programming
language interface generator)http//www.swig.org - OMG Model Driven Architecturehttp//www.omg.org/m
da - SysML (UML2 profile for System Engineering)http/
/www.incose.org