Open Concurrent Design Tool ESA Community Open Source Ready to Go! Hans Peter de Koning (ESA) Sam Gerené (Rhea Group for ESA) Ivo Ferreira (Vitrociset for ESA) Andrew Pickering (Vega for ESA) Friederike Beyer (ESA) Johan Vennekens (ESA) ESA UNCLASSIFIED For Internal Use
Topics 1. Why OCDT and where are we now? 2. Concurrent Design / OCDT Community Portal 3. Status of ECSS-E-TM-10-25 4. OCDT Software Overview 5. Concurrent Design User Board (CDUB) 6. Next Steps slide 2
Why an Open Concurrent Design Tool? ESA CDF was set up with the Integrated Design Model in MS Excel End-user tool and data exchange via file server Very successful to develop and support the concurrent design process Provided to and deployed in many European concurrent design centres However, reached limits of what can reasonably be done in Excel in particular w.r.t. software maintenance and integration with other tools Needed a modern extendible tool for ESA CDF and the CD community Based on ECSS-E-TM-10-25 data model developed in 2006-2010 Keeping the good points of IDM and lessons learned Maintainable client-server architecture with robust data base server Preferably based on open source components to allow wide use Including methods and toolkits for integration of Domain Specific Tools Extendible to multi-site distributed design sessions Supported with a Community Portal for developers and end users slide 3
Where are we now? After failure to turn the initial OCDS into an operational tool, ESA decided to develop with mixed ESA/industry team the OCDT Started 2012 version 1.1 completed in 2013 Implements validated ECSS-E-TM-10-25 Annex A Data Model (v2.4.1) Purely based on freely available open source software components OCDT itself distributed under ESA Community Open Source licences Successfully beta-tested in April-June 2014 in ESA CDF Currently in operational use in ESA CDF study for ATHENA Two year OCDT Deployment, Enhancement and Exploitation contract kicked-off per August 2014 New OCDT Community Portal available since March 2014 Concurrent Design User Board (CDUB) started since July 2014 slide 4
Concurrent Design / OCDT Community What is the Concurrent Design / OCDT Community? From https://ocdt.esa.int/projects/ocdt/wiki/what_is_the_ocdt_community The Community consists of users and developers who are interested to share and exchange information, experiences, models and tools related to concurrent engineering for space applications Only persons working for an organisation that legally resides in an ESA member state or cooperating state qualify to become a member of the community (as restricted in the OCDT Software Licences) See What is ESA? on ESA website for the current list of eligible states http://www.esa.int/about_us/welcome_to_esa/what_is_esa Austria, Belgium, Czech Republic, Denmark, Finland, France, Germany, Greece, Ireland, Italy, Luxembourg, the Netherlands, Norway, Poland, Portugal, Romania, Spain, Sweden, Switzerland and the United Kingdom. Canada takes part in some projects under a Cooperation agreement. Hungary, Estonia, Latvia and Slovenia are European Cooperating States. Other countries have signed cooperation agreements with ESA. slide 5
Community Portal https://ocdt.esa.int mailto:ocdt-support@esa.int slide 6
Community Portal Features For End-Users News Information sharing via wiki Discussion forums Helpdesk (to be deployed in 2015) Issue reporting For Software Developers (additionally) Issue tracking and task management Agile software engineering (SCRUM) process support Git software configuration control repository GitLab integration for code review and controlled workflow Access to Jenkins continuous integration (build and test) server Access to SonarQube code quality checking slide 7
Status of ECSS-E-TM-10-25 System engineering Engineering design model data exchange (CDF) ECSS-E-TM-10-25A available at http://www.ecss.nl since October 2010 as PDF document Warning: Parts of main text and figures are now out-of-date w.r.t. annexes Updated annexes published electronically via permanent URL on Community Portal http://www.purl.org/ecss/ecss-e-tm-10-25/annex-a http://www.purl.org/ecss/ecss-e-tm-10-25/annex-b http://www.purl.org/ecss/ecss-e-tm-10-25/annex-c Annex A Data Model v2.4.1 (12 Nov 2013) is stable release validated in OCDT software Annex B Reference Data Library Informal Generic RDL in OCDT Feature requests, improvements, bugs via issue tracker on Community Portal slide 8
ECSS-E-TM-10-23&25 Approach: Standards and Tool Implementations Semantic Data Model Standard Semantic Data Model Master Definition of Concepts addresses what not how Reference Data Libraries (RDLs) Runtime loadable predefined objects, including QUDV and Categories Automated transformations Runtime use Generated Software Implementations Derived Logical and Physical Data Models Database Database Database Tool Tool Tool Interoperable tools and databases (including adapters around existing tools) 9
OCDT implements ECSS-E-TM-10-25A through code generation Annex A Standard Semantic Data Model in UML (MagicDraw) Annex A at version 2.4.1 (12 Nov 2013) SQL database scripts xmi_verter (OCDT code generator) JSON meta-model C# class library Python class library XML Schema Excel workbook for data model analysis slide 10
OCDT Architectural Overview PostgreSQL Protocol over TCP/IP http(s) REST protocol (on standard ports 80 or 443) GET, POST, content is JSON Domain 1 ConCORDE Domain 2 ConCORDE Persistent Data Store (PostgreSQL RDBMS) Firewall (optional) ConCORDE OpenLDAP Server (optional) Web Services Processor (nodejs on Google V8) OCDT Server DST (Domain Specific Tool) OCDT Clients ConCORDE Domain 3 Domain N slide 11
ConCORDE End-User Tool ConCORDE is an Add-In on top of Microsoft Excel 2010 Stands for: Concurrent Concepts, Options, Requirements and Design Editor Reduce learning curve as much as possible Everybody knows Excel Stick to Excel -like user interface Limited need for training Leverage knowledge and lessons learned from existing CDF IDM One workbook for each domain of expertise ( discipline ) ConCORDE tab on the ribbon Additional navigation panes for interaction with OCDT server Flexibility of spreadsheet workbooks To quickly create interfaces with any other kind of tool To quickly create or modify a calculation worksheet and/or script slide 12
ConCORDE Screenshots (1/2) Reference Data (Parameter Types, Categories, Units & Scales, Rules, ) z Site Directory Data (Models, Catalogues, Persons, Participants, ) slide 13
ConCORDE Screenshots (2/2) Engineering Model or Catalogue (Options, Element Definitions and Usages, Parameters, ) Excel Workbook OCDT demonstration this afternoon 12:25 and tomorrow 08:30 slide 14
OCDT Server Web Services Processor Computer language independent REST API using HTTP(S) GET and POST Implemented in CoffeeScript / JavaScript on nodejs (nodejs.org) Flexible, robust and fast Implements full role-based permission handling Persistent Data Store Fast PostgreSQL implementation using dedicated object-relational mapping (generated from ECSS-E-TM-10-25 data model) with convenient SQL VIEWs Scales well and is relatively easy to install Database partitioning: one SiteDirectory DB and a separate DB for each Engineering Model Very good performance Proven to service updates to 25 concurrent users twice a minute In beta-test period Apr-Jun 2014 zero bugs and only one reboot necessary! slide 15
Status of OCDT Software Distributed under ESA Community Open Source License Server (WSP and PDS) stable since v1.0.1 Dec 2013 OCDT successfully beta-tested in CDF Pilot Study (Jun 2014) OCDT now used in ATHENA CDF Study (Sep-Oct 2014) C# Software Development Kit (class library) Initial v1.1 available Python SDK (class library) Experimental proof-of-concept Initial ESA-internal tutorials developed and given Including recorded videos for self-study Development, full status and distribution via Community Portal Source code via GIT repository Initial version of Generic Reference Data Library Contains majority of ISO/IEC 80000 quantities and units Proof-of-concept Domain Specific Tool integration in ESA R&D projects for spacecraft vulnerability and CE of System-of-Systems slide 16
OCDT Deployment, Enhancements and Exploitation ESA Contract Activity kicked-off August 2014 Duration: two years, i.e. ends summer 2016 Contractors: RHEA (Belgium, prime), Critical Software (Portugal, sub) Assists ESA and Community OCDT bug fixing, new features and improvements Development of training material On-line helpdesk (to be activated in 2015) Maintenance of the OCDT Community Portal Meant to help start up the OCDT Community Goal is to reach a self supporting community at end of contract slide 17
Concurrent Design User Board (CDUB) The Concurrent Design User Board is a body to guide the evolution of concurrent design methods and tools In particular maintenance and exploitation of an interoperable platform based on ECSS-E-TM-10-25 Engineering Design Model Data Exchange (CDF), of which the Open Concurrent Design Tool (OCDT) is the first implementation Emphasis is on space systems in the early lifecycle phases (0, A and B) The CDUB represents the community of practitioners of concurrent design and engineering for space applications in the ESA Member States and Associated States CDUB was established with first web meeting on 10 Sep 2014 slide 18
CDUB Objectives / Goals To establish and execute a long-term strategy and plan for the development and exploitation of ECSS-E-TM-10-25, the Open Concurrent Design Tool (OCDT) and supporting interoperable software To represent the voice of the customer, collecting and feeding back the user experiences from the participating concurrent design centres To promote and validate the use of ECSS-E-TM-10-25 and OCDT within participating organisations and their partners as a community platform To propose, prioritize and endorse new features for and improvements to ECSS-E- TM-10-25, in particular its Annexes A, B and C, as well as its intended future evolution into a general ECSS Space System Data Repository approach To propose, prioritize and endorse the deployment, enhancement and exploitation of OCDT Note: This includes adaptors to integrate so-called domain specific tools (DSTs) as well as smaller feature requests and improvements. To promote and evaluate contributions-in-kind to the OCDT platform slide 19
CDUB Organization and Membership Membership is contribution-in-kind, at own cost Three meetings per year (two web, one face-to-face) Meeting #2 this afternoon at SECESA ESA provides the chair and secretariat first name last name organisation country Dominique Denier-Gegu Airbus Defence and Space France Claudio Portelli ASI Italy Jean-Luc Le Gal CNES France João Esteves Critical Software Portugal Chahe Adourian CSA Canada Barry Chadwick Daysha Consulting Ireland Antonio Martelo DLR Germany Anton Ivanov EPFL Switzerland Massimo Bandecchi ESA N.A. Hans Peter de Koning ESA N.A. Jan-Christian Meyer OHB System Germany Arne Matthyssen RHEA Group Belgium Todor Stoitsev Telespazio Vega Germany Gerald Garcia Thales Alenia Space France Mauro Pasquinelli Thales Alenia Space Italy slide 20
Next Steps Next OCDT software release targeted for December 2014 Planned to do two releases per year, typically in June and December Dec 2014 release will contain ConCORDE and OCDT Server release useable outside ESA CDF Initial set of software documentation and end-user tutorials First official release of Generic Reference Data Library First half 2015 Small improvements of ECSS-E-TM-10-25 Fully operational community open source software development environment including full workflow and quality assurance On-line helpdesk via Community Portal OCDT software release in June 2015 Deployment of OCDT on all ESA CDF studies slide 21
Acknowledgements We want to acknowledge our industry team developers for their work to help create OCDT Daysha Consulting, Ireland Chris Dunne Artur Philibin e Silva Tanveer Kahn Clifton Evans Tomas Rudkowski Critical Software, Portugal Pedro Pinto Francisco Costa Mario Rui Baptista slide 22