a goal modeling framework for self-contextualizable software ali emmsad ppt 2009.pdf · research...
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.
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
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
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