Slides of my presentation at International Conference on Model Driven Engineering Languages and Systems. To be presented during the session on Friday 11:00-12:30
An Empirical Study on the Maturity of the Eclipse Modeling Ecosystem
1. Flickr/BenNuttall
An Empirical Study on the Maturity of
the Eclipse Modeling Ecosystem
Javier L. Cánovas Izquierdo, Valerio Cosentino, Jordi Cabot
flickr/Kansasphoto
10. Research Questions
Are modeling projects as mature as non-modeling projects?RQ1
Is the incubation status of a project an important factor when comparing
modeling and non-modeling projects?
RQ2
Is the incubation status a valid indicator of the maturity of a modeling
project?
RQ3
11. Research Questions
Are modeling projects as mature as non-modeling projects?RQ1
Is the incubation status of a project an important factor when comparing
modeling and non-modeling projects?
RQ2
Is the incubation status a valid indicator of the maturity of a modeling
project?
RQ3
PROJECT TYPE
PROJECTSTATUS
12. Research Questions
Are modeling projects as mature as non-modeling projects?RQ1
Is the incubation status of a project an important factor when comparing
modeling and non-modeling projects?
RQ2
Is the incubation status a valid indicator of the maturity of a modeling
project?
RQ3
25. Research Questions
Are modeling projects as mature as non-modeling projects?RQ1
Is the incubation status of a project an important factor when comparing
modeling and non-modeling projects
RQ2
Is the incubation status a valid indicator of the maturity of a modeling
Project?
RQ3
27. PROJECT TYPE
PROJECTSTATUS
RQ1
Are modeling projects as mature as non-
modeling projects?RQ1
M ¬Mvs.
Our mission:
Assess whether the distributions of a
given metric are different…
Student’s t-test
Behrens-Fisher test
Mann-Whitney-Wilcoxon
for modeling
vs.
non-modeling
31. RQ1
Are modeling projects as mature as
non-modeling projects?
RQ1
ECOSYSTEM METRICS
METRIC DIFF. INF.
eco_avg_commits_developer ↗
eco_num_commits ↗
eco_num_contributors *** ↗
eco_avg_commits_month ↗
eco_avg_commits_week ↗
eco_avg_commits_last_year ↗
eco_ratio_outsiders ↗
eco_ratio_commits_top_committers ↘
eco_ratio_casuals ** ↗
PRODUCT METRICS
prod_lines_code - ↘
prod_num_extensions ** ↘
prod_class_complexity ↘
prod_functions_complexity ↘
prod_file_complexity ↘
prod_code_smells ↘
prod_open_issues ↘
prod_comment_density *** ↗
prod_technical_debt * ↘
Some metrics present significant differences in
their distribution
Modeling projects achieve lower maturity
levels than non-modeling ones but that the
overall difference is small.
32. Research Questions
Are modeling projects as mature as non-modeling projects?RQ1
Is the incubation status of a project an important factor when comparing
modeling and non-modeling projects?
RQ2
Is the incubation status a valid indicator of the maturity of a modeling
Project?
RQ3
33. PROJECT TYPE
PROJECTSTATUS
RQ2
Is the incubation status of a project an
important factor when comparing modeling
and non-modeling projects?
RQ2
MI
M¬I
¬MI
¬M¬Ivs.
vs.
34. PROJECT TYPE
PROJECTSTATUS
RQ2
Is the incubation status of a project an
important factor when comparing modeling
and non-modeling projects?
RQ2
MI
M¬I
¬MI
¬M¬Ivs.
vs.
Our mission:
Assess whether the distributions of a
given metric are different…
ANOVA
T
for modeling vs.
non-modeling
&
incubation vs.
non-incubation
~
38. RQ2
Is the incubation status of a
project an important factor
when comparing modeling and
non-modeling projects?
RQ2
Numerous significant differences in product
metrics between modeling and non-modeling
projects when they are incubation ones
Differences fade down once the projects
leave the incubation status
The incubation status of a project affects the
maturity comparison between modeling and
non-modeling projects
ECOSYSTEM METRICS
METRIC MI vs. ¬MI M¬I vs. ¬M¬I INF.
eco_avg_commits_developer ↗
eco_num_commits ↗
eco_num_contributors ** ↗
eco_avg_commits_month ↗
eco_avg_commits_week ↗
eco_avg_commits_last_year ↗
eco_ratio_outsiders - - ↗
eco_ratio_commits_top_committers ↘
eco_ratio_casuals * ↗
PRODUCT METRICS
prod_lines_code *** ↘
prod_num_extensions *** ↘
prod_class_complexity - - ↘
prod_functions_complexity - - ↘
prod_file_complexity - - ↘
prod_code_smells *** ↘
prod_open_issues *** ↘
prod_comment_density *** *** ↗
prod_technical_debt * ↘
39. Research Questions
Are modeling projects as mature as non-modeling projects?RQ1
Is the incubation status of a project an important factor when comparing
modeling and non-modeling projects
RQ2
Is the incubation status a valid indicator of the maturity of a modeling
project?
RQ3
40. PROJECT TYPE
PROJECTSTATUS
Project type and status
Is the incubation status a valid indicator of
the maturity of a modeling project?RQ3
MI
M¬I
vs.
Our mission:
Assess whether the distributions of a
given metric are different…
ANOVA
T
for modeling vs.
non-modeling
&
incubation vs.
non-incubation
~
43. RQ3
ECOSYSTEM METRICS
METRIC M¬I vs. MI ¬M¬I vs. ¬MI INF.
eco_avg_commits_developer * ↗
eco_num_commits ** ↗
eco_num_contributors ** *** ↗
eco_avg_commits_month *** ↗
eco_avg_commits_week ** ↗
eco_avg_commits_last_year *** ↗
eco_ratio_outsiders - - ↗
eco_ratio_commits_top_committers *** ↘
eco_ratio_casuals *** ↗
PRODUCT METRICS
prod_lines_code *** ↘
prod_num_extensions *** ↘
prod_class_complexity - - ↘
prod_functions_complexity - - ↘
prod_file_complexity - - ↘
prod_code_smells *** ↘
prod_open_issues *** ↘
prod_comment_density ↗
prod_technical_debt ↘
Is the incubation status a valid
indicator of the maturity of a
modeling Project?
RQ3
No remarkable differences in the metrics for
modeling projects according to its incubation
status
44. RQ3
ECOSYSTEM METRICS
METRIC M¬I vs. MI ¬M¬I vs. ¬MI INF.
eco_avg_commits_developer * ↗
eco_num_commits ** ↗
eco_num_contributors ** *** ↗
eco_avg_commits_month *** ↗
eco_avg_commits_week ** ↗
eco_avg_commits_last_year *** ↗
eco_ratio_outsiders - - ↗
eco_ratio_commits_top_committers *** ↘
eco_ratio_casuals *** ↗
PRODUCT METRICS
prod_lines_code *** ↘
prod_num_extensions *** ↘
prod_class_complexity - - ↘
prod_functions_complexity - - ↘
prod_file_complexity - - ↘
prod_code_smells *** ↘
prod_open_issues *** ↘
prod_comment_density ↗
prod_technical_debt ↘
Is the incubation status a valid
indicator of the maturity of a
modeling Project?
RQ3
No remarkable differences in the metrics for
modeling projects according to its incubation
status
45. RQ3
ECOSYSTEM METRICS
METRIC M¬I vs. MI ¬M¬I vs. ¬MI INF.
eco_avg_commits_developer * ↗
eco_num_commits ** ↗
eco_num_contributors ** *** ↗
eco_avg_commits_month *** ↗
eco_avg_commits_week ** ↗
eco_avg_commits_last_year *** ↗
eco_ratio_outsiders - - ↗
eco_ratio_commits_top_committers *** ↘
eco_ratio_casuals *** ↗
PRODUCT METRICS
prod_lines_code *** ↘
prod_num_extensions *** ↘
prod_class_complexity - - ↘
prod_functions_complexity - - ↘
prod_file_complexity - - ↘
prod_code_smells *** ↘
prod_open_issues *** ↘
prod_comment_density ↗
prod_technical_debt ↘
Is the incubation status a valid
indicator of the maturity of a
modeling Project?
RQ3
No remarkable differences in the metrics for
modeling projects according to its incubation
status
46. RQ3
ECOSYSTEM METRICS
METRIC M¬I vs. MI ¬M¬I vs. ¬MI INF.
eco_avg_commits_developer * ↗
eco_num_commits ** ↗
eco_num_contributors ** *** ↗
eco_avg_commits_month *** ↗
eco_avg_commits_week ** ↗
eco_avg_commits_last_year *** ↗
eco_ratio_outsiders - - ↗
eco_ratio_commits_top_committers *** ↘
eco_ratio_casuals *** ↗
PRODUCT METRICS
prod_lines_code *** ↘
prod_num_extensions *** ↘
prod_class_complexity - - ↘
prod_functions_complexity - - ↘
prod_file_complexity - - ↘
prod_code_smells *** ↘
prod_open_issues *** ↘
prod_comment_density ↗
prod_technical_debt ↘
Is the incubation status a valid
indicator of the maturity of a
modeling Project?
RQ3
No remarkable differences in the metrics for
modeling projects according to its incubation
status
The incubation status makes a difference
only for non-modeling projects
48. Extensions
Beyond a Git-centric
Approach
Collaboration as a key
Maturity Dimension
Collaboration Beyond
the Code
Why not consider other
supporting tools?
(e.g., forums, instant messages, etc.)
Pay attention to the community as one
of the cornerstones in Open Source
Let’s combine previous extensions and
analyze collaboration networks
50. Extensions
Beyond a Git-centric
Approach
Collaboration as a key
Maturity Dimension
Collaboration Beyond
the Code
Why not consider other
supporting tools?
(e.g., forums, instant messages, etc.)
Pay attention to the community as one
of the cornerstones in Open Source
Let’s combine previous extensions and
analyze collaboration networks
52. Extensions
Beyond a Git-centric
Approach
Collaboration as a key
Maturity Dimension
Collaboration Beyond
the Code
Why not consider other
supporting tools?
(e.g., forums, instant messages, etc.)
Pay attention to the community as one
of the cornerstones in Open Source
Let’s combine previous extensions and
analyze collaboration networks
55. Conclusion and Further Work
• First studies on the maturity of modeling tools
• Comparison of over a hundred of modeling and non-modeling Eclipse
projects
• There are differences, though less than expected
• Extensions to increase the scope of our maturity model
What we have shown
Much more research needs to be done to really understand the technical and
social factors that make both families of projects different
57. Maturity vs. Adoption
flickr/crwr
Vallecillo, A (2014). On the Industrial Adoption of Model Driven Engineering, Is you Company ready for MDE? . International
Journal of Information Systems and Software Engineering for Big Companies (IJISEBC), Vol. 1, Num. 1, pp. 52-68
58. Maturity vs. Adoption
flickr/crwr
…are they related?
Vallecillo, A (2014). On the Industrial Adoption of Model Driven Engineering, Is you Company ready for MDE? . International
Journal of Information Systems and Software Engineering for Big Companies (IJISEBC), Vol. 1, Num. 1, pp. 52-68
60. Thanks!
Replication Package
http://hdl.handle.net/20.500.12004/1/C/MODELS/2017/218
Javier L. Cánovas Izquierdo
jcanovasi@uoc.edu
@jlcanovas
Valerio Cosentino
vcosentino@uoc.edu
Jordi Cabot
jordi.cabot@icrea.cat
@softmodeling
Modeling projects achieve lower maturity
levels than non-modeling ones but that the
overall difference is small.
RQ1
The incubation status of a project affects the
maturity comparison between modeling and
non-modeling projects
RQ2
The incubation status makes a difference
only for non-modeling projectsRQ3
Take-home messages:
Editor's Notes
Presentation, outline (motivation, research questions, how we answered them, conclusión and future work)