Download presentation
Presentation is loading. Please wait.
Published byJason Cook Modified over 9 years ago
1
Slide title In CAPITALS 50 pt Slide subtitle 32 pt Robust Reconfigurable Erlang Component System ErlCOM Gabor Batori, Zoltan Theisz, Domonkos Asztalos ETH Software Engineering Group
2
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-102 Why? Robust –Fault tolerant, Highly available Reconfigurable –Adaptability to environmental changes Erlang –Ericsson’s preferred language Component –Separation of functionality –Structured, reusable code System –Application neutral framework
3
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-103 Component Model Component, Composite Component – Functionality Owner Interface, Receptacle – Interaction Point Owner Binding – Communication Owner Component Framework – Constraint Owner
4
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-104 Robust Component Model Capsule – Supervision Owner Caplet – Component Owner Component – Functionality Owner
5
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-105 Reconfiguration Reactive behavior: –Due to environmental changes (switch-over) –Due to HW/SW faults (fail-over) Implementation: –Reflectivity (observable) –Operational Facility (dynamic reconfiguration)
6
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-106 Basic concepts *No reasoning about messages **Interception consists of pre/post actions synchronous communication ConceptErlangErlCOM Concurrent entity ProcessComponent CommunicationMessage Passing* Binding** StateLocal state information Reflective Repository
7
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-107 RUNES Example Gateways represented by Capsules (running Erlang) Middleware and Application Component Frameworks using the services of the Ubiquitous CRTK
8
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-108 Erlang Mapping Component gen_server Interface/receptacle gen_server Binding gen_server Pre/post action process Capsule erlang node, gen_server Caplet gen_server, supervisor Reflective Repository mnesia CRTK module (floating reflective API)
9
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-109 Implementation details(1) Entity Relationship Diagram (ERD) + generated Erlang Code
10
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-1010 Implementation details(2) Message Sequence Chart (MSC) + Erlang Code (CRTK)
11
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-1011 What we have learnt? Entity Relationship Diagram helps identify concepts MSC helps describe dynamics Erlang provides versatile platform for component based systems Current implementation provides a feasible proof of concept for RUNES CRTK. BUT, the implementation code is COMPLEX
12
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-1012 How to reduce complexity? Custom libraries (API design) –Code maintenance problem (version handling) Custom behavior (language design and virtual machine) –Too intrusive, too costly Generative Programming (meta-modeling, modeling and transformation design) –New design approach Domain Specific Language engineering and supporting IDE needed
13
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-1013 Our solution Development cycle ERD,MSC ApplicationCode(Erlang)Application(Erlang) ErlCOM Structural Description Generates Translator(ErlangTemplates)
14
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-1014 Generic Modeling Environment (GME) NOT object-oriented, NOT UML Supports multi domain modeling Meta-model aware graphical editor Supports transformation frameworks Freely available, Open Source, BUT industry quality Perfect match to Erlang
15
Top right corner for field-mark, customer or partner logotypes. See Best practice for example. Slide title 40 pt Slide subtitle 24 pt Text 24 pt Bullets level 2-5 20 pt EUC 2005, Stockholm, Sweden2005-11-1015 Conclusion ErlCOM extends Erlang with new abstractions (like OTP) ErlCOM’s Component System provides adaptive behavior to Erlang applications in Run-Time ErlCOM’s GME IDE allows design abstraction driven Erlang code production in Development-Time Should not be used in application development where the Erlang abstraction level is perfectly sufficient (ErlCOM is a component based adaptive extension)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.