From: "Patrick SCHOULLER"Subject: IST / appel 5 / ESA & université de Frankfurt recherchent un partenaire pour un projet dans la priorité 2.5.5 Software services Madame Monsieur l' ESA : Agence spatiale européenne, recherche un partenaire pour un projet qu'elle souhaite soumettre dans le cadre du 5° appel du programme IST European Space Agency the European Space Agency (ESA/ESOC) is interested to participate to a call 5 IST project (STREP or IP). See the description of their interest here under. This case study will be conducted together with my group at the Goethe University of Frankfurt. So ESA/ESOC and Frankfurt University could join in a proposal. he area that best fit this case study is 2.5.5 Software Services. Objectives of the Activity: - To propose a methodology to model existing ESOC Ground Segment Data System (legacy) applications in a way that is independent from the specific platform (e.g. hardware, middleware, language) in which the application is written - To propose a methodology that allows the redeployment of ESOC Ground Segment Data System existing (legacy) applications in a new platform. - To propose a methodology to allow the systematic automatic validation and verification of applications regardless of the platform where they run - To propose a methodology to characterise existing ESOC Ground Segment Data System (legacy) applications from a quality point of view - To propose a methodology that can identify changes that can be performed on existing applications in order to improve them from the quality point of view - To identify specific tools and techniques to support the methodologies proposed Relevance of the proposal to the ESA future programmes: The results of the activity are expected to change the current approach to software development and evolution. Firstly, the ability to retrieve UML models from existing programs will change the approach to reengineering, currently based on a full redevelopment of specific areas of an application. Secondly, the ability to define and perform automated systematic validation and verification, independently of the platform, will shorten the validation lifecycle. This will solve the problem created by the fast pace of hardware evolution and will allow changes to the platform baseline without impacting the software reliability and without the high costs associated with a full revalidation. Background :The maintenance of ESOC Ground Segment Data System legacy software represents a major investment for any organization. The term legacy software does not only refer to "old applications running on mainframes" but should be understood as "any production-enabled system". Similarly, the objective of maintenance should be understood in its most generic meaning, i.e. "to modify an existing software product while preserving its integrity" . This comprises bug corrections but also modifications to the code and addition of functionality. In the case of ESA, the maintenance of legacy application is also a major part of the daily work. The introduction of new functionality into these applications has to be balanced with the need to preserve their reliability. The fact that many of these applications are being used to control flying missions adds an extra level of complexity to the task. Some of the typical problems that can be found are - The enormous effort that represents the validation of the modified system - The strong dependency on the specific platform where the software has been validated. Migration to a new platform (even if only the operating system changes) implies that a full revalidation has to be run - The need to redesign full areas of the application from scratch, given that the benefits of reusing the existing code are difficult to evaluate - When designs are modified to be reused, the difficulties in verifying the new design. ESA expertise in the field: ESA / ESOC has run several successful projects that are connected to the topic. In 2003 the whole code of SCOS-2000 (ESA’s mission control system and a very large application) was reorganized and repartitioned. The reorganization was supported by a tool developed during an internal study for this specific purpose. The reorganization divided the SCOS kernel (which up to this point had been provided as a single workspace) into a hierarchy of 7 layers with clear dependencies between them. Further reorganization of the code was prevented by the complexity of the relations between subsystems and the limitations of the tool In 2004 an internal study analysed the Model Driven Architecture (MDA) approach. The study proved that it was possible to build code based on a UML specification with the support of a tool. However, the tool (and apparently the MDA approach) was not able to reverse engineer existing applications. One of the lessons learned from the project is that the support from tool vendors is crucial in MDA related work. In 2004 a ESA General Study Programm study was started to identify technologies that can be used in test automation. One of the languages identified is TTCN-3 . The language capabilities are very promising, but its implementation is quite complex. Among other things, the development of TTCN-3 test cases requires a full compilation cycle. This adds extraordinary complexity to the testing process. Brief Description : The Activity will provide the means to 1 -Improve legacy software without performing full reengineering 2 -Speed up the validation cycle 3 -Remove platform dependencies 4 -Improve the current approach to maintenance 5 -Verify the modified architectural designs before introducing changes to the code There are four main lines of investigation that can be exploited: - The Model Driven Architecture approach . Model Driven Architecture (MDA) provides the means to isolate the business and application logic from the specific platform technologies where the program runs. Central to the MDA approach is the concept of Platform Independent Model (PIM), which is based on the UML standard and is able to describe a model not only in terms of structure but also in terms of dynamic behaviour. Although MDA provides a good baseline for new applications, it fails to integrate legacy code. This has prompted the Object Management Group (OMG) to create a new working group dedicated exclusively to modernisation. - The work of the Architecture Driven Modernisation (ADM) group. This group is providing standards that will allow the creation of PIMs based on existing software and will change the process of migrating of software to another platform by means of standards maps. The use of maps allows the transformation from platform independent model to a specific piece of software than runs on a concrete platform. In addition to this the group is working on a set of metrics specific to legacy software and a number of criteria that allow the evaluation of the benefits of reengineering a specific legacy subsystem. - The work of the U2TP consortium. The U2TP consortium is working on a specific UML testing profile, i.e. an extension to UML that will allow the definition of tests for the structural and behavioural analysis of the UML models. The testing profile will be able to interoperate with existing test technologies for black-box testing. The importance of this interoperability has to be stressed: many of the existing test automation technologies such as TTCN-3 are successfully used in the telecommunications world (mostly in the validation of protocols), but are hardly used in software development. The reason for that can be found in the complexity of developing the code to build the test cases and link them to the system under test (SUT). Using UML profiling mechanisms and a specific mapping this code could be generated automatically. - The advances in the field of automatic verification of UML models Using the formalized UML description of the application, it is possible to verify that the behaviour of the model corresponds to the intended use (as expressed in the requirements) and to quickly evaluate changes to the design. These developments in automatic verification techniques have been taken on-board by several tool vendors and are offered now as part of the tools. In a second Phase, one ESA legacy Data System will be modelled in UML-2 and the source code will be generated automatically. This code will then be compared with the legacy software (developed with the OO paradigm in C++). Several iterations of the model will allow at the end to have an automatically generated code that is very similar to the legacy software. This will open the way in which Data Systems are developed at ESA / ESOC. UML-2 / MDA associated tools will also be assessed. Pour plus d'information : Roberto Zicari Ce message vous est retransmis par : Patrick SCHOULLER Ministère de l'Economie des Finances et de l'Industrie Direction Générale des Entreprises - STSI Représentant national aux comités des programmes IST, E-TEN, E-CONTENT, SIAP, MODINIS, IDABC Point de contact national E-TEN et SIAP site : http://www.telecom.gouv.fr vous pouvez retrouver tous les messages diffusés sur http://www.evariste.org/actu/schouller