One of my responsibilities at my former employer, Chatham Financial, was to give an introductory talk about the Technology Team and our Chatham Direct platform to new hires. This is always an interesting experience because of the diverse range of backgrounds in the audience. Accountants, Financial Analysts, Developers, and new graduates among others will all have very different levels of understanding of modern software development processes. After one such Intro to the Technology Team talk a newly hired Product Owner came up to me and said, “That was interesting, I’ve never heard anyone describe Agile Software Development as an Organizational Change process before”. That comment really made me think. Could my conceptual model of the process of building enterprise software help other organizations?
This blog is not for everyone. The focus is on Enterprise software. I assume that you work for a company that serves its customers through a combination of people doing work and technology to make these processes scalable and efficient. If you are a game developer, and app developer, a data scientist, or any other type of developer that is not writing software for business users then I’m not sure how applicable this is. If you are an enterprise software engineer, UX designer, Executive, or just a manager in a company that develops software then I believe that the concepts in this paper can help you use Agile software development as a process not just to deliver software, but to evolve your entire organization.
The ideas in this paper come from two very different fields. The field of Software Engineering focuses on the process of developing and delivering software. From this field we will look at the techniques of Agile Software Development. While most modern software development teams use agile techniques, these techniques alone don’t result in effective organization change. The second field that this paper draws on is the field of Organizational Behavior. We will use the Nadler-Tushman Congruence model as a framework to analyze releasing software into an organization.
Leave a Reply