Friday, November 9, 2018

MBOS with supply chain management v1.8

A.       Version History 

Date

Revision

Description

Author

2018-11-09

A

Documents created and published

Vinh Nguyen

canvinh@gmail.com

 2022-11-11

 B1

 Removed references related to DiCentral

 Vinh Nguyen

canvinh@gmail.com

 2022-12-02

 B2

 Added notes about cloud services in section 17.

 Vinh Nguyen

canvinh@gmail.com

B. System Descriptions

Currently there are many ERP and Supply Chain Management (SCM) software in the market. One of those is SAP, which requires new comer with 2 years of experience to operate their SAP software, i.e. over complicated.

The following system is Management of Business Operations System (MBOS) supporting ERP, e-Commerce, Internet Retail, business management, etc.  


1. Overall system



Figure 1. Overall system architect to show its structure.

As shown in the diagram all modules are web pages. The SCM offers web access to its buyers and sellers. Sale data would be saved in database, which would be used by other departments for reports or statistics.

We could integrate all departments’ services, because their data should be stored in files or relational databases. The ERP system would process data in different databases to provide reports, tasks, activities, statistics, etc.

2. Supply Chain Management



Figure 2. The process of an SCM.

The diagram in figure 2 showed a standard process for buying an item on a web site. It also shows the interaction by sellers to add items or update its inventory.

The process could be further integrated or automated if external vendors allow the web site retailer to access its database for inventory and sale items.

3. Web architecture to build an ERP



Figure 3. Model to offer a Data Management layer for data sources access

As shown in the diagram, access to different databases or data sources would be kept in the Data Management layer or library. Why?

·       Each department may have used different database engines such as Oracle, MS SQL, DB2, etc.

·        Save work by customizing web pages for each customer

·        This library offers clear function interface (API), so web pages could call to retrieve or process data from different data sources.

·       If systems developed with a protocol programing language, the interface would be a dispatching interface or clear protocols.

In addition to relational database, each department could have their own software such as Microsoft Project to plan an activity. The owner would run a program (if not integrated in MS Project) to extract data and store those in database for later processing. It is like to release a project plan officially to other users.

The ERP would have its own database to store require information that extracted from different files. By using relational database, all web users would be able to access services anywhere within their Intranet. By the way, access ERP system from the outside network may expose their system to hackers.

As you can see from the diagram, this ERP system would only require developers to customize Data Management layer for each customer, because each of them may use different tools, databases, or data sources.

4. Configuration scenarios

4.1 New customer

Customer didn’t have an ERP system. We could install ERP with its database. This is the easiest scenario.

4.2 Complete migration

Customer with an ERP likes to migrate their existing system to our ERP. Work would be needed to transfer data from customer’s existing data sources to our database and customizing some database fields, if needed. Web pages stay the same.

4.3  Partial Implementation

Customer with an ERP keeps some of their system, and the rest is with our ERP. This is the most complex scenario, because the new ERP cannot write to the customer’s existing database, but only reading to provide statistics and reports. It could write data temporarily to its database for further processing. The Data Management layer would read both our database and customer databases for its tasks. Web pages stay the same. This is like a half and half scenario.

4.4 Data Management layer 

The Data Management layer in case (b) and (c) may need to customize customer’s data name and fields in order to display those correctly on its web pages. For example, a statistic web page has 5 columns, but the customer only has 4 columns of data. Developers must figure out the best field in customer database to fill in the missing column of data. This is to avoid rewriting/redesigning web pages, if not needed. The original design may look best with 5 columns of data.

5. A scenario for changing shifts

A typical scenario for manufacturing plants supporting several shifts for a day is to allow employees asking to change working shift.

Some employers said that allowing employees to change shifts is a nightmare. Probably their ERP is over complicated. It’s quite simple.

5.1 Human resource system

The web page allows HR to enter new employee information including

-         Name and address
-         Starting salary
-         Current salary (system process initially same as start salary)
-         Current shift, i.e. day, evening, or night
-         Working department
-         Start and end date
-         Requested shift change, i.e. day, evening, or night (web request)
-         Pending start date and requested department (system process)

5.2 Management Department

The Management Department also has access to the same HR database for information about their current staff.

-         Working position of employees
-         Start and end date
-         Working hours and working days (updated by Time Report web access)
-         Pending start date (system process)

5.3 Process to change shift

There is a web page allowing employees to “click” or request to change a shift. If employee didn’t have access to this page, HR staff must do this for their employee. For example, the night shift employee checked on boxes for day shift and desired department position.

This information is stored in HR database accessible by all managers.

5.4 Internal hiring 

Manager looking for internal staff to fill vacancy

The hiring open a hiring web page, which retrieves data from HR database for all internal staff interested working in manager’s shift or requested position with selected shifts.

After reviewing candidate profile or available resume, the hiring manager would fill a request to hire on the hiring web page to send an email to the current manager of that employee with his name, email, phone number, proposed start date, and a link to a transferred web page (of course requested staff name is included). This is to ensure that the current manager could afford losing an employee.

The current manager could call/email the hiring manager to discuss that transferred request.

If the current manager agreed on the transfer, he only needed to click on an “OK” button on the transferred web page. The system would update the manager department and HR database with the pending start date associated with a timer. By the new start date, system would trigger a change of start/end date and working position for that employee in both current manager and hiring manager database. The working department of that staff would be changed in HR database.

If the current manager proposed another transferred date, the hiring manager would open that transfer request to update the new start date, and submit the request to the current manager again for confirmation.

The hiring manager could contact the potential employee by a phone conversation about transferred date. He only needs to submit the transferred request in system. HR, himself, current manager and that employee would get notification by emails as a confirmation.

If the current manager didn’t agree, system would cancel the transferred request by the hiring manager. The hiring manager would start process looking for another candidate again.

Usually salary is the same for a position transfer.

6. Promotion process and payroll

The manager opens a promotion web page to fill out information about the selected employee with new salary & position as well as start date. Upon submission, system would update the staff’s new position (Management Department database), working department & current salary (HR database), etc. If the promotion started at a specific date, system would trigger necessary changes at that date by a timer.

The payroll department only needs to query HR and Management Department databases for working hours and salary to issue a pay check. Some company pays 1.5 hour rate for working more than 44 hours/week OR double for working 7 days consecutively.

Each employee is supposed to fill out working hours in each day plus project codes per week using a Time Report web page to store data in Management Department database. A web page connected to the database allows the manager to validate working hours for each employee at the end of a payroll period. In a manufacturing company, employees swiped their ID card at the entrance, thus the required information from a Time Report database is replaced by querying the ID scanning system.

Each department owns a project with associated project codes (pcode) such as system design, block design, function test, etc. for a specific product. However its staff is allowed to ask for help from experts in other departments. Staff in other department could charge their assistant hours with the project codes allocated for the original department. This is to monitor expense per department as well as its efficiency (expertise of staff per project). A statistic web page could show all data for a project by querying multiple databases including Time Report data.

It’s understood that experts have fixed higher hour pay rate, so asking for help would add higher expense to the department. However experts could provide directions or development tips within an hour that are worth a week of R&D effort by that staff.

To support Time Report system and its statistics, at the beginning of development phase for a product, the product owner would create a project overall code for each department AND each department manager would break down that project into smaller pcodes associated with that project overall code for their staff. These tasks would be provided by the Time Report web pages.

7. Business Intelligence Reports and Statistics

Since the entire operations of a company are integrated, there could be many reports and statistics generated. For example,

-         Sales per region
-         Vendors per region
-         Best selling items overall
-         Best selling items in term of quantity by Internet
-         Best selling items in term of quantity for in store
-         Items loaded in store’s shelf for long period of time
-         Sales per employee R&D hours
-         Gross profit margin & net profit margin
-         Gross profit and net profit margin overall
-         Overall ROI and ROI for a product
-         Overall cost of a project
-         Cost per department for a project
-         Manufacturing costs of a product
-         Sales per store
-         Internet sales
-         Etc.


With reports and statistics, company could load or store items locally in order to improve shipping time instead of shipping from a remote vendor location.

For international company, they could load relevant/related items to each store depending on sales over the Internet or in store. Thus each store in a city/country may load different items for local shoppers.

For international company, they could load relevant/related items to each store depending on sales over the Internet or in store. Thus each store in a city/country may load different items for local shoppers. This is the scenario for international retailers such as Walmart to compete with Internet retailer as Amazon, because Walmart could offer sales over Internet with its internal items plus items from external vendors. The best thing about Walmart is local stores in many cities. Buyers could return items to a local store without worrying about packaging returned items and then sending it by post to retailers such as Amazon.

8. ETA of Internet sales

Before our solution, Amazon didn’t list ETA associated to an item. Thus buyers were upset that ordered item was shipped from China longer than a month. Buyers couldn’t cancel that invoice, because Chinese firm marked it as shipped quickly. Personally I bought a replacement earlier while waiting for that item shipped from China.

The Internet retailers should associate each sale item with an ETA, and buyers could choose relevant shipping options such as express or regular post in order to get all selected items arrived at the same time with lowest shipping fee. For example, user buys a sound system with speakers shipped within USA by regular post and amplifier shipped from Europe by express post.

Currently Amazon only allows options for buyers to see different item’s shipping days, but it didn’t show the estimate cost per each item. Users must accept an option in order to see total shipping cost in the payment page. In this case users must go back to previous page to change shipping options, if unhappy with shipping costs. Personally I did order 64GB USB keys and a 32GB USB key ($5 less), but free shipping of the 32 GB key takes 5 days while 64GB keys needs 2 free shipping days. I changed the order to buy all 64GB USB keys.

9. Miscellaneous notes

I enter this ERP and SCM fields, because I saw an article posted by DiCentral staff that nobody could replicate Amazon. Amazon loads 50M book titles.

International (Internet and in store) retailers could beat Amazon easily by integrating with other book store sellers such as Chapters in Canada. It could list all Chapters’ carrying books with ETA and shipping fees for each location of buyers. Therefore Internet retailers do not need to buy and stock all books. The same thing applies to other sale items by external buyers, i.e. virtual warehouse by the Internet retailers. If external vendors allowed retailers integrating its inventory with its system, inventory would be updated automatically on retailer’s sale web site after each sale. Of course, external vendor’s system must also update its inventory for new produced items that listed on retailer’s web site.

I saw another DiCentral’s article about its B2B solution; it’s not complete as it also did some solutions for supply chain management. Therefore I suggested this complete system for entire company’s operations.

10. Manufacturing operations

In order to calculate cost of goods sold, the manufacturing department also has a system to store data. Data could be stored in Finance Department database instead. It’s up to a design, because system could retrieve data internally. Here are sample data

-         Cost of each raw material for a product
-         Vendor of each raw material
-         Quantity of products made
-         Hours spent by production workers on a product (time report or ID scanner)
-         Hours spent by management (time report or ID scanner)
-         Cost of utility
-         Cost of leasing equipment
-         Insurance cost
-         Estimate remaining raw materials after production
-         Quantity of products shipped to retailers
-         Quantity of products remained in warehouse
-         Quantity of defected products (recycle-able materials or not)
-         Etc.

Based on data stored in this department database, HR database, Finance Department (invoices), etc. system could generate different reports or statistics, which could be used to improve operation efficiency or ROI.

Each company used different tools or systems, therefore the Data Management layer would hide the complexity of a customer’s infrastructure to its web pages. Most of time the Data Management layer would read data stored in different databases such as ID scanner to provide data to its web pages via a standard API or protocols, i.e. hardware design is not involved.

By the way, investors wanted a lot of metrics to estimate market capital of a company. With manufacturing data and other data such as sales, many metrics could be generated automatically in a report or statistics.



Many people have concerned with the relocation of their manufacturing plant and complication of their current supply chain management system, e.g. relocation due to Brexit and out of China due to trade war with USA.

The main problem would be finding a new location for your plant, which could be in another country, working out logistic of new plant, hiring local employees, relocating key managers, etc.

The SCM system integrated with this ERP is automated for many tasks including estimation of new delivery date for parts, partial products to final assembly plant. System could also provide UI to enter new prices of raw materials including shipping fees to new location, labor costs, etc. Even SCM is a smart system, but it couldn’t figure many things by itself including pricing and costs.

Let’s say that you used to order raw materials from company ABC to ship those to China by cargo ships. Now you’re relocating to Viet Nam.

·        You would ask your supplier of raw materials to pull up his SCM to estimate adjusted cost including shipping method (air cargo, train, ship, and truck) to get materials arrived in new plant on a specific time.
·        You would enter information in your SCM with details for later report.
·        From your ERP and SCM system, it would provide you information about time required to get parts shipped to final assembly plant, but it was for the old location.
·        Based on new data entered from your suppliers, you would request to ship parts a bit earlier or later to get those in Just in Time for final assembly.
·        Enter salary of employees and their information at new location in system.
·        Terminate employment of employees at old plant.
·        Enter all leasing information.

Basically you have to re-enter data for a new manufacturing plant, and closure of old plant. You would then be able to generate reports and statistics as usual.

Most of time external suppliers didn’t want to integrate their SCM to your ERP or SCM. Suppliers usually review available transportation network to new location and pricing schemes. Both will negotiate price and shipping methods.

For internal suppliers, system was already integrated. Managers only need to open SCM to view shipping options and delivery time to adjust those correctly for their new factory plant. Of course they need to perform plant closure and plant operations as needed.


12. Amazon issues

As mentioned earlier, international retailers such as Walmart, BestBuy, Staples, and Costco have advantages over Amazon, because they have in town stores for return of products conveniently.

What could Amazon do?

Amazon is still regarded as Internet retailer. They also provide cloud services called AWS. Seriously I would consider IBM, Microsoft, or Google for cloud storage, because these companies are high tech organization. They could also offer trouble shooting of services for applications in their servers, i.e. Windows application, android devices, mainframe issues, etc.

Amazon chose 2 US sites as 2nd headquarters, which require 50,000 computer engineers. Can they fill those positions? They should have picked 3 locations positioned around the world to recruit and faster services for their AWS, e.g. 1 in Europe, 1 in Asia, and 1 in Middle East. Those countries could be Russia, Japan or South Korea, and Israel. This would help to spread the work forces and servers to stored data locally to avoid “privacy issues”, e.g. data storage and services close to client locations. Those countries are competent in technology, by the way. Amazon would choke Internet connection or bandwidth by having main work forces in a country.

Personally I would pick mid-size cities close to a large city to setup an engineering office. Engineering jobs are not easy to find, and people are used to job relocation. Office rents, staff salaries, Internet traffic and transit traffic in large cities are very high. This is something to avoid. 

Based on data collected or statistics in their system (SCM), they could estimate how often customers returned a product due to defect or un-satisfaction. They could include a “return” label in a shipping package and reusable envelope or box. The label could include a prepaid stamp, if used to ship items back to Amazon. By doing this, they could automate the packaging process quickly.  By having customer contact them by email and arrange a return address and possible return (prepaid) label would generate labor cost and some frustration.

By the way international retailers could also get preferred commissions and discount prices of products as Amazon to list those on their web sales.


13. Distributed shipping locations

Most of retailers allocated a warehouse to ship products sold online. This could lead to slower shipping days and higher postage fees.

International retailers have loaded in store items differently in each store, but they could have a common database in head quarter’s SCM to list/associate items per store as well as items in each warehouse.

Based on items selection of online buyers and their locations, SCM locates the best location to ship products, which could be a store or nearest warehouse, and dispatch a request by message/email to the target store(s) or warehouse to fill order and ship those. Items could be shipped from several stores or a store depending on availability. Shipping fees would be displayed to buyers, so they could pick preferred delivery methods with ETA.


If a vendor preferred to clear their main warehouse first, MBOS could always display shipping option from the main warehouse in stead of retailer’s warehouse to buyers. If items were sold out from the main warehouse, items from nearest (to buyer) retailer’s would be displayed. 

Each store could allocate several (special trained) customer service personnel, packaging boxes with several sizes, different envelopes, and label with preferred carriers printer for shipping boxes. Those personnel would take care of shipping requested products on top of regular duties. This would save shipping costs and shorter ETA. The only reason to train special “multi-tasking” personnel was to save labor cost as shipping of products to on-line customers happened rarely.

14. Customer Relationship Management (CRM)

This CRM concept started around 2001, I was in meeting with a sale representative (probably from Epiphany), who came to Microcell i5 Inc. to market its products. It is all about to suggest sale items based on current selection or browsing by users on company’s website, i.e. no longer protected by patents.

This could be done easily with web tools integrated with SCM to track user click and search string on your online sales. For example, take Walmart and BestBuy website.

·        Users enter a search or navigate through department category, e.g. search 55 inch TV.
·        Display on the left side windows all options for TV such as curve or vendors, so users could select to narrow down list of items shown
·        Display items (TVs) based on selection by users in the main windows
·        If user click on an item, the top page would list the item; the middle minimized windows would list item’s specification & reviews (user could expand); the bottom windows would list all related items.
·        The related items could be 65 inch TV on sale, receivers on sale, speakers on sales, HDMI cables, android TV box, apple TV, etc.
·        Users tend to buy higher end products, if those were on sales.
·        Users could add any products to his shopping cart, and paid as described above with all options about shipping fees, so he could get the whole system delivered on time together.

In the checkout process, users could opt to register with his email address. Company could send promotion emails listed major “special sales” items to attract users attention. By clicking on one of those on sale images, it would list the selected item with displays as described above.


15. Design considerations

Disclosure: I have not seen an ERP or an EDI in this industry. A friend of mine working in this business quickly explain by throwing all acronyms and portrayed it in a complex way. I didn’t say that I knew ERP or EDI by the way. I didn’t google those acronyms for its meaning.

MBOS is pretty simple. The key features would be natural flow of information or data presented by web pages. Each department would have their set of web pages, which access relevant parts of databases hosted by different departments.

MBOS could implement a single large database, and shared it with all departments. Why did I split those in my examples above? Simple, many departments didn’t want to share all of their data with others. Therefore, Management Department, Sale Department, Human Resource Department, etc. have been allocated different databases to store their confidential information. Only a few data (table columns) would be shared to compile a financial report, a management operation, or statistic report, etc.

Perhaps most companies are using SAP, and SAP didn’t want to open their database or its schema, thus others could not integrate with SAP’s ERP. Otherwise it’s a simple task to extract relevant data and process those. For example, extract sale transactions, invoices, costs, etc. to process information.


This industry is using EDI to integrate between trading partners and ERP system. MBOS has all information in its databases. This is a question of trading partners open their system to install a module to extract relevant data and combine with data in MBOS for final reports including sales and inventory. Data passing between trading partner doesn’t have to follow EDI standard, it could be a simple protocol as an interface. As I wrote in previous sections, automating information flow is not a hard part, this is a question of collaboration between trading partners.


There is a trick to make users happy with your applications, i.e. automate their working process. For example, CEO and COO may order a suite of software system for all departments. All departments must tailor their work into the process provided by that system. This may not be what they’re doing for daily tasks.

After you learnt about user’s process and daily tasks, you only need to automate those or present relevant set of web pages, i.e. automate the process to calculate P/E, retain earning, cost of goods sold, profit margins by embedded modules in the Data Management layer, which had pulled data from different databases.

In configuration scenarios, I have considered half-&-half case, which is not desirable to system providers. This would require a lot of work to integrate with existing system and maintain those. If customer bought new tools, you would need to reopen those integrated components and modify those again. The half-&-half scenario is for cases that customers have tools that you could not replace by your tools or too complex to develop a comparable one, e.g. MS Project (Microsoft is in this joint venture by the way). The only solution would be trying to read MS Project files and populate data into your database for further processing. Systems such as PeopleSoft or SAP could be replaced by different set of web pages in MBOS.

16. Sales Promotion

In order to offer incentives or good sale promotion to potential customers, each part should be listed with its effective cost, i.e. cost, transportation, shipping, etc. in database to be accessible by sale department. For large equipment vendors, they could offer accessories at effective cost with main equipment to customer instead of retail price in order make a sale. For example, a car dealer would sell rubber floor mats, winter tires, RIM, etc. in additional to cars. Product advisors usually offer $1,000 cash in debates for customers paying off the car in cash. However, to make the offer more attractive they could offer free winter tires and RIMs, which is sold at $1,200 separately but its effective cost is $1,000, instead of cash to buyers. Buyers would look up the retail prices and thought that they have made saving of $1,200 by choosing winter tires and RIMs.

Most of car dealers had issues with the accounting department, i.e. recording retail prices in database even though other departments use parts. For example, part department would charge the sale department $1,200 for winter tires and RIMS, thus the profit margin of a car sale may fall below a threshold for selling a car with this option. Therefore, salesman could only offer $1,000 cash rebate in this case.

In the end, recorded revenue and profit by either department would go to the same company. The part department should charge its winter tires and RIM sold to sale department at effective cost, and note “for a car sale”. Records of that part and car sale could be linked together to avoid cases of selling parts at effective cost to a third party. They could order a new set of tires and RIM for inventory at any time.

17. MBOS and cloud services

As shown in figure 1, MBOS system is hosted in house of a company as it housed sensitive information about business such as sales, finance, customers, etc.

The cloud could be a link holder to redirect clients to the main system hosted outside of the cloud.

We don’t want to load both of customer data and software in a system, where it could be taken by competitors.

2 comments:

  1. I haven't worked on any ERP system or seen one. According to a web definition, ERP is only for human resource planning. This ERP system is beyond that concept. This system provides a complete system to manage operations of a company. You could say that it included BI stuff, too.

    ReplyDelete
  2. Perhaps, this complete system should be called Management of Business (Operations) System (MBS). This is not only an ERP system.

    ReplyDelete