SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
RSSE’10,
Cape
Town,

South
Africa,
Mai
2010





                                Assis$ng
Engineers
in

                                 Switching
Ar$facts


                                      by
using
Task
Seman$cs

                                      and
Interac$on
History




                                 Walid
Maalej

and
Alexander
Sahm

                          Technische
Universität
München,
Germany

Execu$ve
Summary


                   1


                    Current
desktop
environments
lack
the
support
for

                    switching
between
ar6facts
during
engineers’
work




              2


                We
propose
a
context‐aware
switching
approach

                based
on
task
seman6cs
and
interac6on
history





©
W.
Maalej,
Mai
2010
         Assis$ng
Engineers
in
Switching
Ar$facts

   2
Outline


            1
           The
Switching
Problem



            2
           Our
Context‐Aware
Approach



            3
           The
System:
Switch!




            4
           Preliminary
Evalua$on
and
Outlook



©
W.
Maalej,
Mai
2010
        Assis$ng
Engineers
in
Switching
Ar$facts

   3

Example
of
Tools
and
Ar$facts
Used
in
a
Bug

             Fixing
Scenario
(iPhone
App)





©
W.
Maalej,
Mai
2010
   Assis$ng
Engineers
in
Switching
Ar$facts

   4
©
W.
Maalej,
Mai
2010
   Assis$ng
Engineers
in
Switching
Ar$facts

   5
Postponed
Tasks
Lead
to
Even
More
Windows
                                            





©
W.
Maalej,
Mai
2010
   Assis$ng
Engineers
in
Switching
Ar$facts

   6
©
W.
Maalej,
Mai
2010

Current
Desktop
Environments
Have
Four

                      Shortcomings

     Windows
of
different
tasks
                                          The
context
of
previous

     are
mixed
                                                          sessions
is
lost

     Task
irrelevant
windows
                                            Locate
the
ar6facts
when

     create
a
screen
cluAer
                                             resuming
tasks


                                                      The


                                                   Switching

                                                    Problem

   Switching
between
windows
                                            Different
workflows
for

   instead
of
ar$facts
                                                  open
and
closed
ar$facts

   Mul6‐layer
switching:
first
                                           Check
if
the
ar6fact
is
open,

   the
windows
then
the
ar6fact
                                         if
not:
find
it,
open
it


       More
details:
W.
Maalej,
Task‐First
or
Context‐First?
Tool
Integra6on
Revisited.
In
IEEE/ACM
ASE
2009


©
W.
Maalej,
Mai
2010
               Assis$ng
Engineers
in
Switching
Ar$facts

                                 8
Outline


            1
           The
Switching
Problem



            2
           Our
Context‐Aware
Approach



            3
           The
System:
Switch!




            4
           Preliminary
Evalua$on
and
Outlook



©
W.
Maalej,
Mai
2010
        Assis$ng
Engineers
in
Switching
Ar$facts

   9

The
Goal
is
to
Assist
Engineers
Switching

                        Between
Ar$facts  




                                         Engineers
can

       The
system
                                                         The
ar6fact
is

                                         easily
select
the

       recommends
                                                         shown
no
maAer

                                         ar6fact
from
the

       ar6facts
needed
                                                    whether

it
is

                                         set
of

       next
                                                               open
of
closed
                                         recommenda6ons



       1
                           2
                                     3

                         Detect
and
use
engineer’s
context



©
W.
Maalej,
Mai
2010
        Assis$ng
Engineers
in
Switching
Ar$facts

                     10
What
is
Engineer’s
Context?





           Task
                                                           Interac6on

        Seman6cs
                                                            History

                                          Context
                                                

        (Universal
                                                         (Personal

        Dimension) 
                                                       Dimension)  




©
W.
Maalej,
Mai
2010
        Assis$ng
Engineers
in
Switching
Ar$facts

                   11
Task
Seman$cs
(Universal
Dimension)
                                                


                                                                              Why?
        •    A
classifica$on
of
soXware

             engineering
tasks
(bug

             fixing,
implementa6on,
                          •  To
model
tool
types
and

             specifica6on,
modeling,
                            ar$fact
types
and
associate

             collabora6on…)
                                    them
to
task
types

        •    A
shared
common

                                                             •  Example:
A
tes6ng
tool
and

             understanding
of
each
task

                                                                test
documents
are
rather

             type
(ontology)

                                                                used
during
tes6ng
tasks

                                                                than
during
modeling
tasks

                         What?



©
W.
Maalej,
Mai
2010
           Assis$ng
Engineers
in
Switching
Ar$facts

                    12
Interac$on
History
(Personal
Dimension)
                                                 


                                                                              Why?
        •  The
engineer’s
interac6on
in

           her
workplace
(desktop

           environment)
                                    •  To
model
the
personal

                                                               switching
habits
and
need

           •  Individual
work
habits
                          of
engineers

           •  Preferred
tools

                                                            •  Example:
An
engineer

           •  Preferred
ar6facts

                                                               maintains
a
To‐do
list
in
text

                                                               document
instead
in
task

                                                               management
system

                         What?



©
W.
Maalej,
Mai
2010
           Assis$ng
Engineers
in
Switching
Ar$facts

                      13
Outline


            1
           The
Switching
Problem



            2
           Our
Context‐Aware
Approach



            3
           The
System:
Switch!




            4
           Preliminary
Evalua$on
and
Outlook



©
W.
Maalej,
Mai
2010
        Assis$ng
Engineers
in
Switching
Ar$facts

   14

Overall
Architecture


            
Switch!





©
W.
Maalej,
Mai
2010
    Assis$ng
Engineers
in
Switching
Ar$facts

   15
Overall
Recommenda$on
Process
                                              



                     1
                                 2



                         
Find
suitable                      Calculate
the

                         ar$fact
types
                      relevance
of

                         based
on
task
                      each
ar$fact

                           seman$cs
                          to
switch
to





©
W.
Maalej,
Mai
2010
          Assis$ng
Engineers
in
Switching
Ar$facts

    16
Recommenda$on
Heuris$cs
                                               



                    Frequency
                   The usage frequency of an
                                                 artifact by the engineer

                                                 The
6me
in
seconds
the
usage

                    Dura$on

                    of
an
ar6fact
by
the
engineer


                                                 The
number
of
switches

                    Switched
To
                 between
two
ar6facts



                                                 The
relevance
of
the
ar6fact

                     Relevance
                  for
this
switch




©
W.
Maalej,
Mai
2010
       Assis$ng
Engineers
in
Switching
Ar$facts

           17
UI
Principle
1:
Group
Tools
by
Purposes
                                                  





©
W.
Maalej,
Mai
2010
   Assis$ng
Engineers
in
Switching
Ar$facts

   18
UI
Principle
2:
Rank
Ar$facts
in
Each
Tool
Group





©
W.
Maalej,
Mai
2010
   Assis$ng
Engineers
in
Switching
Ar$facts

   19
UI
Principle
3:
Ar$facts
Clickable
by
Mouse
and

                       Keyboard  





©
W.
Maalej,
Mai
2010
   Assis$ng
Engineers
in
Switching
Ar$facts

   20
Outline


            1
           The
Switching
Problem



            2
           Our
Context‐Aware
Approach



            3
           The
System:
Switch!




            4
           Preliminary
Evalua$on
and
Outlook



©
W.
Maalej,
Mai
2010
             From
Work
To
Word
         21

Preliminary
Evalua$on


                           •  Internal
use
for
currently
supported
task
types

                              (work
in
progress)

       Internal

       evalua$on
of
       •  Switch!
Supports
bug
fixing,
tes6ng
and

       Switch!
               documen6ng

       prototype
          •  Current
version
handles
source
code,
PDFs,

                              emails,
text
documents,
and
web
pages



                           •  Paper
prototype
experiment

         Paper

                           •  Created
from
printed
Switch!
user
interface

         prototype

         experiment
       •  Conducted
with
7
experienced
soXware

                              engineers
(from
Equinux
&
MacInTUM)




©
W.
Maalej,
Mai
2010
     Assis$ng
Engineers
in
Switching
Ar$facts

            22

Paper
Prototype
‐
Example





©
W.
Maalej,
Mai
2010
       Assis$ng
Engineers
in
Switching
Ar$facts

   23
Paper
Prototype
‐
Findings
                                                  


           1

                 Subjects
confirmed
the
switching
problem
and
appreciated
our

                 context‐aware
approach
(5
of
7
subjects
would
use
Switch!)



           2

                 Subjects
needed
to
get
used
to
the
user
interface
concepts
(avg.
<

                 5
min.)



           3

                 Subjects
wanted
to
understand
recommenda6on
ra$onale



           4

                 Most
subjects
had
privacy
concerns
due
to
the
system
wide

                 context
observa6on



©
W.
Maalej,
Mai
2010
          Assis$ng
Engineers
in
Switching
Ar$facts

             24
Conclusion
and
Future
Work


    Extend
Switch!
to
                   Improve
                             Make
privacy
and

   other
task
types
and
            recommenda6ons
                          usability
a
fist
order

      evaluate
it
in
                by
detec6ng
the
                        concern
in
context‐
    industrial
seangs
                 task
change
                        aware
recommenda6on

               3
                              4
                                     5





           Developers
encounter
                          Our
context‐aware
approach

         frequent
problems
while
                         seems
to
be
appropriate
for

        switching
between
ar6facts
                      addressing
switching
problems

                         1
                                                    2



©
W.
Maalej,
Mai
2010
        Assis$ng
Engineers
in
Switching
Ar$facts

                        25
Feedback,
Ques$ons,
Sugges$ons

                  and
Collabora$on
are
Welcomed!

                   Walid
Maalej

                           Alexander
Sahm

                       TUM
                                      TUM

                maalejw@cs.tum.edu
                        sahm@cs.tum.edu






                              hAp://TeamWeaver.org


©
W.
Maalej,
Mai
2010
      Assis$ng
Engineers
in
Switching
Ar$facts

         26

Weitere ähnliche Inhalte

Ähnlich wie Assisting Engineers in Switching Artifacts by using Task Semantic and Interaction History

Empirical Evidence Of Agile Methods
Empirical Evidence Of Agile MethodsEmpirical Evidence Of Agile Methods
Empirical Evidence Of Agile MethodsGrigori Melnik
 
Graph Pattern Identification
Graph Pattern IdentificationGraph Pattern Identification
Graph Pattern IdentificationAakash Ahmad
 
Introduction to Unit Testing
Introduction to Unit TestingIntroduction to Unit Testing
Introduction to Unit TestingSwanky Hsiao
 
Nakayama Estimation Of Viewers Response For Contextual Understanding Of Tasks...
Nakayama Estimation Of Viewers Response For Contextual Understanding Of Tasks...Nakayama Estimation Of Viewers Response For Contextual Understanding Of Tasks...
Nakayama Estimation Of Viewers Response For Contextual Understanding Of Tasks...Kalle
 
Modern Container Orchestration (Without Breaking the Bank)
Modern Container Orchestration (Without Breaking the Bank)Modern Container Orchestration (Without Breaking the Bank)
Modern Container Orchestration (Without Breaking the Bank)All Things Open
 
User Centered Technology Group Overview
User Centered Technology Group OverviewUser Centered Technology Group Overview
User Centered Technology Group OverviewJay Trimble
 
Can Development Work Describe Itself?
Can Development Work Describe Itself?Can Development Work Describe Itself?
Can Development Work Describe Itself?Walid Maalej
 
IaaS Cloud Benchmarking: Approaches, Challenges, and Experience
IaaS Cloud Benchmarking: Approaches, Challenges, and ExperienceIaaS Cloud Benchmarking: Approaches, Challenges, and Experience
IaaS Cloud Benchmarking: Approaches, Challenges, and ExperienceAlexandru Iosup
 
Improving the Performance of Mapping based on Availability- Alert Algorithm U...
Improving the Performance of Mapping based on Availability- Alert Algorithm U...Improving the Performance of Mapping based on Availability- Alert Algorithm U...
Improving the Performance of Mapping based on Availability- Alert Algorithm U...AM Publications
 
Testing of C software components using Models
Testing of C software components using ModelsTesting of C software components using Models
Testing of C software components using ModelsDharmalingam Ganesan
 
five Sling features you should know
five Sling features you should knowfive Sling features you should know
five Sling features you should knowconnectwebex
 
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...Yahoo Developer Network
 
Bouc2009 d marks_1004_universe_design
Bouc2009 d marks_1004_universe_designBouc2009 d marks_1004_universe_design
Bouc2009 d marks_1004_universe_designmaqilahmad
 
Runtime Behavior of JavaScript Programs
Runtime Behavior of JavaScript ProgramsRuntime Behavior of JavaScript Programs
Runtime Behavior of JavaScript ProgramsIRJET Journal
 
Roots of scrum 2011_Jeff Sutherland氏
Roots of scrum 2011_Jeff Sutherland氏Roots of scrum 2011_Jeff Sutherland氏
Roots of scrum 2011_Jeff Sutherland氏InnovationSprint2011
 
E5 05 ijcite august 2014
E5 05 ijcite august 2014E5 05 ijcite august 2014
E5 05 ijcite august 2014ijcite
 
Exploiting dynamic resource allocation for
Exploiting dynamic resource allocation forExploiting dynamic resource allocation for
Exploiting dynamic resource allocation foringenioustech
 
Eventual Consistency – Du musst keine Angst haben
Eventual Consistency – Du musst keine Angst habenEventual Consistency – Du musst keine Angst haben
Eventual Consistency – Du musst keine Angst habenSusanne Braun
 

Ähnlich wie Assisting Engineers in Switching Artifacts by using Task Semantic and Interaction History (20)

Empirical Evidence Of Agile Methods
Empirical Evidence Of Agile MethodsEmpirical Evidence Of Agile Methods
Empirical Evidence Of Agile Methods
 
335 340
335 340335 340
335 340
 
Graph Pattern Identification
Graph Pattern IdentificationGraph Pattern Identification
Graph Pattern Identification
 
Introduction to Unit Testing
Introduction to Unit TestingIntroduction to Unit Testing
Introduction to Unit Testing
 
Nakayama Estimation Of Viewers Response For Contextual Understanding Of Tasks...
Nakayama Estimation Of Viewers Response For Contextual Understanding Of Tasks...Nakayama Estimation Of Viewers Response For Contextual Understanding Of Tasks...
Nakayama Estimation Of Viewers Response For Contextual Understanding Of Tasks...
 
Modern Container Orchestration (Without Breaking the Bank)
Modern Container Orchestration (Without Breaking the Bank)Modern Container Orchestration (Without Breaking the Bank)
Modern Container Orchestration (Without Breaking the Bank)
 
User Centered Technology Group Overview
User Centered Technology Group OverviewUser Centered Technology Group Overview
User Centered Technology Group Overview
 
Can Development Work Describe Itself?
Can Development Work Describe Itself?Can Development Work Describe Itself?
Can Development Work Describe Itself?
 
IaaS Cloud Benchmarking: Approaches, Challenges, and Experience
IaaS Cloud Benchmarking: Approaches, Challenges, and ExperienceIaaS Cloud Benchmarking: Approaches, Challenges, and Experience
IaaS Cloud Benchmarking: Approaches, Challenges, and Experience
 
Improving the Performance of Mapping based on Availability- Alert Algorithm U...
Improving the Performance of Mapping based on Availability- Alert Algorithm U...Improving the Performance of Mapping based on Availability- Alert Algorithm U...
Improving the Performance of Mapping based on Availability- Alert Algorithm U...
 
Testing of C software components using Models
Testing of C software components using ModelsTesting of C software components using Models
Testing of C software components using Models
 
five Sling features you should know
five Sling features you should knowfive Sling features you should know
five Sling features you should know
 
Ch16
Ch16Ch16
Ch16
 
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
 
Bouc2009 d marks_1004_universe_design
Bouc2009 d marks_1004_universe_designBouc2009 d marks_1004_universe_design
Bouc2009 d marks_1004_universe_design
 
Runtime Behavior of JavaScript Programs
Runtime Behavior of JavaScript ProgramsRuntime Behavior of JavaScript Programs
Runtime Behavior of JavaScript Programs
 
Roots of scrum 2011_Jeff Sutherland氏
Roots of scrum 2011_Jeff Sutherland氏Roots of scrum 2011_Jeff Sutherland氏
Roots of scrum 2011_Jeff Sutherland氏
 
E5 05 ijcite august 2014
E5 05 ijcite august 2014E5 05 ijcite august 2014
E5 05 ijcite august 2014
 
Exploiting dynamic resource allocation for
Exploiting dynamic resource allocation forExploiting dynamic resource allocation for
Exploiting dynamic resource allocation for
 
Eventual Consistency – Du musst keine Angst haben
Eventual Consistency – Du musst keine Angst habenEventual Consistency – Du musst keine Angst haben
Eventual Consistency – Du musst keine Angst haben
 

Mehr von Walid Maalej

How Can Software Engineering Support AI
How Can Software Engineering Support AIHow Can Software Engineering Support AI
How Can Software Engineering Support AIWalid Maalej
 
Help! I need an empirical study for my PhD!
Help! I need an empirical study for my PhD!Help! I need an empirical study for my PhD!
Help! I need an empirical study for my PhD!Walid Maalej
 
Context aware software engineering and maintenance: the FastFix approach
Context aware software engineering and maintenance: the FastFix approachContext aware software engineering and maintenance: the FastFix approach
Context aware software engineering and maintenance: the FastFix approachWalid Maalej
 
05 Making Tacit Requirements Explicit
05 Making Tacit Requirements Explicit05 Making Tacit Requirements Explicit
05 Making Tacit Requirements ExplicitWalid Maalej
 
10 A Machine Learning Approach for Identifying Expert Stakeholders
10 A Machine Learning Approach for Identifying Expert Stakeholders10 A Machine Learning Approach for Identifying Expert Stakeholders
10 A Machine Learning Approach for Identifying Expert StakeholdersWalid Maalej
 
12 Leveraging Rule Deviations in IT Ecosystems for Implicit Requirements Elic...
12 Leveraging Rule Deviations in IT Ecosystems for Implicit Requirements Elic...12 Leveraging Rule Deviations in IT Ecosystems for Implicit Requirements Elic...
12 Leveraging Rule Deviations in IT Ecosystems for Implicit Requirements Elic...Walid Maalej
 
08 Domain KnowledgeWiki for Requirements Elicitation
08 Domain KnowledgeWiki for Requirements Elicitation08 Domain KnowledgeWiki for Requirements Elicitation
08 Domain KnowledgeWiki for Requirements ElicitationWalid Maalej
 
11 Towards a Research Agenda for Recommendation Systems in Requirements Engin...
11 Towards a Research Agenda for Recommendation Systems in Requirements Engin...11 Towards a Research Agenda for Recommendation Systems in Requirements Engin...
11 Towards a Research Agenda for Recommendation Systems in Requirements Engin...Walid Maalej
 
13 Continuous and Collaborative Validation: A Field Study of Requirements Kno...
13 Continuous and Collaborative Validation: A Field Study of Requirements Kno...13 Continuous and Collaborative Validation: A Field Study of Requirements Kno...
13 Continuous and Collaborative Validation: A Field Study of Requirements Kno...Walid Maalej
 
01 Using Defect Reports to Build Requirements Knowledge in Product Lines
01 Using Defect Reports to Build Requirements Knowledge in Product Lines01 Using Defect Reports to Build Requirements Knowledge in Product Lines
01 Using Defect Reports to Build Requirements Knowledge in Product LinesWalid Maalej
 
07 Modeling and Managing Tacit Product Line Requirements Knowledge
07 Modeling and Managing Tacit Product Line Requirements Knowledge07 Modeling and Managing Tacit Product Line Requirements Knowledge
07 Modeling and Managing Tacit Product Line Requirements KnowledgeWalid Maalej
 
14 Reasoning on Requirements Knowledge to Support Creativity
14 Reasoning on Requirements Knowledge to Support Creativity14 Reasoning on Requirements Knowledge to Support Creativity
14 Reasoning on Requirements Knowledge to Support CreativityWalid Maalej
 
03 How to Keep Domain Requirements Models Reasonably Sized
03 How to Keep Domain Requirements Models Reasonably Sized03 How to Keep Domain Requirements Models Reasonably Sized
03 How to Keep Domain Requirements Models Reasonably SizedWalid Maalej
 
00 Opening: Why MaRK
00 Opening: Why MaRK00 Opening: Why MaRK
00 Opening: Why MaRKWalid Maalej
 
04 The Papyrus tool as an Eclipse UML2-modeling environment for requirements
04 The Papyrus tool as an Eclipse UML2-modeling environment for requirements04 The Papyrus tool as an Eclipse UML2-modeling environment for requirements
04 The Papyrus tool as an Eclipse UML2-modeling environment for requirementsWalid Maalej
 
09 On Presuppositions in Requirements
09 On Presuppositions in Requirements09 On Presuppositions in Requirements
09 On Presuppositions in RequirementsWalid Maalej
 
Team Weaver Demo Camp June 08
Team Weaver Demo Camp June 08Team Weaver Demo Camp June 08
Team Weaver Demo Camp June 08Walid Maalej
 
Potential And Challenges of Recommendation Systems for Software Development
Potential And Challenges of Recommendation Systems for Software DevelopmentPotential And Challenges of Recommendation Systems for Software Development
Potential And Challenges of Recommendation Systems for Software DevelopmentWalid Maalej
 

Mehr von Walid Maalej (19)

How Can Software Engineering Support AI
How Can Software Engineering Support AIHow Can Software Engineering Support AI
How Can Software Engineering Support AI
 
Help! I need an empirical study for my PhD!
Help! I need an empirical study for my PhD!Help! I need an empirical study for my PhD!
Help! I need an empirical study for my PhD!
 
Context aware software engineering and maintenance: the FastFix approach
Context aware software engineering and maintenance: the FastFix approachContext aware software engineering and maintenance: the FastFix approach
Context aware software engineering and maintenance: the FastFix approach
 
05 Making Tacit Requirements Explicit
05 Making Tacit Requirements Explicit05 Making Tacit Requirements Explicit
05 Making Tacit Requirements Explicit
 
10 A Machine Learning Approach for Identifying Expert Stakeholders
10 A Machine Learning Approach for Identifying Expert Stakeholders10 A Machine Learning Approach for Identifying Expert Stakeholders
10 A Machine Learning Approach for Identifying Expert Stakeholders
 
12 Leveraging Rule Deviations in IT Ecosystems for Implicit Requirements Elic...
12 Leveraging Rule Deviations in IT Ecosystems for Implicit Requirements Elic...12 Leveraging Rule Deviations in IT Ecosystems for Implicit Requirements Elic...
12 Leveraging Rule Deviations in IT Ecosystems for Implicit Requirements Elic...
 
08 Domain KnowledgeWiki for Requirements Elicitation
08 Domain KnowledgeWiki for Requirements Elicitation08 Domain KnowledgeWiki for Requirements Elicitation
08 Domain KnowledgeWiki for Requirements Elicitation
 
11 Towards a Research Agenda for Recommendation Systems in Requirements Engin...
11 Towards a Research Agenda for Recommendation Systems in Requirements Engin...11 Towards a Research Agenda for Recommendation Systems in Requirements Engin...
11 Towards a Research Agenda for Recommendation Systems in Requirements Engin...
 
13 Continuous and Collaborative Validation: A Field Study of Requirements Kno...
13 Continuous and Collaborative Validation: A Field Study of Requirements Kno...13 Continuous and Collaborative Validation: A Field Study of Requirements Kno...
13 Continuous and Collaborative Validation: A Field Study of Requirements Kno...
 
01 Using Defect Reports to Build Requirements Knowledge in Product Lines
01 Using Defect Reports to Build Requirements Knowledge in Product Lines01 Using Defect Reports to Build Requirements Knowledge in Product Lines
01 Using Defect Reports to Build Requirements Knowledge in Product Lines
 
07 Modeling and Managing Tacit Product Line Requirements Knowledge
07 Modeling and Managing Tacit Product Line Requirements Knowledge07 Modeling and Managing Tacit Product Line Requirements Knowledge
07 Modeling and Managing Tacit Product Line Requirements Knowledge
 
14 Reasoning on Requirements Knowledge to Support Creativity
14 Reasoning on Requirements Knowledge to Support Creativity14 Reasoning on Requirements Knowledge to Support Creativity
14 Reasoning on Requirements Knowledge to Support Creativity
 
03 How to Keep Domain Requirements Models Reasonably Sized
03 How to Keep Domain Requirements Models Reasonably Sized03 How to Keep Domain Requirements Models Reasonably Sized
03 How to Keep Domain Requirements Models Reasonably Sized
 
00 Opening: Why MaRK
00 Opening: Why MaRK00 Opening: Why MaRK
00 Opening: Why MaRK
 
04 The Papyrus tool as an Eclipse UML2-modeling environment for requirements
04 The Papyrus tool as an Eclipse UML2-modeling environment for requirements04 The Papyrus tool as an Eclipse UML2-modeling environment for requirements
04 The Papyrus tool as an Eclipse UML2-modeling environment for requirements
 
09 On Presuppositions in Requirements
09 On Presuppositions in Requirements09 On Presuppositions in Requirements
09 On Presuppositions in Requirements
 
From Work To Word
From Work To WordFrom Work To Word
From Work To Word
 
Team Weaver Demo Camp June 08
Team Weaver Demo Camp June 08Team Weaver Demo Camp June 08
Team Weaver Demo Camp June 08
 
Potential And Challenges of Recommendation Systems for Software Development
Potential And Challenges of Recommendation Systems for Software DevelopmentPotential And Challenges of Recommendation Systems for Software Development
Potential And Challenges of Recommendation Systems for Software Development
 

Assisting Engineers in Switching Artifacts by using Task Semantic and Interaction History

  • 1. RSSE’10,
Cape
Town,
 South
Africa,
Mai
2010
 Assis$ng
Engineers
in
 Switching
Ar$facts

 by
using
Task
Seman$cs
 and
Interac$on
History Walid
Maalej

and
Alexander
Sahm
 Technische
Universität
München,
Germany

  • 2. Execu$ve
Summary
 1
 Current
desktop
environments
lack
the
support
for
 switching
between
ar6facts
during
engineers’
work
 2
 We
propose
a
context‐aware
switching
approach
 based
on
task
seman6cs
and
interac6on
history
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 2
  • 3. Outline
 1
 The
Switching
Problem
 2
 Our
Context‐Aware
Approach
 3
 The
System:
Switch!

 4
 Preliminary
Evalua$on
and
Outlook
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 3

  • 4. Example
of
Tools
and
Ar$facts
Used
in
a
Bug
 Fixing
Scenario
(iPhone
App)
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 4
  • 5. ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 5
  • 6. Postponed
Tasks
Lead
to
Even
More
Windows 
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 6
  • 8. Current
Desktop
Environments
Have
Four
 Shortcomings
 Windows
of
different
tasks
 The
context
of
previous
 are
mixed
 sessions
is
lost
 Task
irrelevant
windows
 Locate
the
ar6facts
when
 create
a
screen
cluAer
 resuming
tasks
 The

 Switching
 Problem Switching
between
windows
 Different
workflows
for
 instead
of
ar$facts
 open
and
closed
ar$facts
 Mul6‐layer
switching:
first
 Check
if
the
ar6fact
is
open,
 the
windows
then
the
ar6fact
 if
not:
find
it,
open
it
 More
details:
W.
Maalej,
Task‐First
or
Context‐First?
Tool
Integra6on
Revisited.
In
IEEE/ACM
ASE
2009
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 8
  • 9. Outline
 1
 The
Switching
Problem
 2
 Our
Context‐Aware
Approach
 3
 The
System:
Switch!

 4
 Preliminary
Evalua$on
and
Outlook
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 9

  • 10. The
Goal
is
to
Assist
Engineers
Switching
 Between
Ar$facts 
 Engineers
can
 The
system
 The
ar6fact
is
 easily
select
the
 recommends
 shown
no
maAer
 ar6fact
from
the
 ar6facts
needed
 whether

it
is
 set
of
 next
 open
of
closed recommenda6ons
 1
 2
 3
 Detect
and
use
engineer’s
context
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 10
  • 11. What
is
Engineer’s
Context?
 Task
 Interac6on
 Seman6cs
 History
 Context 
 (Universal
 (Personal
 Dimension) 
 Dimension) 
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 11
  • 12. Task
Seman$cs
(Universal
Dimension) 
 Why? •  A
classifica$on
of
soXware
 engineering
tasks
(bug
 fixing,
implementa6on,
 •  To
model
tool
types
and
 specifica6on,
modeling,
 ar$fact
types
and
associate
 collabora6on…)
 them
to
task
types
 •  A
shared
common
 •  Example:
A
tes6ng
tool
and
 understanding
of
each
task
 test
documents
are
rather
 type
(ontology)
 used
during
tes6ng
tasks
 than
during
modeling
tasks
 What? ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 12
  • 13. Interac$on
History
(Personal
Dimension) 
 Why? •  The
engineer’s
interac6on
in
 her
workplace
(desktop
 environment)
 •  To
model
the
personal
 switching
habits
and
need
 •  Individual
work
habits
 of
engineers
 •  Preferred
tools
 •  Example:
An
engineer
 •  Preferred
ar6facts
 maintains
a
To‐do
list
in
text
 document
instead
in
task
 management
system
 What? ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 13
  • 14. Outline
 1
 The
Switching
Problem
 2
 Our
Context‐Aware
Approach
 3
 The
System:
Switch!

 4
 Preliminary
Evalua$on
and
Outlook
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 14

  • 15. Overall
Architecture
 
Switch!
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 15
  • 16. Overall
Recommenda$on
Process 
 1
 2
 
Find
suitable  Calculate
the
 ar$fact
types
 relevance
of
 based
on
task
 each
ar$fact
 seman$cs
 to
switch
to
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 16
  • 17. Recommenda$on
Heuris$cs 
 Frequency
 The usage frequency of an artifact by the engineer The
6me
in
seconds
the
usage
 Dura$on

 of
an
ar6fact
by
the
engineer
 The
number
of
switches
 Switched
To
 between
two
ar6facts
 The
relevance
of
the
ar6fact
 Relevance
 for
this
switch
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 17
  • 18. UI
Principle
1:
Group
Tools
by
Purposes 
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 18
  • 20. UI
Principle
3:
Ar$facts
Clickable
by
Mouse
and
 Keyboard 
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 20
  • 21. Outline
 1
 The
Switching
Problem
 2
 Our
Context‐Aware
Approach
 3
 The
System:
Switch!

 4
 Preliminary
Evalua$on
and
Outlook
 ©
W.
Maalej,
Mai
2010
 From
Work
To
Word
 21

  • 22. Preliminary
Evalua$on
 •  Internal
use
for
currently
supported
task
types
 (work
in
progress)
 Internal
 evalua$on
of
 •  Switch!
Supports
bug
fixing,
tes6ng
and
 Switch!
 documen6ng
 prototype
 •  Current
version
handles
source
code,
PDFs,
 emails,
text
documents,
and
web
pages
 •  Paper
prototype
experiment
 Paper
 •  Created
from
printed
Switch!
user
interface
 prototype
 experiment
 •  Conducted
with
7
experienced
soXware
 engineers
(from
Equinux
&
MacInTUM)
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 22

  • 23. Paper
Prototype
‐
Example
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 23
  • 24. Paper
Prototype
‐
Findings 
 1
 Subjects
confirmed
the
switching
problem
and
appreciated
our
 context‐aware
approach
(5
of
7
subjects
would
use
Switch!)
 2
 Subjects
needed
to
get
used
to
the
user
interface
concepts
(avg.
<
 5
min.)
 3
 Subjects
wanted
to
understand
recommenda6on
ra$onale
 4
 Most
subjects
had
privacy
concerns
due
to
the
system
wide
 context
observa6on
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 24
  • 25. Conclusion
and
Future
Work
 Extend
Switch!
to
 Improve
 Make
privacy
and
 other
task
types
and
 recommenda6ons
 usability
a
fist
order
 evaluate
it
in
 by
detec6ng
the
 concern
in
context‐ industrial
seangs
 task
change
 aware
recommenda6on
 3
 4
 5
 Developers
encounter
 Our
context‐aware
approach
 frequent
problems
while
 seems
to
be
appropriate
for
 switching
between
ar6facts
 addressing
switching
problems
 1
 2
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 25
  • 26. Feedback,
Ques$ons,
Sugges$ons
 and
Collabora$on
are
Welcomed!
 Walid
Maalej

 Alexander
Sahm
 TUM
 TUM
 maalejw@cs.tum.edu
 sahm@cs.tum.edu

 hAp://TeamWeaver.org
 ©
W.
Maalej,
Mai
2010
 Assis$ng
Engineers
in
Switching
Ar$facts

 26