Novell is now a part of Micro Focus

Novell ConsoleOne: Common Console for Management and Administration Utilities

Articles and Tips: article

TREY MOONEY
Product Manager
Network Services Group

PAUL MACKAY
Development Manager
Network Services Group

TRENT BADGER
Human Factors Engineer
Network Services Group

01 Mar 1998


Introduction

This article provides a high-level overview of the Novell ConsoleOne architecture and user interface. General interface components are presented to demonstrate how ISVs can extend ConsoleOne by creating software modules (snap-ins) that integrate into the ConsoleOne shell. The increased pressure of competing in the global marketplace has compelled many industries to seek innovative ways to sharpen their competitive edge. Faster time-to-market demands for products and services have become the business imperative, creating an immediate need to access information more efficiently.

To address these global pressures, successful companies recognize the need to be more critical of their total business strategies. A growing number of organizations are deploying "Intranet-centric" client/network environments to tightly integrate technology with business objectives and strategies. As networks become more central to meeting these objectives, IT organizations must be able to manage not only the magnitude in which their networks are changing, but also the speed in which these changes are taking place. Consequently, many CIOs view network directory services, specifically Novell Directory Services, as vital to mastering their rapidly changing environments.

In an effort to address market changes and customer needs, Novell has chosen to evolve its current directory-based management platform. Code-named "Houston" during development, the name for this project is ConsoleOne. ConsoleOne represents a new architecture based on the Java technology. This new Java-based architecture will enable IT organizations to move into true "management from anywhere." The ConsoleOne console can be run on any networked machine that has a "Java Virtual Machine."

Currently, administrators have to load and unload products in order to accomplish administration tasks. ConsoleOne provides a single point-of-control in which all Novell products, as well as external products, can integrate. For example, data that has previously only been accessed from the server console will now be available from the ConsoleOne console. Access to information, applications, etc. will be determined based on NDS rights to objects (including Java applets that provide a service or feature).

With the increasing dynamics of networks, administrators need the capability of managing network resources from anywhere at anytime. With a Java implementation, administrators can perform management functions anywhere on the Internet, regardless of location or system. The cost of network administration is becoming increasingly important in the choice of network solutions. ConsoleOne reduces the cost of ownership by providing a highly-configurable environment for administrators. ConsoleOne's architecture allows administrators to have more control of their management environment, and allows the network manager to delegate specific time-consuming tasks without compromising network security.

ConsoleOne allows IT managers to organize specific management and administration tasks into customized views. They will be able to include or exclude specific sets of features or functions relative to the tasks they want to assign to their staff. Examples of different customized views might include User Administration, Server Management, Printer Management, or a view that includes all these objects but is restricted by the context.

By leveraging Novell Directory Services (NDS), ConsoleOne will allow the IT- manager and network administrator to grant rights to specific features and tasks. This is especially important in larger environments where multiple IS professionals have specialized responsibilities and differing scopes of control. The Internet is accelerating the convergence of previously diverse networks; therefore, directory convergence is also accelerating between LANs, Telephony, Intranets, Groupware, Remote Access, Internet, E-mail, Automated Teller Machines, WWW, Telephone Networks, applications, and a wide variety of other directories in the typical enterprise.

ConsoleOne is the foundation for the next generation of GUI utilities for Novell's management products. It includes a shell that provides an extensible snap-in framework with the necessary APIs for a common management console. The shell itself offers no management behavior. Snap-ins (commonly referred to as content) extend the shell by "snapping" into the framework and providing the actual management behavior. All content is registered to ConsoleOne as a snap-in: each snap-in is registered seamlessly to ConsoleOne by implementing one of a rich set of interfaces.

In addition to the shell, Novell provides a default snap-in (the console snap-in) that gives ConsoleOne Novell's defined personality. The console snap-in specifies conventions for menu item placement and a standard set of tool bar and menu bar items. These conventions establish the foundation on which Novell and third-party-developed content will build snap-ins. In addition, Novell will publish its set of content as well as how that content can be extended via specific snap-in registration.

The snap-ins to ConsoleOne provide the management behavior that is delivered to the customer via ConsoleOne. Snap-ins extend the shell into the framework and then exposing their value-add content by their method of choice. Network managers and administrators will have the capability of creating customized views that include any combination of snap-ins.

Network managers and administrators can then assign these customized views to other administrators to accomplish specific tasks. This snap-in architecture provides the administrator or network manager with the capability of creating customized views consisting of varying levels of functionality. These customized views can be used to efficiently and securely delegate specific tasks to various individuals.

This model provides for a highly extensible snap-in framework based on industry standards and implemented in Java. Content developed and delivered by Novell can easily be extended by ISVs where snap-in points are published and provided by Novell (see SDK documentation for ConsoleOne). Content developed by ISVs can also be easily extended when the snap-in points are published and provided by the developer.

The ConsoleOne Architecture

The ConsoleOne shell is a Java-based application that provides an extensible snap-in architecture through its snap-in programming interfaces. The ConsoleOne programmatic interfaces provide the capability for snap-ins to integrate into the console. These interfaces deal primarily with user interface extensions. How each snap-in actually performs tasks is entirely controlled by the snap-in. The snap-in's relationship with the console is in sharing a common hosting environment, which includes specific functioning widgets and a defined set of user interfaces guidelines.

Figure 1: The ConsoleOne Snap-in Architecture.

The Console Snap-in. As a foundation for its management and administrative applications, Novell provides the console snap-in. The console snap-in extends ConsoleOne by providing a minimal set of content to the object browser, main menu and tool bar.

Content Snap-ins. Content Snap-ins to the console snap-in will be written by both Novell and ISVs. Content snap-ins can provide application-level features and functionality, add a new feature to another content snap-in, or extend a content snap-in to greater levels of functionality. All of Novell's utilities will be written as content snap-ins. The functionality of the NetWare Administrator (NWAdmin) for example, becomes a content snap-in to the console snap-in and ConsoleOne. All management content, provided by Novell or ISVs are snap-ins to the shell. The snap-in interfaces provided, are the same for Novell content providers and external ISVs.

Namespaces Defined. As a framework for the management and administration of networks, ConsoleOne provides the capability to display network objects or resources in an organized fashion. These network objects and resources are typically represented within logical (NDS, LDAP, NetWare File Systems, NT Domains, etc.) or physical (internetwork or segment maps, inventory databases, etc.) namespaces.

These namespaces provide context, that is, the logical relationship, such as location in an organizational structure, and/or the physical relationship, such as wire segmentation or routing, of these network objects and resources.

A namespace therefore defines a set of objects, how they are named, and the relationship, structure, hierarchy, or containment of those objects. In addition, an object within one namespace may also provide a link to another namespace. In NDS for example, a NetWare volume, as an NDS object class, represents a volume within the NetWare file system. NDS, as a namespace, utilizes the NDS volume object to bridge into the NetWare file system (yet another namespace).

In order to manage and administer network objects or resources, they must first be described by a namespace snap-in. It is then through the namespace that the features and functions of the represented objects and resources are exposed and presented to the end-user.

Working with Namespaces. In order for a set of network objects or resources to be managed or administered through ConsoleOne, they must be made accessible through ConsoleOne. A namespace snap-in is the method by which ConsoleOne is able to enumerate and display the objects or resources of a network or computing environment. Namespace snap-ins that are exclusive to the NetWare and NDS environments will be written and provided by Novell. Through the NDS namespace for example, the end-user will be able to view and manage NDS objects.

Not all developers must write a namespace snap-in. Developers who extend the schema with new objects for example, need not write a new namespace snap-in. The NDS namespace will enumerate the new object types based on the schema. However, they may write to other snap-in methods to provide property editing capability for those new object types.

Services that are built around NDS, or that extend the capability of NDS into other environments may create a new namespace snap-in. For example, an LDAP directory service could be managed through ConsoleOne. However, in order for ConsoleOne to enumerate and display the objects represented by the LDAP directory, a namespace snap-in must be written.

The User Interface of ConsoleOne

The ConsoleOne GUI provides a structured environment for snap-in content through a set of common snap-in APIs. Through this environment, product features and functions are exposed with a common look and feel. To achieve a common look and feel, a set of common user interface elements are provided by the shell: an object browser, a main menu, a tool bar, a status bar, a property book, context menus, and a default view. The illustration below identifies several of the major user interface components.

Figure 2: The ConsoleOne User Interface Components.

The ConsoleOne User Interface Components

The object browser is a hierarchical (tree) display in the left panel of the shell. It displays the logical or physical containment or structure as defined by a namespace. A view occupies the right panel. A default view, provided by the shell, displays the subordinates of the currently selected item in the object browser. Other views as provided by Novell or other developers may provide alternative views of the selected item in the object browser.

The main menu, tool bar, status bar and context menus are provided as a means of organizing access to tasks, features and functions within the user interface. As different namespaces are navigated, they reflect the tasks, features and functions of the currently selected item and namespace. ConsoleOne provides a set of features that are common across all namespaces, regardless of the selected namespace; these include exiting the shell, setting options or preferences for the shell and snap-ins.

Menus. The Console snap-in provides a standard set of menus: File, Edit, View, Tools, and Help. They are always active, providing access to the minimal shell features and functions. The menu snap-in interface provides the capability to merge menus and/or menu items into the console's standard menu structure in order to provide access to actions, features or functions of a namespace or snap-in. Menu items can be cascading, radio button, or standard menu items. Optional menus may also be merged into the standard set, however should follow the guidelines set for them.

Each of the standard menus has a snap-in point. Menu items registered to each one of the standard menus will merge into the menu at the defined snap-in point. The standard menus supports these methods:

  • Shell - items are always active

  • Namespace - items become active when the namespace becomes active

  • View - items become active when the view becomes active

Pop-Up Menus. Also included is the facility for Pop-up Context Menus. The pop-up context menus provide access to the tasks, features or functions specific to the types of objects within the namespace, as well as to the tasks, features, or functions that apply to all object types within the namespace. For example, Delete is a feature that can be applied to all objects within a particular namespace. As such, it is better registered as a Namespace menu item. Lock Account as a feature, typically applies only to User objects in the NDS namespace. It would be preferable to register it only to the user type objects within the NDS namespace.

Two different pop-up context menus are provided within the shell:

  • Object - available when right-clicking on an object or objects within the Object browser or a view

  • View - available when right-clicking within a view with no object selected

Tool Bars. The tool bar provides quick access to commonly or frequently used features (as determined by the user). The active tool bar and its available contents are determined by the active namespace and view, however some actions or tasks are provided by the shell. The tool bar supports the typical button item as well as other types of controls, such as drop-down combo boxes, edit fields, etc.

The tool bar supports three registration methods:

  • Shell - items are always active

  • Namespace - items become active when the namespace becomes active

  • View - items become active when the view becomes active

Property Book. The property book is a multi-page dialog, utilizing a folder-tab metaphor to provide property viewing or editing capability. The property book provides multi-page and multi-page set (hierarchical) capabilities. The multi-page format follows the familiar property page layout where a single tab represents a number of related properties, or in other words, a property page. A multi-page set format allows several property pages to be grouped under a single tab. The tab provides a menu drop-down to access the individual pages within the page set.

Summary

What is the motivation behind ConsoleOne? ConsoleOne is the result of Novell's continued effort to better understand customer needs, and to create better tools to manage and administer a company's network resources. The ConsoleOne project's goal is to support flexible and simplified administration through the integration of snap-ins, delegation of tasks, role-based administration, and overall user interface simplification, thus reducing total cost of ownership and increasing customer satisfaction.

The primary goals of ConsoleOne are to provide the following:

  • Flexible and powerful snap-in framework that ISV's can leverage and integrate into easily.

  • Customizable environment for network managers and administrators to improve the way they accomplish their network responsibilities.

ConsoleOne's goal is to help its customers be successful. ConsoleOne will achieve this goal in two ways:

  • ConsoleOne is a core part of Novell's future management and administration strategy.

  • Novell and third-party ISV's will partner together to leverage the openness and flexibility of ConsoleOne to deliver critical management solutions to their customers.

* 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.

© Copyright Micro Focus or one of its affiliates