Software Development Analytics Intro. Twitter OSS workshop

7dddc875546948b5b5094167c90dc10d?s=47 Bitergia
March 05, 2018

Software Development Analytics Intro. Twitter OSS workshop

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

7dddc875546948b5b5094167c90dc10d?s=128

Bitergia

March 05, 2018
Tweet

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 Development

  3. /open everywhere Everybody Open Development

  4. /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.
  5. /community Everybody Community

  6. /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
  7. /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?
  8. /everybody loves collaboration Everybody Collaboration

  9. /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
  10. /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?
  11. /questions

  12. /questions “Without data, you are just another person with an

    opinion” W. Edwards Deming
  13. Software Development Analytics Let’s get data! What Why How When

  14. /monitoring “To measure is to know” “If you can not

    measure it, you can not improve it” Lord Kelvin
  15. What

  16. /what Human resources Community Activity Performance

  17. Why

  18. /why Transparency Awareness Governance support Motivational

  19. /collecting data nightmare Don’t get trapped by data

  20. How

  21. /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
  22. /how Methodologies Goals - Questions - Metrics (GQM) Objective -

    Key Results (OKR)
  23. /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
  24. /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
  25. /how/gqm/ questions How fast? How many customers? Where from? How

    diverse? Put your project logo here ???
  26. When

  27. /when Mature organization/project Transparency Aligned interests

  28. Examples

  29. Activity

  30. /activity

  31. /activity

  32. /activity

  33. Community

  34. /community

  35. /community

  36. /community Open Source Kibana network visualization plug-in: https://github.com/dlumbrer/kbn_network

  37. /community Onion model ASF Pony factor 80% contrib.: 7 core

    devs 15% contrib.:~ 40 regular 5% contrib: ~ 85 casual Pony factor: 1
  38. /community Source: @LawrenceHecht

  39. /community

  40. /community Node GitHub Pull Requests Mozilla Reps Activities Mozilla Commits

    by timezone
  41. Performance

  42. /performance

  43. /performance

  44. /performance Source: Some developers are more equal than others (Bitergia’s

    blog, 2015)
  45. /performance Source: Understanding How Companies Interact with Free Software Communities

    (IEEE, 2013)
  46. CHAOSS Community Health Analytics Open Source Software

  47. /chaoss Community Health Analytics Open Source Software chaoss.community

  48. /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
  49. /founding members

  50. /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
  51. /metrics Diversity & Inclusion Growth - Maturity - Decline Risk

    Dependency (ecosystem) wiki.linuxfoundation.org/chaoss/metrics lists.linuxfoundation.org/mailman/listinfo/oss-health-metrics
  52. wiki.linuxfoundation.org/chaoss/software lists.linuxfoundation.org/mailman/listinfo/chaoss-software /software chaoss.github.io/grimoirelab github.com/chaoss/prospector Prospector github.com/cregit github.com/OSSHealth/ghdata

  53. /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!
  54. /software/ prospector prospector.bitergia.net

  55. cregit.linuxsources.org /software/cregit

  56. /software/ grimoirelab chaoss.biterg.io

  57. Join us! chaoss.community/contact

  58. Software Development Analytics for your peace of mind chaoss.github.io/grimoirelab chaoss.community

    jsmanrique@bitergia.com CEO at Bitergia