Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Features and Dependencies in Automotive Systems

Features and Dependencies in Automotive Systems

I held this talk at the 2016 FOSD meeting in Copenhagen, Denmark

Andreas Vogelsang

May 24, 2016
Tweet

More Decks by Andreas Vogelsang

Other Decks in Research

Transcript

  1. Features and Dependencies in Automotive Systems FOSD Meeting 2016, Copenhagen,

    Denmark May 2016 Andreas Vogelsang Institut für Informatik Technische Universität München @andivogelsang
  2. Automobiles Are Multifunctional Systems 2 Window Lifter Airbag Cruise Control

    Navigation Cooling Control Air Condition Emergency Shutoff …
  3. • An automotive system consists of a set of features

    Window Lifter Airbag Cruise Control … Features, Architecture, and Dependencies 3
  4. • An automotive system consists of a set of features

    • A feature is realized by a set of logical components (LC) Window Lifter Airbag Cruise Control … Features, Architecture, and Dependencies 3
  5. • An automotive system consists of a set of features

    • A feature is realized by a set of logical components (LC) Window Lifter Airbag Cruise Control … Features, Architecture, and Dependencies 3
  6. • An automotive system consists of a set of features

    • A feature is realized by a set of logical components (LC) • Two features are dependent if at least two of their logical components exchange data Window Lifter Airbag Cruise Control … Features, Architecture, and Dependencies 3
  7. • An automotive system consists of a set of features

    • A feature is realized by a set of logical components (LC) • Two features are dependent if at least two of their logical components exchange data Features, Architecture, and Dependencies 3
  8. A Study on Automotive Systems • What is the extent

    of feature dependencies? 8 1 Extent and Characteristics of Dependencies Between Vehicle Functions in Automotive Software Systems, MiSE @ ICSE12 2 Why Feature Dependencies Challenge the Requirements Engineering of Automotive Systems, RE13 1 2
  9. A Study on Automotive Systems • What is the awareness

    of feature dependencies? • Expert interviews at BMW • Investigation of 100 feature dependencies 9 known unknown sum plausible 41 % 48 % 89 % not plausible 1 % 10 % 11 % sum 42 % 58 % 100% The found dependencies are reasonable Most dependencies are plausible but unknown Vogelsang, Fuhrmann: Why Feature Dependencies Challenge the Requirements Engineering of Automotive Systems. RE13 We need a comprehensive RE methodology for automotive systems that integrates and supports the specification of feature dependencies.
  10. F1 • A communal component exchanges signals with components of

    other features Implicit Communal Components 10 LC1 LC2 LC3 LC4 LC5 LC7 LC6 F2 F3
  11. F1 • A communal component exchanges signals with components of

    other features • An implicit communal component is a communal component associated with a feature Implicit Communal Components 10 LC1 LC2 LC3 LC4 LC5 LC7 LC6 F2 F3
  12. F1 • A communal component exchanges signals with components of

    other features • An implicit communal component is a communal component associated with a feature • An explicit communal component is a communal component associated with a dedicated platform component layer (PCL). Implicit Communal Components 12 LC1 LC2 LC3 LC4 LC5 LC7 LC6 F2 F3 PCL
  13. Implicit Communal Components 13 • What is the extent of

    implicit communal components? Vogelsang, Femmer, Junker: Characterizing Implicit Communal Components as Technical Debt in Automotive Software Systems. WICSA’16 We need to refactor < 10 % of implicit communal components to save > 90% of feature dependencies
  14. Current Research and Points for Discussion • Are feature dependencies

    also feature interactions? – Feature dependencies are desired – Feature dependencies are internal – Hypothesis: Feature dependencies are operational feature interactions (i.e. internal) according to Apel et al. [FOSD13] • What about higher-order feature dependencies? – How are they defined? Do they exist? • How to use the analysis of feature dependencies – to predict external feature interactions – to align testing strategies – to refactor architectures 14 Thank you. @andivogelsang [email protected]