Best Practice Analyzer

Implementing checks for Best Practices on a Software Project was something wanted to strive for with TeamPulse. TeamPulse checks your project looking for conditions that may be of a concern to a team.

The Best Practice Analyzer takes a look at your project for some very specific conditions.

TeamPulse currently has the following rules:

  1. Current Bugs Should Be Assigned To An Area
    Assigning bugs to an area help with identification of problematic areas of the project.
  2. Current Iteration Has Bugs / Issues / Risks With No Estimates
    Bugs, Issues and Risks should have estimates in hours. Solving bugs / issues / risks takes from your overall capacity so it is valuable to know how much time you'll have to work on user stories.
  3. Current Stories Are Low or Undetermined Certainty
    Teams should strive to have high certainty on stories prior to implementation. Working on a story which is uncertain may lead to delays and even rework so it is better to spend some time clarifying story description before starting work on it.
  4. Current Stories Are Low or Undetermined Maturity
    Teams should strive to have a high maturity story prior to implementation.
  5. Current Iteration Has Stories With No Acceptance Criteria
    Stories in the current iteration have no acceptance criteria. Stories should have acceptance criteria to help define when it is complete and to aid in test definition.
  6. Current Iteration Has Stories With No Estimates
    All stories should have estimates to provide velocity measurement. It helps answer questions like: Is the sum of estimates for your stories higher than the iteration capacity? Will that story even fit in a single iteration?
  7. Current Iteration Has Stories With No Personas
    To help frame how stories are consumed by users, it is a good practice to associate them with personas.
  8. Current Iteration Has Stories With No Tasks
    Stories are requirements – not work, stories should be decomposed into tasks that represent the work required to implement the requirement in the software.
  9. Current Tasks Have No Estimates
    Tasks should have estimates in hours.
  10. Current Tasks Have Same Best Probable and Worst Case Estimates
    Best case (optimistic), most likely case (realistic), and worst case (pessimistic) estimates for tasks are the same. Rarely is it ever acceptable to have tasks have the same estimate in all three cases.
  11. There Are Done Bugs That Have No Resolution
    Bugs that are in a done state should have a resolution entered for future reference so that you know how you fixed these bugs.
  12. There Are Done Stories That Have Not Done Children Stories or Tasks
    A story can be considered as done when and only if all its children stories are done. Thus, on marking the parent story fulfilled, the status of the sub-stories should also be changed.
  13. Iteration Duration Exceeds 30 Days
    Iterations (leaf level) are longer than 30 days. Iterations should rarely exceed 30 days.
  14. Previous Iterations Contain Work In Progress
    Previous iterations (not counting the current iteration) contains work in progress (work that is not done). Previous iterations should only have done work in them. All other work should be moved forward.
  15. Triaged Bugs Should Be Assigned To An Area
    Bugs that are triaged should also be assigned to an area in order to help with identification of problematic areas of the project.
  16. There Are Stories In The Backlog That Are Marked As Done
    It is important to know in what iteration a story is complete. Setting status values in the backlog is not a good practice and may mean that people have not scheduled the stories appropriately.

 

TeamPulse will be continually adding more and more Best Practices to the product and they are going to be extensible so it will be easy to write your own best practices.

You can access the Best Practice Analyzer by using the ribbon- Best Practices tab > View Best Practices
View Best Practicesenlarge screenshot

Analyze your project

You can select which rules you want to run and then click the “Analyze my project” button. When you perform a project analysis the results are displayed in the analysis results grid.
Best Practice Analyzer screenenlarge screenshot

 

To address an issue found by the Best Practice Analyzer, all you have to do is click on the icon associated with the result, and TeamPulse will take you directly to the subject of the issue. The analysis results will be saved for your project until the next time you perform the analysis, and of course, you’ll have the ability to export the results to HTML, Word, CSV, or ExcelML.

Analysis Resultsenlarge screenshot