Design Article
Rush is on to embed Web services
Bernard Cole
3/7/2002 3:31 PM EST
Embedded-systems developers, buffeted by the changes that ubiquitous connectivity has wrought in their world, are realizing the importance of learning new protocols, tools and methodologies to gain a competitive edge.
At this week' s Embedded Systems Conference (March 12-16, San Francisco), several companies expect to catch the attention of embedded developers by offering improved tools and environments within which to do designs targeting or using a new netcentric computing paradigm called Web services. Several companies, including Develop Online, IBM, Microsoft, QNX, Rational, and Red Hat, plan to announce major Web services, and at least four classes at the conference are devoted to Web services and their impact on embedded design.
Mike McGowan, director of marketing at DevelopOnLine (Tempe, Ariz.), says that his company-which works with embedded developers providing an online design environment-has noticed a change in the engineers' mind-set about doing development in an environment where connectivity is a given. "There will soon be no such thing as a totally isolated device, whether embedded, single board controller or desktop," he says. "If that is the case, then, what is base platform, the base set of conditions and requirements upon which everything else is built?"
The conclusion that Develop OnLine is coming around to, according to McGowan, is that it is not necessarily the hardware, the board, the CPU or even the operating system that is the basic platform, but the Web and Internet itself. "Given that everything else is built upon that common set of requirements," McGowan explains, "the important thing is to provide developers of systems, whether real-time deeply embedded or smart information devices of less deterministic or real-time nature, the mechanisms and tools by which to operate reliably in this space."
According to William Peisel, chief technology officer at NetSilicon Inc. (Waltham, Mass.) and a contributor to this week's Focus section, notes that Web services are the manifestation of change in the device marketplace. "Device development is evolving quickly as far as netcentric connectivity is concerned," Peisel says, "and many designs are now on the threshold of the next stage: enterprise-generated device connectivity. Just as earlier stages required that we rethink our assumptions about small footprint embedded and iAppliance designs, this next stage will push things to the limit."
Some companies, such as Microsoft Corp. (Redmond, Wash.), are looking to provide as complete a proprietary environment as is possible. At ESC this week the company will focus attention on the new tools just announced in support of the company's .NET framework, as part of its effort to promote its new, CE.NET embedded operating system. In particular, Microsoft will highlight its just-released Visual Studio .NET, which it says will eventually incorporate support for more than 20 programming languages, but with the notable exception of Java.
Initially Microsoft will offer its Visual Studio .NET in three editions: Enterprise Architect for development of large-scale applications for infrastructure; Professional, which enables developers to rapidly build XML Web services and next-generation applications for any Internet device; and various language-specific editions, the first three of which are Visual Basic .NET, Visual C++ .NET and Visual C#.NET.
Taking a much broader view of the needs of developers are a number of companies that have been plowing the Web services ground for a year or more. At ESC this week, some of these companies, notably IBM, Red Hat, QNX and Rational, will showcase new tools for the Eclipse platform, an open-source set of tools for Web development on both the device and server side that is just now becoming widely available free via download from the organization's Web site.
They as well as Borland, Merant, SuSe and TogetherSoft, have formed an open-source standards organization, called Eclipse.org, to manage the new platform that is being made available in open source under the Common Public License. According to Marc Erickson, project manager for Eclipse.org, Eclipse is an attempt to provide the glue by which developers in the increasingly netcentric computing market can move within the same tool environment, from an embedded or small footprint iAppliance computing or control device on which client software is being developed, to the server that is providing the services it uses as well as to the middle-ware infrastructure in between.
"Right now, a typical Web-based transaction generally originates from a client, travels through a communication channel to a server and is queued to a back-end processor for data access or integration with existing applications," Erickson said. "The result then travels back through the same path to the originating client."
In the Web services environment, a developer who wanted to develop a design needed at least three sets of tools: one centered on doing development in the client environment, another set of tools and skills centered on the HTML-based middleware information delivery and presentation, and yet another in the server environment.
The Eclipse platform, Erickson says, was written in Java to provide platform independence but designed to allow code and tools written in any language to be plugged into it. The platform provides source-code building blocks, plug-in frameworks and running examples that facilitate application-tools development. A complete sample plug-in-based integrated development environment for creating Java applications (JDT) is included. Code access and use is controlled through the Common Public License, which allows individuals to create derivative works with worldwide redistribution rights that are royalty free. An article describing the platform is included in this report.
Dan Dodge, president and chief technology officer at QNX Software Systems Ltd. (Kanata, Ontario), says his company signed on to the effort because operating systems based on open sources such as Linux and those built around more open distribution arrangements, such as the company's Posix-compliant microkernel-based real-time operating system, need tools that are equally open. "Embedded developers need an extraordinary range of tools, but to be truly productive, they need tools that can work together in a seamless, intuitive fashion," Dodge says. .
Other efforts to provide common development environments have achieved mixed results, according to analysts. One example is the Sun-inspired JavaBeans code base, which has an open-source community with several thousand subscribers, and, counting Sun, three companies developing tools atop the code base. Another 75 partners are building add-on modules.
In the month or so since the Eclipse.org initiative debuted and the open-source IDE became available for download, some of the group's founding participants have re-engineered products to incorporate the spec and are using ESC to showcase these new offerings.
IBM's Embedded Systems, for example, group will introduce the WebSphere Micro Environment, extending its server-based Web-services framework into the small-footprint netcentric embedded and iAppliance devices. Built into the new offering is complete compatibility with the Eclipse.org spec, combining a device-oriented Java programming environment with features of the server-based environment. Angus McIntyre, product manager, Embedded Software, Pervasive Computing Group (Toronto, Canada), says the Micro Environment provides developers with a production-level J2ME "Java powered" run-time environment, tested and certified for development and deployment on a range of iAppliances. IBM's J9 virtual machine powers applications built with the new tools environment.
According to McIntyre, the basic difference between the device and the server versions of the tools framework is that where WebSphere Studio Application Developer for servers is used to build J2EE enterprise versions of the Java spec, the WebSphere Studio Device Developer provides functions that enable Java developers to create, test and deploy e-business apps on small devices built around the small-footprint J2ME implementation.
QNX Software Systems, meanwhile, plans to introduce a set of tools redesigned as plug-ins to the open-source Eclipse. The plug-ins will include the company's standalone development tools for its real-time operating system, complemented by new ones for C/C++ edit/build/ debug, profiling, a graphical embedded code builder, a target agent, a syntax-aware editor and memory-analysis tools. Red Hat, another Eclipse signatory, will exhibit C/C++ development tools that the company has designed as plug-ins to the Eclipse platform.
At least one of the companies that signed on to the Eclipse.org effort, Rational, is taking extra steps to heal the breach between the XML/Soap-based, but Javaless .NET on one side and almost every other Java-based Web-services framework and tool provider on the other. Rational plans to exhibit its "bridgeware" product, the XDE Professional v2002. This tool It allows developers to code and design directly in the IDE of their choice-Microsoft's Javaless Visual Studio .NET or IBM's WebSphere Studio Application Developer-without switching between different loosely integrated tools.



