Most Read Latest News Blog Resources

Microsoft worried over .NET fragmentation




August 11, 2008 — 
Multiple product groups at Microsoft are contributing functionality to the .NET Framework, but juxtaposed with that growth is the company’s concern that too many cooks might spoil the broth, a Microsoft internal document reveals.

The document, viewed by SD Times, notes that upon its introduction in 2002, .NET’s greatest value proposition was its delivery of a consistent, clean and relatively small framework that was more easily approachable by developers than Microsoft’s prior stacks. It calls out ActiveX, MFC, Win32 and various OLE libraries as examples of fragmented technologies.

Larry O’Brien, an independent analyst and consultant who writes the Windows & .NET Watch column for SD Times, said he agreed with Microsoft’s assessment “100%.”

Now, .NET itself is at risk from “rampant” growth of its libraries and a lack of coordination among concepts introduced by and since .NET 3.0, according to the document.

Some of the subsets cited in the document as causes for concern are Windows Communication Foundation, Windows Presentation Foundation and the ADO.NET entity framework. The latter is an offshoot of Microsoft’s shelved Windows Future Storage subsystem.

Several industry experts were in agreement. “I think the biggest risk is the competition between the program groups that are adding things to the mix,” said Patrick Hynds, a regional director of the volunteer Developer Platform evangelism group, recognized by Microsoft for technical expertise. “For instance, right now you have LINQ to SQL and the Entity Framework, which seem to solve some of the same problems with very different approaches.”

He added that while Microsoft was introducing “very good innovations,” the piling on of concepts might leave developers hard-pressed to recognize which ones are appropriate for their requirements without first consulting documentation or seeking other guidance.

The problem of fragmentation is not unique to .NET, according to Gartner research vice president Mark Driver. “Microsoft has the same problem that Java has,” said Driver. He explained that each platform is introducing provisions for different contingencies and developer niches, each with its own approach to doing things.

In a recent example, Microsoft is preparing to integrate a model-view-controller pattern in .NET 3.5 Service Pack 1 (SP1) for developers who prefer to segregate business logic from presentation logic. SP1 was shipped today.

Driver acknowledged that some degree of overlap is inevitable when multiple masters are served but added that Microsoft’s track record of fragmenting its stack might give some developers pause.

“[Microsoft is] notorious for introducing overlapping technologies. People look at Microsoft and assume that they will err on fragmentation vs. controlled choice,” he said. “Execution is key here.”

In response to inquiries about consistency in .NET, Shanku Niyogi, product unit manager of the UI Framework and Services team at Microsoft, said during a July 31 meeting with SD Times that Microsoft was attempting to create a “consistent story” by integrating technologies into .NET that work well together and adhere to a consistent programming model.

“We are looking at factored subsets [of .NET] that make good sense for specific scenarios,” he said, citing Silverlight and client profiles (which are debuting in .NET 3.5 SP1) as examples.

Indeed, some of Microsoft’s changes may be spot-on. Gartner’s Driver acknowledged that features added by .NET 3.0 and 3.5 make him much more likely to recommend the framework for enterprise-scale development. He noted that .NET must ultimately assume the responsibilities of the preceding Microsoft stack, pulling diverse functionality into managed code.

.NET’s standardized framework libraries, coupled with virtualized memory management, result in an order of magnitude increase in developer productivity, said author and Microsoft regional director Billy Hollis.

But that very increase in developer production ironically has planted the seeds of .NET’s destruction, he said.

“Since framework teams at Microsoft can develop managed code software so much faster than they could using C++, their own efforts are dramatically accelerated. They no longer have the time to do coordination with other teams; such coordination would quickly become the bottleneck to getting their own efforts out the door. In a culture such as Microsoft, which values shipped software above all else, such a bottleneck will by necessity be bypassed,” Hollis said.

The resulting surface area, he said, is quickly becoming too big for developers to assimilate. That “complexity barrier” is now “the bottleneck” for developing software in .NET, said Hollis.

“It cannot and will not be overcome by ‘more of the same’ development efforts by traditional Microsoft product teams,” he concluded, predicting that Microsoft may one day be prompted to introduce another layer of abstraction on top of .NET.


Related Search Term(s): .NETsoftware developmentMicrosoft


Share this link: http://www.sdtimes.com/link/32690
 

Add comment


Name*
Email*  
Country     


  • Comment
  • Preview
Loading



 
 
 
 
News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 
Download Current Issue
ISSUE 3/15/2010 PDF

Need Back Issues?
DOWNLOAD HERE

Receive the print Edition?


 
blogs tab
Google Code turns 5
Google Code Turns 5, and adds a Paxos Algorithm to make the system more stable and reliable.
03/17/2010 11:16 AM EST

Test your Visual Studio 2010 know-how
Microsoft is offering free beta certification exams for Visual Studio 2010.
03/17/2010 11:08 AM EST

Microsoft lifts the hood on IE9
Microsoft is previewing IE9.
03/16/2010 01:10 PM EST

 

Events calendar tab
3/22/2010 to 3/25/2010
Santa Clara, Calif.
The Eclipse Foundation

4/12/2010 to 4/14/2010
Las Vegas
Penton Media

4/12/2010 to 4/15/2010
Santa Clara, Calif.
O'Reilly Media

4/19/2010
New York City
Flagg Management

4/25/2010 to 4/28/2010
Overland Park, Kans.
IIUG