Monday, June 9, 2025

Overview of Supply Chain Management (SCM)

 Introduction:

When any developer starts working on any Supply Chain Management (SCM) Product or Application, they should not just know the technical part of it but also understand the concepts of SCM for deeper understanding. 

This post will try to cover the basics of SCM and Applications involved in the Order life cycle.

As per wiki, SCM deals with the systems through which raw materials can be developed into finished products and delivered to their customers.

Let's see how these systems and players interact with each other.

Systems involved in SCM:

First, let's try to understand Order life cycle in simple words:

  • Customer places an order using Order Capturing Channel
  • Order is passed to Order Management System, to find an optimal Ship Node to fulfil the order based on customer's selected delivery method and delivery address
  • Order is then passed to Order Fulfilment System, to Pick, Pack and Ship/Ready-To-Collect
  • Order is finally Delivered to/Collected by Customer

I have tried to create a diagram which shows the interactions between the systems which are involved from the time customer places an order till they receive it.














This picture can change retailer to retailer and as per their business strategy. Now, let's go through a bit deeper into SCM concepts and some jargons:

Few Industries where SCM is commonly used:

  • Retail
  • Food and Beverages
  • Manufacturing
  • Healthcare
  • Fashion
  • Technology
  • Defense
  • Finance

Order Capturing Channels:

  • These are the interfaces through which Customer interacts with Retailers and places orders
  • Customer acts as a Buyer and Retailer acts as a Seller 
  • Various ways through which a customer can place orders:
    • Store walk-in
    • Website 
    • Mobile App
    • Email
    • Call Center
    • Marketplace

Order Management Systems (OMS):

  • OMS is probably the heart of SCM. It manages the customer order life cycle
  • For retailers, customer order is called as Sales Order
  • To fulfil this order, if required, retailers can in turn place either Purchase Order (order to another legal entity), or Transfer Order (order to another node within same legal entity)
  • Customer can either Return the product by placing a Return Order or Exchange by placing an Exchange Order
  • For add-on services like gift wrapping and post delivery services like installation are handled through Work Order
  • Supply - quantity (inventory) of an item available to sell for new orders
  • Demand - quantity (inventory) of an item which is blocked for already placed orders, which is yet to be fulfilled
  • Retailers provide different fulfilment types for online orders like 
    • Same-Day
    • Next-Day
    • Standard-Delivery
    • Express-Delivery
    • Selected-Day Delivery or Name-Day Delivery
    • Buy Online Pickup In Store (BOPIS) or Click and Collect (C&C)

Order Fulfilment Systems:

  • These systems take care of fulfilling and delivering the orders to customers. Simply, it is defined as Pick, Pack and Ship process. These are often called as Warehouse Management Systems (WMS).
    • Distribution Centers (DC) - Large warehouses where companies kept their stock
    • Third-Party Logistics (3PL) - Retailers can outsource their logistics operations such as warehouse management and freight transportation to these companies
    • Fourth-Party Logistics (4PL) - manages all aspect of supply chain and serve as single point of contact to the client (retailer) and 3PLs
    • Stores - are where customer can walk-in to buy products. It is also used for online order fulfilment, collection, return and exchanges
    • Drop-Ship Vendors (DSV) - It is a 3PL that fulfills orders from a retailer (Seller) to their customers directly without the seller needing to hold any inventory
    • Suppliers - Vendors from whom retailers buy their products by placing purchase orders

Supporting Applications:

  • Throughout the SCM life cycle, there are many supporting applications which help the other systems to do what they are suppose to do
  • Some examples are:
    • Payment Gateways - They connect with Banks, Gift Cards providers, Loyalty partners to manage customer payments, so that Business doesn't have to worry about individual payment service provider integration
    • Customer Relationship Applications - These applications notify customers about their order status, promotions, invoices through Email, SMS, etc
    • Reporting Applications - These systems gather data from other applications (Extract-Transform-Load aka ETL) and provide insights to business about planning, forecasting, risks, concerns, etc
    • Alerting and Monitoring Tools - These are used for System health monitoring, Raising alerts, Order delays, etc to make the life easier for IT and Business team
    • Carrier Brokers - They connect with Carrier partners for fulfilling the customer order, so that Business doesn't have to worry about individual Carriers integration

SCM Products: 

  • Some Companies whose SCM products are available in the market are:
    • IBM
    • Manhattan
    • Salesforce
    • Blue Yonder
    • SAP
    • HCL

Happy Learning!!

Saturday, May 22, 2021

Customizing log4j in Sterling OMS

Introduction:

Logging is very important part of any application. It helps you detect issues and provide more information for triaging. IBM Sterling OMS application uses log4j utility for logging. The log4j utility writes trace and debug information to a log file.

As per your business requirements, you can modify the logging parameters in the log4j configuration file to control the location and level of the log files. You might want to send Application/Agent/Integration server logs to different locations. You might also have Custom java classes with loggers to capture the logs.

In this post, we will see how we can customize log4j as per our requirements.

Sunday, May 9, 2021

How to create a custom view to join multiple tables in Sterling OMS

 Introduction:

There can be a business requirement to fetch data from different tables from database and use it for further processing. For example - In Inventory console, we need to search and display data from extended attributes of yfs_item.

We can either write a custom logic to fetch the data from required tables and then do post processing to return the output in desired format. There is also a possibility to join required tables in a View. Latter one also requires customization but can be better performing.

Views can be created for out-of-the-tables and/or custom tables. Let's see how we can create custom views in IBM Sterling OMS.

Saturday, October 3, 2020

Enable Product Browsing in Sterling Web Call Center

Introduction:

IBM Sterling has introduced Web Call Center known as Commerce Call Center (CCC) with version 9.3 onwards. It is a Thin-Client application. Prior to v9.3, RCP-based COM was used which is a Thick-Client application. So the process of build, deployment and promoting new changes to environment has become easy as it eliminates the need for installing and maintaining a client application on desktop systems.

When a customer calls the call center user asking product details which he/she intend to buy, In such situations user must be able to browse products and view the details. For that, Product browsing (Catalog Search Indexing) should have been enabled for users to search and browse products.

In this blog, we will learn how to enable Product browsing (Catalog Search Indexing) for IBM Sterling Web Call Center. I have taken reference of Sterling OMS v9.5 to explain steps.

Wednesday, September 30, 2020

How to create JMS Queue in WebSphere

 Introduction:

There are many instance when your Application requires JMS connectivity. If you are using WebSphere application server then along with deploying your application, you can also use out of the box JMS feature available with WebSphere. You don't need to look for any other external JMS provider.

In this post we will be using Web Sphere Application Server v8.0.0.0 console to create point-to-point queues. We will see the configuration of:

- Bus

- Destination

- Queue Connection Factory

- Queue

Wednesday, September 23, 2020

Sterling and JBoss - JMS and Transaction Timeout configuration

Introduction: 

There are a lot of considerable differences in JBoss 5 compared to JBoss 4 and don’t expect existing configuration to work seamless when migrating from JBoss 4x to 5x.

While working in IBM Sterling, if you are using JBoss as Application server and as JMS provider then this might be helpful for you to see the configuration files in JBoss and how to configure it in Sterling.

In this post, I will be talking about JMS and Transaction Timeout settings in JBoss 4x vs 5x.

Sunday, July 5, 2020

Jmeter Automation using Java

Introduction:

Even though I come from a development background, I had to work as a support team member for some time for one of the project. It's quite common in IT industry that depending upon the project need your role will change accordingly even if it doesn't match with your skills set. 

There were many repeated tasks on daily basis which we have to do. Like - sending reports to business teams, reprocess exceptions, close alerts, process stuck orders etc. I did not like this repeated work and thought of automating few things. I observed the pattern for few tasks was like -
  • Connect to DB
  • Execute a query to DB
  • Export the output to CSV file
  • Execute existing Jmeter script which reads data from CSV file and invokes API/Service