Difference between revisions of "Digital Enablement Development Release Cycle"

From wiki
Jump to navigation Jump to search
Line 3: Line 3:
  
  
The Digital Enablement Development (DED) Division continuously develops, tests and releases enhancements and fixes for its applications throughout their life cycle. There are four stages of development, testing and release for a new web application: Pilot, Alpha, Beta and Official release.  
+
The Digital Enablement Development (DE-D) Division continuously develops, tests and releases enhancements and fixes for its applications throughout their life cycle. There are four stages of development, testing and release for a new web application: Pilot, Alpha, Beta and Official release.  
  
Before entering the development process, DED will determine if an existing open source software exists that meet the business, technical and user requirements for the application. If none meet the requirements, DED will look into developing the new application, starting with an minimal viable product (MVP) where they will continue to iterate on the application to add additional features and functionalities.   
+
Before entering the development process, DE-D will determine if an existing open source software exists that meet the business, technical and user requirements for the application. If none meet the requirements, DE-D will look into developing the new application, starting with an minimal viable product (MVP) where they will continue to iterate on the application to add additional features and functionalities.   
  
For the pilot phase, DED will either test the selected open source software to decide if it meets the initial requirements, or will test the newly developed MVP. The new tool will then enter the Alpha stage where the majority of the new development and design work for the new tool is completed. After all the initial necessary features are developed and tested in Alpha, the new tool will enter the Beta stage for any final bug fixes and enhancements required before the official release.  
+
For the pilot phase, DE-D will either test the selected open source software to decide if it meets the initial requirements, or will test the newly developed product MVP and/or future releases, based on product requirements. The new tool will then enter the Alpha stage where the majority of the new development and design work for the new tool is completed. After all the initial necessary features are developed and tested in Alpha, the new tool will enter the Beta stage for any final bug fixes and enhancements required before the official release.  
  
 
  {| class="wikitable"
 
  {| class="wikitable"
 
|-
 
|-
 
|'''What is a minimal viable product?'''
 
|'''What is a minimal viable product?'''
In product development, the minimum viable product (MVP) is a technique where a new product, web app or website is developed with just enough features to create value to real users and to satisfy early adopters. It is the the most pared down version of a product that can still be released. It provides a way to gather usage patterns and to get direct feedback from real users, helping us make informed decisions about further product development. The final, complete set of features is only designed and developed after considering feedback from the product's initial users. 
+
In agile product development, the minimum viable product (MVP) is a bare-bones version of a new product that contains a minimum amount of features (usually 1 or 2) and that allows a team to get initial feedback from a small group of users with the least effort.
 
 
An MVP has three key characteristics:
 
* It has enough value that people are willing to use it or buy it initially.
 
* It demonstrates enough future benefit to retain early adopters.
 
* It provides a feedback loop to guide future development.
 
 
|}
 
|}
  
 
==Pilot==
 
==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 user needs, and business and technical requirements, 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.<ref>Rouse, Margaret''. “What Is Pilot Program (Pilot Study)? - Definition from WhatIs.com.”'' SearchCIO, June 2013, searchcio.techtarget.com/definition/pilot-program-pilot-study.</ref> Pilot is sometimes referred to as Pre-Alpha.<ref>“Software Release Life Cycle.” ''Wikipedia'', Wikimedia Foundation, 7 Oct. 2018, en.wikipedia.org/wiki/Software_release_life_cycle#Pre-alpha.</ref>  
+
DE 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 user needs, and business and technical requirements, before the tool undergoes a more comprehensive development by the DE team. It is a short-term, experimental phase to see how the large-scale service may work in practice.<ref>Rouse, Margaret''. “What Is Pilot Program (Pilot Study)? - Definition from WhatIs.com.”'' SearchCIO, June 2013, searchcio.techtarget.com/definition/pilot-program-pilot-study.</ref> Pilot is sometimes referred to as Pre-Alpha.<ref>“Software Release Life Cycle.” ''Wikipedia'', Wikimedia Foundation, 7 Oct. 2018, en.wikipedia.org/wiki/Software_release_life_cycle#Pre-alpha.</ref>  
  
During this stage, the scope of the project is developed, including user needs, business and technical requirements. User requirements are determined through research, testing and analysis of our user base. From the project scope, the DED team defines a Minimum Viable Product (MVP) to be developed for an Official release. The MVP will not have every feature planned for the tool, only the features required to make the tool valuable for the user and business. Further features and enhancements which add value to the tool will be developed after the Official release.  
+
During this stage, the scope of the project is developed, including user needs, business and technical requirements. User requirements are determined through research, testing and analysis of our user base. From the project scope, the DE-D team defines a Minimum Viable Product (MVP) to be developed for an Official release. The MVP will not have every feature planned for the tool, only the features required to make the tool valuable for the user and business. Further features and enhancements which add value to the tool will be developed after the Official release.  
  
'''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 being developed. 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.
+
'''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 DE team uses both of these Pilot testing methods depending on what makes the most sense for the tool being developed. 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. If no open-source application meets the project's user needs, and business and technical requirements, DCD will develop an entirely new application.
+
If the open-source application being tested is unsuitable, a different application will be Pilot tested. If no open-source application meets the project's user needs, and business and technical requirements, DE will develop an entirely new application.
  
 
'''The following tools are in Pilot phase:'''
 
'''The following tools are in Pilot phase:'''
Line 34: Line 29:
  
 
==Alpha==
 
==Alpha==
Once it is determined if DCD will use a certain open-source application or develop a new application, 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.   
+
Once it is determined if DE will use a certain open-source application or develop a new application, 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.   
  
If using an open-source application, DCD will remove features that do not meet our users' needs, and change the design to align with the [[Aurora|Aurora design system]]. Features may be added to the open-source application if necessary, but the main focus is to make the application stable for the user base. If creating an entirely new application, features are developed by the DCD team.  
+
If using an open-source application, DE will remove features that do not meet our users' needs, and change the design to align with the [[Aurora|Aurora design system]]. Features may be added to the open-source application if necessary, but the main focus is to make the application stable for the user base. If creating an entirely new application, features are developed by the DE team.  
  
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 that affect the functionality of the tool.<ref>“What Is Alpha Testing? An Early Alarm for Defects.” ''Software Testing Help'', 7 June 2018, www.softwaretestinghelp.com/alpha-testing/.</ref> The DCD team also focuses on accessibility testing during this stage.
+
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 that affect the functionality of the tool.<ref>“What Is Alpha Testing? An Early Alarm for Defects.” ''Software Testing Help'', 7 June 2018, www.softwaretestinghelp.com/alpha-testing/.</ref> The DE team also focuses on accessibility testing during this stage.
  
 
When in Alpha, the tool is functional but may not include all of the enhancements that 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.<ref>Christensson, Per. "Alpha Software Definition." ''TechTerms''. Sharpened Productions, 05 April 2013. <<nowiki>https://techterms.com/definition/alpha_software</nowiki>>.</ref>
 
When in Alpha, the tool is functional but may not include all of the enhancements that 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.<ref>Christensson, Per. "Alpha Software Definition." ''TechTerms''. Sharpened Productions, 05 April 2013. <<nowiki>https://techterms.com/definition/alpha_software</nowiki>>.</ref>
Line 46: Line 41:
  
 
==Beta==
 
==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.<ref>“What Is Beta Testing? A Complete Guide.” ''Software Testing Help'', 7 June 2018, www.softwaretestinghelp.com/beta-testing/.</ref> 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.  
+
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.<ref>“What Is Beta Testing? A Complete Guide.” ''Software Testing Help'', 7 June 2018, www.softwaretestinghelp.com/beta-testing/.</ref> The DE 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 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<ref>“Beta Software.” ''Beta Software Definition'', 5 Apr. 2013, techterms.com/definition/beta_software.</ref>.
 
Beta development uses the feedback provided by 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<ref>“Beta Software.” ''Beta Software Definition'', 5 Apr. 2013, techterms.com/definition/beta_software.</ref>.
Line 54: Line 49:
  
 
==Official Release==
 
==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. User research is routinely conducted to see which new features will enhance the tool and how the usability of the tool can be improved. After Official release DCD continues to develop and apply these features, enhancements and improvements. Additionally support is provided, and bug fixes are applied throughout the entire life of a tool.
+
When all necessary features and design are developed and implemented to the new tool, it is officially released. As the DE works in an Agile environment an official release does not mean that development on the tool ends. User research is routinely conducted to see which new features will enhance the tool and how the usability of the tool can be improved. After Official release DE continues to develop and apply these features, enhancements and improvements. Additionally support is provided, and bug fixes are applied throughout the entire life of a tool.
  
 
'''The following tools have been Officially released:'''
 
'''The following tools have been Officially released:'''

Revision as of 08:53, 29 January 2019


The Digital Enablement Development (DE-D) Division continuously develops, tests and releases enhancements and fixes for its applications throughout their life cycle. There are four stages of development, testing and release for a new web application: Pilot, Alpha, Beta and Official release.

Before entering the development process, DE-D will determine if an existing open source software exists that meet the business, technical and user requirements for the application. If none meet the requirements, DE-D will look into developing the new application, starting with an minimal viable product (MVP) where they will continue to iterate on the application to add additional features and functionalities.

For the pilot phase, DE-D will either test the selected open source software to decide if it meets the initial requirements, or will test the newly developed product MVP and/or future releases, based on product requirements. The new tool will then enter the Alpha stage where the majority of the new development and design work for the new tool is completed. After all the initial necessary features are developed and tested in Alpha, the new tool will enter the Beta stage for any final bug fixes and enhancements required before the official release.

What is a minimal viable product?

In agile product development, the minimum viable product (MVP) is a bare-bones version of a new product that contains a minimum amount of features (usually 1 or 2) and that allows a team to get initial feedback from a small group of users with the least effort.

Pilot

DE 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 user needs, and business and technical requirements, before the tool undergoes a more comprehensive development by the DE 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]

During this stage, the scope of the project is developed, including user needs, business and technical requirements. User requirements are determined through research, testing and analysis of our user base. From the project scope, the DE-D team defines a Minimum Viable Product (MVP) to be developed for an Official release. The MVP will not have every feature planned for the tool, only the features required to make the tool valuable for the user and business. Further features and enhancements which add value to the tool will be developed after the Official release.

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 DE team uses both of these Pilot testing methods depending on what makes the most sense for the tool being developed. 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. If no open-source application meets the project's user needs, and business and technical requirements, DE will develop an entirely new application.

The following tools are in Pilot phase:

Alpha

Once it is determined if DE will use a certain open-source application or develop a new application, 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.

If using an open-source application, DE will remove features that do not meet our users' needs, and change the design to align with the Aurora design system. Features may be added to the open-source application if necessary, but the main focus is to make the application stable for the user base. If creating an entirely new application, features are developed by the DE team.

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 that affect the functionality of the tool.[3] The DE team also focuses on accessibility testing during this stage.

When in Alpha, the tool is functional but may not include all of the enhancements that 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]

The following tools are in Alpha phase:

  • Directory

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 DE 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 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].

The following tools are in Beta phase:

Official Release

When all necessary features and design are developed and implemented to the new tool, it is officially released. As the DE works in an Agile environment an official release does not mean that development on the tool ends. User research is routinely conducted to see which new features will enhance the tool and how the usability of the tool can be improved. After Official release DE continues to develop and apply these features, enhancements and improvements. Additionally support is provided, and bug fixes are applied throughout the entire life of a tool.

The following tools have been Officially released:

  • GCWiki

References

  1. Rouse, Margaret. “What Is Pilot Program (Pilot Study)? - Definition from WhatIs.com.” SearchCIO, June 2013, searchcio.techtarget.com/definition/pilot-program-pilot-study.
  2. “Software Release Life Cycle.” Wikipedia, Wikimedia Foundation, 7 Oct. 2018, en.wikipedia.org/wiki/Software_release_life_cycle#Pre-alpha.
  3. “What Is Alpha Testing? An Early Alarm for Defects.” Software Testing Help, 7 June 2018, www.softwaretestinghelp.com/alpha-testing/.
  4. Christensson, Per. "Alpha Software Definition." TechTerms. Sharpened Productions, 05 April 2013. <https://techterms.com/definition/alpha_software>.
  5. “What Is Beta Testing? A Complete Guide.” Software Testing Help, 7 June 2018, www.softwaretestinghelp.com/beta-testing/.
  6. “Beta Software.” Beta Software Definition, 5 Apr. 2013, techterms.com/definition/beta_software.