This documentation is for WSO2 App Factory 1.0.0. View documentation for the latest release.

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The life cycle of an application is an important part of the governance process. The App Factory offers a default life cycle lifecycle stages as Development, Testing, Staging and Production. You can configure this default life cycle to suit your needs. For instructions, see Adding/Modifying Life Cycle Stages. App Factory also provides the following default state transitions:

  • Promote : Promote the application to the next stage
  • Demote : Demote the application to the previous stage
  • Retire : Retire the application . This means application when it is outdated and it has no use any more.not used

Figure: Default life-cycles stages and state transitions

Let's see how Follow the steps below to manage your application's life cycle using lifecycle:

  1. Log in to the App Factory portal

...

  • View life-cycle stages of application versions
  • Promote applications across life-cycle stages
  • Demote applications and link to comments and bugs as reasons
  • Set preconditions for life-cycle state transitions
  • View life-cycle history of an application
  • Specify estimated deadlines for an application to be in a given life-cycle stage
    Log in to the App Factory portal, select your application and click the
  1. (for the online version, try https://appfactorypreview.wso2.com).
  2. Select an application from the list of apps that you own or are invited to participate in.
  3. Click the Lifecycle Management tab on the left panel.
  4. The Lifecycle Management window opens with information about each version of the application. For example,
    Image Modified
  5. Using things window, you can manage the life cycles of different versions of an application separately. It
  6. The above screen provides the following information:
    • The version of the application and its current
  7. life-cycle
    • lifecycle stage
    • Estimated end date of
  8. life-cycle
    • lifecycle stage : In order to manage the application delivery expectations, the stage owner (either Developer, QA or DevOps) can provide an expected delivery date.
    • Lifecycle history :

  9. Information
    •  Information about the

  10. life-cycle
    • lifecycle stages the application got promoted from/demoted to and who performed those actions along with timestamps.

    • Lifecycle actions and the checklist items of each action. The defaults are described below:

      Life-cycle StageLife-cycle Actions Checklist Items
      DevelopmentPromote

      Code Completed

      Design Review Done

      Code Review Done

      TestingPromote, Demote

      Test Cases Passed

      Smoke Test Passed

      StagingPromote, Demote

      Automation Tests Passed

      Security Check

      ProductionDemote, RetireVerify No one using the application

Promoting an application

You can promote a particular application branch across various application stages by clicking the Promote icon associated with it. Follow the instructions below to promote an application.

  1. Select the application branch and click the Promote button associated with it.
  2. Depending on the current lifecycle stage the branch, you get a checklist of itemsA checklist appears for you to tick. Without completing the checklist, you cannot promote the application to the next stage. This is to ensure you cannot promote a branch without meeting set standards.
  3. At each stage, the application is automatically built. As part of this build, automatic tests and quality checks can be applied to the code. You can also extend the default build behavior by adding your own tests/checks. One way to do this is by adding a plug-in to Jenkins.

...

If you find a problem in the application like a bug, you can demote it back to the stage where the problem can be fixed (usually Development stage). Follow the instructions below to demote an application.

  1. Select the application branch and click the Demote button associated with it.
  2. You get a list of issues raised against this application in the issues tracking system. You can select one or more of them and/or add a comment to explain why the demotion is done. This helps the developer pinpoint the necessary changes.
  3. Click the Demote to complete.

Information about application promotion and demotion is shown in the application life-cycle lifecycle history.