Novell's Vision of Client-Network Computing for Developers
Articles and Tips: article
Senior Director
Developer Services Division
01 Jul 1996
This DevNote defines the strategic initiatives Novell has established to enhance the development of new applications and components that take advantage of the network (network-aware) and how Novell's initiatives of Net2000 and Java meet developer needs in building client-network applications.
Introduction
Novell's vision is to enable client-network computing, which is distributed server-based processing that is independent of client access. Central to this vision is the establishment of networking services that will enable applications and components to be accessed, managed, distributed, and shared across a network. Client-Network computing represents a new paradigm in distributed computing and processing. The obstacles of building distributed applications using traditional client-server models must give way to the dynamic computing services of the network-a network Novell calls the Smart Global Network.
This DevNote defines the strategic initiatives Novell has established to enhance the development of new applications and components that take advantage of the network (network-aware) and how Novell's initiatives of Net2000 and Java meet developer needs in building client-network applications.
Net2000 Defined
In September 1995, Novell announced a key initiative (code-named Net2000) to increase the exposure of networking services to developers. The goal of Net2000 is to gain wide-spread developer access and exposure to network-aware applications and components. To reach this goal, Novell established an embrace- and-extend strategy to support existing developer tools and standard interfaces. Using this approach, Novell has focused on its core networking competencies to lead in distributing objects, sharing components, and managing applications across the network.
During Brain Share '96, Novell delivered the first instance of the Net2000 initiative to developers. This demonstrated Novell's commitment to making it easier to build network-aware applications. Novell delivered the following three key solutions on a developer CD:
Easier access to NetWare services through standard interfaces such as OLE controls (OCX), Visual Basic controls (VBX)and Delphi controls (VCL). Through these controls, administratorsand developers can easily build applications using existing authoring tools and access Novell's rich networking services such as NetWare Directory Services (NDS). Novell also announced an aggressive strategy to embrace Java and extend its capabilities to buildnew network-aware applications for the Internet and Intranet.
Management and sharing of components across the network using the power of Novell's advanced directory service-NDS.Focused on the distribution, sharing, access, security and management of components such as OLE controls and Java applications and applets across a network, Novell will establish directory-enabled computing as a key service to developers. Through out 1996, Novell will introduce technologies to provide distributed object services and object management services centered around NDS.
Enhance the NetWare development platform. Complementing Novell's announcement to licence the Java Virtual Machine andprovide a powerful execution platform for Java applications, Novell also introduced full basic scripting capabilities to allow developers an easy way to build NetWare applications and utilities. NetWare is more than a file and print server platform-it offers the industry's best application server platform for the Internet and Intranet. Along with Java Virtual Machine and the Basic scripting development enhancements to NetWare, Novell is also enhancing the NLM development tools by adding remote source-level debugging and easier NLM developer tools. The opportunities for building server-based logic for developers is freedom of choice. Developers can build high-performance NLMs, visual basic scripts, and utilities that can run as interpretive scripts or be converted to NLMs, or Java applications on NetWare, all taking advantage of the power of the NetWare platform.
Net2000 Extended with Java
Since the Net2000 announcement in September 95, the industry has experienced a revolutionary move toward Internet and intranet computing. Extending the power and concepts of the Internet, Java introduced a new programming paradigm to meet the future needs of this global computing network. Platform-independent execution logic, dynamic HTML page creation and automation, and a powerful object programming model highlight the concepts that Java brings to this new networking paradigm.
To respond to the need for a networking infrastructure to support this new paradigm in global computing, Novell announced a licensing relationship with Sun Microsystems to provide the Java Virtual Machine interpreter on NetWare. This will establish NetWare as a powerful execution platform for Java logic within the Internet and intranet community.
This announcement is significant because Novell was the first to license the Java Virtual Machine for the server platform and demonstrates Novell's vision-partitioning of logic across the network, which will become critical to meeting the needs of Internet and intranet computing.
Server-based processing-independent of client access-establishes a powerful concept for distributed processing-a concept Novell calls client-network. Clients that access the network should not have to track the servers that execute the logic and should dynamically bind to servers and access logic transparently to the user and the application. This is Novell's vision of client-network computing.
Novell also announced a strategic initiative to license the Java class libraries to actively embrace and extend Java as a powerful new programming model for network-enabled applications. Novell provides many advanced networking services that can greatly enhance how applications operate across the network.
These services include a powerful directory service, security services, licensing service, networking communication services, and much more. Novell will embrace the Java programming language to extend class libraries to access these powerful networking services from Java. Developers using the Java programming environment will easily inherit the attributes of network services to build new distributed applications for the global network.
Client-Network Computing-Future Is Distributed Processing
Application partitioning and the distribution of objects and logic across the network are central to Novell's vision of client-network computing. Logic must be easily defined, distributed and accessed across multiple nodes, including computers and other devices. Clients must have easier ways to find, access and execute logic independent of the specific server platform. As applications become component- and object-based, the need to provide the networking needed to bring logic and components together. Doing this is the vision of Novell and it's networking services.
When users log in to a network, they do not need to know which servers they are logged in to or where services reside. The network drive mapping (F:) operates as a local drive-completely transparent to the user. Files and directories are accessed from applications through normal file access commands as if the files were located local. This same example should apply to developers wanting to write applications that do not need to have an intimate knowledge of the network and underlying protocols. Applications should be able to dynamically request specific logic and execution services and acquire the knowledge needed to build distributed processing logic such as load balancing, remote execution requirements, workflow policies for logic execution, and much more.
Another example of client-network computing from a 4GL developer view would be designing an application with Visual Basic and accessing the OLE custom controls as if they were defined within the local registry. In reality they would be located across the network on specialized servers with the database logic and methods defined. Today's Integrated Development Environments (IDE) do not log in to the network as authenticated applications. With the client-network model and distributed objects and components shared across the network, developer tools such as Borland's C++, Delphi, Microsoft Visual C++, Visual Basic, Symantec, and others would log in and be authenticated to the network to inherit and gain access to common controls and components based on access control lists (ACLs) and security privileges.
Another value that client-network computing brings to developers is the dynamic binding of components at runtime. Applications written to be network-aware, can query the network and locate services in at runtime, thus offering greater flexibility and dynamic processing. For example, a Java application that is compiled just in time (JIT) on the server can reference byte code that is loaded on a server across the network or another device.
The true power of client-network computing is realized when the partitioning of logic (applications, components, or objects) across clients, servers, and devices is optimized for the location, task and data it represents. The naming, access, security, management, and relationship of logic becomes directory-enabled, thus providing a networking abstraction to the logic. Location independence, platform independence, transport independence, and logic reuse and sharing are all attributes of client-network computing.
Delivering on the Promise of Client-Network Computing
To meet the needs of this new paradigm in distributed computing for the Internet and intranet, Novell has committed significant resources and investment into networking services and developer services. Through this commitment, Novell is embracing and extending industry interfaces and providing the networking infrastructure to build the Smart Global Network. To accomplish its goals, Novell has organized a Developer Services Division (DSD) with a charter to deliver the following solutions:
Java Development Framework for NetWare. Establish NetWare as a viable application server platform for distributed Java application development and logic. Implement the server-based Internet and intranet execution platform that has the industry's highest performance. Expose networking services and access to Novell's advanced services through the Java class libraries. Work with key partners and their distributed object technologies to establish NetWare as a rich development environment and infrastructure for distributed Java and object computing.
Create the industry's most robust, high-performance Java Virtual Machine execution environment for the Internet and intranet.
Establish Novell's networking services as the premier networking services within the Java programming environment. Provide open Java class libraries to expose networking services.
Increase the Value of Novell's Advanced Services . Expose networking services through multiple programming interfaces, which will increase the size of the developer audience to include corporate, administrator, ISV, Internet, and other developers. Leverage existing networking services Novell has invested in such as NDS to introduce more value to developers who are writing network-aware applications.
With Java as Novell's premier developer initiative, Novell will continue to actively partner and out-source resources and to embrace and extend industry-accepted interfaces. This will expose Novell's networking services such as OLE Controls (OCX),Visual Basic Controls (VBX) and Delphi Controls (VCL).
Promote network-aware solutions that take advantage of Novell's services. Novell will promote these solutions by providing a wide range of developer authoring environments, which offers freedom of choice and focuses on Novell's core competency as a networking provider. Extend networking services to meet developer needs and solutions.
Enhance the NetWare Development Platform. Increase the value of NetWare from a NOS file and print server, to be a viable execution platform-making it an ideal application server-for partitioned logic. Promote an open platform for freedom of choice in server-based logic.
Enhancements to the NLM environment. NLMs will be with us for some time. Enhancements such as remote source-level debugging and support and OS enhancements such as memory preemptionand threading will retain ISV partner investments in high-performance applications, services and device drivers.
Provide a full Basic scripting execution and development environment on NetWare to reach the administrator-developer audience, leverage the mass acceptance of the Visual Basic programming language, and make it easier to build and deploy logic on NetWare,either interpreted as a basis script or compiled as an NLM. Key partnership with HiTecSoft and 3rd Party ISVs (Oracle, Cheyenne,etc.).
Java Virtual Machine and development environment(JIT) with tools partners such as Borland and Symantec.
Other NetWare enhancements to establish NetWare as a viable development platform-better SDKs, complete RPC support, ORB technology integration with networking services and so on. Continue to maintain and enhance the current C/C++ libraries and offer better support to developers.
Developer Services. Novell has dedicated resources and programs to help developers become "network-aware" and move to the next generation of client-network computing. Organized to deliver consistent messages and solution to developers, Novell offers the following developer services;
DeveloperNet-networking for developers. DeveloperNet is Novell's channel for the developer. It includes promotional programs, training, subscription services for developer interfaces (SDKs), and publishing services to establish a developer channel for marketing applications and services. These will alloffer developers opportunities to extend their solutions to the network.
Developer support.Novell is committed to offering premium support for developers building applications and services that take advantage of Novell's networking services and products.
Conclusion
Novell is focused on establishing a new paradigm in network computing. This new paradigm is called client-network computing and requires that applications and logic be seamlessly shared, accessed, and managed across multiple nodes such as clients, servers, and other devices. To accomplish this goal, Novell has established industry-leading networking services, which are the foundation for this new client-network paradigm.
This foundation is centered on the Directory. Directory-enabled computing allows applications and components to access the network, discover other services and applications, share components and objects, and eliminate the need for specific bindings between a client and server solution. Directory-enabled computing, coupled with Novell's embrace-and-extend strategy for developer interfaces, provides an open, powerful networking infrastructure for developers.
Novell's developer initiative is to bring the power of directory-enabled computing to developers and establish client-network computing as the future for building new and advanced network-aware applications, distributed objects, components and solutions for the Smart Global Network.
* Originally published in Novell AppNotes
Disclaimer
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.