PIC: Programming Languages & Software Engineering
Title: How do enterprises govern their software development
Summary: A governance project at IBM Research is helping
organizations think about the choices they make in creating
their software environment.
Duration: 6 minutes, 30 seconds
Presenter: Clay Williams
At first glance, a software development house doesn’t have
much in common with a financial portfolio. But both consist
of instruments expected to yield value. And both contain a
certain amount of risk.
A governance project at IBM Research, led by computer
scientist Clay Williams, is looking at the way large
enterprises make choices about their development activities
so that they can get optimal business value out of their
software development investments.
In this episode of Computer Science Spotlight, Clay gives
an overview of his governance project.
My name is Clay Williams and I manage the governance
science research group here at Watson Research.
The governance project is really about looking at software
development and trying to understand how we can align
software development activities with business strategy for
Now, traditional software engineering looks at everything
from a very process-centric view of, “We're just going to
tell developers what to do. You know, first you gather the
requirements, then you do some prototyping, then you build
a model, then you write the code, et cetera.”
These types of process-centric approaches don't work well
in a lot of software environments. And it's really because
software development is a creative activity. And it's very
hard to plan creativity.
And so what we're doing in my team is we're really looking
at four facets to try to support the creative activity of
The facets really go from project portfolio management and
planning, down to understanding the assumptions associated
with a project, which is where you do your predictions and
the projects sort of coming online.
And then you get into the actual execution of the project,
which is where these team dynamics come into play.
Finally, once you understand certain team dynamics, how can
you grab a pattern or a best practice or a process and
formalize it and say this is something we want the
organization to reuse, and that's applying governance?
We're trying to understand how teams self-organize. So if
you look at a good high-performing software development
organization, people come to know who has expertise in
which areas, who they can go to if they have a problem with
a certain technology, who knows a lot about databases
versus user interfaces, et cetera. And the team comes to
recognize where the expertise lies and they know how to
rally around that, if you will.
If you look at our big enterprise customers, the projects
that they have in their software development shop look very
much like an investment portfolio. They're spending money
on a set of projects. They're expecting each project to
provide a certain value. And there's probably some risk
inherent in each project.
After the dot-com bubble burst, a lot of CIOs ran into this
situation where they became viewed simply as cost centers
in their organization. Everything was about the purse
string and controlling the cost. And they want to have a
very different conversation with their CEO or their CFO.
They want to talk about the value they bring to the
organization. Our clients are clamoring for tools and
capabilities that support this value-creation argument.
And so another piece of work we're doing is to understand
what does the portfolio of projects look like for an
organization in terms of the value of each project and the
risk associated with each project?
Just like if you have a stock in your stock portfolio
that's very volatile, you hope that it's volatile because
there's a lot of upside to it. If you have a project in
your project portfolio that's risky, you should really only
have that in your portfolio if there's a lot of upside to
So there's a high risk to the project. But boy, if you get
it right, you're going to hit a home run and get huge
business value out of it. Otherwise, why would you want to
do a really risky project that has low potential value?
We've developed some project valuation models that look
very much like the financial models you would see on Wall
Street. And those take risk into account so you can talk
about measurements, such as value-at-risk, in a meaningful
way in the context of project management.
In some ways, applying governance to software development
is in essence a new field. We started this in 2006. It
wasn't like saying, “We want to take the next step in a
very established discipline like optimization of some type
of mathematical problem, where there's an existing body of
literature. You can go read it and understand exactly what
it means to your problem.” We've had to sort of take these
disparate pieces of information from different fields,
synthesize them, teach people inside and outside of
Research what our vision looks like and get a community
Over time, we've identified the academics working in the
area who are interested in what we're doing and it's very
heartening. There are a lot of top people. So we've got
some people at Harvard Business School. We've got people at
Carnegie Mellon, Cal Irvine, UC Davis, Virginia. There's a
community at [the University of Texas] UT Dallas,
University of Arizona. We sort of covered the nation and
found the pockets of people who are interested in these
And we've identified the people inside Watson who bring the
types of expertise we want to the team. There are four main
PICs [Professional Interest Communities] that people are
strongly affiliated with: Operations Research, Statistics,
Programming Languages and Software Engineering and Human
Computer Interaction. And we also probably should be
reaching out more the Artificial Intelligence PIC.
Artificial intelligence will play a big role here in some
of the really forward-looking things we want to do and some
of the exploratory work.
I've tried to emphasize the fact that organizations are not
processors that you program with a process, that they are
adaptive, that creative things happen in them and that we
want to support that creativity. It’s exciting.
You’ve been listening to Computer Science Spotlight, an IBM
Series editor: Barbara Finkelstein
Music: Walking the Dogg by the Dejunair Project