Connected Intelligence....
Vasu's Musings on Business,Management and Leveraging Collective Wisdom
Software Development Process Governance
photo
You don't go about designing a society from scratch. It exists. You deploy structures and mechanisms to 'govern' it. A society is governed, not managed.



By governance, you not only limit/prohibit undesirable behavior and actions, but also guide, regulate and harness actions towards a purpose.



Applying this notion to Software Development Processes, Quality needs to be managed. You need to design, measure, improve, analyze and Control Quality. Sure.



Similarly, Requirements need to managed as well.

But, the overall software development process, I think, needs to be governed and not managed.



If you did not get what is in the image, try squinting your eye a bit and you would be able to read it easily. Similarly, I think you might have to do some 'mental squinting' to get this notion of governance.

2008-06-24 23:33:30 GMT
Comments (4 total)
Author:Anonymous
Ah, but what is the best form of governance of a software process? A town-hall democracy? A benevolent dictatorship? Is successful open source a kind of meritocracy?

As the saying goes, one cannot legislate morality. But I think a government can use taxation to drive towards a purpose. What is the analog in software development to taxation?

I can make a rule (pass a law) that code must be reviewed before checking it in. But where is the teeth behind such legislation? Is there some way to tax undesirable behaviors?
--Morgan Creighton
2008-06-25 00:35:48 GMT
Author:Anonymous
Because I am a contrarian let me take a different position than the analogy or position. Societies are interesting in that you are right there is some starting point. However, civilized society is transformed by governance and the rules that bind it. The rules the governed puritanical societies formed a different society than the societies of the indigenous Indians of the US , which have their own rules and governance.



Management in the development process is necessary to overcome the unexpected. Churchill saved England by managing the country past a world war. Managers in the development process manage excessive defects during QA, key personnel leaving the team, and other unexpected occurrences. A good manager can help development process by managing improvements into the process. However, I could agree that once the process is formed, it need only be governed.


-- Don
2008-06-25 00:41:50 GMT
Author:Anonymous
'Bad Eyes' and explanation on goveranance are interesting and good.

I am not sure why overall project development can only be governed. It has to be managed and controlled. The way I look at it, anything where you desire that particular things happen and can have only guidelines towards them (and not a stick to stop them) can be only governed and not managed. Legal system can manage things and government can only govern things. You are managing your sub-teenage kids but govern the grown up kids.

Interesting proposition - but I am not agreeing.

Sundar
2008-06-25 22:23:51 GMT
Author:Vasu's Blog
Great Comments and Inputs. Thank you.

I think I have to make a distinction between Software Development Process Management and Project Management etc.,

Also, there exists a distinction between Management of Software Development and Management of the Software Development Process.

My post is specifically about Software Development Process Management.

Managing the effectiveness and efficiency of the software development process would amount to constantly improving the Process.

Increasing the efficiency of a development Process would eventually result in Practice degradation. This is what I call the 'Software Process-Practice Paradox'.

This Pyrrhic pursuit of process maturity is a vestige of industrial processes and could be replaced instead by Process Governance.

The Endeavor of Software Development could be managed by managing the work products and its creators(practitioners) alone applying the body of knowledge available and by governing the 'practiced process', rather than by managing the process. Also, Governanace does not mean, not being able to control but simply means that we are working on an unbounded problem.
-Vasu Srinivasan
2008-06-25 22:40:01 GMT
Compose a comment for this post.
Comment:
0 characters left (limit 4,000 characters). No HTML permitted.
Word verification:
To validate this comment, showing us that you are human, and not a computer, please retype the following code in the field provided.
(This helps prevent blog spam.)
Add to My Yahoo! RSS