MAANA is a tool, associated with the ICSE technical paper -- titled "Using Domain-specific Corpora for Improved Handling of Ambiguity in Requirements", for performing domain-specific handling of ambiguity in requirements. The focus of MAANA is on coordination ambiguity (CA) and prepositional-phrase attachment ambiguity (PAA).
The tool was developed at SnT / University of Luxembourg with funding from Luxembourg's National Research Fund (FNR).
We release the following artifacts:
- ./maana-source.zip: is a compressed version of the Maven project with the source code. Instructions about reusing this compressed version are provided below.
- ./Corpora.zip: contains the seven domain-specific corpora that we generated for the empirical evaluation of our ICSE technical paper (mentioned above). Corpora.zip can be obtained at this link.
- ./example.zip: includes an executable jar file (run.jar) for running our implementation, sample requirements (sample.txt) that are randomly selected from the Satellite domain, the groundtruth file for the sample requirements (sample-groundtruth.csv), and a python script for evaluating the output of MAANA (evaluate.py). example.zip can be obtained at this link.
- ./Data.zip: includes the non-proprietary requirements documents which we use in our evaluation in subfolder "Documents/", as well as the corresponding ground truth in subfolder "Ground-Truth". In "Ground-Truth", we provide both (a) the reconciled decisions (our gold standard) derived from the the annotators' input and (b) the raw input from the individual annotators.
MAANA is implemented as an Apache Maven project and builds on the Apache UIMA framework. For a complete list of the system requirements, see the Requirements File.
- download the compressed project maana-source.zip to your local machine
- Uncompress the folder to ./maana-source/
- In Eclipse, select File>import ...
- Select Maven>Existing Maven Projects and click Next>
- Click Browse... next to the Root Directory field
- Select the uncompressed folder ./maana-source/
- Under Projects, you will then see the /pom.xml file (if not, press on Refresh button)
- Select the pom file and click Finish
- You will the maven project lu.svv.saa.maana imported to your workspace in Eclipse
For a usage example, see the Installation File.
For more details, see the Installation-Requirements File.
For instructions about how to use Wikipedia in our project, see the Additional Instructions File.
If you wish to use or compare with MAANA, please cite the following paper: Ezzini, S., Abualhaija, S., Arora, C., Sabetzadeh, M., Briand, L. C. (2021, May). Using domain-specific corpora for improved handling of ambiguity in requirements. In 43rd International Conference on Software Engineering (ICSE).
MAANA is licensed under MIT License.
Copyright (c) 2021 University of Luxembourg
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.