{"id":72,"date":"2013-11-14T18:13:16","date_gmt":"2013-11-14T18:13:16","guid":{"rendered":"http:\/\/agilerasmus.com\/wordpress\/?p=72"},"modified":"2019-02-05T10:43:21","modified_gmt":"2019-02-05T09:43:21","slug":"sprint-planning-framework","status":"publish","type":"post","link":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/","title":{"rendered":"Sprint planning framework"},"content":{"rendered":"<p>In the following I\u2019ll describe a way of adopting story points and also how to put them into a context that have been tried in \u201creal life\u201d.<\/p>\n<p>The framework is very generic and should be adoptable in other contexts than the ones that I\u2019ve tried. It handles the full cycle from \u201ccustomers request feature X\u201d to \u201ccustomer receives feature X\u201d.<\/p>\n<p>I\u2019ve used the following concepts:<\/p>\n<ul>\n<li>Responsibilities: Grooming\/Refinement, Sprinting<\/li>\n<li>Phases: Scoping of new stuff, Plan, Pre-sprint, Sprint, Done<\/li>\n<li>Ceremonies: Screening, P.O. Prioritisation, Sprint Planning, Demo and Retro<\/li>\n<\/ul>\n<p>You can find it all in the illustration in the top of this text. In the next section, I\u2019ll describe each concept.<\/p>\n<p><strong>Grooming\/Refinement<\/strong><\/p>\n<p>Grooming\/refinement is the task of taking a user request and breaking it down into something that can be handed over to the developers prior to sprint planning. The primary responsible is the Product Owner (or Product Owner Team).<\/p>\n<p><strong>Sprinting<\/strong><\/p>\n<p>Sprinting is the task of taking the output of grooming\/refinment and turning it into features that the customer receives at the end of the sprint. The primary responsible is the team and scrum master.<\/p>\n<p><strong>Scoping of new stuff<\/strong><\/p>\n<p>Every time a customer request is received it is added to a product backlog. This backlog serves as an archive of requests. The request is recorded with an initial size guess (perhaps in t-shirt sizes S,M,L,XL or cost range) and other detailes needed for planning and prioritization.<\/p>\n<p><strong>Plan<\/strong><\/p>\n<p>Periodically the product backlog is prioritized and a tentative release plan is maintained. The items on the product backlog are broken down into smaller pieces that can be built within one sprint. This is done in cooperation between the Product Owner and the team members. In order to break down the items it\u2019s important to capture the ready criterias (what is needed to start this item) and done criterias (how do we assert that the item is completed) for the item. Once the break down has occured the team nominates each new entry with a relative size (such as story points). Please note that it\u2019s important to sequence the work by prioritization\/rank and pay close attention to the release plan; don\u2019t break down items that are scheduled for distants sprints &#8211; focus on the near future!<\/p>\n<p><strong>Pre-sprint<\/strong><\/p>\n<p>Before each sprint planning session, the Product Owner sets a scope for the coming sprint. This is done by looking at the historical through put of the team. He then generates a vision statement (or pitch if you will) that can be communicated on the sprint planning session.<\/p>\n<p><strong>Sprint<\/strong><\/p>\n<p>The team works on the items that has been chosen for the current sprint at the sprint planning session. During the sprint planning session the team breaks down items from the product backlog and adds it to the sprint backlog until capacity is sufficiently covered (consider load factor and capacity of the team). Scrum Master is responsible for following up on estimates and removing\/identifing issues and impediments on the way.<\/p>\n<p><strong>Done<\/strong><\/p>\n<p>After the sprint is over and the Product Owner has approved all completed (done) items the Scrum Master reflects on the gathered data in cooperation with the team at the retrospective meeting. The data to be reflected are story point throughput, detailed estimates vs. actual time consumption, etc.<\/p>\n<p><strong>Screening<\/strong><\/p>\n<p>The Product Owner is responsible for screening the incoming requests: Are the requests relevant for the product and is the business willing to pay \u201cthe price\u201d for the request?<\/p>\n<p><strong>P.O. Prioritization<\/strong><\/p>\n<p>The Product Owner is responsible for prioritising and ranking the product backlog and aligning this with the release plan. The team should only be presented with one single list of prioritised\/ranked items. It\u2019s the job of the Product Owner to aggregate this list from external prioritisation.<\/p>\n<p><strong>Sprint Planning<\/strong><\/p>\n<p>The team calculates the capacity for the coming sprint and define a load factor. From this a range of items are broken down until the capacity of the team is covered sufficiently.<\/p>\n<p><strong>Demo<\/strong><\/p>\n<p>After sprint completition all finished (done) items are presented and approved by the Product Owner. It\u2019s important to only demonstrate items that are 100 % done.<\/p>\n<p><strong>Retrospective meeting<\/strong><\/p>\n<p>For each sprint the team conducts a sprint retrospective meeting with a focus on continous improvement. Both in terms of the internal process in the team but also other factors may prove important. Remember to note down action points and assign responsible persons for implementing the change!<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>In the following I\u2019ll describe a way of adopting story points and also how to put them into a context that have been tried in \u201creal life\u201d. The framework is very generic and should be&#8230;<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":73,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true},"categories":[3],"tags":[6,12],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v17.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Sprint planning framework - @agilerasmus<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sprint planning framework - @agilerasmus\" \/>\n<meta property=\"og:description\" content=\"In the following I\u2019ll describe a way of adopting story points and also how to put them into a context that have been tried in \u201creal life\u201d. The framework is very generic and should be...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/\" \/>\n<meta property=\"og:site_name\" content=\"@agilerasmus\" \/>\n<meta property=\"article:published_time\" content=\"2013-11-14T18:13:16+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-02-05T09:43:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2016\/12\/planning.jpg?fit=500%2C230&#038;ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"500\" \/>\n\t<meta property=\"og:image:height\" content=\"230\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/#website\",\"url\":\"https:\/\/agilerasmus.com\/wordpress\/\",\"name\":\"@agilerasmus\",\"description\":\"agile coach, trainer and scrum master\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/agilerasmus.com\/wordpress\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-GB\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#primaryimage\",\"inLanguage\":\"en-GB\",\"url\":\"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2016\/12\/planning.jpg?fit=500%2C230&ssl=1\",\"contentUrl\":\"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2016\/12\/planning.jpg?fit=500%2C230&ssl=1\",\"width\":500,\"height\":230},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#webpage\",\"url\":\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/\",\"name\":\"Sprint planning framework - @agilerasmus\",\"isPartOf\":{\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#primaryimage\"},\"datePublished\":\"2013-11-14T18:13:16+00:00\",\"dateModified\":\"2019-02-05T09:43:21+00:00\",\"author\":{\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/#\/schema\/person\/cc0de41731dfcf8697fd64dadadcf096\"},\"breadcrumb\":{\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/agilerasmus.com\/wordpress\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sprint planning framework\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/#\/schema\/person\/cc0de41731dfcf8697fd64dadadcf096\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/agilerasmus.com\/wordpress\/#personlogo\",\"inLanguage\":\"en-GB\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/024753e28bdb374a97740a4d5572755e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/024753e28bdb374a97740a4d5572755e?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"url\":\"https:\/\/agilerasmus.com\/wordpress\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sprint planning framework - @agilerasmus","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/","og_locale":"en_GB","og_type":"article","og_title":"Sprint planning framework - @agilerasmus","og_description":"In the following I\u2019ll describe a way of adopting story points and also how to put them into a context that have been tried in \u201creal life\u201d. The framework is very generic and should be...","og_url":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/","og_site_name":"@agilerasmus","article_published_time":"2013-11-14T18:13:16+00:00","article_modified_time":"2019-02-05T09:43:21+00:00","og_image":[{"width":500,"height":230,"url":"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2016\/12\/planning.jpg?fit=500%2C230&ssl=1","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Estimated reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/agilerasmus.com\/wordpress\/#website","url":"https:\/\/agilerasmus.com\/wordpress\/","name":"@agilerasmus","description":"agile coach, trainer and scrum master","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/agilerasmus.com\/wordpress\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-GB"},{"@type":"ImageObject","@id":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#primaryimage","inLanguage":"en-GB","url":"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2016\/12\/planning.jpg?fit=500%2C230&ssl=1","contentUrl":"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2016\/12\/planning.jpg?fit=500%2C230&ssl=1","width":500,"height":230},{"@type":"WebPage","@id":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#webpage","url":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/","name":"Sprint planning framework - @agilerasmus","isPartOf":{"@id":"https:\/\/agilerasmus.com\/wordpress\/#website"},"primaryImageOfPage":{"@id":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#primaryimage"},"datePublished":"2013-11-14T18:13:16+00:00","dateModified":"2019-02-05T09:43:21+00:00","author":{"@id":"https:\/\/agilerasmus.com\/wordpress\/#\/schema\/person\/cc0de41731dfcf8697fd64dadadcf096"},"breadcrumb":{"@id":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/agilerasmus.com\/wordpress\/sprint-planning-framework\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/agilerasmus.com\/wordpress\/"},{"@type":"ListItem","position":2,"name":"Sprint planning framework"}]},{"@type":"Person","@id":"https:\/\/agilerasmus.com\/wordpress\/#\/schema\/person\/cc0de41731dfcf8697fd64dadadcf096","name":"admin","image":{"@type":"ImageObject","@id":"https:\/\/agilerasmus.com\/wordpress\/#personlogo","inLanguage":"en-GB","url":"https:\/\/secure.gravatar.com\/avatar\/024753e28bdb374a97740a4d5572755e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/024753e28bdb374a97740a4d5572755e?s=96&d=mm&r=g","caption":"admin"},"url":"https:\/\/agilerasmus.com\/wordpress\/author\/admin\/"}]}},"jetpack_featured_media_url":"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2016\/12\/planning.jpg?fit=500%2C230&ssl=1","jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8dzln-1a","jetpack-related-posts":[{"id":973,"url":"https:\/\/agilerasmus.com\/wordpress\/story-points-a-tool-for-better-planning\/","url_meta":{"origin":72,"position":0},"title":"Story points \u2013 a tool for better planning","date":"January 13, 2021","format":false,"excerpt":"Traditional exhaustive estimation sessions are on the rebound within development teams. They have started adopting relative measures, known as Story Points, in order to become more effective in the estimation session and more precise in planning their releases. Story points are a relative measure that can be used for agile\u2026","rel":"","context":"In &quot;English&quot;","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2021\/01\/velocity-e1610090772717.png?fit=556%2C351&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":564,"url":"https:\/\/agilerasmus.com\/wordpress\/handling-dependencies-with-nexus\/","url_meta":{"origin":72,"position":1},"title":"Nexus exoskeleton","date":"November 22, 2017","format":false,"excerpt":"One of the trending buzz-words within agile software development is \u201cscaling\u201d. This has been discovered by the gurus within agile processes and we currently see heaps of frameworks popping up. Each of these frameworks pose a solution to scaling work across several teams. But what does scaling actually mean and\u2026","rel":"","context":"In &quot;English&quot;","img":{"alt_text":"","src":"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2017\/11\/workplace-1245776_960_720.jpg?fit=960%2C640&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1049,"url":"https:\/\/agilerasmus.com\/wordpress\/relationship-between-agile-and-scrum\/","url_meta":{"origin":72,"position":2},"title":"Relationship Between Agile and Scrum","date":"June 23, 2021","format":false,"excerpt":"Did you know that it is possible to perform Scrum without being Agile \u2013 and being Agile is not about following Scrum? \u00a0Many falsely assume that they are Agile simply since they perform Scrum in their daily work. It\u2019s a basic assumption, which may have consequences to the success of\u2026","rel":"","context":"In &quot;English&quot;","img":{"alt_text":"","src":"https:\/\/i1.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2021\/06\/hands-1917895_1280.png?fit=1200%2C900&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":276,"url":"https:\/\/agilerasmus.com\/wordpress\/hands-on-sprint-planlaegning\/","url_meta":{"origin":72,"position":3},"title":"Hands-on: Sprint planl\u00e6gning","date":"July 25, 2016","format":false,"excerpt":"L\u00f8berne st\u00e5r klar ved startpositionerne, skoene er kridtet og ruten m\u00e5lt op; men ved du hvordan du kommer succesfuldt i m\u00e5l? Gennem oceaner af coaching sessioner med et hav af Scrum teams har jeg set mange forskellige m\u00e5der at planl\u00e6gge et sprint - b\u00e5de gode og d\u00e5rlige. Ligesom i mange\u2026","rel":"","context":"In &quot;Dansk&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":55,"url":"https:\/\/agilerasmus.com\/wordpress\/doing-scrum-or-being-agile\/","url_meta":{"origin":72,"position":4},"title":"Doing Scrum or being agile?","date":"September 11, 2014","format":false,"excerpt":"Did you know that it is possible to perform Scrum without being Agile - and being Agile is not about following Scrum?I recently participated in a discussion about the differences between the two concepts: Agile and Scrum. Many falsely assume that they are Agile simply due to the fact that\u2026","rel":"","context":"In &quot;English&quot;","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2016\/12\/img_4432.jpg?fit=374%2C562&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":600,"url":"https:\/\/agilerasmus.com\/wordpress\/scrum-ordbog\/","url_meta":{"origin":72,"position":5},"title":"Scrum ordbog","date":"January 20, 2018","format":false,"excerpt":"Gunther Verheyen vedligeholder en glimrende ordbog over vigtige begreber fra Scrum. Jeg har i det nedenst\u00e5ende fors\u00f8gt at overs\u00e6tte den til dansk, da jeg over tid har oplevet mange misforst\u00e5elser. Overs\u00e6ttelse af begrebers betydning: Burn-down Chart: diagram der viser nedskrivning af udest\u00e5ende arbejde i forhold til tid. Burn-up Chart: diagram\u2026","rel":"","context":"In &quot;Dansk&quot;","img":{"alt_text":"","src":"https:\/\/i2.wp.com\/agilerasmus.com\/wordpress\/wp-content\/uploads\/2018\/01\/women-1209678_960_720.jpg?fit=960%2C640&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]}],"_links":{"self":[{"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/posts\/72"}],"collection":[{"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/comments?post=72"}],"version-history":[{"count":2,"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/posts\/72\/revisions"}],"predecessor-version":[{"id":807,"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/posts\/72\/revisions\/807"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/media\/73"}],"wp:attachment":[{"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/media?parent=72"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/categories?post=72"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/agilerasmus.com\/wordpress\/wp-json\/wp\/v2\/tags?post=72"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}