Modelling Prioritisation Decision-making in Software
Evolution
Denisse Muñante Fitsum Meshesha Kifetew Oliver Albrecht
PrioRE - 1st International Workshop on Requirements Prioritization and
Enactment
in conjunction with REFSQ’17
27th February 2017, Essen, Germany
1 / 18
Outline of the talk
§
¦
¤
¥Motivation
§
¦
¤
¥
Methodology for modelling prioritisation
§
¦
¤
¥
Applying the methodology : SEnerCon Use Case
§
¦
¤
¥
Requirements for a general tool-supported
§
¦
¤
¥Conclusion
2 / 18
§
¦
¤
¥Motivation
§
¦
¤
¥
Methodology for modelling prioritisation
§
¦
¤
¥
Applying the methodology : SEnerCon Use Case
§
¦
¤
¥
Requirements for a general tool-supported
§
¦
¤
¥Conclusion
3 / 18
Motivation
Motivation
Why Prioritise Requirements ?
To cope with resources constraints &
many requirements
The goal is to find the best ordering of
requirements in each successive release
to ensure quality & value of the system,
trade-off constraints & end-user
satisfaction.
4 / 18
Motivation
Motivation
A tool-supported DM processes is a good
solution, but ...
mono or multi decision-makers
mono or multi criteria
other prerequisites or requirements of the
tool ?
How to build a customised tool-supported
prioritisation DM process ?
5 / 18
Motivation
Motivation
A tool-supported DM processes is a good
solution, but ...
mono or multi decision-makers
mono or multi criteria
other prerequisites or requirements of the
tool ?
How to build a customised tool-supported
prioritisation DM process ?
5 / 18
Motivation
Motivation
Before building an appropriate tool ...
We study which practices of DM processes are envisaged.
We identify the main requirements involved in the DM processes.
We design a tool-supported prioritisation DM process.
6 / 18
Motivation
Motivation
Before building an appropriate tool ...
We study which practices of DM processes are envisaged.
We identify the main requirements involved in the DM processes.
We design a tool-supported prioritisation DM process.
6 / 18
Motivation
§
¦
¤
¥Motivation
§
¦
¤
¥
Methodology for modelling prioritisation
§
¦
¤
¥
Applying the methodology : SEnerCon Use Case
§
¦
¤
¥
Requirements for a general tool-supported
§
¦
¤
¥Conclusion
7 / 18
Motivation Methodology for modelling prioritisation DM
Methodology for modelling prioritisation DM
We define a structured methodology to :
elicit information about the “as-is” (current) practice of DM processes.
==> Questionnaire-based technique and BPMN + Decision Making
Notation (DMN).
(Q1) What are the inputs to the DM process ?
(Q2) What is the output of the DM process ?
(Q3) Who are the stakeholders involved in the DM process ?
(Q4) What are the methods/tools used for the DM process ?
(Q5) How is the DM process structured and how is its flow of activities ?
identify the main concepts (requirements) involved in the DM processes
to be considered for a tool-supported prioritisation DM process
=> Class Diagram
identify candidate steps for automation in the current DM processes.
==> (Semi-) automated process.
8 / 18
Motivation Methodology for modelling prioritisation DM
Methodology for modelling prioritisation DM
We define a structured methodology to :
elicit information about the “as-is” (current) practice of DM processes.
==> Questionnaire-based technique and BPMN + Decision Making
Notation (DMN).
(Q1) What are the inputs to the DM process ?
(Q2) What is the output of the DM process ?
(Q3) Who are the stakeholders involved in the DM process ?
(Q4) What are the methods/tools used for the DM process ?
(Q5) How is the DM process structured and how is its flow of activities ?
identify the main concepts (requirements) involved in the DM processes
to be considered for a tool-supported prioritisation DM process
=> Class Diagram
identify candidate steps for automation in the current DM processes.
==> (Semi-) automated process.
8 / 18
Motivation Methodology for modelling prioritisation DM
Methodology for modelling prioritisation DM
We define a structured methodology to :
elicit information about the “as-is” (current) practice of DM processes.
==> Questionnaire-based technique and BPMN + Decision Making
Notation (DMN).
(Q1) What are the inputs to the DM process ?
(Q2) What is the output of the DM process ?
(Q3) Who are the stakeholders involved in the DM process ?
(Q4) What are the methods/tools used for the DM process ?
(Q5) How is the DM process structured and how is its flow of activities ?
identify the main concepts (requirements) involved in the DM processes
to be considered for a tool-supported prioritisation DM process
=> Class Diagram
identify candidate steps for automation in the current DM processes.
==> (Semi-) automated process.
8 / 18
Motivation Methodology for modelling prioritisation DM
Methodology for modelling prioritisation DM
An example of elements and dependencies of a domain of DMN
Business
Knowledge 1
Decision 1
Input Data 1
Business
Knowledge 2
Input Data 2
Decision 2
Knowledge
source 1
Knowledge
source 2
Information
Requirement
Knowledge
Requirement
Authority
Requirement
9 / 18
Motivation Methodology for modelling prioritisation DM
§
¦
¤
¥Motivation
§
¦
¤
¥
Methodology for modelling prioritisation
§
¦
¤
¥
Applying the methodology : SEnerCon Use Case
§
¦
¤
¥
Requirements for a general tool-supported
§
¦
¤
¥Conclusion
10 / 18
Motivation Applying the methodology : SEnerCon Use Case
Applying the methodology : SEnerCon Use Case
Elicit information from iESA app
Q1 Inputs
set of requests for new features and bug reports collected from the Ticket
System, project managers and advisors.
Q2 Outputs
list of new requests to implement in the upcoming release.
Q3 Stakeholders
help-desk, product manager, developers, project manager and advisors.
Q4 Methods/tools
besides the Ticket System, there is no automated tool.
11 / 18
Motivation Applying the methodology : SEnerCon Use Case
Applying the methodology : SEnerCon Use Case
Elicit information from iESA app
Q1 Inputs
set of requests for new features and bug reports collected from the Ticket
System, project managers and advisors.
Q2 Outputs
list of new requests to implement in the upcoming release.
Q3 Stakeholders
help-desk, product manager, developers, project manager and advisors.
Q4 Methods/tools
besides the Ticket System, there is no automated tool.
11 / 18
Motivation Applying the methodology : SEnerCon Use Case
Applying the methodology : SEnerCon Use Case
Elicit information from iESA app
Q1 Inputs
set of requests for new features and bug reports collected from the Ticket
System, project managers and advisors.
Q2 Outputs
list of new requests to implement in the upcoming release.
Q3 Stakeholders
help-desk, product manager, developers, project manager and advisors.
Q4 Methods/tools
besides the Ticket System, there is no automated tool.
11 / 18
Motivation Applying the methodology : SEnerCon Use Case
Applying the methodology : SEnerCon Use Case
Elicit information from iESA app
Q1 Inputs
set of requests for new features and bug reports collected from the Ticket
System, project managers and advisors.
Q2 Outputs
list of new requests to implement in the upcoming release.
Q3 Stakeholders
help-desk, product manager, developers, project manager and advisors.
Q4 Methods/tools
besides the Ticket System, there is no automated tool.
11 / 18
Motivation Applying the methodology : SEnerCon Use Case
Applying the methodology : SEnerCon Use Case
Q5 : current DM process
Decision on Priority
of the list of requests
[product manager]
prioritised
list of
requests
prioritisation
not stable
Assign attributes to
requests [product
manager] [help-desk]
[developers] [project
managers]
attributes
ended
requests
from the
[Ticket
System]
[project
managers]
[advisors]
Filtered
list of
requests
with
attributes
… …
Next release
Plan
Decision on:
“attributes”
Negotiation
Meeting
Filtered
requests
Analysis of
requests
Decision on:
“Priority”
Priorities (if
specified )
Manual
inspection
Tables
Filtered
requests
with
attributes
Due dates
by project
managers
Negotiation
Meeting
Filter and merge
requests [product
manager] [help-desk]
[developers] [project
managers]
attributes
not ended
Filtered
list of
requests
Priorities from
help-desk
12 / 18
Motivation Applying the methodology : SEnerCon Use Case
§
¦
¤
¥Motivation
§
¦
¤
¥
Methodology for modelling prioritisation
§
¦
¤
¥
Applying the methodology : SEnerCon Use Case
§
¦
¤
¥
Requirements for a general tool-supported
§
¦
¤
¥Conclusion
13 / 18
Motivation Requirements for a general tool-supported
Requirements for a general tool-supported
The concepts involved in the prioritisation DM process
14 / 18
Motivation Requirements for a general tool-supported
Requirements for a general tool-supported
The automated tool-supported for the prioritisation DM process
15 / 18
Motivation Requirements for a general tool-supported
§
¦
¤
¥Motivation
§
¦
¤
¥
Methodology for modelling prioritisation
§
¦
¤
¥
Applying the methodology : SEnerCon Use Case
§
¦
¤
¥
Requirements for a general tool-supported
§
¦
¤
¥Conclusion
16 / 18
Conclusion
Conclusion
Contributions :
a methodology to elicit prioritisation DM processes
a class diagram with the concepts (requirements) of a multi-stakeholders and
multi-criteria prioritisation DM process ;
tool-supported prioritisation DM process
Perspectives :
Integrate these initial concepts to a richer domain model (e.g. ontology).
17 / 18
Conclusion
Conclusion
Contributions :
a methodology to elicit prioritisation DM processes
a class diagram with the concepts (requirements) of a multi-stakeholders and
multi-criteria prioritisation DM process ;
tool-supported prioritisation DM process
Perspectives :
Integrate these initial concepts to a richer domain model (e.g. ontology).
17 / 18
Conclusion
Thank for your attention !
Questions ?
18 / 18

Modelling Prioritisation Decision-making in Software Evolution

  • 1.
    Modelling Prioritisation Decision-makingin Software Evolution Denisse Muñante Fitsum Meshesha Kifetew Oliver Albrecht PrioRE - 1st International Workshop on Requirements Prioritization and Enactment in conjunction with REFSQ’17 27th February 2017, Essen, Germany 1 / 18
  • 2.
    Outline of thetalk § ¦ ¤ ¥Motivation § ¦ ¤ ¥ Methodology for modelling prioritisation § ¦ ¤ ¥ Applying the methodology : SEnerCon Use Case § ¦ ¤ ¥ Requirements for a general tool-supported § ¦ ¤ ¥Conclusion 2 / 18
  • 3.
    § ¦ ¤ ¥Motivation § ¦ ¤ ¥ Methodology for modellingprioritisation § ¦ ¤ ¥ Applying the methodology : SEnerCon Use Case § ¦ ¤ ¥ Requirements for a general tool-supported § ¦ ¤ ¥Conclusion 3 / 18
  • 4.
    Motivation Motivation Why Prioritise Requirements? To cope with resources constraints & many requirements The goal is to find the best ordering of requirements in each successive release to ensure quality & value of the system, trade-off constraints & end-user satisfaction. 4 / 18
  • 5.
    Motivation Motivation A tool-supported DMprocesses is a good solution, but ... mono or multi decision-makers mono or multi criteria other prerequisites or requirements of the tool ? How to build a customised tool-supported prioritisation DM process ? 5 / 18
  • 6.
    Motivation Motivation A tool-supported DMprocesses is a good solution, but ... mono or multi decision-makers mono or multi criteria other prerequisites or requirements of the tool ? How to build a customised tool-supported prioritisation DM process ? 5 / 18
  • 7.
    Motivation Motivation Before building anappropriate tool ... We study which practices of DM processes are envisaged. We identify the main requirements involved in the DM processes. We design a tool-supported prioritisation DM process. 6 / 18
  • 8.
    Motivation Motivation Before building anappropriate tool ... We study which practices of DM processes are envisaged. We identify the main requirements involved in the DM processes. We design a tool-supported prioritisation DM process. 6 / 18
  • 9.
    Motivation § ¦ ¤ ¥Motivation § ¦ ¤ ¥ Methodology for modellingprioritisation § ¦ ¤ ¥ Applying the methodology : SEnerCon Use Case § ¦ ¤ ¥ Requirements for a general tool-supported § ¦ ¤ ¥Conclusion 7 / 18
  • 10.
    Motivation Methodology formodelling prioritisation DM Methodology for modelling prioritisation DM We define a structured methodology to : elicit information about the “as-is” (current) practice of DM processes. ==> Questionnaire-based technique and BPMN + Decision Making Notation (DMN). (Q1) What are the inputs to the DM process ? (Q2) What is the output of the DM process ? (Q3) Who are the stakeholders involved in the DM process ? (Q4) What are the methods/tools used for the DM process ? (Q5) How is the DM process structured and how is its flow of activities ? identify the main concepts (requirements) involved in the DM processes to be considered for a tool-supported prioritisation DM process => Class Diagram identify candidate steps for automation in the current DM processes. ==> (Semi-) automated process. 8 / 18
  • 11.
    Motivation Methodology formodelling prioritisation DM Methodology for modelling prioritisation DM We define a structured methodology to : elicit information about the “as-is” (current) practice of DM processes. ==> Questionnaire-based technique and BPMN + Decision Making Notation (DMN). (Q1) What are the inputs to the DM process ? (Q2) What is the output of the DM process ? (Q3) Who are the stakeholders involved in the DM process ? (Q4) What are the methods/tools used for the DM process ? (Q5) How is the DM process structured and how is its flow of activities ? identify the main concepts (requirements) involved in the DM processes to be considered for a tool-supported prioritisation DM process => Class Diagram identify candidate steps for automation in the current DM processes. ==> (Semi-) automated process. 8 / 18
  • 12.
    Motivation Methodology formodelling prioritisation DM Methodology for modelling prioritisation DM We define a structured methodology to : elicit information about the “as-is” (current) practice of DM processes. ==> Questionnaire-based technique and BPMN + Decision Making Notation (DMN). (Q1) What are the inputs to the DM process ? (Q2) What is the output of the DM process ? (Q3) Who are the stakeholders involved in the DM process ? (Q4) What are the methods/tools used for the DM process ? (Q5) How is the DM process structured and how is its flow of activities ? identify the main concepts (requirements) involved in the DM processes to be considered for a tool-supported prioritisation DM process => Class Diagram identify candidate steps for automation in the current DM processes. ==> (Semi-) automated process. 8 / 18
  • 13.
    Motivation Methodology formodelling prioritisation DM Methodology for modelling prioritisation DM An example of elements and dependencies of a domain of DMN Business Knowledge 1 Decision 1 Input Data 1 Business Knowledge 2 Input Data 2 Decision 2 Knowledge source 1 Knowledge source 2 Information Requirement Knowledge Requirement Authority Requirement 9 / 18
  • 14.
    Motivation Methodology formodelling prioritisation DM § ¦ ¤ ¥Motivation § ¦ ¤ ¥ Methodology for modelling prioritisation § ¦ ¤ ¥ Applying the methodology : SEnerCon Use Case § ¦ ¤ ¥ Requirements for a general tool-supported § ¦ ¤ ¥Conclusion 10 / 18
  • 15.
    Motivation Applying themethodology : SEnerCon Use Case Applying the methodology : SEnerCon Use Case Elicit information from iESA app Q1 Inputs set of requests for new features and bug reports collected from the Ticket System, project managers and advisors. Q2 Outputs list of new requests to implement in the upcoming release. Q3 Stakeholders help-desk, product manager, developers, project manager and advisors. Q4 Methods/tools besides the Ticket System, there is no automated tool. 11 / 18
  • 16.
    Motivation Applying themethodology : SEnerCon Use Case Applying the methodology : SEnerCon Use Case Elicit information from iESA app Q1 Inputs set of requests for new features and bug reports collected from the Ticket System, project managers and advisors. Q2 Outputs list of new requests to implement in the upcoming release. Q3 Stakeholders help-desk, product manager, developers, project manager and advisors. Q4 Methods/tools besides the Ticket System, there is no automated tool. 11 / 18
  • 17.
    Motivation Applying themethodology : SEnerCon Use Case Applying the methodology : SEnerCon Use Case Elicit information from iESA app Q1 Inputs set of requests for new features and bug reports collected from the Ticket System, project managers and advisors. Q2 Outputs list of new requests to implement in the upcoming release. Q3 Stakeholders help-desk, product manager, developers, project manager and advisors. Q4 Methods/tools besides the Ticket System, there is no automated tool. 11 / 18
  • 18.
    Motivation Applying themethodology : SEnerCon Use Case Applying the methodology : SEnerCon Use Case Elicit information from iESA app Q1 Inputs set of requests for new features and bug reports collected from the Ticket System, project managers and advisors. Q2 Outputs list of new requests to implement in the upcoming release. Q3 Stakeholders help-desk, product manager, developers, project manager and advisors. Q4 Methods/tools besides the Ticket System, there is no automated tool. 11 / 18
  • 19.
    Motivation Applying themethodology : SEnerCon Use Case Applying the methodology : SEnerCon Use Case Q5 : current DM process Decision on Priority of the list of requests [product manager] prioritised list of requests prioritisation not stable Assign attributes to requests [product manager] [help-desk] [developers] [project managers] attributes ended requests from the [Ticket System] [project managers] [advisors] Filtered list of requests with attributes … … Next release Plan Decision on: “attributes” Negotiation Meeting Filtered requests Analysis of requests Decision on: “Priority” Priorities (if specified ) Manual inspection Tables Filtered requests with attributes Due dates by project managers Negotiation Meeting Filter and merge requests [product manager] [help-desk] [developers] [project managers] attributes not ended Filtered list of requests Priorities from help-desk 12 / 18
  • 20.
    Motivation Applying themethodology : SEnerCon Use Case § ¦ ¤ ¥Motivation § ¦ ¤ ¥ Methodology for modelling prioritisation § ¦ ¤ ¥ Applying the methodology : SEnerCon Use Case § ¦ ¤ ¥ Requirements for a general tool-supported § ¦ ¤ ¥Conclusion 13 / 18
  • 21.
    Motivation Requirements fora general tool-supported Requirements for a general tool-supported The concepts involved in the prioritisation DM process 14 / 18
  • 22.
    Motivation Requirements fora general tool-supported Requirements for a general tool-supported The automated tool-supported for the prioritisation DM process 15 / 18
  • 23.
    Motivation Requirements fora general tool-supported § ¦ ¤ ¥Motivation § ¦ ¤ ¥ Methodology for modelling prioritisation § ¦ ¤ ¥ Applying the methodology : SEnerCon Use Case § ¦ ¤ ¥ Requirements for a general tool-supported § ¦ ¤ ¥Conclusion 16 / 18
  • 24.
    Conclusion Conclusion Contributions : a methodologyto elicit prioritisation DM processes a class diagram with the concepts (requirements) of a multi-stakeholders and multi-criteria prioritisation DM process ; tool-supported prioritisation DM process Perspectives : Integrate these initial concepts to a richer domain model (e.g. ontology). 17 / 18
  • 25.
    Conclusion Conclusion Contributions : a methodologyto elicit prioritisation DM processes a class diagram with the concepts (requirements) of a multi-stakeholders and multi-criteria prioritisation DM process ; tool-supported prioritisation DM process Perspectives : Integrate these initial concepts to a richer domain model (e.g. ontology). 17 / 18
  • 26.
    Conclusion Thank for yourattention ! Questions ? 18 / 18