[openstack-dev] Stats on blueprint design info / creation times
Daniel P. Berrange
berrange at redhat.com
Thu Aug 22 09:14:11 UTC 2013
On Wed, Aug 21, 2013 at 11:20:08AM -0400, Doug Hellmann wrote:
> On Mon, Aug 19, 2013 at 11:47 AM, Daniel P. Berrange <berrange at redhat.com>wrote:
>
> > In this thread about code review:
> >
> >
> > http://lists.openstack.org/pipermail/openstack-dev/2013-August/013701.html
> >
> > I mentioned that I thought there were too many blueprints created without
> > sufficient supporting design information and were being used for "tickbox"
> > process compliance only. I based this assertion on a gut feeling I have
> > from experiance in reviewing.
> >
> > To try and get a handle on whether there is truely a problem, I used the
> > launchpadlib API to extract some data on blueprints [1].
> >
> > In particular I was interested in seeing:
> >
> > - What portion of blueprints have an URL containing an associated
> > design doc,
> >
> > - How long the descriptive text was in typical blueprints
> >
> > - Whether a blueprint was created before or after the dev period
> > started for that major release.
> >
> >
> > The first two items are easy to get data on. On the second point, I redid
> > line wrapping on description text to normalize the line count across all
> > blueprints. This is because many blueprints had all their text on one
> > giant long line, which would skew results. I thus wrapped all blueprints
> > at 70 characters.
> >
> > The blueprint creation date vs release cycle dev start date is a little
> > harder. I inferred the start date of each release, by using the end date
> > of the previous release. This is probably a little out but hopefully not
> > by enough to totally invalidate the usefulness of the stats below. Below,
> > "Early" means created before start of devel, "Late" means created after
> > the start of devel period.
> >
> > The data for the last 3 releases is:
> >
> > Series: folsom
> > Specs: 178
> > Specs (no URL): 144
> > Specs (w/ URL): 34
> > Specs (Early): 38
> > Specs (Late): 140
> > Average lines: 5
> > Average words: 55
> >
> >
> > Series: grizzly
> > Specs: 227
> > Specs (no URL): 175
> > Specs (w/ URL): 52
> > Specs (Early): 42
> > Specs (Late): 185
> > Average lines: 5
> > Average words: 56
> >
> >
> > Series: havana
> > Specs: 415
> > Specs (no URL): 336
> > Specs (w/ URL): 79
> > Specs (Early): 117
> > Specs (Late): 298
> > Average lines: 6
> > Average words: 68
> >
> >
> > Looking at this data there are 4 key take away points
> >
> > - We're creating more blueprints in every release.
> >
> > - Less than 1 in 4 blueprints has a link to a design document.
> >
> > - The description text for blueprints is consistently short
> > (6 lines) across releases.
> >
> > - Less than 1 in 4 blueprints is created before the devel
> > period starts for a release.
> >
> >
> > You can view the full data set + the script to generate the
> > data which you can look at to see if I made any logic mistakes:
> >
> > http://berrange.fedorapeople.org/openstack-blueprints/
> >
> >
> > There's only so much you can infer from stats like this, but IMHO think the
> > stats show that we ought to think about how well we are using blueprints as
> > design / feature approval / planning tools.
> >
> >
> > That 3 in 4 blueprint lack any link to a design doc and have only 6 lines
> > of
> > text description, is a cause for concern IMHO. The blueprints should be
> > giving
> > code reviewers useful background on the motivation of the dev work & any
> > design planning that took place. While there are no doubt some simple
> > features
> > where 6 lines of text is sufficient info in the blueprint, I don't think
> > that
> > holds true for the majority.
> >
>
> How many of those blueprints without links or expansive documentation are
> related to some other blueprint that does have documentation? In
> ceilometer, we have several blueprint "clusters" where one main blueprint
> has some documentation and the others are present for assigning and
> scheduling the work of a multi-part feature, or vice versa. For example,
> https://blueprints.launchpad.net/ceilometer/+spec/alarming has no real doc
> because it's an "umbrella" blueprint for a lot of other pieces, many of
> which *do* have documentation.
I don't know about ceilometer but for Nova I don't think there are
such a large number of linked blueprints, as to make any significant
difference to the stats here.
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the OpenStack-dev
mailing list