Skip to content

Commit 746b2a7

Browse files
committed
Update README.md
1 parent 15efd9e commit 746b2a7

File tree

1 file changed

+102
-2
lines changed

1 file changed

+102
-2
lines changed

README.md

Lines changed: 102 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,102 @@
1-
# nautilus-plugin-nrp
2-
1+
# Nautilus Plugin NRP
2+
3+
Nautilus plugin for the Next Release Problem (NRP)
4+
5+
[![GitHub Release](https://img.shields.io/github/release/nautilus-framework/nautilus-plugin-nrp.svg)](https://github.com/nautilus-framework/nautilus-plugin-nrp/releases/latest)
6+
[![GitHub contributors](https://img.shields.io/github/contributors/nautilus-framework/nautilus-plugin-nrp.svg)](https://github.com/nautilus-framework/nautilus-plugin-nrp/graphs/contributors)
7+
[![GitHub stars](https://img.shields.io/github/stars/nautilus-framework/nautilus-plugin-nrp.svg)](https://github.com/almende/nautilus-framework/nautilus-plugin-nrp)
8+
[![MIT Licence](https://badges.frapsoft.com/os/mit/mit.svg?v=103)](https://opensource.org/licenses/mit-license.php)
9+
[![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/)
10+
11+
## Requirements
12+
13+
You need to download Nautilus Framework in your machine (available at https://github.com/nautilus-framework/nautilus-framework) before installing this plugin
14+
15+
## Usage
16+
17+
Open the pom.xml file at ```nautilus-web``` module (from Nautilus Framework) and add the following maven dependency:
18+
19+
```xml
20+
<dependency>
21+
<groupId>org.nautilus.plugin</groupId>
22+
<artifactId>nautilus-plugin-nrp</artifactId>
23+
<version>1.0.0</version>
24+
</dependency>
25+
```
26+
27+
At ```nautilus-web``` search for `PluginService` and add the following fragment code at ```loadPluginsFromClasspath``` method:
28+
29+
```java
30+
addProblemExtension(new NRPProblemExtension());
31+
```
32+
33+
Run Nautilus Framework as usual. If everything is working well, when you initiate a new execution, the NRP problem is going to be available as follows:
34+
35+
<kbd>
36+
<img src="https://user-images.githubusercontent.com/114015/94708545-bb346580-0312-11eb-99b6-5fba786e071f.png">
37+
</kbd>
38+
39+
## Objective Functions
40+
41+
This plugin supports the following objective functions
42+
43+
1. Number Of Products
44+
2. Alive Mutants
45+
3. Uncovered Pairs
46+
4. Similarity
47+
5. Cost
48+
6. Unselected Features
49+
7. Unimportant Features
50+
51+
Please feel free to pull request a new set of objectives.
52+
53+
## Problem Instances
54+
55+
This plugins makes available the following feature model (problem instances) for your experiments:
56+
57+
1. **James:** SPL for collaborative web systems [1]
58+
2. **CAS (Car Audio System):** a SPL to manage automotive sound systems [6]
59+
3. **WS (Weather Station):** SPL for weather forecast systems [2]
60+
4. **E-Shop:** an E-commerce SPL [5]
61+
5. **Drupal:** a modular open source web content management framework [4]
62+
6. **Smarthome v2.2:** SPL for a smart residential solution [3]
63+
64+
The following table shows information about each feature model:
65+
66+
| Feature Model | # of Products | Alive Mutants | Valid Pairs | # of Features |
67+
|------|:---:|:---:|:---:|:---:|
68+
| James | 68 | 106 | 75 | 14 |
69+
| CAS | 450 | 227 | 183 | 21 |
70+
| WS | 504 | 357 | 195 | 22 |
71+
| E-Shop | 1152 | 94 | 202 | 22 |
72+
| Drupal | ~2.09E9 | 2194 | 1081 | 48 |
73+
| Smarthome | ~3.87E9 | 2948 | 1710 | 60 |
74+
75+
## Screenshot
76+
77+
The following image shows an execution considering all objective functions
78+
79+
<kbd>
80+
<img src="https://user-images.githubusercontent.com/114015/94716124-6695e800-031c-11eb-8d58-2a028b9fd8cb.png">
81+
</kbd>
82+
83+
84+
## Questions or Suggestions
85+
86+
Feel free to create <a href="https://github.com/nautilus-framework/nautilus-plugin-nrp/issues">issues</a> here as you need
87+
88+
## Contribute
89+
90+
Contributions to the this project are very welcome! We can't do this alone! Feel free to fork this project, work on it and then make a pull request.
91+
92+
## Authors
93+
94+
* **Thiago Ferreira** - *Initial work*
95+
96+
See also the list of [contributors](https://github.com/nautilus-framework/nautilus-plugin-nrp/graphs/contributors) who participated in this project.
97+
98+
## License
99+
100+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
101+
102+
## References

0 commit comments

Comments
 (0)