Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion process/standards/aspice_40/aspice.rst
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ Tailoring

man/index
swe/index
mle/index
sup/index
spl/index
reu/index
Expand Down Expand Up @@ -418,7 +419,7 @@ Generic practices

For guidance on how to perform process improvements see the Process Improvement process (PIM.3).

.. needextend:: "c.this_doc()"
.. needextend:: "c.this_doc()"
:+tags: aspice40_gp3

Appendix
Expand Down
26 changes: 23 additions & 3 deletions process/standards/aspice_40/iic/iic-01.rst
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
..
..
# *******************************************************************************
# Copyright (c) 2025 Contributors to the Eclipse Foundation
#
Expand Down Expand Up @@ -49,5 +49,25 @@
- The name of work products and an associated reference (to file, to tool artifact)
- Configuration item attributes and properties

.. needextend:: "c.this_doc()"
:+tags: aspice40_iic01
.. std_req:: 01-53 Trained ML model
:id: std_req__aspice_40__iic-01-53
:status: valid

- The trained ML model is the output of the training process. It consists of the software representing the ML architecture, the set of weights which were optimized during the training, and the final set of hyperparameters.

.. std_req:: 01-54 Hyperparameter
:id: std_req__aspice_40__iic-01-54
:status: valid


- Hyperparameters are used to control the ML model which has to be trained, e.g.:
- Learn rate of training
- Scaling of network (number of layers or neurons per layer)
- Loss function
- Minimum characteristics:
- Description
- Initial value
- Final value upon communicating the results of the ML training

.. needextend:: "c.this_doc()"
:+tags: aspice40_iic01
21 changes: 19 additions & 2 deletions process/standards/aspice_40/iic/iic-03.rst
Original file line number Diff line number Diff line change
Expand Up @@ -59,5 +59,22 @@
- reviews such as optical inspections à findings record
- analyses: values

.. needextend:: "c.this_doc()"
:+tags: aspice40_iic03
.. std_req:: 03-51 ML data set
:id: std_req__aspice_40__iic-03-51
:status: valid

- Selection of ML Data for e.g., ML model training (ML Training and Validation Data Set) or test of the trained and deployed ML model (ML Test Data Set).

.. std_req:: 03-53 ML data
:id: std_req__aspice_40__iic-03-53
:status: valid

- Datum to be used for Machine Learning. The datum has to be attributed by metadata, e.g., unique ID and data characteristics. Examples:
- Visual data like a photo or videos (but a video could also be considered as sequence of photos depending on the intended use)
- Audio recording
- Sensor data
- Data created by an algorithm
- Data might be processed to create additional data. E.g., processing could add noise, change colors or merge pictures.

.. needextend:: "c.this_doc()"
:+tags: aspice40_iic03
17 changes: 15 additions & 2 deletions process/standards/aspice_40/iic/iic-04.rst
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,19 @@
- semi-formal languages (e.g, UML, SysML)
- formal languages (e.g, model-based approach)

.. std_req:: 04-51 ML architecture
:id: std_req__aspice_40__iic-04-51
:status: valid

- An ML architecture is basically a special part of a software architecture (see 04-04). Additionally

- ML architecture describes the overall structure of the ML-based software element
- ML architecture specifies ML architectural elements including an ML model and other ML architectural elements, provided to train, deploy, and test the ML model.
- describes interfaces within the ML-based software element and to other software elements
- ML architecture describes details of the ML model like used layers, activation functions, loss function, and backpropagation
- ML architecture contains defined hyperparameter ranges and initial values for training start
- resource consumption objectives are defined
- ML architecture contains allocated ML requirements

.. needextend:: "c.this_doc()"
:+tags: aspice40_iic04
.. needextend:: "c.this_doc()"
:+tags: aspice40_iic04
31 changes: 29 additions & 2 deletions process/standards/aspice_40/iic/iic-08.rst
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,33 @@
- Measures including criteria for monitoring effectiveness, suitability, and adequacy of the standard process
- Method for collecting and analyzing the monitoring measures

.. std_req:: 08-64 ML test approach
:id: std_req__aspice_40__iic-08-64
:status: valid

- The ML test approach describes
- ML test scenarios with distribution of data characteristics (e.g., gender, weather conditions, street conditions within the ODD) defined by ML requirements
- quantity of each ML test scenario inside the test data set
- expected test result per test datum
- pass/fail criteria for the ML testing
- entry and exit criteria for the ML testing
- the required ML testing infrastructure and environment configuration

.. std_req:: 08-65 ML training and validation approach
:id: std_req__aspice_40__iic-08-65
:status: valid

Process Monitoring Method may have the following characteristics:

- ML Training and Validation approach describes at least:
- entry and exit criteria of the ML training
- approaches for hyperparameter tuning / optimization to be used in the training
- approach for data set creation and modification
- training environment, including required training hardware (e.g., GPU, or supercomputer to be used)
- interface adapter for provision of input data and storage of output data
- if required, actions to organize the data set and training environment
- The ML training and validation approach may additionally include robustification methods like random dropout

.. std_req:: 08-66 Measures against deviations in quantitative process analysis
:id: std_req__aspice_40__iic-08-66
:status: valid
Expand All @@ -157,5 +184,5 @@
- Effective implementation of these counter measures


.. needextend:: "c.this_doc()"
:+tags: aspice40_iic08
.. needextend:: "c.this_doc()"
:+tags: aspice40_iic08
10 changes: 8 additions & 2 deletions process/standards/aspice_40/iic/iic-11.rst
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,12 @@
commented source code, auto-code, an object file, a library, an
executable, or an executable model as input to verification

.. std_req:: 11-50 Deployed ML model
:id: std_req__aspice_40__iic-11-50
:status: valid

- It is derived from the trained ML model (see 01-53) and is to be integrated into the target system.
- It may differ from the trained ML model which often requires powerful hardware and uses interpretative languages.

.. needextend:: "c.this_doc()"
:+tags: aspice40_iic11
.. needextend:: "c.this_doc()"
:+tags: aspice40_iic11
15 changes: 13 additions & 2 deletions process/standards/aspice_40/iic/iic-13.rst
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,17 @@
- Information about the verification execution (date, “object-under-verification”, etc.)
- Abstraction or summary of verification results

.. std_req:: 13-50 ML test results
:id: std_req__aspice_40__iic-13-50
:status: valid

- Test data and logs
- Test data with correct results
- Test data with incorrect results
- Test data not executed, and a rationale
- Information about the test execution (date, participants, model version etc.)
- Abstraction or summary of ML test results

.. std_req:: 13-51 Consistency Evidence
:id: std_req__aspice_40__iic-13-51
:status: valid
Expand Down Expand Up @@ -234,5 +245,5 @@
- for non-standard and critical resources and infrastructure.


.. needextend:: "c.this_doc()"
:+tags: aspice40_iic13
.. needextend:: "c.this_doc()"
:+tags: aspice40_iic13
12 changes: 10 additions & 2 deletions process/standards/aspice_40/iic/iic-16.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,14 @@
- Disciplinary reporting line
- Organizational units and sub-units, if applicable

.. std_req:: 16-52 ML data management system
:id: std_req__aspice_40__iic-16-52
:status: valid

- The ML data management system is part of the configuration management system (see 16-03) and
- Supports data management activities like data collection, description, ingestion, exploration, profiling, labeling/annotation, selection, structuring and cleansing
- Provides the data for different purposes, e.g., training, testing
- Supports the relevant sources of ML data

.. needextend:: "c.this_doc()"
:+tags: aspice40_iic16
.. needextend:: "c.this_doc()"
:+tags: aspice40_iic16
12 changes: 10 additions & 2 deletions process/standards/aspice_40/iic/iic-19.rst
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,14 @@
- disciplines (e.g., different configuration management approaches for software and hardware, or combined approaches)
- options due to socio-cultural differences

.. std_req:: 19-50 ML data quality approach
:id: std_req__aspice_40__iic-19-50
:status: valid

- The ML data quality approach
- Defines Quality criteria (see 18-07) e.g., the relevant data sources, reliability and consistency of labelling, completeness against ML data requirements
- Describes analysis activities of the data
- Describes activities to ensure the quality of the data to avoid issues e.g., data bias, bad labeling

.. needextend:: "c.this_doc()"
:+tags: aspice40_iic19
.. needextend:: "c.this_doc()"
:+tags: aspice40_iic19
22 changes: 22 additions & 0 deletions process/standards/aspice_40/mle/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
..
# *******************************************************************************
# Copyright (c) 2025 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This program and the accompanying materials are made available under the
# terms of the Apache License Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0
#
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************

.. toctree::
:maxdepth: 2
:caption: Contents:

mle.1
mle.2
mle.3
mle.4
116 changes: 116 additions & 0 deletions process/standards/aspice_40/mle/mle.1.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
..
# *******************************************************************************
# Copyright (c) 2025 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This program and the accompanying materials are made available under the
# terms of the Apache License Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0
#
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************

MLE.1 Machine Learning Requirements Analysis
---------------------------------------------

The purpose is to refine the machine learning-related software requirements into a set of ML
requirements.

Process outcomes
~~~~~~~~~~~~~~~~

1. The ML requirements including ML data requirements are identified and specified based on
the software requirements and the components of the software architecture.
2. ML requirements are structured and prioritized.
3. ML requirements are analyzed for correctness and verifiability.
4. The impact of ML requirements on the ML operating environment is analyzed.
5. Consistency and bidirectional traceability are established between ML requirements and
software requirements, and between ML requirements and software architecture.
6. The ML requirements are agreed and communicated to all affected parties.

Base practices
~~~~~~~~~~~~~~

.. std_req:: MLE.1.BP1: Specify ML requirements
:id: std_req__aspice_40__MLE-1-BP1
:status: valid
:links: std_req__aspice_40__iic-17-00

Use the software requirements and the software architecture to identify and specify functional and non-functional ML requirements, as well as ML data requirements specifying data characteristics (e.g., gender, weather conditions, street conditions within the ODD) and their expected distributions.

.. note::

Non-functional requirements may include relevant characteristics of the ODD and KPIs as robustness, performance, and level of trustworthiness.

.. note::

The ML data requirements are input for SUP.11 Machine Learning Data Management but also for other MLE processes.

.. note::

In case of ML development only, stakeholder requirements represent the software requirements.

.. std_req:: MLE.1.BP2: Structure ML requirements
:id: std_req__aspice_40__MLE-1-BP2
:status: valid
:links: std_req__aspice_40__iic-17-00, std_req__aspice_40__iic-17-54

Structure and prioritize the ML requirements.

.. note::

Examples for structuring criteria can be grouping (e.g., by functionality) or variants identification.

.. note::

Prioritization can be done according to project or stakeholder needs via e.g., definition of release scopes. Refer to SPL.2.BP1.

.. std_req:: MLE.1.BP3: Analyze ML requirements
:id: std_req__aspice_40__MLE-1-BP3
:status: valid
:links: std_req__aspice_40__iic-17-54,std_req__aspice_40__iic-15-51

Analyze the specified ML requirements including their interdependencies to ensure correctness, technical feasibility, and ability for machine learning model testing, and to support project management regarding project estimates.

.. note::

See MAN.3.BP3 for project feasibility and MAN.3.BP5 for project estimates.

.. std_req:: MLE.1.BP4: Analyze the impact on the ML operating environment
:id: std_req__aspice_40__MLE-1-BP4
:status: valid
:links: std_req__aspice_40__iic-15-51

Analyze the impact that the ML requirements will have on interfaces of software components and the ML operating environment.

.. note::

The ML operating environment is defined as the infrastructure and information which both the trained ML model and the deployed ML model need for execution.

.. std_req:: MLE.1.BP5: Ensure consistency and establish bidirectional traceability
:id: std_req__aspice_40__MLE-1-BP5
:status: valid
:links: std_req__aspice_40__iic-13-51

Ensure consistency and establish bidirectional traceability between ML requirements and software requirements and between ML requirements and the software architecture.

.. note::

Bidirectional traceability supports consistency, facilitates impact analyses of change requests, and verification coverage demonstration. Traceability alone, e.g., the existence of links, does not necessarily mean that the information is consistent with each other.

.. note::

Redundant traceability is not intended, but at least one out of the given traceability paths.

.. std_req:: MLE.1.BP6: Communicate agreed ML requirements and impact on the operating environment
:id: std_req__aspice_40__MLE-1-BP6
:status: valid
:links: std_req__aspice_40__iic-13-52

Communicate the agreed ML requirements, and the results of the impact analysis on the ML operating environment to all affected parties.


.. needextend:: "c.this_doc()"
:+tags: aspice40_mle1
Loading
Loading