Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Managing deployment and configuration tasks in Scrum [closed]

Just wondering how others out there are managing tasks not directly related to fulfilling user stories such as server configuration and application deployment (in a web application environment). Previously I’ve included these activities within the task breakout of a product backlog item but the effort tends to get lost amongst other tasks directly related to fulfilling the user requirements.

Do others create dedicated product backlog for this sort of work? Or roll it into existing requirements under the guise of “required to be potentially shippable”? Or do you not even include this within a Sprint plan? Interested in different approaches out there. Thanks!

like image 222
Troy Hunt Avatar asked Jan 08 '10 02:01

Troy Hunt


People also ask

What is deployment in Scrum?

deployment is not part of Scrum, because Scrum is a framework for developing products, not for delivering them. This means, the deployment in production happens whenever the Product Owner feels like it. Usually he will decide this after the review, because then the product increment is transparent to him.

What are examples of PBI that might be contained in a product backlog?

A Product Backlog Item (PBI) is a single element of work that exists in the product backlog. PBIs can include user stories, epics, specifications, bugs, or change requirements. The Product Owner of an Agile team compiles and prioritizes the product backlog, putting the most urgent or important PBIs at the top.

What is the most important reason to monitor the progress of work items in the iteration?

The iteration review provides a way to gather immediate, contextual feedback from the team's stakeholders on a regular cadence. The purpose of the iteration review is to measure the team's progress by showing working stories to the Product Owner and other stakeholders to get their feedback.


2 Answers

In order for a story to be regarded as "done-done", it needs to be shippable, which includes not just tested but also deployed and configured.

If you have the infrastructure already established then this should be included in your estimates for the story.

If you don't have the infrastructure, then the construction of the build script and deployment system is a story in its own right: except that the "customer" here is a developer or an infrastructure guy, not a developer. So:

As a developer, I need to deploy the XYZ application and verify that it passes its functional tests so that we can regard other stories as complete.

would be a perfectly acceptable story in this context.

Once you have a few of these stories under your belts then you'll know how long they typically take. Estimation of subsequent stories is then much easier.

like image 159
Jeremy McGee Avatar answered Oct 22 '22 21:10

Jeremy McGee


We have a separate task list for tasks like server administration, and plan our deliverable dates around that. For example, through experience I know that I will spend about 2 hours per day doing administrative tasks, so when I tell my project manager that something will take 4 hours he automatically adds ~2 hours to the deliverable date, and lets the CEO know it will take 6 hours (or 1 work day).

Alternatively, some "administrative" tasks are pre-requisites for getting deliverable projects done. For example, if a project includes re-writing a slow part of our website to be more efficient, and part of the problem is that our servers aren't set up to utilize memcached which we need, then setting up and configuring memcached becomes a pre-requisite project to re-writing the code. The reason it's not rolled together is because when we've set up caching properly, then the intensive part of the site may run well enough that we want to insert another important sales-related project beforehand. This keeps it agile.

I think this is relevant: http://joelonsoftware.com/articles/SetYourPriorities.html - specifically towards the end where he outlines his method for prioritizing features.

This article on evidence-based scheduling also seems relevant: http://joelonsoftware.com/items/2007/10/26.html

like image 35
gabrielk Avatar answered Oct 22 '22 23:10

gabrielk