The Software Development Lifecycle (SDLC) consists of the following steps:

  • Software design changes are documented in a JIRA Epic by the Senior Architect in charge of the project.
  • Each epic is broken down into individual JIRA tickets and assigned an engineer.
  • Engineer completes the development in a GIT feature or bug branch and submits a pull request (PR) when completed.
  • Submission of a PR triggers a Continuous Integration (CI) process that runs set of unit and integration tests.
  • The PR is reviewed by a senior engineer and merged when accepted.
  • The merge is done against GIT master, which is then branched into a dedicated release branch when a release is cut.

Code (PR) Review

Code is checked for the following:

  • Meets design requirements
  • Passes all unit and integration tests
  • Impact on security policy
  • Coding style

Deployment Process

All Zuar products are versioned using a semantic versioning scheme (major-minor-point).  Major version changes represent significant redesigns of the product.  Minor numbers represent a standard set of changes and occurs approximately quarterly.  Point releases indicate minor fixes for issues found after deployment and don't contain any new features.

All changes in a release are documented in general in the change log and release notes.  Details of the release are documented in the corresponding JIRA ticket which is linked to both the PR and GIT commit for easy reference.