Insights are critical to generate lasting change. They enable you to discover and understand what are often barriers to success for many organizations. Those fundamental yet elusive aspects to change most consulting groups don't discuss but are absolutely necessary for sustained improvement.
SPC's relevant insights provide a practical and discerning perspective on best practices you need to generate lasting positive change in key areas such as requirements development and management, process change and adoption, and estimation and project planning.
Read on and discover these insights for yourself!
||Requirements Development & Management
- Requirements represent a common and shared understanding of what needs to be done
The purpose of the requirements process is to communicate a shared understanding of what the system requires among the project stakeholders. The need to communicate requirements is directly connected with the need to document requirements. If requirements are not documented in some manner, it is impossible for multiple individuals to come to a common understanding and agreement of the requirements. Failure to document requirements in a format that promotes clear, complete, and comprehensive understanding is a serious risk to project success.
- Take the time to think through requirements to really understand them
Requirements are a valuable corporate intellectual asset. However, many departments take a purely tactical approach and treat requirements as a disposable commodity. They don't invest adequate time and resources into this critical phase of the project lifecycle. Don't make the same mistake. By taking the time to really understand a project's requirements, you will be far more likely to build a product that meets customer expectations. Moreover, well defined requirements can be used in controlling costs, quality, and time to market for future projects. Time well invested!
- Detail level should correlate to anticipated future usage
While all projects require accurate and complete requirements, the level of detail involved should correspond to the active life of the product and its usage. The longer the shelf-life and higher usage rates, the more detail will be required for development. Plan and invest your requirements effort accordingly; the “good enough” protocol is especially valuable in these scenarios.
- Everyone owns the requirements
Working collaboratively is key for successful requirements development. These decisions should be made as low in the organization's hierarchy as possible by people who are close to the issues and well informed about them. Engage in participative decision-making over consensus decision-making. Reaching a consensus is ideal, but you can't hold up progress while waiting for every stakeholder to align on every issue.
||Estimation & Project Planning
- Estimates are the basis on which decisions will be made to spend significant amounts of resources and money.
The costs are incredibly high if they are not accurate! The most successful projects are based on plans where the estimates reflect the reality that is going to take place. In other words, these projects reflect actuals in terms of resource utilization and efficiency costs.
- Without good estimation, a good project plan is impossible because your plan is based on fuzzy information.
A good estimate provides a prediction of effort, a prediction of schedule, insight into the risks of your project (specifically the ability of the project to meet business needs), and an indication of the return on investment (where the “investment” is your estimate) for the venture. It's important to apply adequate rigor to create meaningful estimates.
- Uncertainty is part of the estimation process.
In most development organizations, there is a large amount of uncertainty at the beginning of a new project. Often, developers don't know what the end product will be until they start building it. As such, there is little information on which to base an accurate and precise estimate in the early days of the project. Smart development teams recognize that uncertainly is part of the estimation process. They match the precision of their estimates with the amount of information available and re-estimate at multiple stages as they get a better understanding about the project.
- Accurate estimates aren't the end goal; the objective is to deliver a successful software project that meets a true business need. Good estimates are an important part of that equation. Other key aspects to the success equation include good target setting (i.e., statement of a real business need) and effective control (i.e., skilled team and project manager).
||Process Change & Adoption
- Without a business driver, process change and adoption is unlikely to get management support
It is critical that the target of the improvement program be relevant to the organization's needs. You accomplish this by first identifying the organization's needs and then aligning the required process change (which could include the use of improvement frameworks) with those needs. If your current improvement program does not clearly connect to the needs of the organization (i.e., to support the company in meeting a business driver), it may be wasting valuable resources.
- Your organization has a finite ability to accommodate process change and adoption - don't push beyond it
When any process change initiative is being considered, it is important to evaluate the proposed actions and the problems being solved relative to the organization's readiness for change. Solutions that outpace this capacity will deliver the exact opposite of its desired outcomes – inefficiencies instead of productivity and quality gains, chaos instead of cohesion, and conflict instead of alignment. Be wary of grand schemes; instead look at what you need and what your organization can accept.
- Focus on having the right weight of process
Process should be based on enabling principles that provide the appropriate guidance, focus and support to optimize resource utilization. Anything less means there's waste in that teams are not as efficient or effective as they could be. Too much process strangles creativity and can hamper progress. The right weight of process ensures people stay focused on the organization's goals, that they know what is expected of them, and provides them with the independence to make appropriate choices.
- Even small process improvements can make a big difference
The costs of improving software project practices are usually lower than the costs of not improving them. While the pains such as project delays, dropped functionality, and poor quality may be all too real, the associated costs are not likely to be exposed. Typically, organizations are wasting at least one-half of all their development expenditures on rework, or recovering from inefficiencies. There are also soft costs that need to be considered, such as low morale leading to high turn over. In addition, product-driven companies can incur opportunity costs. Poor quality and delivery delays can mean reduced sales as clients look elsewhere to satisfy their needs. Even small improvements can make a big difference.
SPC's relevant insights and deep domain knowledge – together, they deliver lasting change for organizations wanting to optimize their development people and practices.
Put SPC's Relevant Insights to work for you. Contact us today.