DevOps Product Lifecycle

Published by Max on

  1. [plan] Sprint begins with a Planning session. ( Dev [Back End, UI, Database], QA, UX, TechWriters)
    1. Evaluate feedback from the previous deployment and set priorities for the next sprint. Incorporate results from:
      1. User input ( Tool Intercom) / Support
      2. QA
      3. Google Analytics
      4. Teams ( retrospectives)
    2. Sprint Fill-up ORDER by issue type:
      1. Security
      2. Postmortems
      3. QA-classified-critical
      4. User feedback/ Support feedback
      5. GA rage clicks
      6. Team determined
    3. [design]
      1. Write user stories for selected priorities and break them down into tasks.
      2. Assign tasks to sprint.
      3. Each story has a special DocTask for describing the functionality to test for QA. Each story has a related DocStory for TechWriters team (Tool JIRA)
      4. The DocStory is NOT assigned to the TechWriters’ sprint until the corresponding development story is closed by QA. (Docs behind the code by sprint)
      5. TechWriters have their own sprint board with DocStory Items
      6. Some Stories will have a UX Design task. (Tool Sketch, Photoshop) They are initially assigned to UX until done then forwarded to developers.
        1. DevOps report on code static analysis (Tool Veracode), code dynamic analysis (Tool Veracode), security report, pipeline improvement reports, stats on pipeline stages performance, PEN test report (Tool BugCrowd), progress on fixing vulnerabilities found.
  2. [develop Back End/UI] Developers write code using GitHub Flow
    1. Create your individual branch from MASTER named {yourLogin-JIRA item #}
    2. Check your code into your branch. (Tool GitHub)
    3. CI picks up your change and generates a build (Tool TeamCity, msbuild, nant)
    4. Build status, unit test pass/fail  and Code coverage % reported to developer (Tool NCover, Nunit )
    5. Iterate 2 – 4 until all unit tests are passing and code  coverage percentage reaches defined % value.
    6. Open a pull request and invite at least 2 peers from your team and at least 1 peer from a team(s) integrating with your feature.
    7. Iterate 2 – 6 until all pull request issues are resolved.
    8. Merge your feature complete code to MASTER
    9. CI triggers a BUILD and DEPLOY to STAGE.
    10. Perform manual or automated integration tests to confirm feature is working as expected on STAGE.
    11. Iterate 2 – 10 until feature is working as required.
    12. Describe feature specifically noting how it should be tested in the related DocTask Jira item, set the story status to “Dev Done” and assign the story to QA. Make sure your GitHub commits are referenced in the Story.
  3. [develop] UX
    1. Create mock-ups and designs.
    2. Post mock-ups on Confluence with detailed description of user flow.
    3. Mark story as “UX Ready” and assign the story to the relevant dev team.
  4. [test] QA
    1. Cover “Dev Done” stories with automated testing. (tool Selenium webdriver)
      1. Story coverage Autotest includes Functional and feature End-to-End testing.
      2. If autotest fails, check test validity with developer and return story to stage 2.2 by assigning back to developer if needed.
    2. Run continuous autotest suites  on STAGE (Smoke, Acceptance, ALL).
    3. Run continuous autotest suites on PROD, monitor performance. Communicate with DevOps on critical alerts.
    4. Reactivate corresponding JIRA feature task and return to developer to finish.
    5. Features which are passing automated testing are accepted and corresponding JIRA TechWrite items assigned to docs.
  5. [Develop Docs]
  6. Restrospective
  7. DEvops monitor infrastructure and security, performance, impact of PROD autotest suite on prod, newrelic monitoring application logs and http error code, performance, infrastructure logs (Tool Azure Monitor), bastion host, keyvault Azure access controls to PROD and TEST subscriptions.


Categories: Uncategorized

1 Comment

A WordPress Commenter · September 17, 2017 at 4:12 pm

Hi, this is a comment.
To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.
Commenter avatars come from Gravatar.

Comments are closed.