Wednesday, September 30, 2009

Turbulent times

At this organization the tenure of the senior leader post is closely resembling that of a Bank of America CEO. The post length is now measured in months and not years.

Superficially it appears that the changes at such high level do not influence the design of software systems. But upon taking a closer look it quickly becomes clear that changes at the top have a direct impact on your software design decisions. To recap the flow: the world events influence customers' decisions, corporations adjust to serve customers, CEOs and senior leaders set objectives and goals to maximize profit on sales to customers, measures associated with objectives and goals influence the business processes, software exists to support business processes, and company employees use software to deliver value to a customer.

Only in the most mature (or highly bureaucratic organizations) the change at the top has marginal effect on organizations, but in this economic environment with ever changing business models the concept of stability no longer exits.

This instability becomes a design constraint for an architect and alters the design process and construction / release stage of software development. To mitigate against rapid changes you must build elasticity into your design and into your software development approach. This means paying a special attention to decoupling of components, and deferring design decisions as far back as reasonable.

From the human aspects of software architecture prepare the team for change, rework, refactoring, and re-architecting. For some organizations stability will never return due to the changing business models. As the architect it's your (increased) responsibility to ensure that change is manged and does not result in knee jerk reaction.

Constantin Kostenko
Firebrand Architect®

No comments:

Blockchain learning path for Enterprise Software colleagues

I wrote this post to document my learning path of blockchain concepts and Ethereum technologies while keeping my “new to blockchain” collea...