1. Formulate Acceptance Criteria
    • Analyze the problem we are trying to solve
    • Write up a one or two-page Requirements Document
      • Include a diagram if possible
      • Use the document when validating requirements with the Business
      • Use the document when communicating with QA and Training
    • Come up with a solution
      • Reach out to fellow Admins and/or Developers to brainstorm
      • Document components that will make up the solution
        • plugin, codebase, custom fields, screens, etc.
  2. Come up with a Business Communication Plan
    • Do we need Compliance approval?
    • What users will be affected by the change?
    • Do we need Training involved?
    • Do we create a wiki that will help explain the feature?
    • Inform Support Teams
  3. Once Development is completed, the feature must pass:
    • Unit testing by the developer/admin
    • Dev Demo to Stakeholders
    • Code Review including
      • forms, code-behind
      • custom fields, biz rules
      • custom C# code
    • QA Testing by QA 
    • User Acceptance Testing by Stakeholder
    • Explicit Approval by Stakeholders Ideally via Email with Product Owner and Scrum Master Copied in the email
  4. Come up with a Deployment Plan – Build a list of steps that will be needed in order to deploy the feature depending on the work that was done. For Example:
    • Deploy Master Plugin
    • Import UW Summary Form
    • Import 2 Modified Custom Fields
      • CX.ModifiedFieldOne
      • CX.ModifiedFieldTwo
    • Import 3 New Custom Fields
      • CX.CustomFieldOne
      • CX.CustomFieldTwo
      • CX.CustomFieldThree
    • Import 1 modified Business Rule
      • Auto-Populate Closing Date Rule
  5. Come up with a Roll Back Plan – Build a list of steps that will be needed to put things back the way they were before your deployment. For Example:
    • Rollback Master Plugin
      • Get the latest from Master
      • Increment Version Number
      • Deploy Master Plugin
    • Rollback UW Summary Form
      • Import from Backup made just before deployment
      • Rollback 2 Modified Custom Fields
      • Import from Backup made just before deployment
      • CX.ModifiedFieldOne
      • CX.ModifiedFieldTwo
    • Remove New Custom Fields (if needed)
      • Delete CX.CustomFieldOne
      • Delete CX.CustomFieldTwo
      • Delete CX.CustomFieldThree
  6. Execute Rollback Preparation – For Example:
    • Backup UW Summary form by exporting the form only from Input Form Builder
    • Back up existing Custom Fields and Biz Rules modified by exporting them from Input Form Builder
    • Add all backups in the Jira Story that governs the feature you are working on (source control, separate conversation)
  7. Execute Deployment – Pair Up with someone whenever possible
    • Announce deployment in Release Chat/Team Chat
      • Announce all components and services 
    • Stage your Deployment objects (separate best practice) 
    • Execute Deployment Plan
    • Smoke Test (separate conversation)
    • Be aware of reports of things not working as expected in and around the area that your feature touched
    • Make sure to over Communicate in Release Chat or Telephone and not Email if you have questions or input on any existing issues or outages post your deployment
Posted in Etc

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.