Post on 18-Jul-2020
CBSE, © Prof. Uwe Aßmann 1
54. Why are Compositions Important? Applications of Composition Systems
1. Applications of Composition Systems
2. Software Ecosystems 3. Software Ecosystems for
Cyber-Physical Systems Prof. Dr. Uwe Aßmann Technische Universität Dresden
Institut für Software- und Multimediatechnik
http://st.inf.tu-dresden.de 15-0.1, 14.07.15
Prof. U. Aßmann, CBSE 2
Interesting Reading
• Slinger Jansen, Anthony Finkelstein, Sjaak Brinkkemper. A Sense of Community: A Research Agenda for Software Ecosystems. IEEE ICSE Companion, 2009.
• Software Ecosystems. David G. Messerschmitt, Clemens Szyperski. MIT Press
• Michael A. Cusumano. Staying power. Six enduring principles for managing strategy and innovation in an uncertain world. Oxford University Press.
• Annabelle Gawer, Michael A. Cusumano. Platform leadership. How Intel, Microsoft and Cisco drive industry innovation. Harvard Business School Press
• Karl Michael Popp, Ralf Meyer. Profit from Software Ecosystems. Synomic GmbH, 2010.
CBSE, © Prof. Uwe Aßmann 3
54.1. New Applications of Composition Systems
Component-based software engineering is built on composition systems.
Prof. U. Aßmann, CBSE 4
Rpt.: Product Families (Variant Family, Product Lines)
► A product family (line) is a consistently managed set of products ► sharing a common platform (framework) and components ► With a component model and composition technique that enables variability and
extensibility ► With a composition language
► Consistent variation of component variants, while interfaces and contracts are invariant ► Conformant replacement of components ► Contract checking for all components of the system
Product Lines are based on Composition Systems
Prof. U. Aßmann, CBSE 5
Rpt.: Adaptive Systems (Dynamic Variant Families)
► Consistent variation of component variants at run-time (reconfiguration), while interfaces and contracts are invariant ► Conformant replacement of components at run time ► Dynamic contract negotiation: does the implementation of a new variant fit to a
contract?
► Reconfiguration is controlled by a cost-utility function (CUF) to arrive at an optimal configuration with regard to a CUF ► Reconfiguration can be based on multi-objective optimization (MOO)
► Reconfiguration strategy is important
Adaptive Systems are based on Composition Systems
Prof. U. Aßmann, CBSE 6
Rpt.: CPS Composition Systems
! Cyber-physical systems (CPS) are systems with a real-time representation of the real world in the cyberworld
• They form systems in the internet of things and services. • These need quality specifications (real-time, energy, safety, movements) and
need to be quality-verified.
! Examples: • Robot swarms • Car trains • Virtual factories
! A Multi-Quality-controlled composition system provides a component model with quality contracts.
• Technical space bridges are necessary to bridge
Prof. U. Aßmann, CBSE 7
Smart Factory mit CPS
• Embedded System: maschines, robots, presses, transport systems • CPS: Autonomous control of the factory • Self assembly of the products • Autonomous control of logistics • Pull of products instead of push
Prof. U. Aßmann, CBSE 8
Smart Traffic/Transport/Logistics mit CPS
• Embedded System: Railcabs are autonomous train cars (Paderborn)
• CPS: Optimization of the German logistics
Prof. U. Aßmann, CBSE 9
Smart Grid
• Embedded System: Isolated measuring • CPS: distributed control based on
Smart Metering • Control of natural energy
Prof. U. Aßmann, CBSE 10
Further Examples of CPS
• Smart Metering – Optimization of all energy consumers
in the home or office
• Smart Grid: intelligent power grids – Optimization of all energy traffic
nation-wide
• Smart Traffic: – Car trains on the motorway – Optimization of all traffic nation-wide
• Smart Logistics – Control of transports
Smart Factory: Self-assembly of products Pull instead of push
Smart Construction: Robot swarms for constructions of
tunnels
Smart Office: World wide workflows Cyber-physical search engines
Smart City: Mobile instantaneous commuting Car sharing
Prof. U. Aßmann, CBSE 11
The Revolution of CPS
• All domains in transport, logistics, assembly, housing will change • Nothing will stay as it is • All engineering disciplines will change until 2020
So far:
Miniaturization of the world in the computer
To make decisions
about it
With CPS:
All objects of the real world have an „object Computer“
and are connected
Control of the place of things in space and time
Prof. U. Aßmann, CBSE 12
Component A
Real-time
Safety
Dyna mics
Energy
Component B
Real-time contract checking (Technical Space 1)
Safety contract checking (Technical Space 2)
Dynamics contract checking (Technical Space 3)
Energy contract checking (Technical Space 4)
HRC: Multi-Quality Contracts in CPS (Multi-Technical Space)
Prof. U. Aßmann, CBSE 13
Multi-Quality Contract Specifications in CPS (Multi-TS)
! Bridge technology for Technical spaces required ! Guided software development important for certification
13
System architecture
model
Safety contracts + Safety
Checker
Dynamics Contract + Dynamics language
Syntactic Technical Space Eclipse EMOF
Semantic Technical Space Safety
Semantic Technical Space Hybrid Automata
Real-time contract + Real-time analysis
Semantic Technical Space Real-Time
Prof. U. Aßmann, CBSE 14
Multi-Quality Contracts for CPS needs Several Semantic Technical Spaces
! A CPS has components with contracts in multiple qualities with semantic ! Every semantic has a separate technical space ! A Technical Space is a metahierarchy based on a specific metalanguage
Static Semantic World
Ontologies
Abstract Interpretation
Model checking
Structural (syntactic) Modeling World
Structure
Hierarchies Contracts
Graphs
Static Semantic
Expert
Software Engineer
Dynamic Semantic World
Interpretation
State systems
Simulation
Dynamics Semantic
Expert
EMOF UML-CD
MOF
OWL CTL
Petri nets SOS
Nat.Semantics
Domain world
Ontologies
Domain models
Domain Expert
OWL
Prof. U. Aßmann, CBSE 15
CPS-Composition Systems Must Be Multi-Technical Space
! Multi-Technical-Space Development
15
Composition Systems
Composition Systems with Semantics
Multi-Technical-Space Composition Systems
Development in one technical space
Development with two technical spaces
Development with multiple technical spaces
Prof. U. Aßmann, CBSE 16
CPS Composition Systems
Classic Composition System
Multi-Quality-Controlled Composition System
Multi-Technical-Space Composition Systems for Cyber-Physical Systems
Staged Composition System
Technical Space Bridging Self-adaptivity
Dynamic Composition System
Transconsistency
Prof. U. Aßmann, CBSE 17 Seite 17 Uwe Aßmann,
17.07.2003, sd&m-Konferenz 2003: Web Services
Composition Systems for CPS
Turing-complete language;
Probably ECA-rule based
Multi-quality component contracts
(real-time, safety, movements,
energy)
Multi-quality contract checking
Contract negotiation (configuration optimization, autotuning)
Complements (plugins)
Multi-technical space
! Early example: HRC, www.cool-software.de
CBSE, © Prof. Uwe Aßmann 18
54.2 Software Ecosystems: a New Economic Use of Composition Systems
Staying Power [Cusomano, Gawer]
Prof. U. Aßmann, CBSE 19
Platforms and Ecosystems
• „Platforms, not only products“ (Buch „Staying Power“ Michael Cusumano)
• Markets need market platforms • With Vendor Lock-In
Platform
Complementors
Platform leader
Chip
Software Providers
Intel, Infineon, AMD
Prof. U. Aßmann, CBSE 20
Plattform Leadership
• Platform leadership und „platform wannabie“ • Platform can be open or closed • Platform can be for end users or for developers
App Store
App Providers
Apple, Intel, Google
AutoSAR
Module Providers
BMW, Bosch,...
Eclipse
Plugin Providers
IBM, Itemis, many
Genivi Multimedia Infotainment Platform
Component Providers
Genivi consortium
Prof. U. Aßmann, CBSE 21
Software Platforms and Software Ecosystems
! Software ecosystems are platforms plus complements (plugins) ! Interdependent companies and value creation ! [Gawer/Cusomano] describe 4 levels of software ecosystems:
• Scope of the firm • Modularity technology
• Composition system • Extensibility concept for complements (plugins) • IPR strategy • Interface openness
• Relationship with external complementors • Internal organization of the firm
Prof. U. Aßmann, CBSE 22
Software Ecosystem
Modularity technlogoy
Scope Rules
Complements App Stores
Platform Leader
Complementors
Third party management
App Services
Software Platforms and Software Ecosystems
! Value creation is shared between platform leader and complementor ! Companies want to be platform leader („platform wannabie“) ! Apple iPad, iPhone AppStores
Market Rules
Apps Apps Apps
Prof. U. Aßmann, CBSE 23
Software Ecosystem
Component Model with plugin concept Plugin Tools
Uncertified App Store Certified App Store
Platform Leader Consortium
Plugin/App Provider
Platform Services
App Services
Apps Apps Apps
Consortial Software Ecosystems a la AutoSAR, GENIVI
! Platforms can be owned by a consortium, a steering committee ! www.autosar.org, www.genivi.org, Android, ..
Prof. U. Aßmann, CBSE 24
Software Ecosystems
Domain-independent platform Eclipse RCP, RAP
Platform Domain 1 Business Intelligence
Platform Domain 2 Modeling
Plugin/App Providers
Platform Domain 3 Automotive
Domain-specific platforms
Many more layers possible (platforms and ecosystems)
Layered Platforms and Ecosystems (Eclipse.org)
! Eclipse is even layered
Prof. U. Aßmann, CBSE 25
Generic Business Model for Software Ecosystems
Rolle Art des Produktes
Financial Physical Intangible Human
Creator Entrepreneur Manufacturer Inventor -
Distributor Financial trader
Wholesaler, Retailer
IP distributor -
Lessor Financial lessor
IP lessor Contractor
Broker Financial broker
IP broker HR broker
[Popp,Meyer; Wei05] CBSE, © Prof. Uwe Aßmann 26
54.3 Software Ecosystems for CPS
Staying Power [Cusomano, Gawer]
Prof. U. Aßmann, CBSE 27
CPS Ecosystem
Rich Component Model with plugin concept Plugin Tools
Certification Tools
Uncertified App Store Certified App Store
Platform Leader
Plugin/App Provider
Platform Services
App Services
Apps Apps Apps
Vision: CPS Software Ecosystems
• Apps of CPS are safety critical, need to be certified ! Who will be platform leader?
Composition Tools
Prof. U. Aßmann, CBSE 28
Software Ecosystems for CPS
Domain-independent CPS platform
Cool Smart Grid Cool Smart Factory
Plugin/App Providers
Cool Logistics
Domain-specific CPS platforms
.....
Many more layers possible (platforms and ecosystems)
Layered Software Ecosystems für CPS
! Structure like Eclipse
Core Steering
Committee
Dependent Steering
Committees
Dependent Steering
Committees
Prof. U. Aßmann, CBSE 29
CPS-Plattform-Leadership
• In a value chain, every level can consist of a platform
CPS App Operating System Chips CPS
Platform CPS
App Store
Who will own the platform leaderships?
Prof. U. Aßmann, CBSE 30
It‘s kind of severe
• Prof. Wolfgang Wahlster (DFKI)
Cyber-Physical Systems are the „the next big thing“ in ICT and are of uttermost importance for the industrial evolution of Germany.
They form the basis of the 4th industrial revolution.
Prof. U. Aßmann, CBSE 31
Business Model for CPS Ecosystems
! Should be an instance of the Popp/Meyer generic model
[Popp,Meyer; Wei05]
Rolle Art des Produktes Financial Physical Intangible Human
Creator Entrepreneur Manufacturer Inventor -
Distributor Financial trader
Wholesaler, Retailer
IP distributor -
Lessor Financial lessor
IP lessor Contractor
Broker Financial broker
IP broker HR broker
Prof. U. Aßmann, CBSE 32
What have we learned?
► Composition systems are the basis of ► Product families ► Adaptive systems ► Platforms and Ecosystems ► CPS composition systems are multi-technical space
► Who will get the CPS software ecosystem?
Prof. U. Aßmann, CBSE 33
The End
Prof. U. Aßmann, CBSE 34
ResUbic Lab Dresden explores CPS www.resubic.org • .. exploring cyber-physical systems • ESF Nachwuchsforschergruppen
– ZESSY: safety-critical cyber-physical systems – EDYRA: seamless interaction, personal info services – FLEXCLOUD: cloud management
• 4,5 Mio € 2011-13, 19 Forscher, ESF, SMWK • Focus „Smart Office“
Physical Tool Cloud
ZESSY Safety-critical CPS
EDYRA Seamless interaction
FLEXCLOUD Cloud
management
Cyber-physical system welcome
Prof. U. Aßmann, CBSE 35
Two-level Algebra
► Algebren sind einstufig ► Man braucht eine Fragment-Collaboration zur Definition einer
zweistufigen Algebra, der Definition von Ports ► Der Lambda-Kalkül ist der erste sehr primitive zweistufige Algebra ► LambdaN macht es allgemeiner ► Fragment-Collaborations noch allgemeiner
► Port-lokale Verträge vs Komponenten-lokale verträge, die die Ports verknüpfen, aber innerhalb der Komponente bleiben