Post on 05-Apr-2015
Projekt VEIA
Folienset Fallbeispiel CBS Ultralite-Version
Stefan MannFraunhofer-Institut fürSoftware- und Systemtechnik ISST Berlin
September 2008
Ergebnisse des VEIA-Projekts
Stefan MannFraunhofer-Institut fürSoftware- und Systemtechnik ISST Berlin
September 2008
Fallbeispiel »Condition-Based Service«
3
Variantenmanagement mit und für AUTOSAR
BSW
Topologie
SWC ECU
4
Beispiel: Condition-Based Service (CBS)
– Berechnung von Serviceterminen– Überwachung verschiedener Verschleißteile– Anwendung in allen Fahrzeugproduktlinien
Wie sieht eine optimale Softwarearchitektur aus?
Quellenangabe Abbildung: BMW Group
6
Produktkonfiguration: Otto, WDSparkPlugsAdaptive
<<needs>>
Vehicle
Engine VehicleMaintenance
Diesel Otto
WdMotorOilAdaptive
WdParticleFilterAdaptive WdSparkPlugs
WdSparkPlugsAdaptive
WdSparkPlugsLinear
Cbs FixedService
<<needs>>
explizit ausgewähltimplizit ausgewähltexplizit abgewähltimplizit abgewähltobligatorischunentschieden
7
CBS-Funktionsnetz
pinKm
pinDate
pinDoService
CbsWdMotorOilAdaptive
pinSensorsMo
CbsComputeServiceDate
CbsDisplay
CbsWdSparkPlugs
pinSensorsSp
pinDoService
CbsReset
pinSensors
Mo
pinSensors
Sp
poutDisplay
Basic
pinKm
pinDate
pinKm
pinDate
CbsWdParticleFilterAdaptive
pinDoService
pinKm
pinDate
pinSensorsPfpinSensors
Pf pin
DoService
poutAvailability
pout
Availability
pout
Availability
CbsWdSparkPlugsLinear
CbsWdSparkPlugsAdaptive
poutServPf
poutServSp
poutServMo
pinAvailabilityPf
pinAvailabilitySp
pinAvailabilityMo
poutServiceDate
pinServiceDate
poutReset
pinReset
CarTime
CarMileage
SensorsMotorOil
SensorsSparkPlugs
SensorsParticleFilter
CarService
CarDisplay
Cbs
8
Vom Funktionsnetz zur Softwarearchitektur
Produktmerkmale Funktionsnetz
Cbs
WdSparkPlugs
WdMotorOil
WdSpAda
WdSpLin
...
WearoutMotoroil
WearoutSparkplugs
FuCbs
SwcCbs1WMo
WSpAda
SwcCbs2WMo
WSpLin
SwcCbs3WMo
Produktgenerische Software Produktspezifische Software
Software
SwcCbs
WMo
WSpLin
WSpAda
9
Produktgenerische Produktliniensoftwarearchitektur (»CbsSw150«)
SensorsSparkPlugs
SensorsParticleFilter
SensorsMotorOil
SensorsNormMo
SensorsNormPf
SensorsNormSp
CbscMotorOilAdaptive
CbscParticleFilter
Adaptive
CbscSparkPlugsAdaptive
CbscSparkPlugsLinear
CbsMaster CarDisplay
CarKey
CarMileage
CarTime
CbsSw150
CBS-Master, CBS-Clients, Sensorik und Aktuatorik
10
Produktspezifische Produktliniensoftwarearchitektur (»CbsSwPl«)
SensorsSparkPlugs
SensorsParticleFilter
SensorsMotorOil
SensorsNormMo
SensorsNormPf
SensorsNormSp
CbscMotorOilAdaptive
CbscParticleFilter
Adaptive
CbscSparkPlugsAdaptive
CbscSparkPlugsLinear
CbsMaster CarDisplay
CarKey
CarMileage
CarTime
CbsSwPl
CbscSparkPlugsVp
CBS-Master, CBS-Clients, Sensorik und Aktuatorik
11
Produktgenerische vs. -spezifische Produktliniensoftwarearchitektur
Details CbsMaster(CbsSwPl)
DC1
CbsmComputation
CbsMaster
DC2 DC3
RC1 RC2 RC3
DC1
CbsmComputation
CbsMaster
DC2 DC3 DC4
RC1 RC2 RC3 RC4
Details CbsMaster(CbsSw150)
vs.
13
pinKm
pinDate
pinDoService
CbsWdMotorOilAdaptive
pinSensorsMo
CbsComputeServiceDate
CbsDisplay
CbsWdSparkPlugs
pinSensorsSp
pinDoService
CbsReset
pinSensors
Mo
pinSensors
Sp
poutDisplay
Basic
pinKm
pinDate
pinKm
pinDate
CbsWdParticleFilterAdaptive
pinDoService
pinKm
pinDate
pinSensorsPfpinSensors
Pf pin
DoService
poutAvailability
pout
Availability
pout
Availability
CbsWdSparkPlugsLinear
CbsWdSparkPlugsAdaptive
poutServPf
poutServSp
poutServMo
pinAvailabilityPf
pinAvailabilitySp
pinAvailabilityMo
poutServiceDate
pinServiceDate
poutReset
pinReset
CarTime
CarMileage
SensorsMotorOil
SensorsSparkPlugs
SensorsParticleFilter
CarService
CarDisplay
Cbs
Konfiguration des FN durch Verlinkung mit einem Merkmalsmodell
Vehicle
EngineVehicle
Maintenance
Diesel Otto
WdMotorOilAdaptive
WdParticleFilter
Adaptive
WdSparkPlugs
WdSparkPlugsAdaptive
WdSparkPlugsLinear
Cbs
<<needs>>
<<needs>>
14
Fahrzeugkonfiguration: Diesel, Particle Filter
pinKm
pinDate
pinDoService
CbsWdMotorOilAdaptive
pinSensorsMo
CbsComputeServiceDate
CbsDisplay
CbsWdSparkPlugs
pinSensorsSp
pinDoService
CbsReset
pinSensors
Mo
pinSensors
Sp
poutDisplay
Basic
pinKm
pinDate
pinKm
pinDate
CbsWdParticleFilterAdaptive
pinDoService
pinKm
pinDate
pinSensorsPfpinSensors
Pf pin
DoService
poutAvailability
pout
Availability
pout
Availability
CbsWdSparkPlugsLinear
CbsWdSparkPlugsAdaptive
poutServPf
poutServSp
poutServMo
pinAvailabilityPf
pinAvailabilitySp
pinAvailabilityMo
poutServiceDate
pinServiceDate
poutReset
pinReset
CarTime
CarMileage
SensorsMotorOil
SensorsSparkPlugs
SensorsParticleFilter
CarService
CarDisplay
Vehicle
EngineVehicle
Maintenance
Diesel Otto
WdMotorOilAdaptive
WdParticleFilter
Adaptive
WdSparkPlugs
WdSparkPlugsAdaptive
WdSparkPlugsLinear
Cbs
<<needs>>
<<needs>>
15
Fahrzeugkonfiguration: Otto, Spark Plugs Adaptive
pinKm
pinDate
pinDoService
CbsWdMotorOilAdaptive
pinSensorsMo
CbsComputeServiceDate
CbsDisplay
CbsWdSparkPlugs
pinSensorsSp
pinDoService
CbsReset
pinSensors
Mo
pinSensors
Sp
poutDisplay
Basic
pinKm
pinDate
pinKm
pinDate
CbsWdParticleFilterAdaptive
pinDoService
pinKm
pinDate
pinSensorsPfpinSensors
Pf pin
DoService
poutAvailability
pout
Availability
pout
Availability
CbsWdSparkPlugsLinear
CbsWdSparkPlugsAdaptive
poutServPf
poutServSp
poutServMo
pinAvailabilityPf
pinAvailabilitySp
pinAvailabilityMo
poutServiceDate
pinServiceDate
poutReset
pinReset
CarTime
CarMileage
SensorsMotorOil
SensorsSparkPlugs
SensorsParticleFilter
CarService
CarDisplay
Vehicle
EngineVehicle
Maintenance
Diesel Otto
WdMotorOilAdaptive
WdParticleFilter
Adaptive
WdSparkPlugs
WdSparkPlugsAdaptive
WdSparkPlugsLinear
Cbs
<<needs>>
<<needs>>
16
Für ein Produkt konfiguriertes Funktionsnetz
pinKm
pinDate
pinDoService
CbsWdMotorOilAdaptive
pinSensorsMo
CbsComputeServiceDate
CbsDisplay
CbsWdSparkPlugs
pinSensorsSp
pinDoService
CbsReset
pinSensors
Mo
pinSensors
Sp
poutDisplay
Basic
pinKm
pinDate
pinKm
pinDate
CbsWdParticleFilterAdaptive
pinDoService
pinKm
pinDate
pinSensorsPfpinSensors
Pf pin
DoService
poutAvailability
pout
Availability
pout
Availability
CbsWdSparkPlugsLinear
CbsWdSparkPlugsAdaptive
poutServPf
poutServSp
poutServMo
pinAvailabilityPf
pinAvailabilitySp
pinAvailabilityMo
poutServiceDate
pinServiceDate
poutReset
pinReset
CarTime
CarMileage
SensorsMotorOil
SensorsSparkPlugs
SensorsParticleFilter
CarService
CarDisplay
Cbs
17
Funktionsnetz eines Produkts
pinKm
pinDate
pinDoService
CbsWdMotorOilAdaptive
pinSensorsMo
CbsComputeServiceDate
CbsDisplay
pinSensorsSp
pinDoService
CbsReset
pinSensors
Mo
pinSensors
Sp
poutDisplay
Basic
pinKm
pinDate
pinKmpinDate
pin
DoService
poutAvailability
pout
Availability
CbsWdSparkPlugsAdaptive
poutServSp
poutServMo
pinAvailabilitySp
pinAvailabilityMo
poutServiceDate
pinServiceDate
poutReset
pinReset
CarTime
CarMileage
SensorsMotorOil
SensorsSparkPlugs
CarService
CarDisplay
Cbs
19
Verteilung der Softwarekomponenten auf technische Architektur
Technical ArchitectureSoftware Architecture
SensorikVerschleißteil
SensorikVerschleißteilSensors of awearing part
CarMileage
CarTime
linearCbsClientof a wearingpart
CbsMaster
CarDisplay
CarKeyadaptiveCbsClientof a wearingpart
Kombi
CAS
Key
SteuergeräteinesVerschleißteils
SteuergeräteinesVerschleißteils
Deviceof awearing part
...
...
21
Produktliniensoftwarearchitekturen
FunktionenProdukte
VEIA
Funktionsarchitektur
produktgenerischePL-SW-Architektur
produktspezifischePL-SW-Architektur
…
SWAP1
SWAP2
SWAPx
AUTOSAR
Featuremodell
22
Feature P1 P2 P3 P4 P5 IHFe
WdMotorOilAdaptive
1
WdParticleFilterAdaptive
1
WdSparkPlugsAdaptive 1
WdSparkPlugsLinear 1
Otto - - 1
Diesel - - - 1
IHPi 0,2 0,2 0,2 0,2 0,2 PL150
Häufigkeit des Vorkommens der Merkmale in Produktkonfigurationen
Produktgenerische Architektur(150%-Architektur)
23
Feature P1 P2 P3 P4 P5 IHFe
WdMotorOilAdaptive
1
WdParticleFilterAdaptive
- - - - 0,25
WdSparkPlugsAdaptive - - - - 0,167
WdSparkPlugsLinear - - - - 0,167
Otto - - 0,5
Diesel - - - 0,5
IHPi 0,25 0,167 0,167 0,167 0,25 PL1
Häufigkeit des Vorkommens der Merkmale in Produktkonfigurationen
Produktspezifische Architektur mit: 1/2 Otto : 1/2 Diesel (Gleichverteilung)
24
Feature P1 P2 P3 P4 P5 IHFe
WdMotorOilAdaptive
1
WdParticleFilterAdaptive
- - - - 0,22
WdSparkPlugsAdaptive - - - - 0,33
WdSparkPlugsLinear - - - - 0,167
Otto - - 0,66
Diesel - - - 0,33
IHPi 0,11 0,167 0,167 0,33 0,22 PL2
Häufigkeit des Vorkommens der Merkmale in Produktkonfigurationen
Produktspezifische Architektur mit:2/3 Otto : 1/3 Diesel (Ottodominanz)
25
Anwendung der PSSF-Metrik
Generisch(150%-Lösung)
Spezifisch(PL1 / PL2)
P1 P 2 P3 P4 P5
#Komponenten 14 1410 10 11 11 11
#Eingangsports 22 229 9 13 13 13
#Ausgangsports 16 1610 10 12 12 12
#Ports 38 3819 19 25 26 26
Entwicklungsaufwand(PA=5)
178PL1: 236PL2: 222
Indiz für SW-Größe
P1: 168P2: 168P3: 168P4: 168P5: 168
ø 122110 110 130 130 130
Bewertungskriterien: Entwicklungsaufwand und Software-Größe