A solution architect in information technology is a practitioner of solution architecture. Typically part of the solution development team, the solution architect is responsible for translating the requirements created by functional analysts into the architecture for that solution and describing it through the set of architecture and design artifacts. Those artifacts are then used by the rest of the development team to implement the solution. The process of defining architecture by the solution architect often involves selection of the most appropriate technology for the problem being solved.
Overview of the role
An individual performing the role of a solution architect focuses on the conversion of certain requirements into the architecture and design that ultimately constitute the blueprint for the solution being developed. In that process, the solution architect usually relies on design patterns known from their previous engagements, published reference architectures and on the guidance provided by enterprise architecture. In their efforts, solution architects balance the architectural concerns of the projects with the concerns of the enterprise under which the project is being executed.
The solution architect is often considered the leader of the development team. As such, he or she is expected to provide motivation and guidance to the entire development team during the systems development life cycle. The solution architect needs to ensure buy-in from the development team so that the team is motivated to match the detailed design of the solution to the higher-level architecture.
Solution architects play an important role in ensuring that the solution architecture aligns with the roadmaps established by the enterprise architecture, and that it adheres to the enterprise architecture principles. Solution architects are both a consumer and contributor to enterprise architecture collateral. Often, the patterns and guidance that are developed by solution architects become reusable in a broader enterprise architecture context.
Positioning solution architects in relation to enterprise architects
An enterprise architect's deliverables are usually more abstract than a solution architect's, but that is not always the case. The main distinction between the enterprise architect and the solution architect lies in their different motivations. The enterprise architect is primarily employed in the design, planning and governance of strategic and cross-organisational rationalisation or optimisation of an enterprise's services, processes or components. The solution architect is primarily employed to help programme and project managers in the design, planning, and governance of implementation projects of any kind.
A solution architect may have a reporting line to an enterprise architect, but the influence the enterprise architect team has on solution architects depends on an organisation's policies and management structure. So, the extent to which a solution architect's work derives from enterprise architect's road maps will vary from 0 to 100 percent.
When the solution architect starts and stops depends on the funding model for the process of solution identification and delivery. For example, an enterprise may employ a solution architect on a feasibility study, or to prepare a solution vision or solution outline for an invitation to tender. A supplier may employ a solution architect at "bid time", before any implementation project is costed or resourced. Both may employ a solution architect to govern an implementation project, or play a leading role within it.
- Breaking Down Software Development Roles, an Internet.com Developer eBook, 2006 Jupitermedia Corp.
- R. Bogue Anatomy of a Software Development Role: Solution Architect, [online] Available: http://www.developer.com/mgmt/article.php/3504496
- Mistrík Ivan, Antony Tang, Rami Bahsoon, Judith A. Stafford. (2013), Aligning Enterprise, System, and Software Architectures. Business Science Reference.