a goal modeling framework for self-contextualizable software ali emmsad ppt 2009.pdf · research...

32
Raian Ali, Fabiano Dalpiaz, and Paolo Giorgini A Goal Modeling Framework for Self-Contextualizable Software EMMSAD09 Amsterdam, The Netherlands , 8-9 June, 2009.

Upload: others

Post on 18-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Raian Ali, Fabiano Dalpiaz, and Paolo Giorgini

A Goal Modeling Framework for

Self-Contextualizable Software

EMMSAD09Amsterdam, The Netherlands , 8-9 June, 2009.

22

Talk outline

• Research question• Discussion of related work• Goal-based Self-Contextualization

▫ Tropos Goal Modeling▫ Contextual Tropos Goal Modeling ▫ Context Analysis

• Context Interdependency Problem ▫ Definition, generality, and effects.

• Ongoing and future work

2

33

Research question

• Context is a key for UbiCom, AmI, InvisibleCom, Mobile Information Systems, ...etc

• Self-contextualizable software is able to

▫ Monitor context

▫ Autonomously adapt to context

▫ Adaptation implies having a repository of system variants each fitting to a range of contexts.

Capturing and analyzing the relation between requirements and context.

Part 1: Related Work

4

55

Context models

• Several context models have been proposed, e.g.

▫ Ontology-based [Yau 06] [Wang 04]

▫ Object-based [Henricksen 04]

• The relation between context & its use is missing

▫ Why is context needed?

▫ How to decide which context is relevant?

• Context awareness is mainly focused on the software domain (architecture, HCI..), not on the problem domain.

66

Variability models

• SW product line engineering: systematic creation of a set of software variations at low costs, in short time, and with high quality [Pohl 05].

• To have self-contextualizable feature model, we need to relate features to context.

• Higher level of abstraction that justifies features, probably Goals [Yu 08], is still needed as an earlier starting point.

Feature models [Kang 98]

77

Goal models (Tropos [Bresciani 04] [Yu 95])

• But… (i) in which context a requirement is needed, (ii) an alternative is adoptable, (ii) a quality measure is well satisficed?

88

Why goals?

• Goal models provide [Myloupolos 99]:

▫ Higher level of abstraction fits well to the earlierstages of SW development.

▫ Representation of alternative strategies.

▫ Representation of qualities of alternatives through contributions to softgoals

▫ Modeling at the organization domain, not only the SW domain.

▫ Justification of why software is needed.

Goal-based Variability

• Customizing Goal Model [Hui 03] based on

▫ User preferences expressed over softgoals

▫ User skills needed for each task

• Intentional variability anatomy [Liaskos 06]

▫ What do we Or-decompose

• Goal-based autonomic computing [Lapouchnian 06]

▫ From requirements to autonomic design

• From goals to features [Yu 08]

▫ Justifying features by higher level strategic goals.

9

Part 2: Contextual Goal Model

10

1111

Claim 1

• Context is in each and every where, the earlier we consider context, the better system self-contextualization we get.

▫ We chose to start from Requirements.

▫ Goal model is acknowledged as a good early starting point for requirements analysis.

• Making goal model self-contextualizable:

▫ Defining variation points on goal model

▫ Associating contexts to them

1212

Contextual Tropos Goal Model [Ali 08a] [Ali 08b]

• Relate context to the following variation points

1.Or-Decomposition: the basic variability construct to express alternative goal/task decompositions

2.Contribution: contributions to softgoals can be contextual

C7: staff is in the same room as customer

C2: product compliments another one the customer already has.

C3 product is discountable & interesting to customer

C4: product is free sampled & new to customer

1313

Contextual Tropos Goal Model

3. Actors Dependency: an actor may depend on other actors in certain contexts.

4. Activation: context triggers goals/tasks.

C6: staff is free, speaks a language common to customer, knows well the product, and close to customer

C1: enough time to promote, customer is not in a hurry, customer does not have the product

1414

Contextual Tropos Goal Model

5. And-Decomposition: some and-decomposition sub-goals/sub-tasks are needed only in certain contexts.

6. Means-end: the means to satisfy goals depend on the context

C12: customer stays around and can be seen directly by the sales staff

C7 : the customer place isnot noisy, the system is trained enough on the customer voice

C8: customer has technology expertise and the used device has a touch screen

1515

Claim 2

• While Goal is a state of the world to reach, Context is a state of the world that is the case.

▫ We analyze goals to know what to do to reach them

▫ We analyze contexts to know what to monitor to verify them.

Context Analysis [Ali 09a] [Ali 09b]

• Context is the reification of the environment that whatever in the world provides a surrounding in which the system could operate, as adapted from [Finkelstein 01].

• We do not provide an ontology for context, but constructs to analyze context.

• Hierarchical analysis makes context more

▫ Understandable

▫ Modifiable

▫ Reusable

16

Context Analysis Constructs

• Fact: a predicate its truth value can be objectively computed. E.g. f1: customer never bought product [p] from mall.

▫ Statement: ….can not be objectively computed. E.g. st1: Customer does not have the product [p]

▫ Help: f : fact, s: statement. help(f,s) iff f s . E.g. Help(f1,st1)

▫ Decomposition: or/and of facts and statements. E.g. customer is interested in product: (i) behaviorally or (ii) historically.

17

Context Analysis Example

18

Context analysis Data to monitor

1919

In total

Contextual goal model

Data to monitor to verify facts

Context analysis at variation points

Framework Utilization

• Deriving contextualized system variants at:

▫ Deployment: for some a priori known context. e.g. if the mall is noisy, voice recognition has to be excluded.

▫ Runtime: for changing context.e.g. the distance between customer and staff to decide if staff

gives info in person or remotely.

• Justifying monitoring requirements ▫ Monitor data to verify context to decide requirements

• The hierarchy allows for more: understandability,

modifiability, reusability.

20

Part 3: Context Interdependency Problem

21

This work is still in progress, you can download our technical report ``Modeling and Analyzing Contextual Requirements” from:

http://eprints.biblio.unitn.it/archive/00001606/

Context Interdependency Problem (ConIP)

• Context hierarchy can be transformed into a Boolean formula of leaf facts.

• The implications between these facts might make the formula:

▫ trivial

▫ redundant

▫ or even inconsistent

22

ConIP: Monitoring Redundancy

• f1=‘’visitor is inside a museum room’’

• f2=‘’there is enough light at visitor location’’

• If in one museum the rooms are well illuminated, thus f1f2, and:

▫ (f1 and f2) is reduced to f1

No need to sense the light level

▫ (f1 or f2) is reduced to f2

No need for a positioning system

23

ConIP: + SW Functionality Redundancy

• In other museums (for come decorating reasons ) the level of light inside rooms is low, thus f1 not f2 :

▫ (f1 and f2) is equal to false (inconsistent):

The functionality preconditioned by it is never adopted and redundant.

Monitoring the two facts is redundant (always false)

24

Claim 3

• ConIP is not tied to or caused by our context analysis or goal model.

• Any self-contextualizable software checks progressively contexts that might be contradicted, redundant …

• Let us consider this pseudo modelIf (A or B) and C then

If (D and E) then

Adopt alternative set of actions 1

ElseIf (F or G) then

Adopt alternative set of actions 2

25

ConIP two main difficulties

• Specifying the implications between facts:

▫ The analyst needs semi-automated support.

• Optimizing monitoring requirements:

▫ If we consider the monitoring costs, we need to optimize the set of leaf facts, that enable the verifications of all contexts.

▫ SAT-based Analysis: work in progress at University of Trento, Italy.

26

2727

Ongoing and Future work

• Explaining Interactions by Goals and Context▫ With Open University, UK.

• Contextual SPLE by Goals and Context▫ With Lanacaster University, UK.

• Feasible solution for ConIP • Evaluatation on complex case studies• Merging between context and security

requirements as well. • ...

Publications1. Ali, R., Dalpiaz, F., Giorgini, P.: Location-based variability for mobile information systems. In Bellahsene, Z.,

Leonard, M., eds.: CAiSE 2008. Volume 5074 of Lecture Notes in Computer Science., Springer (2008) 575-578

2. Ali, R., Dalpiaz, F., Giorgini, P.: Location-based software modeling and analysis: Tropos-based approach. In Li, Q., Spaccapietra, S., Yu, E., Olive, A., eds.: ER 2008. Volume 5231 of Lecture Notes in Computer Science., Springer (2008) 169-182

3. Ali, R., Dalpiaz, F., Giorgini, P.: Goal-Based Self-Contextualization. In Proc. of the Forum of the 21st International Conference on Advanced Information Systems (CAiSE09 - Forum).

4. Ali, R., Dalpiaz, F., Giorgini, P.: A Goal Modeling Framework for Self-Contextualizable Software. In the 14th International Conference on Exploring Modeling Methods in Systems Analysis and Design (EMMSAD09).

5. Ali, R., Dalpiaz, F., Giorgini, P.: Modeling and Analyzing Variability for Mobile Information Systems. In

proceedings of the International Conference on Computational Science and Its Applications (ICCSA 2008), LNCS

5073, Springer. (2008) 291-306.

6. Ali, R., Dalpiaz, F., Giorgini, P.: Modeling and Analyzing Location-based Requirements: Goal-oriented Approach.

Accepted for publication in the International Journal of Computer Science and Software Technology (IJCSST).

7. Dalpiaz, F., Ali, R., Asnar, Y., Bryl, V., Giorgini. P.: Applying Tropos to Socio-Technical System Design and

Runtime Configuration. In the Proceedings of the 9th WOA workshop, From Objects to Agents (Dagli Oggetti Agli

Agenti), Palermo, Italy, 17-18 Novembre 2008.

8. Ali, R., Franzen, A., Griggio, A., Giorgini, P.: Modeling and Analyzing Contextual Requirements. Dipartimento di

Ingegneria e Scienza dell'Informazione - University of Trento. Technical Report DISI-09-019, (2009). Submitted

to ER 2009

28

29

Thank you!People to contact

Raian Ali [email protected]

Fabiano Dalpiaz [email protected]

Alberto Griggio [email protected]

Anders Franzén [email protected]

Supervised by

Prof. Paolo Giorgini [email protected]

People to acknowledge

Prof. Jaelson Brelaz de Castro Recife - Brazil

Prof. Roberto Sebastiani Trento - Italy

Prof. Alex Borgida NJ - USA

29

3030

05/01/2010R. Ali, F. Dalpiaz, P. Giorgini

References (1)

• [Yau 06] Yau, S., Liu, J.: Hierarchical situation modeling and reasoning for pervasive computing. Proceedings of 3rd Workshop on Software Technologies for Future Embedded and Ubiquitous Systems (SEUS) (2006) 5-10

• [Henricksen 04] Henricksen, K., Indulska, J.: A software engineering framework for context-aware pervasive computing. PerCom (2004) 77–86 5.

• [Wang 04] Wang, X.H., Zhang, D.Q., Gu, T., Pung, H.K.: Ontology based context modeling and reasoning using owl. In: PERCOMW ’04: Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications Workshops, Washington, DC, USA, IEEE Computer Society (2004) 18–22

• [Pohl 05] Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations,Principles, and Techniques. Springer (2005)

• [Kang 98] Kang, K., Kim, S., Lee, J., Kim, K., Shin, E., Huh, M.: Form: A feature-oriented reuse method with domain-specific reference architectures. Annals of Software Engineering 5 (1998) 143–168

• [Yu 08 ] Yu, Y., do Prado Leite, J.C.S., Lapouchnian, A., Mylopoulos, J.: Configuring features with stakeholder goals. In: SAC 08: Proceedings of the 2008 ACM symposium on Applied computing,New York, NY, USA, ACM (2008) 645649

3131

05/01/2010R. Ali, F. Dalpiaz, P. Giorgini

References (2)

• [Bresciani 04] Bresciani, P., Perini, A., Giorgini, P., Giunchiglia, F., Mylopoulos, J.: Tropos: An agent oriented software development methodology. Autonomous Agents and Multi-Agent Systems 8(3) (2004) 203–236

• [Yu 95] Yu, E.: Modelling strategic relationships for process reengineering. Ph.D. Thesis, University of Toronto (1995)

• [Mylopoulos 99] Mylopoulos, J., Chung, L., Yu, E. From object-oriented to goal-oriented requirements analysis. Commun. ACM, ACM, 1999, 42, 31-37

• [Hui 03] Hui, B., Liaskos, S.,Mylopoulos, J.: Requirements analysis for customizable software goals-skills-preferences framework. In: RE, IEEE Computer Society (2003) 117-126

• [Lapouchnian 06] Lapouchnian, A., Yu, Y., Liaskos, S., Mylopoulos, J.: Requirements-driven design of autonomic application software. In: Proc of CASCON 06, ACM (2006) 7

• [Liaskos 06] Liaskos, S., Lapouchnian, A., Yu, Y., Yu, E.,Mylopoulos, J.: On goal-based variability acquisition and analysis. In: Proc. 14th IEEE Intl. Requirements Engineering Conference (RE06). (2006) 76-85

3232

05/01/2010R. Ali, F. Dalpiaz, P. Giorgini

References (3)

• [Ali 08a] Ali, R., Dalpiaz, F., Giorgini, P.: Location-based variability for mobile information systems. In Bellahsene, Z., Leonard, M., eds.: CAiSE. Volume 5074 of Lecture Notes in Computer Science., Springer (2008) 575-578

• [Ali 08b] Ali, R., Dalpiaz, F., Giorgini, P.: Location-based software modeling and analysis: Tropos-based approach. In Li, Q., Spaccapietra, S., Yu, E., Olive, A., eds.: ER. Volume 5231 of Lecture Notes in Computer Science., Springer (2008) 169-182

• [Ali 09a] Ali, R., Dalpiaz, F., Giorgini, P.: Goal-Based Self-Contextualization. In Proc. of the Forum of the 21st International Conference on Advanced Information Systems (CAiSE09 - Forum).

• [Ali 09b] Ali, R., Dalpiaz, F., Giorgini, P.: A Goal Modeling Framework for Self-Contextualizable Software. In the 14th International Conference on Exploring Modeling Methods in Systems Analysis and Design (EMMSAD09).

• [Finkelstein 01] Finkelstein, A., and Savigni, A.: A framework for requirements engineering for context-aware services. Proc. 1st Int.Workshop on From Software Requirements to Architectures (STRAW), 2001