Virtual Regional Office (VRO) Overview - department-of-veterans-affairs/abd-vro GitHub Wiki

Document Purpose: To provide a catalog of VRO offerings along with links to more detailed documentation. This page will be updated regularly to ensure it contains the most current information.


Welcome to the VRO software platform! The VRO team is here to support you as a new partner product team getting up and running in VRO.

👋 Who is the VRO team?

We are a software platform team in the OCTO Benefits Portfolio, and we support partner teams building products that improve claim processing for digitally submitted (ie. va.gov) claims. Together, these products form the 'Virtual Regional Office' product suite.

We work to ensure that teams building in VRO have access to shared knowledge, processes, and tools, allowing you to quickly build and validate ideas that improve the VA's employee-facing claims process.

Chat with us and follow along in DSVA Slack: #benefits-vro-support.

Meet the team:

🛠 VRO Features, Tools, and Support

VRO provides a software development environment for Benefits Portfolio teams to quickly integrate with existing VA services and deploy to the VA's Lighthouse Delivery Infrastructure (LHDI) platform. In service of this goal, we offer key features relevant to claims processing products, tools to expedite your development process, and the support, guidance, and subject matter expertise of our team members.

🌱 VRO is evolving! VRO is a new software platform, and will continue to grow and mature alongside our partner products. We collaborate with product teams to understand your application's needs and evolve VRO services and tools to meet them while incorporating them with the holistic needs of the product suite.

Features

Event-based, scalable microservice architecture

VRO implements an event-driven architecture with Queue-Processor components that act like an internal microservice, modularizing functionalities so that each can be updated and maintained more easily. These components are connected together using well-tested and stable Enterprise Integration Patterns (EIP) tools (such as Apache Camel) so that we can focus on VRO functionality and less on “glue code”. This approach promotes low software coupling and, as a result, simplifies debugging and maintenance.

Reusable software patterns

To help expedite time-to-deployment and maintain consistency between products, VRO provides reusable software patterns that implement VRO Software Conventions. VRO offers libraries and encourages reuse of software patterns to minimize onboarding, diagnosing, and development time.

VA system integrations

Claims processing products need to access and update claim data in order to deliver desired outcomes, which requires integrating with other VA systems. VRO offers a growing number of integrations with VA systems (such as Lighthouse APIs, BIP APIs, and BGS) and other services (such as Slack). Leveraging VRO's existing integration services could save many weeks (if not months) of work per integration.

Database and Redis cache

VRO implements an instance of LHDI's Amazon RDS database for persisting data, as well as a Redis cache to temporarily store and track data.

API gateway

VRO's API Gateway provides a single location to access all APIs provided within VRO, regardless of implementation language. To expose APIs for each domain, the API Gateway offers a Swagger UI to inspect API offerings, retrieving the OpenAPI spec for the selected API from domain-specific containers and presenting it in a Swagger UI.

Tools

Established development process

VRO partner teams can get up and running quickly using our established development process with Gradle utilities and Github Actions workflows to automate code testing, Docker image creation, and housekeeping tasks.

Learn more about:

Flexible deployment configurations

For teams building in VRO, flexible deployment configurations and processes ease deployment under the VA's cATO (continuous authority to operate). The build and deployment pipeline incorporates the required Secure Release process and scanning, which minimizes software vulnerabilities and keeps the software up-to-date.

Learn more about:

Support

Software conventions

The VRO team develops, maintains, and expands our Software Conventions to help partner teams jump start their development, reduce time-to-deployment, and maintain consistency across products in the VRO product suite.

Inherited Continuous Authority to Operate (cATO)

Traditional ATO processes can add weeks or months of coordination and overhead before an initial product launch, but VRO benefits from Lighthouse Delivery Infrastructure's continuous ATO (cATO) process to stay in compliance while being able to deploy frequently to production. Products within the VRO product suite benefit further by inheriting VRO's ATO -- we incorporate your product scope into our cATO process so that you don't have to start from scratch.

Hands-on support and collaboration

The VRO team is here to support our partner product teams, from initial idea validation through development and launch, and with ongoing support and maintenance of a stable production environment where your product can grow and scale. We work iteratively to support new requirements and improve the maintainability and sustainability of the ABD-VRO codebase, with built-in DevOps to ensure VRO is operational and scaling as needed and team members available to help onboard partner teams, review Pull Requests, and offer technical support, product guidance, and design standards.