Architect or Enthusiast? The Difference Is Economic
Posted in Eric Bruno on July 28th, 2011 by Eric BrunoEric Bruno originally posted this on Smart Architect.
There’s a wide chasm between true enterprise architects and those who hold that title but who are primarily technology enthusiasts. The enthusiast’s passion is impressive, but it isn’t necessarily to the company’s advantage when it comes to paying the price those passions can lead to.
One way to tell what category enterprise architects are in is by the company they keep. If enterprise architects spend most of their time with developers, R&D staff, or other specialized technologists, they’re really enthusiasts. On the other hand, if they divide their time between meeting with development personnel and discussions with the CIO/CTO, the people minding the budgets, the project managers and other business people in the organization, then they’re true enterprise architects.
It’s easy to get caught up in the excitement of new technology, of solving complex problems, defining innovative new approaches and being a visionary for a potentially large number of developers. I know because I’ve done it — unfortunately, at the expense of guarding other factors, such as the costs related to my decisions.
This isn’t to say that a true enterprise architect can’t be enthusiastic about the potential of technology — that is one of the job requirements, after all. But it’s only one of many. Just as an automotive or an aeronautical architect must make safety a priority each and every day, the enterprise architect must make software economics a priority each day. For the sake of the company — and for the sake of his or her job as well.
Architecture + $$$$ = Formal Approach
Executives and managers know how finite resources are, and that there are limits to what can be accomplished in any period of time. That makes the role of the enterprise architect even more valuable, as this person should not only be able to make good design decisions that match the technology to the business problem being solved, but that also reduce the risks of related costs as much as possible.
Consider the various dimensions that exist around building a software product that serves a business need, has value, and represents revenue to the implementor. The responsibilities of the CEO of the company that is building the product include, among other things, meeting shareholders’ financial expectations. The technical staff’s job entails building, deploying and maintaining the software to meet customer expectations. The enterprise architect (and his staff’s) job is to define the technology road map and blueprints for IT staffers to follow in completing their work, and reassure the executives that the resources are being used most efficiently. You need to prove that the direction you are taking makes sense economically – that your efforts will keep costs under control – and won’t expose the business or its shareholders to undue risk, while also driving revenue.
Yes, you’re in a tough spot, but if you prove yourself to both the business and IT sides of the organization, your worth increases to the point where you become invaluable to the company’s success. Achieving success in this role isn’t based on some quality you’re born with, or luck. It requires skill that is honed through experience and education. Fortunately, there are formal specifications and methodologies to help you reach this level of success.
Economic-Driven Architecture
It’s no surprise that the words budget, and cost appear more than once in the Software Engineering Institute’s (SEI) definition of the term software architecture. In fact, the SEI defines a methodology and practice around an architectural cost-benefit analysis method (CBAM), and it integrates this with its architecture trade-off analysis method (ATAM). This is followed up with a guideline document that shows how these two methodologies can be combined for overall success (technically and economically) in an SEI report on the economic approach to architectural decisions. (You can read the SEI’s discussion of architecture and economics, along with other papers that describe how to measure and apply the proposed economic guidelines for software, here.)
The following diagram is taken directly from the CBAM, and serves to provide context to the enterprise architect’s job and responsibilities:
Figure 1. The SEI CBAM Context
The arrows that point from the architectural strategies of your organization to the key quality parameters these strategies should address (performance, security, usability and so on) extend also to point that the software that results from following these strategies should have real benefit to your organization. What’s also added to this diagram is a large shape that represents the architecture’s associated cost. It may be subtle, but the size of this shape is equal to the size of the shape that represents the overall benefit of the architecture. The goals of the CBAM are to ensure that costs are measured and compared fairly to the technological benefits of your architecture and that the costs are not larger than the benefits.
Conclusions: What’s Your Value?
Businesses make decisions — including those about which employees can’t be sacrificed even when money is tight — based on their employees’ real (and perceived) value. That value is derived from calculations that estimate how much potential revenue can be attributed to the particular employee, minus the cost of employment. Showing that your decisions aren’t only sound technically, but also save the company time, effort and money, will help boost your own value as a key contributor to the company’s financial well-being.
Can you prove your worth that way, and show that you're more than a technology enthusiast? If so, congratulations! You're on the road to being a successful enterprise architect. If not, now’s the time to start making a change.
