incubator-allura-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Simone Gatti <simone.gatt...@gmail.com>
Subject User stats and organizations
Date Thu, 29 Nov 2012 18:06:03 GMT
Dear all,

During the last weeks, while discussing our work on including new details
in users' profiles on the forge, I and Stefano Invernizzi also continued
working on the other features we introduced in one of our first messages on
the mailing list, back in July.
Now we have completed the implementation of these tools, and we would like
to get feedbacks from you in order to check if it's possible to include
them on the Allura platform.

The additional features we implemented consist of two main parts. First of
all, we included the concept of organization, namely companies, foundations
or other non-profit organizations and research and education institutions.
Each organization is now allowed to create a profile, including some
details about it, like a description, its working fields, its size, etc...
. Moreover, users can be linked to the organizations they belong to, and
projects can be linked to the organizations developing them. For both these
kinds of relationships, we implemented a two-way mechanism: the user
requests to be registered as a member of the organization and the
organization has to confirm it, or vice-versa. Similarly, an organization
sends a request to be listed as the developer of a project, and the
administrator of the project has to accept it, or vice-versa. When a user
leaves an organization, he can set this on the forge, and the enrollment in
this organization will be shown as a past membership. The same applies for
project collaborations: an organization can freely set a collaboration
within a project as completed, because the organization doesn't want to
continue working on the project, and it will be shown as a past involvement.
We believe this features could be very useful on a forge which is used by
more than one organization, because it allows to have a better awareness of
the community, knowing how users working on a project are organized in the
real life. It can also increase trust for those projects developed by
well-known organizations.

The second feature we developed is related to users, and consits of a set
of metrics gathered from their activity. These metrics include the number
of created or modified artifacts (also separated for different kinds of
artifacts), the number of assigned tickets, solved tickets and "revoked"
tickets, namely tickets which were assigned to a user but whose owner was
later changed. Moreover, the number of commits is collected, together with
the total number of added or modified lines of code by the user. For a
certain user, all these metrics are shown on a page on the form, as a total
value since the user's registration, as well as an average per-month value.
The metrics are also calculated considering the last 30 days only, in order
to allow to check whether the user is still active on the forge or not, and
if he is increasing his efforts on the forge or not.
Moreover, it is also possible to see these values for a single category
only, namely considering all the data regarding projects tagged as
belonging to that category. A graph showing the number of joined projects
by the user for each category is also shown, to highlight the kind of
applications the user is focused on.
Finally, the previously listed statistics are also calculated for
organizations, by considering the activity of the users enrolled in the
organization itself. Particularly, since each user can possibly work for
more than one organization on the forge, as well as working as an
individual programmer, organizations' statistics are calculated considering
only those activities performed by its members on projects to which the
organizatione is explicitely involved.
We think these features are useful to allow users to have a deeper
awareness of someone else's experience and interests, and this could also
help in identifying partners for a certain project.

These features are implemented as external features and can be easily
enabled or disabled by setting boolean parameters in the .ini file.
Therefore, it is possible to enable organizations only, without including
the statistics features, or including statistics for users only, and so on.
Of course, it is not possible to enable organization statistics without
enabling the concept of organization on the forge.

We would like to know what you think about these features, and we would
like to know how we can provide you our code to get a feedback from you
and, eventually, to discuss improvements and changes on it. Stefano is now
allowed to write on the repositoy, but since I am not allowed to do so, and
since these features should obviously be discussed before being included on
the project, I don't know if working there, even on a new branch, is the
best solution. Also, let us know if you prefer to check the two features
separately or not. Probably, it would be easier to do it incrementally,
considering one of them at a time.

Regards,

Simone Gatti and Stefano Invernizzi

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message