U.S. patent application number 13/935209 was filed with the patent office on 2014-01-16 for method and system for managing multiple supply chains.
The applicant listed for this patent is Flextronics AP, LLC. Invention is credited to Marni Berger, Glenn Jones, Thomas K. Linton, Mark Whipple.
Application Number | 20140019471 13/935209 |
Document ID | / |
Family ID | 49882607 |
Filed Date | 2014-01-16 |
United States Patent
Application |
20140019471 |
Kind Code |
A1 |
Linton; Thomas K. ; et
al. |
January 16, 2014 |
METHOD AND SYSTEM FOR MANAGING MULTIPLE SUPPLY CHAINS
Abstract
The present disclosure discloses a supply chain management
system that can estimate manufactured item delivery times at a
facility, manufactured item costs or prices, and dynamically
control supply chain performance.
Inventors: |
Linton; Thomas K.; (Newnan,
GA) ; Whipple; Mark; (Golden, CO) ; Berger;
Marni; (Belmont, CA) ; Jones; Glenn;
(Pleasanton, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Flextronics AP, LLC |
San Jose |
CA |
US |
|
|
Family ID: |
49882607 |
Appl. No.: |
13/935209 |
Filed: |
July 3, 2013 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
61668282 |
Jul 5, 2012 |
|
|
|
61716960 |
Oct 22, 2012 |
|
|
|
61750184 |
Jan 8, 2013 |
|
|
|
61800197 |
Mar 15, 2013 |
|
|
|
Current U.S.
Class: |
707/759 |
Current CPC
Class: |
Y02P 80/40 20151101;
G06F 16/242 20190101; G06Q 10/06315 20130101; G06N 5/02 20130101;
G05B 19/418 20130101; G05B 19/41865 20130101 |
Class at
Publication: |
707/759 |
International
Class: |
G06F 17/30 20060101
G06F017/30 |
Claims
1. A system for monitoring multiple supply chains for different
products, performance information collected for each monitored
supply chain being confidential to the respective monitored supply
chain and being stored in a common database, comprising: a
microprocessor executable security module operable to receive a
query, command and/or request from a requestor to perform an
operation with respect to a set of data and/or data structures in
the database, modify the query, command and/or request to conform
to a security definition, and use the modified query, command
and/or request to perform the operation.
2. The system of claim 1, wherein the database is not partitioned
logically into distinct and independent parts corresponding to
different monitored supply chains and wherein the data and/or data
structures for different monitored supply chains are commingled in
the database.
3. The system of claim 1, wherein the query, command and/or request
is modified by the security module to reflect a supply chain role
and/or an identity of an enterprise and/or organization associated
with the requestor, whereby the data and/or data structures
impacted by the query, command, and/or request are limited to those
relating to the supply chain role and/or identity of the enterprise
and/or organization associated with the requestor.
4. The system of claim 1, wherein the security module determines
whether the requestor has permission to use an application
associated with the operation and, when the requestor is without
permission to use the application, denies the query, command,
and/or request.
5. The system of claim 1, wherein the query, command, and/or
request is required to pass through an application programming
interface prior to performance of the operation and wherein the
security module determines whether the requestor has permission to
use the application programming interface and/or whether the query,
command and/or request conforms to the requirements of the
application programming interface and, when the requestor is
without permission to use the application programming interface
and/or when the query, command, and/or request fails to conform to
the requirements of the application programming interface, denies
the query, command, and/or request.
6. The system of claim 1, wherein the requestor is required to have
a specified role and relationship to a selected monitored supply
chain enterprise and/or organization before the operation can be
performed.
7. The system of claim 1, wherein a datum and/or datum structure of
the set of data and/or data structures has different states,
wherein an action must be performed to change the state of the
datum and/or datum structure, wherein each action can only be
performed when the requestor has a permission to perform the
action, and wherein one of the different states has plural
sub-states that must be performed before the state can change.
8. The system of claim 1, wherein supply chain performance metrics
are not calculated, in substantial real time, based on the
performance information collected from the monitored supply
chains.
9. A method, comprising: monitoring multiple supply chains for
different products, performance information collected for each
monitored supply chain being confidential to the respective
monitored supply chain and stored in a common database; a
microprocessor executable security module receiving a query,
command and/or request from a requestor to perform an operation
with respect to a set of data and/or data structures in the
database; the security module modifying the query, command and/or
request to conform to a security definition; and the security
module using the modified query, command and/or request to perform
the operation.
10. The method of claim 9, wherein the database is not partitioned
logically into distinct and independent parts corresponding to
different monitored supply chains and wherein the data and/or data
structures for different monitored supply chains are commingled in
the database.
11. The method of claim 9, wherein the query, command and/or
request is modified by the security module to reflect a supply
chain role and/or an identity of an enterprise and/or organization
associated with the requestor, whereby the data and/or data
structures impacted by the query, command, and/or request are
limited to those relating to the supply chain role and/or identity
of the enterprise and/or organization associated with the
requestor.
12. The method of claim 9, wherein the security module determines
whether the requestor has permission to use an application
associated with the operation and, when the requestor is without
permission to use the application, denies the query, command,
and/or request.
13. The method of claim 9, wherein the query, command, and/or
request is required to pass through an application programming
interface prior to performance of the operation and wherein the
security module determines whether the requestor has permission to
use the application programming interface and/or whether the query,
command and/or request conforms to the requirements of the
application programming interface and, when the requestor is
without permission to use the application programming interface
and/or when the query, command, and/or request fails to conform to
the requirements of the application programming interface, denies
the query, command, and/or request.
14. The method of claim 9, wherein the requestor is required to
have a specified role and relationship to a selected monitored
supply chain enterprise and/or organization before the operation
can be performed.
15. The method of claim 9, wherein a datum and/or datum structure
of the set of data and/or data structures has different states,
wherein an action must be performed to change the state of the
datum and/or datum structure, wherein each action can only be
performed when the requestor has a permission to perform the
action, and wherein one of the different states has plural
sub-states that must be performed before the state can change.
16. The method of claim 9, wherein supply chain performance metrics
are not calculated, in substantial real time, based on the
performance information collected from the monitored supply
chains.
17. A tangible and non-transient computer readable medium
comprising microprocessor executable instructions that, when
executed, perform tasks comprising: monitoring multiple supply
chains for different products, performance information collected
for each monitored supply chain being confidential to the
respective monitored supply chain and stored in a common database;
receive a query, command and/or request from a requestor to perform
an operation with respect to a set of data and/or data structures
in the database; modify the query, command and/or request to
conform to a security definition; and use the modified query,
command and/or request to perform the operation.
18. The computer readable medium of claim 17, wherein the database
is not partitioned logically into distinct and independent parts
corresponding to different monitored supply chains and wherein the
data and/or data structures for different monitored supply chains
are commingled in the database.
19. The computer readable medium of claim 17, wherein the query,
command and/or request is modified by the instructions to reflect a
supply chain role and/or an identity of an enterprise and/or
organization associated with the requestor, whereby the data and/or
data structures impacted by the query, command, and/or request are
limited to those relating to the supply chain role and/or identity
of the enterprise and/or organization associated with the
requestor.
20. The computer readable medium of claim 17, wherein the
instructions determine whether the requestor has permission to use
an application associated with the operation and, when the
requestor is without permission to use the application, denies the
query, command, and/or request.
21. The computer readable medium of claim 17, wherein the query,
command, and/or request is required to pass through an application
programming interface prior to performance of the operation and
wherein the instructions determine whether the requestor has
permission to use the application programming interface and/or
whether the query, command and/or request conforms to the
requirements of the application programming interface and, when the
requestor is without permission to use the application programming
interface and/or when the query, command, and/or request fails to
conform to the requirements of the application programming
interface, denies the query, command, and/or request.
22. The computer readable medium of claim 17, wherein the requestor
is required to have a specified role and relationship to a selected
monitored supply chain enterprise and/or organization before the
operation can be performed.
23. The computer readable medium of claim 17, wherein a datum
and/or datum structure of the set of data and/or data structures
has different states, wherein an action must be performed to change
the state of the datum and/or datum structure, wherein each action
can only be performed when the requestor has a permission to
perform the action, and wherein one of the different states has
plural sub-states that must be performed before the state can
change.
24. The computer readable medium of claim 17, wherein supply chain
performance metrics are not calculated, in substantial real time,
based on the performance information collected from the monitored
supply chains.
Description
CROSS REFERENCE TO RELATED APPLICATION
[0001] The present application claims the benefits of U.S.
Provisional Application Ser. Nos. 61/668,282, filed Jul. 5, 2012;
61/716,960, filed Oct. 22, 2012, and 61/750,184, filed Jan. 8,
2013, all entitled "Method and System for Controlling Supply
Chains", and 61/800,197, filed Mar. 15, 2013, entitled "Method and
System for Managing Supply Chains", each of which is incorporated
herein by this reference in its entirety.
FIELD
[0002] The disclosure relates generally to automated systems for
product management and particularly to automated systems for
controlling and/or managing supply chains.
BACKGROUND
[0003] The traditional structure of the business supply chain,
which viewed supply chain management as a chain of events, is
evolving, in response to the ever-complicated logistics of modern
trade, commerce and communications, towards viewing supply chain
management as a three-dimensional model. In other words,
organizations no longer view supply networks as a linear
relationship between raw materials and distributors. Rather,
today's supply web resembles a three-dimensional construct,
complete with a variety of suppliers, tiers and intermediaries that
serve to fill in for one another in the event of a disruption.
[0004] Increasingly, how well a supply web creates and shares
information not only defines how well the web holds together, how
efficiently it operates, and how much value it adds but also
determines the success or failure--as a group--of the manufacturing
venture. Companies need to share supply metrics, timelines, demand
and capacity data to enable the supply network to develop a common
and aligned set of objectives, which can protect it against
commodity pressures, volatility and individual failures. Sharing
information can speed up supply chains while mitigating the
inherent risks in doing so. This new model, with cost management at
its core, can capture decades of best practices in a unified
strategy for a new generation of companies and managers.
[0005] Essential to the practices of supply chains is the
establishment of material control through a combination of material
control towers that dictate, to suppliers, price, terms, and supply
requirements.
[0006] Although significant advances have been made towards
establishing a three-dimensional supply chain by companies such as
E2open.TM., GT Nexus.TM., and Resilinc.TM., problems remain. Many
three-dimensional supply chains are fairly rigid and unable to
respond dynamically to, let alone anticipate, adverse events. This
can cause disruption in the supply chain and concomitant
interruptions in the product distribution chain.
SUMMARY
[0007] These and other needs are addressed by the various aspects,
embodiments, and/or configurations of the present disclosure. The
present disclosure discloses a supply chain management system that
can estimate manufactured item delivery times at a facility,
manufactured item costs or prices, and dynamically control supply
chain performance.
[0008] A system for monitoring multiple supply chains for different
products (with performance information collected for each monitored
supply chain being confidential to the respective monitored supply
chain and being stored in a common database) can include a
microprocessor executable security module, method, and/or
instructions to receive a query, command and/or request from a
requestor to perform an operation with respect to a set of data
and/or data structures in the database, modify the query, command
and/or request to conform to a security definition, and use the
modified query, command and/or request to perform the
operation.
[0009] The database is commonly not partitioned logically into
distinct and independent parts corresponding to different monitored
supply chains, and the data and/or data structures for different
monitored supply chains are commonly commingled in the
database.
[0010] The query, command and/or request can be modified by the
security module, method, and/or instructions to reflect a supply
chain role and/or an identity of an enterprise and/or organization
associated with the requestor, whereby the data and/or data
structures impacted by the query, command, and/or request are
limited to those relating to the supply chain role and/or identity
of the enterprise and/or organization associated with the
requestor.
[0011] The security module, method, and/or instructions can
determine whether the requestor has permission to use an
application associated with the operation and, when the requestor
is without permission to use the application, deny the query,
command, and/or request.
[0012] The query, command, and/or request can be required to pass
through an application programming interface prior to performance
of the operation.
[0013] The security module, method, and/or instructions can
determine whether the requestor has permission to use the
application programming interface and/or whether the query, command
and/or request conforms to the requirements of the application
programming interface and, when the requestor is without permission
to use the application programming interface and/or when the query,
command, and/or request fails to conform to the requirements of the
application programming interface, deny the query, command, and/or
request.
[0014] The requestor can be required to have a specified role and
relationship to a selected monitored supply chain enterprise and/or
organization before the operation can be performed.
[0015] A datum and/or datum structure of the set of data and/or
data structures can have different states, wherein an action must
be performed to change the state of the datum and/or datum
structure, each action can only be performed when the requestor has
a permission to perform the action, and one of the different states
has plural sub-states that must be performed before the state can
change.
[0016] The supply chain management system can perform one or more
of the following tasks, functions, and/or operations:
[0017] (a) Track historic performance of a supply chain;
[0018] (b) Anticipate and/or quickly identify potentially
disruptive event(s) and mitigate the adverse impact of the
potentially disruptive event(s) on the supply chain;
[0019] (c) Analyze supply chains to identify cost inefficiencies,
bottlenecks, and unnecessary performance delays;
[0020] (d) Recommend and/or implement solutions for the identified
cost inefficiencies, bottlenecks, and unnecessary performance
delays;
[0021] (e) Monitor the performance of a supply chain in light of
distribution chain requirements or objectives to identify potential
violations or shortfalls; and
[0022] (f) Recommend and/or implement solutions to avoid or
mitigate the identified potential violations or shortfalls.
[0023] Supply chain performance metrics are commonly not
calculated, in substantial real time, based on the performance
information collected from the monitored supply chains.
[0024] All or parts of the supply chain management system can be
executed on one or more computers and typically is stored as
microprocessor executable instructions on a computer readable
medium.
[0025] The present disclosure can provide a number of advantages
depending on the particular aspect, embodiment, and/or
configuration. The supply chain management system can, particularly
for vertically integrated supply chains, more effectively and
efficiently control suppliers, prices, product supply, and other
terms, generate faster material turns or velocities, increase
profit, enable leaner manufacturing and logistics operations, and
reduce waste when compared to a supply chain without the supply
chain management system. It can more effectively consider the
impact of unanticipated or "black swan" events, including natural
and manmade disasters, by monitoring news sources, law enforcement
and military authorities, among others, and precisely mapping tier
1, 2, 3, and 4 facilities. It can effectively assess the
sensitivity of the supply chain to various internal and external
events. It can assess the risk of having a particular product or
product component available at a selected location at a selected
price or cost. It can enable greater levels of collaboration not
only among the various tiers but also within tiers. It can enable
more effective management of multiple sources, within a given tier,
even for legally distinct, competitive entities. The system's
combination of cloud tools, operating models, and risk management
logic can create new, more profitable and effective business
practices in three-dimensional supply chains.
[0026] These and other advantages will be apparent from the
disclosure.
[0027] The phrases "at least one", "one or more", and "and/or" are
open-ended expressions that are both conjunctive and disjunctive in
operation. For example, each of the expressions "at least one of A,
B and C", "at least one of A, B, or C", "one or more of A, B, and
C", "one or more of A, B, or C" and "A, B, and/or C" means A alone,
B alone, C alone, A and B together, A and C together, B and C
together, or A, B and C together.
[0028] The term "a" or "an" entity refers to one or more of that
entity. As such, the terms "a" (or "an"), "one or more" and "at
least one" can be used interchangeably herein. It is also to be
noted that the terms "comprising", "including", and "having" can be
used interchangeably.
[0029] "Advanced planning and scheduling" (also referred to as APS
and advanced manufacturing) refers to a manufacturing management
process by which raw materials and production capacity are
substantially optimally allocated to meet demand. APS is especially
well-suited to environments where simpler planning methods cannot
adequately address complex trade-offs between competing priorities.
Production scheduling can be very difficult due to the
(approximately) factorial dependence of the size of the solution
space on the number of items/products to be manufactured.
[0030] "Automatic" and variations thereof, as used herein, refers
to any process or operation done without material human input when
the process or operation is performed. However, a process or
operation can be automatic, even though performance of the process
or operation uses material or immaterial human input, if the input
is received before performance of the process or operation. Human
input is deemed to be material if such input influences how the
process or operation will be performed. Human input that consents
to the performance of the process or operation is not deemed to be
"material".
[0031] "Computer-readable medium" as used herein refers to any
tangible and non-transient storage and/or transmission medium that
participate in providing instructions to a processor for execution.
Such a medium may take many forms, including but not limited to,
non-volatile media, volatile media, and transmission media and
includes without limitation random access memory ("RAM"), read only
memory ("ROM"), and the like. Non-volatile media includes, for
example, NVRAM, or magnetic or optical disks. Volatile media
includes dynamic memory, such as main memory. Common forms of
computer-readable media include, for example, a floppy disk
(including without limitation a Bernoulli cartridge, ZIP drive, and
JAZ drive), a flexible disk, hard disk, magnetic tape or cassettes,
or any other magnetic medium, magneto-optical medium, a digital
video disk (such as CD-ROM), any other optical medium, punch cards,
paper tape, any other physical medium with patterns of holes, a
RAM, a PROM, and EPROM, a FLASH-EPROM, a solid state medium like a
memory card, any other memory chip or cartridge, a carrier wave as
described hereinafter, or any other medium from which a computer
can read. A digital file attachment to e-mail or other
self-contained information archive or set of archives is considered
a distribution medium equivalent to a tangible storage medium. When
the computer-readable media is configured as a database, it is to
be understood that the database may be any type of database, such
as relational, hierarchical, object-oriented, and/or the like.
Accordingly, the disclosure is considered to include a tangible
storage medium or distribution medium and prior art-recognized
equivalents and successor media, in which the software
implementations of the present disclosure are stored.
Computer-readable storage medium excludes transient storage media,
particularly electrical, magnetic, electromagnetic, optical,
magneto-optical signals.
[0032] "Critical path method" refers to an algorithm for scheduling
a set of project activities. CPM constructs a model of the project
that includes the following: (a) a list of all activities required
to complete the project (typically categorized within a work
breakdown structure), (b) the time (duration) that each activity
will take to completion, and (c) the dependencies between the
activities. Using these values, CPM calculates the longest path of
planned activities to the end of the project, and the earliest and
latest that each activity can start and finish without making the
project longer. This process determines which activities are
"critical" (i.e., on the longest path) and which have "total float"
(i.e., can be delayed without making the project longer). In
project management, a critical path is the sequence of project
network activities which add up to the longest overall duration.
This determines the shortest time possible to complete the project.
Any delay of an activity on the critical path directly impacts the
planned project completion date (i.e. there is no float on the
critical path). A project can have several, parallel, near critical
paths. An additional parallel path through the network with the
total durations shorter than the critical path is called a
sub-critical or non-critical path.
[0033] A "database" is an organized collection of data held in a
computer. The data is typically organized to model relevant aspects
of reality (for example, the availability of specific types of
inventory), in a way that supports processes requiring this
information (for example, finding a specified type of inventory).
The organization schema or model for the data can, for example, be
hierarchical, network, relational, entity-relationship, object,
document, XML, entity-attribute-value model, star schema,
object-relational, associative, multidimensional, multivalue,
semantic, and other database designs. Database types include, for
example, active, cloud, data warehouse, deductive, distributed,
document-oriented, embedded, end-user, federated, graph, hypertext,
hypermedia, in-memory, knowledge base, mobile, operational,
parallel, probabilistic, real-time, spatial, temporal,
terminology-oriented, and unstructured databases.
[0034] "Database management systems" (DBMSs) are specially designed
applications that interact with the user, other applications, and
the database itself to capture and analyze data. A general-purpose
database management system (DBMS) is a software system designed to
allow the definition, creation, querying, update, and
administration of databases. Well-known DBMSs include MySQL.TM.,
PostgreSQL.TM., SQLite.TM., Microsoft SQL Server.TM. Microsoft
Access.TM., Oracle.TM., SAP.TM., dBASE.TM., FoxPro.TM., and IBM
DB2.TM.. A database is not generally portable across different
DBMS, but different DBMSs can inter-operate by using standards such
as SQL and ODBC or JDBC to allow a single application to work with
more than one database.
[0035] "Determine", "calculate" and "compute," and variations
thereof, as used herein, are used interchangeably and include any
type of methodology, process, mathematical operation or
technique.
[0036] An "enterprise" refers to a business and/or governmental
organization, such as a corporation, partnership, joint venture,
agency, military branch, and the like.
[0037] "Enterprise resource planning" or ERP systems integrate
internal and external management information across an entire
organization, embracing finance/accounting, manufacturing, sales
and service, customer relationship management, and the like. ERP
systems automate this activity with an integrated software
application. The purpose of ERP is to facilitate the flow of
information between all business functions inside the boundaries of
the organization and manage the connections to outside
stakeholders.
[0038] "Manufacturing process management" or MPM is a collection of
technologies and methods used to define how products are to be
manufactured. MPM differs from ERP/MRP, which is used to plan the
ordering of materials and other resources, set manufacturing
schedules, and compile cost data. A cornerstone of MPM is the
central repository for the integration of all these tools and
activities aids in the exploration of alternative production line
scenarios; making assembly lines more efficient with the aim of
reduced lead time to product launch, shorter product times and
reduced work in progress (WIP) inventories as well as allowing
rapid response to product or product changes.
[0039] "Material requirements planning" or MRP is a production
planning and inventory control system used to manage manufacturing
processes. Most MRP systems are software-based. An MRP system is
intended to simultaneously meet three objectives, namely ensure
materials are available for production and products are available
for delivery to customers, maintain the lowest possible material
and product levels in store, and plan manufacturing activities,
delivery schedules and purchasing activities.
[0040] "Means" as used herein shall be given its broadest possible
interpretation in accordance with 35 U.S.C., Section 112, Paragraph
6. Accordingly, a claim incorporating the term "means" shall cover
all structures, materials, or acts set forth herein, and all of the
equivalents thereof. Further, the structures, materials or acts and
the equivalents thereof shall include all those described in the
summary of the invention, brief description of the drawings,
detailed description, abstract, and claims themselves.
[0041] "Module" as used herein refers to any known or later
developed hardware, software, firmware, artificial intelligence,
fuzzy logic, or combination of hardware and software that is
capable of performing the functionality associated with that
element. Also, while the disclosure is presented in terms of
exemplary embodiments, it should be appreciated that individual
aspects of the disclosure can be separately claimed.
[0042] An "original equipment manufacturer", or OEM, manufactures
product or components that are purchased by another enterprise and
retailed under that purchasing enterprise's brand name. OEM refers
to an enterprise that originally manufactured the product. When
referring to automotive parts for instance, OEM designates a
replacement part made by the manufacturer of the original part.
[0043] "Queueing theory" refers to algorithms for characterizing or
defining the behavior of queues. Queueing theory is generally
considered a branch of operations research because the results are
often used when making business decisions about the resources
needed to provide service. A queueing model based on the Poisson
process and its companion exponential probability distribution
often meets these two requirements. A Poisson process models random
events (such as a customer arrival, a request for action from a web
server, or the completion of the actions requested of a web server)
as emanating from a memoryless process. That is, the length of the
time interval from the current time to the occurrence of the next
event does not depend upon the time of occurrence of the last
event. In the Poisson probability distribution, the observer
records the number of events that occur in a time interval of fixed
length. In the (negative) exponential probability distribution, the
observer records the length of the time interval between
consecutive events. In both, the underlying physical process is
memoryless. Examples of queueing theory functions or principals
include BCMP network, Buzen's algorithm, Ehrenfest model, fork join
queue, Gordon-Newell network, Jackson network, Little's law,
Markovian arrival processes, Pollaczek-Khinchine formula,
quasireversibility, random early detection, renewal theory, the
Poisson process, and the like. Models based on the Poisson process
often respond to inputs from the environment in a manner that
mimics the response of the system being modeled to those same
inputs. The analytically tractable models that result yield both
information about the system being modeled and the form of their
solution. Even a queueing model based on the Poisson process that
does a relatively poor job of mimicking detailed system performance
can be useful. The fact that such models often give "worst-case"
scenario evaluations appeals to system designers who prefer to
include a safety factor in their designs. The form of the solution
of models based on the Poisson process often provide insight into
the form of the solution to a queueing problem whose detailed
behavior is poorly mimicked. As a result, queueing models are
frequently modeled as Poisson processes through the use of the
exponential distribution.
[0044] "Scheduling algorithms" refer to production scheduling and
includes forward and/or backward scheduling. Forward scheduling is
planning the tasks from the date resources become available to
determine the shipping date or the due date. Backward scheduling is
planning the tasks from the due date or required-by date to
determine the start date and/or any changes in capacity required.
Stochastic scheduling algorithms include economic lot scheduling
problem (which is concerned with scheduling the production of
several products on a single machine in order to minimize the total
costs incurred (which include setup costs and inventory holding
costs) and the economic production quantity model (which determines
the quantity a enterprise and/or organization and/or retailer
should order to minimize the total inventory costs by balancing the
inventory holding cost and average fixed ordering cost). Examples
of heuristic algorithms include the modified due date scheduling
heuristic (which assumes that the objective of the scheduling
process is to minimize the total amount of time spent on tasks
after their due dates) and shifting bottleneck heuristic (which
minimize the time it takes to do work, or specifically, the
makespan in a job shop, wherein the makespan is defined as the
amount of time, from start to finish, to complete a set of
multi-machine jobs where machine order is pre-set for each job, the
jobs are assumed to be actually competing for the same resources
(machines) resulting in one or more resources acting as a
`bottleneck` in the processing, whereby the heuristic, or `rule of
thumb` procedure substantially minimizes the effect of the
bottleneck).
[0045] A "server" is a computational system (e.g., having both
software and suitable computer hardware) to respond to requests
across a computer network to provide, or assist in providing, a
network service. Servers can be run on a dedicated computer, which
is also often referred to as "the server", but many networked
computers are capable of hosting servers. In many cases, a computer
can provide several services and have several servers running.
Servers commonly operate within a client-server architecture, in
which servers are computer programs running to serve the requests
of other programs, namely the clients. The clients typically
connect to the server through the network but may run on the same
computer. In the context of Internet Protocol (IP) networking, a
server is often a program that operates as a socket listener. An
alternative model, the peer-to-peer networking module, enables all
computers to act as either a server or client, as needed. Servers
often provide essential services across a network, either to
private users inside a large organization or to public users via
the Internet.
[0046] "Simulation modeling" refers both to discrete and continuous
simulations. Discrete simulations are also known as discrete event
simulations, and are event-based dynamic stochastic systems. In
other words, the system contains a number of states, and is modeled
using a set of variables. If the value of a variable changes, this
represents an event, and is reflected in a change in the system's
state. As the system is dynamic, it is constantly changing, and
because it is stochastic, there is an element of randomness in the
system. Representation of discrete simulations is performed using
state equations that contain all the variables influencing the
system. Continuous simulations also contain state variables; these
however change continuously with time. Continuous simulations are
usually modeled using differential equations that track the state
of the system with reference to time. The simulation's output data
will only produce a likely estimate of real-world events. Methods
to increase the accuracy of output data include: repeatedly
performing simulations and comparing results, dividing events into
batches and processing them individually, and checking that the
results of simulations conducted in adjacent time periods "connect"
to produce a coherent holistic view of the system. Normal
analytical techniques make use of extensive mathematical models
which require assumptions and restrictions to be placed on the
model. This can result in an avoidable inaccuracy in the output
data. Simulations avoid placing restrictions on the system and also
take random processes into account; in fact in some cases
simulation is the only practical modeling technique applicable.
[0047] "Transfer Function" (also known as the system function or
network function) is a mathematical representation, in terms of
spatial or temporal frequency, of the relation between the input
and output of a linear time-invariant system with zero initial
conditions and zero-point equilibrium. Transfer functions are
commonly used in the analysis of systems such as single-input
single-output filters. The term is often used to refer to linear,
time-invariant systems (LTI). Most real systems have non-linear
input/output characteristics, but many systems, when operated
within nominal parameters (not "over-driven") have behavior that is
close enough to linear that LTI system theory is an acceptable
representation of the input/output behavior. While any LTI system
can be described by some transfer function or another, there are
certain families of special transfer functions that are commonly
used. Typical infinite impulse response filters are designed to
implement one of these special transfer functions. Some common
transfer function families and their particular characteristics
are: Butterfield filter--maximally flat in passband and stopband
for the given order; Chebyshev filter (Type I)--maximally flat in
stopband, sharper cutoff than Butterworth of same order; Chebyshev
filter (Type II)--maximally flat in passband, sharper cutoff than
Butterworth of same order; Bessel filter--best pulse response for a
given order because it has no group delay ripple; Elliptic
filter--sharpest cutoff (narrowest transition between pass band and
stop band) for the given order; Optimum "L" filter; Gaussian
filter--minimum group delay and gives no overshoot to a step
function; Hourglass filter; and Raised-cosine filter.
[0048] "Transportation theory" refers to the study of optimal
transportation and allocation of resources. The transportation
problem as it is stated in modern or more technical literature
looks somewhat different because of the development of Riemannian
geometry and measure theory. Examples of transportation theory
functions or principals include Wassertein metric, transport
function, and the Hungarian algorithm.
[0049] The preceding is a simplified summary of the disclosure to
provide an understanding of some aspects of the disclosure. This
summary is neither an extensive nor exhaustive overview of the
disclosure and its various aspects, embodiments, and/or
configurations. It is intended neither to identify key or critical
elements of the disclosure nor to delineate the scope of the
disclosure but to present selected concepts of the disclosure in a
simplified form as an introduction to the more detailed description
presented below. As will be appreciated, other aspects,
embodiments, and/or configurations of the disclosure are possible
utilizing, alone or in combination, one or more of the features set
forth above or described in detail below.
BRIEF DESCRIPTION OF THE DRAWINGS
[0050] The accompanying drawings are incorporated into and form a
part of the specification to illustrate several examples of the
present disclosure. These drawings, together with the description,
explain the principles of the disclosure. The drawings simply
illustrate preferred and alternative examples of how the disclosure
can be made and used and are not to be construed as limiting the
disclosure to only the illustrated and described examples. Further
features and advantages will become apparent from the following,
more detailed, description of the various aspects, embodiments, and
configurations of the disclosure, as illustrated by the drawings
referenced below.
[0051] FIG. 1 is a block diagram of an exemplary three-dimensional
supply chain;
[0052] FIG. 2 is a block diagram of an exemplary supply chain
management system;
[0053] FIG. 3 is a block diagram of an exemplary tier 1 control
tower;
[0054] FIG. 4 is a flow chart of an exemplary data collection
module;
[0055] FIG. 5 is a flow chart of an exemplary scheduling
module;
[0056] FIG. 6 is a flow chart of an exemplary analytical
engine;
[0057] FIG. 7 is a flow chart of an exemplary risk manager;
[0058] FIG. 8 is a block diagram of an exemplary supply chain
management system;
[0059] FIG. 9 is a flow chart of an exemplary security module;
[0060] FIG. 10 is a flow chart of an exemplary pricing monitoring
module;
[0061] FIG. 11 depicts a screenshot according to an embodiment;
[0062] FIG. 12 depicts a screenshot according to an embodiment;
[0063] FIG. 13 depicts a screenshot according to an embodiment;
[0064] FIG. 14 depicts a screenshot according to an embodiment;
[0065] FIG. 15 depicts a screenshot according to an embodiment;
and
[0066] FIG. 16 depicts a screenshot according to an embodiment.
DETAILED DESCRIPTION
The Tier 1 Control Tower Supply Chain Management System
[0067] The tier 1 control tower supply chain management system will
be discussed with reference to FIG. 1. Generally, parts and
components are made from materials and/or other parts and
components, and products are made from material, parts, and/or
components. Materials are generally considered to be raw materials,
or crude or processed materials or substances.
[0068] A tier 1 control tower 100, in a brand level, typically
corresponds to a retail and/or wholesale vendor, supplier,
distributor, or other business that provides its branded products
to end users. These businesses typically invest in research and
development, product design, marketing, and brand development.
Examples include Apple.TM., Amazon.TM., Cisco Systems, Inc..TM.,
and Microsoft Corporation.TM.. The control tower 100 monitors (and
collects information regarding) the product distribution chain,
product inventory levels, product demand, and/or prices of
competitive products and, based on the collected information and
product demand and price projections, dictates to second tier
partners, prices, supply requirements, and other material terms,
and accesses performance information of such second and third tier
partners to monitor supply chain performance.
[0069] A tier 2 product assembler 104, in an integration level,
assembles parts and/or components received from tier 3 part and/or
component manufacturers into products, which are shipped to the
tier 1 vendor, supplier, distributor, or other business for sale.
An OEM is an example of a Tier 2 product assembler 104. Tier 2
product assembler(s) 104 provide, to the tier 1 control tower 100,
its respective performance information and performance information
received from tier 3 part and/or component manufacturers.
[0070] The first, second, . . . nth tier 3 part and/or component
manufacturers 108a-n, at the device level, manufacture parts and/or
components for assembly by the tier 2 product assembler 104 into
products. The first, second, . . . nth tier 3 part and/or component
manufacturers 108a-n provide, to the tier 2 product assembler 104,
its respective performance information and performance information
received from tier 4 material suppliers.
[0071] The first, second, third, . . . mth tier 4 material
suppliers 112a-m, at the raw material level, manufacture and supply
to the first, second, . . . nth their 3 part and/or component
manufacturers 108a-n materials for use in manufacturing components.
The first, second, third, . . . mth tier 4 material suppliers
112a-m provide, to the tier 3 part and/or component manufacturers,
its respective performance information.
[0072] Each of the tier 1 control tower 100, tier 2 product
assembler 104, first, second, third, . . . nth tier 3 part and/or
component manufacturer, and first, second, third, . . . mth tier 4
material suppliers 112a-m correspond to an enterprise and/or
organization, which may or may not be related to or affiliated with
another enterprise and/or organization in the supply chain of FIG.
1.
[0073] As shown by the arrows, air, land, and sea logistics
providers, such as FedEx, UPS, DHL, other trucking companies, other
air freight companies, and other ocean freight carriers, link the
various tier partners with an integrated network of air, sea, and
ground capabilities to enable effective movement of materials,
components, and products from sources to destinations.
[0074] While the above example assumes that performance information
is supplied to the nearest downstream partner (or the party with
whom the subject entity is in privity of contract), it is possible
that one or more of the tier 2, 3, and 4 partners and/or logistic
providers provide performance information directly to the tier 1
control tower 100. It is further to be understood that any number
of entities, factories, plants, or other facilities may exist at
each of the brand, integration, device, and raw material
levels.
[0075] "Performance information" typically includes any information
relative to supply chain performance, including, without
limitation, one or more of manufactured item output projections
over a specified time period, production facility sizes and/or
locations, raw material, work-in-process, and/or manufactured part,
component, and/or product inventory levels, order cycle times, days
of supply in inventory, manufacturing resource type, availability,
reliability, and/or productivity (e.g., human and automated
resource levels and resulting output levels), unit operations
(e.g., manufacturing steps, functions, or operations, unloading raw
materials, packaging parts, components, and/or products, loading
parts, components, and/or products, and the like), financial
factors (e.g., labor rates and costs, energy rates and costs, raw
materials costs, freight costs, tax rates, administrative and
overhead costs, contractual and/or current spot market part,
component, and/or product prices (from lower tier components), and
the like), number of on time shipments, number of late shipments,
order mismatch count, service quality (e.g., repair returns, repeat
repair, no fault found, etc.), repair cost per unit (e.g., material
cost per unit, average repair time, pieces consumed per unit,
etc.), inventory value (e.g., spare parts stock, or SWAP stock,
inventory turnover, days of supply of spare parts, days of supply
of SWAP, days sales inventory spare parts, excess spare parts,
excess SWAP stock, return to vendor rate, defective or OHB, and
return to vendor or TAT, etc.), historic, current, and/or projected
compliance with price, supply requirements, and/or other material
terms, historic, current, and/or projected parts, components,
and/or product output levels, mean, median and/or average, mode,
historic, and/or projected freight transportation times, delays, or
requirements, and the like. The performance information can be
associated with a date, month, and/or season-of-year. Metrics can
be generated from the performance information, such as on time
shipment rate or percentage, late shipment rate or percentage,
product rejection rate based on nonconformance with one or more
restrictions, specifications, and/or requirements, parts,
components, and/or product acceptance rate based on conformance
with one or more restrictions, specifications, and/or requirements,
and the like.
[0076] FIG. 2 depicts a communications networked architecture 200
according to an embodiment.
[0077] The tier 1 control tower 100 comprises a tier 1 control
tower server 204 and associated database management system (not
shown) and database 208.
[0078] The tier 1 control tower server 204 can be any computerized
process that shares a resource with one or more client processes.
It may run one or more services (typically as a host), to service
the needs of other computers on the network. Typically, the tier 1
control tower server 204 is a computer program running to serve the
requests of other programs.
[0079] The database 208 can be any organized collection of data and
their supporting data structures. The database can be based on any
data model, including the relational model, entity-relationship
model, object model, object relational model, XML, or other
database model. The database 204 can include, for each enterprise
and/or organization in the supply chain, not only performance
information but also transactional documents (e.g., purchase order,
material safety data sheets, bill of materials, supply and/or
manufacturing agreements, or RMAs, and the like), name,
geographical location, geopolitical location, part and/or component
and/or product and/or material type and/or identity supplied by the
enterprise and/or organization, current spot market and/or
contractual sales price of the part and/or component and/or product
and/or material type supplied by the enterprise and/or
organization, respective performance metrics of the enterprise
and/or organization, part and/or component and/or product and/or
material supply and/or purchase commitment with another enterprise
and/or organization in the supply chain, specifications and
requirements for part(s) and/or component(s) and/or product(s)
and/or material(s) supplied and/or purchased by the enterprise
and/or organization, part and/or component and/or product and/or
material quantity and shipment dates and expected arrival dates at
the next enterprise and/or organization in the supply chain, order
cycle and/or turnaround times, shipment and/or order volume, total
number of shipments, number of on time shipments, number of late
shipments, order mismatch count, repair details, and each
enterprise and/or organization is associated with one or more other
enterprise and/or organizations in the supply chain to indicate a
contractual or other supply relationship. Each enterprise and/or
organization is normally assigned a role identifier, such as buyer,
seller, supplier, manufacturer, material supplier, and the like, to
describe the nature of the relationship of the enterprise and/or
organization to each of the associated enterprise(s) and/or
organization(s) in the supply chain.
[0080] The tier 2 assembler has a corresponding server 212 to
provide performance and other information, directly or indirectly,
to the tier 1 control tower server 204.
[0081] Each of the first, second, . . . nh tier 3 part/component
manufacturers has a corresponding server 216a-n to provide
performance and other information, directly or indirectly, to the
tier 1 control tower server 204.
[0082] Each of the first, second, third, . . . mth tier 4 material
suppliers has a corresponding server 220a-m to provide performance
and other information, directly or indirectly, to the tier 1
control tower server 204.
[0083] The shipment enterprise and/or organization server 250
represents the freight enterprises or organizations handling
shipments between nodes of the supply chain. The freight
enterprises and organizations can be any entity providing shipping
services. Exemplary freight enterprises and organizations include
railway companies, short and long haul trucking companies, freight
company servers (to provide freight tracking information, freight
movement projections between two locations, and the like), shipping
lines, maritime shipping companies, container shipping companies,
Ro-ro shipping companies, transoceanic shipping companies,
logistics services or courier companies, and the like. The shipment
enterprise and/or organization server 250 can provide to the tier 1
control tower server 204 provide freight tracking information,
freight movement projections between two locations, and the
like.
[0084] The accessible information source(s) 224 include any source
of information relevant to supply chain performance, including,
without limitation, news sources and/or aggregators (to provide
news on current events that may impact positively or negatively the
supply chain performance, such as political coup d'etates, changes
or upheavals, environmental conditions and events (e.g., storms,
floods, earthquakes, tsunamis, typhoons, volcanic eruptions, forest
fires, and other natural disasters, and the like), criminal acts
(e.g., piracy, hijacking, theft, arson, vandalism, and the like),
acts of violence (e.g., terrorism, war, political upheaval,
military action, and the like), news reports on and announcements
by a partner or competitor, scheduled events or holidays (e.g.,
religious, political, or other holidays), freight disruptions
(e.g., train derailment, oceangoing vessel sinking, airplane crash,
freight embargos, naval blockades, and the like), energy shortages,
disruptions, or blackouts, and labor disruptions (e.g., strikes or
threatened strikes)), weather data sources (e.g., the National
Weather Service, national and local news sources, the Weather
Channel.TM., Weather Source.TM., worldweatheronline.com, and the
like), governmental entities (such as courts, law enforcement
authorities, geological surveys, disaster relief agencies, and the
like to provide legal or regulatory changes or requirements,
lawsuits, bankruptcy filings, and the like, and other information),
law enforcement or military authorities (e.g., to provide
information on criminal acts (e.g., piracy, hijacking, theft,
arson, vandalism, and the like), and acts of violence (e.g.,
terrorism, war, revolution, political upheaval, military action,
and the like). Such information sources can be monitored using word
cloud techniques, which graphically represent word usage frequency.
Generally, the more frequent a word or group of words is used the
greater the likelihood that the fact or event described by the
words or group of words exists. The words or group of words can
further be weighted for reliability by the source, with law
enforcement and military authorities being given a higher or more
reliable weighting than news sources.
[0085] The various servers and sources are connected by a circuit
and/or packet switched wide area network ("WAN") that covers a
broad area (e.g., any telecommunications network that links across
metropolitan, regional, or national boundaries) using private
and/or public network transports. An exemplary WAN is the
Internet.
[0086] FIG. 3 depicts an example of a supply chain monitoring
system 302 maintained by the tier 1 control tower 100. As will be
appreciated, the supply chain monitoring system can be maintained
by any one of the tier 1, 2, 3, and/or 4 entities or an entity
independent of the foregoing. The supply chain monitoring system
302 includes a data collection module 300, a scheduling module 304,
a historical state module 308, an analytical engine 312, a risk
manager 316, and a reporting module 320, connected by a local area
network or bus 324.
[0087] The data collection module 300 collects performance
information from tier 2, 3, and/or 4 entities and freight companies
in the supply chain and from accessible information source(s) 224.
It further collects information regarding product inventory levels
currently on hand at the tier 1 control tower. The data collection
module 300 can parse the collected information, extract relevant
information items, and optionally tag the extracted information
items with an information type tag. The data collection module 300
can include a database management function that stores, updates and
otherwise manages the data in the database 208 in accordance with a
selected data model. The data structures are typically associated
with one or more enterprises and/or organizations in the supply
chain. Transactional documents, such as purchase orders, material
safety data sheets, and bills of material, contain references to
all owners down the organization level, have corresponding role
types and functions specified (e.g., only a buyerRole can change
requestQuantity field), and include preferences and settings
referenced to an appropriate level (e.g., enterprise, organization
(or the part of the enterprise involved in the supply chain
transaction), user, etc.).
[0088] Events stored in the database 208 typically include event
category, event type, event subtype and event severity tags. Event
categories include, for example, natural disaster (e.g., natural
disaster event and wherein the natural disaster is one or more of
an earthquake, tsunami, volcanic eruption, fire, flood, avalanche,
and landslide), weather (e.g., storm, typhoon, hurricane, cyclone,
tornado, wind, and blizzard), political (e.g., coup d'etat,
sabotage, terrorism, act of war, military action, police action,
embargo, and blockade), and business (e.g., a maritime vessel
sinking, train derailment, freight vehicle wreck, device or system
malfunction, criminal activity, airplane crash, labor disruption,
lawsuit, financial insolvency, and bankruptcy). Event types
include, for example, geologic event, atmospheric event,
geo-political, labor, and insolvency. Event subtypes include, for
geologic, earthquake, volcanic eruption, tsunami, flood, and
landslide; for atmospheric, storm, hurricane, cyclone, tornado,
wind, and blizzard; for geo-political coup d'etates, sabotage,
terrorism, and piracy; for labor, strike; and for insolvency,
bankruptcy. The severity tag can include one or more of emergency,
advisory, watch, and warning. Other tags will be obvious to those
of ordinary skill in the art based on the teachings of this
disclosure. A start and end time can be associated with the
temporal impact of the event on the supply chain.
[0089] The collected information generally falls into two
categories, namely static supply chain information (information
items that generally do not change or change infrequently such as
sites, enterprise and/or organization names, and the like) and
dynamic supply chain data (information items that change frequently
such as purchase orders, forecasts, and the like).
[0090] The scheduling module 304 provides scheduling information,
including projected shipment arrival dates for products from the
tier 2 product assembler 104 and required shipment departure dates
for branded products to customers, wholesalers, and/or retailers.
Each of the shipment arrival and departure dates can be linked to a
set of data structures describing the shipment, including shipment
source and destination, freight carrier, freight tracking
information, current shipment status, shipment contents (by product
type and number), date of shipment, and the like). The projected
shipment arrival dates can be received from the tier 2 product
assembler 104 and/or freight carrier. The shipment departure dates
are determined by the tier 1 control tower based on contractual
requirements, retailer and/or wholesaler current or projected
inventory levels, retainer and/or wholesaler order, and the
like.
[0091] The historical state module 308 tracks past performance for
each entity and/or entity facility in the tier 2-4 and freight
carriers (e.g., compares the actual product shipment arrival date
against a selected date (received from the entity, required by
contract or order, and/or projected by the tier 1 control tower
100)) and distribution chain demands (to identity seasonal trends).
The past performance for an entity can be used to determine and
assign a level of confidence in product deliveries from the entity
being received by a selected date (received from the entity,
required by contract or order, and/or projected by the tier 1
control tower 100). The level of confidence, when low, may provide
a basis to order additional product from a more reliable source.
The level of confidence can be based on past performance of each
supplier or each different facility of a common supplier.
[0092] The analytical engine 312 receives performance and other
data from the data collection module 300, scheduling information
from the scheduling module 304, and historical information (such as
a level of confidence) from the historical state module 308 and,
based on the information, forecasts incoming shipment arrival times
and outgoing shipment departure times and identifies any inability
to meet distribution chain requirements, commitments or objectives
(e.g., orders, contractual commitments, policies, objectives, etc.)
(a "noncompliant event"). This information is provided, by the
analytical engine 312 to the risk manager 316. The analytical
engine 312 can be a type of situational awareness application that
looks at aspects of the current state of the supply chain as well
as the structural relationships and considers the effect of both
internal and external events on the supply chain. Both past events
and forecasted events can be considered by the analytical engine
312. The application can determine not only what happened to the
supply chain but also what may happen to the supply chain, thereby
providing not only a reactive but also proactive model for problem
resolution.
[0093] In one application, the analytical engine 312 relies
primarily on reported performance information received from tier 2
assembler(s) 212, tier 3 component manufacturer(s), tier 4 raw
material supplier(s) and/or freight carrier(s) in estimating
compliance with product distribution chain requirements. Disruptive
events received from an accessible information source 224 are used
as the basis of a query to the potentially impacted tier 2
assembler(s) 212, tier 3 part/component manufacturer(s), tier 4
material supplier(s) and/or freight carrier(s) for updated
performance information. The query may be generated automatically
or manually by tier 1 management.
[0094] In one application, the analytical engine 312 determines,
based on performance information received from the historical state
module 308, a performance rating for each enterprise and/or
organization in the supply chain. The performance rating can be
based on a scale from lowest performance level to highest
performance level.
[0095] In one application, the analytical engine 312 relies not
only on reported performance information but also internally
generated projections in estimating compliance with distribution
chain requirements. The compliance determination is based one or
more comparisons, including a comparison of the material and/or
part and/or component and/or product shipment delivery date based
on the reported performance information against the material and/or
part and/or component and/or product distribution chain shipment
requirement(s) (as in the prior paragraph), a comparison of the
material and/or part and/or component and/or product shipment
delivery date based on the reported performance information against
the internally generated projected material and/or part and/or
component and/or product shipment delivery date, and a comparison
of the material and/or part and/or component and/or product
shipment delivery date based on the reported performance
information against the internally generated projected material
and/or part and/or component and/or product shipment delivery
date.
[0096] The estimated or projected delivery date for an order can
include an associated probability or likelihood and, optionally, an
associated range of arrival dates that the items in the order will
be timely received by the selected arrival date or within the range
of arrival dates. The range of arrival dates can be selected using
a standard deviation of arrival times based on current and/or
historic performance information and/or other relevant information.
For example, a historic reliability or probability of timely
receipt at a destination facility from the selected lower tier
facility, and optionally associated standard deviation of historic
receipt dates relative to a target date, can be used to provide the
probability and optionally standard deviation of the destination
facility receiving a current shipment from the selected lower tier
facility. The probability and/or standard deviation can be used by
the risk manager to determine whether or not to order additional
material and/or part and/or component and/or product from an
alternate facility. This determination can use a probability
threshold, for instance, that would require or recommend order
placement to an alternative facility if the probability of the
order timely arriving is too low or no order placement to the
alternative facility if the probability of the order timely
arriving is acceptable (e.g., exceeds the probability
threshold).
[0097] For any facility in a tier, the probability could be the sum
or other mathematical combination of probabilities for each
upstream facility in lower tiers in a direct or indirect supply
relationship with a selected facility. For example, if a third
part/component manufacturing facility in tier 3 has a 50%
probability of receiving timely raw material from a fourth and/or
alternative facility in tier 4, a second product manufacturing
facility or assembler in tier 2 has a 50% probability of receiving
timely a necessary product part and/or component from the third
facility and/or an alternative tier 3 facility, and the first
facility in tier 1 has a 25% probability of receiving the product
timely. When a selected facility, such as a product assembler, has
a 50% probability of receiving timely a first necessary component
from a first tier 3 part/component manufacturer and a 25%
probability of receiving timely a second necessary component from a
second tier 3 part/component manufacturer, the probability of a
third tier 1 facility receiving the product timely from the
selected product manufacturing or assembling facility is the lower
of the two or 25%.
[0098] A number of algorithms may be used in generating the
internal estimates.
[0099] One algorithm uses a critical path method ("CPM"), or an
algorithm for scheduling a set of project activities. CPM
constructs a model, at each supply chain facility and/or
manufacturer, supplier, and/or assembler and/or for the overall
supply chain, that includes one or more of the following: (a) a
list of all activities required to deliver the product shipment to
the tier 1 control tower, (b) the time (duration) that each
activity or operation in the supply chain will take to completion,
and (c) the dependencies between the activities. Using these
values, CPM calculates the longest path of planned activities to
the end of the product delivery cycle, and the earliest and latest
that each activity can start and finish without making the product
delivery cycle longer. This process determines which activities are
"critical" (i.e., on the longest path) and which have "total float"
(i.e., can be delayed without making the product delivery cycle
longer). In project management, a critical path is the sequence of
supply chain network activities which add up to the longest overall
duration. This determines the shortest time possible to complete
the product delivery cycle. Any delay of an activity on the
critical path directly impacts the planned product delivery cycle
completion date (i.e. there is no float on the critical path). A
product delivery cycle can have several, parallel, near critical
paths. An additional parallel path through the network with the
total durations shorter than the critical path is called a
sub-critical or non-critical path.
[0100] One algorithm uses queueing theory by characterizing the
supply chain as one or more queues of work pieces being "serviced"
at each tier and thereby defining supply chain behavior based on
queue behavior. As will be appreciated, queueing theory is
generally considered a branch of operations research because the
results are often used when making business decisions about the
resources needed to provide service. The queueing model can be
based on a Poisson process and its companion exponential
probability distribution. A Poisson process models random or
pseudo-random events (such as a work piece arrival from a lower
tier partner, a supply chain disruptive event, or the completion of
an action requested of a resource over which the servicing tier has
no control) as emanating from a memoryless process. That is, the
length of the time interval from the current time to the occurrence
of the next event does not depend upon the time of occurrence of
the last event. In the Poisson probability distribution, the
observer records the number of events that occur in a time interval
of fixed length. In the (negative) exponential probability
distribution, the observer records the length of the time interval
between consecutive events. In both, the underlying physical
process is memoryless. Examples of queueing theory functions or
principals include BCMP network, Buzen's algorithm, Ehrenfest
model, fork join queue, Gordon-Newell network, Jackson network,
Little's law, Markovian arrival processes, Pollaczek-Khinchine
formula, quasireversibility, random early detection, renewal
theory, the Poisson process, and the like. Models based on the
Poisson process often respond to inputs from the environment in a
manner that mimics the response of the system being modeled to
those same inputs. The analytically tractable models that result
yield both information about the system being modeled and the form
of their solution. Even a queueing model based on the Poisson
process that does a relatively poor job of mimicking detailed
system performance can be useful. The fact that such models often
give "worst-case" scenario product cycle evaluations can support
the risk manager including a safety factor in supply chain changes
and modifications, including product delivery requirements.
Queueing models are frequently modeled as Poisson processes through
the use of an exponential distribution.
[0101] One algorithm is a scheduling algorithm, which considers
product production scheduling and shipping and includes forward
and/or backward scheduling. Forward scheduling is planning the
tasks from the date resources become available to determine the
shipping date or the due date. Backward scheduling is planning the
tasks from the due date or required-by date to determine the start
date and/or any changes in capacity required. Stochastic scheduling
algorithms can include economic lot scheduling problem (which is
concerned with scheduling the production of several products on a
single machine in order to minimize substantially the total costs
incurred (which include setup costs and inventory holding costs)
and the economic production quantity model (which determines the
quantity a enterprise and/or organization and/or retailer should
order to minimize the total inventory costs by balancing the
inventory holding cost and average fixed ordering cost). Examples
of heuristic algorithms include the modified due date scheduling
heuristic (which assumes that the objective of the scheduling
process is to minimize substantially the total amount of time spent
on tasks after their due dates) and shifting bottleneck heuristic
(which minimize the time it takes to do work, or specifically, the
makespan in a job shop, wherein the makespan is defined as the
amount of time, from start to finish, to complete a set of
multi-machine jobs where machine order is pre-set for each job, the
jobs are assumed to be actually competing for the same resources
(machines) resulting in one or more resources acting as a
`bottleneck` in the processing, whereby the heuristic, or `rule of
thumb` procedure substantially minimizes the effect of the
bottleneck).
[0102] One algorithm is simulation modeling using discrete or
continuous simulations. Discrete simulations are also known as
discrete event simulations, and are event-based dynamic stochastic
systems. In other words, the system, or supply chain, contains a
number of states, and is modeled using a set of variables. If the
value of a variable changes, this represents an event, and is
reflected in a change in the system's state. As the system is
dynamic, it is constantly changing, and because it is stochastic,
there is an element of randomness in the system. Representation of
discrete simulations is performed using state equations that
contain all the variables influencing the system or supply chain.
Continuous simulations also contain state variables; these however
change continuously with time. Continuous simulations are usually
modeled using differential equations that track the state of the
system, or supply chain, with reference to time. The simulation's
output data will only produce a likely estimate of real-world
events (i.e., product shipment delivery). Methods to increase the
accuracy of output data include: repeatedly performing simulations
and comparing results, dividing events into batches and processing
them individually, and checking that the results of simulations
conducted in adjacent time periods "connect" to produce a coherent
holistic view of the system. Normal analytical techniques make use
of extensive mathematical models which require assumptions and
restrictions to be placed on the model. This can result in an
avoidable inaccuracy in the output data. Simulations avoid placing
restrictions on the system and also take random processes into
account; in fact in some cases simulation is the only practical
modeling technique applicable.
[0103] The analytical engine 312 can use pattern or template
matching to determine internal estimates. The patterns or templates
can be based on historical data patterns and observed shipment
times and/or on patterns or templates predetermined or predefined
by system administrators. The analytical engine 312 can search by
one or more of the time, location and setting. For example, for an
earthquake in Asia having a specified severity level, the
analytical engine 312 can search for other earthquake events in
Asia over the last three years having a similar severity level and
determine the actual shipment times and/or administrator shipping
estimates or projections made for the currently selected or other
supply chain to determine a current estimate or projection.
[0104] The analytical engine 312 can detect unreported events by
identifying unexpected varations in collected performance
information. For example, where one or more selected nodes of the
supply chain experience a sudden drop in rate of on-time shipments
or rise in rate of late shipments and the drop is sustained over a
selected period, the analytical engine 312 can deduce that a
disruptive event has occurred. The possibility of an occurrence of
an unreported disruptive event can be reported to a system or
supply chain enterprise and/or organization administrator.
Likewise, the severity of an event and/or shipment projections can
be changed and rendered more accurate by observing actual behavior
following creation of the event or estimate or projection. This
information can also be used to refine temporally proximate
estimates or projections.
[0105] The analytical engine 312 and risk manager 316 can use other
variables and/or algorithms to determine the relative health of the
supply chain. For example, the analytical engine 312 can employ a
metric--CpX, which can be a measure of risk and capable of
substantially optimizing the supply chain. The metric can be
determined through the collection, aggregation, and transformation
of supply chain data, including performance information, and, when
optimized, can modify system parameters of the logistic or supply
chain system to reduce and/or optimize risk profiles for any
selected supply chain parameter or object, typically a given
product, a selected product line, and/or a customer account.
[0106] Risk can be determined given a time series of data collected
by the data collection module. This data can be presented either as
a first linear array (1.times.N) where N is the number of factors
collected. The factors can include one or more of the factors,
parameters, or supply chain characteristics identified herein. The
factors can include risk factors, such as economic risk,
environmental risk, geopolitical risk, societal risk, and
technological risk. A transfer function (N.times.M) can relate the
collection of such (risk) factors to variability (risk) of critical
factors, (be they cost, time to delivery, the same or another risk
factor, etc.), which is the (1.times.M) linear array. The
(1.times.N) linear array can also be transformed into a single
number or factor or given a coloration indicative of an "overall"
metric of risk (variability). The overall metric of risk can be a
supply chain health index or risk.
[0107] After optimization of the collected factors and comparing
real data, the transfer function (N.times.M) can be substantially
optimized--and it can represent the operational parameters of the
supply chain (for better or worse).
[0108] To optimize the supply chain (or substantially minimize the
magnitude of the 1.times.M scalar), one can apply a reverse
transform function and fine tune the factors in the (1.times.N)
linear array to effect the change--meaning for each optimal element
1 to . . . N, actual operations (e.g., order cycle, warehouse
sizing, assembly line capacity, order aggregation, price, etc.)
will be changed or modified to achieve the desired risk profile.
Alternatively, risk protection can be set, configured, or
determined at various levels by setting the scalar (high, medium,
low) and changing the various offerings to meet the customer
need--as some customers can deal with risk better than others).
[0109] Alternatively, given a multiple set of (1.times.N) and
(1.times.M), a multitude or plurality of transfer functions can be
determined, particularly where state or situational differences
exist among one or more of business segments, product portfolios,
customers profiles, etc. In such cases, the 1.times.M (minimum)
linear array would likely be different, as would the substantially
optimal 1.times.N linear array.
[0110] In cases where each supply chain situation or state is
mutually exclusive, the solutions themselves will be likewise,
mutually exclusive. In new scenarios, the linear combination of
such solution would be applicable in direct proportion to their
contribution, provided that there is no correlation between the
solutions.
[0111] The risk manager 316 applies a rule or policy set or
template to the information or output received from the analytical
engine 312 and provides reporting information to the reporting
module 320 for presentation to a (human) manager. The reporting
information may include not only a warning (with an associated
probability and/or level of confidence) that a noncompliant event
will occur and optionally a recommendation on how to mitigate
and/or avoid the noncompliant event. Mitigation recommendations
include, for example, ordering products from a different facility
of the tier 2 product assembler 104 and/or from a different tier 2
product assembler 104, using a type of freight company or specific
freight company to provide faster incoming and/or outgoing product
shipment, cancelling or altering an existing order (e.g., increase
or decrease product quantity and/or delay or expedite product
shipment date) with a tier 2 product assembler 104 and/or
downstream distribution chain entity, shipping product from a
different tier 1 facility to the selected destination in the
distribution chain to offset the noncompliant event, and ship a
different product to the selected destination in the distribution
chain to offset the noncompliant event. The recommendation can be
performed automatically by the risk manager 316.
[0112] The risk manager 316 can identify problems or choke points
or bottlenecks in the supply chain, generate alerts and/or
notifications to administrators of predetermined events (such as a
monitored parameter falling below or exceeding a selected
threshold), and/or provide recommended changes to the supply chain
to provide greater reliability, more reliable and faster material
and/or part and/or component and/or product manufacture and
delivery cycles, more material turns, and reduced waste. The risk
manager 316 at the tier 1 control tower 100 can do this, for
example, by analyzing the reported performance information using
advanced planning and scheduling techniques by which raw materials
and production capacity are optimally allocated to meet demand.
Recommendations could include restructuring tier 1, 2, 3 and 4
relationships, using differently located facilities for lesser or
greater production, using different freight modes and/or carriers,
and reconfiguring the layout and/or production unit operations
within a selected facility. A performance risk can be associated
with each recommendation based on factors, such as performance
rating, geographic location of the recommended enterprise and/or
organization relative to the geographic locations of the upstream
enterprise and/or organization (if any) supplying the recommended
enterprise and/or organization and of the downstream enterprise
and/or organization (if any) receiving material and/or product from
the recommended enterprise and/or organization, and/or the
likelihood of a disruptive event impacting the recommended
enterprise and/or organization and/or a shipment line associated
therewith.
[0113] The risk manager 316 can determine a possible or potential
financial impact on the enterprise or organization associated with
each recommendation or, in the absence of any action, simply as a
result of the event. The possible or potential financial impact can
be done on one or more affected product lines and/or for the
enterprise or organization as a whole. A risk or probability can be
assigned to each possible or potential financial impact to form a
type of risk portfolio. Pricing input from a price monitoring
module (discussed below) can assist in determining product price
increases as a result of the event. Decreases in demand for the
product can be projected based on the price increase. The decreased
demand can then be converted into a projected gross sales revenue
to be used in the financial forecast. The possible or potential
financial impact can be determined for an instance of an event or
proactively if a selected event were to occur. Electronic
manufacturing services, in particular, would benefit from this type
of financial impact analysis.
[0114] The risk manager 316 can apply manufacturing process
management or MPM and/or enterprise resource planning ("ERP")
and/or materials requirement planning ("MRP") techniques. MPM is a
collection of technologies and methods used to define how products
are to be manufactured. MPM differs from ERP/MRP, which is used to
plan the ordering of materials and other resources, set
manufacturing schedules, and compile cost data. MPM can provide the
central repository for the integration of all these tools and
activities and aid in the exploration of alternative production
line or sequence or cycle scenarios; making assembly lines more
efficient with the aim of reduced lead time to product launch,
shorter product times and reduced work in progress (WIP)
inventories as well as allowing rapid response to product or
product changes.
[0115] The risk manager can use scheduling algorithms to determine
and/or identify recommended changes to the supply chain.
[0116] The risk manager can use pattern or template matching to
determine and/or identify recommended changes to the supply chain.
The patterns or templates can be based on historical data patterns
and observed administrator responses and/or on patterns or
templates predetermined or predefined by system administrators. The
risk manager can search by one or more of the time, location and
setting. For example, for an earthquake in Asia having a specified
severity level, the risk manager can search for other earthquake
events in Asia within the last three years having a similar
severity level and determine the changes to the currently selected
or other supply chain to determine a currently recommended set of
changes.
[0117] The risk manager can use simulation modeling to determine
and/or identify recommended changes to the supply chain.
[0118] The risk manager can use transportation theory to determine
the optimal transportation and/or allocation of supply chain
resources. Examples of transportation theory functions or
principals include Wassertein metric, transport function, and the
Hungarian algorithm.
[0119] The risk manager can use capacity planning, which is the
process of determining the production capacity needed by the supply
chain to meet changing demands for the branded products. In the
context of capacity planning, "design capacity" is the maximum
amount of work that the supply chain is capable of completing in a
given period, "effective capacity" is the maximum amount of work
that the supply chain is capable of completing in a given period
due to constraints such as quality problems, delays, material
handling, etc.
[0120] The risk manager can intelligently relate the geographical
location of each facility in each tier with a partner facility in a
higher tier and/or the relative shipping costs and/or standard
deviation thereof from a facility in one tier to a partner facility
in a higher tier and control relationships to reduce or
substantially minimize transportation costs. This mapping, which
can be in the form of a unit shipping cost from each facility in a
lower tier to each facility in the adjacent higher tier, can also
be used to intelligently order materials and/or components and/or
products from a lower tier facility to an upper tier facility
experiencing a supply constraint so as to maintain lower
transportation or shipping costs.
[0121] The risk manager can intelligently relate the geographical
location of each facility in each tier with a partner facility in a
higher tier and/or the relative shipping time and/or standard
deviation thereof from a facility in one tier to a partner facility
in a higher tier and control relationships to reduce or
substantially minimize transportation time. This mapping, which can
be in the form of a shipping time from a point of loading at each
facility in a lower tier to arrival at each facility in the
adjacent higher tier, can also be used to intelligently order
materials and/or components and/or products from a lower tier
facility to an upper tier facility experiencing a supply constraint
so as to maintain lower transportation or shipping times to
substantially minimize disruptions in the distribution chain.
[0122] The risk manager can intelligently relate the rate of
turnover or unit manufacturing time and standard deviation thereof
from time of receipt of an order for a manufactured item to the
time of shipping of the manufactured item for each facility in each
tier, optionally associated with a shipping time required to ship
the manufactured item to a partner facility in a higher tier and/or
standard deviation thereof and control relationships to reduce or
substantially minimize unit product manufacturing time. This
mapping can also be used to intelligently order materials and/or
components and/or products from a lower tier facility to an upper
tier facility experiencing a supply constraint so as to maintain
lower product manufacturing and transportation or shipping times to
substantially minimize disruptions in the distribution chain.
[0123] The risk manager can intelligently relate the unit
manufacturing cost, or price, of material and/or component and/or
product and/or standard deviation thereof from each facility in
each tier and optionally unit shipping costs from the facility in a
lower tier to a partner facility in a higher tier and/or standard
deviation thereof, and control supply and facility relationships to
reduce or substantially minimize unit costs and/or prices at the
lower tier facility or as delivered at the destination partner
facility in the adjacent higher tier. This mapping, which can be in
the form of a unit cost or price, optionally unit shipping cost
from each facility in a lower tier to each facility in the adjacent
higher tier, and total unit cost or price as delivered, can be used
to intelligently order materials and/or components and/or products
from a lower tier facility to an adjacent upper tier facility so as
to maintain lower transportation or shipping costs.
[0124] In either of the prior cost mappings, each facility can
have, in the adjacent lower tier and adjacent higher tier, order of
partner facility preferences in the event of a need to order
additional material and/or component and/or product to an upper
tier facility experiencing a supply constraint so as to maintain
lower unit costs and/or prices at the source facility and/or unit
transportation or shipping costs and/or total unit costs and/or
prices as delivered. In this manner, when a disruptive event
adversely impacts supply from a facility or a facility is otherwise
unable to meet an existing or new order for material and/or
component and/or product the risk manager can easily select a next
preferred supplier and forward the order or unsatisfied portion of
the order to the next preferred facility.
[0125] As will be appreciated, any of the other estimates or
projections described herein can include a level of confidence or
probability that the estimate or projection is true or false (as
appropriate).
[0126] The reporting module 320 provides the reporting information
to tier 1 management. The reporting module 320 can not only provide
reports containing performance information but also generate map
displays. FIGS. 11-17 are a series of screen shots demonstrating
reporting information provided by the reporting module 320.
[0127] With reference to FIG. 16, the display 1700 shows locations
of various supply chain nodes, including the tier 2 product
assembler 104, first, second, . . . nth tier 3 part/component
manufacturers 108a-n, and first, second, third, . . . mth tier 4
material suppliers 112a-m. Material and/or part and/or component
and/or product shipment lines 1704a-g between the various related
nodes can be shown. Different colors or shades of a common color
can be assigned to each shipment line to indicate on-time
shipments, slightly delayed shipments, moderately delayed
shipments, and heavily delayed shipments. A disruptive event, such
as a weather event, earthquake event, business disruption event,
geo-political event, and financial disruption event, can be shown
on the map at a location 1708 impacted by the event. A range of
disruption 1712 is also assigned to the event indicating a likely
spatial range impacted by the event. As will be appreciated,
different event types and events for a given event type can have
differing assigned spatial ranges of disruption. For example, an
earthquake may have a larger spatial range of disruption than a
storm, and an 8.0 earthquake on the Richter scale would have a
larger spatial range of disruption than a 5.5 earthquake on the
Richter scale. A range can be modeled by many techniques, such as
by using a shape file. Additionally, moving a cursor over a node,
shipment line, or event can cause a box or icon, such as shown by
boxes 1722 and 1726, to appear providing relevant information about
the associated one of the node, shipment line, or event. For
example, relevant information about the node can include enterprise
and/or organization name, materials and/or part and/or component
and/or products supplied by the enterprise and/or organization, and
one-hop related enterprises and/or organizations (e.g., the
supplier to the selected node and the purchaser from the selected
node). Relevant information about the shipment line can include the
name of the freight carrier, number, type, and value of material
and/or part and/or component and/or product currently being
shipped, and the current status of the shipment. Relevant
information for the event can include the event category, type and
subtype and severity, number of materials and/or part and/or
component and/or products impacted, number of downstream parts
and/or components and/or products impacted (such as the parts
and/or products supplied to the tier 2 product assembler 104),
potential financial impact on the tier 1 control tower 100, and
number of supply chain sites affected. The boxes in FIG. 16 show
relevant shipment information including a number and value of
products, parts, and/or components currently en route along the
corresponding shipment line.
[0128] With reference to FIG. 11, the reporting module provides a
display 1100 showing a location 1104 and impacted range 1108 of an
event (a 4.9 earthquake) and locations 1112 and descriptions 1116
of various enterprises and/or organizations in the supply chain,
namely companies 1-4 with relevant information provided about each
enterprise and/or organization (e.g., role, location, and products,
parts, and/or components provided to the supply chain). By moving
the cursor over the location of the event, a box 1120 appears
providing event information, including a description and location
of the event, number of products impacted by the event, number of
parts impacted by the event, potential financial impact of the
event, and supply chain sites affected by the event. A message 1124
is also provided at the upper part of the display 1100 indicating a
number of events (e.g., 4) potentially impacting the supply chain
at the present time.
[0129] With reference to FIG. 12, the reporting module provides a
display 1200 showing an administrator input box 1204 to provide
event information to the data collection module. The input box 1204
includes fields for event type 1208, event subtype 1212, event
epicenter 1216 (which lets the administrator elect whether to have
the data collection module locate the epicenter or provide latitude
and longitude of the epicenter), country of epicenter location
1220, postal code of epicenter location 1224, radius impacted by
the event 1226, current risk (or severity) level 1228, event
expiration date and time 1232, and event description 1236.
[0130] With reference to FIG. 13, the reporting module provides a
display 1300 providing information about the impact of a selected
event on the supply chain. The display 1300 includes a picture 1304
showing the epicenter and impact radius of the event and supply
chain sites affected within the impact radius, a description of the
event 1308, products potentially affected by the event 1312, parts
and/or components potentially affected by the event 1316, and other
potential supply chain impacts 1320.
[0131] With reference to FIG. 14, the reporting module provides a
display 1400 showing events occurring over a selected time period.
Each event description 1404 shows event type, event date, event
severity, number of products, parts, or components affected, and
revenue impact on the selected enterprise and/or organization.
[0132] With reference to FIG. 15, the reporting module provides a
display 1500 showing a product, part, or component supplier
description for a selected company (e.g., enterprise or
organization). The description includes a supplier risk category
1504 (e.g., low, moderate, and high) and the various factors used
in developing the risk category. These factors are: supplier
performance score 1508 (based on historical supplier performance
information), supplier location score 1512 (the degree to which the
supplier site location can positively or negatively impact supply
chain performance), supplier financial score 1516 (the degree to
which the supplier financial condition can positively or negatively
impact supply chain performance), and supplier geo-political score
1520 (the degree to which the geo-political location of the
supplier can positively or negatively impact supply chain
performance). The risk category is determined by the risk manager
for each tier 1 control tower server 204, tier 2 assembler server
212, first, second, . . . nth tier 3 component manufacturer server
216a-n, and first, second, third, . . . mth tier 4 material (e.g.,
part and/or component) supplier server 220a-m, and the performance,
location, financial, and geo-political scores are determined by the
analytical engine, for each tier 1 control tower server 204, tier 2
assembler server 212, first, second, . . . nth tier 3 component
manufacturer server 216a-n, and first, second, third, . . . mth
tier 4 material supplier server 220a-m. The performance, location,
financial, and geo-political scores can be assigned by the
analytical engine and/or administrators. The supplier risk category
and performance, location, financial, and geo-political scores are
not limited to suppliers but may be assigned not only to the tier 1
control tower 100, tier 2 assembler 104, first, second, . . . nth
tier 3 component manufacturer 108a-n, and first, second, third, . .
. mth tier 4 material supplier 112a-m but also freight carriers
between and among two or more of the foregoing.
Operation of the Tier 1 Control Tower Supply Chain Management
System
[0133] Referring to FIG. 4, the operation of the data collection
module 300 will be discussed.
[0134] In step 400, the data collection module 300 receives a
stimulus. Stimuli include, for example, a request from a tier 1
manager, reported performance information received from a lower
tier partner, a request from the risk manager 316 and/or scheduling
module 304 and/or analytical engine 312, passage of time, and the
like.
[0135] In step 404, the data collection module 300 selects a (next)
supply chain node to query for performance information.
[0136] In step 408, the data collection module 300 accesses, or
receives, the performance information.
[0137] In decision diamond 412, the data collection module 300
determines whether there is a next supply chain node to be
considered for performance information. If so, the data collection
module 300 returns to step 404. If not, the data collection module
300 returns to step 400 and awaits the next stimulus instance.
[0138] Referring to FIG. 5, the operation of the scheduling module
304 will be discussed. In step 500, the scheduling module 304
receives a stimulus. Stimuli include, for example, a request from a
tier 1 manager, notification by the data collection module 300 of
newly received and/or updated reported performance information, a
request from the risk manager 316 and/or analytical engine 312,
passage of time, and the like.
[0139] In step 504, the scheduling module 304 updates supply chain
node-supplied scheduling information, or product delivery
estimates, based on the reported performance information and/or the
internally generated product delivery estimates. The scheduling
information includes, for example, projected shipment arrival dates
for products from the tier 2 product assembler 104 and required
shipment departure dates for branded products to customers,
wholesalers, and/or retailers. Each of the shipment arrival and
departure dates can be linked to a set of data structures
describing the shipment, including shipment source and destination,
freight carrier, freight tracking information, current shipment
status, shipment contents (by product type and number), date of
shipment, and the like).
[0140] In step 508, the scheduling module 304 updates the delivery
commitment material and/or part and/or component and/or product
scheduling information based on distribution chain performance or
scheduling information, supply chain requirements, and/or
projections.
[0141] In decision diamond 512, the scheduling module 304 compares
the results of steps 504 and 508 and determines whether there is a
product delivery scheduling problem.
[0142] When there is a scheduling problem, the scheduling module
304, in step 516, notifies the risk manager.
[0143] When no scheduling problem exists, the scheduling module 304
updates the database and returns to step 500 to await the next
stimulus instance.
[0144] FIG. 7 depicts operation of the analytical engine.
[0145] Upon detection of stimulus in step 500, the analytical
engine, in step 600, retrieves current performance data for each
supply chain node.
[0146] In step 604, the analytical engine, for each tier 1 supply
chain node or facility, determines a likely product shipping and/or
receipt date from each tier 2 node or facility.
[0147] In step 608, the analytical engine, using the results of
step 604 and other data, determines, for each tier 2 supply chain
node, a likely component shipping and/or receipt date from each
tier 3 node or facility.
[0148] In step 612, the analytical engine, using the results of
step 608 and other data, determines, for each tier 3 supply chain
node, a likely component shipping and/or receipt date from each
tier 4 node or facility.
[0149] In step 616, the analytical engine 312 compares the results
of steps 604, 608 and 612 and determines whether there is a
material and/or part and/or component and/or product delivery
scheduling problem at any tier. As will be appreciated, a material
and/or part and/or component and/or product delivery scheduling
problem is not limited to material and/or part and/or component
and/or product delivery shortfalls relative to distribution chain
demands or requirements. A material and/or part and/or component
and/or product delivery scheduling problem can also exist when too
much product inventory is on hand at a tier 1 facility. In that
event, supply chain requirements may need to be decreased to delay
or reduce material and/or part and/or component and/or product
delivery. This determination can be made by comparing on-hand
product inventory to distribution chain demands or requirements.
When at least a first threshold level but no more than a second
threshold level of inventory is on hand (after projected product
delivery), a correct inventory level is present at a tier 1
facility. When more than the second threshold level of inventory is
on hand (after projected product delivery), an over-inventory
condition exists and a modification to the supply chain
requirements is appropriate.
[0150] When there is a scheduling problem, the analytical engine,
in step 620, notifies the risk manager.
[0151] When no scheduling problem exists, the analytical engine
updates the database and returns to step 500 to await the next
stimulus instance.
[0152] FIG. 7 depicts the operation of the risk manager.
[0153] In step 700, the risk manager receives a stimulus. Stimuli
include, for example, a request from a tier 1 manager, a
notification received from the analytical engine, passage of time,
and the like. When necessary, the risk manager queries the
analytical engine for an analysis of performance information.
[0154] In step 704, the risk manager retrieves the appropriate rule
or policy set or template from the database.
[0155] In step 708, the risk manager determines, based on a
comparison of the material and/or part and/or component and/or
product delivery scheduling problem with the appropriate rule or
policy set or template, an appropriate action to be taken.
[0156] A first appropriate action 712 is to notify tier 1
management of the material and/or part and/or component and/or
product delivery scheduling problem.
[0157] A second appropriate action 716 is to notify management of
each of the responsible lower tier node(s) of the product delivery
scheduling problem and request a proposed mitigation measure to
obviate the material and/or part and/or component and/or product
delivery scheduling problem.
[0158] A third appropriate action 720 is to identify an alternate
lower tier node(s) to resolve the material and/or part and/or
component and/or product delivery scheduling problem and/or query
an alternative node(s) for availability in assisting in mitigating
and/or rectifying the material and/or part and/or component and/or
product delivery scheduling problem. For example, an alternative
facility of a tier partner can be queried to assist in increasing
or decreasing production to mitigate and/or rectify the product
delivery scheduling problem at a companion facility of the tier
partner. An alternative tier partner can be queried to assist in
increasing or decreasing production to mitigate and/or rectify the
material and/or part and/or component and/or product delivery
scheduling problem at a competitive tier partner.
[0159] Other appropriate action(s) 724 include providing a
recommendation to tier 1 management of mitigation measure(s) to
address and/or rectify the material and/or part and/or component
and/or product delivery scheduling problem, a combination of any of
the foregoing actions, ship on-hand product inventory from a
different tier 1 facility to the demand chain partner, and the
like.
Multi-Supply Chain Management System
[0160] With reference to FIG. 8, a multi-supply chain management
system 800 is depicted. The system 800 includes first, second, . .
. xth communication devices 804a-x, shipment enterprise and/or
organization server(s) 250, supply chain server(s) 808, the
accessible information source(s) 812, shipment enterprise and/or
organization server 250, and supply chain management platform 816,
interconnected by the wide area network 228.
[0161] The first, second, . . . xth communication devices 804a-x
can be personal communication devices, such as laptops, personal
computers, tablet computers, personal digital assistants, and
cellular phones, and/or enterprise or organization communication
devices, such as servers.
[0162] The supply chain server(s) correspond to multiple different
and independent supply chains. Each supply chain includes, with
reference to FIG. 1, a tier 1 control tower 100 and accompanying
server 204, tier 2 assembler 104 and accompanying server 212,
first, second, . . . nth tier 3 part/component manufacturer 108a-n
and accompanying servers 216a-n, and first, second, third, . . .
mth tier 4 material supplier 112a-m and accompanying servers
220a-m.
[0163] The supply chain management platform 816 comprises not only
the data collection module 300, risk manager 316, scheduling module
304, reporting module 320, analytical engine 312, and historical
state module 308 but also a gateway 820, application programming
interface(s) 824 (one of which typically corresponds to each of the
data collection module 300, risk manager 316, scheduling module
304, reporting module 320, analytical engine 312, and historical
state module 308), security module 828, and pricing monitoring
module 850. All of the components are interconnected by a trusted
local area network 832.
[0164] The gateway 820 is a network point (e.g., a router) that
acts as an entrance to the local area network 832. The gateway node
can also act as a proxy server and/or a firewall to provide
security to the local area network 832.
[0165] The application programming interface(s) 824 define or
specify how software components interact with one another.
Typically, each API is a library that includes specification for
routines, data structures, object classes, and variables. The API
may be implemented in a procedural language or object-oriented
language. An API specification can take many forms, including an
International Standard such as POSIX, vendor documentation such as
the Microsoft Windows.TM. API and/or the libraries of a programming
language, e.g., Standard Template Library in C++ or Java API. An
API differs from an application binary interface (ABI) in that an
API is source code based while an ABI is a binary interface. The
data collection module 300, risk manager 316, scheduling module
304, reporting module 320, analytical engine 312, and historical
state module 308 commonly use a common API or different APIs that
are configured substantially the same. Generally, all internal and
external signaling, including inter-application, intra-application,
and/or inter-device messages, pass through APIs.
[0166] The security module 828 enforces access privileges and
thereby maintains data security for each enterprise, organization,
and supply chain. This can be important as supply chains of
competitors may be simultaneously using the platform 816 for supply
chain management.
[0167] The security module 828 can employ a variety of
techniques.
[0168] One technique is application-based, which determines whether
the user has permission to access one or more of the data
collection module 300, risk manager 316, scheduling module 304,
reporting module 320, analytical engine 312, and historical state
module 308. This can be determined using licensing techniques,
whereby the user is subjected to access and/or feature restrictions
depending on payments made to the platform operator.
[0169] Another technique is API-based, which determines whether the
user has permission to access one or more of the APIs. Although the
user may be licensed to use an application, he or she may not be
licensed or privileged to use one or more APIs within that
application. Permission can also be determined using licensing
techniques, whereby the user is subjected to access and/or feature
restrictions depending on payments made to the platform operator,
or enforcement of privileges. The query, command, and/or request is
typically further required to conform to the requirements of the
application programming interface and, when the query, command,
and/or request fails to conform to the requirements of the
application programming interface, the security module can deny the
query, command, and/or request even though the requestor has
permission to use the API.
[0170] Another technique is data entity or role-based, whereby
specified roles can create, read, update, and delete specified
objects. For example, a system 816 administrator role can create,
read, update and delete enterprise and/or organization,
administrator, organization, site, item, and user objects. An
administrator for an enterprise and/or organization in a particular
supply chain, by contrast, can create, read, update, and delete
administrators, users, organizations, sites, and items but only for
the particular enterprise and organization. An event manager for an
enterprise and/or organization can create site, item, item-site
relationships, item-item relationships, and supply chain events but
only for the particular enterprise and organization.
[0171] Yet another technique is field level-based, which determines
whether or not the user has permission to view or change the field.
This technique can also be role-based.
[0172] In either of the data entity or field level-based
techniques, data objects can have different states (e.g., a
purchase order can have different states) and be viewed as state
machines, whereby a state of a data object is changed by an action.
Stated another way, actions cause transitions between states. Each
state has a collection of actions that are allowed and permissions
associated with performing an action. States can have sub-states
for a particular role type. For example, a seller may have a
requirement to approve a sell price by a manager before committing
the order. Basically, all actions can update an artifact except the
first one (create). When an update or delete request is received,
the security module or API checks the permissions for the state.
When permitted, the update is executed and the the artifact
assigned a next state or the artifact deleted.
[0173] Yet another technique is to control the structure of, or
restructure, database queries, commands or requests to comply with
relevant sets of permissions. A requestor can write any database
query, command, or request desired. The security module receives
and applies a security definition to the query, command, or
request. If required, the security module edits the query, command,
or request consistent with the security definition. The revised or
restructured query, command, or request is then passed onto the API
of the data collection module. By way of example, assume that there
are two supply chains, with the tier 1 control tower on one supply
chain being associated with Hewlett Packard.TM. laptops and the
tier 1 control tower on the other supply chain being associated
with Dell.TM. laptops. They each share a common tier 3 component
manufacturer, namely Intel.TM., which supplies integrated circuit
boards to each supply chain. A Dell employee provides the following
query to the platform 800:
[0174] Q: Select * from order where Seller=* and Buyer=*, where "*"
is a wildcard. This query, if executed, would provide the Dell.TM.
employee with all rows and fields in both the Hewlett Packard.TM.
and Dell.TM. supply chains. To provide the Dell employee with the
supply chain information to which he or she is entitled, the
security module can restructure the query as follows:
[0175] Q: Select * from order where Seller=Dell or Buyer=Dell. This
query provides the requestor with only rows and fields in which
Dell is either seller or buyer. Because Intel.TM. is common to both
supply chains, the following query "Q:Select * from order where
Seller=Intel or Buyer=Intel will retrieve rows and fields from both
supply chains in which Intel is either seller or buyer. In this
manner, the security module can implement both row-based and
field-based access restrictions, in a readily scalable format,
without requiring users associated with enterprises and
organizations in the supply chain to voluntarily restrict database
queries, commands, and requests in accordance with a particular
grammar or language.
[0176] While the security module is discussed with reference to
information involving only a particular enterprise or organization,
it is to be understood that the enterprises and organizations
within a supply chain can agree to provide information to other
enterprises and organizations located upstream of downstream in the
supply chain, such as to the tier 1 control tower. In such cases,
the security definition takes such expanded information access into
consideration.
[0177] The security module can enable the collected information to
be maintained in one data location (and common database) without
the use of a partitioned database. In other words, the database is
not partitioned logically (horizontally or vertically) into
distinct and independent parts corresponding to different monitored
supply chains, and the data and/or data structures for different
monitored supply chains can be commingled and/or conform to a
common data model in the database. This can enable the use of a
simpler data model that enables ease of constructing relationships
between enterprises and organizations, provide stability, and
provide scalability. Each data row of the model can have a
different schema. The data model can also enable sharing of
information across and among different supply chains.
[0178] The pricing monitoring module 850 monitors long term
contract and spot market prices on materials and/or parts and/or
components and/or products and generates alarms or notifications
when the monitored prices change upwards or downwards beyond
specified thresholds. This can be done effectively by identifying
all materials and/or parts and/or components within a selected
product. For example, a bill of materials can provide visibility
into the various materials and/or parts and/or components of a
selected product. An integrated circuit board, for instance,
includes a broad number of raw materials, such as silicon, dopants,
conductive metals for traces and other conductive structures, and
device subcomponents, such as microprocessors, memory modules,
etc., and is itself a device used in many end products. The pricing
module 850 would monitor prices not only for the raw materials but
also for the subcomponents and the device itself. Sudden changes in
raw materials prices can provide an advance indication of price
changes in the device. This can be used by the pricing monitoring
module 850 not only to estimate the resulting device price but also
indicate to administrators that additional inventory of the device
should be acquired before the price changes. An example of a price
estimation algorithm is to determine how much of the raw material
is used in the device and the net total increase in cost for the
device manufacturer. This net cost increase can be added to the
current price to provide a fairly reliable cost estimate.
[0179] The analytical engine 320 can also calculate and update
performance measures as information is collected by the data
collection module 300. In other words, the calculation and updating
of performance measures is done substantially in real time.
Alternatively, the analytical engine 320 can calculate the
performance measures when and as requested by a user. In other
words, the performance measures are not precalculated. This can
obviate the need for an analytics database altogether.
Operation of the Security Module 828
[0180] With reference to FIG. 9, the operation of the security
module 828 will be discussed.
[0181] In step 900, the supply chain management platform 816
receives an access request, such as a query, command, or request.
The access request can be from a platform administrator or user or
from an administrator or member of an enterprise or organization in
a supply chain monitored by the platform 816 (hereinafter
"requestor").
[0182] The security process begins in decision diamond 904, in
which the security module 828 determines whether the requestor has
permission to use the application to which the access request is
directed and the API associated with the application or function or
feature of the application to process the access request.
[0183] When the requestor has permission to use the application and
API, the security module 828, in decision diamond 908, determines
whether the requestor is privileged to interact with the data
entity. As noted, this query determines whether the requestor has a
specified role privileged to create, read, update, and delete the
specified data object.
[0184] When the requestor does not have permission to use either
the application or the specific API of the application involved in
processing the access request or is not privileged to interact with
the data entity or object, the security module 828 proceeds to step
928 and denies the request.
[0185] When the requestor is privileged to interact with the data
entity or object, the security module 828 proceeds to step 912 and
applies a security definition to the access request and, if
required, edits or reconfigures the access request consistent with
the applied security definition.
[0186] In step 916, the security module 828 forwards the edited
request to the application, e.g., the data collection module 300,
risk manager 316, scheduling module 304, reporting module 320,
analytical engine 312, and/or historical state module 308, for
processing.
[0187] In optional step 920, the security module 828 receives the
response and filters out any information that the requestor is not
privileged to access. This is a precautionary step in the event
that a database error has caused information to be retrieved
improperly.
[0188] In step 924, the security module 828 routes the response to
the requestor optionally through the appropriate API.
Operation of the Pricing Monitoring Module 850
[0189] The operation of the pricing monitoring module 850 will now
be discussed with reference to FIG. 10.
[0190] In step 1000, the pricing monitoring module 850 detects a
stimulus. The stimulus can be, for example, expiration of a
selected time period.
[0191] In step 1004, the pricing monitoring module 850 selects a
next product for consideration. This step can be done on a supply
chain-by-supply chain basis and, for a given supply chain, for one
or more selected enterprises or organizations within the supply
chain. For example and with reference to FIG. 1, the product can be
a product sold by one or more of a tier 1 control tower server 204,
tier 2 assembler server 212, first, second, . . . nth tier 3
component manufacturer server 216a-n, and first, second, third, . .
. mth tier 4 material supplier server 220a-m.
[0192] In step 1008, the pricing monitoring module 850 selects a
next component(I) of the selected product. As noted, the component
can be a raw or processed material, formulation, device, or other
component.
[0193] In step 1012, the pricing monitoring module 850 determines a
current pricing information for the selected component. This is
typically done using one or more accessible information source(s)
224, such as by browsing the Web.
[0194] In decision diamond 1016, the pricing monitoring module 850
determines whether the current pricing information for the selected
component differs materially from a previously determined or
currently realized pricing for the component. "Materially" is
typically determined by one or more thresholds. If the price rises
or falls in excess of a predetermined threshold, the pricing change
is deemed to be material.
[0195] When a price change is material, the pricing monitoring
module 850, in step 1020, generates an alarm and/or notification to
an administrator of the pertinent enterprise and/or
organization.
[0196] In decision diamond 1024, the pricing monitoring module 850
determines whether all components for the selected product have
been considered.
[0197] When there is no material pricing change (decision diamond
1016) or all components have not been considered, the pricing
monitoring module 850 returns to step 1008 and selects a next
component for pricing analysis.
[0198] When all components have been considered, the pricing
monitoring module 850, in step 1028, determines a new price for the
selected product.
[0199] The pricing monitoring module 850 then returns to step 1004
and selects a next product for analysis.
[0200] The pricing monitoring module 850 and analytical engine can
determine a financial impact on a supplier of the product and/or
downstream user of the product. The financial impact analysis can
be done for the selected product or across all product lines of the
supplier and/or downstream user and/or for the supply chain as a
whole.
[0201] The exemplary systems and methods of this disclosure have
been described in relation to a computer network. However, to avoid
unnecessarily obscuring the present disclosure, the preceding
description omits a number of known structures and devices. This
omission is not to be construed as a limitation of the scopes of
the claims. Specific details are set forth to provide an
understanding of the present disclosure. It should however be
appreciated that the present disclosure may be practiced in a
variety of ways beyond the specific detail set forth herein.
[0202] Furthermore, while the exemplary aspects, embodiments,
and/or configurations illustrated herein show the various
components of the system collocated, certain components of the
system can be located remotely, at distant portions of a
distributed network, such as a LAN and/or the Internet, or within a
dedicated system. Thus, it should be appreciated, that the
components of the system can be combined in to one or more devices,
such as a server, or collocated on a particular node of a
distributed network, such as an analog and/or digital
telecommunications network, a packet-switch network, or a
circuit-switched network. It will be appreciated from the preceding
description, and for reasons of computational efficiency, that the
components of the system can be arranged at any location within a
distributed network of components without affecting the operation
of the system. For example, the various components can be located
in a switch such as a PBX and media server, gateway, in one or more
communications devices, at one or more users' premises, or some
combination thereof. Similarly, one or more functional portions of
the system could be distributed between a telecommunications
device(s) and an associated computing device.
[0203] Furthermore, it should be appreciated that the various links
connecting the elements can be wired or wireless links, or any
combination thereof, or any other known or later developed
element(s) that is capable of supplying and/or communicating data
to and from the connected elements. These wired or wireless links
can also be secure links and may be capable of communicating
encrypted information. Transmission media used as links, for
example, can be any suitable carrier for electrical signals,
including coaxial cables, copper wire and fiber optics, and may
take the form of acoustic or light waves, such as those generated
during radio-wave and infra-red data communications.
[0204] Also, while the flowcharts have been discussed and
illustrated in relation to a particular sequence of events, it
should be appreciated that changes, additions, and omissions to
this sequence can occur without materially affecting the operation
of the disclosed embodiments, configuration, and aspects.
[0205] A number of variations and modifications of the disclosure
can be used. It would be possible to provide for some features of
the disclosure without providing others.
[0206] For example in one alternative embodiment, the techniques
discussed herein are applied to animate objects, such as processing
people, particularly at a check point. The Department of Homeland
Security can use the management systems to process people more
effectively at airport security checkpoints and the Immigration and
Naturalization Service can use the management systems to process
more effectively at border crossings.
[0207] In another alternative embodiment, the techniques discussed
herein can be applied to inanimate objects, such as mail or
packages, such as by a postal, courier or freight service.
[0208] In yet another embodiment, the systems and methods of this
disclosure can be implemented in conjunction with a special purpose
computer, a programmed microprocessor or microcontroller and
peripheral integrated circuit element(s), an ASIC or other
integrated circuit, a digital signal processor, a hard-wired
electronic or logic circuit such as discrete element circuit, a
programmable logic device or gate array such as PLD, PLA, FPGA,
PAL, special purpose computer, any comparable means, or the like.
In general, any device(s) or means capable of implementing the
methodology illustrated herein can be used to implement the various
aspects of this disclosure. Exemplary hardware that can be used for
the disclosed embodiments, configurations and aspects includes
computers, handheld devices, telephones (e.g., cellular, Internet
enabled, digital, analog, hybrids, and others), and other hardware
known in the art. Some of these devices include processors (e.g., a
single or multiple microprocessors), memory, nonvolatile storage,
input devices, and output devices. Furthermore, alternative
software implementations including, but not limited to, distributed
processing or component/object distributed processing, parallel
processing, or virtual machine processing can also be constructed
to implement the methods described herein.
[0209] In yet another embodiment, the disclosed methods may be
readily implemented in conjunction with software using object or
object-oriented software development environments that provide
portable source code that can be used on a variety of computer or
workstation platforms. Alternatively, the disclosed system may be
implemented partially or fully in hardware using standard logic
circuits or VLSI design. Whether software or hardware is used to
implement the systems in accordance with this disclosure is
dependent on the speed and/or efficiency requirements of the
system, the particular function, and the particular software or
hardware systems or microprocessor or microcomputer systems being
utilized.
[0210] In yet another embodiment, the disclosed methods may be
partially implemented in software that can be stored on a storage
medium, executed on programmed general-purpose computer with the
cooperation of a controller and memory, a special purpose computer,
a microprocessor, or the like. In these instances, the systems and
methods of this disclosure can be implemented as program embedded
on personal computer such as an applet, JAVA.RTM. or CGI script, as
a resource residing on a server or computer workstation, as a
routine embedded in a dedicated measurement system, system
component, or the like. The system can also be implemented by
physically incorporating the system and/or method into a software
and/or hardware system.
[0211] Although the present disclosure describes components and
functions implemented in the aspects, embodiments, and/or
configurations with reference to particular standards and
protocols, the aspects, embodiments, and/or configurations are not
limited to such standards and protocols. Other similar standards
and protocols not mentioned herein are in existence and are
considered to be included in the present disclosure. Moreover, the
standards and protocols mentioned herein and other similar
standards and protocols not mentioned herein are periodically
superseded by faster or more effective equivalents having
essentially the same functions. Such replacement standards and
protocols having the same functions are considered equivalents
included in the present disclosure.
[0212] The present disclosure, in various aspects, embodiments,
and/or configurations, includes components, methods, processes,
systems and/or apparatus substantially as depicted and described
herein, including various aspects, embodiments, configurations
embodiments, subcombinations, and/or subsets thereof. Those of
skill in the art will understand how to make and use the disclosed
aspects, embodiments, and/or configurations after understanding the
present disclosure. The present disclosure, in various aspects,
embodiments, and/or configurations, includes providing devices and
processes in the absence of items not depicted and/or described
herein or in various aspects, embodiments, and/or configurations
hereof, including in the absence of such items as may have been
used in previous devices or processes, e.g., for improving
performance, achieving ease and\or reducing cost of
implementation.
[0213] The foregoing discussion has been presented for purposes of
illustration and description. The foregoing is not intended to
limit the disclosure to the form or forms disclosed herein. In the
foregoing Detailed Description for example, various features of the
disclosure are grouped together in one or more aspects,
embodiments, and/or configurations for the purpose of streamlining
the disclosure. The features of the aspects, embodiments, and/or
configurations of the disclosure may be combined in alternate
aspects, embodiments, and/or configurations other than those
discussed above. This method of disclosure is not to be interpreted
as reflecting an intention that the claims require more features
than are expressly recited in each claim. Rather, as the following
claims reflect, inventive aspects lie in less than all features of
a single foregoing disclosed aspect, embodiment, and/or
configuration. Thus, the following claims are hereby incorporated
into this Detailed Description, with each claim standing on its own
as a separate preferred embodiment of the disclosure.
[0214] Moreover, though the description has included description of
one or more aspects, embodiments, and/or configurations and certain
variations and modifications, other variations, combinations, and
modifications are within the scope of the disclosure, e.g., as may
be within the skill and knowledge of those in the art, after
understanding the present disclosure. It is intended to obtain
rights which include alternative aspects, embodiments, and/or
configurations to the extent permitted, including alternate,
interchangeable and/or equivalent structures, functions, ranges or
steps to those claimed, whether or not such alternate,
interchangeable and/or equivalent structures, functions, ranges or
steps are disclosed herein, and without intending to publicly
dedicate any patentable subject matter.
* * * * *