Apparently there is no any relationship between a
software development process (Scrum) and a computing process (ANN) at all. But I do find some interesting metaphors between ANN and Scrum.
ANN:::::::::::::::::::::::Scrum Neural network--->
Scrum team;
neuron--->
team member;
weight--->
teammate relationship;
Active function--->
individual capability;
Problem space--->
Product Backlog;
Solution Space--->
executable software;
Learning iteration--->
Sprint;
Learning Criteria--->
Definition of Done;
Back-Propagation--->
Retrospective;
Self learning--->
Self management;
No analytic methodology--->
No command-control;
What do you need to do in Scrum/ANN to get solutions? design learning algorithm--->
Customize the framework;
Design topology of the neural network--->
Form the team;
Keep weights carefully--->
Keep the team intact;
Define solution and problem space --->
Define Product Backlog and Definition of Done;
Yes, there is no analytic methodology in ANN anymore. So does Scrum.
Don’t we try to solve the problems (software development) in sort of analytic ways in traditional process (e.g.
waterflow process)? Moreover, we may take ANN as a heavily heavily simplified Scrum team (as it was supposed to be heavily simplified neural network). If we can think in this way we were probably closing to the
fundamental of Scrum from different view point. And in return we may get some lessons or inspiration from ANN.
linchuan----------------------------------------------------------
Hi
Linchuan,
I am pretty impressed by your metaphor. It is very well explained and
crystal clear. I like it.
Maybe the parallel between ANN and SCRUM is made possible because both
are "empirical", as opposed to "theoretical" (traditional waterfall
process).
On this page,
http://www.controlc haos.com/ old-site/ philsd.htm ,
Schwaber makes a distinction between the theoretical system
development method(the model can be
predetermined in advance and
executed in a linear way) and the empirical one(where trial&error and
learning are part of the process that still delivers functional
products). From the later definition both SCRUM and ANN (with the
crucial importance of the learning phase) are empirical.
So your metaphor is, in my sense, also made possible because of the
theoretical/ empirical distinction.
Just my 2 fen! (in China we do not use "cents"...) ;)
Julien.
----------------------------------------------------------
yes. we can also make similar metaphor from different perspectives. ANN metaphor is an evidence of that empirical doesn't mean chaos in any sense. And further more, empirical can be
proved mathematically, e.g. ANN. The inventors of
Scrum also mentioned we can found theoretic supports from process dynamics... But ANN works fine for me (i do not have many knowledge on process dynamics). And i believe that sort of theories on chaotic and complex system should be the rock base of Scrum (or ANN or process dynamics ...). I'm not going to move too far on theory of Scrum (some body may). ANN metaphor can give us some guides or clues on how to use
empirical method to solve problems.
Some
software project managers, as far as i know, feel uncomfortable (or confused) with the new role in Scrum (
ScrumMaster). Some said there is less job for PM or I do not know what i can do expect maintaining a few backlogs, apparently everyone can do that . As you can see in my metaphor, it is not true at all. There is a lot of things to do for a
ScrumMaster or
ScrumMster of Scrums (usually can refer to PM in traditional process). But you have to change the way you do it. And the new role is more challenge than PM in
traditional project management practices rather than trivial for everyone.
Is it easy to design and implement a working ANN to solve a practice problem? Although ANN looks very simple.
linchuan----------------------------------------------------------
Hi,
Interesting analogy. Is there any link between ANN and
CAS(
Complexity Adaptive System), where inspection and adaptation come
from?
Though, i would NOT think of
Scrum Master as Project Manager in
agile mode, rather, the
traditional Project Management is
distributed into all Scrum roles -
Product Owner (content, schedule
and
budget), Team (self-managing) , and Scrum Master (removing
impediments) .
-
Yi----------------------------------------------------------
I strongly agree with you that
ScrumMaster is NOT PM (job title). In practice, some PMs(hierarchy title) will take
ScrumMaster role, especially
ScrumMaster of Scrums.
So it is what i was trying to say with " a
ScrumMaster or
ScrumMster of Scrums (usually can refer to PM in traditional process)" .
linchuan