SlideShare a Scribd company logo
1 of 29
Download to read offline
A Framework to Evaluate Complexity and
Completeness of KAOS Goal Models
Patrícia Espada, Miguel Goulão, and João Araújo
titiespada@gmail.com, mgoul@fct.unl.pt, joao.araujo@fct.unl.pt
http://ctp.di.fct.unl.pt/~mgoul/
http://ctp.di.fct.unl.pt/~ja/
Goal-Oriented Requirements Engineering (GORE)
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain2
 A paradigm in Requirements Engineering to handle
 Requirements elicitation
 Requirements specification
 Requirements analysis
 Requirements negotiation
 Requirements evolution
 Some well-known approaches
 KAOS, i* framework, GBRAM, GRL, ...
Knowledge Acquisition in autOmated
Specification (KAOS)
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain3
 GORE methodology based in goal decomposition
and refinement, to support requirements
acquisition and elaboration
Let’s work out after yesterday’s Gala Dinner
4
 The members of a health
club need to get a ticket
before participating in a
specific class...
Let us work out... in KAOS
5
Conflict
Data Correction
Response time Get ticket for class
Save ticket
request
Register
Show classes Detect card
Select
class
Read
card
Update class
capacity
Classes Ticket
dispenser
Print ticket Member
Concerns
Concerns Concerns
Add a few more requirements to our example
6
• 5 main functionalities
• 15 agents
• 212 sub-goals
• Is this model complete?
• How complex is this model?
• Is this complexity really necessary?
• GORE aimed at large scaled systens
• Models can become really hard to understand
Research objectives
7
 Analyse the extent to which a model is close to
being complete
 Assess model complexity to identify model
refactoring opportunities, e.g.:
 Models may have a too deep goal hierarchy
 Agents may have too many responsibilities
 Prevent unanticipated extra costs in the
development phase
 Better management of the completeness and
complexity of the models
Contributions
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain8
 Tool supported approach in the metrics-based evaluation
of the completeness and complexity of KAOS goal models
 The developer can measure the current status of his model
and take on corrective actions, during model construction.
 The tool support is based on the integration of a KAOS
editor with a KAOS metrics suite and
 targeted to the requirements elicitation process,
 it can also support post-mortem analysis from which lessons can
be learned for future projects.
 Metrics and formally define all metrics using OCL
 We validate the metrics set and their implementation by
extending an existing tool for editing KAOS goal models
 modularKAOS developed in MDD on top of Eclipse
Approach outline
 Metrics identification using the Goal-Question-
Metric approach
 Metrics (semi-)formal definition using OCL
 Metrics evaluation with real-world case studies
 Often used as example of best practices using KAOS
 KAOS models analysis with metrics support
9
Goal: KAOS models completeness evaluation
10
Question Metric
Q1. How close are we to completing
the assignment of all goal
responsibilities to agents?
PLGWA. Percentage of Leaf Goals
With an Agent.
Q2. How detailed is the goal model
with respect to objects?
PLGWO. Percentage of Leaf Goals
With an Object.
Q3. How close are we to complete
the resolution of all the goal
obstacles?
PLOWS. Percentage of Leaf Obstacles
With a reSolution.
Q4. How detailed is the goal model
with respect to operations?
PLGWOp. Percentage of Leaf Goals
With an Operation.
Q5. How well supported are the
operations in the goal model?
POpWA. Percentage of Operations
With an Agent.
Goal: KAOS models complexity evaluation
11
Question Metric
Q6. Does an agent have too
much responsibility in the
model?
ANLG. Number of Leaf Goals
per Agent.
Q7. Does a leaf goal have too
many/few objects?
GNO. Number of Objects per
Goal.
Q8. How difficult is it to
understand a model, with
respect to the number of
refinement levels?
MD. Model Depth.
Q9. How complex is a model,
with respect to its goal
refinements?
RNSG. Root Number of Sub-
Goals.
modularKAOS: partial metamodel
12
Metrics definition
13
Q1 - How close are we to completing the assignment of all goal responsibilities to agents?
Name PLGWA – Percentage of Leaf Goals With an Agent
Informal definition Percentage of leaf goals that have an associated agent in the model.
Formal definition context KAOS
def: PLGWA(): Real = self.NLGWA() / self.NLG()
Pre-condition context KAOS::PLGWA()
pre: self.NLG() > 0
Comments If there are no leaf goals the result is undefined. This requires:
NLG – Number of Leaf Goals
NLGWA– Number of Leaf Goals With an Agent
Recommendation In a complete model, all leaf goals should be assigned to an agent.
Computing % of leaf goals with an agent
14
PLGWA = 4 / 5 = 0.8PLGWA = NLGWA / NLG
Evaluation15
BARTS MSCS ES CPMS
LMS LAS MS
Percentage of Leaf Goals with an Agent
16
Percentage of Leaf Goals with an Object
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain17
Percentage of Leaf Obstacles with a reSolution
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain18
Percentage of Leaf Goals with an Operation
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain19
Percentage of Operations with an Agent
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain20
Number of Leaf Goals per Agent
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain21
Objects per Goal
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain22
Model Depth
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain23
Root Number of Sub-Goals
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain24
Discussion (Completeness)
 Most models handle responsibility assignment of leaf
goals to agents
 Objects are not frequently used
 When obstacles are specified, we find a big variation
(from 0% to 100%) of the percentage of obstacles with
a resolution
 Operations are even more rarely used than objects
 Only two of the case studies model the assignment of
operations to agents, showing this is a fairly
unexplored modeling feature.
25
Discussion (complexity)
 Relatively few leaf goals assigned to an agent
 Do not attribute too many responsibilities to a single agent
 Assigning objects to goals is a mostly unexplored feature of
models
 Model depth varies much less than the number of model
elements, suggesting a fairly consistent state of practice
with respect to what is considered an adequate model
decomposition level
 Big variations in the case studies, concerning the number
of subgoals defined in each model
 The average number is around 40 subgoals, although in one of
the examples it is over 200 goals.
26
Limitations
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain27
 Framework does not cover
 Quality of elicited requirements
 Thoroughness of elicited requirements
 No easy essential vs. accidental complexity
differentiation
 No reference values for what is “acceptable”
 Only “good” examples in the sample
 Reference for best practices, but not for bad ones
Conclusions
Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain28
 Metrics suite for completeness and complexity of
KAOS goal models
 Values computed and updated as the model evolves
 Full integration with modeling tool
 Completeness monitoring to help assessing effort to model
completion
 Complexity monitoring to detect early potential quality
problems and identifying refactoring opportunities
 Proof of concept with best practices examples of KAOS
models
 Obtained metrics values are a step towards deeper
understanding of actual goal modeling practices
Future work
 Metrics set extension to quality attributes
 Evaluation replication with other KAOS models
 Towards metrics-based modeling heuristics
 Assess completeness in terms of requirements
coverage
 Trace model elements to requirements sources
 Identify the requirements in those sources that are yet
to be covered by the goal models
29

More Related Content

Similar to Miguel goulao 2013 c-aise

A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...ijfcstjournal
 
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...ijfcstjournal
 
A new model for software costestimation
A new model for software costestimationA new model for software costestimation
A new model for software costestimationijfcstjournal
 
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCHA NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCHijfcstjournal
 
Projektbeschreibung ADEQUATe
Projektbeschreibung ADEQUATeProjektbeschreibung ADEQUATe
Projektbeschreibung ADEQUATeJohann Höchtl
 
2024-02-24_Session 1 - PMLE_UPDATED.pptx
2024-02-24_Session 1 - PMLE_UPDATED.pptx2024-02-24_Session 1 - PMLE_UPDATED.pptx
2024-02-24_Session 1 - PMLE_UPDATED.pptxgdgsurrey
 
Post Graduate Admission Prediction System
Post Graduate Admission Prediction SystemPost Graduate Admission Prediction System
Post Graduate Admission Prediction SystemIRJET Journal
 
Data Science for Business Managers - An intro to ROI for predictive analytics
Data Science for Business Managers - An intro to ROI for predictive analyticsData Science for Business Managers - An intro to ROI for predictive analytics
Data Science for Business Managers - An intro to ROI for predictive analyticsAkin Osman Kazakci
 
Enhancing Video Understanding: NLP-Based Automatic Question Generation
Enhancing Video Understanding: NLP-Based Automatic Question GenerationEnhancing Video Understanding: NLP-Based Automatic Question Generation
Enhancing Video Understanding: NLP-Based Automatic Question GenerationIRJET Journal
 
Scale your Testing and Quality with Automation Engineering and ML - Carlos Ki...
Scale your Testing and Quality with Automation Engineering and ML - Carlos Ki...Scale your Testing and Quality with Automation Engineering and ML - Carlos Ki...
Scale your Testing and Quality with Automation Engineering and ML - Carlos Ki...QA or the Highway
 
Requirements effort estimation state of the practice - mohamad kassab
Requirements effort estimation  state of the practice - mohamad kassabRequirements effort estimation  state of the practice - mohamad kassab
Requirements effort estimation state of the practice - mohamad kassabIWSM Mensura
 
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...ieijjournal
 
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...ieijjournal1
 
Re2018 Semios for Requirements
Re2018 Semios for RequirementsRe2018 Semios for Requirements
Re2018 Semios for RequirementsClément Portet
 
Learninig Analytics Special Track: A cluster-based analisys to diagnose stude...
Learninig Analytics Special Track: A cluster-based analisys to diagnose stude...Learninig Analytics Special Track: A cluster-based analisys to diagnose stude...
Learninig Analytics Special Track: A cluster-based analisys to diagnose stude...Miguel Rodriguez Artacho
 
A context-aware model for QoE analysis in mobile environments
A context-aware model for QoE analysis in mobile environmentsA context-aware model for QoE analysis in mobile environments
A context-aware model for QoE analysis in mobile environmentsPedro Luis Mateo Navarro
 
A MODEL-BASED APPROACH MACHINE LEARNING TO SCALABLE PORTFOLIO SELECTION
A MODEL-BASED APPROACH MACHINE LEARNING TO SCALABLE PORTFOLIO SELECTIONA MODEL-BASED APPROACH MACHINE LEARNING TO SCALABLE PORTFOLIO SELECTION
A MODEL-BASED APPROACH MACHINE LEARNING TO SCALABLE PORTFOLIO SELECTIONIJCI JOURNAL
 

Similar to Miguel goulao 2013 c-aise (20)

A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
 
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
A DECISION SUPPORT SYSTEM FOR ESTIMATING COST OF SOFTWARE PROJECTS USING A HY...
 
Predictive models of academic success: a case study with version control systems
Predictive models of academic success: a case study with version control systemsPredictive models of academic success: a case study with version control systems
Predictive models of academic success: a case study with version control systems
 
A new model for software costestimation
A new model for software costestimationA new model for software costestimation
A new model for software costestimation
 
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCHA NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
 
Talk at QUATIC '12
Talk at QUATIC '12Talk at QUATIC '12
Talk at QUATIC '12
 
Projektbeschreibung ADEQUATe
Projektbeschreibung ADEQUATeProjektbeschreibung ADEQUATe
Projektbeschreibung ADEQUATe
 
2024-02-24_Session 1 - PMLE_UPDATED.pptx
2024-02-24_Session 1 - PMLE_UPDATED.pptx2024-02-24_Session 1 - PMLE_UPDATED.pptx
2024-02-24_Session 1 - PMLE_UPDATED.pptx
 
Post Graduate Admission Prediction System
Post Graduate Admission Prediction SystemPost Graduate Admission Prediction System
Post Graduate Admission Prediction System
 
Data Science for Business Managers - An intro to ROI for predictive analytics
Data Science for Business Managers - An intro to ROI for predictive analyticsData Science for Business Managers - An intro to ROI for predictive analytics
Data Science for Business Managers - An intro to ROI for predictive analytics
 
Enhancing Video Understanding: NLP-Based Automatic Question Generation
Enhancing Video Understanding: NLP-Based Automatic Question GenerationEnhancing Video Understanding: NLP-Based Automatic Question Generation
Enhancing Video Understanding: NLP-Based Automatic Question Generation
 
Predictive modeling
Predictive modelingPredictive modeling
Predictive modeling
 
Scale your Testing and Quality with Automation Engineering and ML - Carlos Ki...
Scale your Testing and Quality with Automation Engineering and ML - Carlos Ki...Scale your Testing and Quality with Automation Engineering and ML - Carlos Ki...
Scale your Testing and Quality with Automation Engineering and ML - Carlos Ki...
 
Requirements effort estimation state of the practice - mohamad kassab
Requirements effort estimation  state of the practice - mohamad kassabRequirements effort estimation  state of the practice - mohamad kassab
Requirements effort estimation state of the practice - mohamad kassab
 
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
 
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
A NEW HYBRID FOR SOFTWARE COST ESTIMATION USING PARTICLE SWARM OPTIMIZATION A...
 
Re2018 Semios for Requirements
Re2018 Semios for RequirementsRe2018 Semios for Requirements
Re2018 Semios for Requirements
 
Learninig Analytics Special Track: A cluster-based analisys to diagnose stude...
Learninig Analytics Special Track: A cluster-based analisys to diagnose stude...Learninig Analytics Special Track: A cluster-based analisys to diagnose stude...
Learninig Analytics Special Track: A cluster-based analisys to diagnose stude...
 
A context-aware model for QoE analysis in mobile environments
A context-aware model for QoE analysis in mobile environmentsA context-aware model for QoE analysis in mobile environments
A context-aware model for QoE analysis in mobile environments
 
A MODEL-BASED APPROACH MACHINE LEARNING TO SCALABLE PORTFOLIO SELECTION
A MODEL-BASED APPROACH MACHINE LEARNING TO SCALABLE PORTFOLIO SELECTIONA MODEL-BASED APPROACH MACHINE LEARNING TO SCALABLE PORTFOLIO SELECTION
A MODEL-BASED APPROACH MACHINE LEARNING TO SCALABLE PORTFOLIO SELECTION
 

More from caise2013vlc

Markus keuneke partial data-models
Markus keuneke   partial data-modelsMarkus keuneke   partial data-models
Markus keuneke partial data-modelscaise2013vlc
 
Jelena zdravkovic c ai-se 2013 capability caas
Jelena zdravkovic  c ai-se 2013 capability caasJelena zdravkovic  c ai-se 2013 capability caas
Jelena zdravkovic c ai-se 2013 capability caascaise2013vlc
 
Sagar sen caise2013final
Sagar sen caise2013finalSagar sen caise2013final
Sagar sen caise2013finalcaise2013vlc
 
Suriadi caise2013 slides
Suriadi caise2013 slidesSuriadi caise2013 slides
Suriadi caise2013 slidescaise2013vlc
 
Fadila caise2013 vf
Fadila caise2013 vfFadila caise2013 vf
Fadila caise2013 vfcaise2013vlc
 
Henning agt talk-caise-semnet
Henning agt   talk-caise-semnetHenning agt   talk-caise-semnet
Henning agt talk-caise-semnetcaise2013vlc
 
Michael mrissa c aise
Michael mrissa c aiseMichael mrissa c aise
Michael mrissa c aisecaise2013vlc
 
Razvan petrusel presentation caise 2013
Razvan petrusel   presentation caise 2013Razvan petrusel   presentation caise 2013
Razvan petrusel presentation caise 2013caise2013vlc
 
Ramezani taghiabadi temporal compliance checking 2
Ramezani taghiabadi   temporal compliance checking 2Ramezani taghiabadi   temporal compliance checking 2
Ramezani taghiabadi temporal compliance checking 2caise2013vlc
 
Ferreira c ai-se2013-final-handouts
Ferreira   c ai-se2013-final-handoutsFerreira   c ai-se2013-final-handouts
Ferreira c ai-se2013-final-handoutscaise2013vlc
 
Sonja meyer caise 2013
Sonja meyer caise 2013Sonja meyer caise 2013
Sonja meyer caise 2013caise2013vlc
 
Tony clark caise 13-presentation
Tony clark  caise 13-presentationTony clark  caise 13-presentation
Tony clark caise 13-presentationcaise2013vlc
 
Jorge cardoso caise-usdl-tosca-2013-06-18c
Jorge cardoso   caise-usdl-tosca-2013-06-18cJorge cardoso   caise-usdl-tosca-2013-06-18c
Jorge cardoso caise-usdl-tosca-2013-06-18ccaise2013vlc
 
Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_caise2013vlc
 
Ignacio panach ormeño et-al_caise2013
Ignacio panach   ormeño et-al_caise2013Ignacio panach   ormeño et-al_caise2013
Ignacio panach ormeño et-al_caise2013caise2013vlc
 
Peter sawyer caise
Peter sawyer  caisePeter sawyer  caise
Peter sawyer caisecaise2013vlc
 
Moe wynn caise13 presentation
Moe wynn   caise13 presentationMoe wynn   caise13 presentation
Moe wynn caise13 presentationcaise2013vlc
 
Tommi kramer 2013-06-21-caise-re2-kramer
Tommi kramer   2013-06-21-caise-re2-kramerTommi kramer   2013-06-21-caise-re2-kramer
Tommi kramer 2013-06-21-caise-re2-kramercaise2013vlc
 

More from caise2013vlc (20)

Markus keuneke partial data-models
Markus keuneke   partial data-modelsMarkus keuneke   partial data-models
Markus keuneke partial data-models
 
Jelena zdravkovic c ai-se 2013 capability caas
Jelena zdravkovic  c ai-se 2013 capability caasJelena zdravkovic  c ai-se 2013 capability caas
Jelena zdravkovic c ai-se 2013 capability caas
 
Sagar sen caise2013final
Sagar sen caise2013finalSagar sen caise2013final
Sagar sen caise2013final
 
Suriadi caise2013 slides
Suriadi caise2013 slidesSuriadi caise2013 slides
Suriadi caise2013 slides
 
Fadila caise2013 vf
Fadila caise2013 vfFadila caise2013 vf
Fadila caise2013 vf
 
Henning agt talk-caise-semnet
Henning agt   talk-caise-semnetHenning agt   talk-caise-semnet
Henning agt talk-caise-semnet
 
Michael mrissa c aise
Michael mrissa c aiseMichael mrissa c aise
Michael mrissa c aise
 
Razvan petrusel presentation caise 2013
Razvan petrusel   presentation caise 2013Razvan petrusel   presentation caise 2013
Razvan petrusel presentation caise 2013
 
Ramezani taghiabadi temporal compliance checking 2
Ramezani taghiabadi   temporal compliance checking 2Ramezani taghiabadi   temporal compliance checking 2
Ramezani taghiabadi temporal compliance checking 2
 
Ferreira c ai-se2013-final-handouts
Ferreira   c ai-se2013-final-handoutsFerreira   c ai-se2013-final-handouts
Ferreira c ai-se2013-final-handouts
 
Sonja meyer caise 2013
Sonja meyer caise 2013Sonja meyer caise 2013
Sonja meyer caise 2013
 
Tony clark caise 13-presentation
Tony clark  caise 13-presentationTony clark  caise 13-presentation
Tony clark caise 13-presentation
 
Jorge cardoso caise-usdl-tosca-2013-06-18c
Jorge cardoso   caise-usdl-tosca-2013-06-18cJorge cardoso   caise-usdl-tosca-2013-06-18c
Jorge cardoso caise-usdl-tosca-2013-06-18c
 
Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_
 
Ignacio panach ormeño et-al_caise2013
Ignacio panach   ormeño et-al_caise2013Ignacio panach   ormeño et-al_caise2013
Ignacio panach ormeño et-al_caise2013
 
Peter sawyer caise
Peter sawyer  caisePeter sawyer  caise
Peter sawyer caise
 
Scekic caise13-
Scekic caise13-Scekic caise13-
Scekic caise13-
 
Moe wynn caise13 presentation
Moe wynn   caise13 presentationMoe wynn   caise13 presentation
Moe wynn caise13 presentation
 
Jian yu caise13-
Jian yu caise13-Jian yu caise13-
Jian yu caise13-
 
Tommi kramer 2013-06-21-caise-re2-kramer
Tommi kramer   2013-06-21-caise-re2-kramerTommi kramer   2013-06-21-caise-re2-kramer
Tommi kramer 2013-06-21-caise-re2-kramer
 

Recently uploaded

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Recently uploaded (20)

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 

Miguel goulao 2013 c-aise

  • 1. A Framework to Evaluate Complexity and Completeness of KAOS Goal Models Patrícia Espada, Miguel Goulão, and João Araújo titiespada@gmail.com, mgoul@fct.unl.pt, joao.araujo@fct.unl.pt http://ctp.di.fct.unl.pt/~mgoul/ http://ctp.di.fct.unl.pt/~ja/
  • 2. Goal-Oriented Requirements Engineering (GORE) Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain2  A paradigm in Requirements Engineering to handle  Requirements elicitation  Requirements specification  Requirements analysis  Requirements negotiation  Requirements evolution  Some well-known approaches  KAOS, i* framework, GBRAM, GRL, ...
  • 3. Knowledge Acquisition in autOmated Specification (KAOS) Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain3  GORE methodology based in goal decomposition and refinement, to support requirements acquisition and elaboration
  • 4. Let’s work out after yesterday’s Gala Dinner 4  The members of a health club need to get a ticket before participating in a specific class...
  • 5. Let us work out... in KAOS 5 Conflict Data Correction Response time Get ticket for class Save ticket request Register Show classes Detect card Select class Read card Update class capacity Classes Ticket dispenser Print ticket Member Concerns Concerns Concerns
  • 6. Add a few more requirements to our example 6 • 5 main functionalities • 15 agents • 212 sub-goals • Is this model complete? • How complex is this model? • Is this complexity really necessary? • GORE aimed at large scaled systens • Models can become really hard to understand
  • 7. Research objectives 7  Analyse the extent to which a model is close to being complete  Assess model complexity to identify model refactoring opportunities, e.g.:  Models may have a too deep goal hierarchy  Agents may have too many responsibilities  Prevent unanticipated extra costs in the development phase  Better management of the completeness and complexity of the models
  • 8. Contributions Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain8  Tool supported approach in the metrics-based evaluation of the completeness and complexity of KAOS goal models  The developer can measure the current status of his model and take on corrective actions, during model construction.  The tool support is based on the integration of a KAOS editor with a KAOS metrics suite and  targeted to the requirements elicitation process,  it can also support post-mortem analysis from which lessons can be learned for future projects.  Metrics and formally define all metrics using OCL  We validate the metrics set and their implementation by extending an existing tool for editing KAOS goal models  modularKAOS developed in MDD on top of Eclipse
  • 9. Approach outline  Metrics identification using the Goal-Question- Metric approach  Metrics (semi-)formal definition using OCL  Metrics evaluation with real-world case studies  Often used as example of best practices using KAOS  KAOS models analysis with metrics support 9
  • 10. Goal: KAOS models completeness evaluation 10 Question Metric Q1. How close are we to completing the assignment of all goal responsibilities to agents? PLGWA. Percentage of Leaf Goals With an Agent. Q2. How detailed is the goal model with respect to objects? PLGWO. Percentage of Leaf Goals With an Object. Q3. How close are we to complete the resolution of all the goal obstacles? PLOWS. Percentage of Leaf Obstacles With a reSolution. Q4. How detailed is the goal model with respect to operations? PLGWOp. Percentage of Leaf Goals With an Operation. Q5. How well supported are the operations in the goal model? POpWA. Percentage of Operations With an Agent.
  • 11. Goal: KAOS models complexity evaluation 11 Question Metric Q6. Does an agent have too much responsibility in the model? ANLG. Number of Leaf Goals per Agent. Q7. Does a leaf goal have too many/few objects? GNO. Number of Objects per Goal. Q8. How difficult is it to understand a model, with respect to the number of refinement levels? MD. Model Depth. Q9. How complex is a model, with respect to its goal refinements? RNSG. Root Number of Sub- Goals.
  • 13. Metrics definition 13 Q1 - How close are we to completing the assignment of all goal responsibilities to agents? Name PLGWA – Percentage of Leaf Goals With an Agent Informal definition Percentage of leaf goals that have an associated agent in the model. Formal definition context KAOS def: PLGWA(): Real = self.NLGWA() / self.NLG() Pre-condition context KAOS::PLGWA() pre: self.NLG() > 0 Comments If there are no leaf goals the result is undefined. This requires: NLG – Number of Leaf Goals NLGWA– Number of Leaf Goals With an Agent Recommendation In a complete model, all leaf goals should be assigned to an agent.
  • 14. Computing % of leaf goals with an agent 14 PLGWA = 4 / 5 = 0.8PLGWA = NLGWA / NLG
  • 15. Evaluation15 BARTS MSCS ES CPMS LMS LAS MS
  • 16. Percentage of Leaf Goals with an Agent 16
  • 17. Percentage of Leaf Goals with an Object Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain17
  • 18. Percentage of Leaf Obstacles with a reSolution Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain18
  • 19. Percentage of Leaf Goals with an Operation Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain19
  • 20. Percentage of Operations with an Agent Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain20
  • 21. Number of Leaf Goals per Agent Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain21
  • 22. Objects per Goal Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain22
  • 23. Model Depth Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain23
  • 24. Root Number of Sub-Goals Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain24
  • 25. Discussion (Completeness)  Most models handle responsibility assignment of leaf goals to agents  Objects are not frequently used  When obstacles are specified, we find a big variation (from 0% to 100%) of the percentage of obstacles with a resolution  Operations are even more rarely used than objects  Only two of the case studies model the assignment of operations to agents, showing this is a fairly unexplored modeling feature. 25
  • 26. Discussion (complexity)  Relatively few leaf goals assigned to an agent  Do not attribute too many responsibilities to a single agent  Assigning objects to goals is a mostly unexplored feature of models  Model depth varies much less than the number of model elements, suggesting a fairly consistent state of practice with respect to what is considered an adequate model decomposition level  Big variations in the case studies, concerning the number of subgoals defined in each model  The average number is around 40 subgoals, although in one of the examples it is over 200 goals. 26
  • 27. Limitations Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain27  Framework does not cover  Quality of elicited requirements  Thoroughness of elicited requirements  No easy essential vs. accidental complexity differentiation  No reference values for what is “acceptable”  Only “good” examples in the sample  Reference for best practices, but not for bad ones
  • 28. Conclusions Espada, Goulão, Araújo, “A Framework to Evaluate Complexity and Completeness of KAOS Goal Models”, CAiSE 2013, Valencia, Spain28  Metrics suite for completeness and complexity of KAOS goal models  Values computed and updated as the model evolves  Full integration with modeling tool  Completeness monitoring to help assessing effort to model completion  Complexity monitoring to detect early potential quality problems and identifying refactoring opportunities  Proof of concept with best practices examples of KAOS models  Obtained metrics values are a step towards deeper understanding of actual goal modeling practices
  • 29. Future work  Metrics set extension to quality attributes  Evaluation replication with other KAOS models  Towards metrics-based modeling heuristics  Assess completeness in terms of requirements coverage  Trace model elements to requirements sources  Identify the requirements in those sources that are yet to be covered by the goal models 29