SlideShare a Scribd company logo
Alexander Sahm                           Walid Maalej
Technische Universität München          Technische Universität München
       sahm@cs.tum.edu                       maalejw@cs.tum.edu




Switch! Recommending Artifacts Needed
  Next Based on Personal and Shared
              Context


       3rd. International Workshop on Social Software Engineering
                            February 24, 2010
                           Paderborn, Germany




                                   1
Agenda




  2
Agenda

• The Switching Problem




                   2
Agenda

• The Switching Problem
•   Our Approach




                     2
Agenda

• The Switching Problem
•   Our Approach

•   The System




                     2
Agenda

• The Switching Problem
•   Our Approach

•   The System

•   Preliminary Evaluation




                             2
Scenario




   3
Scenario
•   Bob is fixing a bug in an iPhone App




                          3
Scenario
•   Bob is fixing a bug in an iPhone App

•   He uses different tools and artifacts




                            3
Scenario
•   Bob is fixing a bug in an iPhone App

•   He uses different tools and artifacts




                            3
Scenario
•   Bob is fixing a bug in an iPhone App

•   He uses different tools and artifacts




                            3
Scenario
•   Bob is fixing a bug in an iPhone App

•   He uses different tools and artifacts




                            3
Scenario
•   Bob is fixing a bug in an iPhone App

•   He uses different tools and artifacts




                            3
Scenario
•   Bob is fixing a bug in an iPhone App

•   He uses different tools and artifacts




                            3
His desktop looks like this




             4
Postponed tasks lead to more open windows




                    5
Switching Problem




        6
Switching Problem

• Windows of different tasks are mixed




                    6
Switching Problem

• Windows of different tasks are mixed
• A window-centric instead of an artifact-
  centric approach is used




                     6
Switching Problem

• Windows of different tasks are mixed
• A window-centric instead of an artifact-
  centric approach is used
• Used artifacts are not linked to the task


                      6
Switching Problem

• Windows of different tasks are mixed
• A window-centric instead of an artifact-
  centric approach is used
• Used artifacts are not linked to the task
• Open and closed artifacts are handled
  differently


                      6
Agenda

•   The Switching Problem

• Our Approach
•   The System

•   Preliminary Evaluation




                             7
Goals




  8
Goals

• Help engineers in switching between
  needed artifacts




                     8
Goals

• Help engineers in switching between
  needed artifacts
• Engineers can select the artifact needed
  next from a recommendation




                      8
Goals

• Help engineers in switching between
  needed artifacts
• Engineers can select the artifact needed
  next from a recommendation
• The artifact is opened and shown


                      8
Goals

• Help engineers in switching between
  needed artifacts
• Engineers can select the artifact needed
  next from a recommendation
• The artifact is opened and shown
          Detect engineer’s context

                      8
Components of Engineer’s Context




               9
Components of Engineer’s Context

• Task Semantics (Universal)




                     9
Components of Engineer’s Context

• Task Semantics (Universal)
• Interaction History (Personal)




                     9
Components of Engineer’s Context

• Task Semantics (Universal)
• Interaction History (Personal)
• Community Profile (Social)



                     9
Task Semantics




      10
Task Semantics

• Classification of software engineering tasks




                     10
Task Semantics

• Classification of software engineering tasks
• Common understanding of each task type




                     10
Task Semantics

• Classification of software engineering tasks
• Common understanding of each task type
  •   Universally used tool types




                               10
Task Semantics

• Classification of software engineering tasks
• Common understanding of each task type
  •   Universally used tool types
  •   Universally used artifact types




                                10
Task Semantics

• Classification of software engineering tasks
• Common understanding of each task type
  •   Universally used tool types
  •   Universally used artifact types
  ➡ Universal switching needs



                                10
Task Semantics

• Classification of software engineering tasks
• Common understanding of each task type
  •   Universally used tool types
  •   Universally used artifact types
  ➡ Universal switching needs
• Example: Bug reports are relevant during
  testing but not during requirements
  elicitation

                                10
Interaction History




         11
Interaction History

• The engineer’s interaction with the desktop
  environment




                     11
Interaction History

• The engineer’s interaction with the desktop
  environment
• Covers individual work habits



                     11
Interaction History

• The engineer’s interaction with the desktop
  environment
• Covers individual work habits
 •   Personally preferred tools




                             11
Interaction History

• The engineer’s interaction with the desktop
  environment
• Covers individual work habits
 •   Personally preferred tools
 •   Personally preferred artifacts




                              11
Interaction History

• The engineer’s interaction with the desktop
  environment
• Covers individual work habits
 •   Personally preferred tools
 •   Personally preferred artifacts
 ➡ Personal switching needs


                              11
Interaction History

• The engineer’s interaction with the desktop
  environment
• Covers individual work habits
 •   Personally preferred tools
 •   Personally preferred artifacts
 ➡ Personal switching needs
• Example: Todo list in text document
                              11
Community Profile




       12
Community Profile

• Combined interaction data shared by
  members of a community




                    12
Community Profile

• Combined interaction data shared by
  members of a community
• Covers community formed work-flows



                    12
Community Profile

• Combined interaction data shared by
  members of a community
• Covers community formed work-flows
 •   Tools used by a community




                            12
Community Profile

• Combined interaction data shared by
  members of a community
• Covers community formed work-flows
 •   Tools used by a community
 •   Artifacts used by a community




                            12
Community Profile

• Combined interaction data shared by
  members of a community
• Covers community formed work-flows
 •   Tools used by a community
 •   Artifacts used by a community
 ➡ Community dependent switching needs


                            12
Community Profile

• Combined interaction data shared by
  members of a community
• Covers community formed work-flows
 •   Tools used by a community
 •   Artifacts used by a community
 ➡ Community dependent switching needs
• Example: Bug tracker used by an open
  source project

                            12
Agenda

•   The Switching Problem

•   Our Approach

• The System
•   Preliminary Evaluation




                             13
Teamweaver Framework




         14
Teamweaver Framework

• Collects context information by monitoring
  user interaction




                     14
Teamweaver Framework

• Collects context information by monitoring
  user interaction
• Links the used artifacts to the
  corresponding task




                       14
Teamweaver Framework

• Collects context information by monitoring
  user interaction
• Links the used artifacts to the
  corresponding task
• Aggregates context information in a user
  profile



                       14
Teamweaver Framework

• Collects context information by monitoring
  user interaction
• Links the used artifacts to the
  corresponding task
• Aggregates context information in a user
  profile
• Shares the user profile among a community
                       14
Teamweaver Framework




         15
Context System and integrates it with the universal assumptions an
ta provided by the Distributed Knowledge Model. The result is u
                       Teamweaver Framework
he recommendation by selecting and ranking suitable artifacts. The
ommendation algorithm is discussed in detail below in section .

  Visual Paradigm for UML Standard Edition(TUM - Institut fuer Informatik - Lehrstuhl 1)



                                                                   Switch!



                                                             Context System

                 <<component>>                              <<component>>                  <<component>>
                 Context Monitor
                 Context Monitor                           Context Interpreter
                                                           Context Interpreter                 Profiler
                                                                                               Profiler




                                                    Distributed Knowledge Model

                <<component>>                              <<component>>                   <<component>>
             TeamWeaver Ontologies
             TeamWeaver Ontologies                        Local Metadata Store
                                                          Local Metadata Store             P2P Infrastructure
                                                                                           P2P Infrastructure




                                Fig. 2.          Switch! architecture overview

                                                                        15
Context System and integrates it with the universal assumptions an
ta provided by the Distributed Knowledge Model. The result is u
                       Teamweaver Framework
he recommendation by selecting and ranking suitable artifacts. The
ommendation algorithm is discussed in detail below in section .

  Visual Paradigm for UML Standard Edition(TUM - Institut fuer Informatik - Lehrstuhl 1)



                                                                   Switch!



                                                             Context System

                 <<component>>                              <<component>>                  <<component>>
                 Context Monitor
                 Context Monitor                           Context Interpreter
                                                           Context Interpreter                 Profiler
                                                                                               Profiler




                                                    Distributed Knowledge Model

                <<component>>                              <<component>>                   <<component>>
             TeamWeaver Ontologies
             TeamWeaver Ontologies                        Local Metadata Store
                                                          Local Metadata Store             P2P Infrastructure
                                                                                           P2P Infrastructure




                                Fig. 2.          Switch! architecture overview

                                                                        16
Context System and integrates it with the universal assumptions an
ta provided by the Distributed Knowledge Model. The result is u
                       Teamweaver Framework
he recommendation by selecting and ranking suitable artifacts. The
ommendation algorithm is discussed in detail below in section .

  Visual Paradigm for UML Standard Edition(TUM - Institut fuer Informatik - Lehrstuhl 1)



                                                                   Switch!



                                                             Context System

                 <<component>>                              <<component>>                  <<component>>
                 Context Monitor
                 Context Monitor                           Context Interpreter
                                                           Context Interpreter                 Profiler
                                                                                               Profiler




                                                    Distributed Knowledge Model

                <<component>>                              <<component>>                   <<component>>
             TeamWeaver Ontologies
             TeamWeaver Ontologies                        Local Metadata Store
                                                          Local Metadata Store             P2P Infrastructure
                                                                                           P2P Infrastructure




                                Fig. 2.          Switch! architecture overview

                                                                        17
Recommendation Algorithm




           18
Recommendation Algorithm

• Parameters




               18
Recommendation Algorithm

• Parameters
 •   Usage duration




                      18
Recommendation Algorithm

• Parameters
 •   Usage duration
 •   Usage frequency




                       18
Recommendation Algorithm

• Parameters
 •   Usage duration
 •   Usage frequency
 •   “Switched to”




                       18
Recommendation Algorithm

• Parameters
 •   Usage duration
 •   Usage frequency
 •   “Switched to”

• Calculate Recommendation in two steps:


                       18
Recommendation Algorithm

• Parameters
 •   Usage duration
 •   Usage frequency
 •   “Switched to”

• Calculate Recommendation in two steps:
 1. Find suitable artifact types based on task type




                             18
Recommendation Algorithm

• Parameters
 •   Usage duration
 •   Usage frequency
 •   “Switched to”

• Calculate Recommendation in two steps:
 1. Find suitable artifact types based on task type
 2. Calculate the relevancy of the concrete artifacts



                             18
Switch! User Interface




          19
Switch! User Interface
• Group used tools by purpose




                   19
Switch! User Interface
• Rank artifacts based on tool group




                     20
Switch! User Interface
•   Engineer selects artifact by mouse or keyboard




                        21
Agenda

•   The Switching Problem

•   Our Approach

•   The System

• Preliminary Evaluation


                        22
Preliminary Evaluation




          23
Preliminary Evaluation

• Internal use for currently supported task
  types (Work in progress)




                        23
Preliminary Evaluation

• Internal use for currently supported task
  types (Work in progress)
• Paper prototype experiment



                        23
Preliminary Evaluation

• Internal use for currently supported task
  types (Work in progress)
• Paper prototype experiment
  •   Created from printed Switch! UI




                            23
Preliminary Evaluation

• Internal use for currently supported task
  types (Work in progress)
• Paper prototype experiment
  •   Created from printed Switch! UI

  •   Conducted with 7 experienced software engineers




                            23
Paper Prototype - Example




            24
Paper Prototype - Example




            24
Paper Prototype - Findings




            25
Paper Prototype - Findings

•   Engineers appreciate our context-aware
    switching approach




                        25
Paper Prototype - Findings

•   Engineers appreciate our context-aware
    switching approach
•   Engineers need to get used to the UI concepts
    first (avg. < 5 min)




                        25
Paper Prototype - Findings

•   Engineers appreciate our context-aware
    switching approach
•   Engineers need to get used to the UI concepts
    first (avg. < 5 min)
•   5 of 7 would use Switch!




                         25
Paper Prototype - Findings

•   Engineers appreciate our context-aware
    switching approach
•   Engineers need to get used to the UI concepts
    first (avg. < 5 min)
•   5 of 7 would use Switch!
•   Most engineers want to understand
    recommendation rationale



                         25
Paper Prototype - Findings

•   Engineers appreciate our context-aware
    switching approach
•   Engineers need to get used to the UI concepts
    first (avg. < 5 min)
•   5 of 7 would use Switch!
•   Most engineers want to understand
    recommendation rationale
•   Engineers have privacy concerns

                         25
Conclusion and Future Work




            26
Conclusion and Future Work

• Current prototype is a first step in the
  right direction




                     26
Conclusion and Future Work

• Current prototype is a first step in the
  right direction
• Switch! needs to be evaluated in an
  industrial setting




                       26
Conclusion and Future Work

• Current prototype is a first step in the
  right direction
• Switch! needs to be evaluated in an
  industrial setting
• Recommendation could be improved by
  using graph based algorithm



                       26
Any Questions?


      27

More Related Content

PPT
Software Testing Fundamentals
KEY
Php com con-2011
PDF
Recommending refactoring operations in large software systems
PPT
Test Automation Best Practices (with SOA test approach)
PDF
Introduction to Test Automation
PPT
Automation testing strategy, approach & planning
PPTX
Software testing ppt
PDF
I'll See You On the Write Side of the Web
Software Testing Fundamentals
Php com con-2011
Recommending refactoring operations in large software systems
Test Automation Best Practices (with SOA test approach)
Introduction to Test Automation
Automation testing strategy, approach & planning
Software testing ppt
I'll See You On the Write Side of the Web

Similar to Switch! Recommending Artifacts Needed Next Based on Personal and Shared Context (20)

PDF
Alla ricerca della user story perduta
PDF
Alla ricerca della User Story perduta
PPTX
Unified Modeling Language
PDF
Assisting Engineers in Switching Artifacts by using Task Semantic and Interac...
PPTX
SOA - Architecture and Design
PPT
Migrating Interactive Legacy Systems To Web Services
PDF
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
PDF
Ubiquitous interactions
PDF
Korolev et al. Smart Space Applications Integration: A Mediation Formalism an...
PPTX
An Automatic Approach to Translate Use Cases to Sequence Diagrams
KEY
On the Relationship Between Change Coupling and Software Defects
PDF
Interaction Paradigms
PDF
Testing systemqualities agile2012
PDF
Testing System Qualities Agile2012 by Rebecca Wirfs-Brock and Joseph Yoder
PDF
Unified Modeling Language
PPTX
Chapter 3.pptx
PDF
SRCenabling application development for the internet of things
PDF
Monitoring service systems from
PPT
zAgile for OpenStack Summit - v2-3.ppt
Alla ricerca della user story perduta
Alla ricerca della User Story perduta
Unified Modeling Language
Assisting Engineers in Switching Artifacts by using Task Semantic and Interac...
SOA - Architecture and Design
Migrating Interactive Legacy Systems To Web Services
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
Ubiquitous interactions
Korolev et al. Smart Space Applications Integration: A Mediation Formalism an...
An Automatic Approach to Translate Use Cases to Sequence Diagrams
On the Relationship Between Change Coupling and Software Defects
Interaction Paradigms
Testing systemqualities agile2012
Testing System Qualities Agile2012 by Rebecca Wirfs-Brock and Joseph Yoder
Unified Modeling Language
Chapter 3.pptx
SRCenabling application development for the internet of things
Monitoring service systems from
zAgile for OpenStack Summit - v2-3.ppt
Ad

Recently uploaded (20)

PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Approach and Philosophy of On baking technology
PDF
Encapsulation_ Review paper, used for researhc scholars
PPT
Teaching material agriculture food technology
PDF
KodekX | Application Modernization Development
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
cuic standard and advanced reporting.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Network Security Unit 5.pdf for BCA BBA.
Building Integrated photovoltaic BIPV_UPV.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Reach Out and Touch Someone: Haptics and Empathic Computing
Approach and Philosophy of On baking technology
Encapsulation_ Review paper, used for researhc scholars
Teaching material agriculture food technology
KodekX | Application Modernization Development
Review of recent advances in non-invasive hemoglobin estimation
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
cuic standard and advanced reporting.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
“AI and Expert System Decision Support & Business Intelligence Systems”
Ad

Switch! Recommending Artifacts Needed Next Based on Personal and Shared Context

  • 1. Alexander Sahm Walid Maalej Technische Universität München Technische Universität München sahm@cs.tum.edu maalejw@cs.tum.edu Switch! Recommending Artifacts Needed Next Based on Personal and Shared Context 3rd. International Workshop on Social Software Engineering February 24, 2010 Paderborn, Germany 1
  • 4. Agenda • The Switching Problem • Our Approach 2
  • 5. Agenda • The Switching Problem • Our Approach • The System 2
  • 6. Agenda • The Switching Problem • Our Approach • The System • Preliminary Evaluation 2
  • 8. Scenario • Bob is fixing a bug in an iPhone App 3
  • 9. Scenario • Bob is fixing a bug in an iPhone App • He uses different tools and artifacts 3
  • 10. Scenario • Bob is fixing a bug in an iPhone App • He uses different tools and artifacts 3
  • 11. Scenario • Bob is fixing a bug in an iPhone App • He uses different tools and artifacts 3
  • 12. Scenario • Bob is fixing a bug in an iPhone App • He uses different tools and artifacts 3
  • 13. Scenario • Bob is fixing a bug in an iPhone App • He uses different tools and artifacts 3
  • 14. Scenario • Bob is fixing a bug in an iPhone App • He uses different tools and artifacts 3
  • 15. His desktop looks like this 4
  • 16. Postponed tasks lead to more open windows 5
  • 18. Switching Problem • Windows of different tasks are mixed 6
  • 19. Switching Problem • Windows of different tasks are mixed • A window-centric instead of an artifact- centric approach is used 6
  • 20. Switching Problem • Windows of different tasks are mixed • A window-centric instead of an artifact- centric approach is used • Used artifacts are not linked to the task 6
  • 21. Switching Problem • Windows of different tasks are mixed • A window-centric instead of an artifact- centric approach is used • Used artifacts are not linked to the task • Open and closed artifacts are handled differently 6
  • 22. Agenda • The Switching Problem • Our Approach • The System • Preliminary Evaluation 7
  • 24. Goals • Help engineers in switching between needed artifacts 8
  • 25. Goals • Help engineers in switching between needed artifacts • Engineers can select the artifact needed next from a recommendation 8
  • 26. Goals • Help engineers in switching between needed artifacts • Engineers can select the artifact needed next from a recommendation • The artifact is opened and shown 8
  • 27. Goals • Help engineers in switching between needed artifacts • Engineers can select the artifact needed next from a recommendation • The artifact is opened and shown Detect engineer’s context 8
  • 29. Components of Engineer’s Context • Task Semantics (Universal) 9
  • 30. Components of Engineer’s Context • Task Semantics (Universal) • Interaction History (Personal) 9
  • 31. Components of Engineer’s Context • Task Semantics (Universal) • Interaction History (Personal) • Community Profile (Social) 9
  • 33. Task Semantics • Classification of software engineering tasks 10
  • 34. Task Semantics • Classification of software engineering tasks • Common understanding of each task type 10
  • 35. Task Semantics • Classification of software engineering tasks • Common understanding of each task type • Universally used tool types 10
  • 36. Task Semantics • Classification of software engineering tasks • Common understanding of each task type • Universally used tool types • Universally used artifact types 10
  • 37. Task Semantics • Classification of software engineering tasks • Common understanding of each task type • Universally used tool types • Universally used artifact types ➡ Universal switching needs 10
  • 38. Task Semantics • Classification of software engineering tasks • Common understanding of each task type • Universally used tool types • Universally used artifact types ➡ Universal switching needs • Example: Bug reports are relevant during testing but not during requirements elicitation 10
  • 40. Interaction History • The engineer’s interaction with the desktop environment 11
  • 41. Interaction History • The engineer’s interaction with the desktop environment • Covers individual work habits 11
  • 42. Interaction History • The engineer’s interaction with the desktop environment • Covers individual work habits • Personally preferred tools 11
  • 43. Interaction History • The engineer’s interaction with the desktop environment • Covers individual work habits • Personally preferred tools • Personally preferred artifacts 11
  • 44. Interaction History • The engineer’s interaction with the desktop environment • Covers individual work habits • Personally preferred tools • Personally preferred artifacts ➡ Personal switching needs 11
  • 45. Interaction History • The engineer’s interaction with the desktop environment • Covers individual work habits • Personally preferred tools • Personally preferred artifacts ➡ Personal switching needs • Example: Todo list in text document 11
  • 47. Community Profile • Combined interaction data shared by members of a community 12
  • 48. Community Profile • Combined interaction data shared by members of a community • Covers community formed work-flows 12
  • 49. Community Profile • Combined interaction data shared by members of a community • Covers community formed work-flows • Tools used by a community 12
  • 50. Community Profile • Combined interaction data shared by members of a community • Covers community formed work-flows • Tools used by a community • Artifacts used by a community 12
  • 51. Community Profile • Combined interaction data shared by members of a community • Covers community formed work-flows • Tools used by a community • Artifacts used by a community ➡ Community dependent switching needs 12
  • 52. Community Profile • Combined interaction data shared by members of a community • Covers community formed work-flows • Tools used by a community • Artifacts used by a community ➡ Community dependent switching needs • Example: Bug tracker used by an open source project 12
  • 53. Agenda • The Switching Problem • Our Approach • The System • Preliminary Evaluation 13
  • 55. Teamweaver Framework • Collects context information by monitoring user interaction 14
  • 56. Teamweaver Framework • Collects context information by monitoring user interaction • Links the used artifacts to the corresponding task 14
  • 57. Teamweaver Framework • Collects context information by monitoring user interaction • Links the used artifacts to the corresponding task • Aggregates context information in a user profile 14
  • 58. Teamweaver Framework • Collects context information by monitoring user interaction • Links the used artifacts to the corresponding task • Aggregates context information in a user profile • Shares the user profile among a community 14
  • 60. Context System and integrates it with the universal assumptions an ta provided by the Distributed Knowledge Model. The result is u Teamweaver Framework he recommendation by selecting and ranking suitable artifacts. The ommendation algorithm is discussed in detail below in section . Visual Paradigm for UML Standard Edition(TUM - Institut fuer Informatik - Lehrstuhl 1) Switch! Context System <<component>> <<component>> <<component>> Context Monitor Context Monitor Context Interpreter Context Interpreter Profiler Profiler Distributed Knowledge Model <<component>> <<component>> <<component>> TeamWeaver Ontologies TeamWeaver Ontologies Local Metadata Store Local Metadata Store P2P Infrastructure P2P Infrastructure Fig. 2. Switch! architecture overview 15
  • 61. Context System and integrates it with the universal assumptions an ta provided by the Distributed Knowledge Model. The result is u Teamweaver Framework he recommendation by selecting and ranking suitable artifacts. The ommendation algorithm is discussed in detail below in section . Visual Paradigm for UML Standard Edition(TUM - Institut fuer Informatik - Lehrstuhl 1) Switch! Context System <<component>> <<component>> <<component>> Context Monitor Context Monitor Context Interpreter Context Interpreter Profiler Profiler Distributed Knowledge Model <<component>> <<component>> <<component>> TeamWeaver Ontologies TeamWeaver Ontologies Local Metadata Store Local Metadata Store P2P Infrastructure P2P Infrastructure Fig. 2. Switch! architecture overview 16
  • 62. Context System and integrates it with the universal assumptions an ta provided by the Distributed Knowledge Model. The result is u Teamweaver Framework he recommendation by selecting and ranking suitable artifacts. The ommendation algorithm is discussed in detail below in section . Visual Paradigm for UML Standard Edition(TUM - Institut fuer Informatik - Lehrstuhl 1) Switch! Context System <<component>> <<component>> <<component>> Context Monitor Context Monitor Context Interpreter Context Interpreter Profiler Profiler Distributed Knowledge Model <<component>> <<component>> <<component>> TeamWeaver Ontologies TeamWeaver Ontologies Local Metadata Store Local Metadata Store P2P Infrastructure P2P Infrastructure Fig. 2. Switch! architecture overview 17
  • 66. Recommendation Algorithm • Parameters • Usage duration • Usage frequency 18
  • 67. Recommendation Algorithm • Parameters • Usage duration • Usage frequency • “Switched to” 18
  • 68. Recommendation Algorithm • Parameters • Usage duration • Usage frequency • “Switched to” • Calculate Recommendation in two steps: 18
  • 69. Recommendation Algorithm • Parameters • Usage duration • Usage frequency • “Switched to” • Calculate Recommendation in two steps: 1. Find suitable artifact types based on task type 18
  • 70. Recommendation Algorithm • Parameters • Usage duration • Usage frequency • “Switched to” • Calculate Recommendation in two steps: 1. Find suitable artifact types based on task type 2. Calculate the relevancy of the concrete artifacts 18
  • 72. Switch! User Interface • Group used tools by purpose 19
  • 73. Switch! User Interface • Rank artifacts based on tool group 20
  • 74. Switch! User Interface • Engineer selects artifact by mouse or keyboard 21
  • 75. Agenda • The Switching Problem • Our Approach • The System • Preliminary Evaluation 22
  • 77. Preliminary Evaluation • Internal use for currently supported task types (Work in progress) 23
  • 78. Preliminary Evaluation • Internal use for currently supported task types (Work in progress) • Paper prototype experiment 23
  • 79. Preliminary Evaluation • Internal use for currently supported task types (Work in progress) • Paper prototype experiment • Created from printed Switch! UI 23
  • 80. Preliminary Evaluation • Internal use for currently supported task types (Work in progress) • Paper prototype experiment • Created from printed Switch! UI • Conducted with 7 experienced software engineers 23
  • 81. Paper Prototype - Example 24
  • 82. Paper Prototype - Example 24
  • 83. Paper Prototype - Findings 25
  • 84. Paper Prototype - Findings • Engineers appreciate our context-aware switching approach 25
  • 85. Paper Prototype - Findings • Engineers appreciate our context-aware switching approach • Engineers need to get used to the UI concepts first (avg. < 5 min) 25
  • 86. Paper Prototype - Findings • Engineers appreciate our context-aware switching approach • Engineers need to get used to the UI concepts first (avg. < 5 min) • 5 of 7 would use Switch! 25
  • 87. Paper Prototype - Findings • Engineers appreciate our context-aware switching approach • Engineers need to get used to the UI concepts first (avg. < 5 min) • 5 of 7 would use Switch! • Most engineers want to understand recommendation rationale 25
  • 88. Paper Prototype - Findings • Engineers appreciate our context-aware switching approach • Engineers need to get used to the UI concepts first (avg. < 5 min) • 5 of 7 would use Switch! • Most engineers want to understand recommendation rationale • Engineers have privacy concerns 25
  • 90. Conclusion and Future Work • Current prototype is a first step in the right direction 26
  • 91. Conclusion and Future Work • Current prototype is a first step in the right direction • Switch! needs to be evaluated in an industrial setting 26
  • 92. Conclusion and Future Work • Current prototype is a first step in the right direction • Switch! needs to be evaluated in an industrial setting • Recommendation could be improved by using graph based algorithm 26

Editor's Notes

  • #20: Used artifacts not linked: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #21: Used artifacts not linked: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #22: Used artifacts not linked: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #23: Used artifacts not linked: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #56: Context monitor: monitors the interaction of the engineer with the desktop (read files, surf web) Context Intrepreter: classifies artifacts (website-&gt;bugreport) - links to the engineers task Profiler: aggregates data in a general user profile (long time and sharing) - integrates received profiles
  • #57: Ontologies: semantic model of artifacts and relations Local Metadata Store: manages metadata of artifacts and task P2P Infrastructure: exchanges profiles with community
  • #58: Ontologies: semantic model of artifacts and relations Local Metadata Store: manages metadata of artifacts and task P2P Infrastructure: exchanges profiles with community
  • #98: - Um die anforderungen von entwicklern an unser programm auszuloten haben wir basierent auf dem vorgestellen interface Konzept einen Paper Prototypen entwickelt - dieser wurde mit mehreren softwareentwicklern durchgefuehrt - um sich den ablauf in etwas vorstellen zu koennen nun ein kurzes video
  • #99: - Um die anforderungen von entwicklern an unser programm auszuloten haben wir basierent auf dem vorgestellen interface Konzept einen Paper Prototypen entwickelt - dieser wurde mit mehreren softwareentwicklern durchgefuehrt - um sich den ablauf in etwas vorstellen zu koennen nun ein kurzes video
  • #103: Switch build on top of teamweaver using the different context information for recommendation
  • #104: aus der durchf&amp;#xFC;hrung ergaben sich mehrere ergbnisse auf die ich kurz eingehen will. - die entwicler haben des Prototypen durch die bank weg als positiv bewertet. sie wuerden ein entsprechendes Programm als hilfreich fuer ihre taeglich arbeit ansehen. - dies haben sie jedoch an kriterien gekn&amp;#xFC;pft wie eine qualitatv hochwertige empfehlung. Und eine gute anpassbarkeit an ihre individuell sehr verschiedenen work-flows
  • #105: aus der durchf&amp;#xFC;hrung ergaben sich mehrere ergbnisse auf die ich kurz eingehen will. - die entwicler haben des Prototypen durch die bank weg als positiv bewertet. sie wuerden ein entsprechendes Programm als hilfreich fuer ihre taeglich arbeit ansehen. - dies haben sie jedoch an kriterien gekn&amp;#xFC;pft wie eine qualitatv hochwertige empfehlung. Und eine gute anpassbarkeit an ihre individuell sehr verschiedenen work-flows
  • #107: Task history is lost: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #108: Task history is lost: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #109: Task history is lost: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #110: Task history is lost: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #111: Task history is lost: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)
  • #112: Task history is lost: The information on artifacts used during a task is not stored. e.g. when bob wants to resume a task he worked on yesterday and he didn&amp;#x2019;t bookmark all useful websites, he will need to repeat his web searches. (if he remembers them)