Software Releases are typically comprised of new features and defect corrections. The number of features and / or defect corrections addressed in any release is dependent upon several factors including severity of the issue, timing, development effort required, competitive advantage, etc.
Using agile development, Arts Management Systems strives to be in the position of being able to release a new version at any time to respond to clients in an 'agile' manner. By definition, this means that small, incremental units of work are done at one time, checked in, QA'd and set aside for release. It involves coordination amongst the teams to defines what is working, and what is not, isolate the scope and do a build only on what we determine to be working, even if it does not meet the full intended scope. After all, some working software for the customer is better than none.
That being said, releases are generally of 3 types:
- Development Release: this release typically addresses a very critical need for a specific customer.
- Production Release: this release is made available to customers when an arbitrary number of work items have been completed that meet customer needs, however significant or insignificant in scope. There will generally be at least one functional release per month that will have comprehensive release notes and back-out strategies. Clients do not need to implement the functional release unless there are items of interest to them. Functional releases are alway cumulative so skipping one release and implementing the next always gives the client the cumulative effect of all functional releases.
- Major Release (the major release number is incremented): this release is scheduled to coincide purely with PA DSS certification because the PCI standards council has decided in an arbitrary manner that applications can only increase the release number at the time of their PCI audit. For Arts Management, that will mean a new release number every three years.
The objective is to only include changes that affect PA-DSS Certification status in a Major Release and not more than once per year. A PA-DSS Checklist has been incorporated into our release process to assist in identifying impacts to our payment processes at the onset of a project and throughout the development cycle. Appropriate actions and decisions can be made based upon the assessment during the development cycle.