Enterprise Architecture in an Agile World
Even with the economy in a state of constant struggle, technology is still moving at a pace far greater than any of us could have imagined just a few short years ago. Some highly quoted person once said, “the only constant in life is change”. That is certainly the case with technology.
In recent years, I’ve been fortunate enough to work with some great clients, people who understand their business and recognize the art of balancing pragmatism with ingenuity. It’s not an easy task. On the one hand, you need to operate with a conscience of the wallet. On the other hand, waiting for others to test the water before you jump in may result in losing out on business growth opportunities. It is indeed a struggle.
One way to balance pragmatism with ingenuity is to utilize effective Enterprise Architecture groups within IT Organizations. Effective Enterprise Architecture groups fully understand their company’s business and are enablers to help them attain their goals. Additionally, they understand the industry’s technology landscape, helping their company navigate the options, applying standards and best practices to expedite learning curves and goal attainment.
Sounds simple, right? So, what’s the problem? Business is moving quickly, as is technology. Decisions are being requested in rapid succession, and there isn’t always time to exhaust the fact-finding that would ideally precede them. So, what do you do? The one thing that I see all too often, and seems to be a pandemic in IT Organizations is paralysis and fear. The fear of making a bad decision leads to the paralysis prior to making one. Further, the outwards frustration from their constituents thrust upon these decision makers often leads to political silos of us vs. them and creates a greater schism between IT and the Business.
It gets worse. When Enterprise Architecture groups finally do get forced to make decisions on standard technologies, they make them. And things come to a halt, without the necessary next step towards enablement, i.e. Solution Architecture. Solution Architecture is the bridge between Enterprise Architecture and Application Development. It is the realization of standards into reusable frameworks, i.e. starting points for Application Development organizations to utilize.
When I used to work for a large company in a “past life”, I witnessed our Enterprise Architecture group choose a portal architecture as the “standard”. It was actually an excellent choice. However, no enablement ensued. Instead, it sat around for awhile. Finally, an Application Development group in need of a portal architecture took the shrink wrap off the product. Novice developers hacked away at it, and the result was a highly unsustainable portal application. Everyone bashed the decision on the portal software. Wrongful bashing. The software was right. The implementation was wrong.
For any Enterprise Architecture organization to be successful, enablement has to be in their charter. You cannot rush into decisions, yet you cannot wait on them either. And you cannot choose platforms without enablement. Assess, choose, enable. Assess, choose, enable. Lather, rinse, repeat.