Dissertation Research Ideas from Jim Coplien (Cope)
- How much does the use of ScrumWorks? from Danube affect team
self-organization, and consequently affect team velocity?
- How does Scrum success (as measured by statistically controlled
velocity and perhaps other metrics) correlate to the presence of the
top ten organizational patterns?
- What languages are best for DCI, and why? (Some kind of
language feature tradeoff / value matrix evaluation.)
- A concrete comparison of DCI versus mix-ins, and why DCI is
- A case study of using DCI on real code, comparing metrics from
the non-DCI and DCI versions
- How to implement DCI in C# (I want to see one of these for each
of the languages)
- What a design method for DCI might look like
- Comparing DCI with other paradigms: objects, components, etc.
(There is actually a lot to be said for the component approach here...)
- A formal UML meta-model of DCI (Contexts contain all roles;
each role composes with at least one class; each Context has one or
more Use Cases; what the relationship is between Use Cases within a
common Context; etc.)
- Non-software analogies for DCI (maybe in building architecture?
This could relate to the usual architectural saws about form following
- The relationship between DCI and classic Western dualism, and
an Eastern tripartite deconstruction of DCI
- How to do business rules in DCI
- How to do state machines in DCI
- Do an experiment where the control is system tests with no unit
tests, and the experimental includes unit test. Measure cost (testing
time, rework of bugs) and value.
- Analyze corporate bug data to see if Kent Beck's XP bug curve
(early in the XP book) reflects reality. Beck claims that we need to
make the bug curve look like he shows it in the book; more or less a
square root function. He weakly implies that it is not that today. I
suspect that it is. He claims that this argument is the sole technical
basis of XP. I suspect that it is completely wrong.
- Make control theory models of waterfall, of typical
development, and of edge-of-chaos Agile organizations. Show how the
system models respond to a step response, a linear increase in demand,
and in both precipitous and gradual declines in demand. Do this by
analog to step-function response of low/high-pass filters.
- Do a pattern analysis of several organizations.
- Develop a taxonomy of value systems (such as the Agile
Manifesto), organizational structure types (hierarchical, flat,
stovepipe, isolated islands, communal) and process types (frequency of
feedback, bandwidth of feedback, serial, parallel, ad-hoc).
Empirically map organizations into these process types. Correlate with
what they call themselves ("Agile", "Waterfall," "DSDM," etc.) and the
overall degree of organizational soundness (customer satisfaction,
employee satisfaction, etc.) as determined by a survey. This can build
on systems theory research by Senge, Sveringa and Wierdsma (Royal
Dutch Shell), and others.
- Malthus' Law says that populations can grow and be effective
according to the resources provided to them. That is, resource-starved
populations degenerate into poverty and low industrial output.
However, research on mice in the 1960s shows that an overly high
population density, even in the presence of adequate food, water, and
other life resources, leads to aberrant behavior (particularly sexual
behavior, including a rise in homosexuality) across the population.
The net result is a decrease in the birth rate. By analogy, Agile
teams that are packed into a room without private space may develop
aberrent social behavior including sexual behavior such as consumated
affairs (White's book, Organizational Incest). Research the degree to
which the personal space in a work environment correlates to short-
and long-term productivity. My guess is that it works in the short
term but falls apart in the long term.
- Hall (The Dance of Life) contrasts the social values of
monochronic cultures (Germany, Switzerland) with polychronic cultures
(e.g., Latin). Polychronic cultures value people and relationships and
monochronic cultures less so, while monochronic cultures revolve
around the greater social good and polychronic cultures less so. Scrum
has elements of monochronic culture, particularly in its tight time
boxing of meetings and sprints. It also has elements of polychronic
culture, as during a sprint. Analyze Scrum in terms of Hall's model.
Additionally, develop survey data to calibrate the models with respect
to specific activities in Scrum.
- Analyze the work accomplishments of a software development
population in a liberal company (preferably a non-Agile company,
because I think Agility will skew this number). "Accomplishment" may
be stories completed (individual velocity: yeah, I know...), even
lines of code, business value (if you can figure it out) or the degree
of quality of the product (as measured by bug density in the code in
the long term). Correlate quality to hours worked per week. The thesis
is that overtime decreases quality, and that working a substandard
work week increases effectiveness per unit time.
- Do a correlation (autoregression) analysis of the dependent
variables of coupling and cohesion on the presence of the following in
a project: TDD, code ownership, up-front design, and refactoring.
There is already published research that shows a reverse correlation
to TDD (Abrahamsson and Siniaalto). I suspect that refactoring makes
little difference. I suspect that up-front design makes a difference.
- Study the difference of multiple product backlogs (Schwaber)
versus one product backlog on team velocity.
- Study one XP team using ScrumWorks? and another that is using
PostItŪs? or whiteboards. Compare the amount of overhead time in
maintaining project data. Compare the frequency of access of such data
by team members, managers, and other roles. Track how many times given
team members thought about having the data and would have used it, if
it were at their fingertips, for trivial decisions that arise during
the day, but they were prevented from doing so because of the tool
- Choose several published studies that purportedly claim to
analyze benefits of Agile development. Contact the corresponding
Researchers and gain permission to, through them, collect a small
amount of supplementary data from their study subjects. Take a survey
of all of these projects about their own opinion of their adherence to
the Agile Manifesto and the Nokia Test (http://jeffsutherland.com/scrum/scrumbutttest.pdf)
Correlate the Agility of each organization to:
- the strength (forcefulness) of the researcher's claim;
- the general direction of the researcher's claim for Agility being good;
- the breadth of applicability of the research results;
- the date of publication;
- the framework being used by the research subject (Scrum, DSDM, XP, general Agile)
- Do a grounded theory development (Glaser, Strauss, Corbin) of
bottom-up Scrum implementations and top-down