Mittwoch, 14. Dezember 2022

Be a leader



Already 55 years ago, Melvin E. Conway came along with the insight "Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure."


Since then, the software product world has changed dramatically while most of the software companies have been created within that time. Around 20 years ago, the Agile Manifesto was released and is spread since that through the world and a lot of companies jumped on the Agile topic - jumped on and not dived into. And while more and more jumped on, the questions need to be raised why a company wants to go Agile.


-Why Agile?

The higher in the hierarchy you address this question, the more it will spread through the company. A good place is to be addressed within a company plan or vision. If you do it just in your development teams as it is fancy to have Agile teams, then you will get this structure sooner or later into your product and it will not be good. Keep the law in mind.

Changing an organization is probably the most difficult part in an organization because it results in gaining and losing influence and power. Thinking e.g., on Scrum, there is no line manager needed and of course this causes social fear in these people. Also, the team members who gain power and responsibility need guidance.

The lower in the hierarchy Agile will "deployed" the more methodical cutlines you will face. Then you have people within and outside of Agile.


-Face the uncertainty

Uncertainty is always present in software development. The question is how to handle this. When the team is stable, uncertainty can be reduced by addressing learning session to reduce knowledge gaps and for project management to use forecasting on existing data instead of forecasting on estimating.

Keep the iron triangle in mind. If you try to fix all edges you are lost. You can deal with uncertainty but not get rid of it.