Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Supporting Change Impact Analysis Using a Recommendation System - An Industrial Case Study in a Safety-Critical Context

154 views

Published on

Journal first presentation at ICSE'17 in Buenos Aires, Argentina.

M. Borg, K. Wnuk, B. Regnell, and P. Runeson. Supporting Change Impact Analysis Using a Recommendation System: An Industrial Case Study in a Safety-Critical Context, IEEE Transactions on Software Engineering, 43(6), pp. 675-700, 2017.

Published in: Science
  • Be the first to comment

  • Be the first to like this

Supporting Change Impact Analysis Using a Recommendation System - An Industrial Case Study in a Safety-Critical Context

  1. 1. SUPPORTING CHANGE IMPACT ANALYSIS USING A RECOMMENDATION SYSTEM - An Industrial Case Study in a Safety- Critical Context @mrksbrg Markus Borg, Krzysztof Wnuk, Björn Regnell, Per Runeson Research Institutes of Sweden Swedish Institute of Computer Science
  2. 2. Bug tracker
  3. 3. Development engineer, ABB, Malmö, Sweden  Editor and compiler development  Safety-critical systems PhD student, Lund University, Sweden  Machine learning for software engineering  Bug reports and traceability Senior researcher, RISE SICS AB, Lund, Sweden  Software engineering for machine learning  V&V for self-driving cars
  4. 4. 5
  5. 5. The Challenge The Solution The Evaluation
  6. 6. Reqts. DB Issue Repo Code Repo Test DB Doc. DB
  7. 7. Reqts. Tests
  8. 8.  System evolution since the 1980s  ~ 2 MLOC C/C++  Safety certification (SIL-2) Evolving automation system  Formal development process  V model, stage-gate process  ~200 SW engineers  Main sites in Sweden and India
  9. 9. The Challenge The Solution The Evaluation
  10. 10. Automated Change Impact Analysis  Intuitive tool to jump start analyses based on historical data  Goal: faster & more accurate analyses Approach: 1. Mine the history 2. Recommend impact
  11. 11. Part 1: Construct network of previously reported impact Index textual data with
  12. 12. Calculate centrality measures
  13. 13. Find similar bugs using Apache Lucene Part 2: Recommend impact Design Doc. X.Y Req. X.Y Test case UTC56 Req. Z.Y Design Doc. X.Y Follow links to identify candidate impact set
  14. 14. Use centrality measures to rank candidate impact 1. Requirement X.Y 2. Design Document X.Y 3. Test case UTC56 4. Design Document X.Y 5. Requirement Z.Y Find similar bugs using Apache Lucene Part 2: Recommend impact Follow links to identify candidate impact set
  15. 15. The Challenge The Solution The Evaluation
  16. 16. Correctness Utility RSSE
  17. 17.  Replay change impact history  Mine and build ImpRec using 8 years  Test ImpRec on 2 years of incoming bug reports Experiment - Correctness
  18. 18. Experiment - Correctness
  19. 19. Industrial case study - Utility  Selected two teams  Conducted interviews  Deployed ImpRec  Collected data for 3-9 months  Logged every click  Calculated correctness metrics  Conducted interviews
  20. 20. Industrial case study - Utility
  21. 21. Industrial case study - Utility
  22. 22. Industrial case study - Utility
  23. 23. Conclusion
  24. 24.  Reuse previous change impact analysis effort  Walk in the footsteps of previous engineers  Inspired by MSR, IR-based tracing, RSSE => ImpRec  Top-10 recommendations cover 40% of true impact  Developers find the level of correctness useful github.com/mrksbrg/ImpRec
  25. 25. Bug tracker
  26. 26. Bug tracker
  27. 27. THANKS! markus.borg@ri.se mrksbrg.com @mrksbrg Research Institutes of Sweden Swedish Institute of Computer Science PHOTO CREDITS Brown stink bug - Marlin E. Rice Isopods - Omoshiro Aquarium SW dev - Noglif, Flickr: templetonelliot, ifl, danburgmurmur My wife - My wife

×