extending problem frames to deal with stakeholder problems: an agent- and goal-oriented approach

37
Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach Sam Supakkul Lawrence Chung The University of Texas at Dallas

Upload: neil

Post on 18-Jan-2016

37 views

Category:

Documents


0 download

DESCRIPTION

Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach. Sam Supakkul Lawrence Chung The University of Texas at Dallas. A storm is coming… Is it a problem?. http://www.skystef.be/images/Lightning/slides/2008-06-02-1818-Kampenhout.jpg. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Extending Problem Frames to Deal with Stakeholder Problems:

An Agent- and Goal-Oriented Approach

Sam Supakkul

Lawrence ChungThe University of Texas at Dallas

Page 2: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

http://www.skystef.be/images/Lightning/slides/2008-06-02-1818-Kampenhout.jpg

A storm is coming…Is it a problem?

Page 3: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

http://www.alphabetgolf.co.uk/alphabetgolf.co.uk/Outdoor%20Party%20Dance.jpg

Yes, if we want outdoor fun

Page 4: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

http://earthfirst.com/wp-content/uploads/2008/09/egypt-drought.jpghttp://coofweb.deza.admin.ch/pictures/nepal/nrm/en_maize_farmer.jpg

No, if we’re dying for it

want healthy crops

Page 5: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Same phenomenon

problem blessing

http://www.batt69.com/wp-content/uploads/2008/09/little-boy-who-didnt-buy-an-eddie-bauer-umbrella-he-got-caught-in-the-rain.gif

Page 6: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

phenomenon negatively affects someone’s goals

“Storm” causal phenomenon

“have outdoor fun”goal

negativelyaffect

“Being wet” situational phenomenon

cause

Page 7: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

How to deal with stakeholder problems in software related applications?

Page 8: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

London Ambulance Services (LAS)1994 manual dispatch debacle

http://www.publicrecordsguy.com/wp-content/uploads/jayci-yaeger.jpghttp://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/London_Ambulance_at_Abbey_Road.jpg/800px-London_Ambulance_at_Abbey_Road.jpghttp://www.geograph.org.uk/photos/67/30/673019_1ca5dedb.jpghttp://www.lancashire.police.uk/uploads/pics/hatecrime3.jpg

Nasima Begum with liver condition

4 emergency calls

died before ambulance arrived in 53 minutes

Page 9: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Source:http://pro.corbis.com/images/42-15211039.jpg?size=67&uid={e94b3c3f-0338-426a-8bb8-a1289c55c307}http://www.raf-upper-heyford.org/Vehicle_Ops_Dispatch_office.jpghttp://www.dr-dude.com/images/PaperStack.jpghttp://www.royblakeley.name/roy_james_blakeley/lyndon_johnson_situation_room19680216.jpghttp://www.keepnitsimple.org/images/purestock_1574r-01116.medium.jpg

“Physical movement of incident forms”operation

“Ineffective comm. in the call center” situation

a sub-problem of

cause

“Ineffective manual dispatch”situation

negatively affect

Nasima’s “safety” goal

Page 10: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

LAS was developing a CAD system in early 90’s

http://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/London_Ambulance_at_Abbey_Road.jpg/800px-London_Ambulance_at_Abbey_Road.jpghttp://www.mobilecomms-technology.com/projects/astrid/images/new1.jpghttp://www.ukemergency.co.uk/ambulance/dsc09044.jpghttp://upload.wikimedia.org/wikipedia/commons/thumb/4/44/London_Ambulance_on_Hamilton_Terrace_.jpg/250px-London_Ambulance_on_Hamilton_Terrace_.jpg

solves?

How to ensure system solves stakeholder problem?

Page 11: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

1992CAD

Resources

DispatchAmbulanceIncidents

Calls

d

a

b

c

d: MD!{DispatchAmbulance, DispatchHelecopter}

e

f

g

a: CA!{EmergencyCall} e: CA!{AmbulanceRequest}f: IN!{Incident}b: MD!{TrackIncident, ServiceIncident}

c: RE!{ReportStatus, ReportLoc,} g: RE!{Status, Location, Dispatch}

Requirements and specifications = software problem

Machinedomain

GivenDomain

DesignedDomain

Requirement

Requirement reference

Interface

Legend

phenomena

domains

requirementsspecifications

Software problem = what to be built by developers

Page 12: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

software problem solves stakeholder problem?

solves?

How to make sure

1992CAD

Resources

DispatchAmbulanceIncidents

Calls

d

a

b

c

d: MD!{DispatchAmbulance, DispatchHelecopter}

e

f

g

a: CA!{EmergencyCall} e: CA!{AmbulanceRequest}f: IN!{Incident}b: MD!{TrackIncident, ServiceIncident}

c: RE!{ReportStatus, ReportLoc,} g: RE!{Status, Location, Dispatch}

Page 13: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

“A problem unstated is a problem unsolved”-- Douglas Ross, 1977

Page 14: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Concepts to represent

negatively affect

Sub-problem of

cause

Nasima’s “safety” goal“Ineffective manual dispatch” situation

“Ineffective comm. in the call center” situation

“Physical movement of incident forms” operation

softgoalsoft-problem

UndesirableSituation

UndesirableMechanism

sub-problem

Page 15: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Legend

UndesirableSituation

UndesirableMechanism

Agent NFRsoftgoal

Opera.softgoal And

++Make

+Help Contrib. Correlation

Legend

– ––BreakHurt

Claim

stakeholder problem = Phenomenon…negatively affects someone’s goalsIneffective manual dispatch breaks patient’s safety

Safety

– –

Ineffectiveness

wanttopic

topic

Patient

ManualDispatch

AmbulanceDispatch

Type[Topic]

Patient Safety[Patient]

SafetyPatient

want

i*/Tropos

Extension

topic

Page 16: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Legend

UndesirableSituation

UndesirableMechanism

Agent NFRsoftgoal

Opera.softgoal And

++Make

+Help Contrib. Correlation

Legend

– ––BreakHurt

Claim

stakeholder problem = phenomenon…hurts someone’s goalsIneffective manual dispatch breaks patient’s safety

Safety

InjurySickness

– –

EmergencyCare

Ineffectiveness

–Timeliness

want

topic

topic

want

topic

++topic

Patient

ManualDispatch

AmbulanceDispatch

– –

Page 17: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Safety

InjurySickness

– –

EmergencyCare

Ineffectiveness

–Timeliness

want

topic

topic

want

topic

++topic

Patient

ManualDispatch

AmbulanceDispatch

Ineffectiveness[CommInCallCenter] ++

PhysicalMovement[IncidentForms]

– –

Ineffectiveness[StatusLocationCommWithAmbulance]

...Legend

UndesirableSituation

UndesirableMechanism

Agent NFRsoftgoal

Opera.softgoal And

++Make

+Help Contrib. Correlation

Legend

– ––BreakHurt

Claim

stakeholder problem = phenomenon…affects someone’s goalsIneffective manual dispatch affects patient’s safety

Page 18: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Root-cause analysis

Ineffectiveness[ManualDispatch]

Ineffectiveness[CommWihtinDispatchCenter]

Ineffectiveness[CommWithAmbulance]

VerbalComm[WithAmbulance]

++

VerbalComm[TrackLocation]

VerbalComm[TrackStatus]

++

++

PhysicalMovement[IncidentForm]

CrewForgetsToCall[StatusReport]

CrewForgetsToCall[StatusReport]

++

Problem Interdependency Graph(PIG)

Page 19: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Solving stakeholder problems

negatively affect

Sub-problem of

cause

Nasima’s “safety” goal“Ineffective manual dispatch” situation

“Ineffective comm. in the call center” situation

“Physical movement of incident forms” operation

Prevent

Detect

Contain/quarantine

Recover

Page 20: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Solving stakeholder problem

Ineffectiveness[ManualDispatch]

Ineffectiveness[CommWihtinDispatchCenter]

Ineffectiveness[CommWithAmbulance]

++

PhysicalMovement[IncidentForm]

SoftwareBasedInformation

– –

FasterConveyerBelt

Timeliness[EmergencyCare]

– –

VerbalComm

– –

– – Accuracy

Integrated Problem Interdependency Graph (PIG)and Softgoal Interdependency Graph (SIG)

Page 21: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

CreditCardTheft

Stolen[CreditCards]

UnauthorizedAccess[WebSite]

...

SecurityMeasures

want

Hacker

Stakeholder problem sufficiently addressed?

^ (AND)

Ineffectiveness

Ineffectiveness[CommInCallCenter]

Ineffectiveness[StatusLocationCommWithAmbulance]

...

SoftwareBasedForms

MobileTrackingDevice

1992 Computer Aided Dispatch (CAD) System

...

PhysicalMovement[IncidentForms]

VerbalComm

OR

AND

v (OR)

AND

OR

Page 22: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

software problem solves stakeholder problem?

solves?

How to make sure

Page 23: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

ManualDispatch

Resources

AmbulanceDispatch

Incidents

SafetyInjurySickness

– –

recover

EmergencyCare

Ineffectiveness

++

1992CAD

IneffectivenessPIG(Fig. 7)

wantTimeliness

want

topic

topic

Performance(ORCON)

want

CADResources

topic

– –

ComputerAidedDispatch

++

++

– –

topic

a

b

topic

+

c ++

Patient

Caller

Bystander

Government

ef

a

c

b

g

«refine»

d

d: MD!{DispatchAmbulance, DispatchHelecopter}

a: CA!{EmergencyCall} e: CA!{AmbulanceRequest}f: IN!{Incident}b: MD!{TrackIncident, ServiceIncident}

c: RE!{ReportStatus, ReportLoc,} g: RE!{Status, Location, Dispatch}

Ineffectiveness[ManualDispatch]

Ineffectiveness [IncidentLocationIdentifaction]

Ineffectiveness[Communication]

Ineffectiveness[DuplicateCallHandling]

Ineffectiveness[CallHandling]

Ineffectiveness[CallbackHandling]

Ineffectiveness[SpecialIncidentIdentification]

Incomplete [IncidentLocation]

Inaccurate[IncidentLocation]

Ineffectiveness[CommWihtinDispatchCenter]

Ineffectiveness[StatusLocCommWithAmbulance]

Unfamilarity[IncidentLoc]

++ ++

PhysicalMovement[IncidentForm]

VerbalComm[WithAmbulance]

++++

++

HumanJudgement[DuplicateCallHandling]

CallerLeavingPostToConsultAllocator

HumanJudgement[SpecialIncidentIdentification]

++

++

CallerUnfamilarity[IncidentLoc]

CallTakerUnfamilarity[IncidentLoc]

VerbalComm[TrackLocation]

VerbalComm[TrackStatus]

HaveCallerRefertoPhoneBoxID

ComputerBasedGazetteerWithPhoneBoxID

– –

SoftwareBasedInformation

RadioBasedAutomatedTrackingDevice

– –

RadioBasedStatusInputDevice

SoftwareBasedDupCallDetection

AutomaticVehicleLocationSystem

MobileDataTerminal

++ ++

– – – –

Timeliness

– – – – – –

– –

AutomateResourceAllocation

ComputerAidedDispatch

Integrated PIG - SIGExtended problem diagram

Page 24: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Ineffectiveness[ManualDispatch]

Ineffectiveness [IncidentLocationIdentifaction]

Ineffectiveness[Communication]

Ineffectiveness[DuplicateCallHandling]

Ineffectiveness[CallHandling]

Ineffectiveness[CallbackHandling]

Ineffectiveness[SpecialIncidentIdentification]

Incomplete [IncidentLocation]

Inaccurate[IncidentLocation]

Ineffectiveness[CommWihtinDispatchCenter]

Ineffectiveness[StatusLocCommWithAmbulance]

Unfamilarity[IncidentLoc]

++ ++

PhysicalMovement[IncidentForm]

VerbalComm[WithAmbulance]

++++

++

HumanJudgement[DuplicateCallHandling]

CallerLeavingPostToConsultAllocator

HumanJudgement[SpecialIncidentIdentification]

++

++

CallerUnfamilarity[IncidentLoc]

CallTakerUnfamilarity[IncidentLoc]

VerbalComm[TrackLocation]

VerbalComm[TrackStatus]

HaveCallerRefertoPhoneBoxID

ComputerBasedGazetteerWithPhoneBoxID

– –

SoftwareBasedInformation

RadioBasedAutomatedTrackingDevice

– –

RadioBasedStatusInputDevice

SoftwareBasedDupCallDetection

AutomaticVehicleLocationSystem

MobileDataTerminal

++ ++

– – – –

potential missing solution

Timeliness

– – – – – –

– –

AutomateResourceAllocation

ComputerAidedDispatch

potential overlooked problem or gold-plating solution

Benefits of integrated problem- and goal-oriented analysis

Ineffectiveness[ManualDispatch] problem vs. 1992 CAD solution

Page 25: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

ManualDispatch

Resources

AmbulanceDispatch

Incidents

SafetyInjurySickness

– –

recover

EmergencyCare

Ineffectiveness

++

1992CAD

IneffectivenessPIG(Fig. 7)

wantTimeliness

want

topic

topic

Performance(ORCON)

want

CADResources

topic

– –

ComputerAidedDispatch

++

++

– –

topic

a

b

topic

+

c ++

Patient

Caller

Bystander

Government

e f

a

c

b

g

«refine»

d

d: MD!{DispatchAmbulance, DispatchHelecopter}

a: CA!{EmergencyCall} e: CA!{AmbulanceRequest}f: IN!{Incident}b: MD!{TrackIncident, ServiceIncident}

c: RE!{ReportStatus, ReportLoc,} g: RE!{Status, Location, Dispatch}

Ineffectiveness[ManualDispatch]

Ineffectiveness [IncidentLocationIdentifaction]

Ineffectiveness[Communication]

Ineffectiveness[DuplicateCallHandling]

Ineffectiveness[CallHandling]

Ineffectiveness[CallbackHandling]

Ineffectiveness[SpecialIncidentIdentification]

Incomplete [IncidentLocation]

Inaccurate[IncidentLocation]

Ineffectiveness[CommWihtinDispatchCenter]

Ineffectiveness[StatusLocCommWithAmbulance]

Unfamilarity[IncidentLoc]

++ ++

PhysicalMovement[IncidentForm]

VerbalComm[WithAmbulance]

++++

++

HumanJudgement[DuplicateCallHandling]

CallerLeavingPostToConsultAllocator

HumanJudgement[SpecialIncidentIdentification]

++

++

CallerUnfamilarity[IncidentLoc]

CallTakerUnfamilarity[IncidentLoc]

VerbalComm[TrackLocation]

VerbalComm[TrackStatus]

HaveCallerRefertoPhoneBoxID

ComputerBasedGazetteerWithPhoneBoxID

– –

SoftwareBasedInformation

RadioBasedAutomatedTrackingDevice

– –

RadioBasedStatusInputDevice

SoftwareBasedDupCallDetection

AutomaticVehicleLocationSystem

MobileDataTerminal

++ ++

– – – –

Timeliness

– – – – – –

– –

AutomateResourceAllocation

ComputerAidedDispatch

Limitations

• behavioral solutions not traceable todomain and phenomena

• non- behavioral solutions not traceable

Page 26: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

UndesirableSituation NFR Softgoal

UndesirableMechanism

OperationalizingSoftgoal

mirror image

mirror image

Observations

Syntactic Semantic

Soft-problem Softgoal

Problem ≠ negated goal

Solution ≠ negated problem

not the same

Ineffective[ManualDispatch]

Unsafety

not solution for

StormNo Storm

Page 27: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Conclusion

• Contributions– stakeholder problems representation

Soft-problem (Undesirable Situation, Undesirable Mechanism)

– Integrated root-cause and solution analysisPIG - SIG

– Traceability: agents, goals, stakeholder problems, s/w problemsExtended problem diagram

• Future Work– Detailed traceability solutions and domains/phenomena– Integration with negative models

e.g. anti-goal and abuse frames

Page 28: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Ineffectiveness

Ineffectiveness[CommInCallCenter]

Ineffectiveness[StatusLocationCommWithAmbulance]

...

SoftwareBasedForms

MobileTrackingDevice

1992 Computer Aided Dispatch (CAD) System

...

PhysicalMovement[IncidentForms]

VerbalComm

PIG – Problem Interdependency Graph

noproblem

Thank you

Page 29: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Proposition

Goal

ContributionClaim

SoftProblemSoftgoal

Decomposition SatisficingOperationalizingSoftgoal

NFRSoftgoal

UndesirableSituation

UndesirableMechanism

Eql And Or

CorrelationSatisficing

DirectSatisficing

Make Help

Hurt Break

Requirement

ReferencedPhenomenon

RefInterfaceEndPoint

RequirementReference

MachineDomain

DesignedDomain

GivenDomain

Domain

InterfaceConstrainReference

ReferReference

ControlledPhenomenon

parent

offspring

Agent

Hardgoal

Topic

SomePlus

SomeMinus

1..*

1..*

1..*

generalize

Problem

HardProblem

Stakeholder Adversary

TopicEndPointType

0..*

controller

1

SharedPhenomenon

1

1..*

1

1 1

1

1

11

1

1..*

1..*

Want

1

1..*

Impact

1

SatisficingLabel

Undecided

Denied

Satisficed

WeaklySatisficed

WeaklyDenied

0..*

1

1..*

1..*

0..* 0..*

StakeholderWant

AdversaryWant

Conflict

realize

ProblemFramePhenomenon

Phenomenon

0..1

Phenomenon

...Individual

Relation

Softgoal

Stakeholder

Specification

Design

MachineDomain

[11]

Legend

adoptedmeta-element

extendedmeta-element

proxy of existing meta-element

Page 30: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

caused by

Prevent the cause

Detect

Benefits of using goal-oriented reasoning

caused by

Crew’s “safe return” goal“Loss of power and oxygen” situation

“explosion of fuel cells” phenomenon

affect

Contain/quarantine

Recover

Page 31: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

http://www.diegm.uniud.it/create/Handbook/techniques/List/Immagini/FishboneDiagram.gif

Fishbone Diagram

Page 32: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

http://www.qualitytrainingportal.com/resources/problem_solving/images/fault_tree.gif

Fault Tree

Page 33: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Lin Liu, Eric Yu, and John Mylopoulos, “Security and Privacy Requirements Analysis within a Social Setting“, RE’03

The i* Framework

Page 34: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Axel van Lamsweerde, “Elaborating Security Requirements by Construction of Intentional Anti-Models”, ICSE’04

Anti-goal

Page 35: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Guttorm Sindre and Andreas L. Opdahl, “Eliciting security requirements with misuse cases”, RE Journal, 2005

Misuse Cases

Page 36: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

L.Lin, et. al, “Analysing Security Threats and Vulnerabilities Using Abuse Frames”, Technical Report, October 2003

Abuse Frames

Page 37: Extending Problem Frames to Deal with Stakeholder Problems: An Agent- and Goal-Oriented Approach

Steven J. Bleistein, Karl Cox, and June Verner, “Validating strategic alignment of organizational IT requirements using goal modeling and problem diagrams”, Journal of Systems and Software, 2005

An integration of goals and problem frames