{"id":948,"date":"2015-11-05T07:14:51","date_gmt":"2015-11-05T15:14:51","guid":{"rendered":"http:\/\/angryweasel.com\/blog\/?p=948"},"modified":"2015-11-05T07:15:15","modified_gmt":"2015-11-05T15:15:15","slug":"scope-and-silos","status":"publish","type":"post","link":"https:\/\/angryweasel.com\/blog\/scope-and-silos\/","title":{"rendered":"Scope and Silos"},"content":{"rendered":"<p><b><\/b><\/p>\n<p>I\u2019ve watched a lot of teams try to be more agile or more adaptive, or just move to faster shipping cadence. It has taken me a while, but I think I see a pattern, and the hard stuff boils down to two things.<\/p>\n<p>Scope and Silos<\/p>\n<h4><\/h4>\n<h4>Scope<\/h4>\n<p>Scope, in this context, is everything that goes into a feature \/ user story. For many developers in the previous century, this meant getting the thing to compile and s<em>ort-of<\/em> work, and then letting test pound quality into it. That worked fine if you were going to spend months finding and fixing bugs, but if you want to ship every week, you need to understand scope, and figure out a way to deliver smaller pieces that don\u2019t lower customer value.  <\/p>\n<p>Scope includes architecture, performance, tests, telemetry, review, analysis, interoperability, compatibility, and many, many other things beyond \u201csort-of works\u201d. There may not be work to do for all of these items, but if you don\u2019t consider all of them for all stories, you end up with an application where half of the features are incomplete in some way. If half of your application is incomplete, are you ready to ship? <\/p>\n<h4>Silos<\/h4>\n<\/p>\n<p>The second \u201cproblem\u201d I see \u2013 mostly in teams transitioning from predictive development models are silos (or strict adherence to the team ownership). You can find these teams by asking people what they do. They\u2019ll say, \u201cmy team owns shimmery blue menus\u201d, or \u201cI own the front page\u201d. When you have a team full of people who all own an isolated piece of the product, you very likely will have a whole lot of stories \u201cin progress\u201d at once, and you end up with the first problem above. <\/p>\n<p>I\u2019ve frequently told the story of a team I was on that scheduled (what I thought was)&nbsp; a disproportionate number of features for a release an a specific area. When I asked why we were investing so much in that area, I was told that due to attrition and hiring, that the team that owned the area was much larger than the other teams. <\/p>\n<p>If you\u2019re shipping frequently \u2013 let\u2019s say once a week, you want every release to have more value to the customer than the previous release. Value can come from stability or performance improvements, or from new features or functionality in the product. On a team of twenty people, delivering twenty new stories is probably not a great idea. Failing to finish any of those stories and delivering no new functionality is worse. <\/p>\n<p>So pick the top 3 (ish) stories, and let the team deliver them together. Forget about who reports to who, and who owns what. Figure out what\u2019s most important for the customer, and enable <em>the team<\/em> to deliver value. Everyone may not be involved in delivering a story each release (there\u2019s bound to be be fundamental, infrastructure, and other similar work that needs to be done). That\u2019s ok \u2013 let the team self-organize and they\u2019ll do the right thing. <\/p>\n<p>In other words, I think a lot of improvement to be discovered by defining work better, and limiting work in progress. Not rocket science, but often forgotten.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I\u2019ve watched a lot of teams try to be more agile or more adaptive, or just move to faster shipping cadence. It has taken me a while, but I think I see a pattern, and the hard stuff boils down to two things. Scope and Silos Scope Scope, in this context, is everything that goes&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-948","post","type-post","status-publish","format-standard","hentry","category-allposts"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/posts\/948","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/comments?post=948"}],"version-history":[{"count":0,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/posts\/948\/revisions"}],"wp:attachment":[{"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/media?parent=948"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/categories?post=948"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/angryweasel.com\/blog\/wp-json\/wp\/v2\/tags?post=948"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}