Scenario 4: Deploying Refactoring Changes

Scenario Objectives

The objective of this scenario is to deploy refactoring changes to the corporate web site of Qlarius Health Insurance.

Scenario Overview

Scenario Information

Pre-Requisites

  1. Create a work area on your local machine for the user Wendy, for example:

  2. C:\streams\JAVA_BRANCHA_STR\wendy

  3. Log into the web client as a user that has the privileges to promote and deploy baselines to any stage and area, for example, the tool administrator, typically dmsys.

  4. Take a tip baseline   of the stream JAVA_BRANCHA_STR.

  5. To deploy the files in the stream to all deployment areas, promote and deploy the baseline as follows:

  6. a    Select the baseline and on the toolbar click Promote.

    b    In the Next stage field check that SIT is selected.

    c     Click Next.

    d    To deploy now, check that the option Perform deployments is set to ’as soon as possible’.

    e    In the Areas(s) for deployment field check that the LCL_SIT_JBRNCHA_AREA03 deployment area is selected.

    f      Click Next.

    g    A summary of the promotion and deployment activities and command that will be performed is displayed.

    h    Click Finish.

    i       Repeat steps ’a’ to ’h’ for the other stages and deployment areas:

          QA: LCL_QA_JBRNCHA_AREA03

          PRE-PROD: LCL_PRE-PROD_JBRNCHA_AREA03

          LIVE: LCL_LIVE_JBRNCHA_AREA03

  7. Log out of the web client.

Running this Scenario

Action

Procedure

The release manager raises enhancement requests

Refactoring changes are required to the corporate web site of Qlarius Health Insurance. Rita, the release manage, raises two enhancement requests to manage the change:

  • The first request is a refactoring change to create a resources directory and move the file main.css from the website directory to the new directory.

  • The second request is an enhancement to main.css.

  1. Log into the Dimensions CM web client as Rita.

  2. Switch to the following stream: QLARIUS:JAVA_BRANCHA_STR

  3. In the Request view, on the toolbar click New and select CR.

  4. The New Request dialog box appears.

  5. In the Title field enter: Create resources directory and move CSS file

  6. In the Detailed description field enter a description.

  7. On the Attributes tab, from the Severity/Priority list select a value.

  8. Click Submit and click Close.

  9. The new request is added to Rita’s request inbox with the following ID:

    QLARIUS_CR_n

    By default the request is at the DEV stage when it is raised.

  10. Repeat steps 3-7 to create the second request and use the title Modify CSS file.

The release manager delegates the request to the team lead

Rita delegates the requests to the development team lead, Ted, whose team is responsible for maintaining the web site.

  1. Select both requests and on the toolbar click Delegate.

  2. The Delegate wizard appears.

  3. Check that the Capability option is set to Secondary.

  4. From the Role to Delegate list select IMPLEMENTOR and click Next.

  5. In the ’Candidate users authorized for role assignment’ list select Ted and click Add.

The wizard closes automatically. Dimensions CM sends an email to Ted notifying him that requests have been added to his Request inbox.

The release manager actions the requests to their next state

Rita actions the requests to their next state, UNDER WORK.

  1. Select the requests and on the toolbar select Action.

  2. The Action multiple requests dialog box appears.

  3. Click Finish.

  4. The requests are removed from Rita’s request inbox.

  5. Log out of the web client.

The development team lead primes a child task from each request

Ted reads the email, views the request in his Request inbox, and primes a separate child task from each request.

  1. Log into the web client as Ted.

  2. Switch to the following stream: QLARIUS:JAVA_BRANCHA_STR

  3. In the Request view select the Request inbox.

  4. Select the first request that was raised by Rita, Create resources directory and move CSS file.

  5. On the toolbar click Prime and select Task.

  6. The Prime Request dialog box appears.

  7. Click Submit and then Close.

  8. The new child task is added to Ted’s request inbox with the following ID:

    QLARIUS_TASK_n

    By default the child task is at the DEV stage when it is raised.

  9. To prime a child task from the second request, Modify CSS file, repeat steps 4-6.

The development team lead delegates the tasks to a web developer

Ted delegates both tasks to a web developer, Wendy.

  1. Select both tasks and on the toolbar click Delegate.

  2. The Delegate wizard appears.

  3. Check that the Capability option is set to Secondary.

  4. From the Role to Delegate list select IMPLEMENTOR and click Next.

  5. In the ’Candidate users authorized for role assignment’ list select Wendy and click Add.

The wizard closes automatically. Dimensions CM sends an email to Wendy notifying her that requests have been added to her Request inbox.

The development team lead actions the tasks to their next state

Ted actions the tasks to their next state, UNDER WORK.

  1. Select both child tasks and on the toolbar select Action.

  2. The Action multiple requests dialog box appears.

  3. Click Finish.

  4. The tasks are removed from Ted’s request inbox.

  5. Log out of the web client.

The web developer updates her local work area

Wendy, the web developer, reads the emails and checks her Request inbox. She updates her local work area from the website folder.

  1. Log into the web client as Wendy.

  2. Switch to the following stream: QLARIUS:JAVA_BRANCHA_STR

  3. Change Wendy’s work area to the one that you created earlier (see the pre-requisites at the start of this scenario).

  4. In the Items view, in the navigation pane select the Dirs tab, expand Qlarius Underwriter and select website.

  5. On the toolbar click Update.

  6. The Update from Stream dialog box appears.

  7. Click Next and then Finish.

  8. Click Close.

The web developer makes some refactoring changes

In Wendy’s local work area do the following:

  1. In the website folder create a new subfolder called resources.

  2. Move main.css from the website folder to the resources folder.

The web developer delivers the refactoring changes

Wendy delivers the refactoring changes to Dimensions CM and relates them to the first task.

  1. In the web client, on the navigation pane, select the website folder (on the Dirs tab of the Items view).

  2. On the toolbar click Deliver.

  3. The Deliver to Stream dialog box appears.

  4. Check that the option Moves/Renames is selected.

  5. Click Next.

  6. The following changes types should be selected:

    • Qlarius Underwriter\website\main.css (Deletion)

    • Qlarius Underwriter\website\resources (Addition)

    • Qlarius Underwriter\website\resources\main.css (Addition)

  7. Click Next.

  8. In the Relate to Request(s) field click Select.

  9. The Select Request wizard appears.

  10. From the Product name list select QLARIUS.

  11. From the Type name list select TASK.

  12. Click Next.

  13. Select the task Create resources directory and move CSS file and click Finish.

  14. In the Deliver to Stream dialog box click Finish.

  15. Click Close.

The refactoring changes are delivered to Dimensions CM.

The web developer verifies that the refactoring changes were deployed

Deploy by default is enabled for the DEV web application deployment area so when Wendy delivered the refactoring changes they were automatically deployed. She checks that deployment was successful.

  1. Select the Deployment view.

  2. To only display information for the current stream do the following:

  3. a    In the navigation pane click the filter button in the top right corner.

    b    Select Show Current Stream.

  4. Select the History tab.

  5. In the navigation pane expand the DEV stage node and select the LCL_DEV_JBRNCHA_AREA03 web application deployment area.

  6. In the content pane verify that the main.css was successfully deployed.

  7. The Event Result column should display Succeeded.

  8. To browse the DEV web application deployment area, in the My Current Project view expand Deployment Areas > DEV Stage > LCL_DEV_JBRNCHA_AREA03 > Qlarius Underwriter > website.

  9. In the navigation pane verify that there is a folder called resources.

  10. Select the resources directory and in the content pane verify that main.css was deployed.

The web developer modifies the file

In Wendy’s local work area modify main.css in the resources directory. For the purpose of this scenario make a minor edit, for example, add a comment to the top of the file.

The web developer delivers the modification to Dimensions CM

Wendy delivers the modified file to Dimensions CM relates it to the second task.

  1. In the web client, in the Items view, on the Dirs tab expand Qlarius Underwriter and select the resources folder.

  2. On the toolbar click Deliver.

  3. The Deliver to Stream dialog box appears.

  4. Click Next.

  5. Check that main.css is selected and click Next.

  6. In the Relate to Request(s) field click select.

  7. The Select Request wizard appears.

  8. From the Product name list select QLARIUS.

  9. From the Type name list select TASK.

  10. Click Next.

  11. Select the task Modify CSS file and click Finish.

  12. In the Deliver to Stream dialog box click Finish.

  13. Click Close.

Make a note of the latest revision of main.css.

The web developer verifies that the modification was deployed

Wendy checks that deployment was successful.

  1. Select the Deployment view.

  2. Select the History tab.

  3. In the navigation pane expand the DEV stage node and select the LCL_DEV_JBRNCHA_AREA03 web application deployment area.

  4. In the content pane verify that the main.css was successfully deployed a second time.

  5. The Event Result column should display Succeeded.

  6. To browse the DEV web application deployment area, in the My Current Project view expand Deployment Areas > DEV Stage > LCL_DEV_JBRNCHA_AREA03> Qlarius Underwriter > website > resources.

  7. Select the resources directory and in the content pane verify that the latest revision of main.css is deployed.

The web developer delegates the tasks to the team lead for peer review

Wendy delegates the tasks to Ted for peer review.

  1. In the Requests view select the Request inbox.

  2. Select both tasks and on the toolbar click Delegate.

  3. The Delegate wizard appears.

  4. Check that the Capability option is set to Secondary.

  5. From the Role to Delegate list select REVIEWER and click Next.

  6. In the ’Candidate users authorized for role assignment’ list select Ted and click Add.

The wizard closes automatically. Dimensions CM sends an email to Ted notifying him that tasks have been added to his Request inbox.

The web developer actions the tasks to their next state

Wendy actions the tasks to their next state, PEER REVIEW.

  1. Select the first child task and on the toolbar select Action.

  2. The Action wizard appears.

  3. In the New State section check that the To next state field is set to PEER REVIEW.

  4. Click Next.

  5. In the Actual completed date field enter a date.

  6. In the Actual development effort (hours) field enter a number.

  7. Click Finish.

  8. The task is removed from Wendy’s Request inbox.

  9. Repeat steps 1-6 for the second child task.

  10. Log out of the web client.

The team lead does a peer review and actions the tasks to their final state

Ted has read his emails, seen the tasks in his Request inbox, and done a peer review of the refactoring changes. He actions both tasks to their final state, CLOSED.

  1. Log into the web client as Ted.

  2. In the Requests view select the Request inbox, select both tasks, and on the toolbar click Action.

  3. The Action wizard appears.

  4. Click Finish.

The child tasks are removed from Ted’s Request inbox.

The team lead promotes and deploys the requests and tasks to the SIT stage

To perform system integration testing, Ted promotes and deploys the requests and tasks to the SIT stage and web application deployment area. Ted promotes both requests in the same operation and lets Dimensions CM automatically deploy the refactoring changes in the correct sequence. Dimensions CM does the following:

  • Creates the resources directory and moves main.css from the website directory to the resources directory.

  • Deploys the latest revision of main.css to the resources directory.

Note: If you select multiple requests, or a request with child requests, Dimensions CM automatically resolves the refactoring changes. This applies to both manual and automatic (deploy by default) deployments.

  1. In the Request view select both parent requests.

  2. On the toolbar click Promote.

  3. The Promote wizard appears.

  4. Check that the option Promote child requests is selected. This promotes and deploys the child tasks with their parent requests.

  5. In the Next stage field check that SIT is selected.

  6. Click Next.

  7. To deploy now, check that the option Perform deployments is set to ’as soon as possible’.

  8. In the Areas(s) for deployment field select the SIT LCL_SIT_JBRNCHA_AREA03 deployment area.

  9. Note: If both areas are selected, deselect SIT LCL_SIT_JBRNCHA_AREA01.

  10. Click Next.

  11. A summary of the promotion and deployment activities and command that will be performed is displayed.

  12. Click Finish.

The team lead verifies that promotion and deployment operations were successful

Ted verifies that promotion and deployment operations were successful and that the refactoring changes were deployed to the SIT web application deployment area.

  1. Select the Deployment view and check that only the current stream is displayed.

  2. Select the History tab and in the navigation pane select the SIT stage node.

  3. In the content pane verify that both requests were promoted successfully from DEV to SIT.

  4. In the navigation pane expand the SIT stage node and select the LCL_SIT_JBRNCHA_AREA03 deployment area.

  5. In the content pane verify that all the requests and child tasks were deployed successfully.

  6. To browse the SIT web application deployment area, in the My Current Project view expand Deployment Areas > SIT Stage > LCL_SIT_JBRNCHA_AREA03 > Qlarius Underwriter > website.

  7. In the navigation pane verify that there is a folder called resources.

  8. Select the resources directory and in the content pane verify that the latest revision of main.css is deployed.

Ted performs system integration testing.

The team lead promotes the requests and tasks to the QA stage

 

System integration testing has been completed successfully so Ted promotes the requests and tasks to the QA stage. Deploy by Default is not enabled so the requests and tasks cannot be automatically deployed to the QA deployment area.

  1. In the Requests view select the requests.

  2. On the toolbar click Promote.

  3. The Promote wizard appears.

  4. Check that the option Promote child requests is selected.

  5. In the Next stage field check that QA is selected.

  6. Click Next.

  7. Deploy by Default is not enabled so no deploy options are available.

  8. Click Next.

  9. A summary of the promotion activity and command that will be performed is displayed.

  10. Click Finish.

  11. Dimensions CM sends an email to the QA manager, Tao, notifying her that a promotion has been performed.

  12. In the Deployment view select the History tab and in the navigation pane select the QA stage node.

  13. In the content pane verify that both requests were promoted successfully from SIT to QA.

The team lead actions the requests to their next state

Ted actions the requests to their next lifecycle state, IN TEST, so that QA can test the web site.

  1. On the History tab select the first request and on the toolbar select Action.

  2. The Action wizard appears.

  3. In the New State section check that the To next state field is set to IN TEST.

  4. Click Next.

  5. In the Details of solution given field enter a description.

  6. Click Finish.

  7. Note: The request is removed from Ted’s Request inbox.

  8. Repeat steps 1-5 for the second request.

  9. Log out of the web client.

The QA manager deploys the requests and tasks to the QA deployment area

Tao reads the email and checks her Request inbox. She deploys both requests in the same operation and lets Dimensions CM automatically deploy the refactoring changes in the correct sequence.

  1. Log into the web client as Tao.

  2. Switch to the following stream: QLARIUS:JAVA_BRANCHA_STR

  3. Select the Deployment view and check that the current stream is displayed.

  4. Select the Pending tab.

  5. In the navigation pane expand the QA stage node and select the LCL_QA_JBRNCHA_AREA03 deployment area.

  6. In the content pane, from the Show list select Requests.

  7. Select both requests and on the toolbar click Deploy.

  8. The Deploy wizard appears.

  9. Check that the option Deploy child requests is selected.

  10. Check that the Deploy Stage is set to QA.

  11. Click Next.

  12. To deploy the requests now, check that the option Perform deployments is set to ’as soon as possible’.

  13. In the Areas(s) for deployment field check that the following QA deployment area is selected: LCL_QA_JBRNCHA_AREA03

  14. Click Next.

  15. A summary of the deployment activity and command that will be performed is displayed.

  16. Click Finish.

  17. Select the History tab.

  18. In the content pane verify that the requests and child tasks were successfully deployed to the QA area LCL_QA_JBRNCHA_AREA03.

The QA manger verifies that the refactoring changes were deployed

Tao verifies that the refactoring changes were deployed to the QA web application deployment area.

  1. In the My Current Project view expand Deployment Areas > QA Stage > LCL_QA_JBRNCHA_AREA03 > Qlarius Underwriter > website.

  2. In the navigation pane verify that there is a folder called resources.

  3. Select the resources directory and in the content pane verify that the latest revision of main.css is deployed.

The QA team performs their tests.

The QA manager actions the requests to their final lifecycle state.

QA testing has been completed successfully so Tao closes the enhancement requests.

  1. On the History tab select both requests and on the toolbar click Action.

  2. The Action wizard appears.

  3. Click Finish.

Note: The request are removed from Tao’s request inbox.

The QA manager promotes the requests and tasks to the PRE-PROD stage.

QA testing has been completed successfully so Tao promotes the requests and tasks to the PRE-PROD stage. Deploy by Default is not enabled so the requests and tasks cannot be automatically deployed to the PRE-PROD deployment area.

  1. On the History tab select the requests.

  2. On the toolbar click Promote.

  3. The Promote wizard appears.

  4. Check that the option Promote child requests is selected.

  5. In the Next stage field check that PRE-PROD is selected.

  6. Click Next.

  7. Deploy by Default is not enabled so no deploy options are available.

  8. Click Next.

  9. A summary of the promotion activity and command that will be performed is displayed.

  10. Click Finish.

  11. Dimensions CM sends an email to Rita, the release manager, notifying her that a promotion has been performed.

  12. In the navigation pane select the PRE-PROD stage node.

  13. In the content pane verify that both requests were promoted successfully from QA to PRE-PROD.

  14. Log out of the web client.

The release manager deploys the requests and tasks to the PRE-PROD deployment area

Rita reads the email and checks her Request inbox. She deploys both requests in the same operation and lets Dimensions CM automatically deploy the refactoring changes in the correct sequence.

  1. Log into the web client as Rita.

  2. Select the Deployment view and check that only the current stream is displayed.

  3. Select the Pending tab.

  4. In the navigation pane expand the PRE-PROD stage node and select the LCL_PP_JBRNCHA_AREA03 deployment area.

  5. In the content pane, from the Show list select Requests.

  6. Select both requests and on the toolbar click Deploy.

  7. The Deploy wizard appears.

  8. Check that the option Deploy child requests is selected.

  9. Check that the Deploy Stage is set to PRE-PROD.

  10. Click Next.

  11. To deploy the requests now, check that the option Perform deployments is set to ’as soon as possible’.

  12. In the Areas(s) for deployment field check that the following PRE-PROD deployment area is selected: LCL_PP_JBRNCHA_AREA03

  13. Click Next.

  14. A summary of the deployment activity and command that will be performed is displayed.

  15. Click Finish.

  16. Select the History tab.

  17. In the content pane verify that the requests and child tasks were successfully deployed to the QA area LCL_PP_JBRNCHA_AREA03.

The release manger verifies that the refactoring changes were deployed

 

Rita verifies that the refactoring changes were deployed to the PRE-PROD web application deployment area.

  1. In the My Current Project view expand Deployment Areas > PRE-PROD Stage > LCL_PP_JBRNCHA_AREA03 > Qlarius Underwriter > website.

  2. In the navigation pane verify that there is a folder called resources.

  3. Select the resources directory and in the content pane verify that the latest revision of main.css is deployed.

The release team performs their tests.

The release manager promotes the requests and tasks to the LIVE stage

Testing has been completed successfully so Rita promotes the requests and tasks to the LIVE stage. Deploy by Default is not enabled so the requests and tasks cannot be automatically deployed to the PRE-PROD deployment area.

  1. In the Deployment view, in the navigation pane, select the LCL_PP_JBRNCHA_AREA03 deployment area.

  2. Select the History tab and select the requests.

  3. On the toolbar click Promote.

  4. The Promote wizard appears.

  5. Check that the option Promote child requests is selected.

  6. In the Next stage field check that LIVE is selected.

  7. Click Next.

  8. Rita has the privilege to deploy at the same time as the promotion but chooses not. Do not select any deployment areas.

  9. Click Next.

  10. A summary of the promotion activity and command that will be performed is displayed.

  11. Click Finish.

  12. In the Deployment view select the History tab and in the navigation pane select the LIVE stage node.

  13. In the content pane verify that both requests were promoted successfully from PRE-PROD to LIVE.

The release manager deploys the requests and tasks to the LIVE deployment area

Let’s assume that it is now the regular maintenance period when the LIVE web application deployment area is offline. Rita checks to see what requests are ready to be deployed to the LIVE stage. Rita deploys both requests in the same operation and lets Dimensions CM automatically deploy the refactoring changes in the correct sequence.

  1. Select the Pending tab.

  2. In the navigation pane select the LCL_LIVE_JBRNCHA_AREA03 deployment area.

  3. In the content pane, from the Show list select Requests.

  4. Select both requests and on the toolbar click Deploy.

  5. The Deploy wizard appears.

  6. Check that the option Deploy child requests is selected.

  7. Check that the Deploy Stage is set to LIVE.

  8. Click Next.

  9. To deploy the requests now, check that the option Perform deployments is set to ’as soon as possible’.

  10. In the Areas(s) for deployment field check that the following LIVE deployment area is selected: LCL_LIVE_JBRNCHA_AREA03

  11. Click Next.

  12. A summary of the deployment activity and command that will be performed is displayed.

  13. Click Finish.

  14. Select the History tab.

  15. In the content pane verify that the requests and child tasks were successfully deployed to the QA area LCL_LIVE_JBRNCHA_AREA03.

The release manger verifies that the refactoring changes were deployed

Rita verifies that the refactoring changes were deployed to the LIVE web application deployment area.

  1. In the My Current Project view expand Deployment Areas > LIVE Stage > LCL_LIVE_JBRNCHA_AREA03 > Qlarius Underwriter > website.

  2. In the navigation pane verify that there is a folder called resources.

  3. Select the resources directory and in the content pane verify that the latest revision of main.css is deployed.

End of scenario

   

Scenario Privileges

The tables below list the promotion and deployment privileges required by each user in the scenario.

Promotion privilege

Privilege owner

Required at these stages

REQUEST_PROMOTE_NEXTSTAGE

ITEM_PROMOTE_NEXTSTAGE

Team lead

DEV

SIT

QA Manager

QA

Release Manager

PRE-PROD

Deployment privilege

Privilege owner

Required for these areas

The SIT and LIVE areas are deploy by default areas and no deployment privileges are required.

REQUEST_DEPLOY

ITEM_DEPLOY

QA Manager

LCL_QA_JBRNCHA_AREA03

Release Manager

LCL_PP_JBRNCHA_AREA03