Webdev/Web Production/Kanban: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 1: Line 1:
[[Category:Webdev|Processes]]
[[Category:Webdev|Processes]]


Last Updated 2013.4.19
Last Updated 2013.7.02


<div class="toclimit-3">__TOC__</div>
<div class="toclimit-3">__TOC__</div>
Line 55: Line 55:


<p>Columns reflect the life cycle of a task. WebProd projects are given default columns. You can adjust columns
<p>Columns reflect the life cycle of a task. WebProd projects are given default columns. You can adjust columns
to match the workflow on your specific project. You should model how your team currently works.</p>
to match the workflow on your specific project, the below is just a suggestion. You should model how your team currently works.</p>


<ul>
<ul>
Line 156: Line 156:
<p>Useful to communicate if a card is blocked by another card or another task.</p>
<p>Useful to communicate if a card is blocked by another card or another task.</p>


<h2>Workflow Overview</h2>
==Workflow Overview==


<p>
The following describes an example workflow for WebProd tasks. Sites are encouraged to develop a flow that fits their specific need. For example: [[Webdev/Web_Production/Kanban/Mozilla.org | mozilla.org]]
The following describes an example workflow for WebProd tasks. Sites are encouraged to develop a flow that fits their specific need. For example: [[Webdev/Web_Production/Kanban/Mozilla.org | mozilla.org]]
</p>


<ol>
    <li><strong>Backlog</strong>
        <ul>
            <li>With some discussion tasks are added to the Backlog and prioritized.</li>
        </ul>
    </li>
    <li>
      <strong>Research &amp; Design</strong>
      <ul>
        <li>Tasks that are being started are moved to this column.</li>
      </ul>
    </li>
    <li>
      <strong>Research &amp; Design: Ready</strong>
      <ul>
        <li>When research &amp; design phase is complete they are marked <strong>ready</strong> with the green checkmark</li>
        <li>Cards that do not require research and design still go into this column and are marked <strong>ready</strong></li>
      </ul>
    </li>   


    <li>
1. '''Backlog'''
      <strong>Coding &amp; In Progress</strong>
* With some discussion tasks are added to the Backlog and prioritized. Only items that should actually be worked on should be added to this column.
      <ul>
** Ready Flag: None. Tasks are assumed ready.
        <li>Task is pulled into this column and worked on.</li>
 
        <li>Bugzilla: Bug should be assigned to whomever is doing the work.</li>
 
      </ul>
 
    </li>
2. '''Research &amp; Design'''
* Tasks that are being started/researched are pulled to this column.
** Ready Flag: Flag applied when ready to be coded, if no R&D needed, still goes into this column and marked ready.
 
 


    <li>
3. '''Coding &amp; In Progress'''
      <strong>Code Review</strong>
* Task is pulled into this column when actively being coded/worked on.
      <ul>
** Ready Flag: Pull request filed or for non-coding ready for review.
        <li>Generally this means pull request filed</li>
        <li>Non coding tasks or items not needing code review skip this column.</li>
      </ul>
    </li>


    <li>
      <strong>Testing</strong>
      <ul>
        <li>Waiting to be tested</li>
        <li>If a coding task: Code is testable on dev or stage.</li>       
        <li>Moved into this column by whomever has done the work</li>
        <li>Bugzilla: Task marked as resolved by whomever did the work.</li>
      </ul>
    </li>


    <li>
      <strong>Testing: Ready</strong>
      <ul>
        <li>When testing is complete task marked as <strong>ready</strong> with the green checkmark.</li>
        <li>Usually done by QA</li>
        <li>Bugzilla: Task marked as verified by whomever QAs</li>
        <li>Any task in the QA column marked 'ready' can go live</li>
      </ul>
    </li>


    <li>
4. '''Code Review'''
      <strong>Done</strong>
* Task is pulled into this column by whomever is doing the Pull Review.
** Ready Flag: Task is merged (PR+), will be on dev at next automatic push. For non coding not used.


      <ul>
        <li>For coding tasks this means confirmed live</li>
        <li>Usually moved into this column by a developer or PM</li>
      </ul>
    </li>


    <li><strong>Archive</strong>
   
        <ul>
5. '''Testing'''
            <li>During cleanup phase live items can be moved to the archive.</li>
* Task is pulled into this column by whomever is doing the QA, either team members or QA. Non coding tasks may skip this column.
        </ul>
** Ready Flag: Passed QA can go live at next push.       
    </li>
  </ol>


<p>The above uses the Kanban 'pull' methodology. Tasks are marked as ready, signaling that it can be worked on. The task is then pulled
into the next column where work occurs. </p>


<p>There are two places where the <strong>ready</strong> flag is used.</p>


<ol>
6. '''Done'''
<li>Signaling a task is ready to be coded/worked on.</li>
* Pulled to this column upon deployment and verification in production environment. For non-coding the task is done.
<li>Signaling a task has passed QA and is cleared to go live.</li>
** Ready Flag: Not Used
</ol>


<p>Given the above workflow the only columns that should contain <strong>ready</strong> flags are <strong>research and design</strong> and <strong>testing</strong>.</p>


<h2>Future Documentation</h2>
<h2>Future Documentation</h2>
<h3>Reports &amp; Informing Improvements</h3>
<h3>Reports &amp; Informing Improvements</h3>
<h3>Github integration</h3>
<h3>Github integration</h3>
canmove, Confirmed users
2,745

edits