How Do You Know if a Software Feature is Done?

A clearly-defined Definition of Done is absolutely essential to agile software development. At the end of every sprint or increment, software is demonstrated to the product owner and relevant stakeholders to make sure that the increment is done. But too often, we end up accepting the work completed during the increment even though it isn’t truly done yet – “DONE-done,” as we call it at Enfocus Solutions. A Definition of Done creates a shared understanding of what it means to be finished. According to AgileAlliance.org, the Definition of Done is a list of criteria that must be met before a product increment is considered “Done.” The Definition of Done is also an expression of the team’s quality standards. A more precise Definition of Done is often associated with the delivery of higher quality solutions. Generally, the team will increase their velocity as their Definition of Done gets refined, because they will improve release planning and spend less time fixing old problems. The most important function of the Definition of Done is that it provides a clear description of what it means for an increment to be done and ready to be implemented. It helps us avoid misunderstandings and miscommunications, and makes sure that there’s transparency around what the team is doing during the sprint. It is difficult to pin down a Definition of Done that suits all circumstances. Each organization needs to define their own definition; the checklist found in this pocket guide is meant to serve as a guideline for building your own Definition of Done for an iteration. Here’s a couple tips for dealing with the Definition...

Inspect and Adapt Activities Should Be Happening All the Time

At Enfocus Solutions, we’ve adopted much of the Scaled Agile Framework®, the premiere scaling framework for scaling agile developed by Dean Leffingwell and Scaled Agile, Inc. One of the many aspects of the framework that makes it such a useful tool is Leffingwell’s concept of Inspect and Adapt Workshops. Building on one of the principles taken from the Agile Manifesto that, “at regular intervals, the team reflects on how to become more effective,” SAFe®  incorporates the Inspect and Adapt (I&A) workshop at the end of a release or Program Increment (PI). According to SAFe®, “I&A is to a Release Train what the sprint demo and retrospective are to a team—a regular, programmatic, time to reflect, problem solve, and take on improvement actions [to] identify actions needed to increase the velocity, quality and reliability of the next increment.” When discussing the Inspect and Adapt workshop, the Scaled Agile Framework® describes I&A activities occurring only on the program level. However, at Enfocus Solutions, we like to take it a step further and carry out Inspect and Adapt activities at every level: portfolio, program, and team. This way, we review the solution constantly, making it more likely that we catch problems and issues as they happen, instead of during a demo with a stakeholder. At each level in the organization, there are activities that can be performed that will help ensure your teams are continuously inspecting and adapting, not just during program level events: Portfolio—A formal Performance Evaluation (or, inspection) should take place to ensure the Program Portfolio achieves the desired performance by measuring business outcomes against predetermined KPIs. There may be...

Agile Project Management Q&A

You guys did it again! Our last webinar, Enterprise Agile Project Management, was an incredible success. There were many thoughtful questions asked that I unfortunately didn’t have the time to answer. The Webinar Q&A can now be downloaded alongside the rest of the webinar resources, including the recording and slide deck. Here are a few of the questions asked during the webinar: Q: Today, the role of scrum master is the same as Project Manager in traditional projects, they just use different terminology and PDM process. Is this correct? A: A Scrum Master and a Project Manager are not the same. Organizations that have made this assumption have seen disastrous results. The traditional Project Manager is a leader, a decision maker, and a planner who manages the project and his team, and is the person accountable to the business for accomplishing the project objectives. The role of the Scrum Master is more of a coaching and facilitation role, a role that sits between the project and the customer. Q: Is Project Manager role the same as Product Manager role in this presentation? I’ve just submitted for a position that states the role as a PO and went on to state tasks as a PM. I personally don’t think this is a successful set up. Please advise. A: No, the project manager and the product manager are not the same role. The project manager is responsible for managing releases and associated business change. The project manager also manages assignments among multiple teams when multiple teams are involved. The product manager is responsible for determining what new features are needed in...

PMI-PBA vs. IIBA’s CBAP

With the PMI’s recent release of the new Professional in Business Analysis (PBA) certification, business analysts (BAs) in the community are asking what is the difference between this new PMI-PBA and the IIBA’s existing Certified Business Analysis Professional (CBAP)? Also, if we’re looking into getting certified, which one should we go after? In their announcement to offer the new certification, the PMI quoted a statistic by the US Bureau of Labor Statistics that “business analysis jobs are predicted to increase 19 percent by 2022.” We agree that this is a good reason for more people to get certified in the field of business analysis. We’re looking at this new certification from the PMI as great news; business analysis as a profession needs to break through the lack of recognition and demand more respect from the global community so that we can all be more successful in our jobs. This certification is definitely a step in that direction. But before you go and sign up for the PMI-PBA pilot program, we recommend making sure it’s the right certification for you. After looking at the available literature, including the PMI-PBA Examination Content Outline (ECO), it is apparent that this particular certification is focused on a very specific area of business analysis, and is developed for a very specific subset of business analysts. According to the PMI’s literature on the new certification, “business analysis is a critical function that helps define business requirements in order to shape the output of projects and drive successful business outcomes. In order to ensure the quality of requirements and projects, it is crucial that individuals be...

Traditional PMOs vs. Enterprise PMOs that Deliver Value to the Business

The common Program Management Office (PMO) is constantly challenged and called into question by senior management and the C-level. Without executive support, the PMO struggles to be successful in delivering program and project outcomes that effectively provide business value. Traditional PMOs have a tendency of becoming too bureaucratic and too focused on managing tasks instead of value, increasing project complexity and causing headaches across the enterprise. But recent research proves PMOs can still be effective at delivering business value if managed the right way—at the enterprise level. To deliver value with initiatives and reduce project complexity, the organization requires centralized coordination of processes and practices. In a traditional, departmentally-based PMO, it is very difficult to align projects with the strategic priorities of the organization. These types of PMOs may be successful on a departmental level but are often not taken seriously by the rest of the organization. When PMOs are departmentally-based, they tend to define value in different ways, skewing project results. Instead, the organization needs a PMO that provides a consistent mechanism to standardize practices and evaluate progress of initiatives across the organization, without creating unnecessary complexity. When the PMO is operating at an executive level, there is an increased likelihood that project outcomes align with organizational strategy because the PMO has the ability to affect the entire organization. According to a recent study, strategic PMOs that implemented an enterprise-wide approach in 2013 tended to have the most mature processes and practices, and were the most likely to achieve consistently successful project outcomes. The findings indicate that the traditional approach to Program Management Offices is transforming to an...

Migrating Applications to the Cloud: A Guide for PMs and BAs

Simply put, cloud computing is computing based on the Internet. In the past, people ran applications on a physical computer or server in their building, cloud computing allows people access the same kinds of applications more easily and anywhere through the Internet. Cloud computing is growing rapidly because it just makes economic sense. So why are so many businesses moving to the cloud? It’s because cloud computing increases efficiency, helps improve cash flow and offers many more benefits. Let’s explore some of these benefit: Automatic software updates Many organizations that have implemented an on-premise ERP or CRM system know how painful it is to upgrade the software. With Cloud computing, updates are applied automatically — this is part of the basic service and often saves organizations millions of dollars per year. This frees up customers’ time that can be used on other important tasks. Flexibility The Cloud provides much more flexibility for increases and decreases in demand. For example, if a company needs more bandwidth than usual, maybe for some special promotion, a cloud-based service can instantly meet the demand because of the vast capacity of the services’ remote servers. In fact, this flexibility is so crucial that 65% of respondents to an InformationWeek survey said “the ability to quickly meet business demands” was an important reason to move to cloud computing. New users can be added or removed very easily adjusting to business demand as needed. Disaster recovery Disaster recovery is often much easier for cloud based services as this capability is a standard part of the service. Cloud computing providers take care of most issues, and they...