... | ... | @@ -6,17 +6,17 @@ The use case starts with the mobile application **STApp** detecting the current |
|
|
|
|
|
**Experiment** The experiment conducted for the SMT use case employed the following experimental units.
|
|
|
|
|
|
**Experimental unit 1:** *CHOReVOLUTION approach* -- full usage of the **CHOReVOLUTION** platform except for the development of the mobile application, which is out of the scope.
|
|
|
**-Experimental unit 1:** *CHOReVOLUTION approach* -- full usage of the **CHOReVOLUTION** platform except for the development of the mobile application, which is out of the scope.
|
|
|
|
|
|
**Experimental unit 2:** *General-purpose enterprise-oriented technology* -- full usage of the development technology daily adopted by the Genoa partner, i.e., Microsoft .Net, C\#, and Microsoft Visual Studio.
|
|
|
**-Experimental unit 2:** *General-purpose enterprise-oriented technology* -- full usage of the development technology daily adopted by the Genoa partner, i.e., Microsoft .Net, C\#, and Microsoft Visual Studio.
|
|
|
|
|
|
**Experimental unit 3:** *Domain-specific system integration platform* -- full usage of the proprietary platform developed by the Genoa's partner, i.e., [e-miXer](www.e-mixer.com). It is a content and system integrator that is specific for the travel and mobility information domain.
|
|
|
**-Experimental unit 3:** *Domain-specific system integration platform* -- full usage of the proprietary platform developed by the Genoa's partner, i.e., [e-miXer](www.e-mixer.com). It is a content and system integrator that is specific for the travel and mobility information domain.
|
|
|
|
|
|
The technologies of the experimental units 2 and 3 were selected considering that the industrial partner was already familiar and skilled with them. It is clear that there exist many other equivalently powerful alternatives for units 2 and 3. However, opting for an alternative would have required a training effort that could not be afforded by the partner because of budget constraints. In any case, apart from budget constraints and assuming the possibility to opt for an alternative, we can argue that, whatever (reasonably) long the training could last, it would be not easy to reach the same level of expertise, hence possibly compromising the validity of the experiment.
|
|
|
|
|
|
The experiment was conducted by two different development teams. The team involved in the experimental unit 1 was formed by two developers of the **CHOReVOLUTION** project. The other team, involved in the experimental units 2 and 3, was formed by the above two developers plus two other developers from a different project. The experimental tasks were distributed to the different developers. This helped to eliminate the potential bias of person-task links. All developers had equivalent professional skills and familiarity with the concerned technologies.
|
|
|
|
|
|
**Hypothesis 1 --** We found that the **CHOReVOLUTION** approach significantly decreased the time required to implement the STM use case.
|
|
|
**-Hypothesis 1-** We found that the **CHOReVOLUTION** approach significantly decreased the time required to implement the STM use case.
|
|
|
|
|
|
| **Tasks** | **Experimental unit 1 (ph)** | **Experimental unit 2 (ph)** | **Experimental unit 3 (ph)** |
|
|
|
| :--------: | :--------: | :--------: | :--------: |
|
... | ... | @@ -33,7 +33,7 @@ The table describes the activities performed within each experimental unit for a |
|
|
|
|
|
For each experimental unit, the table reports the ph employed to carry out the experimental tasks together with the total amounts of ph. In particular, the total amounts for the experimental units 2 and 3 highlight in brackets the ph saved by using the **CHOReVOLUTION approach**. Specifically, the general-purpose enterprise-oriented approach took more than fifthteen times longer than the **CHOReVOLUTION approach**, whereas the domain-specific system integration platform took more than six times longer.
|
|
|
|
|
|
**Hypothesis 2 --** We found that the **CHOReVOLUTION** approach provides a meaningful decrease of the time required to maintain the SMT choreography-based system. In the maintenance phase, a different service is selected to play the role of the **Parking** participant, hence leading to a service substitution. The selected service has a different interface with respected to the one required by the choreography specification. In this scenarios, although it is out of the scope of this paper, the **CHOReVOLUTION** approach is able to automatically generate additional software entities called Adapters that handle interfaces mismatches. Thus, the experiment tasks considered in this phase, beyond the coordination logic and the prosumer services, include also the experimental task concerning the adaptation logic. In particular, the **CHOReVOLUTION** approach provides automatic support to the generation of the Adapters, whereas the other approaches require a manual implementation or a manual customization.
|
|
|
**-Hypothesis 2-** We found that the **CHOReVOLUTION** approach provides a meaningful decrease of the time required to maintain the SMT choreography-based system. In the maintenance phase, a different service is selected to play the role of the **Parking** participant, hence leading to a service substitution. The selected service has a different interface with respected to the one required by the choreography specification. In this scenarios, although it is out of the scope of this paper, the **CHOReVOLUTION** approach is able to automatically generate additional software entities called Adapters that handle interfaces mismatches. Thus, the experiment tasks considered in this phase, beyond the coordination logic and the prosumer services, include also the experimental task concerning the adaptation logic. In particular, the **CHOReVOLUTION** approach provides automatic support to the generation of the Adapters, whereas the other approaches require a manual implementation or a manual customization.
|
|
|
|
|
|
| **Tasks** | **Experimental unit 1 (ph)** | **Experimental unit 2 (ph)** | **Experimental unit 3 (ph)** |
|
|
|
| :--------: | :--------: | :--------: | :--------: |
|
... | ... | @@ -44,7 +44,7 @@ For each experimental unit, the table reports the ph employed to carry out the e |
|
|
|
|
|
For each experimental unit, the table reports the ph employed to carry out the experimental tasks together with the total amounts of ph. The total amounts for the experimental units 2 and 3 highlight in brackets the ph saved by using the **CHOReVOLUTION** approach. The general-purpose enterprise-oriented approach took ten times longer than the **CHOReVOLUTION** approach, whereas the domain-specific system integration platform took seven times longer.
|
|
|
|
|
|
**Hypothesis 3 --** We found that the **CHOReVOLUTION** approach significantly reduces the time required to evolve the SMT choreography-based system. In the evolution phase, the choreography is modified by removing the task **Get Parking Information** in the left-most parallel branch and the conditional branch concerning the public transportation mode.
|
|
|
**-Hypothesis 3-** We found that the **CHOReVOLUTION** approach significantly reduces the time required to evolve the SMT choreography-based system. In the evolution phase, the choreography is modified by removing the task **Get Parking Information** in the left-most parallel branch and the conditional branch concerning the public transportation mode.
|
|
|
|
|
|
| **Tasks** | **Experimental unit 1 (ph)** | **Experimental unit 2 (ph)** | **Experimental unit 3 (ph)** |
|
|
|
| :--------: | :--------: | :--------: | :--------: |
|
... | ... | @@ -54,7 +54,7 @@ For each experimental unit, the table reports the ph employed to carry out the e |
|
|
|
|
|
For each experimental unit, the table reports the ph employed to carry out the experimental tasks together with the total amounts of ph. The general-purpose enterprise-oriented approach took more than six times longer than the **CHOReVOLUTION** approach, whereas the domain-specific system integration platform took five times longer. In this phase the choreography has been modified by removing parts of it. This allowed all the three experimental units to leverage on code reuse. It is worth to note that time saving obtained in this phase is due to the high support to automation provided by the **CHOReVOLUTION** approach with respect to the other two approaches that require a manual implementation or customization, although reusing some code.
|
|
|
|
|
|
**Overall Experiment results**
|
|
|
**Overall experiment results**
|
|
|
|
|
|
| **Experimental units** | **Implementation (ph)** | **Maintenance (ph)** | **Evolution (ph)** | **Time saving (ph)** |
|
|
|
| :--------: | :--------: | :--------: | :--------: | :--------: |
|
... | ... | |