What is solution architecture?
Introduction
It’s the difference between strategy and chaos. Over the years, information technology has evolved in complexity and sophistication. It’s no longer sufficient for an application, in most cases, to be isolated and live on its own without interacting with many other systems and processes to achieve a business function or a capability. With the rise of cloud computing, Software-as-a-Service (SaaS), vendors’ application programming interfaces (APIs), micro-services, and other IT breakthroughs, the need for thoughtful integration and communication between a variety of systems and environments have become paramount to the construction of successful software products to ultimately deliver the desired business features or capabilities. This is where solution architecture comes into the rescue. It’s typical and natural for an enterprise to have multiple applications - whether on premises, on the cloud, or a mix of both – to participate to achieve a single capability or a business process workflow. This last sentence is the opportunity and the challenge for solution architecture. Also, solution architecture plays a critical role in achieving and implementing the enterprise architecture vision and strategy. It’s the middleman between enterprise architecture and software engineering. Solution architecture also can be viewed as the link between business and IT or product owners and developers.
What does solution architecture mean?
Solution Architecture (SA) is responsible for how an IT solution must be tailored to meet business requirements in the most efficient and effective manner. Here are 10 things that come to mind when talking about solution architecture.
1. SA translates enterprise architecture vision and conceptual architecture abstractions into a sound IT solution that meets the business needs such as to add a new capability, enhance an existing capability, or resolve pain points, etc.
2. SA guides the production of functional requirements in collaboration with the business and IT subject-matter experts (SMEs)
3. SA translate functional requirements into artifacts … diagrams and literature that explains the diagrams
4. SA guides the implementation
5. SA avoids technical debt in the solution … this ‘technical debt’ needs its own blog post. I will get to it. I promise.
6. SA ensures that the solution is a step in the right direction that will lead to that target architecture
7. SA is mostly concerned with creating value for the business quickly while simultaneously adhering to the vision and strategy of enterprise architecture
8. SA focuses more on the systems’ boundaries and what and how data travels between components or applications
9. SA assesses and decides on where to source the data from, what happens to it, and where it ends up
10. SA is mindful of the common concerns and best practices regarding data privacy, security, performance, resilience, availability, and scalability
Finally, solution architecture is so pivotal for the delivery of a successful IT solution. Solution architects translate technical business requirements into practical IT solutions while defining the rules of the road and best practices for a successful implementation. Solution architecture practice is an excellent return on investment because it ensures that IT solutions are consistent with and enablers of the vision of enterprise architecture - but also is enabling the business and IT strategy. It behooves every IT organization to place sufficient importance on the practice of solution architecture.