Skip to content

Competitive evaluation guides for integration platforms, including Mulesoft, AWS, Azure, and Spring Boot

License

Notifications You must be signed in to change notification settings

frankcohen/guides

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Competitive Evaluation Guide

Executive summary and details at https://github.com/frankcohen/guides/blob/main/docs/Competitive%20Evaluation%20Guide%20Executive%20Summary%20-%20Integration%20Platforms.key.pdf

Total Cost of Ownership (TCO) model https://github.com/frankcohen/guides/blob/main/docs/TCO_Model_2025.pdf

Code repository and build instructions at https://github.com/frankcohen/guides

Published under a GPL v3 license

Integration Platforms - Mule, AWS Integration Services, Azure, Spring Boot

Shows a 34% cost saving in developer productivity to build integrations, and a 73% cost saving in maintaining integrations. These competitive evaluation guides help you understand the tradeoffs when choosing an integration platform as a service.

Compare Total Cost of Ownership (TCO)

And a TCO difference when making changes to an existing integration.

Compare TCO When Making Changes

These guides use the simple and effective PushToTest methodology for competitive analysis. It has these steps:

  1. Define a use case – like an Inventory Acquisition service, and later add a recommendation based on purchase history and cart contents

  2. Implement it on 4 platforms: Mulesoft Anypoint, Spring Boot, Microsoft Azure Integration, and AWS Application Integration services

  3. Keep a developer journal of the problems and workarounds found along the way

  4. Tally up the hours it takes and pop those numbers into a Total Cost of Ownership (TCO) spreadsheet

Would it surprise you choosing Mule is 34% less time/costs developer productivity vs. Spring Boot, 24% less than AWS, and 10% less than Microsoft Azure?

Clever Moe is glad to support your use of the Kit. Clever Moe provides technical support, architectural question support, and performance testing and benchmarking of Integration platforms as a service.

Additional resources at https://clevermoe.com/guides

Additional guides available. To get your own Competitive Evaluation Guide, contact us!

Producer Stack Economy

Today enterprise organizations came to the realization that their IT efforts need to be part of a larger system of consumers-and-producers. Their applications need to consume data from vendor APIs. And, produce their own data for their partners. A new Producer Stack emerged and customers need help evaluating it to make the best choices for development platforms.

Producer Stack Economy

Software developers, data analysts, reliability engineers and architects are recommenders to CFOs, CMOs and CIOs who hold the budget and decision making. The two groups have special needs: understand and evaluate the new technology stacks, and evaluate the financial costs and flexibility of the new technology stacks. This competitive evaluation guide solves both needs.

Background

For the past 15 years TIBCO, Oracle, IBM, and others commissioned a competitive evaluation guide project with Frank Cohen, founder at Appvance Inc. and Clever Moe to implement a multi-step SOA and Integration-based business workflow on TIBCO, Mulesoft, Spring Boot, RedHat, Software AG, Oracle, IBM, and other platforms. The project surfaces Total Cost of Ownership (TCO), developer productivity and application performance differences to make the best buy versus build decisions. It is ideal for enterprise architects, development managers, and business managers.

Clever Moe distributes the competitive evaluation guides at https://clevermoe.com/guides. Each presents a developer journal of lessons learned, TCO metrics to compare costs, software code, and performance test results. They explore why and how platform choices count – covering the planning, expertise, and knowledge required to quickly and flexibly build and deploy highly scalable applications.

Frank Cohen publishes the guides as a third party independent expert. The guide contains results of the study and the free open-sourced code and materials so customers may apply this knowledge and evaluate the results in their own environment.

The competitive guides are especially important with the emergence of AI like ChatGPT. AI is replacing Search Engine Optimization (SEO). Recommenders now use AI to ask for solutions, instead of searching. For example, ChatGPT 4 responds to the question “Are you familiar with Mulesoft Anypoint Connector?” with “Yes, I’m familiar with Mulesoft Anypoint Connector.” It will write Anypoint code to create APIs. Unfortunately for Mulesoft users ChatGPT will often generate broken or un-working code for Mule platform. Publishing the competitive evaluation guide on Github solves this problem for AI.

Developer Journals

Developer Journals capture a developer’s evolving journey through lessons learned, key productivity metrics, and the true cost of performance. It serves as a reflective guide to understanding how development practices, tooling, and platform decisions shape the efficiency and scalability of modern applications.

Beyond tracking progress and performance, the journal explores why platform choices matter—highlighting the planning, expertise, and domain knowledge required to rapidly and flexibly build, deploy, and scale high-performance applications in today’s fast-paced tech landscape.

Inventory System & Workflow Implementations

This repository provides a comprehensive backend implementation of an Inventory System using Spring Boot, along with workflow orchestration examples across AWS, Azure, MuleSoft, and Spring Boot itself. The goal is to demonstrate how a consistent business process—such as inventory management—can be modeled and executed using different cloud-native and enterprise integration platforms.

At the heart of this repository is a focus on workflow orchestration—demonstrating how inventory-related business processes can be modeled and executed across diverse platforms such as AWS, Azure, MuleSoft, and Spring Boot. Each implementation showcases platform-specific capabilities for integrating services, managing state, and automating tasks within the inventory domain.

Explore the Implementations

Each subdirectory contains a platform-specific implementation of the inventory workflow, complete with its own README and setup instructions:

  • inventory-system
    The main Spring Boot backend service that provides REST APIs for inventory operations. This module is the foundation for all workflow orchestrations.

Inventory System (Spring Boot)

The inventory-system module is the foundational backend service built using Spring Boot, designed to support inventory-related operations such as product tracking, stock management, and order processing. It exposes a set of RESTful APIs that allow external systems and workflow engines to interact with inventory data in a consistent and scalable manner.

This service is structured to be modular and extensible, making it suitable for integration with various orchestration platforms like AWS Step Functions, Azure Logic Apps, MuleSoft, and Spring Boot-based workflows. It acts as the central data and logic layer for all workflow implementations in this repository.

Key Features

Product Identification
Product Catalog Service

  • Retrieves product details based on user input (name, SKU, category).
  • Supports search, filtering, and metadata enrichment.

Pricing & Availability
Pricing Engine

  • Calculates base price.
  • Applies MVP customer discounts.
  • Considers bulk pricing or promotional offers.

Inventory Management

  • Checks stock levels across warehouses.
  • Provides estimated delivery timelines.

Tax & Tariff Calculation
Tax Calculation Service

  • Computes applicable local, state, and federal taxes.

Tariff & Customs Service

  • Calculates import/export duties based on product origin and destination.

Customer Profile & Discounts
Customer Profile Service

  • Retrieves customer tier (e.g., MVP).
  • Applies loyalty discounts or negotiated pricing.

Delivery Optimization
Logistics & Shipping

  • Estimates delivery date based on location, carrier, and inventory source.
  • Offers multiple shipping options (standard, express).

Quote Generation
Quotation Service

  • Generates a detailed quote including:
    • Product cost
    • Taxes/tariffs
    • Discounts
    • Delivery charges
    • Estimated delivery date

Order Placement
Order Management System (OMS)

  • Places the order.
  • Initiates fulfillment and tracking.

Additional Enhancements & Improvisations
AI-based Recommendation Engine

  • Suggests alternative products or bundles based on customer history or price constraints.

Real-time Price Monitoring

  • Alerts customers if target price is met or if prices drop.

Negotiation Bot (Optional)

  • Allows customers to negotiate price or delivery terms via chat interface.

Analytics Dashboard

  • Tracks acquisition trends, cost savings, and delivery performance.

Integration with ERP/CRM

  • Syncs with enterprise systems for seamless procurement and customer relationship management.

Change Management Layer: Personalized Recommendations
When a customer interacts with the system (e.g., purchases a coffee machine), the system proactively recommends related or complementary products (e.g., coffee beans, filters) in future sessions or during checkout.

New Components & APIs Introduced
Purchase History Service

  • Purpose: Tracks customer purchases and browsing behavior.
  • API: GET /purchase-history/{customerId}
  • Data: Product IDs, categories, timestamps, quantities.

Recommendation Engine

  • Purpose: Generates personalized product suggestions.
  • API: POST /recommendations
  • Input: Purchase history, customer profile, current cart.
  • Output: List of recommended SKUs with confidence scores.

Product Relationship Graph

  • Purpose: Maintains mappings like:
    • "Bought together"
    • "Frequently purchased after"
    • "Accessory of"
  • API: GET /related-products/{productId}

Change Management Trigger

  • Purpose: Detects significant customer actions (e.g., new product category purchase) and triggers recommendation refresh.
  • API: POST /change-events
  • Event Types: NEW_CATEGORY_PURCHASE, HIGH_VALUE_ORDER, REPEATED_PURCHASE, etc.

Structure Overview

The module typically includes:

controller/ – REST API endpoints for inventory and product operations. service/ – Business logic for managing inventory and orders. repository/ – Interfaces for data access, likely using Spring Data JPA or MongoDB. model/ – Domain models representing products, inventory items, and orders. application.properties – Configuration for database, ports, and other environment settings.

Demonstrates how to orchestrate the inventory workflow using Spring Boot and Spring's native orchestration capabilities.

The springboot-workflow module implements a service orchestration pattern using Spring Boot’s RestTemplate (or possibly WebClient for reactive flows). This approach allows the application to act as a central coordinator that sequentially or conditionally invokes downstream microservices via HTTP calls.

Instead of relying on external workflow engines, the orchestration logic is embedded directly in the Spring Boot service layer. Each step in the inventory workflow—such as pricing, availability, tax calculation, and order placement—is executed by calling the appropriate service endpoint using RestTemplate.

Implements the workflow using MuleSoft composer, showcasing integration with APIs and other systems.

The mulesoft-workflow module showcases how MuleSoft can orchestrate a complex inventory and order processing workflow using its API-led connectivity model. Unlike Spring Boot’s imperative orchestration via RestTemplate, MuleSoft uses flows, subflows, and connectors to declaratively route and transform data between services and data transformations using their in-built DataWeave scripts.

This implementation is ideal for enterprises that require low-code orchestration, visual flow design, and robust integration capabilities across cloud and on-prem systems.

Uses Azure Logic Apps or Durable Functions to model the inventory workflow in a cloud-native way.

The azure-workflow module demonstrates how to implement the inventory orchestration using Azure Durable Functions, a serverless extension of Azure Functions that enables long-running, stateful workflows in a fully managed environment.

Unlike Spring Boot’s imperative orchestration using RestTemplate, Azure Durable Functions use a function chaining or fan-out/fan-in pattern to coordinate calls to external services asynchronously and reliably.

Leverages AWS Step Functions to orchestrate the inventory process in a serverless architecture.

The aws-workflow module demonstrates how to orchestrate the inventory and order processing workflow using AWS Step Functions, a serverless workflow service that coordinates distributed services using visual workflows and JSON-based state machines.

Unlike Spring Boot’s imperative orchestration using RestTemplate, AWS Step Functions use a declarative state machine to define the sequence, branching, retries, and error handling across multiple AWS services and external APIs.

Contact Clever Moe for help and details.

About

Competitive evaluation guides for integration platforms, including Mulesoft, AWS, Azure, and Spring Boot

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •