Eclipse Summit Nov08 Final

1,165 views

Published on

Final slidedeck for Tigerstripe presentation at Eclipse Summit'08

Published in: Technology, News & Politics
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,165
On SlideShare
0
From Embeds
0
Number of Embeds
40
Actions
Shares
0
Downloads
28
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Eclipse Summit Nov08 Final

    1. Tigerstripe Richard Craddock, Eric Dillon (Cisco) Integrated Model-Driven Engineering
    2. Need a bit of context? <ul><li>Technology Incubation Project </li></ul><ul><li>Focus on Model Driven Engineering </li></ul><ul><li>Existing User Community from Telecom Industry </li></ul><ul><li>Stabilizing after 1 st year as Eclipse project </li></ul><ul><ul><li>Initial contribution by Cisco in Dec’07 </li></ul></ul><ul><li>Used in production </li></ul><ul><ul><ul><li>Telecom Standards for OSS/BSS Interfaces </li></ul></ul></ul><ul><ul><ul><li>Model-Driven Network Mgmt Platforms (E.g. Cisco ANA) </li></ul></ul></ul>
    3. User Environment <ul><li>Big, detailed models for everything </li></ul><ul><ul><li>Devices, Network Equipment, Technologies, Protocols </li></ul></ul><ul><ul><li>Service Performance, Policies, etc… </li></ul></ul><ul><ul><li>Software packages, Systems, Configurations </li></ul></ul><ul><li>Models shared across Eco-System </li></ul>Standard Bodies Vendors Partners Integrators
    4. So! MDE Tooling needs to... <ul><li>Enable distributed modeling </li></ul><ul><ul><li>Distributed Teams & Organizations </li></ul></ul><ul><ul><li>Enforce Conventions </li></ul></ul><ul><ul><li>Fine grain control on model content/sharing </li></ul></ul><ul><li>Allow componentized models </li></ul><ul><ul><li>Strong versioning across lifecycle </li></ul></ul><ul><ul><li>Manage dependencies, builds, deployments </li></ul></ul>
    5. <ul><li>For modelers: Workbench </li></ul><ul><ul><li>UML-based Metamodel </li></ul></ul><ul><ul><li>Class Diagrams, Instance Diagrams </li></ul></ul><ul><ul><li>Model Scoping, validation </li></ul></ul><ul><ul><li>Integrated Code/Content Generation </li></ul></ul><ul><li>For Developers: base Framework… </li></ul><ul><ul><li>APIs, Ext. Points to customize env. </li></ul></ul><ul><ul><li>Headless, Buckminster, Maven, Ant </li></ul></ul><ul><li>… Annotation Framework </li></ul><ul><ul><li>EMF-based Model/Resource Annotation </li></ul></ul>Tigerstripe Framework
    6. Introducing…The Workbench references
    7. Model Scoping Out of Scope
    8. Template-based Code/Content Generation
    9. Instance-based vs. Class-based Generation
    10. Beyond the Workbench <ul><li>Use APIs to </li></ul><ul><ul><li>Import/Export models </li></ul></ul><ul><ul><li>Customize model auditing, naming conventions, decorations </li></ul></ul><ul><ul><li>Enhance modeling palette with templates </li></ul></ul><ul><li>Continuous Model build Environment </li></ul><ul><ul><li>Headless generation, Maven, Ant driven </li></ul></ul><ul><li>Buckminster Integration </li></ul><ul><ul><li>Materialize components, build them. </li></ul></ul>
    11. Flexible Model Annotations <ul><li>Stereotypes vs. Annotations </li></ul><ul><ul><li>Stereotypes: part of the model </li></ul></ul><ul><ul><ul><li>Intrinsic model information </li></ul></ul></ul><ul><ul><li>Annotations: decorations, separate from the model </li></ul></ul><ul><ul><ul><li>Additional info related to specific use of the model </li></ul></ul></ul><ul><ul><ul><li>Namespace based </li></ul></ul></ul>
    12. Annotations: A Closer Look <ul><li>Principles </li></ul><ul><ul><li>Associate Arbitrary EMF object with URI </li></ul></ul><ul><ul><li>Independent of Tigerstripe Core </li></ul></ul><ul><ul><li>Allow for custom UI, both as property view or on GMF diagrams </li></ul></ul><ul><ul><li>Control where they are persisted </li></ul></ul>package org.eclipse.tigerstripe.annotation.core; import org.eclipse.emf.common.util.URI; import org.eclipse.emf.ecore.EObject; public interface Annotation extends EObject { … URI getUri(); void setUri(URI value); … EObject getContent(); void setContent(EObject value); … String getId(); void setId(String value); } // Annotation
    13. Install Annotations… … and annotate the model. Selection-based view Native EditPart on GMF Diagrams Annotation “routed” to .ann file
    14. Customized Workbench
    15. Wrap-up <ul><li>Achievements </li></ul><ul><ul><li>EMF-Based Annotation Framework </li></ul></ul><ul><ul><li>Partial “framework-ization” of existing code </li></ul></ul><ul><ul><li>Buckminster integration </li></ul></ul><ul><li>What’s next? </li></ul><ul><ul><li>Continue on the path of “framework-ization” </li></ul></ul><ul><ul><li>Tigerstripe Specifics through EMF-APIs </li></ul></ul><ul><ul><li>Expand Communities </li></ul></ul>
    16. <ul><li>More details? Questions? </li></ul><ul><ul><li>http://www.eclipse.org/tigerstripe </li></ul></ul><ul><ul><li>http://wiki.eclipse.org/TigerstripeAtEclipseSummit08 </li></ul></ul>

    ×