=Paper= {{Paper |id=Vol-1728/paper4 |storemode=property |title=Designing a System Engineering Environment in a Structured Way |pdfUrl=https://ceur-ws.org/Vol-1728/paper4.pdf |volume=Vol-1728 |authors=Anna Todino,Ivo Viglietti,Bruno Tranchero,Ruben de Juan Marín |dblpUrl=https://dblp.org/rec/conf/ciise/TodinoVTJ16 }} ==Designing a System Engineering Environment in a Structured Way== https://ceur-ws.org/Vol-1728/paper4.pdf
    Designing a System Engineering Environment in a
                     structured way

                     Anna Todino                                                            Rubén de Juan Marín
                     Ivo Viglietti                                                    Instituto Tecnológico de Informática
                                                                                                 Valencia, Spain
                   Bruno Tranchero
        Leonardo-Finmeccanica Aircraft Division
                     Torino, Italy
                                                   Copyright © held by the authors.

Abstract— Defining and designing a System Engineering                     Keywords—development process; SPEM 2.0; System
Environment in a complex industrial context is not a                  Engineering Environment; Engineering Methods; Engineering
trivial task. Experiences, best practices, internal rules,            tool functions, IOS capability, Tool taxonomy, Tool Integration;
company procedures and applicable standards, all play a               Tool-chain
role in the definition of a development process covering
the different phases of development of a complex                                              I. INTRODUCTION
product. Engineers from various industrial domains                        Within the industrial domains, it is a common practice to
need to develop complex systems in accordance with                    have a well-defined development process in order to
System Development Life Cycle Processes, defined                      manufacture a given product. A product development
within domains themselves, to assure project success in               process defines a workflow of activities and related work
terms of time-to-market and product quality. These                    products. A product development process is always
success criteria require reducing the development costs               supported by a proper System Engineering Environment
and applying an appropriate Design to Cost                            (SEE) that is a framework which defines software, in terms
methodology to the different engineering projects, and                of software tools used for development, hardware where the
the use of best practices is a mean to achieve this goal.             SEE is deployed, and data in terms of work products, models
Best practices consist of cross-domain and/or cross-                  and other information relevant to the specific activities
project engineering methods and their application in the              defined in the product development process. So the
development of systems, where a specific engineering                  definition and configuration of a proper SEE is an essential
                                                                      part of a development process. One of the difficulties lies in
method addresses a preferred workflow by means of
                                                                      the fact that depending on the available resources and on the
tools, involved artefacts and required interoperability               skills of process engineers, it is not always straightforward to
between tools. Since the choice of a development tool can             define a SEE.
have some influence on the resulting system design, the
characteristics of such tool must be clearly understood                   The CRYSTAL Platform Builder (PB) is a solution based
before the selection is made, and often the selection of              on the availability of an engineering methodology and the
tools is demanded to the ICT department, that                         related engineering tools and also on an already defined
sometimes is not completely aware of the system                       development process, to support the definition and
development engineers’ needs. The idea is to reduce the               configuration of an instance of the SEE to be used by
development costs by reducing the time required to                    company engineers to manufacture the product. This
                                                                      approach starts from an existing product development
select the tool-set using ICT skill, process knowledge and
                                                                      process, which is the combination of a development process
applying cross-project engineering methods in order to
                                                                      and of a product specific use case, and from Engineering
specify and select the best solution. In this paper is                Methods (EM) applicable within the engineering
presented a solution that is one of the outcomes of the               methodology and defined during the CRYSTAL project.
CRYSTAL Research Project, for selecting a System                      This article is mainly composed by two sections:
Engineering Environment that satisfies the development
process needs and supports engineering methods, which
are formalized through SPEM 2.0.                                          • Concepts and meta-models: this is an overview and
This solution is based on the Platform Builder Modeler,                     specification of concepts and meta-models dealing
which allows to instantiate and validate a System                           with PB methodology
Engineering Environment that includes tool-chain, IT
infrastructure and data, dedicated to accomplish a                        • Platform Builder Modeler: this is an overview of the
selected development process.                                               implemented solution based on the specified
                                                                            methodology.




   Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                pubblicare e utilizzare
            II. CONCEPTS AND META-MODELS                             • Validation phase: where the tool-chain is evaluated
                                                                       against some business and technical constraints
     A. State of the Art                                               within the organization context.
    Nowadays even if the definition and formalization of the          Many different types of data must be classified and
system development environment is presented as a set of           formalized in order to be used within different phases. This
consolidated formal steps, for example included in System         task was performed in the CRYSTAL project, where meta-
development plan document, at industrial level no meta-           models and data-models where defined. The result of the
models are available to describe a SEE. The topic is              Tailoring phase is a Tailored Process, describing activities to
challenging and this is also demonstrated by the several          be performed and engineering methods to be applied to
research initiatives in the fields; for instance DevOps -         develop a product according to the specified Use Case. The
toolchain group [7] is a tentative to collaborate about tool-     Tailored Process will contain information required to enable
chain taxonomy, in order to classify tools, following             configuring a SEE using the PB Modeler. In the SEE
software development life cycle phases. Tool-chain                configuring phase, using a catalogue of the available tools
taxonomy is also addressed by CRYSTAL PB approach                 and their functionalities, a PB user will be able to define the
where standardization and formalization of tools and tool-        best SEE solution for the Tailored Process in the given
chain information and features is one of the major goals.         context. The Validation phase facilitates the configuration of
Another       example     is     the      SafeCer       project   a consistent and usable SEE. In the validation phase the SEE
(http://www.safecer.eu), an ARTEMIS JU project, which             configuration shall be adapted to satisfy requirements and
provides CTF (Certification Tool Framework) that is a             constraints for instantiating the SEE on the company IT
software platform that aims to integrate the different tools in   infrastructure, thus producing the optimal solution in the
a unique framework and allows building a tool-chain for           provided company/organization context. Project data
certification purposes.                                           encompasses all information to set-up the SEE for a specific
    While SafeCER allows building a tool-chain for                Tailored Process and project and it addresses mainly
certification purposes, the CRYSTAL PB Modeler allows             information relevant to user management and product
instantiating and validating a SEE, that includes tool-chain,     management.
IT infrastructure and data, dedicated to accomplish a
selected development process and it is based on tool
descriptors that formalize tool information within
CRYSTAL PB.

     B. PB Approach Workflow
    The PB approach is based on process activities definition
and relevant EM to be applied. Generally in a system life
cycle process, activities to be performed for developing a
system are defined together with work products to be
produced and roles skilled to perform activities. This
information is used by the PB approach to instantiate a SEE,
to support the identified process in terms of engineering                    Fig. 1. SEE configuration and instantiation workflow
methods selected for an identified use case context, and to
select proper tools to be used in the identified engineering           C. PB Conceptual Meta-model
methods. This approach requires the definition of a proper            Data and information, involved in the PB workflow, are
meta-model to facilitate the description of the process and       represented in the PB conceptual meta-model (Fig. 2), where
for enabling the mapping between process activities,              elements and their relationships for configuring the SEE are
engineering methods and functions provided by tools. While        depicted. Some elements are aggregation of formalized data
a development process describes activities to be performed in     and they are defined as catalogues: Activity catalogue,
an engineering process, engineering methods describe how          Engineering Methods (EM) catalogue, Tool catalogue and
to perform the different activities addressing engineering tool   Engineering Tool Functions (ETF) catalogue. All identified
functions to be applied. Fig. 1 shows the complete workflow,
                                                                  catalogues were populated to be used in different PB phases.
identified in the CRYSTAL project, to configure and
                                                                  Other PB elements specify data needed for PB method
instantiate a SEE. Actually the PB scope encompasses only
                                                                  implementation. Herein each element of PB conceptual
three phases of the complete workflow and implemented in
                                                                  meta-model is defined. The main input for PB Modeler is the
the PB Modeler solution. For each phase different inputs and
                                                                  use case defining the project and the system to be developed
outputs are outlined:
                                                                  in a defined business context. This includes also work
   • Tailoring phase: where the development process is            products and activities to be performed in respect of business
     described and formalized generating the Tailored             process and it is usually documented in natural language and
     Process.                                                     not formalized. Use case information, relevant for the PB
                                                                  scope, is formalized in a process, which describes activities,
   • Configuring phase: where the tailored process is used        roles, artifacts and engineering methods to be applied.
     to select tools and configure the best-fit tool-chain.




   Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                pubblicare e utilizzare
    The process, herein also called Tailored Process, is used      collection of descriptors of tools and their relationships (tool-
to describe all activities and engineering methods to be           chain) through        interoperability. In        this article,
applied for the business context and for the specific use case.    interoperability stands for Interoperability Specification
An activity is a concrete work identified within a                 capability (IOS Capability) which is a specialization of ETF.
development process and it represents a general unit of work
assignable to specific user, with a role, able to perform it. An        D. Process Activity and EM classification
activity is a set of actions that consume time and resources           The tailored process has to be defined in order to
and whose performance is necessary to achieve, or contribute       formalize the development process taking into account EMs
to, the realization of one or more outcomes (artefact). An         to be applied during a system development. In the PB
activity depends on the identified system life cycle process       method this tailoring phase is facilitated by categorization of
and it is specified within system development process.             activities and EMs. Analyzing the needed information to be
Indeed Tailored Process specifies which activities are             used for tailoring phase, the PB method has adopted the
selected for the specific use case, and the system                 Software & Systems Process Engineering Meta-Model
development process, indicated by the                              (SPEM) and identified some SPEM elements to formalize a
                                                                   process in the PB scope using a reference method library [1].
                                                                   The tailored process, defined as a delivery process,
                                                                   encompasses activities, which groups EMs. Activities and
                                                                   EM are related to task element in the SPEM meta-model.
                                                                        The CRYSTAL reference method library includes
                                                                   activities and engineering methods to be used during the
                                                                   tailoring process phase. The activities and EMs
                                                                   categorization was based on different domain use cases. The
                                                                   difficulty to make this classification and definition depends
                                                                   on the fact that the definition of activity is interpreted by
                                                                   engineers. Basically, using the activity definition and the
                                                                   SPEM task definition element, an activity is classified using
                                                                   a name and a description [5], considering that an activity
                                                                   describes a task to be performed within a system engineering
                                                                   life cycle process. Also for EM classification (refer to Table
                                                                   1) is used the SPEM task element but in this case to describe
                   Fig. 2. PB conceptual meta-model                it, the EM definition is applied: an EM describes tasks to be
                                                                   applied to satisfy an activity with support of tools.
use case, is tailored with selected activities and detailed with
Ems. While activity describes a task within a process, EM
specifies how the activity has to be performed and in detail it                            TABLE I.         EM
describes a method which can accomplish a given identified                    Engineering Method               Example
result by defining steps to perform it and also artefacts that
are produced or consumed. An Engineering method is                 Name              Name of the EM as Insert Requirements
formalized using ETFs that should be applied to satisfy it.                          unique identifier.
On the other hand, a tool, that is any software application,                             (Verb + Object)
can be described through the functionalities that it provides.
                                                                   Description       Short    description Identified requirements are
A set of tool’ functionalities, also said ETFs, are used to                          about the EM to be inserted and described into a
define a tool in a formalized way and this helps to select a                         applied.             Requirements database.
tool to satisfy EMs.
                                                                   Work Products     List of Artefacts •       Database-of- requirements
    The core of the PB method is the mapping between               (Artefacts)       handled by EM.
                                                                                                       •       Textual-description
engineering methods and engineering tool functions. In order
to fulfil this mapping, the Engineering tool function              Guidance          Generic type of tool. Requirements repository tool
taxonomy is crucial. Indeed engineering method will be
                                                                   Steps             List of steps to •        Create a new requirement
specified using engineering tool function as well, in this way                       perform the EM.
the mapping between engineering methods and engineering                                               •        Describe requirement
tool functions make semi-automatic the selection of tools.
Engineering tool function identification and categorization
was made in extensive but not exhaustive way in the                    Using this classification of activities and EMs a reference
CRYSTAL project. For different examined use cases,                 method library can be populated and it is considered as the
engineering tool functions were listed and formalized in ETF       activity and EM catalogue.
catalogue to be recognized in the definition of Tool
Catalogue and EM catalogue.                                            E. ETF taxonomy
    The SEE model [4] is configured using both tool                   As anticipated in the PB conceptual meta-model
information and tailored process information, and it is a          paragraph, the engineering tool function taxonomy is crucial




    Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                 pubblicare e utilizzare
for the PB Modeler. To help a PB Modeler end user to                           functionalities and system requirements for its deployment in
configure a SEE, the selection of tools is facilitated through                 an informal way, through brochure or web site, and
the mapping between ETF provided by tools and those ETF                        sometimes Tool vendors provide a formal description using
required by engineering methods.                                               manifest files. A tool descriptor collects in a formalized way
                                                                               all needed information to describe and to characterize
    An ETF is a detailed function of a task that will be                       software tool’s functionalities, system requirements and
performed by means of a tool. Analysing use-cases proposed                     extension relationships. This improves and facilitates the tool
in CRYSTAL and engineering methods, a sort of ETF                              selection based on a non-ambiguous functionality.
classification was identified. ETF has to be identified in a
unique way and it can be used in different tools and also
required by different engineering methods. Since a definition
of ETF is necessary, we have identified different data to be                                    TABLE III.      TOOL PROPERTIES
specified to characterize ETF, and Table 2 shows the main
                                                                                    Name              Description
attributes to be specified. In the PB conceptual meta-model,
ETF are specialized as IOS capability and internal tool                        Id                 Unique identifier for the tool.
function. The difference between IOS capability and internal
                                                                               Name               Name of the Tool. Used for listing purposes.
tool function is the type of ETF: if it is a proper internal
function or if the function addresses interoperability with                    Version            This field supports defining and distinguishing
another tool. An ETF is classified as internal tool function if                                   between different versions of the same Tool.
it manages data and it is not related directly to adapt data to                Vendor             Identifier of the Vendor.
provide/consume to/from another tool. It is any functionality
provided by a tool that performs a functional operation                        Description        Short description about the feature provided by this
within tool itself.                                                                               Tool

                                                                               Open-source        Indicates if the Tool is open-source or not.
    On the other hand, IOS capability is a ETF that
implements interoperability with a different tool, in order to                 License            Type of license
adapt data, to be provided or consumed, and that will be
                                                                               Extended-by        This field is used when the vendor of a tool knows that
managed by another tool. Every type of interoperability                                           this tool is extended by another. Used for stating the
between tools can be considered and interoperability                                              use of IOS adapters (IOS service).
specification can be defined for each kind of tool. Within the
CRYSTAL project, IOS is referring Open Services for                            Extends            This field is used when the vendor of a tool knows that
                                                                                                  this tool extends the features of other tools. Used for
Lifecycle Collaboration (OSLC) specification [3].                                                 stating the use of IOS adapters (IOS service).

                                                                               SW-functions       List of ETFs provided by this tool (Internal tool
                    TABLE II.        ETF ATTRIBUTES                                               function).
     Name         Description                                                  IT-requirement     Specifies the IT requirements of the tool.
ID            Unique identifier for the ETF

Name          Name of the ETF                                                      A software component is defined to describe any kind of
Description   Short description about the ETF.                                 software, both system or application software: tool
                                                                               application, database, server, adapter, service, and so on. A
Type          This field states if this ETF is an IOS service or an internal   generic software component represents information to
              tool function.
                                                                               identify any software implementation to be installed in a
Artefacts     Specify artefacts handled by ETF                                 computer machine.
Tool-class    Tools that can provide this ETF




     F. Tool and Tool-chain Taxonomy
    In the PB scope, tool properties formalization is
important to facilitate tool selection. Indeed in configuring
phase, tools that fit the EM requirements are presented and
an end-user is able to select a suitable solution. Tool
selection facility based on EM coverage, needs the tool
categorization based on ETF classification. Different
properties to describe a tool are listed in Table 3.
    The formalization of a software tool based on ETFs shall
be represented as a generic software (SW) component of
tool-chain, refer to Fig. 3, where elements’ relationships are
depicted. Often, tool vendors give an overview of tools’




     Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                  pubblicare e utilizzare
                                                                                       Fig. 4. SEE meta-model

                                                                    In the SEE model, the tool-chain associated to the
                                                                process is the main information. In the configuration phase,
                                                                the tools selection is based on some required constraints that
                                                                can be technical or business constraints. Technical
                                                                constraints are relevant to tool characteristics, such as
                                                                provided ETFs (IOS and internal tool functions), and IT
                                                                constraints, such as availability of machines and network for
                                                                SEE deployment and installation requirements (system
                                                                requirements). Business constraints are relevant to the type
                                                                of contract, if there exists, with Tool Vendor and company,
                                                                the specific Tool type of contract: such as type of license,
                                                                maximum number of users, and duration of contract.
                                                                Technical and Business constraints are used in the PB
                                                                Modeler to support tools selection in order to configure and
                                                                validate the SEE model.

           Fig. 3. Tool descriptor as a generic SW Component                III. PLATFORM BUILDER MODELER
                                                                   The PB Modeler is the implemented solution of
     G. SEE Meta-model                                          described PB methodology based on EPF Composer, for
    The PB approach mainly addresses the instantiation of a     authoring the process using SPEM language, and some
SEE which is configured through the PB Modeler tool based       added plugins to configure and validate the SEE.
on, and extending Eclipse Process Framework Composer
(EPF) [2]. All the needed information have to be described      A. Core Features
and formalized as specified by the PB approach in order to      Core features correspond to the main features of the PB
make the SEE configuration feasible in a semi-automatic and     Modeler tool implemented to address the PB workflow:
assisted way.
    The SEE is a set of information that specifies: which          1. Tailor the process;
process is used for system development, which engineering          2. Configure the SEE;
methods are applied within the selected process, which
software tools and their characteristics are foreseen for the      3. Validate the SEE;
needed and identified tool-chain links to satisfy engineering      4. Generate the description of the SEE.
methods. All these information are collected and specified in
the SEE meta-model as shown in Fig. 4. A SEE model is the
result of grouping and relating selected information from
identified catalogues.                                             1) Tailor the process
                                                                     This feature allows defining the resources that are needed
                                                                for describing the development process, tailored for the
                                                                specific use case. This is done using a graphical user
                                                                interface to add data that encompass the PB meta-model for
                                                                covering the relevant aspects. The PB meta-model
                                                                specification is based on the SPEM meta-model, from which
                                                                it selects relevant concepts for the Business Process, and it is
                                                                enriched by concepts that are relevant to the SEE needs. This
                                                                phase includes:
                                                                   • The definition of activities sequence and activities
                                                                     themselves,
                                                                   • The definition of work products,
                                                                   • The definition of roles to perform activities and
                                                                   • The application of engineering methods (EM) to
                                                                     perform an activity.
                                                                   Generally these functionalities are already provided by a
                                                                process authoring tool, nevertheless what is missing is a
                                                                guideline and ontology to properly define activities and also
                                                                engineering methods in a standard way. To facilitate the




   Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                pubblicare e utilizzare
tailoring phase using an authoring tool, a CRYSTAL                   tool-chain and services to be deployed in the selected IT
Reference Library was defined, containing at least the               infrastructure. Project data useful to set-up the SEE will be
ontology about process activities (activity catalogue) and           generated starting from the required data infrastructure.
also for standardization of other meta-model identified              Project data includes repository information and user
elements, such as roles, work products and engineering               management information.
methods (EM catalogue). The tailored process is the output
of this phase and it is the main input of the following              B. Additional features of PB
configuration phase.                                                     The PB is mainly used for providing a model of a SEE,
                                                                     based on process activities to be performed in a product
   2) Configure the SEE                                              development. In addition to core functionalities, some
    The configuration phase groups all the functionalities that      features were as well implemented since they are
are necessary to formalize a SEE. This requires the enriched         propaedeutic to the Platform Builder goal. Indeed, such
meta-model that includes the elements that are needed for            additional features produce outputs (EM, ETF and Tool
defining a tool-chain, interoperability aspects and the              catalogues, and also company IT infrastructure description)
deployment environment that is addressed in the IT                   that are necessary as inputs to the different PB phases:
infrastructure definition. The tool-chain is composed by                • Manage the Tool Catalogue: create a catalogue and
software tools and the IT infrastructure is composed by                   describe tools in the catalogue applying the tool
network set-up, repositories and services that are the                    descriptor meta-model and tool properties.
backbone for the selected tools. This phase includes the
following functionalities:                                              • Manage the IT infrastructure: describe the IT
                                                                          infrastructure as it is currently in the company
   • Import a tailored process (the tailored process as                   (available IT infrastructure) using the proper meta-
     defined in the tailoring phase is used as input);                    model.
   • Describe the general tool-chain in terms of tool                   • Manage stakeholders: describe users and roles of the
     function properties and IOS properties;                              company’s employees.
   • Select tools, available tools in the business domain;              • Manage ETF and EM catalogues thought respective
   • Specify the IT infrastructure;                                       identified meta-models.

   • Define repositories for the work products (data                 C. Operational View
     structure).
                                                                         In this section, tailoring, configuration and validation
   3) Validate the SEE                                               phases are detailed in order to describe user’s operations. As
                                                                     depicted in Fig. 5, each identified phase in PB workflow
    The validation of the SEE is performed on the configured         depends on the previous phase: for example configuring
environment that includes the tool-chain and the IT                  phase depends on the tailoring phase which means that in
infrastructure and project data. In order to validate the            order to configure the SEE, the Tailored Process has to be
configured tool-chain, the following inputs are required:            available before starting the configuration phase.
   • the IT infrastructure as currently available in the             Furthermore the validation phase depends on the result of
     company and defined using the PB meta-model;                    configuration phase, because validation is done on the
                                                                     configured SEE. A Process Architect is in charge of tailoring
   • a selection of tools in the catalogue as available in the       the process activities and it has knowledge on its company
     company (available tools).                                      business domain, while a SEE Architect is in charge of
    The validation considers the tool-chain adaptability             configuring the SEE and it has mainly knowledge on
against the existing IT infrastructure, the evaluation of tools      information technology department.
availability, and checking that defined IOS links are valid.
The SEE has to be validated taking into account also the
technological and business constraints (specific constraints
on allowed vendors, standards, license type and if needed
cost, in order to validate the data infrastructure, it is required
to have the defined data structure in terms of work products
and relevant repositories and to check its compatibility on
the available IT infrastructure; e.g. the user management
information includes the maximum number of users and
which users are able to manage data, check the repository
configuration and the network accessibility.
   4) Generate the description of the SEE
   After the validation, a SEE descriptor is generated. Such
descriptor is a model and it contains information about the




    Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                 pubblicare e utilizzare
                                                                             Fig. 6. UML use case diagram of tailoring a process

                                                                     In order to facilitate the steps of the tailoring phase, it is
                                                                 necessary to provide a catalogue for each kind of identified
                                                                 elements in the process definition (such as process activity
                                                                 and roles) in a standardized way, and this is accomplished in
                                                                 the CRYSTAL reference library that specify an activity
                                                                 catalogue. Furthermore, an improvement concerns the
                  Fig. 5. UML use case diagram of PB             definition of a catalogue of EMs to be applied. Generally,
                                                                 authoring tools provide interfaces to describe the product
    The manage Library use case is a pre-tailoring phase. It     development process, but the Process Architect needs also
is part of authoring phase in order to prepare the CRYSTAL       guidelines to perform this task and information that can help
reference Library where are defined generic catalogues for       to describe the process. Tailoring steps could be based on
activities and engineering methods.                              already existing authoring tools, extending them with the
   1) Tailoring the process                                      catalogue that define some needed elements addressed in the
                                                                 process. User interfaces, that should be defined to author a
    This phase is intended to describe all the tasks needed to   product development process covering also aspects relevant
tailor the process in terms of operations to perform. Tasks to   to SEE configuration, will be used to describe:
be performed are relevant to the description of a
development process and to manage information in a                  • Activities of the process and relevant elements
formalized way to be used to configure the SEE. In Fig. 2           • Engineering methods to be applied.
tailoring phase side, there are elements to define a
development process using information of a process for              2) Configuring the Platform
developing a given product in a defined CRYSTAL use case.
                                                                     This phase encompasses all the tasks to be done by the
The Process Architect has to describe the development
                                                                 SEE Architect for configuring the SEE in terms of operations
process and apply EMs during the tailoring process phase.
                                                                 to be performed. In Fig. 2 configuration phase side, there are
To facilitate this task, when using a process authoring tool,
                                                                 all the elements and their relationships. The configuring
process guidance, activities catalogue and EM catalogue are
                                                                 phase is the core of PB method in terms of functionalities to
provided. During the tailoring phase, the following steps
                                                                 describe the SEE. Basically, it is centred on the creation of a
have to be performed:
                                                                 new SEE model related to a Tailored Process. After this step,
   • definition of the sequence of the process activities as     the SEE Architect is able to configure the tool-chain (refer to
     well as the activities themselves;                          Fig. 7) for each selected EM that is defined in the Tailored
                                                                 Process. This tool-chain configuration is based on mapping
   • definition of roles to perform activities;                  between EMs and ETFs and then between ETFs and tools
   • definition of engineering methods applied to the            which support identified ETFs. A SEE Architect has to select
     process.                                                    tools in order to satisfy the process activities and the applied
                                                                 EMs This task is supported by the ETF Catalogue and the
    Any process authoring tool has to provide at least these     Tool Catalogue. Furthermore, it has to describe the IT
steps that are also depicted in Fig. 6.                          infrastructure (configure IT infrastructure use case) and
                                                                 formalize project data (configure project data use case)
                                                                 dealing with development process work products and
                                                                 roles/users of SEE. In the configuration phase the following
                                                                 activities have to be performed:
                                                                    • Assign to the EM used in each process activity of the
                                                                      Tailored Process the required ETFs (IOS capability




   Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                pubblicare e utilizzare
       and internal ETF). This maps each EM to as many as
       required ETFs (map EM to ETFs use case)
   • Select tools that will provide the ETF, thus becoming
     part of the tool-chain; the tool will be selected from
     the Tool Catalogue (select Tool use case)
   • Establish the Tool interconnections (through IOS
     capabilities) in order to establish the needed tool
     interactions.
   • Define the IT infrastructure needed for the tool-chain
     deployment, deriving it from the tools being used,
     foreseen users and needed services.
   • Specify the permissions over the artefacts that each                           Fig. 8. Configuring IT infrastructure
     role has in each tool.
                                                                     3) Validate the SEE configuration
                                                                     In order to validate the SEE configuration that satisfies
                                                                  the development process objectives, the validation phase
                                                                  consists mainly in validating the tool-chain by comparing it
                                                                  with some criteria imposed by:
                                                                      •    the tailored process
                                                                      •    IT requirements and data infrastructure,
                                                                      •     Technological and business constraints such as
                                                                            applicable standards, specific constraints on
                                                                            allowed vendors, licence types and cost.
                                                                      The SEE configuration validation could be implicitly
                                                                  made during the tool selection. Indeed some filter criteria can
                                                                  be applied to Tool Catalogue to propose a sub-set of tools
                                                                  that satisfy such criteria. For example, availability, license
                                                                  type and cost are filter criteria applicable to Reference
                   Fig. 7. Configuring the tool-chain             Technological Platform (RTP) Tool Catalogue. Furthermore,
                                                                  IOS services coherence and IT infrastructure adaptability are
    Once this process is finished, the SEE Architect has          validation criteria. The following figure shows validation
defined the tool-chain that will be used in the product           tasks in order to validate the SEE configuration.
development process and the IT infrastructure needs. IT
infrastructure identification depends on selected tools to
build-up a tool-chain, and some IT infrastructure properties
could be described implicitly in Tool Descriptors. Fig. 8
shows what has to be identified for the IT infrastructure
definition. IT infrastructure deals with all needed elements to
build-up the backbone of the tool-chain and it encompasses
services, repositories, network properties and user
management.
    The Data Structure identification, Fig. 5, depends on
Artefacts required by the development process and it could
be a simple list of Artefacts or more complex data structure.
Data structure deals with work products involved in the
process activities and project data includes data structure and
also other information about roles/users and relevant
properties to define access constraints, servers, repositories
                                                                                 Fig. 9. UML Use Case diagram - Validation
and also network information. For preparing project data, the
SEE Architect needs information on IT infrastructure such as
                                                                     The validation of a configured SEE implies:
selected repositories and user access constraints.
                                                                      •    checking tool availability, which means selected
                                                                           tools are present and available in the company to
                                                                           deploy the tool-chain.




   Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                pubblicare e utilizzare
    •    checking the IOS services coherence: verifying that                                 REFERENCES
         tool-chain links are valid.
    •    adapting, if necessary, the IT Infrastructure within    [1] Object Management Group, "Software & Systems Process Engineering
                                                                 Meta-Model Specification Version 2.0," 1 April 2008. [Online]. Available:
         the company organization: compare the required IT       http://www.omg.org/spec/SPEM/2.0/PDF. [Accessed 30 March 2015].
         infrastructure’s properties against the existing        [2] The Eclipse Foundation, “Eclipse Process Framework Project (EPF),”
         company’s IT Infrastructure.                            2015. [Online]. Available: http://eclipse.org/epf/.
                                                                 [3] OSLC, “Open Services for Lifecycle Collaboration,” 2015. [Online].
   4) Generate the description of SEE                            Available: http://open-services.net/.
                                                                 [4] “CRYSTAL deliverable - Meta-model specification - V2,” 2015.
    After these configuration and validation phases, the         [Online].
configured and validated SEE is the output that basically is a   [5] “CRYSTAL deliverable – Platform Builder specification - V2,” 2016.
model to describe the configuration to be instantiated. The      [Online].
PB generates as output model the SEE configuration               [6] “CRYSTAL deliverable – Platform Builder prototype - V2,” 2016.
descriptor, which includes the tool-chain descriptor, the IT     [Online].
infrastructure descriptor and also a description of Project      [7] DevOps - toolchain group http://code.google.com/p/devops-toolchain/
data.

                    IV. CONCLUSIONS
    This paper describes the implemented Platform Builder
method including identified and formalized meta-models for
those relevant elements needed for SEE instantiation. It also
describes the PB Modeler, that is a software tool that allows
formalizing development processes and assisting SEE
instantiation, which includes both process and tools
information (such as Reference Technology Platform
components). More in detail, the SEE model includes
information related to:
    •    the required tools for the design of the desired
         product
    •    the Information Technology (IT) infrastructure
         where these tools are to be deployed
    •    data to be manipulated during the product
         development process.
The presented solution has been validated on many
CRYSTAL industrial scenarios and it proven to be able to
allow cost and complexity reduction for the activity of
selecting the proper SEE for a given development process.

                    ACKNOWLEDGMENT
The research leading to these results has received funding
from the research project CRYSTAL (Critical System
Engineering Acceleration), funded from the ARTEMIS
Joint Undertaking under grant agreement n. 332830 and
from ARTEMIS member states Austria, Belgium, Czech
Republic, France, Germany, Italy, Netherlands, Spain,
Sweden, United Kingdom.
We would also like to thank our CRYSTAL partners among
whom Pietro Braghieri (FBK), Luis Andreu (ITI),
Guilherme Baungarten (OFFIS), whose active participation
and collaboration in PB related subjects were essential for
the achievement of the results.




   Copyright © (2016) Leonardo-Finmeccanica S.P.A. & Instituto Tecnológico de Informática Permesso concesso a AISE di
                                                pubblicare e utilizzare