80 likes | 214 Views
Using Component Composition for Self-customizable Systems. Ioana Sora, Pierre Verbaeten, Yolande Berbers Katholieke Universiteit Leuven, Belgium. Building customizable network protocols. DiPS. Self-customization. Factors that introduce requirements How to make the decision of customization
E N D
Using Component Composition for Self-customizable Systems Ioana Sora, Pierre Verbaeten, Yolande Berbers Katholieke Universiteit Leuven, Belgium
Building customizable network protocols DiPS Self-customization • Factors that introduce requirements • How to make the decision of customization • Infrastructural support for changes What components will be deployed and in which collaborations ? This decision must be automatically made by a composition strategy implemented in the system
Managing complexity • Fine-tuned compositions • Unanticipated customizations Composition strategy • Flow-based architectures - decompose in layeredcompositions on each flow • Composable components System requirements ?
Component descriptions • Requires/provides clauses: sets of properties • Structure of composed components – structural constraints in the component description: • Basic structural constraints • Structural context-dependent requirements • Inter-flow dependencies REQ REQ PROV PROV PROV PROV PROV REQ REQ
Criteria of correct composition • Matching requires with provides clauses • Propagation of requirements REQ a,b,c PROV a REQ b,c PROV b REQ c
? ? ? REL TCP UDP IP IP ETH ETH ETHNI ETHNI Case study: customizable network protocols REQ: rel(WITH MultimediaRel), transp, non_local TCP ETH IP UDP ? ETHNI REL
Case study: customizable network protocols (2) ACK Sending Unit ACK Sending MultimediaRel Strategy Retransmission strategy ACKReceiving Unit ACK Receiving Timestamp Attacher PROV rel RoundTripTime Calculator Multiple Sending PacketType Router Header construction CRPHeader Constructor Header parsing CRPHeader Parser
Conclusions • Problems of automatic software composition: • How generic can be a solution ? • How much needs to be fixed beforehand? • Unanticipated compositions • Handling complex systems • Our solution: • a strategy for component composition, addresses flow-based architectures • uses composable components with structural constraints as a mechanism to express and extend initial assumptions and constraints and preserve a high degree of flexibility