Gabriele ColumbroStandard Application Lifecycle Management asCommunity and Enterprise Enabler(using Apache Maven)gabriele....
Agenda            Gabriele Columbro   gabriele.columbro@alfresco.com – Alfresco Software•   Ecosystem & developer ergonomi...
Who’s this guy?             Gabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Sofware   Gabriele Columbro    ...
Why do we love Open Source development?               Gabriele Columbro      gabriele.columbro@alfresco.com - Alfresco Sof...
In substance, freedom!!!            Gabriele Columbro          gabriele.columbro@alfresco.com - Alfresco Software   Integ...
Open Source needs Community             Gabriele Columbro     gabriele.columbro@alfresco.com - Alfresco Software   Market...
Ecosystem defined          Gabriele Columbro          gabriele.columbro@alfresco.com - Alfresco Software   An ecosystem is...
An early CommunityGabriele Columbro               gabriele.columbro@alfresco.com - Alfresco Software                     P...
An ecosystem driven Community           Gabriele Columbro                gabriele.columbro@alfresco.com - Alfresco Softwar...
Now that’s a real ecosystem Gabriele Columbro        gabriele.columbro@alfresco.com - Alfresco Software
Developer ergonomics is the KEY!    Gabriele Columbro       gabriele.columbro@alfresco.com - Alfresco Software     People ...
Developer Ergonomics defined              Gabriele Columbro      gabriele.columbro@alfresco.com - Alfresco Software   How...
How ergonomics turn a community into an Ecosystem?             Gabriele Columbro      gabriele.columbro@alfresco.com - Alf...
Chemistry and the Apache way  Gabriele Columbro      gabriele.columbro@alfresco.com – Alfresco SoftwareApache Chemistry Op...
A bit of history            Gabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Software   CMIS standard implem...
Maven + ASF. The dynamic duo Gabriele Columbro     gabriele.columbro@alfresco.com - Alfresco Software
Maven + ASF… releases like a CharmGabriele Columbro      gabriele.columbro@alfresco.com - Alfresco Software
Basically … paradiseGabriele Columbro      gabriele.columbro@alfresco.com - Alfresco Software
Who benefits from that?             Gabriele Columbro         gabriele.columbro@alfresco.com - Alfresco Software   Me, me...
The Maven + Alfresco story    Gabriele Columbro       gabriele.columbro@alfresco.com – Alfresco SoftwareThe Maven + Alfres...
You might have heard this story…             Gabriele Columbro       gabriele.columbro@alfresco.com - Alfresco SoftwareBos...
So what was this Alfresco thing?Gabriele Columbro        gabriele.columbro@alfresco.com - Alfresco Software
It’s a bit like…Gabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Software
A typical ECM scenarioGabriele Columbro        gabriele.columbro@alfresco.com - Alfresco Software
And the solution would be?Gabriele Columbro       gabriele.columbro@alfresco.com - Alfresco Software
And the solution would be?Gabriele Columbro       gabriele.columbro@alfresco.com - Alfresco Software
Who benefits from that?                Gabriele Columbro         gabriele.columbro@alfresco.com - Alfresco Software   Con...
But a fool with a tool is still a fool…Gabriele Columbro           gabriele.columbro@alfresco.com - Alfresco Software
Maven Alfresco SDKGabriele Columbro    gabriele.columbro@alfresco.com - Alfresco Software   Maven Alfresco SDK
A Community success story              Gabriele Columbro      gabriele.columbro@alfresco.com - Alfresco Software• 2008: Ma...
Yes we can!Gabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Software
SDK Components          Gabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Software• Alfresco Maven Plugin  – E...
SDK architecture    Gabriele Columbro                gabriele.columbro@alfresco.com - Alfresco Software                   ...
Because development can be easy…Gabriele Columbro      gabriele.columbro@alfresco.com - Alfresco Software
And Alfresco development can be!Gabriele Columbro       gabriele.columbro@alfresco.com - Alfresco Software
SDK Use Cases               Gabriele Columbro         gabriele.columbro@alfresco.com - Alfresco SoftwareAMP archetype  – C...
Documentation website                             Gabriele Columbro                       gabriele.columbro@alfresco.com -...
Quick demo               Gabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Software            All-in-One mult...
ConclusionsGabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Software      Conclusions & QA
SDK Use Cases           Gabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Software• Community is our best asse...
SDK as ecosystem enabler              Gabriele Columbro      gabriele.columbro@alfresco.com - Alfresco Software• What’s po...
A very promising startGabriele Columbro        gabriele.columbro@alfresco.com - Alfresco Software
A very promising start     Gabriele Columbro        gabriele.columbro@alfresco.com - Alfresco SoftwareThe Maven SDK provid...
Conclusion                Gabriele Columbro   gabriele.columbro@alfresco.com - Alfresco Software   Community and Enterpri...
Hopefully one step closer to …Gabriele Columbro        gabriele.columbro@alfresco.com - Alfresco Software
Thanks!                     Gabriele Columbro          gabriele.columbro@alfresco.com - Alfresco Software•References      ...
Upcoming SlideShare
Loading in …5
×

Standard Application Lifecycle Management as Community (and Enterprise) ecosystem enabler

791 views
706 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
791
On SlideShare
0
From Embeds
0
Number of Embeds
29
Actions
Shares
0
Downloads
8
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Standard Application Lifecycle Management as Community (and Enterprise) ecosystem enabler

  1. 1. Gabriele ColumbroStandard Application Lifecycle Management asCommunity and Enterprise Enabler(using Apache Maven)gabriele.columbro@alfresco.com, Alfresco Software
  2. 2. Agenda Gabriele Columbro gabriele.columbro@alfresco.com – Alfresco Software• Ecosystem & developer ergonomics• Chemistry & the Apache way• The Alfresco journey to standard SDK• Maven Alfresco SDK demo• Conclusions & Q/A
  3. 3. Who’s this guy? Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Sofware Gabriele Columbro Master in Engineering @ Roma3 Principal Architect, Alfresco Software Release Mgr, Apache Chemistry OpenCMIS Maven enthusiast & fundamentalist :) Alfresco Software Open Source ECM Community vs. Enterprise Java Based, Integrates Apache * and more
  4. 4. Why do we love Open Source development? Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco SoftwareAs a developer• Self-documenting• You are never alone!• Open Source ↔ StandardAs an Apache release manager• Lean release process• Automation• Standardization• Legal coverage
  5. 5. In substance, freedom!!! Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Integrating components Running on your laptop! No lock-ins Learn by example /Fix it yourself Community!
  6. 6. Open Source needs Community Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Marketing and Social Buzz Longevity of the product Quick issues turnaround Amount of (unstructured) documentation But: enough to ensure quality and self sustained long life of the product?
  7. 7. Ecosystem defined Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software An ecosystem is a community of living organisms(plants, animals and microbes) in conjunction with thenonliving components of their environment (things like air, water and mineral soil), interacting as a system. http://en.wikipedia.org/wiki/Ecosystem
  8. 8. An early CommunityGabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Product Software Docs Examples Community
  9. 9. An ecosystem driven Community Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software ProductSoftware PluginsDocs Issues / Fixes Ecosystem EnhancementsExamplesSDK Solutions Community
  10. 10. Now that’s a real ecosystem Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  11. 11. Developer ergonomics is the KEY! Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software People should be comfortable inwhat they do or otherwise they wont do it!
  12. 12. Developer Ergonomics defined Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software How simple is to build, test and run your software? Framework based development Clean / clear release cycle Dependency Management Core build vs. integration facilities Extension points How well / self documented it is?
  13. 13. How ergonomics turn a community into an Ecosystem? Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Allow developers to focus of “creativity” Standard No infrastructure gotchas Jump start, low RTFM
  14. 14. Chemistry and the Apache way Gabriele Columbro gabriele.columbro@alfresco.com – Alfresco SoftwareApache Chemistry OpenCMISEcosystem “the Apache Way”
  15. 15. A bit of history Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software CMIS standard implementation Project started in 2009 ASF contribution in late 2009 / early 2010 First incubator release in early 2010 Graduation in 2011 9 releases in 2 years Maven Release management might have been quite tedious! But...
  16. 16. Maven + ASF. The dynamic duo Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  17. 17. Maven + ASF… releases like a CharmGabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  18. 18. Basically … paradiseGabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  19. 19. Who benefits from that? Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Me, me, me! Community Well-know contracts and interfaces No brainer evaluation Did I mention ME? Enterprise Ecosystem Standard integration lifecycle Thorough legal / licensing enforcement Control over inbound software
  20. 20. The Maven + Alfresco story Gabriele Columbro gabriele.columbro@alfresco.com – Alfresco SoftwareThe Maven + Alfresco ecosystem
  21. 21. You might have heard this story… Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco SoftwareBoss: “You gotta learn Alfresco, quick!”Gab: “Mhmhmh…ok ” We all ♥ frameworks Modern and cool Open Source and Easy to use And Alfresco is all of that but…
  22. 22. So what was this Alfresco thing?Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  23. 23. It’s a bit like…Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  24. 24. A typical ECM scenarioGabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  25. 25. And the solution would be?Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  26. 26. And the solution would be?Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  27. 27. Who benefits from that? Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Confession  I have never used the “old” Alfresco SDK! (ehm…)  I need more productivity and standards! Why not?  Alfresco is just a webapp (WAR)  AMPs are no more than ZIPs managed by Alfresco Module Management tool Why can’t I use my favorite tool of choice?
  28. 28. But a fool with a tool is still a fool…Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  29. 29. Maven Alfresco SDKGabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Maven Alfresco SDK
  30. 30. A Community success story Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software• 2008: Maven Alfresco Archetypes founded• 2009: Maven Alfresco Lifecycle (up to 3.9.1) – More than 100 people on the public list• 2009: Maven Alfresco Lifecycle (up to 3.9.1) • More than 100 people on the public list• 2012: Alfresco Artifacts Repository! • More than 100 Enterprise customers subscribed!• Nov 2012: Maven Alfresco SDK™ released! • Backed by Alfresco Artifacts and POMs!
  31. 31. Yes we can!Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  32. 32. SDK Components Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software• Alfresco Maven Plugin – Embeds Alfresco MMT• Alfresco SDK Parent POM – SDK single point of entrance• Alfresco Platform Distribution POM – Community / Enterprise• Alfresco Maven archetypes – AMP & All-in-One
  33. 33. SDK architecture Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Archetypes SDK POM Plugin AlfrescoDeployment <dependency> Artifacts
  34. 34. Because development can be easy…Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  35. 35. And Alfresco development can be!Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  36. 36. SDK Use Cases Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco SoftwareAMP archetype – Create an Alfresco module from scratch – Create a Share customization from scratchAll-in-One archetype – Manage a full blown (foundation) Alfresco project – Build and distribute WARs (potentially depending on AMPs) – Evaluate Alfresco with one command – Demo Alfresco or reproduce an issue in minutesSDK Parent POM – Enable your existing Maven project to use SDK features – You are a guru and know much better than using archetypes!
  37. 37. Documentation website Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Softwarehttps://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-lifecycle-aggregator/latest/index.html
  38. 38. Quick demo Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software All-in-One multi-module packaging & embedded run0 manual downloads, 2 commands and you’re up and running! MAVEN_OPTS="-Xms256m -Xmx1G -XX:PermSize=300m"
  39. 39. ConclusionsGabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Conclusions & QA
  40. 40. SDK Use Cases Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software• Community is our best asset • Cannot be “controlled” • Cannot be “convinced” • Cannot be easily fooled • Ecosystem needs to be “seeded” • Turn your community into a lively ecosystem making it “easy for them” • Mainstream and Viral effect!• A standard process is critical for its sustainability!
  41. 41. SDK as ecosystem enabler Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software• What’s possible now • 2 commands, no downloads  up’n’running • Easy extension testing  Quality & easier support • Process reuse via archetypes• Community ecosystem enablement • Quick evaluation and contribution • Zero-BS approach with archetypes (nobody likes RTFM)• Enterprise ecosystem enablement • OEM and embedding of Alfresco (fine grained) • Drop all their custom Maven repositories! • Easy Community  Enterprise switch
  42. 42. A very promising startGabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  43. 43. A very promising start Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco SoftwareThe Maven SDK provides a platform to build a sustainable ecosystem!
  44. 44. Conclusion Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software Community and Enterprise network require an enabling technology to build a lively framework ecosystem Maven is a perfect enabler for  Simple, minimal RTFM, product evaluation  Scaling from individual to enterprise processes seamlessly  Opening up a black box in a controlled way!  Enabling integration process reuse (via archetypes)
  45. 45. Hopefully one step closer to …Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software
  46. 46. Thanks! Gabriele Columbro gabriele.columbro@alfresco.com - Alfresco Software•References Join the community• Alfresco Software • Alfresco Software• Maven Alfresco SDK • Maven Alfresco Community• Alfresco SDK Parent POM • Maven Alfresco on GoogleCode• Alfresco 4.2.b Platform Distribution POM • Twitter• Alfresco Artifacts Repository • @mindthegabz

×