Home » The Genesis of DAS Architecture

The Genesis of DAS Architecture

When developing the DAS Architecture, we focused on building software applications more efficiently. We identified a set of goals for the new architectural framework to minimize effort, maximize flexibility, and ensure sustainability.

Goals

  • Eliminate code, not hide it
  • If we can’t eliminate the code, make it easy to customize
  • Use data-driven logic instead of writing code
  • Integrate data across the business, not silo it in applications/services
  • Build sustainable solutions designed to change

With these goals in mind, we established a set of architecture and design principles that laid a firm foundation for the DAS Architecture.

Architecture Principles

  • Security and privacy by design in every component​
  • Defense in depth with overlapping security mechanisms
  • Maintain a consistent interface so that services can be easily composed
  • Maintain and enforce a well-defined separation of concerns between components
  • Single dependency between peripheral services and Data at Rest​
  • Implement generic components that promote reusability
  • Converge on the best available technology and platform
    • Manage a minimal “best of breed” stack​ for your organization
    • Standardize how each technology is used and share best practice
  • Update architecture as better technologies become available
  • Focus on sustainability in the face of constant change:
    • Business needs
    • Technology innovation
    • People

Design Principles

  • Design reusable components that can be easily configured using data
  • Small services that are easily built, tested, deployed, maintained, and replaced​
  • Avoid writing code where possible​
  • Fault tolerant implementation to reduce errors​
  • Extensive error logging to isolate errors​
  • Automated testing to increase and maintain code quality
  • Can be deployed with High-Availability
  • Can be BOTH Vertically and Horizontally scalable
  • Use automated CI/CD pipeline tools