Solutions architecture has gained a reputation for being difficult to define and more technical in comparison to
its counterparts, enterprise and software architecture. Even so, best practices unique to solutions architecture have emerged as new attention is paid to the field.
Despite a lack of consensus on what solutions architecture is, it is an active domain of architecture, both inside and outside the enterprise. Most who know about it agree that solutions architecture is a type of architecture that focuses on planning, directing and implementing solutions to specific problems to meet present and future requirements. Those solutions typically draw upon the design and use of applications, information systems and other technologies.
The solution architect really has to understand the principle of 'good enough is good enough.'
Mike Rosen, chief scientist, Wilton Consulting Group
According to Mike Rosen, chief scientist at architectural consulting firm Wilton Consulting Group, "A solutions architect is basically an architect that is focused on the structure of an overall solution within a broader environment." Depending on the environment, solutions architects use a range of skillsets and approaches to design and test solutions to problems before implementing them. They are likely expected to combine differing technology strategies such as service-oriented architecture (SOA), business process management (BPM) or complex event processing (CEP).
Like all architects, solutions architects rely on certain fundamental principles for a successful project, including the separation of concerns, abstraction and the ability to create conceptual models and formal specifications. But much about successful solutions architecture is specific to the field itself. From a list of best practices for solutions architecture, Rosen offers these tips:
- Have an understanding of how company systems, applications and requirements work together. Organizations already have a portfolio of systems, information contexts and integration requirements in place. The aim of solution architecture is to ensure that a given solution fits within that environment. In order to do so, the architect needs a thorough understanding of how each element of the business works together -- including processes, applications and architectures. "Understand the overall environment that the solution needs to fit in, and then how to construct a specific solution to fit best within that environment to leverage the existing assets and components," says Rosen.
- Take advantage of industry patterns and standards when creating a solution. Good solutions architecture includes up-to-date approaches and strategies, including SOA, BPM, CEP and collaboration. When it comes to creating conceptual models and formal specifications, solutions architects should also use established industry patterns to help. For example, says Rosen, "If you were going to create the definition of a business process, then that business process ought to be defined using the BPM standard."
- Have the right background and experience for the project at hand. When hiring a solutions architect, businesses should choose someone with technical skills and past architecture experience relevant to the work environment. If a solutions architect is not capable of establishing credibility with both IT and businesspeople at the organization, then the project will flounder. "Typically you're going to look for someone who has a variety of different experiences and good communication skills," explains Rosen. "And if there's some particular technical complexity or importance in your organization, you might like them to have some deep experience in that skill set."
- Solve problems on time, and with the given resources. Solutions architecture is not meant to be drawn out over a long period of time. Solutions for current problems should be addressed thoroughly, but quickly. According to Rosen, "The solution architect really has to understand the principle of 'good enough is good enough.' They have to do the best job they can, given the timeframe and resources. They need to be realistic. That's one of the best practices there is."