Digital Enablement Development Release Cycle
This page is a work in progress. We welcome your feedback. Please use the discussion page for suggestions and comments. When the page is approved and finalized, we will send it for translation. |
The Digital Collaboration Division (DCD) uses open-source applications to develop tools, and follows four stages of development and testing (Pilot, Alpha, Beta, Official release) for releasing these tools.
Pilot
DCD may test multiple open-source applications to develop a particular tool. When a tool is in Pilot it means that an open-source application is being tested to see if it can meet the users' needs, before the tool undergoes a more comprehensive development by the DCD team. It is a short-term, experimental phase to see how the large-scale service may work in practice.[1] Pilot is sometimes referred to as Pre-Alpha.[2]
Open Pilot testing means that the potential open-source application is available for real users to test. Closed Pilot testing means that the potential application is only available internally to the team who will be developing the tool. The DCD team uses both of these Pilot testing methods depending on what makes the most sense for the tool which will be developed. However, when possible open Pilot testing is preferred as it includes the user at the earliest stage of development and allows the users to provide feedback.
If the open-source application being tested is unsuitable, a different application will be Pilot tested.
Currently the following tools are in Pilot:
Alpha
After the appropriate open-source application is selected, the tool undergoes Alpha development and testing. During this phase the features and design of the tool are developed based on the user needs determined in Pilot testing.
Alpha testing is done by select users to test the usability and user experience of the tool in development, as well as to find major bugs which affect the functionality of the tool.[3] The DCD team also focuses on accessibility testing during this stage.
When in Alpha the tool is functional but may not include all of the enhancements which will be in the official release. Alpha is complete when all of the necessary features and design are developed and tested, and the tool is ready to be released to the entire user base for testing and feedback.[4]
Currently the following tools are in Alpha:
Beta
After Alpha testing has ended, the tool enters the Beta stage of development and testing. When in Beta the tool is at least 90% completed for the official release. During Beta testing users are asked to provide feedback on the design, functionality, and usability of the tool. Beta testing is also done to find minor bugs, as well as bugs which may have been missed in Alpha testing.[5] The DCD uses open Beta testing to test its tools, meaning that the tool can be used and tested by every user who wishes to participate in testing in a real environment.
Beta development uses the feedback provided by the real users to develop any additional enhancements to the features or design needed to release a tool which is usable with a positive user experience. Bug fixes are also applied during this stage. There may be multiple versions released during the Beta stage[6].
Official Release
When all necessary features and design are developed and implemented to the new tool, it is officially released. As the DCD works in an Agile environment an official release does not mean that development on the tool ends. Further enhancements to the features are developed, support is provided, and bug fixes are applied throughout the entire life of a tool.
References
- ↑ Rouse, Margaret. “What Is Pilot Program (Pilot Study)? - Definition from WhatIs.com.” SearchCIO, June 2013, searchcio.techtarget.com/definition/pilot-program-pilot-study.
- ↑ “Software Release Life Cycle.” Wikipedia, Wikimedia Foundation, 7 Oct. 2018, en.wikipedia.org/wiki/Software_release_life_cycle#Pre-alpha.
- ↑ “What Is Alpha Testing? An Early Alarm for Defects.” Software Testing Help, 7 June 2018, www.softwaretestinghelp.com/alpha-testing/.
- ↑ Christensson, Per. "Alpha Software Definition." TechTerms. Sharpened Productions, 05 April 2013. Web. 15 October 2018. <https://techterms.com/definition/alpha_software>.
- ↑ “What Is Beta Testing? A Complete Guide.” Software Testing Help, 7 June 2018, www.softwaretestinghelp.com/beta-testing/.
- ↑ “Beta Software.” Beta Software Definition, 5 Apr. 2013, techterms.com/definition/beta_software.