BioT CI/CD Process

BioT’s supports implementing and integrating continuous delivery pipelines. A continuous delivery pipeline is the process for getting software from version control right through to system users and end customers.

In pilot and production stages BioT is leveraging Continuous Development and Continuous Integration methodology.
Under this methodology 3 environments are installed:

EnvironmentDescription
DevelopmentThe development environment serves as a dedicated space for developers to author, evaluate, and refine code. It is segregated to guarantee that experimental modifications do not impact either the pilot or production settings. This environment may host multiple variations of your ongoing projects, including works in progress. It may also feature different versions of plugins code, entities, and prospective changes to the data model. Additionally, the availability configurations in this environment are intentionally distinct from those in production to facilitate a more streamlined development process and minimize associated costs.
StagingThe staging environment exclusively houses the finalized version of the product intended for release to either the pilot or production stages. It is equipped with security, resiliency, and availability features that are required in production, thereby enabling rigorous real-world scenario support.
ProductionThe production environment is the live environment where actual users access and use the final version of the platform. It is important to ensure that the production environment is stable and reliable, and that any changes are made carefully and with minimal downtime.
Production environments are monitored closely to detect any errors or performance issues.

Key Reasons for Environment Separation

  1. Risk Mitigation: In both production and pilot stages, the primary objective is to minimize the risk of operational disruptions. Establishing distinct staging and/or production environments ensures that developmental changes or errors do not inadvertently compromise the integrity of the pilot or production phases.
  2. Performance Validation: The staging environment, in PoCs or in Production scenarios allow you to validate the performance of your solution under conditions that closely resemble the eventual live environment. This is crucial for identifying any scalability or reliability issues early on.
  3. Data Isolation: Even in cases where the pilot is internal, it's prudent to keep test data separate from the data generated during the pilot. This ensures clarity in results and maintains data integrity.
    Debugging and Troubleshooting: If any issues arise during pilot or production, they can be more efficiently diagnosed and resolved when the environments are separate. This ensures that the pilot/production progresses smoothly and yields reliable results.
  4. Version Control: The management of software versions is simplified when development and staging/production environments are distinct. This is particularly advantageous when transitioning from the pilot phase to full-scale production, as it enables a more seamless rollout of validated features.