Agile software development is certainly not a new trend, nor is it a passing fad. If you look at the things happening in the market today you can see many changes that are being driven by this approach to software development. For instance, the way mobile applications are delivered in a very feature focused, iterative cadence; the way that vendors gather data from their products to allow better decisions to be made; and the way products help ensure a smooth transition from one version to the next. At Novell we’re been working to transform the Product Management and Development organizations to be more agile. The value we see in Agile includes:
- Short feedback loops allow us to develop the most value capabilities first, get it out to you, and then get feedback on what to do next.
- Reduced time between code being developed and tested means there’s less waste in the development process and results in higher quality code.
- Adoption of techniques such as Acceptance Test Driven Development (ATDD) and Test Driven Development (TDD) help our development teams to really understand the requirements and deliver high quality code that meets those requirements.
- Short iterations allow fewer interrupts in committed work, allowing more predictability.
- The visibility provided by Agile allows us to measure and monitor our process and refine it quickly, just like our software.
At the same time we are embracing Agile in the company, we are also doing so with an eye towards Lean systems level thinking. By adopting these principals and applying them to our Agile process, our goal is to ultimately deliver you higher quality software, with more value, in a more timely fashion.
The process of implementing lean-agile across an organization as broad and diverse as Novell is something that is going to take a while. Some of our teams, like the ZENworks team have been practicing some of the agile principles for a long time, but are just really getting some of the lean principals and other tools under their belt. Other teams are currently transitioning to a lean-agile way of working from a more traditional development model.
In addition to the internal process changes required here at Novell, there will be changes that you will notice:
- Introduction of telemetry in our products. As a product management team we are prioritizing the introduction of telemetry into our products. This means that if you opt in, we will gather anonymous usage statistics about the capabilities you are using in our products. We hope that as we introduce this capability you will opt in to help us better understand how you are using the product so that we can make better decisions, provide more focused releases, and hopefully provide you the right value faster.
- Updates to the install or upgrade process. As we focus on moving to a more Agile process and delivery method, it is critical that you be able to easily deploy the newer software to your servers and devices. We’re looking carefully at each of our products to determine whether they have an upgrade process that facilitates this model — if not, you’re likely to see updates to those products in this area. A good example of this is the new ZENworks Update Service (ZeUS) which will be introduced in ZENworks 11SP4 in an effort to further bulletproof the agent upgrade and the new software appliances we are introducing in the same release. Changes are also underway in both Filr and iPrint to improve your upgrade experience.
- More frequent releases with incremental value. Once we’ve made sure it’s easy to upgrade from one version to the next, we’ll step up the release cadence and deliver smaller releases. This means you’ll get some new value earlier, instead of having to wait for all of the new value to be delivered.
- Clarifications to the support lifecycle and improved value for your maintenance dollar. Today at Novell, we have a 3-year general support lifecycle on a major version. When you are releasing on a frequent cadence it is unlikely that you can provide patches to every release in that 3 year period. Over time, I expect clarifications similar to what you’ve seen with ZENworks where major releases are supported for the 3 year period, but there is clarification of what sub-releases are currently receiving patches. We will do our best to ensure that the cadence is appropriate based on our interactions with you.
- Roadmaps and the cone of uncertainty. We all love to pretend that we can predict exactly what’s going to happen 18 months or more from now. Turns out, we’re often wrong, and we set wrong expectations with you. The “Cone of Uncertainty” is a concept in Agile that helps you understand that the further away something is to being delivered, the more uncertainty there is. As such our roadmaps will reflect this, the near term releases will have significantly more detail than the longer term releases. In the longer term releases we’ll talk about themes and broad epic level value, while in the short term we’ll have better visibility. Also because of the constant feedback loops and market changes the longer term deliverables may be subject to change. These principals will help us more accurately help you plan for the future.
- Engineering response. One of the biggest benefits of Agile is the ability to reprioritize items every iteration or sprint. This means that critical issues that you find today and tomorrow will both be addressed with roughly the same process; however, non-critical issues are evaluated every iteration to determine if they are higher priority than a new value capability and if so we can bring those in. The constant evaluation of these will allow us to also keep NTS more aware of when a particular issue will be picked and addressed.
- New enhancement request system and process. We are currently in the process of preparing a new enhancement request system that will let the user community help us prioritize the value that is most important to you. You’ll be able to see the enhancements that are coming in, comment on and vote for them, enter your own, and see which ones we’ve planned or completed. Look for more details on this in that next month or so.
Novell is committed to moving to a more agile means of delivering software to the market. We look forward to better serving you by delivering high quality software in an incremental fashion that includes the most important value to the majority of our customers. If you have questions or comments about Agile at Novell please feel free to reach out to me — Jason Blackett firstname.lastname@example.org