{"id":2014,"date":"2016-06-28T17:59:24","date_gmt":"2016-06-28T16:59:24","guid":{"rendered":"https:\/\/yanado.com\/blog\/?p=2014"},"modified":"2019-01-22T11:34:10","modified_gmt":"2019-01-22T10:34:10","slug":"the-ultimate-introduction-to-agile-project-management","status":"publish","type":"post","link":"https:\/\/yanado.com\/blog\/the-ultimate-introduction-to-agile-project-management\/","title":{"rendered":"The Ultimate Introduction To Agile Project Management"},"content":{"rendered":"<p style=\"text-align: center;\"><em>This article was originally published on <a href=\"https:\/\/www.toptal.com\/agile\/ultimate-introduction-to-agile-project-management?utm_source=yanado.com\">Toptal\u00a0Engineering\u00a0Blog<\/a>.<\/em><\/p>\n<p>Our good friends from <a href=\"https:\/\/www.toptal.com\/developers\/blog?utm_source=yanado.com\">Toptal<\/a>\u00a0wrote this masterpiece introduction to Agile Project Management, and we were more than pleased to have it shared with Yanadoers.<\/p>\n<p>So, here it is.<\/p>\n<h2>The Brief<\/h2>\n<p>You\u2019re in charge of delivering your company\u2019s latest and greatest initiative that\u2019s going to change the face of \u201cWidgets International\u201d forever. It\u2019s a software project that\u2019ll engage and enthrall your customers, make your colleague\u2019s lives easier, and make the company millions in revenue. There\u2019s a great deal of anticipation, fervor, excitement, and expectation. You need to get it done as quickly as possible, so your business can start to reap the benefits. The future success of the company depends on you. All eyes are on you. You cannot fail.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2015 aligncenter\" src=\"https:\/\/yanado.com\/blog\/wp-content\/uploads\/2016\/06\/toptal-blog-image-1434464306179-3e614172b37f0d03776aa0ce4ff96fa4.jpg\" alt=\"feedback keeps on track\" width=\"640\" height=\"640\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>At first, you\u2019re thinking to yourself \u201cawesome, I\u2019m up for the challenge. Let\u2019s get this thing done!\u201d. You pause for a moment, step back, and think to yourself \u201cokay, so how do we do this?\u201d. You start to talk to your colleagues and peers. You spend time searching for the best practice <a href=\"https:\/\/en.wikipedia.org\/wiki\/List_of_software_development_philosophies\" rel=\"noopener noreferrer\">software development<\/a> and <a href=\"https:\/\/en.wikipedia.org\/wiki\/Project_management\" rel=\"noopener noreferrer\">project management<\/a> techniques, but the options and approaches are countless. There are acronyms and methodologies aplenty. Notable ones rise to the top. Doubt creeps in. Which one should we use? How can I guarantee success? What if I make the wrong decisions?<\/p>\n<p>When it comes to managing software projects, there\u2019s a heady mix of options supported by a myriad of opinion. Voices from the corners of the room whisper \u201ctry doing it this way\u201d, others shout \u201cthis is the only way to do it\u201d, and the rest just whimper \u201cdon\u2019t manage it at all, just get on with it\u201d. In reality, all those voices speak some truth. But what\u2019s important is working out what\u2019s right for your needs, your team, your business, and your customers.<\/p>\n<h2>Setting the Scene<\/h2>\n<p>There was a time when software project management sat squarely in one of three camps. There were the heavy frameworks that let you make decisions on how you execute and deliver, while offering a structure to maintain control and governance. There were prescriptive sequential methodologies like <a href=\"https:\/\/en.wikipedia.org\/wiki\/Waterfall_model\" rel=\"noopener noreferrer\">Waterfall<\/a> that forced you to plan lengthy projects, understand and commit to all your requirements, design and sign off complex systems, write lots of code, and then test (all before your customer gets to see it for the first time). And finally, the less prescriptive but iterative software development life cycles (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Systems_development_life_cycle\" rel=\"noopener noreferrer\">SDLC<\/a>) that encourage rapid prototyping or larger systems to be designed, built, and delivered in incremental steps, each building on top of the other.<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Agile_software_development\" rel=\"noopener noreferrer\">Agile software development<\/a> and Agile project management were born out of the inadequacies of the waterfall and the benefits of the iterative approaches to software delivery. They can trace their roots to the 1950\u2019s, thought leadership in the 70\u2019s, maturity in the 90\u2019s and adoption through the 00\u2019s. In 2001, a group of practitioners and experts created the <a href=\"http:\/\/agilemanifesto.org\/\" rel=\"noopener noreferrer\">agile manifesto<\/a>, aimed at defining 4 values and 12 guiding principles that seek to embody the spirit of Agile software development and to encourage its evolution. And it has definitely evolved.<\/p>\n<p>Now, simply calling something Agile isn\u2019t particularly helpful. The word, even in a software context, means different things to different people or organizations. There are many facets, definitions, implementations, and interpretations. Each body that embraces agile tends to try to give it its own definition.<\/p>\n<div class=\"sw-tweet-clear\"><\/div><a class=\"swp_CTT style1\" href=\"https:\/\/twitter.com\/share?text=Simply+calling+something+Agile+isn%27t+particularly+helpful.&via=YanadoTool&url=https:\/\/yanado.com\/blog\/the-ultimate-introduction-to-agile-project-management\/\" data-link=\"https:\/\/twitter.com\/share?text=Simply+calling+something+Agile+isn%27t+particularly+helpful.&via=YanadoTool&url=https:\/\/yanado.com\/blog\/the-ultimate-introduction-to-agile-project-management\/\" rel=\"nofollow noreferrer noopener\" target=\"_blank\"><span class=\"sw-click-to-tweet\"><span class=\"sw-ctt-text\">Simply calling something Agile isn&#039;t particularly helpful.<\/span><span class=\"sw-ctt-btn\">Click To Tweet<i class=\"sw swp_twitter_icon\"><\/i><\/span><\/span><\/a>\n<p>Suffice to say that Agile software development and project management are a group of related behaviours, frameworks, techniques, and concepts that fundamentally favor the delivery of the right working software as early and as frequently as realistically possible.<\/p>\n<p>I mentioned earlier that Agile, as applied to software development or project management, are different things. In a nutshell, Agile software development takes care of developing great software in a business as usual (BAU) or project context. Agile project management, on the other hand, takes care of the governance and control required to deliver complex projects including but not limited to software.<\/p>\n<p>There are many Agile software development methods available, such as <a href=\"https:\/\/www.scrumalliance.org\/why-scrum\" rel=\"noopener noreferrer\">Scrum<\/a>, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Kanban_(development)\" rel=\"noopener noreferrer\">Kanban<\/a>, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Extreme_programming\" rel=\"noopener noreferrer\">XP<\/a>, and <a href=\"https:\/\/en.wikipedia.org\/wiki\/Lean_software_development\" rel=\"noopener noreferrer\">Lean Software Development<\/a>. But just as the game of rugby is about more than the scrum, so is Agile. In isolation, these Agile paradigms do not address the full lifecycle of project management required in complex projects such as governance, resourcing, financial, explicit risk management, and many other important project management concepts. For these, you might want to consider <a href=\"http:\/\/www.projectmanagement.com\/Practices\/Agile\/\" rel=\"noopener noreferrer\">PMI Agile<\/a> or <a href=\"https:\/\/www.axelos.com\/best-practice-solutions\/prince2\/prince2-agile\" rel=\"noopener noreferrer\">PRINCE2 Agile<\/a> &#8211; think of it as \u201cGoverned Agility\u201d.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2017 aligncenter\" src=\"https:\/\/yanado.com\/blog\/wp-content\/uploads\/2016\/06\/toptal-blog-image-1434464343416-e013929f1a34966452507a188d8fc6de.jpg\" alt=\"inadequacy of waterfall\" width=\"640\" height=\"641\" \/><\/p>\n<p>&nbsp;<\/p>\n<h2>Why Do We Need To Be Agile?<\/h2>\n<p>Long ago, we roamed the land to gather food and shelter to survive. They were simple needs, but pretty agile. Some time later, countries and economies grew and prospered on the back of the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Industrial_Revolution\" rel=\"noopener noreferrer\">Industrial Revolution<\/a>. This was the birth of management and control and the loss of agility. Now we\u2019re in the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Information_Age\" rel=\"noopener noreferrer\">Information Age or Revolution<\/a>, where businesses employ knowledge workers. Knowledge workers are you, your partners, your colleagues and peers that endeavor to create great solutions to customer, business, social, economic and world problems. Knowledge workers apply analysis, knowledge, reasoning, understanding, expertise, and skills to often loosely defined and changing needs. These businesses and workers need methods and techniques that cannot be met by old Industrial Age processes and procedures. Agile supports interactions.<\/p>\n<p>Virtually no software project can confidently set out at the beginning and know all that it needs in order to deliver valuable working software without change. Change presents both opportunities and risks to the success of a project. Unmanaged opportunities can mean the difference between a great company and an awesome company. Unmanaged risk spells disaster and ruin. Agile manages change.<\/p>\n<p>Adopting agile allows you to be responsive to changing or new requirements. It empowers development teams to be the experts and make decisions supported by an engaged, trusting, and informed business. It enables you to deliver to customers what they really want. Ultimately, it puts you and your organization in control of delivering high quality valuable software that delivers on customer need and expectations whilst extracting a return on your investment dollars as early as possible. Agile creates value.<\/p>\n<p>There is a cost to adopting agile. It doesn\u2019t come for free. Transforming to an agile approach for software delivery can be a hard path to follow. However, if you internalize the agile philosophy, tread carefully, engage the right team with the right attitude, break things down, make it achievable and realistic and respond to feedback, you will reap rewards. Agile emphasizes collaboration.<\/p>\n<p>The following lists some benefits you can expect:<\/p>\n<ul>\n<li>Speed to market<\/li>\n<li>Earlier revenue generation<\/li>\n<li>Regular delivery of real value<\/li>\n<li>Protection for your investment<\/li>\n<li>Data, data, data<\/li>\n<li>Better product quality<\/li>\n<li>Manageable expectations<\/li>\n<li>Greater customer satisfaction<\/li>\n<li>Higher performing teams<\/li>\n<li>Improved visibility on progress<\/li>\n<li>Predictability, transparency, and confidence<\/li>\n<li>Manageable risk<\/li>\n<\/ul>\n<blockquote><p>\u201cSuccess is not final, failure is not fatal: it is the courage to continue that counts.\u201d<\/p><\/blockquote>\n<p>Winston Churchill may never have actually said this, but I think it\u2019s a pretty good summation of Agile. We know Agile is the best foot forward for most projects. It encourages you to strive for success, but we always iterate and keep building on it. Agile will encourage you to fail, but fail early and move on. Having the courage to continue and to build the right solution based on insight informed by your customer is what brings the reward.<\/p>\n<p>The thing to keep in mind is you can tailor Agile to your needs. Use the method and governance that is right for your business. Wherever you start, be true to the content, context, and spirit of the method you use &#8211; keep it vanilla. If you\u2019re just starting out &#8211; <strong>Learn<\/strong>. If you\u2019ve been doing it for a while &#8211; <strong>Understand<\/strong>. If you\u2019re becoming awesome &#8211; <strong>Apply<\/strong>. Finally, if your business and your projects are complex and interdependent &#8211; <strong>Govern<\/strong>. Over time, you and your teams will figure out what works best for your business.<\/p>\n<h3>Feasibility<\/h3>\n<p>So now you\u2019re thinking \u201cokay, I get it. How do I start? Where do I start?\u201d. Well, with all good things, we start at the beginning. And with Agile, it\u2019s by asking yourself \u201cWhat business value do I want to deliver?\u201d. After all, that\u2019s why we undertake projects, to generate business value. In order to establish if the project is worth undertaking to derive the business value, you need to understand whether it is feasible.<\/p>\n<h3 id=\"vision\">Vision<\/h3>\n<p>Is your project projected to increase revenue, enter a new market, acquire more customers, improve customer perception, or make life easier for a given problem you\u2019ve identified? With this in mind, you can state your \u201cVision\u201d.<\/p>\n<ul>\n<li>Your vision may come from different sources &#8211; your own bold startup to fix a common problem, business management strategy, your CEO\u2019s pet project, a specific product team, or even your customer\u2019s needs.<\/li>\n<li>Try to take a step back from your own shoes and \u201csee\u201d what the future looks like with your new product or service in the hands of your customers.<\/li>\n<li>Engage your stakeholders &#8211; the CEO, product guy, and customers. Workshop it, don\u2019t attempt this in isolation. Challenge assumptions and validate arguments.<\/li>\n<li>Write it down, keep it short. Focus on the business value.<\/li>\n<li>Refine it until you all agree the vision resonates with everybody and meets a common interpretation that states where you\u2019re heading.<\/li>\n<li>Your vision, if valid, rarely changes. How you get there most certainly will.<\/li>\n<\/ul>\n<p>People don\u2019t buy what you do, or how you do it. They buy the \u201cwhy\u201d you do it. This is what creates the emotional connection between your business and your customers. The vision will help illustrate this.<\/p>\n<h3 id=\"is-it-feasible\">Is it feasible?<\/h3>\n<p>Feasibility comes in at least a couple of shades. Typically, you\u2019ll want to understand if your vision of a brighter future for your business and customers is both technically feasible and that it\u2019s feasible for your business to make it happen.<\/p>\n<ul>\n<li>If your vision is to make travel to anywhere across the world in under an hour, you may have a problem with the technical feasibility. Since science, physics, and technology haven\u2019t quite caught up with that dream yet, your technical solution may not be viable in anything other than theory. In addition, if your solution was new, this would go well beyond the idea of a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Minimum_viable_product\" rel=\"noopener noreferrer\">Minimal Viable Product<\/a> (MVP).<\/li>\n<li>To test the technical feasibility of your product, consider either exploring it further in a Discovery prototype project or by running a <a href=\"http:\/\/agiledictionary.com\/209\/spike\/\" rel=\"noopener noreferrer\">spike<\/a> in the early stages of the project. You\u2019ll know which method to use by thinking about the scale or complexity of the solution you have in mind.<br \/>\n<blockquote><p>\u201cSome of the best knowledge my teams have gained in understanding technical feasibility have come from performing a spike. And often, it\u2019s the simplest solution that wins out!\u201d<\/p><\/blockquote>\n<\/li>\n<li>The second shade of feasibility to consider is whether you, your team or business has the skills and motivation to make it work. Using an example, if you\u2019re great at baking cakes at home for your kids birthday, that\u2019s sweet. But if you want to turn this into a business selling the finest cakes to the world, you need to understand if you can make it scale, handle the business as well as the production, manage distribution and fulfillment, and take care of customer service.<\/li>\n<li>This type of vision might be achievable in the long run. But for now, possibly not. So scale it back, think small, take a small chunk that looks realistic and concentrate on delivering the best but smaller aspiration you can. If that manages to engage and delight your customers, get them coming back for more and telling their friends, then scale it up from there using your customer feedback as your guide and compass.<\/li>\n<li>Also, you need to know if your project is feasible in terms of budget and timeframe. Can your business afford to deliver this project ? Is the timeframe achievable? Time and money are two of the three constraints in an Agile project that are fixed. We aim to deliver within a given fixed time and within a given fixed budget.<\/li>\n<li>The quality of a product refers to the end product that your customers use and the engineering practices your team uses to deliver great, robust, and reliable software. Quality is also something we don\u2019t short change on. Quality criteria, on the other hand, can change. If you\u2019re not setting out to build a Ferrari, the product may not have a high quality perception. If you\u2019re not building space rockets, then the tolerances attained in production terms may be much higher. Set the appropriate tone and expectation early on.<\/li>\n<\/ul>\n<p>So now you\u2019ve confirmed your dream is more than chocolate fancy, set about testing your assumptions, and proving to people that this endeavor is worth investing in.<\/p>\n<h3 id=\"justification\">Justification<\/h3>\n<p>Now depending on your circumstances, justification will come in different forms. But essentially, you want to prove that this project will satisfy customer success criteria, has a chance of success, will deliver value, and is affordable.<\/p>\n<ul>\n<li>State your assumptions based on your customer need, then validate them. The <a href=\"http:\/\/theleanstartup.com\/\" rel=\"noopener noreferrer\">Lean Startup<\/a> gives great guidance on identifying and proving that your product is needed by your customers and will create value.<\/li>\n<li>Write, test, and validate your business plan. Now this looks nothing like the ones your bank or Business and Finance major told you to produce. Don\u2019t use them, they will be out of date before the ink is dry. Instead, check out the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Business_Model_Canvas\" rel=\"noopener noreferrer\">Business Model Canvas<\/a>. This is essentially a short form business plan that keeps your focus on your value proposition, your customers, revenue, and costs. Use it to validate if you have a business that will work.<br \/>\n<blockquote><p>\u201cI ignored this advice once and spent a long time writing a lengthy traditional 50 page business plan. It got me nowhere. All the assumptions I had made were unfounded, and all the projections I made couldn\u2019t be validated. It was a painful and expensive experience that taught me to never do it again.\u201d<\/p><\/blockquote>\n<\/li>\n<li>If you\u2019re in a mature business with portfolios of projects being delivered in a complex environment, then financial modeling may be necessary. If you must, do this only after you\u2019ve proven the above.<\/li>\n<li>Once you\u2019ve built your MVP, there may be a case for creating a more traditional business plan. For example, if you have to go for funding or selection within your company\u2019s portfolio of competing projects and resources. But this will be a business plan based on and informed by the tools used above. It will be lighter too.<\/li>\n<li>In any case, use these tools as living, breathing artifacts. Use them as your guide and bellwether. They are never static. Refer to them and revise them as your project or business evolves.<\/li>\n<\/ul>\n<p>Once you have your justification and all your stakeholders are onboard, you\u2019ll be on fire.<\/p>\n<p>The Feasibility phase is typically performed once in the life of your project. You may find you revisit the vision and feasibility of the project, especially if your data, customers, market or business indicate so. At the very least, they will be your guiding lights throughout.<\/p>\n<h2 id=\"initiation\">Initiation<\/h2>\n<p>Awesome. The decision has been made, the project has the green light and you\u2019re ready to build. Well, nearly. I know you\u2019re thinking, \u201cc\u2019mon already, really? If we don\u2019t do this now we never will. Let\u2019s get this show on the road!\u201d. But consider this &#8211; Agile is nothing if not about delivering value early and often whilst delighting your customers along the way. Taking some time to figure out the best way to deliver your project is the best laid foundation for success.<\/p>\n<h3 id=\"the-team\">The Team<\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2018 aligncenter\" src=\"https:\/\/yanado.com\/blog\/wp-content\/uploads\/2016\/06\/toptal-blog-image-1434558600871-48bec9a7a14297c67efdb41ba8556f9a.jpg\" alt=\"the team\" width=\"640\" height=\"640\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>In sport, by thinking about your favorite team game you\u2019ll be able to recognize key roles that enable the team to perform as they do. Traditionally you\u2019ll find a manager, a captain, and the rest of the squad. Outside of that, you\u2019ll find coaches, physios, nutritionists, and an assortment of supporting staff. But if we look at the game of rugby, there\u2019s a team within a team. The players that make up the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Scrum_%28rugby%29\" rel=\"noopener noreferrer\">scrum<\/a>. This pack is made up of designated players whose job it is to win the ball back and continue play. When a scrum is in play, the players from each side then work, with no leader, as a single unit as collaboratively, communicatively, and efficiently as possible to get the ball back in possession. It is the game of rugby that inspired <a href=\"http:\/\/www.scruminc.com\/about-us\/who-we-are\/\" rel=\"noopener noreferrer\">Jeff Sutherland<\/a> to name his software development methodology, Scrum.<\/p>\n<ul>\n<li>Scrum is not the only software development method in the Agile playbook. But it is the one that best describes the Agile concept and behaviors of working as a team, motivating individuals, creating trusting relationships, self-organization, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Servant_leadership\" rel=\"noopener noreferrer\">servant-leadership<\/a>, communication, transparency, and collaboration.<\/li>\n<li>Your team will be formed largely by the circumstances you find yourself in. You may have <a href=\"https:\/\/www.toptal.com\/software\">developers<\/a>available to you, some, none, or all of them may be familiar with Agile to varying degrees. You may want to hire a new team or partner with a 3rd party.<\/li>\n<li>Other roles will be required too, but we\u2019ll discuss those later.<\/li>\n<li>It has been said that if you\u00a0form your development team, then you\u2019ve chosen your technology. As depending on where you bring your team together from, they\u2019ll come with certain skill sets. So, think carefully how you form your development team and whether you need to perform a technical evaluation before you get to this point in your journey.<\/li>\n<li>This brings us to cross functional teams. Teams work best when they work together, when individuals pitch in to get the job done regardless of their \u201ctitle\u201d. Try to build a team that is self sufficient and individuals that take on more than one role.<\/li>\n<li>Build an environment, culture, and relationship center. A place where the team can deliver, unencumbered by constraints or restrictions. Give the team the tools, people, resources, and space to be effective and performant.<\/li>\n<li>Keep team sizes to no more than 7 or 8. If you have a need for many more developers, break the teams down. Each team might then be responsible for a given functional area. If you have multiple teams in multiple locations, consider holding a Scrum of Scrums. And where these are numerous in complex environments, use Agile project management.<\/li>\n<li>Ensure that the team, business, stakeholders, and even customers have access to each other. Ensure they communicate and collaborate, and remove anything that gets in the way of progress. Daily communication is the best cure for project ailments. When people speak, they get stuff done.<\/li>\n<\/ul>\n<p>There are many ways a team can be put together to deliver software.<\/p>\n<h3 id=\"project-brief\">Project Brief<\/h3>\n<p>In Feasibility, you figured out the \u201cwhy\u201d of your project and either built your confidence to forge ahead with your startup or got backing to proceed. The project brief is the living document that brings together the \u201cwhy\u201d with the \u201cwhat\u201d and \u201cwhen\u201d and \u201cwho\u201d. It\u2019s living, because as you progress from hence forward your knowledge, understanding, and path may change. To leave this document once written and never to return to it, just consign your thoughts to a point in time. In an Agile world, your point in time reference may change weekly or even daily early on, so it\u2019s important to keep this fresh.<\/p>\n<ul>\n<li>A great tool for encapsulating and maintaining your project brief is something that Jonathan Rasmusson calls the \u201cInception Deck\u201d in his book \u201c<a href=\"https:\/\/pragprog.com\/book\/jtrap\/the-agile-samurai\" rel=\"noopener noreferrer\">The Agile Samurai<\/a>\u201d. Here you\u2019ll find great advice on ensuring that everybody that is interested in, affected by, or involved with your project is on the same page.<\/li>\n<li>The greatest enemy to delivering projects is in having an unclear, inconsistent, or just plain different understanding of what the project is and what \u201crequirements\u201d are to be satisfied. If even one important stakeholder has a different understanding or view of what you\u2019re doing, the consequences can be substantial.<\/li>\n<li>A good project brief communicates:\n<ol>\n<li>A common and agreed expectation between stakeholders and team members.<\/li>\n<li>An understanding of the project, with the same understanding across all parties.<\/li>\n<li>The goal, vision, objective, scope, and project context.<\/li>\n<\/ol>\n<\/li>\n<li>You\u2019ll have a lot of good information for the brief gathered from Feasibility. The project brief will help you define and find the answers to searching questions. It will bring together stakeholders, your raison d\u2019etre, high level scope, risks, target solution, budget, timeline, expectations, and your priorities.<\/li>\n<\/ul>\n<blockquote><p>\u201cA colleague stopped me in a corridor once and asked me where he could get the project brief for the project. I quipped \u2018We don\u2019t need a brief, we\u2019re Agile\u2019. He looked confused, as if he was questioning my sanity or authority. He was right to do so.\u201d<\/p><\/blockquote>\n<p>Before you proceed, ensure you\u2019ve got everybody on the same page, workshop it, ask the difficult questions, and nail it somewhere where people can stop, read it, comment on it, and help revise it.<\/p>\n<h3 id=\"culture-and-ways-of-working\">Culture and Ways of Working<\/h3>\n<p>You know the way your business works and its culture, the way it likes to get stuff done. Agile, by its very nature, may challenge some of these ways of working that your business has cultivated over the years. Don\u2019t expect Agile to be implemented and for everybody to lovingly adopt it from the outset. Some people may find it confusing and view it only with dread and fear. Some people may openly refuse to engage in it. These are challenges and perceptions you must overcome. But in your early days, don\u2019t go around waving the Agile stick beating anyone that won\u2019t listen with it. That won\u2019t build trust, adoption, or engagement.<\/p>\n<blockquote><p>\u201cI was a fan of waving big proverbial sticks once, and it earned me a lot of negative press. I turned it around, but not before suffering considerable pain first.\u201d<\/p><\/blockquote>\n<p>As you set out on your path of adoption, tread carefully, respectfully, and with empathy. If you\u2019re in a creaking old traditional business, perhaps it won\u2019t be the best approach to get the whole business aligned. Start small and incrementally earn respect and recognition. Start with your team only. Once you start delivering quicker software with better quality than ever before, people will start to notice and will want to come play your game. When they do, offer them the ball, take them out for a coffee, and ease them into your new world. Help them.<\/p>\n<p>With your team, now that they know what the project is about and your plans for Agile adoption agreed, let the team decide how they wish to behave and operate as a team.<\/p>\n<ul>\n<li>Guide your team to identify the Agile concepts, techniques, behaviors, and frameworks that you feel fits your collective needs.<\/li>\n<li>Take requests from your team members as to what requirements they have to help them perform as best they can. Some of these requests you\u2019ll be able to resolve immediately. Others, you may need to get a budget or outside help. Do what you can to make it happen.<\/li>\n<li>These are your first steps to becoming a true servant-leader.<\/li>\n<li>Consider organizing some appropriate training in the concepts and techniques your team are choosing to adopt. This is the best way to ensure all of your team, even stakeholders, are on the same page and get the same message. Work with a supplier organization that can tailor their offering to your needs.<\/li>\n<li>Be prudent. Nobody will be an Agile ninja after a few days in a workshop learning how to become Agile. Your path will be long. The word \u201cbecome\u201d is quite defining. Only when you truly embrace Agile will you see its value. It should excite you. If it excites you, then go excite others too.<\/li>\n<li>Now that your team has agreed on the concepts and techniques, had their wishes fulfilled and in Agile training, turn your team\u2019s attention to themselves and what they expect from you, the business, and each other.<\/li>\n<li>Define some Ways of Working (WoW) within and by the team helps build trust, relationship, and expectations. The WoW is no War and Peace. It should be short and to the point, between 7 and 10 bullet pointed sentences. These sentences state clearly how people behave, communicate, collaborate, support, deliver, and perform together. It should also state what the team expects from the business.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2019 aligncenter\" src=\"https:\/\/yanado.com\/blog\/wp-content\/uploads\/2016\/06\/toptal-blog-image-1434464397376-58ce21d182d824156046d8be08cdeeb1.jpg\" alt=\"collaboration\" width=\"640\" height=\"640\" \/><\/p>\n<p>&nbsp;<\/p>\n<ul>\n<li>Agile is as much a mindset as it is guiding principles and concepts. It helps you develop in the way you behave, think, negotiate, interact, communicate, perform, and improve. It relies on motivated individuals supporting each other to reach a common aim, together as one. There is an African proverb:<\/li>\n<\/ul>\n<div class=\"sw-tweet-clear\"><\/div><a class=\"swp_CTT style1\" href=\"https:\/\/twitter.com\/share?text=If+you+want+to+go+quickly%2C+go+alone.+If+you+want+to+go+far%2C+go+together.&via=YanadoTool&url=https:\/\/yanado.com\/blog\/the-ultimate-introduction-to-agile-project-management\/\" data-link=\"https:\/\/twitter.com\/share?text=If+you+want+to+go+quickly%2C+go+alone.+If+you+want+to+go+far%2C+go+together.&via=YanadoTool&url=https:\/\/yanado.com\/blog\/the-ultimate-introduction-to-agile-project-management\/\" rel=\"nofollow noreferrer noopener\" target=\"_blank\"><span class=\"sw-click-to-tweet\"><span class=\"sw-ctt-text\">If you want to go quickly, go alone. If you want to go far, go together.<\/span><span class=\"sw-ctt-btn\">Click To Tweet<i class=\"sw swp_twitter_icon\"><\/i><\/span><\/span><\/a>\n<p>By now your team should be super excited, energized and motivated. Now engage them further with your backlog of User Stories.<\/p>\n<h3 id=\"backlog\">Backlog<\/h3>\n<p>Have no doubt in your mind that there\u2019s uncertainty involved in your project. You can\u2019t possibly know exactly what it will take to build the right product for your customers so early in its life. You cannot gaze wistfully into a crystal ball and predict the future.<\/p>\n<p>The \u201cbacklog\u201d or \u201cproduct backlog\u201d is where your requirements live. Agile favors the writing of short pithy statements that capture the essence of a \u201crequirement\u201d. The backlog is simply a long list of entries, each entry defining a single, discrete \u201crequirement\u201d as a User Story. And from now on, we\u2019ll be using the word User Story, and not \u201crequirement\u201d. You\u2019re probably asking \u201cwhy?\u201d. That\u2019s a good question. For life eternal, stating the features or facets needed in a software project by a customer, have always been referred to as a \u201crequirement\u201d (ah, I used it again! Last time. Promise) That word has an interpretation that has no value in Agile. The Oxford dictionary defines it as:<\/p>\n<blockquote><p>\u201cA thing that is needed or wanted.\u201d Or, \u201cA thing that is <a href=\"http:\/\/www.oxforddictionaries.com\/definition\/english\/compulsory#compulsory__2\" rel=\"noopener noreferrer\">compulsory<\/a>; a necessary <a href=\"http:\/\/www.oxforddictionaries.com\/definition\/english\/condition#condition__14\" rel=\"noopener noreferrer\">condition<\/a>\u201d.<\/p><\/blockquote>\n<p>And unfortunately, if we set out defining what our solution should be, stating that things are \u201ccompulsory\u201d, we will end up in trouble. It\u2019s too easy to say that all these User Stories are compulsory. If we take that view, we run the risk of running over schedule and over budget in the attempt to deliver all of a given scope. It\u2019s not a problem to say that, for this product these stories are needed for the solution to be viable, we just want to avoid the interpretation of that particular word.<\/p>\n<ul>\n<li>Always write stories from the perspective of a <a href=\"http:\/\/www.romanpichler.com\/blog\/personas-epics-user-stories\/\" rel=\"noopener noreferrer\">persona<\/a>. A persona represents a user or stakeholder of the solution. It\u2019s a good idea to develop these personas before you start a backlog.<\/li>\n<li>At this stage, only write short simple statements that basically suggest a reminder to have a deeper conversation about the User Story when the time is right.<\/li>\n<li>Real people think in terms of tasks that they need to get done to achieve a goal. Write your stories from the persona perspective and in terms of what they need to get done.<\/li>\n<li>You don\u2019t need to write the full backlog, just write as much as you can imagine your customers will need for your product to be viable.<\/li>\n<li>You\u2019ll discover later on through the life of the product that User Stories will change, become more or less important, or can be deleted completely. Releasing often, getting feedback, and assessing what\u2019s a priority will inform this behavior.<\/li>\n<li>Don\u2019t write stories in isolation. Engage your team, stakeholders, even your customers. Stories can be updated at any time in the life of a project, but should avoid being changed once development work has started on them.<\/li>\n<li>Some of your stories may be considered as \u201cEpics\u201d. These are large stories that cover a lot, and will be broken down closer to the time of delivery into smaller stories.<\/li>\n<li>Consider using the <a href=\"http:\/\/guide.agilealliance.org\/guide\/invest.html\" rel=\"noopener noreferrer\">INVEST<\/a> model, a checklist for validating the quality of a good User Story.<\/li>\n<li>Anybody can add a story to the backlog. It should be placed at the bottom, or in a specially created \u201cParking Lot\u201d. This added story serves as a prompt to discuss with the team and the business. If the business and team support it, it can then be estimated and prioritized<\/li>\n<li>You may also consider those parts of the system that are most risky. If you have a User Story or feature that is complex, new, or technically unknown, prioritize these to the top of you backlog. This way you won\u2019t be attempting to deliver the challenging and critical parts of your product just weeks before your first release.<\/li>\n<\/ul>\n<p>Once you have a backlog that fulfills your needs, you can estimate the stories in it, rank them in order of priority, and build a release plan.<\/p>\n<h3 id=\"hi-level-estimation-and-prioritization\">High-Level Estimation and Prioritization<\/h3>\n<p>High-level Estimation is the process of sizing your backlog. How \u201cbig\u201d is the project, and what value does it deliver? Prioritization is the process of deciding which stories are most important to you, the viability of the product, and the interests of your customers. We want to deliver the highest value items earliest to deliver the most value to the business, get feedback from the customer, and to not sweat the small stuff. The output will be an ordered backlog that is ranked in priority and sized.<\/p>\n<ul>\n<li>Stories at the top are considered most valuable. We want to deliver the most valuable items as early as possible.<\/li>\n<li>There are many techniques for sizing and estimating, but at this point you just want to get a good indicative feel of the size of a story.\n<ul>\n<li>Use t-shirt sizes, relative sizing, ideal days, or story points.<\/li>\n<\/ul>\n<\/li>\n<li>You won\u2019t have all the available information at this point either, and that\u2019s okay. Just run with it.<\/li>\n<li>Engage your business stakeholders or product manager if you have one, and the team that will be doing the work.<\/li>\n<li>We want those that will be designing, developing, and <a href=\"https:\/\/www.toptal.com\/freelance\/your-boss-won-t-appreciate-tdd-try-bdd\">testing<\/a> the work to size it, because the best people to estimate are the experts.<\/li>\n<li>The team may start to break stories down into smaller parts. If this happens, write stories that are more granular but discrete.<\/li>\n<li>The team may also start to rank some stories, as naturally, some things have to get delivered before others to support the technology or a given user journey.<\/li>\n<li>Between you and the team, you may also start to find holes in the backlog that need to be filled. Just fill those holes with new stories and estimate and prioritize as appropriate.<\/li>\n<li>Prioritization is most easily performed using a MoSCoW analysis. MoSCoW is a simple technique that helps you decide which stories are \u201cmust haves\u201d for your product to be successful.<\/li>\n<li>You may do a prioritization pass before estimation begins. However, the sizing of certain elements may also determine a decision on priority and real business value. So play estimation and prioritization off of each other, but don\u2019t squabble over it!<\/li>\n<li>No two stories can be as important as the other. The story at rank 1 is more important or valuable than the story at rank 2.<\/li>\n<li>A great way to demonstrate the importance or value of a story is it to add a monetary value to it. If for example, story A is thought to bring in $5000 of extra revenue, and story B might attract $100, then story A is more valuable. Equally, if story C saves the business more than story D, story C is more valuable.<\/li>\n<li>Once you\u2019ve sized your backlog, you\u2019ll be left with a number. When we come to release planning, that number will help us understand how much can be delivered by our team within a given timeframe.<\/li>\n<\/ul>\n<p>Remember that you don\u2019t need to know all your user stories up front. Also, remember that it\u2019s not necessary to deliver all of your stories before a customer sees your product. You want to remain Agile &#8211; and that means only creating what you need to when you need to, wasting as little as possible, and responding to changes in customer needs and market conditions. A roadmap will help you lay out your product and plan your objectives for the next 3, 6, 9, and 12 months.<\/p>\n<h3 id=\"roadmap-and-storymaps\">Roadmap and Storymaps<\/h3>\n<p>A <a href=\"http:\/\/www.romanpichler.com\/blog\/10-tips-creating-agile-product-roadmap\/\" rel=\"noopener noreferrer\">roadmap<\/a> is exactly as it sounds, it offers the same as a roadmap of a country. It details the relative position of cities (or in your case, features) to each other and the routes that can be taken to get from city A to city B, or feature X and feature Z. It doesn\u2019t tell you which route you should take, or how you should get there. It doesn\u2019t tell you which mode of transport to use, but it might illustrate options to take the Highway or the train.<\/p>\n<p>In a city, there are many roads, buildings, parks, services, and facilities. All features of a city. This is also true of the roadmap for your product. At this level, your roadmap shows major goals or milestones to be achieved. A goal is a logical grouping of themes, features, and User Stories rolled up in a consumable view that demonstrates tangible value. The roadmap of a software product shares this view and communicates your intent. It doesn\u2019t necessarily show you how or when features will be delivered, only the relative value of the goals and features to you and your business.<\/p>\n<p>One great way to demonstrate a roadmap is to generate a <a href=\"https:\/\/www.scrumalliance.org\/community\/articles\/2013\/august\/creating-an-agile-roadmap-using-story-mapping\" rel=\"noopener noreferrer\">story map<\/a>. This tool indicates customer valued prioritization. It lays out the backbone, or essential building blocks of your product. The walking skeleton hangs off the backbone and illustrates the features that make it an MVP. All the other features are what add further value and importance to the system. The story map lays features in relative position to each other and is an awesome visual tool.<\/p>\n<p>It\u2019s worth noting that after carrying out a story mapping exercise, your backlog may need to be refined. This will be apparent where stories have been split into multiple stories, identified as redundant, newly created, or as a higher or lower priority than previously thought. The story map is another artifact that is continually revisited and revised.<\/p>\n<p>The Initiation phase is typically performed once in the life of your project. However, many of the tools and documents you created will be revisited and revised throughout the project.<\/p>\n<h2 id=\"release-planning\">Release Planning<\/h2>\n<p>\u201cAt last\u201d, I hear you cry, \u201cfinally some planning\u201d. Well, you have essentially been planning all through the Feasibility and Initiation stages, we just didn\u2019t call it as such. This is evidence of iterative or adaptive planning &#8211; the art of only planning enough to achieve your immediate and most valuable goals. We\u2019ll see later more about adaptive planning, but for now, release planning is our focus.<\/p>\n<p>Your release plan may well be determined by external events. Perhaps there is a trade show you want to demonstrate your app at, or your customers will get most benefit using your app on the run up to Christmas. These are timeline events that your goals may be aligned with. You would most likely plan to deliver user stories or features that make the most sense to facilitate these events. If there are no external dates that you need to consider, then you can just go with feature prioritization and be delivering earliest what makes the most sense and delivers the most value to your customers.<\/p>\n<ul>\n<li>If you created a story map in Initiation, this will help guide your release plan. Use it to identify your MVP, the minimum feature set that will get your product in the hands of your customers, start earning revenue, get feedback, and acquire more customers.<\/li>\n<li>The story map will help you carve out future releases too. But keep in mind that as you learn, get feedback, inspect and adapt, future releases may change. So don\u2019t plan in great detail.<\/li>\n<li>You may have from 2 &#8211; 4 releases in a 12 month period. Don\u2019t do less because your first release is your MVP and gets your foot in your door, after which you\u2019ll want to iterate and release more features and fix bugs in a regular cycle. Don\u2019t do more unless you\u2019re performing well and have plenty of Agile techniques and tools in place to manage continuous delivery.<\/li>\n<li>Each release is a timebox which is broken down into smaller iterations. An iteration is a timebox. The timebox is one of the most important control measures in Agile.<\/li>\n<li>To size your release:\n<ul>\n<li>Divide your release timebox by 2. This will give you how many iterations you have. So if you have a release of 12 weeks, you get 6 two week iterations.<\/li>\n<li>Then remove two iterations &#8211; you\u2019ll reserve one for a \u201cSprint 0\u201d iteration and another for a \u201cRelease Iteration\u201d. This leaves you with 4 development iterations.<\/li>\n<li>Work with your team and product owner to fill each iteration with stories, starting from the top of the backlog and working down. When the team thinks they\u2019ve filled an iteration with enough stories they can realistically achieve based on their capacity in the 2 week time frame, repeat for the next iteration(s). Use the release plan and story map to guide what goes into each iteration.<\/li>\n<li>Do not plan the next release yet. You\u2019ll do that as you near the end of the current release.<\/li>\n<li>Take the user stories from each of your iterations and add up the story sizes. So if your iteration 1 has 25 story points, but iterations 2, 3, and 4 have 10, 45, and 65 points respectively, you will need to refactor. Target an equal number of story points in each iteration. This becomes your anticipated velocity &#8211; the amount of valuable \u201cstuff\u201d completed for each iteration.<\/li>\n<\/ul>\n<\/li>\n<li>The team may not have worked together before. They are almost certainly working on a new problem or product. They will not perform at their best from day one. For this reason, your velocity may be volatile in the first few sprints. But as the team settles down, it should stabilize. Use this data to refactor your release planning which in turn helps you plan your product with a known velocity and confidence.<\/li>\n<li>If necessary, break stories into smaller chunks and resize.<\/li>\n<li>Your release plan, especially early in the life of a project and a new team, is only ever a guide. Do not treat it as a commitment or guarantee that all or these exact stories will get delivered as planned. As your team matures, work gets done and trust and confidence builds, so will the accuracy of your plans.<\/li>\n<li>Never force your team to \u201ccommit\u201d to more than they are comfortable with. Trust their judgment and their expertise.<\/li>\n<li>Future release planning exercises will be simpler, because you\u2019ll take the release size, multiply the number of iterations by your team\u2019s velocity, and fill the release plan with the stories that add up to velocity x number of iterations.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2020 aligncenter\" src=\"https:\/\/yanado.com\/blog\/wp-content\/uploads\/2016\/06\/toptal-blog-image-1434464438133-6a6fefe75fc883ab038701fb679584dd.jpg\" alt=\"team velocity\" width=\"640\" height=\"641\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Consider this as an example. If you go to a restaurant to eat, you wouldn\u2019t go ahead and order all the items on the menu and expect to eat it all in one sitting. You\u2019d never be able to eat it all, you might not afford the cost, you\u2019ll be sick of food, and the restaurant may close whilst you\u2019re eating the 5th of 19 courses! You may not leave a happy customer, the restaurant may not find you to be a great customer, and the experience will be bad all round. More likely, if you love the restaurant, it\u2019ll be because you enjoyed a lovely meal there once. You\u2019ll decide to go back and enjoy a different meal. You\u2019ll tell your friends, you\u2019ll go there often. The moral of the story is:<\/p>\n<ul>\n<li>Plan your releases in small chunks.<\/li>\n<li>Consider your capacity.<\/li>\n<li>Don\u2019t take on more than you can realistically achieve.<\/li>\n<li>Revisit the plan often to see what you can change and improve.<\/li>\n<li>Plan, Execute, Inspect, Learn, Adapt &#8211; Repeat.<\/li>\n<\/ul>\n<p>Release planning takes place often in a software project. Each new release requires a release plan. The release plan can also be refactored at any time during a project. Just take care to not overdo it and fall into zombified planning psychosis. At the end of release planning, you\u2019ll want to prepare for the first iteration, which is where we\u2019re happily going next!<\/p>\n<h2 id=\"product-iterations\">Product Iterations<\/h2>\n<p>Your team is in place, they\u2019re motivated, you have an engaged business, your initial planning is done &#8211; you\u2019re now ready to build your dreams.<\/p>\n<p>We\u2019ve talked earlier about some of the tools, techniques, and concepts that Agile subscribes to. There are many resources already available that do a great job at laying the foundations for delivering an Agile software project. Pick one, keep it vanilla, and grow into your Agile journey. To help shorten the trauma in deciding the right Agile software development methodology to start with, I\u2019d recommend Scrum. And only Scrum. The temptation will be there to use elements of other methodologies. Don\u2019t do it yet. Save that kind of change until you have lived and breathed Scrum for 6 or 12 months. Then, if either you\u2019ve determined it alone does not work for you or you want to mature as a team, steadily introduce new methods, techniques, or frameworks.<\/p>\n<p>I choose <a href=\"http:\/\/scrummethodology.com\/\" rel=\"noopener noreferrer\">Scrum<\/a> as the recommended approach for new team\u2019s adopting Agile because it has all the basics built in. It\u2019s very popular and has many good quality communities and resources online, in books, or in the training room. It will serve you well, even for the smallest of teams. The rest of this post is dedicated to discussing some important aspects of software delivery that you, your team, and stakeholders should always keep in mind.<\/p>\n<h3 id=\"adaptive-planning\">Adaptive Planning<\/h3>\n<p>Planning in an Agile project is an ongoing process. We do some initial planning up front, just enough to understand what we know at a given point. Our initial plans will be loosely defined and flawed. And then we iterate our planning, adapting to new information, planning in greater detail just before we enter into delivery, responding to changing scope. This is one way of minimizing waste &#8211; only putting effort into planning when we need to.<\/p>\n<ul>\n<li>The team and the business, or its informed and authorized representative such as a product manager, actively plan together. The team because they are the experts that will deliver, the product manager because he is the expert who can guide the needs of the business.<\/li>\n<li>Estimates for user stories will be less accurate the further out they are from being developed. For example, epics will attract high level estimates that will be based on a lot of unknowns. Well defined granular user stories that are estimated just before a sprint starts will be much more accurate.<\/li>\n<li>There are many estimation \u201cscales\u201d you can use. Use the technique that feels most right for your team and the right stage of planning &#8211; wide band delphi, <a href=\"https:\/\/www.mountaingoatsoftware.com\/agile\/planning-poker\" rel=\"noopener noreferrer\">planning poker<\/a>, ideal time, relative sizing, story points, or t-shirt sizes.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2021 aligncenter\" src=\"https:\/\/yanado.com\/blog\/wp-content\/uploads\/2016\/06\/toptal-blog-image-1434464526686-0eba16b5cea046d0d4c55f1902ee0ce0.jpg\" alt=\"planning poker\" width=\"640\" height=\"640\" \/><\/p>\n<p>&nbsp;<\/p>\n<ul>\n<li>When sizing a story, one size really does fit all. All stories should be sized using the same technique and encompass all elements such as design, development, testing, refactoring. When you come to do iteration planning for a sprint, certain tasks can be created which all contribute to the completion of the story.<\/li>\n<li>Always factor risk, unknowns, outside influences, your team\u2019s capacity, and ever improving velocity in planning.<\/li>\n<li>If user stories that were taken into a sprint were not completed, we do not extend the timebox. These unfinished or unstarted items are put back to the top of the backlog and taken into the next sprint.<\/li>\n<li>Always plan to deliver the least amount required to achieve a given goal. Identify techniques to prune features. Reduce waste, find the real value that can be realistically delivered with your time constrained resources.<\/li>\n<\/ul>\n<h3 id=\"story-creation\">Story Creation<\/h3>\n<p>Stories get elaborated upon when you need them. You don\u2019t need full story explanations for features that are 6 months away from being delivered. Writing them at the beginning may be wasted effort, when that need disappears from scope. Write your stories at most 2 iterations before they are needed. Reducing that timeframe to 1 sprint is preferable.<\/p>\n<p>Let\u2019s take your time in Sprint 0 to set the scene. In two weeks you\u2019ll start development. It\u2019s now time to take enough of the stories from the top of the backlog that could potentially get delivered on sprint 1. You might take 10 or 15 percent more if you\u2019re unsure on your velocity. These one liners can now be expanded into truly valuable documents with scenarios, acceptance criteria, and wireframes. If the wireframes haven\u2019t been created yet, now\u2019s the time to do so. You might find as you review these candidate stories that they need to be broken down. Perhaps they were Epics that couldn\u2019t possibly be completed in a sprint. If you break stories down, re-estimate them with the team.<\/p>\n<p>A <a href=\"http:\/\/www.romanpichler.com\/blog\/10-tips-writing-good-user-stories\/\" rel=\"noopener noreferrer\">good story<\/a> follows the following rules: &#8211; Written in a common format, e.g. AS A I WANT SO THAT . &#8211; Includes acceptance criteria that the story must meet to be considered acceptable to the business for sign off. &#8211; Uses language that the business and your customers understand. &#8211; Follows the INVEST model. &#8211; Includes all supporting documents to inform the developer, designer and tester: wireframes, technical design overview, other assets. &#8211; Meets your standard Definition of Done criteria.<\/p>\n<h3 id=\"sprinting\">Sprinting<\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2023 aligncenter\" src=\"https:\/\/yanado.com\/blog\/wp-content\/uploads\/2016\/06\/toptal-blog-image-1434558646207-3e844d5df64c80d2ac5c2eed7eac892f-1.jpg\" alt=\"sprinting\" width=\"640\" height=\"640\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Whether you call it a sprint, an iteration or a timebox, each incremental delivery of your Agile project is time constrained. The timebox doesn\u2019t shorten and it doesn\u2019t lengthen. Focus on 2 week iterations at the beginning. You might find that 1, 3 or 4 weeks suits your business model better. Once you choose a length, don\u2019t change it. You want to maintain a regular <a href=\"http:\/\/agilemakingprogress.blogspot.co.uk\/2011\/06\/scrum-cadence.html\" rel=\"noopener noreferrer\">cadence<\/a>, or a sustainable pace. This means the team and business focus delivering regular software without mad dash overtime being employed to get the job done and releasing potentially shippable increments every two weeks.<\/p>\n<ul>\n<li>Working in small increments has a huge benefit. It means you\u2019re only focusing on the immediate future of delivery; and with new input, feedback and learning, you can respond to change within a short iterative cycle.<\/li>\n<li>At the beginning of a release, perform a sprint 0. This lets the team, the business, and your project release get geared up and sets the mindset for successful delivery. Draw out the base technical framework and architecture that will support the foundation for the release. Setup environments, accounts, and tools. Perform spikes to understand difficult or unknown problems. Elaborate your user stories in readiness for sprint 1. Sprint 0 is about getting prepared.<\/li>\n<li>During a release, keep refining the backlog. As you understand more or learn something new, your priorities may change, new requirements may unfold, and what you previously thought was a great feature may get removed entirely.<\/li>\n<li>Don\u2019t start work that has no chance of completing within a sprint. If it can\u2019t, break it down into smaller chunks. And don\u2019t start new work when previously started work has not been completed. You create no value by starting lots of things that can\u2019t be considered complete. Further, avoid <a href=\"http:\/\/dougdockery.com\/?p=151\" rel=\"noopener noreferrer\">context-switching<\/a>. This is the activity of starting one task, getting disturbed, starting another, and at it\u2019s most problematic not completing either.<\/li>\n<li>Limit the amount of work that is in progress by the team at any one time. For example, if you have 3 developers and 1 tester, you may put a WIP limit on the developers and on the tester.<\/li>\n<li>Never add more work to a sprint after it has been planned. Never stop a sprint part way through. The exceptions to this are:\n<ul>\n<li>If you performed faster than expected, consider taking the next story from the top of the backlog, as long as it is suitably prepared.<\/li>\n<li>If the sprint is performing so badly that it will not complete. This usually only happens where there has been a catastrophe of some description.<\/li>\n<li>If the sprint objective can no longer be supported due to immediate changing needs of the business.<\/li>\n<\/ul>\n<\/li>\n<li>If you do cancel a sprint, do it gracefully, take time to refocus, and start a new sprint as you would any other.<\/li>\n<li>Toward the end of a release, consider a final release sprint. No new features are written, some bugs can be cleaned up, and preparations can be made to actually release a new version of your product to your customers. That\u2019s not to say you can\u2019t make incremental customer releases in the meantime &#8211; it\u2019s just that this is a controlled, measured, and sustainable release mechanism.<\/li>\n<li>At the end of a release you might consider a one week sprint. In this sprint, you might work with the team to breakdown some new ideas, figure out some new technology. These are great tools that benefit the business and it gives the team some briefing space to think and be creative. It\u2019s not for goofing off, it will still create value. Equally, everyone needs a break. Taking a vacation at this time helps keep your cadence and velocity in good shape when you\u2019re mid-release.<\/li>\n<\/ul>\n<h3 id=\"defining-done\">Defining Done<\/h3>\n<p>Defining what \u201cdone\u201d really means is very important. There are many versions of \u201cdone\u201d within the life of your project &#8211; what it means to be \u201cdone\u201d with a story, release, or whole project. It all boils down to what you, your team, and business will consider as complete to the right level of quality to satisfy readiness to ship.<\/p>\n<p>For your team, the definition of a \u201cdone\u201d story will be something like all code complete, peer reviewed, meets the defined acceptance criteria, unit tested, UAT\u2019ed, and pushed to your code repository. To enable the passing of a story from designer to developer to tester, will have definitions of \u201cdone\u201d to be accepted by the next person in the chain. Your product owner will have expectations as to what this means to her in order to release the product increment to your customers. In any case, everybody must be aware of what \u201cdone\u201d means and be a responsible party in ensuring it\u2019s meaning is met. Define your definition of \u201cdone\u201d, communicate it, agree upon it and, evolve it. Done done.<\/p>\n<h3 id=\"continuous-measurement\">Continuous Measurement<\/h3>\n<p>If you can\u2019t measure it, you can\u2019t manage it. The same goes for improvements. The need to gather empirical data in an Agile project is almost as vital as having blood course through your veins! How do you know what needs managing, correcting or improving if there\u2019s no data? Well, simply put, you\u2019ll be relying on gut feel and unsubstantiated guess work. Which falls apart pretty quickly under scrutiny. And depending on who\u2019s doing the scrutinizing, this can be a rather uncomfortable place to be. So from the outset of your project, ensure you know how you are going to demonstrate progress and by what measures others are going to view your success.<\/p>\n<p>Fortunately, Agile comes loaded with useful tools and techniques. The first thing to do is go back to the Agile Manifesto, type the following words into your favorite word processor, blow them up to 96pt, print, and apply to the wall for all to see :<\/p>\n<div class=\"sw-tweet-clear\"><\/div><a class=\"swp_CTT style1\" href=\"https:\/\/twitter.com\/share?text=Working+software+is+the+primary+measure+of+progress&via=YanadoTool&url=https:\/\/yanado.com\/blog\/the-ultimate-introduction-to-agile-project-management\/\" data-link=\"https:\/\/twitter.com\/share?text=Working+software+is+the+primary+measure+of+progress&via=YanadoTool&url=https:\/\/yanado.com\/blog\/the-ultimate-introduction-to-agile-project-management\/\" rel=\"nofollow noreferrer noopener\" target=\"_blank\"><span class=\"sw-click-to-tweet\"><span class=\"sw-ctt-text\">Working software is the primary measure of progress<\/span><span class=\"sw-ctt-btn\">Click To Tweet<i class=\"sw swp_twitter_icon\"><\/i><\/span><\/span><\/a>\n<p>Your greatest demonstrable power in delivering software is to show it to people working, doing what it\u2019s supposed to do. Not only will this make your customers happy, it will earn your team great respect and grease the wheels for greater adoption through the business.<\/p>\n<p>Here are some other tools:<\/p>\n<ul>\n<li>The <a href=\"https:\/\/www.mountaingoatsoftware.com\/agile\/scrum\/daily-scrum\" rel=\"noopener noreferrer\">daily standup<\/a>: There are a few variations of this ceremony, but the essence is to have all team members talk to each other face to face, keep it short, keep it focused, and keep it light. If anything needs discussion at great length, park it for a longer conversation between those needed after the standup. If impediments are raised, write them up like a story, add them to your backlog, and get them addressed asap. Anything that is impeding your team slows their progress and will be demonstrable in reduced velocity and software that does not meet expectations.<\/li>\n<li><a href=\"http:\/\/guide.agilealliance.org\/guide\/velocity.html\" rel=\"noopener noreferrer\">Velocity<\/a>: Is a historical tool. It\u2019s a little like those financial warnings you get that says past performance is no guarantee of future performance. But in Agile\u2019s case, we do hope to achieve a team velocity that is largely smooth. It\u2019s velocity that allows us to project future performance and confidence in our plans. There may be influences outside your control which might lower the number of story points output for a given sprint. If this happens, you\u2019ll probably be able to recover. Never use velocity as a stick to beat your team with, it will win you no favors. One thing for sure is that velocity will be erratic for the first 2 &#8211; 4 sprints. Somewhere in that timeframe thought you should start to see consistency and stability. If your velocity is wavering from one extreme to another, you\u2019ve got a problem which you\u2019ll need to fix with your team.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2024 aligncenter\" src=\"https:\/\/yanado.com\/blog\/wp-content\/uploads\/2016\/06\/toptal-blog-image-1434464570286-b452dbccbf623547f1fb153cb93ab461.jpg\" alt=\"velocity\" width=\"640\" height=\"640\" \/><\/p>\n<p>&nbsp;<\/p>\n<ul>\n<li>The burndown chart: Now this measure of progress is a thorny one. For that reason, I haven\u2019t given a link to go find out more, you\u2019ll have to do your own research and agree as a team and business which works for you. The reason it\u2019s thorny? Well, not one resource out there tells the same story! One thing agreed is that it will show how, within a sprint or a release, how you\u2019re performing against your timebox. If maintained daily, it will show if you\u2019re on track or deviating. Some teams use it to represent how much value is left to be created, more often than not, others use it to show how much work is left to be completed. The former is a celebration of success and value generation, the latter is less inspiring and motivating.<\/li>\n<li>The burnup chart: If you must show work completion rates, use the burndown chart for that. But using the burn-up chart allows you to show how much value has been created and how much more value you\u2019re planning to create by the end of the sprint. A much more motivating tool for a team to both demonstrate to the business what has been done (or little if things aren\u2019t going so well\u2026), and what they still have their sights set on. In any case, use the charts to spot where progress is not tracking as expected, look for patterns or deviations and get on top of them to fix the underlying problem as soon as possible. Update them daily for sprints and once at the end of a sprint for release version charts.<\/li>\n<li><a href=\"https:\/\/www.mountaingoatsoftware.com\/agile\/scrum\/task-boards\" rel=\"noopener noreferrer\">Task boards<\/a>: These are great visual radiators for demonstrating value being created. When updated daily, or at any point in the day, they immediately show progress being made. If combined with Kanban, they\u2019re also great tools for visualizing flow and blockages in the system. If you can see that loads of development is completed, but testing is not as productive, you can see the problem happening and respond appropriately and swiftly.<\/li>\n<\/ul>\n<p>Other tools to consider are <a href=\"https:\/\/www.apm.org.uk\/sites\/default\/files\/open\/20131015%20Agile%20and%20Earned%20Value%20Final.pdf\" rel=\"noopener noreferrer\">Agile Earned Value<\/a>, <a href=\"http:\/\/guide.agilealliance.org\/guide\/leadtime.html\" rel=\"noopener noreferrer\">cycle time<\/a>, and <a href=\"http:\/\/kanbantool.com\/kanban-library\/analytics-and-metrics\/explaining-cumulative-flow-diagrams#.VXYXeUYc9GM\" rel=\"noopener noreferrer\">Cumulative Flow Diagrams<\/a> (CFD\u2019s).<\/p>\n<p>Keep these measures, charts, and other tools visible, preferably loud and proud on a wall for all to see. The team, stakeholders, and other interested parties can immediately see the status of a project. It\u2019s transparent and serves as a valuable communication tool. If you can\u2019t put these artifacts on a wall, use tools that are shareable and collaborative and make sure those that want access have it.<\/p>\n<h3 id=\"continuous-improvement\">Continuous Improvement<\/h3>\n<p>Throughout your Agile life, seek to identify and learn where improvements can be made. Lessons are not captured and learned at the end of a project. It\u2019s like passing your driving test and tentatively taking your first drive without an instructor. You\u2019ll know what works and what you\u2019re supposed to do, but over time you\u2019ll tailor your driving skill and capabilities, learning new techniques. You\u2019ll even pick up bad habits. Look for them, understand them and find ways to improve.<\/p>\n<p>There are many opportunities for identifying what does not work and applying remedies. The built-in approach to this in Agile is the retrospective. This is the primary tool for reflection and adjustment. At the end of every sprint, take time with the team to improve how work gets done, how quality is delivered, how efficiency can be maximized, how waste can be minimized and how capacity is increased. When you identify measures for improvement, don\u2019t be tempted to fix all your problems right away. Identify the ones that will have the most impact and can be implemented in the next sprint. Measure and observe. If it had the desired impact, lock it up, write it up into your ways of working and definitions of done. If it doesn\u2019t work, think again. Any lessons learned that don\u2019t get put into the upcoming sprint can be parked and prioritized for attention in the next sprint.<\/p>\n<p>Tailor the process. Remove anything that does not work. Remove impediments. Your maturity as an Agile team will know no bounds if you let it.<\/p>\n<h2 id=\"beyond-agile-project-management\">Beyond Agile Project Management<\/h2>\n<p>It\u2019s important to know what happens after the project is delivered. Support &amp; maintenance are key to ensuring that once the project is in customer\u2019s hands it remains performant, customer feedback can be factored into future releases, and customer issues are dealt with appropriately. A project is a unique, time constrained endeavor. The product it delivers has a life after the project team has been disbanded. Ensure you are capable of supporting the product once it is live.<\/p>\n<p>Agile projects co-exist with more traditional approaches. Balancing the requirements for budgetary control and stakeholder visibility with the Agile aims of flexibility and responsiveness.<\/p>\n<p>A governance framework or Agile governance model is used in conjunction with standard Agile processes, such as Scrum. They work in two specific ways:<\/p>\n<ul>\n<li>They provide a wrapper for an Agile project by clarifying the processes that occur outside of development iterations (sprints). This includes providing clear criteria for the successful completion of project initiation and proper validation of the decisions and plan.<\/li>\n<li>They shift the emphasis of specific parts of the standard Agile process and highlight particular principles and techniques that need governance or support governance.<\/li>\n<\/ul>\n<p>In today\u2019s ever-changing world, organizations and businesses are keen to adopt a more flexible approach to delivering projects, and want to become more Agile. However, for organizations delivering projects and programs, and where existing formal project management processes already exist, the informality of many of the agile approaches is daunting and is sometimes perceived as too risky. These project-focused organizations need a mature agile approach \u2013 agility within the concept of project delivery \u2013 Agile Project Management.<\/p>\n<p>Learn and grow with your adoption of Agile. Only ever do what your team is comfortable with, ensure their voice is heard, and act on their requests. Encourage your team to adopt new and more valuable techniques when the time is right. Negotiate with the business and encourage them to understand what it means to be an Agile organization.<\/p>\n<p>Enjoy the journey.<\/p>\n<p><div class=\"swp_social_panel swp_horizontal_panel swp_flat_fresh  swp_default_full_color swp_individual_full_color swp_other_full_color scale-100  scale-\" data-min-width=\"1100\" data-float-color=\"#ffffff\" data-float=\"bottom\" data-float-mobile=\"none\" data-transition=\"slide\" data-post-id=\"2014\" ><div class=\"nc_tweetContainer swp_share_button swp_facebook\" data-network=\"facebook\"><a class=\"nc_tweet swp_share_link\" rel=\"nofollow noreferrer noopener\" target=\"_blank\" href=\"https:\/\/www.facebook.com\/share.php?u=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F\" data-link=\"https:\/\/www.facebook.com\/share.php?u=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F\"><span class=\"swp_count swp_hide\"><span class=\"iconFiller\"><span class=\"spaceManWilly\"><i class=\"sw swp_facebook_icon\"><\/i><span class=\"swp_share\">Share<\/span><\/span><\/span><\/span><\/a><\/div><div class=\"nc_tweetContainer swp_share_button swp_twitter\" data-network=\"twitter\"><a class=\"nc_tweet swp_share_link\" rel=\"nofollow noreferrer noopener\" target=\"_blank\" href=\"https:\/\/twitter.com\/intent\/tweet?text=The+Ultimate+Introduction+To+%23Agile+Project+Management+%23scrum&url=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F&via=YanadoTool\" data-link=\"https:\/\/twitter.com\/intent\/tweet?text=The+Ultimate+Introduction+To+%23Agile+Project+Management+%23scrum&url=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F&via=YanadoTool\"><span class=\"iconFiller\"><span class=\"spaceManWilly\"><i class=\"sw swp_twitter_icon\"><\/i><span class=\"swp_share\">Tweet<\/span><\/span><\/span><span class=\"swp_count\">26<\/span><\/a><\/div><div class=\"nc_tweetContainer swp_share_button swp_linkedin\" data-network=\"linkedin\"><a class=\"nc_tweet swp_share_link\" rel=\"nofollow noreferrer noopener\" target=\"_blank\" href=\"https:\/\/www.linkedin.com\/cws\/share?url=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F\" data-link=\"https:\/\/www.linkedin.com\/cws\/share?url=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F\"><span class=\"iconFiller\"><span class=\"spaceManWilly\"><i class=\"sw swp_linkedin_icon\"><\/i><span class=\"swp_share\">Share<\/span><\/span><\/span><span class=\"swp_count\">32<\/span><\/a><\/div><div class=\"nc_tweetContainer swp_share_button total_shares total_sharesalt\" ><span class=\"swp_count \">26 <span class=\"swp_label\">Shares<\/span><\/span><\/div><\/div><br \/>\n\r\n    <div class=\"subscribe\">\r\n        <div class=\"subscribe_content\">\r\n        <h1>Learn More About Project Management<\/h1>\r\n        <!--<h3>Reviews of the productivity tools every business needs<\/h3>-->\r\n            <div class=\"widget-content clearfix\">\r\n                <form action=\"https:\/\/netdokumenti.us2.list-manage.com\/subscribe\/post?u=04f16884b0ed8c0e274b55443&amp;id=a514f42814\" method=\"post\" class=\"mc-embedded-subscribe-form\" name=\"mc-embedded-subscribe-form\" class=\"validate\" target=\"_blank\" novalidate>\r\n\r\n                    <div class=\"input-group\">\r\n                        <input type=\"email\" value=\"\" name=\"EMAIL\" class=\"form-control\" placeholder=\"Enter your email address\">\r\n                                  <span class=\"input-group-btn\">\r\n                                    <input type=\"submit\" value=\"Send Me More About Project Management\" name=\"subscribe\"\r\n                                           class=\"btn btn-orange btn-sidebar-subscribe\">\r\n                                  <\/span>\r\n                    <\/div>\r\n                     <!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->\r\n                    <div style=\"position: absolute; left: -5000px;\"><input type=\"text\" name=\"b_04f16884b0ed8c0e274b55443_7c89eb2054\" tabindex=\"-1\" value=\"\"><\/div>\r\n                <\/form>\r\n                <!-- <\/div> -->\r\n                 <!--<script type='text\/javascript' src='\/\/s3.amazonaws.com\/downloads.mailchimp.com\/js\/mc-validate.js'><\/script><script type='text\/javascript'>(function($) {window.fnames = new Array(); window.ftypes = new Array();fnames[0]='EMAIL';ftypes[0]='email';fnames[1]='FNAME';ftypes[1]='text';fnames[2]='LNAME';ftypes[2]='text';}(jQuery));var  = jQuery.noConflict(true);<\/script>-->\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/p>\n<div class=\"swp-hidden-panel-wrap\" style=\"display: none; visibility: collapse; opacity: 0\"><div class=\"swp_social_panel swp_horizontal_panel swp_flat_fresh  swp_default_full_color swp_individual_full_color swp_other_full_color scale-100  scale-\" data-min-width=\"1100\" data-float-color=\"#ffffff\" data-float=\"bottom\" data-float-mobile=\"none\" data-transition=\"slide\" data-post-id=\"2014\" ><div class=\"nc_tweetContainer swp_share_button swp_facebook\" data-network=\"facebook\"><a class=\"nc_tweet swp_share_link\" rel=\"nofollow noreferrer noopener\" target=\"_blank\" href=\"https:\/\/www.facebook.com\/share.php?u=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F\" data-link=\"https:\/\/www.facebook.com\/share.php?u=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F\"><span class=\"swp_count swp_hide\"><span class=\"iconFiller\"><span class=\"spaceManWilly\"><i class=\"sw swp_facebook_icon\"><\/i><span class=\"swp_share\">Share<\/span><\/span><\/span><\/span><\/a><\/div><div class=\"nc_tweetContainer swp_share_button swp_twitter\" data-network=\"twitter\"><a class=\"nc_tweet swp_share_link\" rel=\"nofollow noreferrer noopener\" target=\"_blank\" href=\"https:\/\/twitter.com\/intent\/tweet?text=The+Ultimate+Introduction+To+%23Agile+Project+Management+%23scrum&url=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F&via=YanadoTool\" data-link=\"https:\/\/twitter.com\/intent\/tweet?text=The+Ultimate+Introduction+To+%23Agile+Project+Management+%23scrum&url=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F&via=YanadoTool\"><span class=\"iconFiller\"><span class=\"spaceManWilly\"><i class=\"sw swp_twitter_icon\"><\/i><span class=\"swp_share\">Tweet<\/span><\/span><\/span><span class=\"swp_count\">26<\/span><\/a><\/div><div class=\"nc_tweetContainer swp_share_button swp_linkedin\" data-network=\"linkedin\"><a class=\"nc_tweet swp_share_link\" rel=\"nofollow noreferrer noopener\" target=\"_blank\" href=\"https:\/\/www.linkedin.com\/cws\/share?url=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F\" data-link=\"https:\/\/www.linkedin.com\/cws\/share?url=https%3A%2F%2Fyanado.com%2Fblog%2Fthe-ultimate-introduction-to-agile-project-management%2F\"><span class=\"iconFiller\"><span class=\"spaceManWilly\"><i class=\"sw swp_linkedin_icon\"><\/i><span class=\"swp_share\">Share<\/span><\/span><\/span><span class=\"swp_count\">32<\/span><\/a><\/div><div class=\"nc_tweetContainer swp_share_button total_shares total_sharesalt\" ><span class=\"swp_count \">26 <span class=\"swp_label\">Shares<\/span><\/span><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>This article was originally published on Toptal\u00a0Engineering\u00a0Blog. Our good friends from Toptal\u00a0wrote this masterpiece introduction to Agile Project Management, and we were more than pleased to have it shared with Yanadoers. So, here it is. The Brief You\u2019re in charge of delivering your company\u2019s latest and greatest initiative that\u2019s going to change the face of&#8230;<\/p>\n","protected":false},"author":11,"featured_media":2033,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[129],"tags":[130,136,151],"class_list":["post-2014","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-project-management","tag-agile","tag-scrum","tag-project-mangement","show-featured-img","hd-dark-blue"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/posts\/2014","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/comments?post=2014"}],"version-history":[{"count":9,"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/posts\/2014\/revisions"}],"predecessor-version":[{"id":2558,"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/posts\/2014\/revisions\/2558"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/media\/2033"}],"wp:attachment":[{"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/media?parent=2014"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/categories?post=2014"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/yanado.com\/blog\/wp-json\/wp\/v2\/tags?post=2014"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}