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

Software Development Analytics Intro. Twitter O...

Bitergia
March 05, 2018

Software Development Analytics Intro. Twitter OSS workshop

Slides for an internal workshop in Twitter Inc. about Software Development Analytics.

Bitergia

March 05, 2018
Tweet

More Decks by Bitergia

Other Decks in Research

Transcript

  1. Software Development Analytics Intro (sort of) @bitergia jsmanrique at bitergia

    dot com https://speakerdeck.com/bitergia Twitter OSS internal workshop, Twitter Inc. offices, March 2018
  2. /open source everywhere Who is contributing* to open source software?

    How much/what/where are they contributing*? Who is driving successful projects? Who is behind an open source project? * Contributions can be made by code, issues, requests, etc.
  3. /everybody loves community Everybody Community “Developers want to be part

    of something bigger; they want to contribute and influence where that technology is going” The Power of Community in Open Source, The Newstack
  4. /community Which projects are more community attractive? Are projects retaining

    contributors? Are projects community-driven or enterprise-driven? How diverse is your community? Who are projects top contributors? Where does my community come from? Where else my community contributes?
  5. /software development management How openness can be applied to any

    IT development? Inner Source Managing Inner Source Projects (bit.ly/managing-innersource) DevOps DevOps framework: CALMS (Culture/Collaboration, Automation, Lean, Measurement, and Sharing) Agile Agile Manifesto
  6. /open development management How fast are we dealing with feedback

    (issues, requests, comments)? How long does it take to add new features? Are people engaged with the project/company? Is the project/company allowing innovation?
  7. /monitoring “To measure is to know” “If you can not

    measure it, you can not improve it” Lord Kelvin
  8. Why

  9. How

  10. /how/danger “Human beings adjust behavior based on the metrics they’re

    held against. Anything you measure will impel a person to optimize his score on that metric. What you measure is what you’ll get. Period”. You Are What You Measure by Dan Ariely
  11. /how/gqm Governance -> Goals <- Questions <- Metrics 1. Develop

    a set of corporate, division and project business goals and associated measurement goals for productivity and quality 2. Generate questions (based on models) that define those goals as completely as possible in a quantifiable way 3. Specify the measures needed to be collected to answer those questions and track process and product conformance to the goals 4. Develop mechanisms for data collection 5. Collect, validate and analyze the data in real time to provide feedback to projects for corrective action 6. Analyze the data in a post mortem fashion to assess conformance to the goals and to make recommendations for future improvements
  12. /how/gqm/goals “...accelerate open technology development and commercial adoption…” “...global development,

    distribution and adoption of the OpenStack cloud…” “...open, collaborative software development projects…” Put your project logo here Put your project vision/purpose here
  13. /community Onion model ASF Pony factor 80% contrib.: 7 core

    devs 15% contrib.:~ 40 regular 5% contrib: ~ 85 casual Pony factor: 1
  14. /mission Establish implementation-agnostic metrics for measuring community activity, contributions, and

    health Produce integrated, open source software for analyzing software development, and definition of standards and models used in that software in specific use cases Optionally produce standardized metric exchange formats, detailed use cases, models, or recommendations to analyze specific issues in the industry/OSS world
  15. /working groups Metrics Committee Implementation-agnostic community development metrics wiki.linuxfoundation.org/chaoss/metrics Software

    Committee Integrated FOSS tools for software development analytics wiki.linuxfoundation.org/chaoss/software
  16. /metrics Diversity & Inclusion Growth - Maturity - Decline Risk

    Dependency (ecosystem) wiki.linuxfoundation.org/chaoss/metrics lists.linuxfoundation.org/mailman/listinfo/oss-health-metrics
  17. /software/ghdata GHData is a Python library and REST server that

    provides data related to GitHub repositories. Hosting the GHData project requires a copy of the GHTorrent database. GHData is under heavy development; expect frequent backwards-incompatible changes until a 1.x.x release!