SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Joomla Development &
   Release Strategy
        Andrea Tarr




                      S
Outline
    History
    Development Strategy
    Open Development Process




2               Andrea Tarr Joomla!dagen 2012
History




3        Andrea Tarr Joomla!dagen 2012
Earlier Release Cycles


S  Joomla 1.0 was released in September 2005

S  Joomla 1.5.0 was released in January 2008

S  Joomla 1.6.0 was released in January 2011




                               4                Andrea Tarr Joomla!dagen 2012
Too Long Between Releases


S  Contributors don’t see code used

S  We can’t keep up with current releases for third-party
   programs like PHP, MySQL, editors, MooTools, etc.

S  The Project is perceived as stagnant




                                5                 Andrea Tarr Joomla!dagen 2012
Development
    Strategy




6        Andrea Tarr Joomla!dagen 2012
Objectives


S  To continue to offer a stable and reliable platform for our
   current and future user base.

S  To make innovation available to users and developers on a
   more timely basis.

S  To make it easy for developers to contribute code to the
   project at any time.



                                   7               Andrea Tarr Joomla!dagen 2012
Major Principles


S  Maintain a stable trunk

S  Predictable, incremental software releases;

S  Strong backward compatibility support;

S  A sound security policy;

S  An open development process.



                                8                 Andrea Tarr Joomla!dagen 2012
Stable Trunk


S  Satisfy the Joomla Coding Standards

S  Pass all automated tests

S  Provide automated tests for all new API classes & methods

S  Provide basic documentation for all new additions to the
   code base




                               9                 Andrea Tarr Joomla!dagen 2012
Predictable, Incremental
         Software Releases

S  Move to Timed Releases: Release on specific dates rather
   than when certain features are all ready

S  Contributors can see code released quickly

S  Easier to keep up with other software (PHP, libraries,
   editors, etc.)




                                10                 Andrea Tarr Joomla!dagen 2012
Timed Releases


S  January 2011: Joomla 1.6.0 (should have been 2.0.0)

S  July 2011: Joomla 1.7.0 (should have been 2.1.0)

S  January 2012: Joomla 2.5

S  Minor releases are released about every 6-8 weeks
  depending on security issues or major bugs.




                               11                Andrea Tarr Joomla!dagen 2012
Version Strategy


S  Major.Minor[.Maintenance]

S  This numbering scheme starts completely with series 3

S  If we had started with this instead of 1.6, for example:

S  1.6.0 = 2.0.0

S  1.7.0 = 2.1.0

S  2.5.0 = 2.5.0


                                12                 Andrea Tarr Joomla!dagen 2012
Major Release


S  2.x.x -> 3.0.0

S  High degree of change

S  Massive Architectural and/or user interface changes

S  Substantial changes to underlying data model




                               13                  Andrea Tarr Joomla!dagen 2012
Minor Release


S  3.0.x -> 3.1.0

S  High degree of continuity, both architecturally and in the
   data model

S  Includes new or improved functionality




                                14                Andrea Tarr Joomla!dagen 2012
Maintenance Release


S  3.0.0 -> 3.0.1

S  Fixes to bugs, security vulnerabilities and usability issues
   only

S  New functionality is not introduced unless specifically
   addressing a problem with the previous release that must be
   handled before the next minor release*



                                 15                 Andrea Tarr Joomla!dagen 2012
Release Life Cycle


S  Alpha: Not feature complete, not suitable for production
   environments, intended for testing

S  Beta: Feature complete, not suitable for production environments,
   intended for testing and bug fixing. New features generally not
   introduced once we get to beta

S  Release Candidate: A beta that will go GA unless critical
   problems emerge

S  General Availability: Stable, ready for mass distribution


                                   16                   Andrea Tarr Joomla!dagen 2012
Release Phases


S  Maintenance (6 weeks)
    S  After a release reaches General Availability, it is still the main focus

S  Feature Merge (3 months)
    S  Focus moves to merging new features for the next Minor or Major release.

S  Release Testing (2 months)
    S  Beta period
    S  Online help documentation and translation strings are finalized
    S  Third party extension developers should start testing for backward
        compatibility issues


                                           17                       Andrea Tarr Joomla!dagen 2012
Support Lifetime


S  Standard Term Support (STS)
  S  Supported approximately 6 months
  S  End of life (EOL) 1 month after General Availability of next
     major or minor release

S  Long Term Support (LTS)
  S  Supported until 3 months after the release of a new Long Term
     Support release which is usually about 21 months
  S  1.5 security releases extended to at least September 2012


                                 18                   Andrea Tarr Joomla!dagen 2012
Open
     Development
     Process
     Open and accessible to anyone
     who wishes to participate




19                Andrea Tarr Joomla!dagen 2012
Aligning with a Vision


S  Difficulty bringing together people who want certain things done
   with volunteers who want to do it
S  Difficulty if volunteers want to do things that not many people
   want or need
S  Plan a theme or vision for each minor or major release

S  Comes from, individual contributors, Joomla Idea Pool, Joomla
   Leadership Team, etc.
S  Can still make code contributions outside of the vision


                                  20                   Andrea Tarr Joomla!dagen 2012
Collaboration &
                Communications

S  CMS Issue Tracker/CMS Feature Tracker to discuss specific issues

S  Google group lists for formal discussions
    S  CMS Core
    S  Platform
    S  General (Extension developers)
    S  See developer.joomla.org for links

S  Github

S  Production Working Groups


                                    21                 Andrea Tarr Joomla!dagen 2012
Production Working Groups –
     Permanent Groups

S  Permanent PWG’s
  S  Joomla Bug Squad (JBS)
  S  Translation Team (TT)
  S  User Experience (UX)
  S  Documentation
  S  Joomla Security Strike Team (JSST)




                                22         Andrea Tarr Joomla!dagen 2012
Production Working Groups –
    For Specific Projects

S  Update & Migration        S  UCM

S  Multi site                S  Unit Tests for the CMS

S  Search                    S  Search

S  Web Services              S  Database Performance




                         23                      Andrea Tarr Joomla!dagen 2012
Questions &
     Suggestions
     Slides:
     http://tarrconsulting.com/
     presentations/jd12nl/devstrat-
     jdnl.pdf




24                Andrea Tarr Joomla!dagen 2012

Mais conteúdo relacionado

Semelhante a Joomla development & release strategy - Andrea Tarr #jd12nl

State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014
Jody Garnett
 
HIT3328 - Chapter02 - Foundation and Tools
HIT3328 - Chapter02 - Foundation and ToolsHIT3328 - Chapter02 - Foundation and Tools
HIT3328 - Chapter02 - Foundation and Tools
Yhal Htet Aung
 
Using JIRA & Greenhopper for Agile Development
Using JIRA & Greenhopper for Agile DevelopmentUsing JIRA & Greenhopper for Agile Development
Using JIRA & Greenhopper for Agile Development
Jeff Leyser
 

Semelhante a Joomla development & release strategy - Andrea Tarr #jd12nl (20)

Android studio 4.0 new features preview
Android studio 4.0 new features previewAndroid studio 4.0 new features preview
Android studio 4.0 new features preview
 
Building a Quality Modelio with Q-Rapids by Softeam
Building a Quality Modelio with Q-Rapids by SofteamBuilding a Quality Modelio with Q-Rapids by Softeam
Building a Quality Modelio with Q-Rapids by Softeam
 
[SiriusCon 2018] Closing session - Live Community Survey
[SiriusCon 2018] Closing session - Live Community Survey[SiriusCon 2018] Closing session - Live Community Survey
[SiriusCon 2018] Closing session - Live Community Survey
 
State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014
 
Tizen Studio Watch Face Developer Guide
Tizen Studio Watch Face Developer GuideTizen Studio Watch Face Developer Guide
Tizen Studio Watch Face Developer Guide
 
Introduction to Watch Face Development with Tizen Studio
Introduction to Watch Face Development with Tizen StudioIntroduction to Watch Face Development with Tizen Studio
Introduction to Watch Face Development with Tizen Studio
 
DeCoupling Drupal
DeCoupling DrupalDeCoupling Drupal
DeCoupling Drupal
 
Managing Jira Cloud Projects ACP-620 Exam Questions
Managing Jira Cloud Projects ACP-620 Exam QuestionsManaging Jira Cloud Projects ACP-620 Exam Questions
Managing Jira Cloud Projects ACP-620 Exam Questions
 
HIT3328 - Chapter02 - Foundation and Tools
HIT3328 - Chapter02 - Foundation and ToolsHIT3328 - Chapter02 - Foundation and Tools
HIT3328 - Chapter02 - Foundation and Tools
 
MOTODEV Studio for Android
MOTODEV Studio for AndroidMOTODEV Studio for Android
MOTODEV Studio for Android
 
Italian Joomla!Day 19 January 2008
Italian Joomla!Day 19 January 2008Italian Joomla!Day 19 January 2008
Italian Joomla!Day 19 January 2008
 
Using JIRA & Greenhopper for Agile Development
Using JIRA & Greenhopper for Agile DevelopmentUsing JIRA & Greenhopper for Agile Development
Using JIRA & Greenhopper for Agile Development
 
Android 12 features preview so far
Android 12 features preview so farAndroid 12 features preview so far
Android 12 features preview so far
 
210 - Software Population Pyramids: The Current and the Future of OSS Develop...
210 - Software Population Pyramids: The Current and the Future of OSS Develop...210 - Software Population Pyramids: The Current and the Future of OSS Develop...
210 - Software Population Pyramids: The Current and the Future of OSS Develop...
 
edil19
edil19edil19
edil19
 
Versioning and License selection
Versioning and License selectionVersioning and License selection
Versioning and License selection
 
Slack integrations for Jira and Confluence
Slack integrations for Jira and ConfluenceSlack integrations for Jira and Confluence
Slack integrations for Jira and Confluence
 
Healthy Drupal 7 Upgrades
Healthy Drupal 7 UpgradesHealthy Drupal 7 Upgrades
Healthy Drupal 7 Upgrades
 
Java Support: What's changing
Java Support:  What's changingJava Support:  What's changing
Java Support: What's changing
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 

Mais de Joomla!Days Netherlands

Formulier extensies voor Joomla - Tijs Hensen #jd11nl
Formulier extensies voor Joomla - Tijs Hensen #jd11nlFormulier extensies voor Joomla - Tijs Hensen #jd11nl
Formulier extensies voor Joomla - Tijs Hensen #jd11nl
Joomla!Days Netherlands
 
Joomla 1.7 and beyond - Hannes Papenberg
Joomla 1.7 and beyond - Hannes PapenbergJoomla 1.7 and beyond - Hannes Papenberg
Joomla 1.7 and beyond - Hannes Papenberg
Joomla!Days Netherlands
 
Gezien vanuit de andere hoek - Joomla!Days NL 2010 #jd10nl
Gezien vanuit de andere hoek -  Joomla!Days NL 2010 #jd10nlGezien vanuit de andere hoek -  Joomla!Days NL 2010 #jd10nl
Gezien vanuit de andere hoek - Joomla!Days NL 2010 #jd10nl
Joomla!Days Netherlands
 
Building a successful open source business model - Joomla!Days NL 2010 #jd10nl
Building a successful open source business model  -  Joomla!Days NL 2010 #jd10nlBuilding a successful open source business model  -  Joomla!Days NL 2010 #jd10nl
Building a successful open source business model - Joomla!Days NL 2010 #jd10nl
Joomla!Days Netherlands
 
K2 for beginners - Joomla!Days NL 2010 #jd10nl
K2 for beginners  -  Joomla!Days NL 2010 #jd10nlK2 for beginners  -  Joomla!Days NL 2010 #jd10nl
K2 for beginners - Joomla!Days NL 2010 #jd10nl
Joomla!Days Netherlands
 

Mais de Joomla!Days Netherlands (20)

Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nl
Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nlSitemaps uit de doeken gedaan - Nico Bouwman - #jd15nl
Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nl
 
Een veilige joomla website - Teeuwis Hillebrand - #jd15nl
Een veilige joomla website - Teeuwis Hillebrand - #jd15nlEen veilige joomla website - Teeuwis Hillebrand - #jd15nl
Een veilige joomla website - Teeuwis Hillebrand - #jd15nl
 
Webshop met K2 Store - Rienk Vlieger - #jd15nl
Webshop met K2 Store - Rienk Vlieger - #jd15nlWebshop met K2 Store - Rienk Vlieger - #jd15nl
Webshop met K2 Store - Rienk Vlieger - #jd15nl
 
Case-study: thelanguageindustry.eu - #jd15nl
Case-study: thelanguageindustry.eu - #jd15nlCase-study: thelanguageindustry.eu - #jd15nl
Case-study: thelanguageindustry.eu - #jd15nl
 
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nl
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nlGeld verdienen met je Joomla site - Theo van der Zee - #jd15nl
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nl
 
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nl
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nlBeter vindbaar met Onpage SEO - Maurice Lehr - #jd15nl
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nl
 
Local Search: lokaal goed gevonden worden - Maurice Lehr - #jd15nl
Local Search: lokaal goed gevonden worden  - Maurice Lehr - #jd15nlLocal Search: lokaal goed gevonden worden  - Maurice Lehr - #jd15nl
Local Search: lokaal goed gevonden worden - Maurice Lehr - #jd15nl
 
JUGs Presentatie - #jd15nl
JUGs Presentatie - #jd15nlJUGs Presentatie - #jd15nl
JUGs Presentatie - #jd15nl
 
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nl
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nlEen autodealer website bouwen met Form2Content - René Kreijveld - #jd15nl
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nl
 
Going Live with a CheckList - René Kreijveld - #jd15nl
Going Live with a CheckList - René Kreijveld - #jd15nlGoing Live with a CheckList - René Kreijveld - #jd15nl
Going Live with a CheckList - René Kreijveld - #jd15nl
 
Joomla Governance - Paul Orwig #jd12nl
Joomla Governance - Paul Orwig #jd12nlJoomla Governance - Paul Orwig #jd12nl
Joomla Governance - Paul Orwig #jd12nl
 
Joomla Project - Paul Orwig #jd12nl
Joomla Project - Paul Orwig #jd12nlJoomla Project - Paul Orwig #jd12nl
Joomla Project - Paul Orwig #jd12nl
 
Joomla V - Paul Delbar #jd12nl
Joomla V - Paul Delbar #jd12nlJoomla V - Paul Delbar #jd12nl
Joomla V - Paul Delbar #jd12nl
 
CCK ZOO - Dick Verschuur #jd12nl
CCK ZOO - Dick Verschuur #jd12nlCCK ZOO - Dick Verschuur #jd12nl
CCK ZOO - Dick Verschuur #jd12nl
 
Formulier extensies voor Joomla - Tijs Hensen #jd11nl
Formulier extensies voor Joomla - Tijs Hensen #jd11nlFormulier extensies voor Joomla - Tijs Hensen #jd11nl
Formulier extensies voor Joomla - Tijs Hensen #jd11nl
 
Joomla als corporate cms - Ebo Eppenga
Joomla als corporate cms - Ebo EppengaJoomla als corporate cms - Ebo Eppenga
Joomla als corporate cms - Ebo Eppenga
 
Joomla 1.7 and beyond - Hannes Papenberg
Joomla 1.7 and beyond - Hannes PapenbergJoomla 1.7 and beyond - Hannes Papenberg
Joomla 1.7 and beyond - Hannes Papenberg
 
Gezien vanuit de andere hoek - Joomla!Days NL 2010 #jd10nl
Gezien vanuit de andere hoek -  Joomla!Days NL 2010 #jd10nlGezien vanuit de andere hoek -  Joomla!Days NL 2010 #jd10nl
Gezien vanuit de andere hoek - Joomla!Days NL 2010 #jd10nl
 
Building a successful open source business model - Joomla!Days NL 2010 #jd10nl
Building a successful open source business model  -  Joomla!Days NL 2010 #jd10nlBuilding a successful open source business model  -  Joomla!Days NL 2010 #jd10nl
Building a successful open source business model - Joomla!Days NL 2010 #jd10nl
 
K2 for beginners - Joomla!Days NL 2010 #jd10nl
K2 for beginners  -  Joomla!Days NL 2010 #jd10nlK2 for beginners  -  Joomla!Days NL 2010 #jd10nl
K2 for beginners - Joomla!Days NL 2010 #jd10nl
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Joomla development & release strategy - Andrea Tarr #jd12nl

  • 1. Joomla Development & Release Strategy Andrea Tarr S
  • 2. Outline History Development Strategy Open Development Process 2 Andrea Tarr Joomla!dagen 2012
  • 3. History 3 Andrea Tarr Joomla!dagen 2012
  • 4. Earlier Release Cycles S  Joomla 1.0 was released in September 2005 S  Joomla 1.5.0 was released in January 2008 S  Joomla 1.6.0 was released in January 2011 4 Andrea Tarr Joomla!dagen 2012
  • 5. Too Long Between Releases S  Contributors don’t see code used S  We can’t keep up with current releases for third-party programs like PHP, MySQL, editors, MooTools, etc. S  The Project is perceived as stagnant 5 Andrea Tarr Joomla!dagen 2012
  • 6. Development Strategy 6 Andrea Tarr Joomla!dagen 2012
  • 7. Objectives S  To continue to offer a stable and reliable platform for our current and future user base. S  To make innovation available to users and developers on a more timely basis. S  To make it easy for developers to contribute code to the project at any time. 7 Andrea Tarr Joomla!dagen 2012
  • 8. Major Principles S  Maintain a stable trunk S  Predictable, incremental software releases; S  Strong backward compatibility support; S  A sound security policy; S  An open development process. 8 Andrea Tarr Joomla!dagen 2012
  • 9. Stable Trunk S  Satisfy the Joomla Coding Standards S  Pass all automated tests S  Provide automated tests for all new API classes & methods S  Provide basic documentation for all new additions to the code base 9 Andrea Tarr Joomla!dagen 2012
  • 10. Predictable, Incremental Software Releases S  Move to Timed Releases: Release on specific dates rather than when certain features are all ready S  Contributors can see code released quickly S  Easier to keep up with other software (PHP, libraries, editors, etc.) 10 Andrea Tarr Joomla!dagen 2012
  • 11. Timed Releases S  January 2011: Joomla 1.6.0 (should have been 2.0.0) S  July 2011: Joomla 1.7.0 (should have been 2.1.0) S  January 2012: Joomla 2.5 S  Minor releases are released about every 6-8 weeks depending on security issues or major bugs. 11 Andrea Tarr Joomla!dagen 2012
  • 12. Version Strategy S  Major.Minor[.Maintenance] S  This numbering scheme starts completely with series 3 S  If we had started with this instead of 1.6, for example: S  1.6.0 = 2.0.0 S  1.7.0 = 2.1.0 S  2.5.0 = 2.5.0 12 Andrea Tarr Joomla!dagen 2012
  • 13. Major Release S  2.x.x -> 3.0.0 S  High degree of change S  Massive Architectural and/or user interface changes S  Substantial changes to underlying data model 13 Andrea Tarr Joomla!dagen 2012
  • 14. Minor Release S  3.0.x -> 3.1.0 S  High degree of continuity, both architecturally and in the data model S  Includes new or improved functionality 14 Andrea Tarr Joomla!dagen 2012
  • 15. Maintenance Release S  3.0.0 -> 3.0.1 S  Fixes to bugs, security vulnerabilities and usability issues only S  New functionality is not introduced unless specifically addressing a problem with the previous release that must be handled before the next minor release* 15 Andrea Tarr Joomla!dagen 2012
  • 16. Release Life Cycle S  Alpha: Not feature complete, not suitable for production environments, intended for testing S  Beta: Feature complete, not suitable for production environments, intended for testing and bug fixing. New features generally not introduced once we get to beta S  Release Candidate: A beta that will go GA unless critical problems emerge S  General Availability: Stable, ready for mass distribution 16 Andrea Tarr Joomla!dagen 2012
  • 17. Release Phases S  Maintenance (6 weeks) S  After a release reaches General Availability, it is still the main focus S  Feature Merge (3 months) S  Focus moves to merging new features for the next Minor or Major release. S  Release Testing (2 months) S  Beta period S  Online help documentation and translation strings are finalized S  Third party extension developers should start testing for backward compatibility issues 17 Andrea Tarr Joomla!dagen 2012
  • 18. Support Lifetime S  Standard Term Support (STS) S  Supported approximately 6 months S  End of life (EOL) 1 month after General Availability of next major or minor release S  Long Term Support (LTS) S  Supported until 3 months after the release of a new Long Term Support release which is usually about 21 months S  1.5 security releases extended to at least September 2012 18 Andrea Tarr Joomla!dagen 2012
  • 19. Open Development Process Open and accessible to anyone who wishes to participate 19 Andrea Tarr Joomla!dagen 2012
  • 20. Aligning with a Vision S  Difficulty bringing together people who want certain things done with volunteers who want to do it S  Difficulty if volunteers want to do things that not many people want or need S  Plan a theme or vision for each minor or major release S  Comes from, individual contributors, Joomla Idea Pool, Joomla Leadership Team, etc. S  Can still make code contributions outside of the vision 20 Andrea Tarr Joomla!dagen 2012
  • 21. Collaboration & Communications S  CMS Issue Tracker/CMS Feature Tracker to discuss specific issues S  Google group lists for formal discussions S  CMS Core S  Platform S  General (Extension developers) S  See developer.joomla.org for links S  Github S  Production Working Groups 21 Andrea Tarr Joomla!dagen 2012
  • 22. Production Working Groups – Permanent Groups S  Permanent PWG’s S  Joomla Bug Squad (JBS) S  Translation Team (TT) S  User Experience (UX) S  Documentation S  Joomla Security Strike Team (JSST) 22 Andrea Tarr Joomla!dagen 2012
  • 23. Production Working Groups – For Specific Projects S  Update & Migration S  UCM S  Multi site S  Unit Tests for the CMS S  Search S  Search S  Web Services S  Database Performance 23 Andrea Tarr Joomla!dagen 2012
  • 24. Questions & Suggestions Slides: http://tarrconsulting.com/ presentations/jd12nl/devstrat- jdnl.pdf 24 Andrea Tarr Joomla!dagen 2012