SlideShare uma empresa Scribd logo
1 de 57
Wanna see your OSS project succeed?
Nurture your community
Jordi Cabot – ICREA Research Professor at UOC
@softmodeling modeling-languages.com
SOM Research Lab
Software runs the world. Models run the software
The Team
Postdoc
PhD Students
Professors
Lecturers
Our mission
We are interested in the broad
area of systems and software
engineering, especially
promoting the rigorous use of
software models and
engineering principles in all
software engineering tasks
while keeping an eye on the
most unpredictable element in
any project: the people
involved in it.
Flickr/clement127
Been there, done that since 2003
<<metaclass >>
GeneralizableElement
<<stereotype>>
<<stereotype>>
Temporal
Tags
Durability: DurabilityKind
Frequency: FrequencyKind
Constraints
{ Durability=constant or
Durability=permanent implies
Frequency=single}
<<enumeration>>
DurabilityKind
constant
permanent
durable
instantaneous
<<enumeration>>
FrequencyKind
single
intermittent
Fig. 4.1 –The <<temporal>> stereotype
I’m part of your tribe
Why the f*** are
people not using
our tools?
Industrialization of research tools
BUT:
-Relies too much on SMEs
that may change their focus
- Naïve view of open source
(people will magically show
up and help)
Remember when...
Many projects fail and get abandoned in the
very early stages unable to get any traction (or
because they lose it!)
Goal: Discuss strategies to ensure the long-
term sustainability of Papyrus
Software Analysis
Most works
focus on
code
analysis
Code
Community
Nurtur
e your
Comm
unityYour community
is the KEY
How to
help your
OSS
succeed
Governing
OptimizingOnboarding
Community
Health
Size doesn’t
matter
Undertanding Community = Graph Analysis
• Many types of graphs (e.g. Bipartite graphs)
• Many types of properties
– Micro-view (local properties)
– Macro-view (global properties)
– Meso-level (emerging properties)
• Analysis at different levels
Build the
right graph
for your
purpose
Label Usage
User Involvement
Bus Factor
“Number of key developers who would need to be
incapacitated (hit by a bus), to send the project into
disarray that it would not be able to proceed”
64.43%
12.58%
Betweenness & cia
Useful to identify
subcommunities
and increase
commnication
Nestedness (first results)
Occasional contributors focus on the most
frequently modified files
http://matt.might.net/articles/phd-school-in-pictures
Andthere’smuch more...
rich club ordering,
small world
behaviour,
modularity…
Gitana: Integrated analysis
Coding platform
Issue trackers Commun. channels
Code review tools
Attracting contributors
(and keeping them)
+Retention: If you
contribute to one
release in WP,
there is a 46%
chance you will
contribute to the
next
Facilitateon boarding: Importance of first
impressions
What kidney
exchange
programs can
teach us about
OSS?
© www.forbes.com
Retribution=OSS as a
matchingmarket (markets
wheremoney is not the main
factor)
© diehardbrain.blogspot.com.es/
Gamificationon top of GitHub
© Apple Records
Power to
the people
Benevolent
Dictator for Life
******
Governance in
every project
MUST be explicit
(TRANSPARENCY)
Governance
should also
be more
democratic
If you don’t like it, just fork it
Option only available for
technical users
End-users are not technical experts, can’t give
valid opinions
No need to ALL vote on EVERYTHING. Or not
with the same weight (dangerous road)
The open source definition does not
mention democracy
True
It would be impossible to make
decisions
Many types of democracy (liquid, direct,
representative,...)
I am a volunteer, I want to work on what
interests me
Sure. You can always do that (but less impact)
Proprietary software is much worse
Agreed
******
Project myProject {
Roles: Committers
Deadlines:
myDeadline : 7 days
Rules:
myMajorityRule :
Majority {
applied to Task
when TaskReview
people Committers
range Present
minVotes 3
deadline myDeadline
}
}
All the proposals for new development tasks will be
accepted or rejected in 7 days by the committers of the
project.
Verbalization
ThemanynamesofDemocracy
ThemanynamesofDemocracy
• Problem is getting
worse
– Complexity of SW
– New channels (e.g.
Slack)
– Team distribution
• Need of studies
targeting MDE projects
• Multi-disciplinary
solution
Let’s work
together
jordi.cabot@
icrea.cat
@softmodeling
modeling-
languages.com

Mais conteúdo relacionado

Destaque

Governance Rules for Open Source Software Systems
Governance Rules for Open Source Software Systems Governance Rules for Open Source Software Systems
Governance Rules for Open Source Software Systems Jordi Cabot
 
PrefetchML: a Framework for Prefetching and Caching models
PrefetchML: a Framework for Prefetching and Caching modelsPrefetchML: a Framework for Prefetching and Caching models
PrefetchML: a Framework for Prefetching and Caching modelsJordi Cabot
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringJordi Cabot
 
Rule-Based Access-Control Evaluation through Model-Transformation
Rule-Based Access-Control Evaluation through Model-TransformationRule-Based Access-Control Evaluation through Model-Transformation
Rule-Based Access-Control Evaluation through Model-TransformationJordi Cabot
 
Findings from GitHub. Methods, Datasets and Limitations - MSR 2016 at ICSE
Findings from GitHub. Methods, Datasets and Limitations - MSR 2016 at ICSEFindings from GitHub. Methods, Datasets and Limitations - MSR 2016 at ICSE
Findings from GitHub. Methods, Datasets and Limitations - MSR 2016 at ICSEJordi Cabot
 
Model-based Analysis of Java EE Web Security Configurations - Mise 2016
Model-based Analysis of Java EE Web Security Configurations - Mise 2016Model-based Analysis of Java EE Web Security Configurations - Mise 2016
Model-based Analysis of Java EE Web Security Configurations - Mise 2016Jordi Cabot
 
Improving Software Languages: usage patterns to the rescue
Improving Software Languages: usage patterns to the rescueImproving Software Languages: usage patterns to the rescue
Improving Software Languages: usage patterns to the rescueJordi Cabot
 
Looking at WordPress through the eyes of a Software Researcher
Looking at WordPress through the eyes of a Software ResearcherLooking at WordPress through the eyes of a Software Researcher
Looking at WordPress through the eyes of a Software ResearcherJordi Cabot
 
Mogwaï: a Framework to Handle Complex Queries on Large Models
Mogwaï: a Framework to Handle Complex Queries on Large ModelsMogwaï: a Framework to Handle Complex Queries on Large Models
Mogwaï: a Framework to Handle Complex Queries on Large ModelsJordi Cabot
 
ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008William Piers
 
Incremental model compiler for executable UML
Incremental model compiler for executable UMLIncremental model compiler for executable UML
Incremental model compiler for executable UMLÁkos Horváth
 
Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipsePapyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipseCharles Rivet
 
Papyrus-RT - Executable modeling on eclipse
Papyrus-RT - Executable modeling on eclipsePapyrus-RT - Executable modeling on eclipse
Papyrus-RT - Executable modeling on eclipseCharles Rivet
 
Uml to code with acceleo
Uml to code with acceleoUml to code with acceleo
Uml to code with acceleoTarun Telang
 
EMF Compare 2.0: Scaling to Millions (updated)
EMF Compare 2.0: Scaling to Millions (updated)EMF Compare 2.0: Scaling to Millions (updated)
EMF Compare 2.0: Scaling to Millions (updated)mikaelbarbero
 
MoDisco EclipseCon2010
MoDisco EclipseCon2010MoDisco EclipseCon2010
MoDisco EclipseCon2010fmadiot
 
Textual Modeling Framework Xtext
Textual Modeling Framework XtextTextual Modeling Framework Xtext
Textual Modeling Framework XtextSebastian Zarnekow
 
You need to extend your models? EMF Facet vs. EMF Profiles
You need to extend your models? EMF Facet vs. EMF ProfilesYou need to extend your models? EMF Facet vs. EMF Profiles
You need to extend your models? EMF Facet vs. EMF ProfilesPhilip Langer
 

Destaque (20)

Governance Rules for Open Source Software Systems
Governance Rules for Open Source Software Systems Governance Rules for Open Source Software Systems
Governance Rules for Open Source Software Systems
 
PrefetchML: a Framework for Prefetching and Caching models
PrefetchML: a Framework for Prefetching and Caching modelsPrefetchML: a Framework for Prefetching and Caching models
PrefetchML: a Framework for Prefetching and Caching models
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software Engineering
 
Rule-Based Access-Control Evaluation through Model-Transformation
Rule-Based Access-Control Evaluation through Model-TransformationRule-Based Access-Control Evaluation through Model-Transformation
Rule-Based Access-Control Evaluation through Model-Transformation
 
Findings from GitHub. Methods, Datasets and Limitations - MSR 2016 at ICSE
Findings from GitHub. Methods, Datasets and Limitations - MSR 2016 at ICSEFindings from GitHub. Methods, Datasets and Limitations - MSR 2016 at ICSE
Findings from GitHub. Methods, Datasets and Limitations - MSR 2016 at ICSE
 
Model-based Analysis of Java EE Web Security Configurations - Mise 2016
Model-based Analysis of Java EE Web Security Configurations - Mise 2016Model-based Analysis of Java EE Web Security Configurations - Mise 2016
Model-based Analysis of Java EE Web Security Configurations - Mise 2016
 
Improving Software Languages: usage patterns to the rescue
Improving Software Languages: usage patterns to the rescueImproving Software Languages: usage patterns to the rescue
Improving Software Languages: usage patterns to the rescue
 
Looking at WordPress through the eyes of a Software Researcher
Looking at WordPress through the eyes of a Software ResearcherLooking at WordPress through the eyes of a Software Researcher
Looking at WordPress through the eyes of a Software Researcher
 
Mogwaï: a Framework to Handle Complex Queries on Large Models
Mogwaï: a Framework to Handle Complex Queries on Large ModelsMogwaï: a Framework to Handle Complex Queries on Large Models
Mogwaï: a Framework to Handle Complex Queries on Large Models
 
ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008
 
OCL tutorial
OCL tutorial OCL tutorial
OCL tutorial
 
Incremental model compiler for executable UML
Incremental model compiler for executable UMLIncremental model compiler for executable UML
Incremental model compiler for executable UML
 
Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipsePapyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on Eclipse
 
Papyrus-RT - Executable modeling on eclipse
Papyrus-RT - Executable modeling on eclipsePapyrus-RT - Executable modeling on eclipse
Papyrus-RT - Executable modeling on eclipse
 
Uml to code with acceleo
Uml to code with acceleoUml to code with acceleo
Uml to code with acceleo
 
EMF Compare 2.0: Scaling to Millions (updated)
EMF Compare 2.0: Scaling to Millions (updated)EMF Compare 2.0: Scaling to Millions (updated)
EMF Compare 2.0: Scaling to Millions (updated)
 
MoDisco EclipseCon2010
MoDisco EclipseCon2010MoDisco EclipseCon2010
MoDisco EclipseCon2010
 
Textual Modeling Framework Xtext
Textual Modeling Framework XtextTextual Modeling Framework Xtext
Textual Modeling Framework Xtext
 
Acceleo Code Generation
Acceleo Code GenerationAcceleo Code Generation
Acceleo Code Generation
 
You need to extend your models? EMF Facet vs. EMF Profiles
You need to extend your models? EMF Facet vs. EMF ProfilesYou need to extend your models? EMF Facet vs. EMF Profiles
You need to extend your models? EMF Facet vs. EMF Profiles
 

Semelhante a Wanna see your open source project succeed? - Nurture your community

How to sustain a tool building community-driven effort
How to sustain a tool building community-driven effortHow to sustain a tool building community-driven effort
How to sustain a tool building community-driven effortJordi Cabot
 
Daniel rabinovich - Velocity 2014 Santa Clara
Daniel rabinovich - Velocity 2014 Santa ClaraDaniel rabinovich - Velocity 2014 Santa Clara
Daniel rabinovich - Velocity 2014 Santa ClaraDaniel Rabinovich
 
Aspects of the sustainability of software
Aspects of the sustainability of softwareAspects of the sustainability of software
Aspects of the sustainability of softwarePaul Walk
 
Agile leadership practices for PIONEERS
 Agile leadership practices for PIONEERS Agile leadership practices for PIONEERS
Agile leadership practices for PIONEERSStefan Haas
 
Visualization for Software Analytics
Visualization for Software AnalyticsVisualization for Software Analytics
Visualization for Software AnalyticsMargaret-Anne Storey
 
Velocity. Agility. Python. (Pycon APAC 2017)
Velocity. Agility. Python. (Pycon APAC 2017)Velocity. Agility. Python. (Pycon APAC 2017)
Velocity. Agility. Python. (Pycon APAC 2017)Sian Lerk Lau
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemGiovanni Asproni
 
Cat Herding and Community Gardens: Practical e-Science Project Management
Cat Herding and Community Gardens: Practical e-Science Project ManagementCat Herding and Community Gardens: Practical e-Science Project Management
Cat Herding and Community Gardens: Practical e-Science Project ManagementNeil Chue Hong
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemGiovanni Asproni
 
Towards Mining Software Repositories Research that Matters
Towards Mining Software Repositories Research that MattersTowards Mining Software Repositories Research that Matters
Towards Mining Software Repositories Research that MattersTao Xie
 
Keynote at-icpc-2020
Keynote at-icpc-2020Keynote at-icpc-2020
Keynote at-icpc-2020Ralf Laemmel
 
Fuzzing: Challenges and Reflections
Fuzzing: Challenges and ReflectionsFuzzing: Challenges and Reflections
Fuzzing: Challenges and Reflectionsmboehme
 
Beware the monolith
Beware the monolithBeware the monolith
Beware the monolithDee Wilcox
 
SAD07 - Project Management
SAD07 - Project ManagementSAD07 - Project Management
SAD07 - Project ManagementMichael Heron
 
Prototyping.eveningclass.ppt
Prototyping.eveningclass.pptPrototyping.eveningclass.ppt
Prototyping.eveningclass.pptazida3
 
Prototyping.eveningclass.ppt.slideshare.information.system.analysis
Prototyping.eveningclass.ppt.slideshare.information.system.analysisPrototyping.eveningclass.ppt.slideshare.information.system.analysis
Prototyping.eveningclass.ppt.slideshare.information.system.analysislynmanguilimotan06
 
Humane assessment on cards
Humane assessment on cardsHumane assessment on cards
Humane assessment on cardsTudor Girba
 
Missing pieces in_the_global_metadata_landscap
Missing pieces in_the_global_metadata_landscapMissing pieces in_the_global_metadata_landscap
Missing pieces in_the_global_metadata_landscapStuart Weibel
 

Semelhante a Wanna see your open source project succeed? - Nurture your community (20)

How to sustain a tool building community-driven effort
How to sustain a tool building community-driven effortHow to sustain a tool building community-driven effort
How to sustain a tool building community-driven effort
 
Daniel rabinovich - Velocity 2014 Santa Clara
Daniel rabinovich - Velocity 2014 Santa ClaraDaniel rabinovich - Velocity 2014 Santa Clara
Daniel rabinovich - Velocity 2014 Santa Clara
 
Aspects of the sustainability of software
Aspects of the sustainability of softwareAspects of the sustainability of software
Aspects of the sustainability of software
 
Agile leadership practices for PIONEERS
 Agile leadership practices for PIONEERS Agile leadership practices for PIONEERS
Agile leadership practices for PIONEERS
 
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
 
Visualization for Software Analytics
Visualization for Software AnalyticsVisualization for Software Analytics
Visualization for Software Analytics
 
Velocity. Agility. Python. (Pycon APAC 2017)
Velocity. Agility. Python. (Pycon APAC 2017)Velocity. Agility. Python. (Pycon APAC 2017)
Velocity. Agility. Python. (Pycon APAC 2017)
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your System
 
Cat Herding and Community Gardens: Practical e-Science Project Management
Cat Herding and Community Gardens: Practical e-Science Project ManagementCat Herding and Community Gardens: Practical e-Science Project Management
Cat Herding and Community Gardens: Practical e-Science Project Management
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your System
 
Towards Mining Software Repositories Research that Matters
Towards Mining Software Repositories Research that MattersTowards Mining Software Repositories Research that Matters
Towards Mining Software Repositories Research that Matters
 
Keynote at-icpc-2020
Keynote at-icpc-2020Keynote at-icpc-2020
Keynote at-icpc-2020
 
Ch02
Ch02Ch02
Ch02
 
Fuzzing: Challenges and Reflections
Fuzzing: Challenges and ReflectionsFuzzing: Challenges and Reflections
Fuzzing: Challenges and Reflections
 
Beware the monolith
Beware the monolithBeware the monolith
Beware the monolith
 
SAD07 - Project Management
SAD07 - Project ManagementSAD07 - Project Management
SAD07 - Project Management
 
Prototyping.eveningclass.ppt
Prototyping.eveningclass.pptPrototyping.eveningclass.ppt
Prototyping.eveningclass.ppt
 
Prototyping.eveningclass.ppt.slideshare.information.system.analysis
Prototyping.eveningclass.ppt.slideshare.information.system.analysisPrototyping.eveningclass.ppt.slideshare.information.system.analysis
Prototyping.eveningclass.ppt.slideshare.information.system.analysis
 
Humane assessment on cards
Humane assessment on cardsHumane assessment on cards
Humane assessment on cards
 
Missing pieces in_the_global_metadata_landscap
Missing pieces in_the_global_metadata_landscapMissing pieces in_the_global_metadata_landscap
Missing pieces in_the_global_metadata_landscap
 

Mais de Jordi Cabot

AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?Jordi Cabot
 
Model-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architecturesModel-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architecturesJordi Cabot
 
Smart modeling of smart software
Smart modeling of smart softwareSmart modeling of smart software
Smart modeling of smart softwareJordi Cabot
 
Modeling should be an independent scientific discipline
Modeling should be an independent scientific disciplineModeling should be an independent scientific discipline
Modeling should be an independent scientific disciplineJordi Cabot
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...Jordi Cabot
 
The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21Jordi Cabot
 
Low-code vs Model-Driven Engineering
Low-code vs Model-Driven EngineeringLow-code vs Model-Driven Engineering
Low-code vs Model-Driven EngineeringJordi Cabot
 
Lessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platformLessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platformJordi Cabot
 
Future Trends on Software and Systems Modeling
Future Trends on Software and Systems ModelingFuture Trends on Software and Systems Modeling
Future Trends on Software and Systems ModelingJordi Cabot
 
Ingeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulosIngeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulosJordi Cabot
 
Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit Jordi Cabot
 
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...Jordi Cabot
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsJordi Cabot
 
WAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIsWAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIsJordi Cabot
 
Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Jordi Cabot
 
Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?Jordi Cabot
 
Temporal EMF: A temporal metamodeling platform
Temporal EMF: A temporal metamodeling platformTemporal EMF: A temporal metamodeling platform
Temporal EMF: A temporal metamodeling platformJordi Cabot
 
UMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL DatabasesUMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL DatabasesJordi Cabot
 
Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Multi-Platform Chatbot Modeling and Deployment with the Xatkit FrameworkMulti-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Multi-Platform Chatbot Modeling and Deployment with the Xatkit FrameworkJordi Cabot
 
Model-driven Round-trip Engineering of REST APIs
Model-driven Round-trip Engineering of REST APIsModel-driven Round-trip Engineering of REST APIs
Model-driven Round-trip Engineering of REST APIsJordi Cabot
 

Mais de Jordi Cabot (20)

AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?
 
Model-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architecturesModel-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architectures
 
Smart modeling of smart software
Smart modeling of smart softwareSmart modeling of smart software
Smart modeling of smart software
 
Modeling should be an independent scientific discipline
Modeling should be an independent scientific disciplineModeling should be an independent scientific discipline
Modeling should be an independent scientific discipline
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
 
The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21
 
Low-code vs Model-Driven Engineering
Low-code vs Model-Driven EngineeringLow-code vs Model-Driven Engineering
Low-code vs Model-Driven Engineering
 
Lessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platformLessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platform
 
Future Trends on Software and Systems Modeling
Future Trends on Software and Systems ModelingFuture Trends on Software and Systems Modeling
Future Trends on Software and Systems Modeling
 
Ingeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulosIngeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulos
 
Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit
 
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model Transformations
 
WAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIsWAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIs
 
Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?
 
Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?
 
Temporal EMF: A temporal metamodeling platform
Temporal EMF: A temporal metamodeling platformTemporal EMF: A temporal metamodeling platform
Temporal EMF: A temporal metamodeling platform
 
UMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL DatabasesUMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL Databases
 
Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Multi-Platform Chatbot Modeling and Deployment with the Xatkit FrameworkMulti-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework
 
Model-driven Round-trip Engineering of REST APIs
Model-driven Round-trip Engineering of REST APIsModel-driven Round-trip Engineering of REST APIs
Model-driven Round-trip Engineering of REST APIs
 

Último

Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 

Último (20)

Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 

Wanna see your open source project succeed? - Nurture your community

Notas do Editor

  1. My team at som-research.uoc.edu
  2. We have a soft side
  3. Modeling tools we have developed
  4. I’m part of your tribe, even if today we are going to talk about open source communities. Let’s see how we got involved on that
  5. But today we’re going to talk about another thing . How did we get involved on this? Even if many of my academic colleagues don’t believe so there is life beyond papers so we got interested in understanding how we could have a greater impact
  6. To be used, tools must be of high quality : documentation, support, user interface,.... <- We couldn´t do this alone, we had to industrialize them We got some success
  7. Software Analysis is the tool we are going to use to understand what makes a project succeed. Key is to have the project itself as our target of study to learn about what it works and what it doesn’t <- New research field of software mining thanks to GitHub and its over > 30 M projects
  8. And we have learnt a lot about this, for instance we just finished conducting a metastudy on all the papers that have analyzed data from GitHub to extract some patterns on software development practices. Valerio Cosentino, Javier Luis Cánovas Izquierdo, Jordi Cabot: Findings from GitHub: methods, datasets and limitations. MSR 2016: 137-141
  9. But if we only focus on the code we’re missing the most important aspect: the people building AND using that code - > the Community Important: the community is more than developers
  10. Still, looking at raw community data is a mess. A good community analysis is not trivial to do.
  11. The three aspects are interrelated and just a way to try to decompose the problem But we cannot do it alone, we need powerful friends from political science, social science and ecology / complex systems. Complex systems study how parts of a system give rise to the collective behaviors of the system, and how the system interacts with its environment
  12. Community is not only the developers but also the users that have the right to have an active involvement in the project
  13. Us posaré alguns exemples.
  14. They can be collapsed for simpler analysis
  15. a bipartite graph (or bigraph) is a graph whose vertices can be divided into two disjoint sets {\displaystyle U} and {\displaystyle V} (that is, {\displaystyle U} and {\displaystyle V} are each independent sets) such that every edge connects a vertex in {\displaystyle U} to one in {\displaystyle V}. Vertex sets {\displaystyle U} and {\displaystyle V} are usually called the parts of the graph
  16. Comment the meaning of the size of
  17. Importància no només del codi sinó de la discussió al voltant del projecte, per exemple quines etiquetes es fan servir més
  18. I qui s’encarrega de comentar-les / tancar-les (tipus “bus factor” però de la interacció amb els usuaris).
  19. I will now show you three metrics that can be calculated on top of these graphs of data. 1- Bus facotr Helps to assess the employee turnover risk Identify the key developers Measure the concentration of information
  20. Positive evolution of WordPress vs Papyrus bus factor
  21. Number of shortest paths that passes through a node. The more the higher betweenness centrality. It says if we lose nodes with high betweenness we fragment (or “delay”) the community Related to clustering / subcommunities / modular classes algorithms https://wiki.cs.umd.edu/cmsc734_09/index.php?title=Music_Artist_Collaborations_from_MusicBrainz
  22. Only core people tackle the files nobody wants. Drive people to the files that nobody wants to modify
  23. Gitana https://github.com/SOM-Research/Gitana
  24. You need to monitor how well are you doing in attracting new contributors. Retention:past contributions as a predictor of future contributions are pretty consistent across releases.
  25. if a project doesn’t make a good first impression, newcomers may wait a long time before giving it a second chance. Importance of good impression! Up-for-grabs and good-first-bugs are curated tasks specifically for new contributors
  26. What are other more far-fetched strategies to attrac people? This is not a problem of only software engineering
  27. Chains of collaborations across projects
  28. Time-based currency
  29. The typical reaction when I say this
  30. Democracy is not perfect but I don’t see how the lack of democracy is better. In any case, it’s worth that projects have this internal discussion
  31. Typical comments against the idea
  32. As a volunteer, you can go out in the neighbourhood and do whatever you want (But is this the most efficient way to do things?)
  33. So what are we proposing? 2 things. First, to address transparency -> add to each project a governance.md file expliciting the governance rules of the project
  34. Our DSL for the governance Javier Luis Cánovas Izquierdo, Jordi Cabot: Enabling the Definition and Enforcement of Governance Rules in Open Source Systems. ICSE (2) 2015: 505-514
  35. Si és així es podria fins i tot automatitzar / assistir en la gestió del projecte. De fet tenim un plugin de Eclipse que via una eina que es diu Mylin es connecta a diversos issue and bug trackers per extreure aquesta informació, aplica les regles i actualitzar les issues.
  36. And our second proposal is to have a closer look at the democracy models and see which ones could work best for open source. We have over 500 variants of democracy
  37. Of course, once you choose one, you’ll need tool support to implement your democratic model
  38. We’re always looking for collaborations. So get involved in our research or stop complaining about useless research done in academia!!!!
  39. We’re always looking for collaborations. So get involved in our research or stop complaining about useless research done in academia!!!!
  40. I que la gent creu possible que s’expliciti millor i fins i tot que s’automatitzi. I que fer-ho faria que hi hagués més contribuïdors.
  41. Tant de forma “formal” com en llenguatge natural
  42. Això no és un invent nostre, fixeu-vos que vam fer una enquesta anònima i els resultats confirmen que el problema de la manca de transparència és real