Software Architects Need Business Savvy

The Microsoft Architect Journal published an article “Business Improvement Through Better Software Architecture” in January, which is an interesting discussion of the roles of software architects within business:

“Whenever you meet someone who is thought of as a software architect, chances are that this person is highly competent in technical IT matters—especially those that concern software—and has a high level of interest in these matters. It’s less common that such a person is equally competent in business matters.

This might be a problem! For someone to be able to create a structure that supports the business well, that someone must first understand the business, its structure, its goals, and its problems. How else would it be possible to find the “right” technical solution?

We firmly believe that this should be one of a software architect’s most important qualifications: to understand business issues well enough to be able to define IT solutions that help solve business problems, help reach business goals, and are structured in compliance with the structure of the business.”

The article discusses five architectural roles:

architects.gif

Business-Strategy Architect
This role is about business strategy rather than IT strategy. The strategic architect works closely with top management, which is the body responsible for strategic decisions. The strategic architect might even be part of top management.

Business Architect
The mission of business architects is to improve the functionality of the business. Their job isn’t to architect software but to architect the business itself and the way it is run. However, the structures they provide should be used by software architects as a foundation for the design of business software solutions.

Solution Architect
A solution architect should architect technically oriented solutions to business problems. If this means—in a service-oriented environment—to design service interfaces, it’s interesting to note that the job isn’t terribly technical. It requires technical understanding, but to an equally high degree it requires understanding of business issues and business needs. This is probably not a profile that very well matches the profile of most of today’s application architects.

Technical-Infrastructure Architect
This role isn’t directly involved in software development. The technical infrastructure exists for deployment of the solutions of the solution architect, which means that the solution architect and the technical infrastructure architect should work together to ensure safe and productive deployment and operation of the system.

Enterprise Architect
The enterprise architect role collects all of the other architect roles—with the business strategy architect role as the only exception—within it. You could argue that enterprise architecture consists of business architecture, solution architecture, and technical infrastructure architecture. You could also argue that additional architecture roles could be included; security architecture and organization architecture are two good examples.

Read the full article.

Leave a Reply