Skip to main content
Version: 10.3.2

ODF 2

info

ODF 1 is not supported in Work.AI v10.3, and you are encouraged to fully transition to ODF 2. For the ODF documentation, refer to the v10.2.9 user guide.

Major technical concerns of AI Agent delivery

Each AI Agent delivery team faces main technical concerns represented by:

  • Verified standard practices for complex automation:
    • Data modeling and storage standards
    • AI Agent tech initialization and configuration standards
    • Convenient programmatic access to the platform's APIs
    • A way to extend with more components, and more
  • Fast standardized implementation start. Tech project blueprints accelerate development start. The packaged multi-process architecture, components use examples, and the modulized extendable structure speed up the entire implementation.
  • Transparent and flexible infrastructure. The enterprise nature of automation requires supporting two distribution ways: via WorkFusion-managed cloud artifacts and on-prem artifacts. You must manage dependencies, Archetypes, and plugins for various Work.AI versions.
  • Quality control with automated testing. Quality is the key to success. Automating quality control provides delivery teams with the next confidence level when introducing new AI Agent features or changing the existing ones.
  • Safe and fast deployment. The number of environments and variety of project resources make deployment quite complex and manual error-risky. Tools for deployment automation remove risks and accelerate deployments.

ODF 2 framework features

Here are the basics of how the framework addresses the listed tech concerns.

WorkFusion's Open Development Framework (ODF) 2 provides Automation Engineers with five feature groups that cover all major automation concerns:

  • ODF 2 Core:
    • Provides the Object-Relational Mapping standard with Liquibase migrations support
    • Provides Bot Task generator out of Java definition and processor
    • Defines all required Bot Task wiring with the ODF 2 framework to properly initialize the Java context
    • Defines ODF 2-based AI Agent data model and initial migration
    • Provides all required standard Bot Task types
    • Provides automation project modular architecture via modules, context, and dependency injection
    • Defines standard AI Agent settings via a Data Store
    • Provides Java wrappers for standard WebHarvest components
  • ODF 2 Archetypes:
    • Two pre-packaged ODF 2-based project blueprints of various complexity are provided as Maven Archetypes: Full and Lite
    • Archetypes for Machine Learning models with build-in deployment
  • Infrastructure:
    • ODF 2 is distributed out-of-the-box with the Work.AI platform. You can also update the ODF 2 version by deploying the latest ODF 2 Bundle.
    • To update all required Maven dependencies, either use the public WorkFusion's Nexus repository or manually install all dependencies into on-prem Nexus.
  • Automated testing:
  • Deployment:
    • Deployment automation is done leveraging a single universal Bundle concept. ODF 2 provides Maven goal to build and send a Bundle to the Control Tower's import API.
    • To accelerate the next AI Agent version creation, a special Maven plugin increments every project's artifact for AI Agent multiple versions to simultaneously run on one Control Tower.

Implementation flow

The implementation flow reflects ODF 2 features and is represented by the following procedures:

  1. Core:

    You start an ODF 2 Maven project from one of two available templates—Archetypes. Right after the generation, the project is buildable, deployable, and contains code samples covering all major basic scenarios.

    Initial entity objects and the first required Liquibase migration are created out-of-the-box.

    You can add unique business logic into Bot Tasks, knowing the framework will assist in read-write procedures and provide the modularized Java project structure, armored with suggested auto-testing practice.

    The data model is easily adjustable and extendable, and an Archetype and the documentation provide samples for all common scenarios.

    All platform core components have Java APIs in ODF 2. Therefore, you don't need to pass data back and forth to WebHarvest XML to use old plugins.

  2. Reusing independent components:

    WorkFusion and customer's teams accumulate a library of independent, useful tools (convertors, validators, processors) for you to accelerate by reusing them.

  3. Testing automation:

    Three layers of automated testing are available and recommended for usage from project's day 1.

  4. AI Agent versioning and deployment automation:

    To support an iterative approach to project development, the framework provides an accelerated way to rapidly clone all project's resources to build a new 100% independent project version.

  5. Business Process design:

    When the business project is built for the first time, or changes need to be applied, you work in Control Tower with the recently deployed project to drag-and-drop Bot Tasks and build a proper workflow in Designer.

  6. Business Process export:

    When done, manually export the package and add it to project Business Process sources for the same Business Process to be recreated later on in all other environments.

After that, a loop may start over to perform as many times as needed.

Environments

For an Automation Engineer to start working, the main environment consists of IDE—either IntelliJ IDEA or Eclipse—and Control Tower. Both are part of the Work.AI Developer environment.

For an end-to-end solution, the build-out and manual testing server-based DEV Work.AI environment is used. First, an automation project is manually deployed to Control Tower.

For mature teams, recommended automated deployment lifecycle steps are as follows:

  1. An Automation Engineer makes changes locally and pushes to the version control system like Git.
  2. The Jenkins build automation tool pulls changes from the version control system and builds a deployable artifact.
  3. Before deployment, Jenkins stores the artifact in the Nexus artifact storage.
  4. The version plugin increments all project artifacts for the new version not to interfere with the previous one.
  5. Jenkins runs automated tests. In case of a failure, the deployment process is aborted, and notifications are sent.
  6. In case of success, Jenkins publishes the automation to the target Work.AI platform environment.

VDI personal environment

Work.AI Developer is a desktop environment for WorkFusion developers. It includes Eclipse and IDEA IDEs. The main Developer features are as follows:

  • Selective components launch allows starting currently needed components only.
  • Console with real-time logs allows to notice and understand exceptions rapidly.
  • OCR license status enables to check the license status to request an updated one.
  • Start buttons for all user apps provide quick access to local versions of control applications.
tip

For more details, refer to the Work.AI Developer documentation.