Www.krates.ee Next steps from the developers viewpoint Tõnu Näks IB Krates, Estonia 23/09/2009.

Slides:



Advertisements
Similar presentations
Bringing Procedural Knowledge to XLIFF Prof. Dr. Klemens Waldhör TAUS Labs & FOM University of Applied Science FEISGILTT 16 October 2012 Seattle, USA.
Advertisements

Software change management
Configuration management
Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
Apache Struts Technology
ECMDA workshop Thales ATM experience in using MDE ECMDA Workshop From code centric to model centric software engineering Bilbao 11 July 2006.
Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
Alternate Software Development Methodologies
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
1 SWE Introduction to Software Engineering Lecture 22 – Architectural Design (Chapter 13)
DCS Architecture Bob Krzaczek. Key Design Requirement Distilled from the DCS Mission statement and the results of the Conceptual Design Review (June 1999):
Application architectures
The Architecture of Transaction Processing Systems
Apache Struts Technology A MVC Framework for Java Web Applications.
1 Chapter 7 Design Implementation. 2 Overview 3 Main Steps of an FPGA Design ’ s Implementation Design architecture Defining the structure, interface.
Introduction to Software Testing
Getting the Most Out of Blue Mountain RAM
Application architectures
Anne Mascarin DSP Marketing The MathWorks
Professional Informatics & Quality Assurance Software Lifecycle Manager „Tools that are more a help than a hindrance”
This chapter is extracted from Sommerville’s slides. Text book chapter
Overview of the Database Development Process
Framework for Automated Builds Natalia Ratnikova CHEP’03.
M Gallas CERN EP-SFT LCG-SPI: SW-Testing1 LCG-SPI: SW-Testing LCG Applications Area GridPP 7 th Collaboration Meeting LCG/SPI LCG.
Assurance techniques for code generators Ewen Denney USRA/RIACS, NASA Ames Bernd Fischer ECS, U Southampton.
Codeigniter is an open source web application. It occupies a very small amount of space in the memory and is most useful for developers who aim to develop.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
Database structure for the European Integrated Tokamak Modelling Task Force F. Imbeaux On behalf of the Data Coordination Project.
Service Computation 2010November 21-26, Lisbon.
© 2008 IBM Corporation ® IBM Cognos Business Viewpoint Miguel Garcia - Solutions Architect.
Gene-Auto development status and support Andres Toom IB Krates, Estonia 23/09/2009.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
NiceFC and CMF Introduction Ivan Deloose IT-IS Custom Windows Services for Controls Applications.
Continuous Integration and Code Review: how IT can help Alex Lossent – IT/PES – Version Control Systems 29-Sep st Forum1.
MotoHawk™ Components Scalable, Secure, Model-Based Design of Embedded Systems.
FITTEST F UTURE I NTERNET T ESTING (ICT , ) Industrial Track of the Seventh IEEE International Conference on RESEARCH CHALLENGES in INFORMATION.
Vendor Presentation SigAda 2005 George Romanski
Ana-Elena Rugina (ASTRIUM Satellites) © EADS ASTRIUM. All rights reserved. September 2009 Astrium Activities around Gene-Auto in 2009.
Server to Server Communication Redis as an enabler Orion Free
Slide: 1 Copyright © 2009 AdaCore GeneAuto for Ada and SPARK A verifying model compiler GeneAuto2 meeting (Toulouse) September 2009 Matteo Bordin
Proprietary Information GeneAuto at Rockwell Collins France Status.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Aleph Version Maintenance. Version Maintenance Requirements for Aleph Stability Control Minimum changes for user Systematic patch application.
Design of an Integrated Robot Simulator for Learning Applications Brendon Wilson April 15th, 1999.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
Improving Software with the UW Metronome Becky Gietzel Todd L Miller.
Satisfying Requirements BPF for DRA shall address: –DAQ Environment (Eclipse RCP): Gumtree ISEE workbench integration; –Design Composing and Configurability,
Pavel Nevski DDM Workshop BNL, September 27, 2006 JOB DEFINITION as a part of Production.
Software Systems Division (TEC-SW) ASSERT process & toolchain Maxime Perrotin, ESA.
TRIUMF HLA Development High Level Applications Perform tasks of accelerator and beam control at control- room level, directly interfacing with operators.
Ganga/Dirac Data Management meeting October 2003 Gennady Kuznetsov Production Manager Tools and Ganga (New Architecture)
CS223: Software Engineering Lecture 31: Acceptance Testing.
Viewpoint Modeling and Model-Based Media Generation for Systems Engineers Automatic View and Document Generation for Scalable Model- Based Engineering.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
DECTRIS Ltd Baden-Daettwil Switzerland Continuous Integration and Automatic Testing for the FLUKA release using Jenkins (and Docker)
1 Middle East Users Group 2008 Self-Service Engine & Process Rules Engine Presented by: Ryan Flemming Friday 11th at 9am - 9:45 am.
Using Ada-C/C++ Changer as a Converter Automatically convert to C/C++ to reuse or redeploy your Ada code Eliminate the need for a costly and.
Maintaining software solutions
Validation & conformity testing
Continuous Automated Chatbot Testing
Introduction to Software Testing
Component-Based Software Engineering
QGen and TQL-1 Qualification
QGen and TQL Qualification
Lecture 1: Multi-tier Architecture Overview
Standard Scripts Project 2
Presentation transcript:

Next steps from the developers viewpoint Tõnu Näks IB Krates, Estonia 23/09/2009

Challenges DO-reglemented development v.s. open community Management of the requirement process Consensus v.s. different user groups Qualification v.s. flexibility Scalability and scope Dedicated scope v.s. “ critical mass ” of functions Size and intent of documentation The scope and level of verification activities Financing and business models Consortium-based development v.s. traditional vendor-user relation Return on investment for users and developers! Organising the development Critical mass of developers! Responsibility distribution

Development goals Long term Performing exhaustive verification Qualifying the toolset for industrial usage Short term Increasing the robustness of the tool Performing verification and improving the documentation Extending the functionality Growing the user base Identifying requirements on specialised tool-chains

Ongoing tasks (robustness, verification, features) Maintenance for Airbus France and EADS Astrium Ada language backend with AdaCore Support for community and parallel projects (e.g. EDONA) Dissemination and marketing

Increasing the user base. Primary usage Qualified code generator for Simulink/Scicos/??? models Long term maintenance guarantee supported by open- source nature of the tool Platform for making customised tool-chains Secondary usage (not targeted, but possible) (Low-cost?) replacement for RTW in code generation (Low-cost?) replacement for RTW in simulation support

External contributions Active contribution – dedicated development /maintenance Passive contribution – flat fee maintenance (

Extending the functionality SysML importer Goal: provide an alternative input (ideally free from vendor restrictions) Tasks: define suitable subset of SysML, develop the importer Simulink exporter Goal: make the importer independent from Simulink/Stateflow file syntax Tasks: develop a Matlab script that converts model to GASystemModel language Support for subset of Matlab language Goal: support functions defined in Matlab language Tasks: define approach for handling function interface (block inputs and parameters, Matlab workspace), define the supported subset, develop the transformation

Extending the functionality Verification tool(s) to check the conversion from system model to code model Goal: Facilities for verification of the model either to complement model editor verification (e.g. Simulink) or to check transformation WCET-based optimisation Goal: Improve the performance of generated code Support for target adaptation Goal: Allow target-specific optimisations either based on RTW parameters or separate configuration mechanism

Supporting infrastructure Automating the testing environment Work ongoing at IB Krates (basic testing framework in use) The primary goal is the validation of requirements The long-term goal is to support requirements-based testing Development of qualification documentation Work ongoing in scope of EADS demonstrators project (small scale updates) Experimentation on Wiki-based environments together with AdaCore (the AdaPrinter project) Change management and community support Currently change management tasks spread in different environment GForge, gPM, Mantis, gPMPlus … The goal is to provide a single front-end for bug/feature request reporting, costing and change management

The testing environment ( status quo ) A framework for composing and executing test scripts Test scripts composed of steps, each performing one elementary operation using an appropriate agent Existing agents: Code generation (C + Ada) Code compilation and linking (C + Ada) Code execution Comparison of generated code with reference code Comparison of execution result with simulation result Matlab script for generating test vectors from Simulink model Test scripts compose a testsuite that can be executed fully automatically Isolated test server (controlled through a web interface) to guarantee independence of development environment

The testing environment (plans) Integration with requirement management environment to form a “ qualifying machine ” (e.g. using FitNesse) Improved reporting Service to execute tests with contributor patches Allows contributor to upload planned change to test server and get feedback if it passes all tests in the main trunk

Qualification documentation (points to consider) Significant amount of documentation is still to be developed or updated to qualify the toolset Document-based approach is difficult to handle – need for requirement management environment (preferably open- source) There is some evidence that requirements will conflict for different types of users Strict limitations v.s. large user base (e.g. type inferencing) Possibility to exclude unnecessary functionality Preliminary experiments on-going with maintaining parallel sets of requirements and allowing to compose tool configurations corresponding to each requirement set on source-code level

Follow-up projects OPEES Participation decided, preliminary feedback from local PA positive Requested to show a “tangible result” (i.e. new features, not just qualitative updates and new business model) Financing and return on investment? OpenDO ( Participation through developing components for the “qualifying machine” and experiments with AdaPrinter requirements Gene-Auto2 ? ESA ?