[Teammetrics-discuss] Linking Metrics Together

Vipin Nair swvist at gmail.com
Sat May 19 17:17:54 UTC 2012


Hi Sukhbir/Andreas,

As I mentioned in an earlier mail, we could link different metrics of
the same project together. This in my opinion will give a better
picture of a teams functioning.

This can be done in two ways, either at the database level or at the
code level.

1) Database Level

To do this, we'll need to add one more table, say projects, which
links a project and all its metrics together.

The projects table structure could be something like this.

Column     |         Type          | Modifiers
----------------+-----------------------+-----------
 project_name   | character varying(40) | not null
 project_metric | character varying(40) | not null
 metric_type    | character varying     | not null


Sample data

project_name |   project_metric    | metric_type
--------------+---------------------+-------------
 teammetrics  | teammetrics-discuss | list


The question is how do you add data to this table? Can it be automated somehow?

Advantage:
    1) Database can be easily used by other application as all the
required data is in the database itself.

Disadvantage:
    1) Slow. One extra table lookup is required for each query.
(Caching data can help here.)


2) Code level

This can be done easily in python. We can create a python dictionary
with the name of the key as the project name and the associated value
is again a dictionary where each dictionary key is the 'type of
metric' and the value is 'name of metric'.

Sample code:

   project = { "teammetrics" :  {"list":"teammetrics-discusss"}};

The metric name can be accessed as:

   project["teammetrics"]["list"]

Advantage:
    1) Fast. One table lookup is avoided.
Disadvantage:
    1) This file needs to be maintained along with database to ensure
data consistency at application level.



These are two methods that came to my mind for linking metrics
together. Which one is preferred? If it is possible in some other way,
please let me know.

Regarding the data, can we crowdsource it? Say request the community
to fill up a form with project name, mailing list id and all other
relevant information?

I have access to only tables in the database. They are 'commitstat'
and 'listarchives'. Where are the other metrics (bugs, uploadstats)?
If there are some other relevant tables, I kindly request access to
them :)

Thank you.

-- 
Regards,
Vipin Nair
National Institute of Technology, Calicut
http://swvist.github.com



More information about the Teammetrics-discuss mailing list