Stories About Renraku — the new Quality Model of Pharo (esug2016)

Stories About Renraku — the new Quality Model of Pharo (esug2016)

Earlier this year Pharo 5 was released with QualityAssistant on board. However the live quality feedback in the code browser is just the tip of the iceberg. The main value comes from Renraku — a quality model that was forged during the last two years based on the requirements of quality tools. One cannot simply “show” Renraku as it is just a meta-model with a set of handy functions. And I will never allow myself to bore audience by presenting dry specifications. Luckily I have enough stories that accumulated during the development to unveil Renraku by telling about the challenges and solutions that shaped Pharo’s quality model.

9847702de1f7f19db8c3e158325baa8e?s=128

Yuriy Tymchuk

August 23, 2016
Tweet

Transcript

  1. 1.

    Stories About Renraku — the new Quality Model of Pharo

    @yuriy_tymchuk Software Composition Group
  2. 2.

    Now. YT 25yo Now. YT 24yo 2006. YT 15yo Unikernel

    Freelance Team Helpdesk / Network Administrator ISP UARNet Interlogic outsourcing SW company Innocode SW company Physics and Mathematics Lyceum Minor Academy of Sciences of Ukraine Bachelor in Informatics MSc Inf. Ph.D. Lugano RMoD internship
  3. 3.

    Now. YT 25yo Now. YT 24yo 2006. YT 15yo Unikernel

    Freelance Team Helpdesk / Network Administrator ISP UARNet Interlogic outsourcing SW company Innocode SW company Physics and Mathematics Lyceum Minor Academy of Sciences of Ukraine Bachelor in Informatics MSc Inf. Ph.D. Lugano RMoD internship Ph.D. Bern
  4. 4.
  5. 7.
  6. 10.

    Very disturbing Disturbing Sometimes Disturbing Not influential Sometimes Useful Useful

    Very useful 46% 29% 17% 4% 4% How do you !nd QualityAssistant?
  7. 11.

    46% 29% 17% 4% 4% Very disturbing Disturbing Sometimes Disturbing

    Not influential Sometimes Useful Useful Very useful How often do you use CriticBrowser?
  8. 12.

    46% 29% 17% 4% 4% Very disturbing Disturbing Sometimes Disturbing

    Not influential Sometimes Useful Useful Very useful Don't Know Never Yearly Monthly Weekly Daily 24% 24% 22% 11% 11% 9% How often do you use CriticBrowser?
  9. 13.
  10. 14.
  11. 29.
  12. 39.

    Issue Tracker Connection We want to link FogBugs issues to

    Pharo’s classes and methods. Can we display this information in QualityAssistant?
  13. 45.
  14. 61.

    Types of Rules Transform. ParseTree Block ^ GLMGenericAction new icon:

    (Smalltalk ui icons iconNamed: #stop); action: [ self halt ]. 'Smalltalk ui icons iconNamed: `#aSymbol'
  15. 62.

    Types of Rules Transform. ParseTree Block ^ GLMGenericAction new icon:

    (Smalltalk ui icons iconNamed: #stop); action: [ self halt ]. 'Smalltalk ui icons iconNamed: `#aSymbol'
  16. 63.

    Types of Rules Transform. ParseTree Block ^ GLMGenericAction new icon:

    (Smalltalk ui icons iconNamed: #stop); action: [ self halt ]. 'Smalltalk ui icons iconNamed: `#aSymbol' '`#aSymbol asIcon'
  17. 64.

    Types of Rules Transform. ParseTree Block ^ GLMGenericAction new icon:

    (Smalltalk ui icons iconNamed: #stop); action: [ self halt ]. 'Smalltalk ui icons iconNamed: `#aSymbol' '`#aSymbol asIcon' ^ GLMGenericAction new icon: (#stop asIcon); action: [ self halt ].
  18. 65.
  19. 80.

    RePropertyAction new icon: #smallWindow asIcon; description: 'Open dependency analyzer'; action:

    [ :crit :package | self openDependencyAnalyzerOn: package ]; yourself Architectural Action
  20. 89.

    Now. YT 25yo 2006. YT 15yo Unikernel Freelance Team Helpdesk

    / Network Administrator ISP UARNet Interlogic outsourcing SW company Innocode SW company Physics and Mathematics Lyceum Minor Academy of Sciences of Ukraine Bachelor in Informatics MSc Inf. Ph.D. Lugano RMoD internship Ph.D. Bern
  21. 90.

    Now. YT 25yo 2006. YT 15yo Unikernel Freelance Team Helpdesk

    / Network Administrator ISP UARNet Interlogic outsourcing SW company Innocode SW company Physics and Mathematics Lyceum Minor Academy of Sciences of Ukraine Bachelor in Informatics MSc Inf. Ph.D. Lugano RMoD internship Ph.D. Bern
  22. 91.
  23. 92.
  24. 98.

    46% 29% 17% 4% 4% Code Properties Actionability Critiques in

    Monkey Object Critiques Better Feedback
  25. 99.

    46% 29% 17% 4% 4% Code Properties Actionability Critiques in

    Monkey Object Critiques Critiques in Debugger Better Feedback
  26. 100.

    46% 29% 17% 4% 4% Code Properties Actionability Critiques in

    Monkey Object Critiques Critiques in Debugger Better Feedback Rule Developer-friendliness
  27. 101.

    46% 29% 17% 4% 4% Code Properties Actionability Critiques in

    Monkey Object Critiques Usage Analysis Critiques in Debugger Better Feedback Rule Developer-friendliness
  28. 102.

    Usage Analysis 46% 29% 17% 4% 4% Object Critiques Better

    Feedback Code Properties Critiques in Debugger Actionability Critiques in Monkey Rule Developer-friendliness Continuos Refactoring
  29. 103.

      R E N R A K U object-agnostic

    tool-agnostic engine-agnostic yet connecting everything @yuriy_tymchuk Stories About Renraku — the new Quality Model of Pharo