Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Using *Grimoire to analyze OpenStack

Using *Grimoire to analyze OpenStack

Slides for my participation in the OpenStack Summit Portland 2013. The talk explains some details about how the OpenStack companies analysis and the OpenStack Activity Dashboard were produced using MetricsGrimoire and vizGrimoire

http://blog.bitergia.com/2013/04/04/companies-contributing-to-openstack-grizzly-analysis/

http://activity.openstack.org/dash/

http://metricsgrimoire.github.com

http://vizgrimoire.github.com

Tweet

More Decks by Jesus M. Gonzalez-Barahona

Other Decks in Technology

Transcript

  1. Using *Grimoire to analyze OpenStack Jesus M. Gonzalez-Barahona [email protected] http://identi.ca/jgbarah

    http://twitter.com/jgbarah Bitergia GSyC/LibreSoft (Universidad Rey Juan Carlos) OpenStack Summit, Portland, April 15th, 2013 Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 1 / 20
  2. c 2012, 2013 Bitergia Some rights reserved. This presentation is

    distributed under the “Attribution-ShareAlike 3.0” license, by Creative Commons, available at http://creativecommons.org/licenses/by-sa/3.0/ Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 2 / 20
  3. We’re deploying the OpenStack activity dashboard (2) This is a

    (preliminary) preview!!! http://activity.openstack.org/dash/dashboard/ Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 5 / 20
  4. Measuring OpenStack activity Information about code, community, development for OpenStack

    can be retrieved, organized, analyzed Let’s do it! Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 6 / 20
  5. Measuring OpenStack activity (why?) Why? Open development: transparency Complex information:

    knowledge extraction Community-based decisions: objective information Decision tracking: parameters to decide ... Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 7 / 20
  6. Data has to be extracted, mined Data lives in repositories

    usually not designed to release it easily: tools are needed to retrieve and extract Data includes many complexities and details tools are needed to assist in mining, analysis Analyze free software with free software! Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 8 / 20
  7. The MetricsGrimoire approach Set of tools specialized in retrieving information

    from different kinds of repositories. Among them: CVSAnalY: source code management (CVS, Subversion, git, etc.) Bicho: issue tracking systems (Bugzilla, Jira, SourceForge, Allura, Launchpad, Google Code, etc.) & code revision systems (Gerrit) MLStats: mailing lists (mbox files, Mailman archives, etc.) Store all the information in SQL databases http://metricsgrimoire.github.com Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 9 / 20
  8. vizGrimoire: Milking the databases Once information is ready for querying:

    it can be queried directly in the database it can be analyzed from R, Python, etc. it can be filtered, manually inspected, improved it can be combined, cross-analyzed it can be visualized Set of tools to simplify & automate all of this https://vizgrimoire.github.com Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 10 / 20
  9. vizGrimoireR: statistics, charts R package specialized in managing MetricsGrimoire information

    Connects directly to the database and: gets the information from it filters & massages it does statistical analysis on it produces charts and WebGL 3D graphs produces JSON files to export to other tools ...and lets you unleash all the potential of R Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 11 / 20
  10. vizGrimoireJS: visualization JavaScript library producing visualizations Retrieves JSON files and

    produces: live charts: evolution, pies, bars, etc. tables and text comparative charts actionable dashboards soon to support links to information in forge Integration with HTML5 applications Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 12 / 20
  11. How the OpenStack dashboard is created Run MetricsGrimoire (CVSAnalY, Bicho,

    MLStats) on repositories Example: determining which git repositories to mine Produce queries specific for OpenStack Example: condition for deciding who closes a ticket Run customized Python & R scripts to produce JSON files Example: produce results per OpenStack subproject Customize vizGrimoireJS to display charts Example: remove bots from top tables Export the result via HTTP We still have performance issues... Do all of this continuously Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 13 / 20
  12. Future features: tracking other parameters Time 0.99 (black) / 0.95

    (green) / 0.5 (red) / 0.25 (blue) 2000 2002 2004 2006 2008 2010 2012 2 3 4 5 6 Time-to-close (quantiles over time): Time in minutes, log 10 scale Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 14 / 20
  13. Future features: tracking other parameters (2) Time-to-close (quantiles over time)

    Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 15 / 20
  14. Future features: tracking other parameters (3) Demographics (attraction rate, retention

    rate per generation) Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 16 / 20
  15. In summary... OpenStack repositories have a wealth of information We

    all can do (and many do) our own analysis Free software to analyze free software development Let’s define common formats to interface to different tools We can incrementally develop a powerful platform What would you like to know about OpenStack? Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 17 / 20
  16. Bitergia: an spin-off Started operations in July 2012 Builds on

    the experience of LibreSoft R&D group Offering professional products and services Focused on: Metrics about software development (including community metrics) Specialized support for development forges (including metrics for projects) http://bitergia.com Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 18 / 20
  17. Credits Thanks go to... Many LibreSoft developers who developed MetricsGrimoire

    The (small) community now maintaining MetricsGrimoire Some Bitergia developers producing vizGrimoire The (future) community maintaining vizGrimoire The many free software developers who produced all the software on which these tools rely You, who are producing OpenStack http://libresoft.es http://bitergia.com Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 19 / 20
  18. This is the end, my friend Please, provide *any* feedback

    [I would love to know what interested you the most] [...and the least] Final note: Let’s find ways to understand OpenStack a bit better Jesus Gonzalez-Barahona (Bitergia) Using *Grimoire to analyze OpenStack OpenStack Summit Portland 2013 20 / 20