Type of Analysis: Descriptive analysis - Univariate description
Intention of Analysis: 1- Understand how Core WordPress Community coproduce code. 2- Identify potential indicators for coherence analysis.
General Question: Wich are the atributes of coproduction (colunms of dataframe or variables)? Specific Questions: Which type of developers groups exist in WC? It is possible to make some indicator from this data?
Source: Data come from WordPress Report Trac System. URL Source Dataframe: GitHub Repository
Date collection: 04/07/2019.
1.GENERAL ANALYSIS
#READ DATA
library(readr)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(plotly)
## Loading required package: ggplot2
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
TicketW <- read_csv('~/PhD Analysis/1. PhD escriptive exploratory analysis/TicketW.csv')
## Parsed with column specification:
## cols(
## id = col_double(),
## Summary = col_character(),
## Status = col_character(),
## Version = col_logical(),
## Owner = col_character(),
## Type = col_character(),
## Priority = col_character(),
## Milestone = col_character(),
## Component = col_character(),
## Severity = col_character(),
## Resolution = col_character(),
## Created = col_character(),
## Modified = col_character(),
## Focuses = col_character(),
## Reporter = col_character(),
## Keywords = col_character()
## )
View(TicketW)
dim(TicketW) #dimension
## [1] 2333 16
TicketW[1:5,] #5 fist lines
## # A tibble: 5 x 16
## id Summary Status Version Owner Type Priority Milestone Component
## <dbl> <chr> <chr> <lgl> <chr> <chr> <chr> <chr> <chr>
## 1 24579 Add Dr~ new NA <NA> enha~ high Future R~ Upgrade/~
## 2 30361 Correc~ assig~ NA pento task~ high <NA> General
## 3 32502 Cannot~ new NA <NA> defe~ high <NA> Administ~
## 4 36441 Custom~ new NA <NA> defe~ high Future R~ Customize
## 5 40439 Save p~ assig~ NA mike~ enha~ high 5.3 Media
## # ... with 7 more variables: Severity <chr>, Resolution <chr>,
## # Created <chr>, Modified <chr>, Focuses <chr>, Reporter <chr>,
## # Keywords <chr>
summary(TicketW)
## id Summary Status Version
## Min. : 5235 Length:2333 Length:2333 Mode:logical
## 1st Qu.:34555 Class :character Class :character NA's:2333
## Median :40511 Mode :character Mode :character
## Mean :38029
## 3rd Qu.:44485
## Max. :47640
## Owner Type Priority
## Length:2333 Length:2333 Length:2333
## Class :character Class :character Class :character
## Mode :character Mode :character Mode :character
##
##
##
## Milestone Component Severity
## Length:2333 Length:2333 Length:2333
## Class :character Class :character Class :character
## Mode :character Mode :character Mode :character
##
##
##
## Resolution Created Modified
## Length:2333 Length:2333 Length:2333
## Class :character Class :character Class :character
## Mode :character Mode :character Mode :character
##
##
##
## Focuses Reporter Keywords
## Length:2333 Length:2333 Length:2333
## Class :character Class :character Class :character
## Mode :character Mode :character Mode :character
##
##
##
glimpse(TicketW)
## Observations: 2,333
## Variables: 16
## $ id <dbl> 24579, 30361, 32502, 36441, 40439, 41292, 41886, 41...
## $ Summary <chr> "Add Drag'n'Drop UI to plugin and theme manual uplo...
## $ Status <chr> "new", "assigned", "new", "new", "assigned", "reope...
## $ Version <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,...
## $ Owner <chr> NA, "pento", NA, NA, "mikeschroder", "jnylen0", "me...
## $ Type <chr> "enhancement", "task (blessed)", "defect (bug)", "d...
## $ Priority <chr> "high", "high", "high", "high", "high", "high", "hi...
## $ Milestone <chr> "Future Release", NA, NA, "Future Release", "5.3", ...
## $ Component <chr> "Upgrade/Install", "General", "Administration", "Cu...
## $ Severity <chr> "normal", "normal", "major", "normal", "normal", "n...
## $ Resolution <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,...
## $ Created <chr> "06/14/2013 05:03:38 PM", "11/17/2014 12:10:55 PM",...
## $ Modified <chr> "04/12/2019 11:04:54 AM", "06/04/2019 07:42:28 PM",...
## $ Focuses <chr> NA, "ui, administration", NA, NA, "ui", NA, NA, NA,...
## $ Reporter <chr> "tw2113", "pento", "ryan", "azaozz", "mikeschroder"...
## $ Keywords <chr> "ui-feedback ux-feedback needs-patch shiny-updates"...
1.1 Variables related with members Analysis Goal: Find which variables have hight variability, and find a line of cut, in order to use into Bivariate Analysis.
# Var1
Status<-table(TicketW$Status)
# Transform into table
Status<-as.data.frame(as.table(Status))
PropStatus<-prop.table(Status$Freq) #Proportion
Status<-data.frame(Status,PropStatus)
#Var2
TType<-table(TicketW$Type)
# Transform into table
TType<-as.data.frame(as.table(TType))
PropTType<-prop.table(TType$Freq) #Proportion
TType<-data.frame(TType,PropTType)
#Var3
Priority<-table(TicketW$Priority)
# Transform into table
Priority<-as.data.frame(as.table(Priority))
PropPrio<-prop.table(Priority$Freq) #Proportion
Priority<-data.frame(Priority,PropPrio)
#Var4
Milestone<-table(TicketW$Milestone)
# Transform into table
Milestone<-as.data.frame(as.table(Milestone))
PropMiles<-prop.table(Milestone$Freq) #Proportion
Milestone<-data.frame(Milestone,PropMiles)
#Var5
Component<-table(TicketW$Component)
# Transform into table
Component<-as.data.frame(as.table(Component))
c1<-Component[order(Component$Freq, decreasing = TRUE),]
Component = filter(Component, Freq>100)
sum(Component$Freq)
## [1] 647
PropComp<-prop.table(Component$Freq) #Proportion
Component<-data.frame(Component,PropComp)
#Var6
Severity<-table(TicketW$Severity)
# Transform into table
Severity<-as.data.frame(as.table(Severity))
PropSever<-prop.table(Severity$Freq) #Proportion
Severity<-data.frame(Severity,PropSever)
#Var7
Focuses<-table(TicketW$Focuses)
# Transform into table
Focuses<-as.data.frame(as.table(Focuses))
f1<-Focuses[order(Focuses$Freq, decreasing = TRUE),]
Focuses = filter(Focuses, Freq>10)
PropFocus<-prop.table(Focuses$Freq) #Proportion
Focuses<-data.frame(Focuses,PropFocus)
sum(Focuses$Freq)
## [1] 832
Keywords<-table(TicketW$Keywords)#Var8
# Transform into table
Keywords<-as.data.frame(as.table(Keywords))
k1<-Keywords[order(Keywords$Freq, decreasing = TRUE),]
Keywords = filter(Keywords, Freq>9)
Keywords = filter(Keywords, Freq>40)
Prop.Keyw<-prop.table(Keywords$Freq) #Proportion
Keywords<-data.frame(Keywords,Prop.Keyw)
sum(Keywords$Freq)
## [1] 761
1.2 Variable Members Analysis - Reporters: Reporters are WordPress Community members who find and report a problem from WP Platform, into a Ticket.
Goal: Find type of report member groups (actives, medians, and aliens), and find a line of cut, in order to use into Bivariate Analysis.
# Transform into table
Reporter<-table(TicketW$Reporter)
Reporter<-as.data.frame(as.table(Reporter))
summary(Reporter)
## Var1 Freq
## _ck_ : 1 Min. : 1.000
## 5um17 : 1 1st Qu.: 1.000
## aaroncampbell: 1 Median : 1.000
## abhijitrakas : 1 Mean : 2.269
## abletec : 1 3rd Qu.: 2.000
## AD7six : 1 Max. :72.000
## (Other) :1022
totalReporter<-nrow(Reporter)
#1.2.1 Filter the most active group of reporters (Which reporter with more than 10 tickets)
ActiveReporters = filter(Reporter,Freq>10)
totalAR<-nrow(ActiveReporters) #Total members of active reporters group
RankAR <- ActiveReporters[order(ActiveReporters$Freq, decreasing = TRUE),]
summary(RankAR$Freq)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 11.00 15.00 18.00 23.65 24.75 72.00
#1.2.2 Filter the median active group of reporters (Which reporter with less than 10 tickets and more than 4 tickets)
MedianReporters = filter(Reporter,Freq<10 & Freq>4)
totalMR<-nrow(MedianReporters)
#Ranking the Median active reporters
RankMR <- MedianReporters[order(MedianReporters$Freq, decreasing = TRUE),]
#1.2.3 Filter the less active group of Report (Which reporter with less than 10 tickets)
LessReporters = filter(Reporter,Freq<4)
totalLR<-nrow(LessReporters)
#Ranking the less active Reporters
Ranklr <- LessReporters[order(LessReporters$Freq, decreasing = TRUE),]
1.3 Variable Member Analysis - Owners: Owners are WordPress Community members who pick up a ticket from WP Platform (sended by a reporter) in order to solve it.
Goal: Find type of owner member groups (actives, medians, and aliens), and find a line of cut, in order to use into Bivariate Analysis.
# Transform into table
Owner<-table(TicketW$Owner)
Owner<-as.data.frame(as.table(Owner))
summary(Owner)
## Var1 Freq
## aaroncampbell : 1 Min. : 1.000
## adam3128 : 1 1st Qu.: 1.000
## adamsilverstein: 1 Median : 1.000
## afercia : 1 Mean : 3.095
## allisonplus : 1 3rd Qu.: 2.000
## antpb : 1 Max. :67.000
## (Other) :110
totalOwner<-nrow(Owner)
# 1.3.1 Filter the most active group of Owners (Which Owner with more than 10 tickets)
ActiveOwner = filter(Owner,Freq>10)
totalAO<-nrow(ActiveOwner)
#Ranking the most active Owners
RankAO <- ActiveOwner[order(ActiveOwner$Freq, decreasing = TRUE),]
#1.3.2 Filter the median active group of Owners (Which Owner with less than 10 tickets and more than 4 tickets)
MedianOwner = filter(Owner,Freq<10 & Freq>4)
totalMO<-nrow(MedianOwner)
#Ranking the Median Owners
RankMO <- MedianOwner[order(MedianOwner$Freq, decreasing = TRUE),]
#1.3.3 Filter the less active group of Owners (Which Owner with less than 10 tickets)
LessOwner = filter(Owner,Freq<4)
totalLO<-nrow(LessOwner)
#Ranking the less active Owners
RanklO <- LessOwner[order(LessOwner$Freq, decreasing = TRUE),]
1.4 Sum of groups by Reporters and Owners:
#Total members per Reporter
MembersTotalR<-c(totalReporter,totalAR,totalMR,totalLR)
CoreGroupR<-c("Reporters","Active Reporters","Median Reporters","Alien Reporters")
PropMR<-prop.table(MembersTotalR)# Proportion
WPCGroupR<-data.frame(CoreGroupR,MembersTotalR,PropMR)
#Total members per Owner
MembersTotalO<-c(totalOwner,totalAO,totalMO,totalLO)
CoreGroupO<-c("Owners","Active Owners","Median Owners","Alien Owners")
PropMO<-prop.table(MembersTotalO) #Proportion
WPCGroupO<-data.frame(CoreGroupO,MembersTotalO,PropMO)
PropMR-1
## [1] -0.4923457 -0.9832099 -0.9822222 -0.5422222
PropMO-1
## [1] -0.4912281 -0.9736842 -0.9473684 -0.5877193
sim<-ifelse(PropMO>PropMR,1-(PropMO-PropMR)/4,1-(PropMR-PropMO)/4)
2. DESCRIPTION ANALYSIS REPORT :
2.1 Variables related with members Report: Variables selected to bivariate analysis are Component(+100 tickets per level), Focuses (+1 Ticket per level), Keywords(+9 tickets per level), Type, Status.
Status#Var1
## Var1 Freq PropStatus
## 1 accepted 53 0.02271753
## 2 assigned 215 0.09215602
## 3 new 1844 0.79039863
## 4 reopened 116 0.04972139
## 5 reviewing 105 0.04500643
#Graphics
pie(Status$Freq, main="Frequency of Tickets Status", label=Status$Var1, col = rainbow(7))
TType# Var2
## Var1 Freq PropTType
## 1 defect (bug) 1012 0.43377625
## 2 enhancement 1109 0.47535362
## 3 feature request 168 0.07201029
## 4 task (blessed) 44 0.01885984
#Graphics
pie(TType$Freq, main="Frequency of Tickets Type", label=TType$Var1, col = rainbow(7))
Priority# Var3
## Var1 Freq PropPrio
## 1 high 12 0.005143592
## 2 low 49 0.021003000
## 3 lowest 7 0.003000429
## 4 normal 2265 0.970852979
#Graphics
pie(Priority$Freq, main="Frequency of Tickets Priority", label=Priority$Var1, col = rainbow(7))
Milestone#Var4
## Var1 Freq PropMiles
## 1 5.2.3 1 0.0005452563
## 2 5.3 172 0.0937840785
## 3 Awaiting Review 1104 0.6019629226
## 4 Future Release 544 0.2966194111
## 5 WordPress.org 13 0.0070883315
#Graphics
pie(Milestone$Freq, main="Frequency of Tickets Milestone", label=Milestone$Var1, col = rainbow(7))
Component#Var5
## Var1 Freq PropComp
## 1 Administration 162 0.2503864
## 2 General 205 0.3168470
## 3 Media 166 0.2565688
## 4 Posts, Post Types 114 0.1761978
#Graphics
barplot(Component$Freq,
xlab = "Tickets",
ylab = "Components",
main="Frequency of Tickets Component",
col = rainbow(5),
legend.text = Component$Var1,
horiz=TRUE,
args.legend = list("bottom", bty="n", cex = 1))
Severity #Var6
## Var1 Freq PropSever
## 1 blocker 1 0.0004286327
## 2 critical 9 0.0038576940
## 3 major 27 0.0115730819
## 4 minor 91 0.0390055722
## 5 normal 2186 0.9369909987
## 6 trivial 19 0.0081440206
#Graphics
pie(Severity$Freq, main="Frequency of Tickets Severity", label=Severity$Var1, col = rainbow(7))
Focuses#Var7
## Var1 Freq PropFocus
## 1 accessibility 23 0.02764423
## 2 administration 192 0.23076923
## 3 coding-standards 27 0.03245192
## 4 docs 58 0.06971154
## 5 javascript 49 0.05889423
## 6 multisite 95 0.11418269
## 7 performance 55 0.06610577
## 8 rest-api 30 0.03605769
## 9 template 48 0.05769231
## 10 ui 103 0.12379808
## 11 ui, accessibility 51 0.06129808
## 12 ui, administration 101 0.12139423
#Graphics
barplot(Focuses$Freq,
xlab = "Tickets",
ylab = "Focuses",
main="Frequency of Tickets Focuses",
col = rainbow(13),
legend.text = Focuses$Var1,
horiz=TRUE,
args.legend = list("bottom", bty="n", cex = 1))
Keywords#Var8
## Var1 Freq Prop.Keyw
## 1 2nd-opinion 55 0.07227332
## 2 has-patch 246 0.32325887
## 3 has-patch needs-refresh 47 0.06176084
## 4 has-patch needs-testing 44 0.05781866
## 5 needs-patch 266 0.34954008
## 6 needs-patch needs-unit-tests 46 0.06044678
## 7 reporter-feedback 57 0.07490145
#Graphics
barplot(Keywords$Freq,
xlab = "Tickets",
ylab = "Keywords",
main="Frequency of Tickets Keywords",
col = rainbow(13),
legend.text = Keywords$Var1,
horiz=TRUE,
args.legend = list("bottom", bty="n", cex = 1))
2.2 Reporter Members Analysis Report The groups of Reporters:
RankAR #Ranking the most active reporters
## Var1 Freq
## 14 johnbillion 72
## 1 afercia 53
## 15 johnjamesjacoby 47
## 29 sebastian.pisula 43
## 9 flixos90 42
## 5 danielbachhuber 39
## 16 karmatosed 33
## 27 rmccue 27
## 31 subrataemfluence 25
## 34 westonruter 24
## 21 nacin 23
## 7 desrosj 22
## 10 garrett-eclipse 22
## 22 pbiron 22
## 3 azaozz 21
## 6 dd32 21
## 4 boonebgorges 19
## 23 pento 17
## 26 ramiy 17
## 28 scribu 17
## 2 anevins 16
## 8 dshanske 15
## 11 helen 15
## 13 iseulde 15
## 18 markjaquith 15
## 19 melchoyce 15
## 30 SergeyBiryukov 15
## 32 swissspidy 15
## 33 tazotodua 15
## 25 Presskopp 14
## 12 henry.wright 13
## 17 mark-k 12
## 20 mukesh27 12
## 24 peterwilsoncc 11
RankMR #Ranking the Median active reporters
## Var1 Freq
## 8 ericlewis 8
## 10 iandunn 8
## 14 jeremyfelt 8
## 18 joostdevalk 8
## 20 kjellr 8
## 25 netweb 8
## 26 pavelevap 8
## 28 programmin 8
## 1 alexvorn2 7
## 3 andy 7
## 7 eclare 7
## 9 Frank Klein 7
## 13 jdgrimes 7
## 27 pbearne 7
## 32 soulseekah 7
## 33 wonderboymusic 7
## 35 xkon 7
## 6 dlh 6
## 12 Ipstenu 6
## 17 jonoaldersonwp 6
## 19 jorbin 6
## 21 kraftbj 6
## 24 mor10 6
## 31 smerriman 6
## 34 WraithKenny 6
## 36 yoavf 6
## 2 allancole 5
## 4 BjornW 5
## 5 ComputerGuru 5
## 11 imath 5
## 15 jipmoors 5
## 16 joemcgill 5
## 22 mikejolley 5
## 23 milana_cap 5
## 29 Rarst 5
## 30 rnaby 5
Ranklr[c(1:30),c(1:2)] #Ranking the 30 less active Reporters
## Var1 Freq
## 29 allendav 3
## 56 arena 3
## 138 chetan200891 3
## 140 chinteshprajapati 3
## 186 danieltj 3
## 201 Denis-de-Bernardy 3
## 210 diddledan 3
## 214 dimadin 3
## 234 dotancohen 3
## 249 duck_ 3
## 288 fliespl 3
## 299 GaryJ 3
## 342 hlashbrooke 3
## 362 ishitaka 3
## 381 jason_the_adams 3
## 385 javorszky 3
## 411 joehoyle 3
## 423 joyously 3
## 428 jtsternberg 3
## 451 keraweb 3
## 452 ketanumretiya030 3
## 462 knutsp 3
## 468 krogsgard 3
## 552 mehulwpos 3
## 565 MikeHansenMe 3
## 575 Mista-Flo 3
## 580 mnelson4 3
## 585 monikarao 3
## 595 mrwweb 3
## 599 mt8.biz 3
#Grafic of Top 5 active Reporters
par(mfrow=c(1,3))
barplot(RankAR$Freq[1:5],
names.arg=RankAR$Var1[1:5],
horiz=TRUE,
xlab="Tickets per Reporter",
ylab="Reporters",
col=rainbow(5),
main="Top 5 active Reporters",
border="blue",
legend.text = RankAR$Var1[1:5],
args.legend = list("bottom", bty="n", cex = 0.8))#Top 5 Active Reporters
barplot(RankMR$Freq[1:5],
names.arg=RankMR$Var1[1:5],
horiz=TRUE,
xlab="Tickets per Reporter",
ylab="Reporters",
col=rainbow(5),
main="Top 5 Median Reporters",
border="blue",
legend.text = RankMR $Var1[1:5],
args.legend = list("bottom", bty="n", cex = 0.7))#Top 5 Median Reporters
barplot(Ranklr$Freq[1:5],
names.arg=Ranklr$Var1[1:5],
horiz=TRUE,
xlab="Tickets per Reporter",
ylab="Reporters",
col=rainbow(5),
main="Top 5 Alien Reporters",
border="blue",
legend.text = Ranklr$Var1[1:5],
args.legend = list("bottom", bty="n", cex = 0.7))#Top 5 Less acctive Reporters
2.3 Owner Members Analysis Report: The groups of Owners:
RankAO#Ranking the most active Owners
## Var1 Freq
## 6 SergeyBiryukov 67
## 2 audrasjb 18
## 5 johnbillion 16
## 3 chriscct7 15
## 4 joemcgill 14
## 1 adamsilverstein 13
RankMO#Ranking the Median Owners
## Var1 Freq
## 4 desrosj 9
## 7 nacin 8
## 1 afercia 7
## 3 boonebgorges 7
## 8 pento 7
## 2 azaozz 6
## 5 flixos90 6
## 6 jeremyfelt 6
## 9 rmccue 6
## 10 westi 6
## 11 westonruter 5
## 12 wonderboymusic 5
RanklO[c(1:30),c(1:2)]#Ranking the 30 less active Owners
## Var1 Freq
## 12 dd32 3
## 31 joehoyle 3
## 86 tz-media 3
## 93 xkon 3
## 10 davidakennedy 2
## 14 dswebsme 2
## 18 ericlewis 2
## 20 garrett-eclipse 2
## 23 ianbelanger 2
## 26 iseulde 2
## 29 jnylen0 2
## 34 joostdevalk 2
## 38 kapeels 2
## 45 markjaquith 2
## 75 schlessera 2
## 77 sorich87 2
## 82 technosailor 2
## 88 valendesigns 2
## 1 aaroncampbell 1
## 2 adam3128 1
## 3 allisonplus 1
## 4 antpb 1
## 5 bassgang 1
## 6 bhargavbhandari90 1
## 7 birgire 1
## 8 danielbachhuber 1
## 9 danielpataki 1
## 11 davidjlaietta 1
## 13 DrewAPicture 1
## 15 duck_ 1
#Grafic of Owners
par(mfrow=c(1,3))
barplot(RankAO$Freq[1:5],
names.arg=RankAO$Var1[1:5],
horiz=TRUE,
xlab="Tickets per owner",
ylab="Owners",
col=rainbow(5),
main="Top 5 active Owners",
border="blue",
legend.text = RankAO$Var1[1:5],
args.legend = list("bottom", bty="n", cex = 0.7))#Top 5 Active Owners
barplot(RankMO$Freq[1:5],
names.arg=RankMO$Var1[1:5],
horiz=TRUE,
xlab="Tickets per owner",
ylab="Owners",
col=rainbow(5),
main="Top 5 median Owners",
border="blue",
legend.text = RankMO$Var1[1:5],
args.legend = list("bottom", bty="n", cex = 0.7))#Top 5 Median Owners
barplot(RanklO$Freq[1:5],
names.arg=RanklO$Var1[1:5],
horiz=TRUE,
xlab="Tickets per owner",
ylab="Owners",
col=rainbow(5),
main="The 5 less active Owners",
border="blue",
legend.text = RanklO$Var1[1:5],
args.legend = list("bottom", bty="n", cex = 0.7))#Top 5 Less Active Owners
2.4 Comparation of groups by Reporters and Owners:
WPCGroupR #Group Types of Reporters
## CoreGroupR MembersTotalR PropMR
## 1 Reporters 1028 0.50765432
## 2 Active Reporters 34 0.01679012
## 3 Median Reporters 36 0.01777778
## 4 Alien Reporters 927 0.45777778
WPCGroupO #Group Types of Owners
## CoreGroupO MembersTotalO PropMO
## 1 Owners 116 0.50877193
## 2 Active Owners 6 0.02631579
## 3 Median Owners 12 0.05263158
## 4 Alien Owners 94 0.41228070
par(mfrow=c(1,2))
barplot(WPCGroupR$MembersTotal,
names.arg=WPCGroupR$MembersTotal,
xlab="Reporter Groups",
ylab="Total Members",
legend=WPCGroupR$CoreGroupR,
col=rainbow(8),
main="Reporters per Groups",border="red")
barplot(WPCGroupO$MembersTotal,
names.arg=WPCGroupO$MembersTotal,
xlab="Owners Groups",
ylab="Total Members",
legend=WPCGroupO$CoreGroupO,
col=rainbow(8),
main="Owners per Groups",border="red")
3. POTENTIAL INDICATORS:
Hypothesis: \(PropMo = PropMR\)
Means: percentual of tickets into any subgroups into Owner Groups are similar thand percentual of tickets into any subgroups into Reporter Groups
Where PropMo is the proportion of tickets per active, median, and alien groups of Owners, and PropMR is the proportion of tickets per active, median, and alien groups of Reporters.
Hypothesis test:
similarityOR<-ifelse(PropMO>PropMR,1-(PropMO-PropMR),1-(PropMR-PropMO))
similarityOR<-mean(similarityOR)
similarityOR
## [1] 0.9772515
Thus, Mode_Agents_Rules indicator is = similarityOR.
4. FINAL CONCLUSIONS:
There are more Reporters than Owners. Maybe because to report a problem in the WorPress Platform is easear than fix a problem. There are a two members, who can been considers the super active menbers of WP Community: SergeyBiryukov and johnbillion. SergeyBiryukov (number 1 of owners) was reponsable to 67 tickets, and also he report 15 Tickets (23o position of reporters). johnbillion (number 1 of owners) reports 72 tickets, and also was responsable for 16 tickets (3o position of owners).
The hypothesis test proof (result: 0.9772515) indicates that there are a strong coesion into formals groups of core: owners and reporters.
Despite the most of tickets have no owner, there are not so many urgent issues. Around 93% of tickets are classified as Severity “normal”, and 97% are classified as Priority “Normal”.
According with this description, are recommended analyse in a bivariable description the folow variables:
Variables for setup a referential of the community (The “Referentiality” Dimension): Documentation of values, general view and beiefs of community
Variables for analyse the “Prescritivity” dimension: Analyse the community referential with “Focuses” Variable, in order to verify if the members produced what they stablished into referential.
Variables for analyse the “Sense of Unity” dimension: “Keywords” Variable, in order to verify the correlation with groups
Variables for analyse the the “Receptivity” dimension: Groups of members, correlation between groups and Status, Type, Milestone variables