Robust Reconfigurable Erlang Component System ErlCOM

Robust Reconfigurable Erlang Component System ErlCOM

Robust Reconfigurable Erlang Component System ErlCOM Gabor Batori, Zoltan Theisz, Domonkos Asztalos ETH Software Engineering Group Why? Robust Fault tolerant, Highly available Reconfigurable Adaptability to environmental changes Erlang Ericssons preferred language Component Separation of functionality

Structured, reusable code System Application neutral framework EUC 2005, Stockholm, Sweden 2 2005-11-10 Component Model Component, Composite Component Functionality Owner Interface, Receptacle Interaction Point Owner

Binding Communication Owner Component Framework Constraint Owner EUC 2005, Stockholm, Sweden 3 2005-11-10 Robust Component Model Capsule Supervision Owner Caplet Component Owner Component Functionality Owner EUC 2005, Stockholm, Sweden 4 2005-11-10

Reconfiguration Reactive behavior: Due to environmental changes (switch-over) Due to HW/SW faults (fail-over) Implementation: Reflectivity (observable) Operational Facility (dynamic reconfiguration) EUC 2005, Stockholm, Sweden 5 2005-11-10 Basic concepts Concept

Erlang ErlCOM Concurrent entity Process Component Communication Message Passing* Binding** State

Local state information Reflective Repository *No reasoning about messages **Interception consists of pre/post actions synchronous communication EUC 2005, Stockholm, Sweden 6 2005-11-10 RUNES Example Gateways represented by Capsules (running Erlang) Middleware and Application Component Frameworks using

the services of the Ubiquitous CRTK EUC 2005, Stockholm, Sweden 7 2005-11-10 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) EUC 2005, Stockholm, Sweden 8 2005-11-10 Implementation details(1) Entity Relationship Diagram (ERD) + generated Erlang Code EUC 2005, Stockholm, Sweden

9 2005-11-10 Implementation details(2) Message Sequence Chart (MSC) + Erlang Code (CRTK) EUC 2005, Stockholm, Sweden 10 2005-11-10 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 EUC 2005, Stockholm, Sweden 11 2005-11-10 How to reduce complexity? Custom libraries (API design) Custom behavior (language design and virtual machine)

Code maintenance problem (version handling) Too intrusive , too costly Generative Programming (meta-modeling, modeling and transformation design) New design approach Domain Specific Language engineering and supporting IDE needed EUC 2005, Stockholm, Sweden 12 2005-11-10

Our solution Development cycle Translator (Erlang Templates) ERD,MSC Generates ErlCOM Structural Description Application Code (Erlang) EUC 2005, Stockholm, Sweden

Application (Erlang) 13 2005-11-10 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 EUC 2005, Stockholm, Sweden 14 2005-11-10 Conclusion ErlCOM extends Erlang with new abstractions (like OTP) ErlCOMs Component System provides adaptive behavior to Erlang applications in Run-Time ErlCOMs 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)

EUC 2005, Stockholm, Sweden 15 2005-11-10

Recently Viewed Presentations

  • What is Macrobiotics? - Phiya Kushi

    What is Macrobiotics? - Phiya Kushi

    Book of Daniel 1.12-13 12 "Please test your servants for ten days, and let us be given some vegetables to eat and water to drink. 13 "Then let our appearance be observed in your presence and the appearance of the...
  • PowerPoint 演示文稿 - SJTU

    PowerPoint 演示文稿 - SJTU

    [3] Adam J Aviv, Katherine L Gibson, Evan Mossop, Matt Blaze, and Jonathan M Smith. 2010. Smudge Attacks on Smartphone Touch Screens. Woot 10 (2010), 1-7. [4] Jie Zhang, Xiaolong Zheng, Zhanyong Tang, Tianzhang Xing, Xiaojiang Chen, Dingyi Fang, Rong...
  • Announcements 1. You should be finishing Monk in

    Announcements 1. You should be finishing Monk in

    Explain the inheritance of height by a) indicating the number of gene pairs involved and b) by designating which genotypes yield tall and which yield dwarf. When studying a single character, a ratio expressed in 16 parts suggests that two...
  • The Concept of Big Data Reference Model - Metadata standard

    The Concept of Big Data Reference Model - Metadata standard

    Procedure for developing a reference model for Big Data. We are here. 32N2386-Reference . Model for Big Data. 1. Eliciting requirements and analyzing the environment of Big Data. 2. Establishing visions and strategies for achieving the goal of Big Data....
  • Biomechanics of the Spine & Hip  Movements of

    Biomechanics of the Spine & Hip Movements of

    Times Blank Presentation Biomechanics of the Spine & Hip Spinal Deviations Forces Acting On The Spine Upright Position Torque Spinal Muscles Role In Lifting Why Lift With The Legs? Question: How Much Torque Is Developed By The Erector Spinae Muscles...
  • Romeo and Juliet - Ms. McCallin's Classroom Page

    Romeo and Juliet - Ms. McCallin's Classroom Page

    Hamlet By William Shakespeare The very essence of Hamlet is twofold: One, it is a ghost story/murder mystery It is all about Hamlet revealing to the world who killed his father Superstition plays a big role in Hamlet Two, it...
  • Key Issue 2: Why Is Folk Culture Clustered?

    Key Issue 2: Why Is Folk Culture Clustered?

    Folk Housing & The Environment. Folk housing. Determined by available resources and social preferences. Different places use same material, but orientation and form of the houses are different. Examples: Madagascar, Laos, Thailand. (ALSO FengShui) for orientation and China for form.
  • Welcome to New Employee Orientation - Washington, D.C.

    Welcome to New Employee Orientation - Washington, D.C.

    The District of Columbia Government is an Equal Opportunity Employer. The District Government prohibits discrimination in employment because of race, color, religion, national origin, sex, age, marital status, personal appearance, sexual orientation, family responsibilities, matriculation, political affiliation, or physical handicap.