Resources to Do It Right - Realizing the Potential—Partnering with Microsoft into the Future Evaluating Platforms...

Resources to Do It Right
Developing enterprise-ready software is a difficult undertaking. The discipline of engineering a comprehensive platform such as Windows is a complex one, requiring years of proven experience, tight orchestration between component development groups, such as networking, security, and an overall focus on the user experience.
The software components must be developed, tested separately, tested together, and then tested in compatibility labs that contain literally thousands of devices and popular third-party applications. Add to this the requirement to account for functioning in mixed environments, and support for prior versions of the operating system that require older protocols, and the undertaking quickly escalates into a project whose scope is beyond the capabilities of most commercial software companies, let alone a community of developers. On average, for every 3 months of code development, there’s a corresponding 9 months of testing performed.
Microsoft has been engineering operating systems for over 20 years. Experience has shown that in addition to having a large number of highly skilled software developers on staff, an equal or greater amount of resources needs to be focused on testing, user experience, and managing the development cycle. For example, the Windows business division overall has a ratio of 1.2 test engineers for every developer. In more challenging areas such as Windows management technologies, the ratio increases even further to 1.7.
“It’s about options and choices. By choosing the Microsoft Windows platform, customers have a wide selection of choices in support and training for their own IT staff.
Another benefit of the widespread popularity of Microsoft solutions is that it is not difficult to find experienced and qualified technicians and developers to support the products we use. This familiarity and Windows’ famous ease of use mean that extensive training is unnecessary.”
--Helen Li, director of Café de Coral Group.
Source: http://www.microsoft.com/asia/crp/search2.asp?CaseID=91
| In contrast, the Linux community has not really moved beyond features implementation to the harder problems of testing such as backward compatibility testing, integration testing, and usability testing. As an example, in the area of compatibility, the Linux Standards Base (LSB) group exists to try to manage version problems for Linux kernel releases. In spite of this effort, it is likely that an application will still face challenges as new versions of Linux are released. The LSB specification does not attempt to manage differences in utilities and add-on packages, nor does it cover extensions to the kernel, which are commonly made to differentiate vendors. When changes in are made in the kernel, there is no thought given to the effect on all the add-on product for the many independent development sources. This includes the multiple user interface choices for Linux.
Customers may have to either pay for services to modify the application to work around the kernel
changes or do it themselves. Even with IBM in the picture, in the end, the Linux kernel developers still rely on a community of loosely-affiliated developers to think about how to solve compatibility problems and test software updates and changes. The following account comes from a Microsoft customer that deployed a retail Internet site on Linux and experienced challenges.
|