n-ZO ToolKits
The n-ZO Tool Set Family includes:
MachLogic Object Server
The MachLogic object server provides an advanced platform for developing, deploying, and managing scalable, high-performance, multi-tier applications. It provides the robust, scalable, secure, and flexible environment required for mission-critical applications, and supports the high-availability online environments demanded by 24x7 operation.
ML-Builder for Smalltalk
Provides an interface between Smalltalk clients and MachLogic, and works with the Smalltalk execution engine to support application partitioning for improved client/server performance. ML-Builder for Smalltalk also extends the development environment by providing specific tools for developing MachLogic applications, including browsers, inspectors, debuggers, and system administration tools. The code is loaded into a standard Smalltalk VisualAge or VisualWorks image to enable the image to communicate with MachLogic servers.
Tools for Development ML-Builder for Smalltalk includes MachLogic development tools similar to those found in a standard Smalltalk development image. Most customers choose to develop MachLogic applications through ML-Builder for Smalltalk clients in order to take advantage of the high productivity inherent in Smalltalk-based development environments. The combination of MachLogic and ML-Builder for Smalltalk provides the most productive environment available for rapidly developing enterprise applications and maintaining them with ease.
Support for Deployment ML-Builder for Smalltalk is often used for deploying Smalltalk-based clients that communicate with MachLogic-based applications. The combination of a Smalltalk virtual machine, Smalltalk run-time code, ML-Builder for Smalltalk run-time code, and a client-side application forms a "fat client" configuration that provides for powerful client-side processing: the configuration of choice for many customers, because it allows for an optimal distribution of client-server processing power. It also provides rich client user interfaces and access to the many features and tools available from VisualAge or VisualWorks.
A multitude of "thin client" deployment options are also readily available for VisualAge and VisualWorks. Dynamic HTML, web browser plug-ins, and Java servlet or applet-based thin-client options can be used with ML-Builder for Smalltalk. In such cases, MachLogic becomes the server for multiple ML-Builder for Smalltalk-based clients, and each ML-Builder for Smalltalk-based client is the server for one or many thin clients. The load-balancing options available with such configurations can make thin-client deployment highly scalable.
Performance through Locality Replication in ML-Builder for Smalltalk offers performance-tuning options unlike any other product or technology. Typical application servers work by forwarding all messages from one object space to another, where a particular object resides. ML-Builder for Smalltalk supports such message-forwarding, but it also supports object replication. ML-Builder for Smalltalk clients can modify local replicates of objects residing in the MachLogic Object Server. Changes are transparently propagated between client and server as needed to synchronize object spaces. Replication improves performance by reducing communication between object spaces.
Ease of Use ML-Builder for Smalltalk seamlessly integrates the MachLogic Object Server with Smalltalk clients: performing operations against remote objects is as easy as performing operations against local objects. Application developers rarely need to distinguish between local and remote objects, allowing them to concentrate on application logic with minimal concern for object location, mapping, and implementation.
Applications based on MachLogic and ML-Builder for Smalltalk can be developed without a steep initial learning curve and can be rapidly evolved as desired. Because of this flexibility, these applications typically evolve over time to be used across the entire enterprise. Due to this ease of use, ease of refactoring, and performance, many of our customers consider the combination of Smalltalk, MachLogic, and ML-Builder for Smalltalk their "secret weapon."
ML-Builder for Java
Provides an interface between Java clients and MachLogic and contains functionality similar to ML-Builder for Smalltalk. Since ML-Builder for Java's development tools are implemented in Java, developers can create both Java clients and Smalltalk-based MachLogic applications without leaving their preferred development environment.ML-Builder for Java pairs the portability and flexibility of Java with the scalability of the MachLogic Smalltalk object server for developing enterprise-wide business applications. ML-Builder for Java lets Java client applications take advantage of the multi-user object execution engine, transaction management, and fault-tolerant environment of the MachLogic Object Server. ML-Builder for Java includes Java run-time classes that provide a Java client interface to MachLogic business objects. The ML-Builder for Java development tools are implemented in Java, so developers can create Java clients and MachLogic Smalltalk applications using their preferred Java development environment on any Java-capable workstation.
Objects for the Enterprise The MachLogic Object Server is the key component in deploying Java applications across the enterprise. It gives Java clients fast, transactional, and concurrent access to business objects distributed across multiple platforms and databases. The MachLogic Object Server supports the thin-client model through application partitioning. It scales up to thousands of concurrent users, providing concurrency control for large-scale distributed transactions as well as fault tolerance and recoverability for mission-critical applications.
Java Client Access to Business Objects ML-Builder for Java gives Java clients direct access to large-scale, multi-user business object models running in the MachLogic Object Server. With ML-Builder for Java, business applications can be partitioned so that user interfaces are handled by Java clients, while object and database queries and processing are handled by MachLogic Object Server. Systems resulting from this model combine a full-featured, portable user interface with shared application logic and data (or business objects) on the server.
ML-Builder for Java provides the tools and classes to map Java client-side presentation objects to business objects in MachLogic. It provides an efficient mechanism for invoking business object methods from Java applications. ML-Builder for Java's lightweight client API allows local Java messages to be forwarded to server-based MachLogic objects. API classes facilitate connecting to MachLogic, executing queries, creating and modifying server objects, and committing transactions.
ML-Builder for Java performs brokered session management to minimize connection time and optimize performance.
Rapid Development and Deployment of Distributed Applications ML-Builder for Java brings the portability and flexibility of Java to multi-user business applications. MachLogic-enabled Java clients can be stored on a server and published to the end user through a URL, rather than having to be installed on each machine in the organization. By using Java servlets, or downloadable Java applets for accessing MachLogic, your Java applications can be maintained in a central location, ensuring that users always receive the most recent version of the application.
ML-Builder for Java offers flexibility and ease of maintenance for business applications. Both Java and MachLogic support dynamic binding; references to objects and methods are resolved at run-time, so objects and their interfaces can be updated as needed while applications are running. Applications can check available services at run-time, taking advantage of new services as soon as they are available.
Industrial-Strength Internet Applications ML-Builder for Java gives developers the ability to deliver responsive, large-scale Web-based business systems built around Java run-time clients. Developers can take advantage of MachLogic to create Java client applications with performance and scalability that supports thousands of concurrent users. Objects addressed through Java interfaces can access the millions of other objects in the business domain. MachLogic offers strict security at the object level, so Java applications can access selected public business objects, while critical business data is protected. MachLogic provides fast, fine-grained access to the complex objects used for business modeling and for Web applications.
With ML-Builder for Java, business objects are stored in the transactional, fault-tolerant environment of the MachLogic Object Server. Transactions are protected from hardware failure, and session state can be preserved through shutdown and startup. MachLogic supports 24x7 operation with external administration.
Enterprise-wide Information Integration Through MachLogic's distributed architecture, Java applications can use objects residing anywhere in the enterprise. Through MachLogic's connectivity tool, MLConnect®, Java applications can also access business data from legacy relational databases. In addition, Java applications can concurrently access and modify objects created in Smalltalk, while applications written in Smalltalk can access Java-created objects through the MachLogic Object Server.
Developing Java Applications for the Enterprise The ML-Builder for Java API is implemented in Java to maintain all the advantages of Java across platforms. To connect Java interface objects to MachLogic business objects, a Java client calls the ML-Builder for Java run-time classes to start one or more MachLogic sessions and initialize the interface with the MachLogic object server. To access a particular object, the client application uses the runtime classes to acquire a reference-a stub-to that object. The client then operates as if the business object is local, sending messages to the stub, which forwards the messages to the appropriate server object for execution, returning results to the Java client.
ML-Builder for Java Tools The ML-Builder for Java tools are written in Java, integrating seamlessly into popular Java development environments. ML-Builder for Java includes these tools:
System Browser
The Browser is used to view the available MachLogic classes and methods, create new classes, and add or modify methods.Inspector
The Inspector gives developers a view of business objects residing in the MachLogic object server. The developer can examine the state of individual objects, modify them if desired, browse collections, or look at the contents of dictionaries.Workspace
The Workspace allows developers to execute arbitrary strings of MachLogic code. This allows developers to locate business objects to examine in an Inspector, create sample data for testing applications, assign access control to objects or collections, and perform administration tasks in the MachLogic Object Server.Debugger
When execution of a MachLogic method results in a run-time error, the Debugger is available, allowing developers to review the execution stack, looking for logical errors or objects that contain unexpected state.This set of tools provides client developers access to all MachLogic business objects as well as MachLogic' extensive built-in class library.
MLConnect
MachLogic's relational database interface provides direct integration of MachLogic and the Oracle relational database management system. It enables you to log into a relational database, submit queries and updates to the database, read information from a query in MachLogic object form, and track modifications to data. It also provides support for collecting updates from multiple, concurrent client programs for posting to the relational database in batch.The nZO product suite includes:
n-ZO Enterprise
n-ZO Enterprise – C++
n-ZO Tool Sets