The One Network SDK gives developers the ability to create highly customized solutions based on the core capabilities of the One Network Platform. These core capabilities are based on fundamental requirements for any modern business solution. For example, there are One Network models to support user management, permissions, orders, business transactions, inventory, logistics, etc. These core models support features like audit trails, workflows, state machines, persistence, atomic transactions, schedule based execution, and integration. The SDK gives you a framework to extend these core models or make your own with the same features using a set of graphical design tools called One Network Studio.
These models are developed and woven together into a collection of scalable and re-usable modules. Each module contains data models, business logic, declarative user interfaces, workflows, and IXM engine code and may be designed to perform very specific business functions such as order processing or inventory management. Once developed and tested, modules are deployed to a Platform server called an instance. Modules within an instance are designed to communicate and work together in a grid-like fashion. Instances may be scaled up or out depending on need, and may be hosted in a traditional server environment or within One Developer Network, One Network's cloud computing infrastructure.
We can summarize the key components of the One Network SDK as consisting of:
One Network Studio—An Eclipse-based IDE for developing and deploying modules. Studio includes wizards and utilities for creating and modifying new business models, configuring workflows, state machines, transactions, views and permissibility on those models, developing application code, and deploying modules into a Platform instance.
Platform server—A local Platform server developers can use for prototyping and debugging modules and instances.
Server API's—A library of Java based utilities for accessing and extending the Platform's core capabilities, as well as provide a framework for creating custom models that match the capabilities of our core models.
Reporting API's—An XML based system for creating custom reports based on business data.
Declarative User Interface API—An XML based system for creating the most common user interface screens such as lists, data entry screens, search screens, etc.
One Network Studio, or Studio for short, is based on the popular Eclipse IDE and is implemented as a plug-in. It provides some unique visual modeling and design tools that allow you to easily manipulate models and the way they work without writing a great deal of code. This is balanced with the normal features of the Eclipse IDE that give developers the level of control they crave. Common features like defining permissions can be done in a point and click interface, but you can extend nearly anything using Java code.
The SDK's Platform server allows developers to run a full instance on their local computer. The server can be run on commonly configured hardware including laptops.