MITx SCX KeyConcept SC4x FV
MITx SCX KeyConcept SC4x FV
In recent years there has been an explosion of information and this is especially true in supply
chains. A few examples introduced include Amazon’s massive supply chains selling 480 million
unique items to 244 million customers while UPS is delivering 20 million packages to 8.4 million
delivery points. This information is coming from multiple sources, in addition to sensors, the
“internet of things”, and regulations requiring increasing amounts of information.
All of this information is commonly referred to as the “Big Data” challenge. Data is driving our
modern world, but how can we be sure of it and use it most effectively? As we will review –
data is messy, it requires cleaning and programming. Data is frequently trapped in siloes
coming from different sources, which makes working with it more challenging. In addition, data
is big and getting even bigger daily. The tools we have all become comfortable with
(spreadsheets) can no longer handle that amount of data, so we must use different tools to
enable greater analysis.
To better understand the role of data and how to manage it, the following summaries cover an
introduction to data management, data modeling, and data normalization – to get us started on
a solid ground with handling large data sets – an absolute essential in supply chain
management.
Data Management
In data management supply chain managers will be faced with immense complexity. This
complexity is influenced by the volume (how much), velocity (pace), variety (spread), and
veracity (accuracy). Each of these components will influence how data is treated and used in
the supply chain.
There are several reoccurring issues that supply chain managers must be aware of as they are
working with data:
• Is the data clean?
• Is the data complete?
• What assumptions are you making about the data?
• Are the results making sense? How can I check?
V2 Fall 2017・CTL.SC4x – Technology and Systems・MITx MicroMasters in Supply Chain Management
MIT Center for Transportation & Logistics・Cambridge, MA 02142 USA ・[email protected]
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
4
Cleaning data is one of the most important; yet time consuming processes in data analysis. It
can greatly influence the outcome of analysis if not completed properly. Therefore – SC
professionals should always plan enough time for basic data checks (meaning if you get garbage
in, you will get garbage out).
There are several typical checks you should always look for:
• Invalid values - negative, text, too small, too big, missing
• Mismatches between related data sets - # of rows, # of cols
• Duplication – unique identifiers
• Human error – wrong dates, invalid assumptions
• Always explore the outliers – they are the most interesting!
When cleaning data, you should be organized. This means you must make sure to version the
documents you are working with and keep track of data changes.
No more spreadsheets!
Unfortunately, as we dive deeper into the big data challenge, we find that spreadsheets can no
longer service all of our needs. We have the choice of working with structured or unstructured
data. A database is a structured way of storing data. You can impose rules, constraints and
relationships on it. Furthermore, it allows for:
• Abstraction: Separates data use from how and where the data is stored. This allows
systems to grow and makes them easier to develop and maintain through modularity.
• Performance: Database may be tuned for high performance for the task that needs to
be done (many reads, many writes, concurrency)
Spreadsheets are unstructured data. You have a data dump into on spreadsheet and you need
to be able to do lots of different things. Spreadsheets will always be great for a limited set of
analysis such as informal, causal, and one-off analysis and prototyping. Unfortunately, they are
no longer suited for repeatable, auditable, or high-performance production. Unstructured data
commonly has problems with: redundancy, clarity, consistency, security, and scalability.
Relational Models
The relational model is an approach to managing data that uses structure and language where
all data is grouped into relations. A relational model provides a method for specifying data and
queries. It is based on first-order predicate logic, which was described by Edgar F. Codd in 1969.
This logic defines that all data is represented in terms of tuples, grouped into relations. There
are several definitions to be familiar with as we reviewed previously with relational models:
• Entity: object, concept or event
• Attribute (column): a characteristic of an entity
• Record or tuple (row): the specific characteristics or attribute values for one example of
an entity
• Entry: the value of an attribute for a specific record
• Table: a collection of records
• Database: a collection of tables
Domain Validation Entities: Also known as pick lists or validation lists. Domain validation
entities are used to standardize data in a database, they restrict entries to a set of specified
values. They are tables with a single attribute that enforces values of attribute in related
table(s).
Keys
Primary keys are attributes used to uniquely identify a record while foreign keys are attributes
stored in a dependent entity, which show how records in the dependent entity are related to
an independent entity.
Primary key: one or more attributes that uniquely identify a record. The attribute has be
uniquely suited.
Foreign Key: Primary key of the independent or parent entity type is maintained as a non-key
attribute in the related, dependent or child entity type, this is known as the foreign key
Composite key: is a primary key that consists of more than one attribute, ex: charter airline,
every flight has a different number.
Many to Many Relationships: A many to many relationship refers to a relationship between
tables in a database when a parent entity contains several child entity types in the second
table. ex- Vehicle can be driven by many drivers, drivers can drive many vehicles. In this case an
associative table (entity), aka junction table is appropriate where the primary key of parent is
used in primary key of child.
Objectives of Normalization
1. To free the collection of [tables] from undesirable insertion, update and deletion
dependencies.
2. To reduce the need for restructuring the collection of [tables], as new types of data are
introduced, and thus increase the life span of application programs.
3. To make the relational model more informative to users.
4. To make the collection of [tables] neutral to the query statistics, where these statistics
are liable to change as time goes by.
**Remember our relational model definitions
• Entity: object, concept or event
• Attribute (column): a characteristic of an entity
• Record or tuple (row): the specific characteristics or attribute values for one example of
an entity
• Entry: the value of an attribute for a specific record
• Table: a collection of records
• Database: a collection of tables
Normal Forms
First Normal Form – the basic objective of the first normal form (defined by Codd) is to permit
data to be queried and manipulated, grounded in first order logic. All rows in a table must
contain the same number of attributes; no sub-lists, no repeated attributes, identify each set of
related data with a primary key. First normal form can make databases robust to change and
easier to use in large organizations.
Second Normal Forms – must first be in first normal form, all non-key fields must be a function
of the primary key; only store facts directly related to the primary key in each row.
Third Normal Form - must first be in second normal form. All the attributes in a table are
determined only by the candidate keys of the table and not by any non-prime attributes. Third
normal form was designed to improve database processing while minimizing storage costs.
Fourth Normal Form - must first be in third normal form. A row should not contain two or more
independent, multi-valued facts about an entity. Fourth normal form begins to address several
issues when there is uncertainty in how to maintain the rows. When there are two unrelated
facts about an entity, these should be stored in separate tables.
Fifth Normal Form - must first be in fourth normal form. A record cannot be reconstructed
from several smaller record types. Size of this single table increases multiplicatively, while the
normalized tables increase additively. Much easier to write the business rules from the three
tables in the fifth normal form, rules are more explicit. Supply chains tend to have fifth normal
form issues.
Web
Applica9on
Client
Analy9cs
Client
46
Database Servers
Databases are hosted on a server and not usually accessible through a file system or directory
structure. The main options for hosting a database is: on a single server, in a database cluster,
or as a cloud service. All of these systems are designed to abstract the implementation details.
A client has software that allows it to connect and communicate with the database server using
a standardized protocol. There are many different user interfaces for many databases.
Databases can be accessed remotely or on the Internet.
Learning Objectives
• Identify and understand database normalization.
• Review why we normalize our data models.
• Understand the step-by-step process of data normalization and forms.
• Learn and apply how we normalize a relational data model.
• Recognize the drawbacks of normalization.
Editing a Table
In some cases you will be faced with the need to edit a table. In this case you will use the
following:
• INSERT is used to add a new record to a table that contains specific values for a set of
attributes in that table
• The UPDATE keyword is used to modify a specific value or set of values for a set of
records in a table
• DELETE is used to remove records from a table that meet a specific condition
Learning Objectives
• Become more familiar with SQL.
• Recognize different implementations of SQL have differences of which to be aware.
• Review the different data types.
• Learn how to create new databases and tables.
• Understand how to use a SELECT query.
• Be familiar with wildcards and when to use them.
• Review how to edit a table.
More advanced statistical functions can be created using the basic statistical functions built into
SQL such as calculating the weighted average or getting the z-score values by combining
different functions.
SELECT *
FROM tb1, tb2;
SELECT *
FROM tb1, tb2
WHERE tb1.bg = tb2.bg;
Columns in a JOIN
• They don’t need to be keys, though they usually are
• Join columns must have compatible data types
• Join column is usually key column: Either primary or foreign
• NULLs will never join
V2 Fall 2017・CTL.SC4x – Technology and Systems・MITx MicroMasters in Supply Chain Management
MIT Center for Transportation & Logistics・Cambridge, MA 02142 USA ・[email protected]
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
21
Views
Views are virtual tables that do not change the underlying data but can be helpful to generate
reports and simplify complicated queries. They are virtual tables that present data in a
denormalized form to users. They do no create separate copies of the data (they reference the
data in the underlying tables). The database stores a definition of a view and the data is
updated each time the VIEW is invoked.
There are several advantages to VIEWS. User queries are simpler on views constructed for
them. They offers a layer of security that can restrict access to data in views for users. They also
provide greater independence, meaning that the user or program is not affected by small
changes in underlying tables.
Learning Objectives
• Learn how to work with SELECT for conditional clauses.
• Recognize the role and use of NULL values.
• Review how to group data with the GROUP BY clause.
• Introduce the existence of statistical functions in all SQL functions.
• Recognize how to apply aggregate statistical functions.
• Review sorting and sampling techniques such as ORDER BY, LIMIT and RAND.
• Learn how to create new tables and aliases using the AS keyword.
• Becoming familiar with joining multiple tables.
• Recognize the types of JOINs.
• Identify when and how to use VIEWs.
Example of Indexing
Consider a Customer table that contains the following columns: Customer ID, Customer name,
City, state, Postal (zip) code and Address. Customer_ID, here, is the primary key. Let us assume
that we want to index State and City so that one can quickly narrow down the lists of customer
in a particular state and city. This can done by using the below syntax where IX_City_State is
just the name of the index that will be created on the table “Customer” and the attributes are
“State” and “City”
CREATE INDEX IX_City_State
ON Customer (State, City)
V2 Fall 2017・CTL.SC4x – Technology and Systems・MITx MicroMasters in Supply Chain Management
MIT Center for Transportation & Logistics・Cambridge, MA 02142 USA ・[email protected]
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
23
Databases and Data Warehouses
So far, we have looked at one type of databases that are known as online transaction
processing, or OLTP. There is another class of database that you should be familiar with. These
are known as online analytical processing or OLAP. OLTP and OLAP, each have different use
case and purpose. The below tables list down the common use case and key differences
Use cases
between these databases:
Table: Use Cases
OLTP OLAP
Manage real-time business operations Perform analytics and reporting
Supports implementation of business Supports data driven decision making
tasks
e.g. Transactions in an online store e.g. Data mining and machine learning
e.g. Dashboard showing health of e.g. Forecasting based on historic data
business over the last few days/hours
Concurrency is paramount Concurrency may not be important
Key differences
https://neo4j.com/developer/graph-database/ 20
Cloud Computing
Cloud computing enables users and enterprises to access shared pools of resources (such as
computer networks, servers, storage, applications and services) over the internet.
Cloud computing offers various benefits over traditional systems, including:
• Low start-up cost
• Low risk development and testing
• Managed hardware (and software)
• Global reach
• Highly available and highly durable
• Scale on demand, pay for what you use
• In some cases, can work with local infrastructure if needed
V2 Fall 2017・CTL.SC4x – Technology and Systems・MITx MicroMasters in Supply Chain Management
MIT Center for Transportation & Logistics・Cambridge, MA 02142 USA ・[email protected]
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
26
Types of Cloud Computing
Infrastructure as a service • Outsource hardware
(IaaS) • User provides operating system, database, app, etc.
• Most flexible, higher upfront total IT cost
• Example: Rackspace
Platform as a service (PaaS) • Outsource operating environment
• Cloud platform provides OS, database, etc.
• Examples: Amazon, Microsoft, Google
Software as a service (SaaS) • Outsource software
• Configure the third party app
• Examples: Salesforce, HubSpot
• Least flexible, lower upfront total IT cost
Data Cleaning
Data must be cleaned or pre-processed before it can be inserted into a database. This is a time
consuming but a mandatory exercise, as the quality of the database depends on the integrity of
the data.
Review of Regression
Linear regression uses the value of one or more variables to make a prediction about the value
of an outcome variable. Input variables are called independent variables and the output
variable is known as the dependent variable.
• Linear regression output includes coefficients for each independent variable.
o This is a measure of how much an independent variable contributes to the
prediction of the dependent variable.
o The output also includes metrics to be able to assess how the model fits the
data. The better fit of the model, the better you are able to make accurate
predictions about new data.
• Using coefficients calculated from historic data, a regression model can be used to make
predictions about the value of the outcome variable for new records.
Model
Model Quality
Machine learning models should be trained on an unbiased set of data that is Produc<on
representative of the variance in the overall dataset. Bias quantifies the lack of
ability of a model to capture underlying trend in the data. More complex models
decrease bias but tend to increase variance. Variance quantifies a model’s sensitivity to small
changes in the underlying dataset.
• Ideally want low bias and low variance, but there is a tradeoff between the two
quantities
• If there is a bias in the training data or if too many features are included in a model, the
model is at risk of being overfit. In overfit models, the coefficients, known as
parameters, will not be generalizable enough to make good predictions for new records.
• A large and representative sample of the labeled data should be used to train the
model, the remainder is used for testing.
Dimensionality reduction
Dimensionality reduction is a term for reducing features included in analysis. It is often needed
for analysis with many features. Trying to reduce dimensionality randomly or manually leads to
poor results
• Results need to be interpreted by humans, should be tractable
• Increasing the number of features included increases the required sample size
• Features should not be included or discarded from analysis based on instinct
o Dimensionality reduction techniques should be employed, such as principal
component analysis.
• Summary statistics are a means of dimensionality reduction
Clustering
Another way of thinking about dimensionality reduction is how close each point is to other
points. The idea is to separate data points into a number of clusters that have less distance
between the points internally than to other clusters. Clustering can be helpful to identify groups
of records that have similar characteristics to one another. When data is unlabeled, clustering
can be used to group records together for deeper inspection. Upon deeper inspection of the
records in each cluster, users can understand the patterns that lead to records being grouped
together, and also identify reasons for records being grouped separately.
K-means clustering
k-means clustering starts with selecting the number of clusters, k. k cluster-centers are placed
randomly in the data space and then the following stages are performed repeatedly until
convergence. K-means does not determine the appropriate number of clusters, this is set by the
user based on intuition or previous knowledge of the data The algorithm can terminate with
multiple solutions depending on initial random positions of cluster-centers and some solutions
are better than others.
• Data points are classified by the center to which they are nearest
• The centroid of each cluster is calculated
• Centers are updated to the centroid location
Classifications
• Clustering and PCA allow users to see patterns in the data, which is the best that can be
done because there are no labels to guide the analysis
• With supervised learning, the label is included in the learning process:
o Unsupervised: what features are most important or interesting?
o Supervised: what features are most informative about the differences between
these groups?
• Classification methods: each record falls into some category or class, predict the
category of a new record based on values of other features in the record
• Regression methods: one variable depends on some or all of others, predict the value of
the dependent variable based on the values of the independent variables
Random forest
Random forest is an ensemble classifier that uses multiple different classification trees. Trees
are generated using random samples of records in the original training set. Accuracy and
information about variable importance is provided with the result.
• No pruning necessary
• Trees can be grown until each node contains very few observations
• Better prediction than classification
• No parameter tuning necessary
Comparing models
• Several standard measures of performance exist, can run multiple models and compare
metrics:
o Accuracy
o Precision
o Recall
o And more
• Application drives which performance metrics are most important for a given task
Confusion Matrix
A confusion matrix is a table that is often used to describe the performance of a machine
learning algorithms on a set of test data for which the true values are known. Below is an
example confusion matrix:
Predicted High Predicted Low
Actual High 100 20
Actual low 10 200
The table tells us the below about the classifier:
• There are two possible predicted classes: "high" and "low". If we were predicting the
average spending by a user them a high will imply these customers are high spender, and
“low” will mean they are low spender.
• The classifier made a total of 230 predictions
• Out of those 230 cases, the classifier predicted "high" 110 times, and "low" 220 times.
• In reality, 100 patients in the sample are high spender, and 200 are low spenders.
ERP Data
There are three types of ERP Data:
Organization data: represents and captures the structure of an enterprise.
Master data: represents entities (customers, vendors) with processes. It is the most commonly
used. But because specific processes use materials differently and specific data needs differ by
processes – this adds to complexity of master data needs. Material types can be in different
states and can be grouped differently based on firm needs.
Transaction data: reflects the outcome of executing process steps. It comes in organizational,
master and situational data. Transaction documents include purchase orders, invoices, etc.
ERP Communication
Business-to-Business (B2B): Commerce transactions between manufacturers, wholesalers,
retailers. Each business represents a link in the supply chain.
Business-to-Consumer (B2C): Sale transactions between firms and end-consumers. The volume
of B2B transactions is much greater than B2C.
Accelerating and validating B2B and B2C transactions: For B2B this is achieved through
Electronic Data Interchange (EDI). For B2C this is achieved through a website and email.
Purchase Order
Order Confirma-on
SAP
Data Order Cancella-on Oracle
Format Data
Business X ETA Business Y Format
Gateway Order Cancella-on Gateway
ASN
Order Receipt
§ ERP systems can “communicate” via EDI, sharing near real--me informa-on.
The Value of ERP for SCM
§ The data is usually translated and validated to be imported into an ERP system.
There are three important values of ERP for supply chain management: reduction of the
§ Any info file can be shared given appropriate ERP fields to capture and display its
bullwhip effect, enabling widespread analytics, and extending the enterprise.
content.
§ What other info would businesses want to share?
Reducing the Impact of Bullwhip Effect
One of the key values of an ERP system is reducing or preventing the Bullwhip Effect. The
MIT Center for
Transportation & Logistics Adapted from Omar Elwakil (2016)
24
Bullwhip Effect is phenomenon where information distortion leads to increasing order
fluctuations in the upstream supply chain (forecast-driven supply chains). It is driven by several
behavioral causes like overreaction to backlogs and lack of transparency. There are also many
operational errors such as forecasting errors, lead-time variability, and promotions.
ERP can reduce the impact of the Bullwhip Effect by extending visibility downstream to
customer demand and upstream to participants enabling collaboration and information
sharing. It also facilitates point of sale capturing and helps reduce batch size and demand
variability through smaller and more frequent orders.
Enabling Analytics
ERP systems play a key role in enabling analytics. They are primarily retrospective, serve as the
ledger of the firm, and provide the CFO with financial snapshots. They also enable other forms
of analytics for Business Intelligence (BI): which transforms raw data into meaningful
information to improve business decision-making. These can be descriptive, predictive, and
prescriptive.
. . . there is a gap!
Planning Tasks
MIT Center for
Transportation & Logistics
Planning Horizons
Advance Planning Systems help with planning horizons. The following provide a rough guideline
but each firm differs and it is unique to specific industries.:
• 3 months out – Master Production Schedule (MRP, DRP)
o <4 weeks out - Frozen MPS
o 5 to 8 weeks out – Slush MPS – some changes allowed (+- 10%)
o >8 weeks out – Water MPS – more changes are allowed (+- 30%)
• 3-18 months out – Aggregated Planning
• >18 months out – Long Range Planning – Network Design, etc.
Flow
Inputs (from ERP or other systems): Current costs, manufacturing and storage capacities,
consensus forecast, sales orders, production status, purchase orders, and inventory policy
recommendations, etc.
Decision Process: Large scale optimization (MILP) across multiple facilities and time horizons in
a single planning run; unconstrained, constrained, and optimal plans
Transportation Execution
The TMS serves as the interface to the carriers while connecting the Order Management
System (OMS), Payment Systems, and the ERP. Its main objective is to: move products from
initial origin to final destination cost effectively while meeting the level of service standards and
executing the plan using the procured carriers. This is broken down in phases below:
PLAN: Create Shipments from Orders
EXECUTE: Select and tender to Carriers
MONITOR: Visibility of the status of Shipments
RECONCILE: Audit invoices and pay for Transportation
There are many considerations to be made in TMS such as:
§ How do orders drop? Batched vs Continuous?
§ How much time is allowed between drop and must-ship? Weeks? Days? Hours?
Minutes?
§ What percentage of orders change after release?
§ How do they change? Quantity? Mix? Destinations? Timing?
§ What is the length of haul?
§ How many orders are “in play” at any time?
There are also key decisions like carrier selection and load building.
Primary
Spot
Carrier A
Carrier A
Carrier E
Spot
Carrier B
Carrier B
Carrier B
Carrier B
III IV
I II
Strategic Strategic
Lane Assmt Lane Assmt
Static w/ Tier Pricing
Tier I
Uses strategic Contract Dynamic
routing guide
How do I price each load?
MIT Center for
26
Transportation & Logistics
Tracing
The capability to identify the source of an object or group of objects, within records, upstream
in the supply chain. Tracing enable supply chain professionals to answer questions such as
below:
• Where did it come from?
Supply Chain Visibility – Track vs. Trace
• Where has it been?
• Where are all the similar ones?
Tracking
Tracing
MIT Center for
Transportation & Logistics
4
Architecture
Evolution of Architecture
To understand where supply chain systems stand now, it is helpful to understand the evolution
of the architecture starting in the 1970’s. The following are the various forms of architecture for
the last fifty years:
• Mainframe (1970s)
• Personal Computers (mid-1980s)
• Client-Server (late 80s to early 90s)
• Wide Web and Web 2.0 (mid-90s to present)
• Cloud or Post-PC (today and beyond)
Today there are a variety of software systems available to businesses. In terms of architectural
format, they can choose between “On Location” or “On Premise” – meaning that the firms host
the software in their own facilities or on their hardware and within their own firewall. However,
companies are increasingly opting for cloud computing options. This means that they have
several deployment models available to them.
Cloud Computing
As cloud computing becomes increasingly more popular, there are a variety of offerings that
can be tailored to firm needs. They are Infrastructure as a Service (IaaS), Platform as a Service
(Paas), and Software as a Service (Saas), third party management increases from IaaS to SaaS.
We discuss each format as well as benefits below:
Infrastructure as a Service (IaaS): In this format, the third party provides the firm with the
computing infrastructure, physical or virtual machines and other resources. Firm owns and
manages the software application. The benefits of this are:
V2 Fall 2017・CTL.SC4x – Technology and Systems・MITx MicroMasters in Supply Chain Management
MIT Center for Transportation & Logistics・Cambridge, MA 02142 USA ・[email protected]
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
54
• No need to invest in your own hardware
• Infrastructure scales on demand to support dynamic workloads
• Flexible, innovative services available on demand
Platform as a Service (PaaS): In this format, the third party provides firm computing platforms
to include operating system, database, web server etc. Firm owns and manages the software
application. The benefits of this are:
• Develop applications and get to market faster
• Deploy new web applications to the cloud in minutes
• Reduce complexity with middleware as a service
Software as a Service (SaaS): In this case, the third party provides firm with access to the
application software and handles installation, setup, maintenance, and running. Firm is
charged by use. Benefits include:
• You can sign up and rapidly start using innovative business apps
• Apps and data are accessible from any connected computer
• No data is lost if your computer breaks, as data is in the cloud
• The service is able to dynamically scale to usage needs
While there are many benefits to cloud computing, there are widespread disadvantages of
cloud computing that include but are not limited to: vendor outages, unrestricted government
access, security & privacy risks, and key data and processes require network access.
There is also the option of outsourcing some of these systems to different providers. For
instance, in logistics, 3PLs or Third Party Logistics Providers, serve as an organization that can
run the software as well as perform all of the business processes. Having a 3PL run your logistics
eliminates the need for hardware and software. 3PLs can possibly replace personnel within the
firm. The use of 3PLs is most common with smaller firms.
The main reasons to outsource are to reduce capital expenditure for software and hardware. It
may also reduce costs as a result of partner’s economies of scale; they often have the ability to
do it faster and better as well as be more flexibile and agile. It may also be an opportunity to
increase levels of service at reasonable costs. Firm can focus on core business and bring in
expertise that is not affordable in-house. There are myriad other reasons to outsource, but
there are also many not to, discussed below.
At the top of the reasons not to outsource are security and privacy concerns; someone else has
access to the firm’s data. There are also worries of vendor dependency and lock-in. The firm
may lose in-house expertise to a core function. There are also high-migration costs as well as
concerns over availability, performance, and reliability. There are additional reasons not to
V2 Fall 2017・CTL.SC4x – Technology and Systems・MITx MicroMasters in Supply Chain Management
MIT Center for Transportation & Logistics・Cambridge, MA 02142 USA ・[email protected]
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
56
outsource. Firms need to weigh the pros and cons of outsourcing matched with business
objectives to decide which is suitable for them.
Implementation
While selecting a vendor can be difficult and time consuming, the actual process of
implementation can take an even more significant amount of time and consume a lot of
resources. There are a few different approaches to implementation. They include Direct (or Big
Implementa7on Approaches
Bang), Parallel, Pilot, and Phased (or Rolling). Each of these has its own positives and negatives,
but the approach must suit the needs of the business.
Moving from an old mul7-module system to a new mul7-module system.
# Modules # Loca7ons Comments
Converted Converted
Direct All All • Switch from the old to new system occurs on one day
or • Pain of switch concentrated for en7re firm
• Fastest implementa7on 7me, but highest risk
Big Bang
• Post-implementa7on produc7vity drop
• High poten7al for system wide failures due to insufficient tes7ng/training
Parallel All/Some All/Some • Old and new systems kept on for tes7ng period
• Lowest risk of failure, but highest cost and longest implementa7on 7me
• Employees do double entry work
Phased One All • Implementa7on of one module at a 7me across the network
or • Longer implementa7on dura7on than direct, but with lower risk
Rolling • Users have more 7me & learn as they go - no dip in performance a3er
• Learn and fix as you go – beser process for later implementa7ons
• Loss of managerial focus over 7me and a con7nuous state of change
• Poten7al for missing data during transi7onal implementa7on period
• Might require temporary bridges from old to new systems during transi7on
MIT Center for
Transportation & Logistics
27
There are a few best practices to keep in mind when going about implementation. They
include:
1. Secure senior executive commitment: ability to gather and use resources, empower
team.
2. Form interdisciplinary team(s)
3. Create a clear and specific scope document
4. Build extensive testing into the project plan (you can’t test too much)
5. Include extensive user training into the project plan
V2 Fall 2017・CTL.SC4x – Technology and Systems・MITx MicroMasters in Supply Chain Management
MIT Center for Transportation & Logistics・Cambridge, MA 02142 USA ・[email protected]
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
58
Learning Objectives
• Recognize selecting a software vendor is an intertwined decision between architecture
and source.
• Understand tradeoffs between On-Premise and Cloud based systems.
• Know the differences between In-House, Best of Breed, ERP Extensions, and Outsourced
forms of software systems.
• Review the selection process, recognizing there are multiple attributes, and the total
cost of ownership is complex.
• Understand the challenge of implementation and the various approaches to
implementing systems within a firm.
• Review best practices of implementation.