Business College Days Technology

Ending Microsoft’s Cowboy Spaghetti Code

\'WindowsHaving studied Total Quality Management this quarter, I\’m aware that Microsoft is notorious for not implementing the processes that would produce the best quality output. Problems could be always patched over anyway. Microsoft\’s softwares, let alone Windows, are historically known to be vulnerable to plethora of bugs. So what gives? One remarkable person stirred several changes in Microsoft for good. His name is Jim Allchin, senior Microsoft Corp. executive.

In the past, Microsoft let thousands of software engineers create their own code. As the chief architect, what Bill Gates does is filter those programs that produce the least bugs to get into the base code of Windows. Engineers would stitch those chunks of codes to create the intended program afterwards; hence, inadvertently creating spaghetti codes. Programmers literally browse thousand lines of codes if a bug pops up, making bug hunting a nightmare.

Google, Apple, and other open-source companies impose threat to Microsoft\’s monopoly in software market. For instance, Google introduced its Gmail service out of the blue, competing with Microsoft\’s Hotmail service. Mozilla Foundation introduced Firefox with features that Microsoft planned for Longhorn, reducing Internet Explorer\’s popularity. There are many more companies that produce quality softwares and compete directly with Microsoft products. As these companies continue to grow, Microsoft had to continuously improve to catch up with the pace of development.

Jim Allchin proposed a change to the way Microsoft create codes. Microsoft should stop doing the same practice it had used in building old versions of Windows. The company must create software that would function like Lego blocks — having a single function and were designed to be connected onto a bigger piece. Microsoft had to be rebuilt from scratch in order to make it work. To make Allchin\’s plans successful he had to get Brian Valentine and Amitabh Srivastava for help. Before the team proceeded with the plan, they gathered different opinions about the challenge and most engineers were willing to change. It was a good sign.

The team of Mr. Srivastava automated the testing that had used to be done by manually. If a feature had too many bugs, it would be rejected. If engineers had earned too many bug counts in his codes, they are put to \”bug jail\” and banned from writing new code. After all, the goal was to get engineers to do it right the first time.

Mr. Valentine is the enforcer of the challenge. Sometimes engineers would resist the new methods of coding. He said to one coder, \”Is your code perfect? Are you perfect? If not, you should shut up and support this effort.\” In any case, good coding practice needs enforcement.

Windows Vista beta 1 (codename: Longhorn) was announced on June but it was rescheduled on July to make Longhorn more like Lego blocks. From experience, the programmers expected tens of thousands of bug reports from Windows Vista beta 1 but they got a couple thousand bug reports only. It was a sign of improvement.

Provided that the new processes would be followed religiously by all Microsoft software engineers, Windows Vista should be able to exhibit a leap of improved level of quality.

Based on: The Wall Street Journal

By Marck V.

Filipino IT consultant on enterprise software. On his spare time he do web project management, photography and blogging. Web 2.0 enthusiast.