In application software development, a Data Agnostic Service is defined as:
A service interface where the data content of a record is passed using an agnostic mechanism (such as untyped XML or JSON)
- The service interface can pass any type of data
- The service implementation can process any type of data
What is data agnostic Services architecture?
- DAS Architecture is the next evolution of:
- Micro Service Architecture
- Domain Driven Design
- Agile DevOps
- All data agnostic services are grouped into loosely coupled service areas with ONE well-defined concern:
- Data at Rest – Securely storing data (e.g. records, files, OLAP Cubes, etc.)
- Data Presentation – Generating an “on demand” user experience
- Data in Action – Executing workflow
- Data in Motion – Securing transport with 3rd Parties
- As data moves between services, you should:
- Enforce security and privacy rules BEFORE data crosses any service boundary
- Apply layered “defense in depth” monitoring and auditing
- All services have direct access to the latest version of a record in “Data at Rest”
- Service implementations should be data driven and not hard coded
- “Plug and play” components that can be configured during deployment
- Generic data driven logic where possible to process any type of record
- Custom coded only when the business logic can’t be data driven efficiently
- Easily upgraded or replaced to create a sustainable solution
- As well as being data agnostic, a true DAS Architecture should also:
- Be platform and technology agnostic
- Utilize the latest Agile, Development, Security and Operations (DevSecOps) processes
Why go beyond micro-service architecture?
- The DAS Architecture eliminates the need:
- For defining artificial service boundaries
- Such as Customer, Order, Invoice, etc.
- For coarse-grained services, eventual consistency, or caching
- For even creating separate services for: Customer, Order, Invoice etc.
- For defining artificial service boundaries
- Any type of data can be:
- Stored in a single Data at Rest service
- Securely shared with users through a single Data Presentation service
- Any workflow operation can:
- Securely access the latest version of any required data
- Write the results of the operation back to common storage
- Can be deployed as its own completely independent service
- The DAS Architecture is inherently more secure and sustainable because:
- There is only one implementation of the core services for storing and presenting data
- All workflow operation services are completely independent