SharePoint 2007 comes with a tool that promises to drastically reduce the complexity in building the look and feel...
of Web applications. This, in turn, aims to allow developers to focus on coding, in Visual Studio 2005, some of the underlying complexity in Web-based SharePoint applications.
For Microsoft, the objective is to make SharePoint more than just a document management platform for intranet applications. Several apps on the Internet today demonstrate that this is clearly possible. For one analyst, though, SharePoint 2007 offers less to developers than it does to designers, and the end result is not quite ready for a Web 2.0 world.
SharePoint 2007 applications exist as a set of services. While previous SharePoint iterations involved development in FrontPage, the most recent Windows SharePoint Services, v3.0, is based upon ASP.NET 2.0. Thus, Karen Hobert from the Burton Group said, there is no real difference between SharePoint apps and Web-enabled .NET 3.0 applications.
In a recent report on the subject, "SharePoint App Development: Now Starring Office SharePoint Designer," Hobert discussed the new role of programmers in this evolving landscape.
Within this landscape are three types of people customizing SharePoint sites -- site owners, designers, and developers -- and their tasks can often overlap.
A site owner would use the tools available on the Web site itself to edit settings or edit pages using galleries, Web parts and templates. This could include a content manager, project manager or department manager, but typically it is not an developer, Hobert said.
As for the other personas, she said enterprises need to make a distinction between designing the look and feel of a Web application and developing the app and the gadgets and Web parts therein. The design work can be done in SharePoint Designer, but the development is best done in a toolset like Visual Studio.
Design in SharePoint but develop in Visual Studio
Chris Bryant, senior product manager of the Office platform at Microsoft, said the main new class of applications that developers can build in Visual Studio 2005 are primarily composite business apps. These applications expose line-of-business data and processes directly within the interfaces that people use regularly, like SharePoint or the Office clients.
Bryant noted that developers should look at doing three things on the SharePoint 2007 platform -- exposing data from other systems, building and integrating Web services, and building composition elements, chiefly Web parts.
"With things like workflow, the Business Data Catalog, enterprise-grade search, the extensibility of the user interfaces and the file formats, the platform has reached critical mass in terms of its capabilities for building true enterprise applications that unlock the business value of IT," Bryant explained.
"Also," he added, "we have a new set of capabilities in SharePoint  that we didn't have in 2003, such as enterprise content management, business process management and e-forms and [business intelligence]. Customers can build applications that leverage these capabilities or extend these capabilities."
As is the case with Windows Presentation Foundation and Silverlight work, one of Microsoft's objectives with SharePoint 2007 is to make it easier for developers and designers to work together, Bryant said, adding, "The designer can build a great-looking site that is conformant with corporate standards and leverage what the developer builds to plug into that site."
Designers should find that, for UI work, SharePoint Designer is a suitable alternative to FrontPage or Dreamweaver. Moreover, since SharePoint 2007 is based on ASP.NET 2.0, designers also have the ability to assemble Web content and integrate of data views and pages. Finally, SharePoint's support for Windows Workflow Foundation means there are readily available API calls for integrating workflow into SharePoint 2007 applications.
In Hobert's view, this broadening of capabilities that SharePoint 2007 offers leaves programmers with a bigger job to do.
It is they, she said, who are going to be doing the heavy-duty business process management workflows that integrate not only SharePoint content but also external repositories -- for, ultimately, collaborative applications integrate with many information sources. "I think developers are going to have a lot of work to do in extending existing environments, and bringing them out to the rest of the corporate environment," Hobert noted.
Ready for the move from intranet to Internet?
An additional wrinkle is the notion that SharePoint applications are now robust enough to move beyond the corporate environment and onto the World Wide Web.
"[W]e believe SharePoint 2007 does provide a great platform on which developers can create Web 2.0 applications," Bryant said.
At Microsoft's MIX07 conference, Tyler Butler, a program manager for Microsoft Office SharePoint Server, pointed out three Web applications built on SharePoint -- Hawaiian Airlines, mobile phone game firm Glu Mobile and music and event firm Hed Kandi Radio.
Butler also indicated that, since the SharePoint 2007 platform is built on ASP.NET 2.0, developers can use ASP.NET AJAX and Silverlight to provide a rich user interface.
At this stage of the game, though, Hobert said she isn't so sure the Web 2.0 label fits fort SharePoint apps.
"When you go to a SharePoint site today and click on a link, you are simply going to another Web page. I cannot hover over a link and see a summary of information. In today's parlance, that would be considered Web 1.0," she said. "Microsoft has started, but they are really shortsighted in how dynamic these applications need to be."