A  DSL  for Corporate Wiki Initialization ONEKIN Research Group University of the Basque Country (Spain)  Jun 22th, 2011 C...
Outline <ul><li>Introduction </li></ul><ul><li>WSL Analysis </li></ul><ul><li>WSL Design </li></ul><ul><li>WSL Realization...
Introduction <ul><li>Wiki </li></ul><ul><li>Domain Specific Language (DSL) </li></ul><ul><li>Wiki Scaffolding Language (WS...
The success of the wiki Introduction www.communitywiki.org
Corporate wikis Introduction
Wiki scaffolding Introduction Structural concerns Communication  means Permission needs A  wiki installation  where some  ...
Wiki scaffolding requires … <ul><li>… organizational knowledge </li></ul><ul><ul><li>Organigrams </li></ul></ul><ul><ul><l...
Problem statement <ul><li>To make  wiki scaffolding  accessible to </li></ul><ul><ul><li>non-technical people ( who ) </li...
Which hat to wear? Domain expert  hat Introduction
What is the rabbit in the hat? <ul><li>Doman-Specific Languages </li></ul><ul><ul><li>“ A  programming language  that offe...
Why DSLs? <ul><li>Enhance  quality,  productivity, maintainability  and  portability </li></ul><ul><li>Allow domain expert...
Wiki Scaffolding Language (WSL) … pronounced “whistle” <ul><li>Aim : wiki scaffolding </li></ul><ul><li>Target audience : ...
WSL ANALYSIS
WSL Analysis <ul><li>Capture the company’s work practice and setting as long as they impact the wiki operation </li></ul>W...
Documentation setting WSL Analysis Company terminology Wiki Terms Glossary Category Content Article Documentation guidelin...
Communication setting WSL Analysis Internal External Discussion pages RSS feeds Templates Email
Organigram setting <ul><li>Existing hierarchy based on  roles  that the  employees  adopt in projects </li></ul>WSL Analysis
Restriction setting <ul><li>Two permissions:  read  and  edit  at page level   </li></ul>WSL Analysis
Presentation setting WSL Analysis WSL Wiki Terms WikiSize and wikiEditFreq Wiki Skin Logo Logo Sidebar Index Panes
WSL DESIGN
WSL Design <ul><li>Abstract syntax </li></ul><ul><li>Concrete syntax </li></ul>WSL Design
WSL Abstract Syntax  (metamodel) <ul><li>Abstract syntax describes  the concepts, the relationships  among them, and  cons...
WSL concrete syntax <ul><li>Mapping  between  the metamodel concepts  and   their  textual or visual representation </li><...
FreeMind <ul><li>FreeMind: popular, simple, open source and scalable </li></ul>WSL Design
FreeMind WSL Design
Example: a wiki for software documentation  <ul><li>Rationales : </li></ul><ul><ul><li>the scattering of stakeholders,  </...
FreeMind example  WSL Realization
WSL REALIZATION
Concrete Syntax <ul><li>A mapping is set between elements of the abstract syntax and their counterparts in FreeMind. </li>...
Concrete Syntax WSL Realization Abstract syntax FreeMind
VERIFICATION OF WSL MAPS Verification of WSL Maps
Verification of WSL Maps <ul><li>WSL expressions are FreeMind maps  </li></ul><ul><ul><li>But not all FreeMind maps are WS...
Verifying WSL Expressions Verification of WSL Maps
ENACTMENT OF WSL MAPS
Enactment of WSL Maps <ul><li>WSL maps are turned into a wiki installation  </li></ul>Enactment of WSL Maps
WSL generation Enactment of WSL Maps
Pages generated by WSL Enactment of WSL Maps
CONCLUSIONS
Conclusions <ul><li>WSL focus on “wikifolding” </li></ul><ul><ul><li>It bets for FreeMind to engage end users </li></ul></...
Conclusions <ul><li>DSL success </li></ul><ul><ul><li>right abstractions  </li></ul></ul><ul><ul><li>minimum disturbance t...
Thanks for your attention! [email_address] www.onekin.org/wsl twitter.com/GorkaPuente twitter.com/onekin
Upcoming SlideShare
Loading in …5
×

A DSL for Corporate Wiki Initialization (CAiSE'11)

774 views

Published on

Presentation for The 23rd International Conference on Advanced Information Systems Engineering (CAiSE'11). London (UK), Jun 22th, 2011

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

No Downloads
Views
Total views
774
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

A DSL for Corporate Wiki Initialization (CAiSE'11)

  1. 1. A DSL for Corporate Wiki Initialization ONEKIN Research Group University of the Basque Country (Spain) Jun 22th, 2011 CAISE 2011, London, United Kingdom Oscar Díaz and Gorka Puente
  2. 2. Outline <ul><li>Introduction </li></ul><ul><li>WSL Analysis </li></ul><ul><li>WSL Design </li></ul><ul><li>WSL Realization </li></ul><ul><li>Verification of WSL Maps </li></ul><ul><li>Enactment of WSL Maps </li></ul><ul><li>Conclusions </li></ul>
  3. 3. Introduction <ul><li>Wiki </li></ul><ul><li>Domain Specific Language (DSL) </li></ul><ul><li>Wiki Scaffolding Language (WSL) </li></ul>Introduction
  4. 4. The success of the wiki Introduction www.communitywiki.org
  5. 5. Corporate wikis Introduction
  6. 6. Wiki scaffolding Introduction Structural concerns Communication means Permission needs A wiki installation where some categories, templates, permissions , etc are initialized at the outset to mimic the corporate background
  7. 7. Wiki scaffolding requires … <ul><li>… organizational knowledge </li></ul><ul><ul><li>Organigrams </li></ul></ul><ul><ul><li>Internal documents </li></ul></ul><ul><ul><li>Terminology </li></ul></ul><ul><li>… technical knowledge </li></ul><ul><ul><li>Installing wiki engine </li></ul></ul><ul><ul><li>Installing extensions </li></ul></ul><ul><ul><li>Access control mechanisms </li></ul></ul><ul><ul><li>… </li></ul></ul>Introduction
  8. 8. Problem statement <ul><li>To make wiki scaffolding accessible to </li></ul><ul><ul><li>non-technical people ( who ) </li></ul></ul><ul><ul><li>that collaboratively agree ( how ) </li></ul></ul><ul><ul><li>on a blueprint for the wiki ( what ) </li></ul></ul>Introduction
  9. 9. Which hat to wear? Domain expert hat Introduction
  10. 10. What is the rabbit in the hat? <ul><li>Doman-Specific Languages </li></ul><ul><ul><li>“ A programming language that offers expressive power focused on a particular problem domain ” [1] </li></ul></ul>Introduction
  11. 11. Why DSLs? <ul><li>Enhance quality, productivity, maintainability and portability </li></ul><ul><li>Allow domain experts understand, validate and develop program themselves </li></ul>Introduction
  12. 12. Wiki Scaffolding Language (WSL) … pronounced “whistle” <ul><li>Aim : wiki scaffolding </li></ul><ul><li>Target audience : non programmers </li></ul><ul><li>Implementation Platform : FreeMind </li></ul>Introduction
  13. 13. WSL ANALYSIS
  14. 14. WSL Analysis <ul><li>Capture the company’s work practice and setting as long as they impact the wiki operation </li></ul>WSL Analysis
  15. 15. Documentation setting WSL Analysis Company terminology Wiki Terms Glossary Category Content Article Documentation guideline Template Event Event
  16. 16. Communication setting WSL Analysis Internal External Discussion pages RSS feeds Templates Email
  17. 17. Organigram setting <ul><li>Existing hierarchy based on roles that the employees adopt in projects </li></ul>WSL Analysis
  18. 18. Restriction setting <ul><li>Two permissions: read and edit at page level </li></ul>WSL Analysis
  19. 19. Presentation setting WSL Analysis WSL Wiki Terms WikiSize and wikiEditFreq Wiki Skin Logo Logo Sidebar Index Panes
  20. 20. WSL DESIGN
  21. 21. WSL Design <ul><li>Abstract syntax </li></ul><ul><li>Concrete syntax </li></ul>WSL Design
  22. 22. WSL Abstract Syntax (metamodel) <ul><li>Abstract syntax describes the concepts, the relationships among them, and constraints to respect the domain rules. </li></ul>WSL Design
  23. 23. WSL concrete syntax <ul><li>Mapping between the metamodel concepts and their textual or visual representation </li></ul><ul><li>WSL visual representation is Freemind mind map models </li></ul><ul><ul><li>Easy to engage end users </li></ul></ul><ul><ul><li>Capitalize on FreeMind interface </li></ul></ul>WSL Design
  24. 24. FreeMind <ul><li>FreeMind: popular, simple, open source and scalable </li></ul>WSL Design
  25. 25. FreeMind WSL Design
  26. 26. Example: a wiki for software documentation <ul><li>Rationales : </li></ul><ul><ul><li>the scattering of stakeholders, </li></ul></ul><ul><ul><li>the need for collaboration and tracking, </li></ul></ul><ul><ul><li>iterative manners </li></ul></ul>WSL Design
  27. 27. FreeMind example WSL Realization
  28. 28. WSL REALIZATION
  29. 29. Concrete Syntax <ul><li>A mapping is set between elements of the abstract syntax and their counterparts in FreeMind. </li></ul>WSL Realization WSL FreeMind MediaWiki Scaffolding Root node Main page Organigram Organigram bubble node n.a. Role Child of organigram node Wiki group Employee Grandson of organigram node Wiki user & user page Presentation Presentation bubble node Wiki skin Logo Logo node Wiki logo wikiSize Wikisize node Wiki skin WikieditFreq wikiEditFreq node with traffic light icons Wiki skin
  30. 30. Concrete Syntax WSL Realization Abstract syntax FreeMind
  31. 31. VERIFICATION OF WSL MAPS Verification of WSL Maps
  32. 32. Verification of WSL Maps <ul><li>WSL expressions are FreeMind maps </li></ul><ul><ul><li>But not all FreeMind maps are WSL expressions </li></ul></ul><ul><ul><li>Some constraints need to be obeyed: abstract syntax </li></ul></ul>Verification of WSL Maps
  33. 33. Verifying WSL Expressions Verification of WSL Maps
  34. 34. ENACTMENT OF WSL MAPS
  35. 35. Enactment of WSL Maps <ul><li>WSL maps are turned into a wiki installation </li></ul>Enactment of WSL Maps
  36. 36. WSL generation Enactment of WSL Maps
  37. 37. Pages generated by WSL Enactment of WSL Maps
  38. 38. CONCLUSIONS
  39. 39. Conclusions <ul><li>WSL focus on “wikifolding” </li></ul><ul><ul><li>It bets for FreeMind to engage end users </li></ul></ul>Conclusions
  40. 40. Conclusions <ul><li>DSL success </li></ul><ul><ul><li>right abstractions </li></ul></ul><ul><ul><li>minimum disturbance to existing practices </li></ul></ul><ul><li>Evaluation needed! </li></ul>
  41. 41. Thanks for your attention! [email_address] www.onekin.org/wsl twitter.com/GorkaPuente twitter.com/onekin

×