CEUR Proceedings of the 5th International i* Workshop (iStar 2011) A Social Interaction Based Pre-Traceability for i* Models Maurício Serrano1 and Julio Cesar Sampaio do Prado Leite1, 1 Departamento de Informática, Pontifícia Universidade Católica do Rio de Janeiro, Rua Marquês de São Vicente 225, Ed. Padre Leonel Franca 13o. andar, Rio de Janeiro, Brasil mauserr@les.inf.puc-rio.br and http://www-di.inf.puc-rio.br/~julio/ Abstract. There is a lack of work focusing on i* models pre-traceability. Most of traceability work on i* models is centered on forward or backward traceability, i.e., tracing i* models to design models or design models to i* models. It seems that the stakeholders' needs and the organizational process are first-class citizens, but the requirements engineering process is not. We present in this paper our approach to i* models pre-traceability, which focuses on tracing the requirements engineering process (designing the design). Using ITrace models, our approach focuses on the requirements process. Our approach is based on argumentation graphs to trace stakeholders' arguments on social interactions, as these arguments justify what is represented on i* models. Keywords: i* framework pre-traceability, requirements engineering process, rich picture, social interactions, argumentation. 1 Introduction In 1993, Goguen [1] discussed how social issues affected the Requirements Engineering (hereafter RE) process. Three social groups were clearly identified: the client organization, the requirements team and the development team. In that paper [1], Goguen notes the necessity of documenting and maintaining traces of the RE process. Without the traces, it would be impossible to identify social issues within these groups or on the interactions between them. Gotel and Finkelstein [2] were the first to distinguish between forward and backward traceability, i.e., from requirements to design artifacts and from design artifacts back to the requirements, respectively. They also reported how the lack of pre-requirements traceability led to the lack of commitment and the lack of accountability on teams. Based on [2], Gotel and Finkelstein proposed Contribution Structures [3]. These dynamic structures deal with traceability relations between artifacts and trace the individuals and groups that participated in the RE. The individuals’ roles and commitment to the requirements development are the focus of their proposal. Contribution Structures is still the foundation for requirements pre-traceability on current traceability metamodels. 132 CEUR Proceedings of the 5th International i* Workshop (iStar 2011) The Tropos methodology [4] focused on developing requirements-driven software from goal-oriented requirements modeled with the i* framework [5]. As a model- driven methodology, Tropos support forward and backward traceability. Tropos’ backward traceability goes so far as to the Early-Requirements models, thus providing a backward traceability from requirements to organizational processes and actors’ needs. However, Tropos’ backward traceability from Late-Requirements to Early- Requirements can not be considered pre-traceability. As i* models, Early- Requirements specifications are products of several RE processes. In this paper, we propose a pre-traceability approach that traces i* models back to the social interactions of the RE process. We propose the use of ITrace [6] to perform this task. ITrace traces RE artifacts back to social interactions, social interactions goals, activities, techniques, social networks, information sources and resources through RichPicture [7]. Our approach also models the stakeholders’ arguments on social interactions using an argumentation framework [8]. These arguments justify the i* models contents. This paper is organized in Sections: Section 2 discusses the main objectives of our research; Section 3 presents some scientific contributions; Section 4 summarizes the proposal by presenting the final considerations; and finally, in Section 5 we consider the ongoing and future work. 2 Objectives of the research The main objective of our research is to offer a lightweight pre-traceability model to i* models. When an i* model is created or discarded or every time an i* model evolves or is analyzed an ITrace model enriched with argumentation should be produced. These RE activities should generate a large set of enriched ITrace models. With our approach, we intend to enable the requirements engineer to answer the following not-comprehensive type of questions: 01. How the requirements were elicited? 02. Which techniques were applied? 03. Who modeled the requirements on the i* model? 04. Who interacted with the stakeholders? 05. Which stakeholders were consulted? 06. Was the development team involved in the process? 07. How many social interactions were necessary to obtain the current version? 08. Were the teams geographically separated? 09. If I need to modify an i* model, which information sources or stakeholders should I consult? 10. Was the i* model validated by all the stakeholders? 11. Who stated that the softgoal X was a relevant quality criteria? 12. When and why the tasks (means) Y and Z that achieve the goal (end) X of actor W became part of the model? 133 CEUR Proceedings of the 5th International i* Workshop (iStar 2011) 3 Scientific contributions Previous work on requirements pre-traceability [9] [10] [11] focuses on proposing metamodels that extensively define what should be traced. The production of these traces is done by using management tools, what demands extra work. As this extra work does not benefit the i* model itself, pre-traceability is commonly set aside. Our approach is based on RichPicture [7], an informal hand-drawn model to be used on the workplace. ITrace models follow this philosophy1, allowing the modeler to freely draw the process, i.e., designing the design, during the social interaction with the stakeholders. However, ITrace demands that the drawing have three layers: (i) the Base layer, on the bottom, where the social network, information sources and resources are drawn; (ii) the Interactions layer, on the middle, where the social interactions, the goals, the activities and the applied techniques are drawn, and (iii) the Artifacts layer, on the top, where the i* model and argumentation graph thumbnails or references are drawn. Fig. 1 shows the three layers of an ITrace model. ITrace models are constructed with the collaboration of all participants on the social interaction and, as such, are validated on-the-fly. Fig. 1. The three layers of ITrace: Base (B), Interactions (I) and Artifacts (A) We extended our previous approach [6] by adding argumentation graphs [8] to the ITrace model. Argumentation graphs enabled us to attach the stakeholder’s arguments to the ITrace model. These arguments justify the main changes to the i* model. We suggest that the argumentation graphs should be hand-drawn while the stakeholders are arguing, capturing only the most relevant arguments. We decided to include on our argumentation graphs traces between the stakeholders’ arguments and the video recordings of the meetings. However, this decision implies extra work after the social interactions are finished. Fig. 2 shows an argumentation graph about the contributions of some Lattes-Scholar [12] operationalizations to transparency-related softgoals. Another scientific contribution of our approach was to attach the RE process to the artifact. Contribution Structures [3] allow direct links between artifacts and individuals. Therefore, they lose, for example, the Why, When, Where, How and How Much dimensions of the trace. ITrace also applies visual symbols (cartoon dialogs) and argumentation graphs to represent the actors’ concerns on a social interaction. 1 All ITrace models and argumentation graphs showed in this paper were re-drawn with Microsoft Visio® to improve the paper presentation. 134 CEUR Proceedings of the 5th International i* Workshop (iStar 2011) Fig. 2. An argumentation graph with traces to video recordings (.mpg files) Finally, we scanned our ITrace graphs and uploaded them to Flickr®. Using the “add a note” action, it was possible to define hyperlink regions on the picture. We took advantage of this feature to link the i* model thumbnail to the real-size i* model, the actors to their web pages, the information sources to the original documents, the video recordings to their Youtube® videos and so on. Fig. 3 illustrates an ITrace model with some of these “notes” (regions on the picture) [13]. 4 Conclusions In this paper we briefly present our proposal to a lightweight pre-traceability model for i* models. ITrace is a simple graphical notation tool to be used at the workplace. When presented with the idea, Prof. Berry2 recalled the “POTLO BOAD TIP” - Problem Of The Lack Of Benefit Of A Document To Its Produces, a problem that may block the efforts of requirements systematization [14]. Pre-traceability is often set aside as it does not benefit the i* modeling, itself. We address this problem by focusing on providing pre-traceability with a minimal effort. As our models are easily hand-drawn during the social interactions, no additional work is needed after the 2 A meeting with Prof. Daniel M. Berry during his visit to Departamento de Informática at PUC-Rio (6/9/11) 135 CEUR Proceedings of the 5th International i* Workshop (iStar 2011) meetings; of course that the organization should have the maturity as to understand that it is worth investing in requirements practices as it pays off in the future. Fig. 3. Exploring the hyperlink features of Flickr® [13] Previous work on requirements pre-traceability [9] [10] [11] proposed metamodels to cast the traces. The biggest problem with their approaches is the difficulty of maintaining the traces while the RE artifacts evolves. Our approach applies an innovative view to this problem: ITrace models do not evolve. ITrace models are snapshots (as a picture is) of a social interaction that produced or modified an i* model. If an i* model evolves, a new ITrace model will be created to trace this evolution. The new ITrace model does not substitute the older ones. They coexist, each one tracing its respective social interaction. 136 CEUR Proceedings of the 5th International i* Workshop (iStar 2011) 5 Ongoing and future work Since the middle of 2010, we have been applying our proposal to trace the Software Transparency Group’s weekly meetings. We successfully traced the capturing and the evolution of several requirements patterns [15] and the evolution of several i* and NFR Framework models. We are also applying our proposal to trace a transparency- centered software development process, using Lattes-Scholar [12] as a case study. As future work, we intend to analyze: (i) the use of the Flickr® tags to enrich the ITrace models, and (ii) how these tags would impact searching and tracing within a given set of ITrace snapshots. References 1. Goguen, J. A.: Social Issues in Requirements Engineering. In Proc. of the IEEE International Symposium on Requirements Engineering, pp. 194-195, California, USA (January 1993). 2. Gotel, O. and Finkelstein, A.: An Analysis of the Requirements Traceability Problem, in Proceedings of First Int. Conference on Requirements Engineering, pages 94-101 (1994). 3. Gotel, O. and Finkelstein, A.: Contribution structures. Proc. 2nd Intl. Symp. Requirements Engineering, York, pages 100-107 (1995). 4. Bertolini, D.; Delpero, L.; Mylopoulos, J.; Novikau, A.; Orler, A.; Penserini, L.; Perini, A.; Susi, A.; Tomasi, B.: A tropos model-driven development environment. In: Boudjlida, N.; Cheng, D.; Guelfi, N. (eds.) CAiSE Forum, CEUR Workshop Proceedings, vol. 231 (2006). 5. Yu, E.: Towards Modelling and Reasoning Support for Early-Phase Requirements Engineering. 3rd IEEE Int. Symp. on Requirements Eng. (RE'97), pp. 226-235 (1997). 6. Serrano, M. and Leite, J.C.S.P.: A Rich Traceability Model for Social Interactions. 6th Int. workshop on Traceability in emerging forms of software engineering. (TEFSE '11). ACM, USA, pp. 63-66 (2011). http://doi.acm.org/10.1145/1987856.1987871 7. Monk, A. and Howard, S.: The Rich Picture: A Tool for Reasoning about Work Context. Methods and Tools, ACM 1072-5220/98/0300, pp. 21-30 (April 1998). 8. Jureta, I., Mylopoulos, J., Faulkner, S.: Analysis of Multi-Party Agreement in Requirements Validation, 17th IEEE Int. Requirements Eng. Conference, pp. 57-66, (2009). 9. Pohl, K.: PRO-ART: Enabling Requirements Pre-Traceability. 2nd. IEEE Int. Conference on Requirements Engineering (ICRE’96), ISBN:0-8186-7252-8, pp. 76-84 (April 1996). 10. Ramesh, B. and Jarke, M. 2001. Toward Reference Models for Requirements Traceability. IEEE Transactions on Software Engineering, Vol. 27, No. 1, pages 58-93 (January 2001). 11. Pinto, R. C.; Silva, C.; Castro, J.: Support for Requirement Traceability: The Tropos Case. 19th Simpósio Brasileiro de Engenharia de Software (SBES'05), Brasil (2005). 12. Lattes-Scholar: Requirements Engineering Group at PUC-Rio. Available at: http://www.er.les.inf.puc-rio.br/~wiki/index.php/Lattesscholar (May 2011). 13. Flickr: ITrace of meeting dd-mm-2011. Available at: http://www.flickr.com/photos/63908029@N02/5819877406/in/photostream (June 2011) 14. Berry, D.M., Czarnecki, K., Antkiewicz, M. and AbdelRazik, M: Requirements Determination is Unstoppable: An Experience Report. 17th IEEE Int. Requirements Eng. Conference, pp. 311-316 (2010) 15. Serrano, M. and Leite, J.C.S.P.: Development of Agent-Driven Systems: from i* Architectural Models to Intentional Agents’ Code, to appear at the First Int. Workshop on Requirements Patterns (2011) 137