In the week of March 26-30, the 27th ACM Symposium of Applied Computing took place at Riva del Garda, province of Trento. On Tuesday, March 27th, I participated in the Requirements Engineering (RE) track of the symposium, presenting a paper that we wrote in collaboration with colleagues of the University of Alicante, Spain.
Continuing a tradition started last year when I participated in SEAMS 2011, I wrote quick summaries of the presentations that were given in this track in order to share it with colleagues from DISI/Unitn. These papers are not yet published in the ACM Digital Library, so if you are interested in one of them and can’t find a copy in the author’s website, let me know because I got the proceedings of the symposium on a DVD.
Starting the track, Alessio Ferrari presented A Clustering-based Approach for Discovering Flaws in Requirements Specifications (Ferrari et al., ISTI-CNR/Italy). Their proposal is to identify lexical and syntactic relationships among functional requirements belonging to the same requirements specification, using an existing clustering approach. Analyzing a set of requirements using natural language, the approach calculates the similarities among all requirements (in pairs) and connects the pairs in a graph using the similarity as the value of each edge. Then, it drops all edges that are below a given threshold, thus forming the clusters and identifying outliers (the ones that don’t belong in a cluster). Identification of ouliers can serve to point out some requirements flaws, for instance incomplete explanation or inconsistent terminology in the requirement statement.
Next, I presented my work: Monitoring Strategic Goals in Data Warehouses with Awareness Requirements, which will be available for download in my publications list once ACM publishes it in the Digital Library. Basically, this work applies the notion of Awareness Requirements to the design of Data Warehouses, augmenting the approach from Mazón et al.  with monitoring for the satisfaction of KPI measures that can indicate if the strategic goals of the Data Warehouse are being achieved or not.
The authors of the third paper, Extending SysML to Explore Non Functional Requirements: the Case of Information System Design (Tsadimas et al., Harokopio University of Athens) could not attend the conference, so Maria Lencastre (the track chair) did a quick presentation of their work, based on slides sent to her (the day before, I might add) by the authors. In summary, the work extends SysML to execute quantiative simulation of non-functional requirements, in order to accommodate model-based system design. This was done by extensions of an UML profile, integrated into an UML Case Tool called MagicDraw.
Closing the morning session, Carina Alves presented A Systematic Mapping Study on Creativity in Requirements Engineering (Lemos et al., UFPE/Brazil, University College London/UK, UnB/Brazil). According to the authors, often, requirements are unknown and result from creative processes (innovations). The RE community has explored the issue with different techniques. They have conducted, thus, a Systematic Mapping Study, i.e., a systematic protocol for the review of literature in a specific field, in this case, exploiting creativity in RE. In particular, they answer three research questions: (1) What are the existing studies to foster creativity in RE? (2) What are the implications of these studies for research and practice in RE? (3) What are the benefits and limitations of these studies?
Back from lunch break, Alberto Sardinha presented EA-Tracer: Identifying Traceability Links between Code Aspects and Early Aspects (Sardinha et al., UNESC-ID/Portugal, Mississippi State University/USA, The Open University/UK, Lancaster University/UK). The works automates the identification of traceability links between early aspects (as in Aspect-Oriented Development) in textual requirements document and code aspects within an object-oriented implementation. Motivating scenarios include Verification & Validation, Change Impact Analysis and Reengeneering. The tool, called EA-Tracer, works on the outputs of two existing aspect mining tools: EA-Miner and FINT. EA-Tracer converts the traceability problem into a text classification problem and applies a Naive Bayes classifier to solve it.
Following, Sombat Chanvilai presented a Goal-Oriented Approach to Creating Class Diagrams with OCL Constraints (Chanvilai et al., The University of Electro-Communications/Japan). The authors propose a method to transform KAOS models into UML class diagrams (which represent the domain entities). The approach uses KAOS goal and operation models and has 3 steps: (1) extract OCL constraints from the goal model; (2) assign them to the operation model; (3) transform the operation model into a class diagram. Steps 1 and 2 are manual, whereas 3 is done automatically. The resulting class diagram with the domain entities is enriched with OCL constraints that enforce the system requirements. As a result, the model has a greater coverage of requirements than one built using standard approaches.
Then, Yonghee Shin presented her work, titled A Comparative Evaluation of Two User Feedback Techniques for Requirements Trace Retrieval (Shin & Cleland-Huang, DePaul Universty/USA). She argued that maintaining trace matrixes (for traceability) is a very labor-intensive task, so researchers proposed automatic trace retrieval, mostly using vectors space models. However, those approaches suffer from high innacuracy, so to try do deal with it, the idea is to get user feedback on the result of the automated trace retrieval, as proposed by two different approaches: Relevance Feedback (Rocchio approach) and Direct Query Modification (DQM). This work, then, compared these two approaches to compare accuracy and time, showing that DQM has only slightly better results than Rocchio. Furthermore, another experiment combined both approaches and the results show improvements over applying one of the approaches individually.
Finally, Patrizia Scandurra closed the track presenting Functional Requirements Validation by Transforming Use Case Models into Abstract State Machines (Scandurra et al., University of Bergamo/Italy, Simula Research Laboratory/Norway). The approach offers a complete and automatic support for elaboration and validation of functional requirements based on Restricted Use Case Modeling (RUCM) as modeling front-end and Abstract State Machines (ASM) as analysis back-end. Their tool, AsmetaRE, automatically transforms RUCM models into ASM models and then atuomatically validates the latter through executed simulations. Scenario-based evaluation was performed using Avalla scenarios from Use Cases.