Coder Social home page Coder Social logo

chanakaudaya / solution-architecture-patterns Goto Github PK

View Code? Open in Web Editor NEW
3.2K 200.0 592.0 18.35 MB

Reusable, vendor-neutral, industry-specific, vendor-specific solution architecture patterns for enterprise

Home Page: https://chanakaudaya.github.io/solution-architecture-patterns/

License: Creative Commons Attribution 4.0 International

solutions-architect solutions-engineering enterprise-architecture enterprise-software api-gateway integration security solutions-architecture architecture-patterns architecture

solution-architecture-patterns's Introduction

Solution Architecture Patterns

This repository contains solution architecture patterns which can be reused to build enterprise software systems. Some of these patterns are well established in the industry and some of them are evolving patterns while there is another set which is at conceptual level.

We have released a book to explain the topics discussed in this repository in a greater detail. You can find the link to the book below. Solution Architecture Patterns for Enterprise

Vendor neutral architecture patterns

Industry specific architecture patterns

These patterns are specific to a business domain or an industry. Most of these patterns can be considered as reference archtiectures.

Vendor specific architecture patterns

These patterns are specific to a vendor and some of the terminology used in these diagrams may not be common across other vendors.

Technology selection guides

Related architecture resources

License details

Shield: CC BY 4.0

This work is licensed under a Creative Commons Attribution 4.0 International License.

CC BY 4.0

solution-architecture-patterns's People

Contributors

baskarmib avatar chanakaudaya avatar dunithd avatar ignazio-castrogiovanni avatar jeffreytse avatar lakshikap avatar pamod avatar suhand avatar ttrit avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

solution-architecture-patterns's Issues

Create a separate section for technology selection guides

Is your feature request related to a problem? Please describe.
Sometimes selecting a particular vendor technology is a lengthy process and there are certain different mechanisms people follow when doing so. Coming up with a framework would help architects to align their business requirements along with technical capabilities in a selection process.

Add README file to the vendor-neutral directory

Is your feature request related to a problem? Please describe.
Users has to navigate back to main README file to go through the vendor neutral patterns.

Describe the solution you'd like
Good to have a README file in the vendor neutral patterns directory

Create a solution architecture for Retail Industry

Is your feature request related to a problem? Please describe.
Retail or e-commerce platforms are heavily using enterprise software to run large scale, global businesses. Having a generic solution architecture for this domain would be really useful

Describe the solution you'd like
A solution architecture in a vendor neutral manner which explains various components and how they interact with each other.

Create a solution architecture that can be used in education industry

Is your feature request related to a problem? Please describe.
Education industry is heavily depending on enterprise software solutions to provide high quality education to the community. Having a solution architecture template would be really useful.

Describe the solution you'd like
A solution architecture with the components that are used in education industry.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Provide a solutions architecture pattern on container based deployment

Is your feature request related to a problem? Please describe.
With the rise of microservices architecture and the container based deployment, developing an architecture which explains the components and their interactions would be really useful.
Describe the solution you'd like
The solution should contain different concepts used in container and orchestration world and cover the deployment aspect of different software components.

Create solutions architectures which are specific to vendors

Is your feature request related to a problem? Please describe.
Some technology vendors have solutions architectures which are specific to them. This type of solutions architecture patterns would be useful when working with real enterprise systems.
Describe the solution you'd like
Every vendor has their own terminologies when coming up with solutions architectures using them.

Additional context
Vendor specific architectures can be added as separate folders within this repository.

Create a solution architecture for healthcare industry

Is your feature request related to a problem? Please describe.
Healthcare industry is one industry which is heavily regulated and needs an efficient IT ecosystem to reap the benefits. Having a common architecture helps people to build effective HC systems.

Describe the solution you'd like
A Solution architecture without biased to any vendor.

Provide a solution architecture pattern on hybrid api management

Is your feature request related to a problem? Please describe.
Hybrid API management is becoming more and more relevant in the enterprise. Specially with multi cloud infrastructure and compliance requirements make it a great architecture pattern to adopt.

Describe the solution you'd like
The architecture should cover the components and their relevant tasks with an explanation.

Additional context
Add any reference implementations or vendors who provides support for similar architecture

Change the licensing to CC by 4.0

Since this repository contains ideas and thoughts, better to change the licensing to above.

Thanks Asanka Abeysinghe (WSO2) for the suggestion.

Create a solutions architecture explaining anti corruption layer pattern

Is your feature request related to a problem? Please describe.
Modernizing an enterprise architecture comes with challenges as in the case of any change. Bringing in new components and capabilities should support and interoperate with existing systems at least for some time. Different types of systems may have different behaviours but modern interfaces should be capable of hiding this complexity down under.

Describe the solution you'd like
Anti-corruption layer pattern allows enterprises to build systems which are interoperable while bringing new capabilities.

Create a solution architecture for event driven architecture pattern

Is your feature request related to a problem? Please describe.
Event driven architecture is a common architecture style which is used in the enterprise. Having a proper solution architecture with guidance would help users to build efficient enterprise systems.

Describe the solution you'd like
An architecture diagram along with best practices and use cases would help the audience.

Describe alternatives you've considered
Big data architecture pattern is somewhat similar but not the same.

Additional context
Reference material:
https://docs.microsoft.com/en-us/azure/architecture/guide/architecture-styles/event-driven

Make the README file of the repository consistent

Describe the bug
ReadMe file has different formatting in vendor specific and technology selection guides sections.

Expected behavior
It is good to have the README file in one single format across the sections.

Create a solution architecture explaining the strangler pattern

Is your feature request related to a problem? Please describe.
Enterprises are moving from SOA type of architectures to a more container based, cloud-native, microservices style of architectures. But this shift cannot be made in a lift and shift manner. Rather it needs a timely transition from one architecture to another. Strangler patterns describe the architectural approach which needs to be used in such a scenario.

Describe the solution you'd like
A solution architecture diagram and a detailed description of the challenges of this architecture and guidelines.

Change event driven architecture to event sourced and framework agnostic

Is your feature request related to a problem? Please describe.
Kafka is not the only solution for an event-driven architecture.
I think it would be more valuable to describe an enterprise-level event-sourced architecture that specifically dives into concepts like CQRS and DDD and how they play well with not only decentralization but also with event-sourcing.

Describe the solution you'd like
Remove Kafka and avoid Kafka-specific features.
Add CQRS principles
Add DDD principles

Describe alternatives you've considered
Perhaps leave event driven architecture as the main context but still remove Kafka references.

Additional context

Add a section that links other resources related to technical/solution/business architecture

Is your feature request related to a problem? Please describe.
There are many other great resources available on various aspects of solution architecture. It will be good to link those resources here so that users can explore more on those topics.

Describe the solution you'd like
Add links to other architecture related resources.

Additional context
An example resource is mentioned below.

Create a solutions architecture explaining kubernetes based deployment pattern

Is your feature request related to a problem? Please describe.
Kubernetes has become the de-facto standard when it comes to container orchestration technologies. This pattern should explain the main building blocks of kubernetes and how those components can help on improving the efficiency within enterprise software systems.

Describe the solution you'd like
A solutions architecture diagram along with a description would be useful

Describe alternatives you've considered
A docker swarm based deployment pattern would be an alternative

come up with a solutions architecture for CI/CD processes within enterprise

Is your feature request related to a problem? Please describe.
Continuous Integration and Continuous Deployment are becoming key features within every enterprise software development project. Coming up with an architecture which can be reused to implement CI/CD for the enterprise would help many people
Describe the solution you'd like
The solution should cover 2 aspects.

  • CI/CD for development artifacts like programs, DSL configs, Visual mapping files, etc.
  • CI/CD for configuration artifacts of runtimes

Create an integration platform selection guide

Is your feature request related to a problem? Please describe.
Integration platforms are evolved a lot with the latest advancements in the enterprise IT ecosystem. Selecting such a platform requires a lot of experience and thinking because it acts as the hub of the enterprise systems.

Describe the solution you'd like
Having a guide to choosing an integration platform will help solution architects to build great integration platforms.

Create a solution architecture for Open Banking

Is your feature request related to a problem? Please describe.
Open Banking is becoming a trend in the banking and financial industry with a lot of regulations coming into play across the globe. A proper solution architecture would help people to build open banking solutions.

Describe the solution you'd like
An architecture diagram depicting the components and their interactions without binding to any specific regulatory standard or vendor technology would be highly appreciated.

Add solution pattern for Change Data Capture

Is your feature request related to a problem? Please describe.
Change Data Capture or CDC is becoming a common integration pattern within enterprises. With the increased volumes of data generated at the enterprises, it is becoming a core infrastructure pattern for enterprise systems.

Describe the solution you'd like
Come up with a solution pattern for CDC.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.