From Manuel.Eugster at stat.uni-muenchen.de  Tue Mar 10 12:45:18 2009
From: Manuel.Eugster at stat.uni-muenchen.de (Manuel J. A. Eugster)
Date: Tue, 10 Mar 2009 12:45:18 +0100
Subject: [Rd] [SoC09-Idea] cranlab.
Message-ID: <49B652CE.9060005@stat.uni-muenchen.de>

Hi everybody,

just another Google Summer of Code project idea.


Best,

Manuel.


----------------------------------------------------------------------

cranlab -- "You can't control what you can't measure" [0]


Mentor: Manuel J. A. Eugster


Summary: The aim of this project is the (1) implementation of software
metrics to analyze R packages and (2) the creation of a CRAN software
metrics monitor.


Required skills: Good R programming skills. Basic knowledge of
software engineering and software metrics measurements are useful.


Description: Software metrics are measures of some properties of
software. In software engineering they are used to monitor improvement
of projects; common metrics include 'source lines of code', 'code
coverage' or 'software package metrics' (see, e.g., [1]).

First step of this project is the implementation of an R package which
calculates software metrics of R packages. The implementation must be
flexible, i.e., a basic set of metrics will be implemented, but others
can be added later on.

Second step is the creation of a CRAN software metrics monitor. This
means a service which continuously calculates software metrics of CRAN
packages and provides the (raw) data. As a first analyzing step a
dashboard provides simple basic plots of the data.


Programming exercise: How many functions has the archetypes package [2]?
Write some R code which counts them.



[0] Tom DeMarco. Controlling Software Projects: Management,
     Measurement and Estimation
[1] http://en.wikipedia.org/wiki/Software_metrics
[2] http://cran.at.r-project.org/web/packages/archetypes/



[Rd] [SoC09-Idea] cranlab.
Manuel J. A. Eugster