Tagged: agile

Development of Ubuntu 10.04 LTS to incorporate major changes.

The Ubuntu team has decided to take a different approach to development for the next Long Term Support (LTS) release of Ubuntu. Lucid Lynx, which is slated for an April 2010 release, will benefit from these changes through increased stability, more focused agile development and a tighter synchronization with the main Debian development cycle. According to the Ubuntu LTS Wiki, the overall aim of an LTS release is to be more enterprise focused with increased hardware compatibility and more overall testing. What is not intended for an LTS release is cutting edge package inclusion nor a hot of new features. Because the core focus of an LTS release is stability, the user base should appreciate the level of refinement that will go into the release and not fret over the lack of ‘cool new features’ that often accompany non-LTS releases.

So how does Ubuntu plan to ‘reign in the sprawl’ with respect to development of Lucid Lynx? I believe Matt Zimmerman, technical leader of the Ubuntu project, said it best on his blog.

Merge from Debian testing

By merging from Debian testing, rather than the usual unstable, we aim to avoid regressions early in the release cycle which tend to block development work. So far, Lucid has been surprisingly usable in its first weeks, compared to previous Ubuntu releases.

Add fewer features

By starting fewer development projects, and opting for more testing projects over feature projects, we will free more time and energy for stabilization. This approach will help us to discover regressions earlier, and to fix them earlier as well. This doesn’t mean that Ubuntu 10.04 won’t have bugs (with hundreds of millions of lines of source code, there is no such thing as a bug-free system), but we believe it will help us to produce a system which is suitable for longer-term use by more risk-averse users.

Avoid major infrastructure changes

We will bring in less bleeding-edge code from upstream than usual, preferring to stay with more mature components. Where a major transition is brewing upstream, we will probably opt to defer it to the next Ubuntu cycle. While this might delay some new functionality slightly, we believe the additional stability is well worth it for an LTS release.

Extend beta testing

With less breakage early in the cycle, we plan to enter beta early. Traditionally, the beta period is when we receive the most user feedback, so we want to make the most of it. We’ll deliver a usable, beta-quality system substantially earlier than in 9.10, and our more adventurous users will be able to upgrade at that point with a reasonable expectation of stability.

Freeze with Debian

With Debian “squeeze” expected to freeze in March, Ubuntu and Debian will be stabilizing on similar timelines. This means that Debian and Ubuntu developers will be attacking the same bugs at the same time, creating more opportunities to join forces.

He goes on to talk more about the set of tools that the developers will be using to track their progress and the use of agile development methods to make that easier. The developers will also be posting their progress publicly so that the community can follow along. In essence, the final goal of this LTS release is to gain the confidence of IT departments who will be deploying Lucid Lynx and maintaining it for a period of years thereafter.