Date post: | 21-Jan-2016 |
Category: |
Documents |
Upload: | wendy-mathews |
View: | 217 times |
Download: | 0 times |
Solution Supply Chains
Jack Greenfield
Overview
• Learning from Other Industries
• Mass Customization in Software Development
• Implementing Supply Chains
Learning from Other Industries
• The role of independent software vendors and systems integrators in bridging the gap between generic platforms and custom solutions
• Benefits of mass customization in other industries
• Issues that make it difficult to integrate products and components from different suppliers using current software development practices
• The problems of development by assembly in software compared to other industries
The Customer Dilemma
GAPGAP
1 Market of1 Million
A few platform vendors build rich but generic platforms
Hundreds of ISVs build industry and/or segment specific products
Thousands of SIs customize and integrate products from multiple platforms and ISVs
1 MillionMarkets of 1
Millions of customers want individualized solutions
Techniciandetermines pumpavailability and estimates downtime
Assign inspectiontask totechnician
Start inspectionand document items
Technician orders pump, instantiates work process and submits inspectionDocumentation to the portal
Engineer and technician determine course of action consult with Production Planning
Open newinspectionform
Identifiespump is outof operatingparameters
Engineer consultsequipmentmanufacturerwith problem -online
Get P&ID from portalto find specificInstrument to inspect
Requestonline supportfrom theengineer via IM
Production Planningconfers with trading andProduct commitments
Read emailwith taskassignment Technician
determines pumpavailability and estimates downtime
Assign inspectiontask totechnician
Start inspectionand document items
Technician orders pump, instantiates work process and submits inspectionDocumentation to the portal
Engineer and technician determine course of action consult with Production Planning
Open newinspectionform
Identifiespump is outof operatingparameters
Engineer consultsequipmentmanufacturerwith problem -online
Get P&ID from portalto find specificInstrument to inspect
Requestonline supportfrom theengineer via IM
Production Planningconfers with trading andProduct commitments
Read emailwith taskassignment Technician
determines pumpavailability and estimates downtime
Assign inspectiontask totechnician
Start inspectionand document items
Technician orders pump, instantiates work process and submits inspectionDocumentation to the portal
Engineer and technician determine course of action consult with Production Planning
Open newinspectionform
Identifiespump is outof operatingparameters
Engineer consultsequipmentmanufacturerwith problem -online
Get P&ID from portalto find specificInstrument to inspect
Requestonline supportfrom theengineer via IM
Production Planningconfers with trading andProduct commitments
Read emailwith taskassignment
Bridgingthe gap
Other Industries Employ Mass CustomizationUbiquitous Integration is a Ubiquitous Integration is a mustmust to to the Automotive Businessthe Automotive Business……
Source: Automotive News 2003
Copyright © 2003,Automotive News
The BMW factory The BMW factory produces 800 cars and produces 800 cars and 1250 engines a day – 1250 engines a day – each one built to ordereach one built to order
The BMW factory The BMW factory produces 800 cars and produces 800 cars and 1250 engines a day – 1250 engines a day – each one built to ordereach one built to order
The number of possible The number of possible variants of is approximately variants of is approximately 10 to the 1310 to the 13
The number of possible The number of possible variants of is approximately variants of is approximately 10 to the 1310 to the 13
On average, no more than On average, no more than a handful of cars are a handful of cars are produced with exactly the produced with exactly the same features in a yearsame features in a year
On average, no more than On average, no more than a handful of cars are a handful of cars are produced with exactly the produced with exactly the same features in a yearsame features in a year
Why Can’t We Do This Why Can’t We Do This With Software?With Software?Why Can’t We Do This Why Can’t We Do This With Software?With Software?
The Alignment Problem
• Different suppliers take different approachesto development• Different ways of defining requirements
• Different ways of partitioning systems into components
• Different ways of using platform technologies
• Different ways of deploying system componentsonto platform technologies
• Different ways of testing system components
• Different ways of customizing system features
The Alignment Problem
• Different approaches make it hard to integrate their products to create solutions• Hard to verify solutions assembled across
multiple suppliers
• Hard to determine impact of changes in requirements
• Hard to determine what customizations were madefor a given customer
• Hard to migrate customizations to new versionsof the solution
• Hard to coordinate activities to deliver custom features
Mass Customization in Software Development
• Evolution from ad-hoc development to globally optimized supply chains
• Ad-hoc vs. industrialized software development
• The importance of standardized metadata in building a supply chain
• Vertical partitioning in a supply chain
• Horizontal partitioning in a supply chain
• Local vs. global optimization
The Road to Mass CustomizationGlobally Optimized Supply Chains
Aligned Suppliers
Suppliersas Services
SoftwareFactories
Ad Hoc Development
IndustrializeDevelopmentIndustrializeDevelopment
PublishFactory Metadata
PublishFactory Metadata
Form Supply ChainsForm Supply Chains
MassCustomizeMassCustomize
Industrialize Development
• Development is labor intensive• Mistakes are repeated and lessons
are relearned• Every project starts from scratch• Requirements are poorly defined
• Model key work products, processes and assets
• Accelerate development with model driven tools and other resources
• Develop solutions by assembly and customization
Ad Hoc Development Software Factories
Publish Factory Metadata
• Different suppliers use different factories
• No easy way to share factory metadata
• Standardize externally facing processes and artifacts
• Publish factory metadata using web services
Opaque Suppliers Suppliers As Services
Form Supply Chains
• Different suppliers use different products and technologies
• Products from multiple suppliers require ad hoc integration
• Aligned suppliers use the same products and technologies
• Products from those suppliers integrate in known ways
Misaligned Suppliers Aligned Suppliers
creates
From Factories To Supply Chains
Tools, Process, Tools, Process, ContentContentTools, Process, Tools, Process, ContentContent
creates
uses
Requirements, Requirements, DefectsDefectsRequirements, Requirements, DefectsDefects
uses
creates
Product Product DevelopmentDevelopmentProduct Product DevelopmentDevelopment
Factory Factory DevelopmentDevelopmentFactory Factory DevelopmentDevelopment
BusinessBusinessBusinessBusinesscreates uses
ProductsProductsProductsProducts
usesRequirements, Requirements, DefectsDefectsRequirements, Requirements, DefectsDefects
Factory Factory DevelopmentDevelopmentFactory Factory DevelopmentDevelopment
Factory Factory DevelopmentDevelopmentFactory Factory DevelopmentDevelopment
VerticalVerticalPartitionPartition
VerticalVerticalPartitionPartition
HorizontalHorizontalPartitionPartition
Horizontal Partitioning
• Separate factory and product development
• Outsource product development using factories developed in-house• Example: a factory built by Big Vendor is used by an
offshore services company
• Use factories supplied by a third party to develop products in-house • Example: Financial Services Firm uses a factory built by Big
Vendor
Vertical Partitioning
• Partition factory development
• Purchase assets from upstream suppliers • Example: Financial Services Firm uses assets
from CRM Vendor
• Sell assets to downstream suppliers • Example: Financial Services Firm supplies assets to
be used by Systems Integration Corp.
• Creates B2B relationships when assets areservice based• Suppliers deliver stubs to hosted services
not embedded components
Mass Customize
• Local optimization creates bottlenecks
• Suppliers respond individually as changes propagate
• Optimize globally to eliminate bottlenecks
• Suppliers respond collectively to changes based on market conditions
Locally optimizedsupply chains
Globally optimizedsupply chains
Implementing Supply Chains
• Groups of software factories you might find in a solution supply chain and understand their roles
• Examples of specific types of software factories you would find in each group
• Product Lifecycle Management as an example industry domain
• Prerequisites to building solution supply chains
Finite ElementFinite ElementAnalysisAnalysisFactoryFactory
Solution Supply Chains
SoftwareSoftwareFactoryFactoryPlatformPlatform
SoftwareSoftwareFactoryFactoryPlatformPlatform
Architectural Architectural FactoriesFactories
2D Engine2D EngineFactoryFactory
3D Engine3D EngineFactoryFactory
StorageStorageFactoryFactory
ViewingViewingEngineEngineFactoryFactory
WorkflowWorkflowFactoryFactory
CollaborationCollaborationFactoryFactory
PortalPortalFactoryFactory
specializespecialize
useuse
An architectural factory An architectural factory defines architectural style defines architectural style and deployment topology and deployment topology for a familyfor a family
An architectural factory An architectural factory defines architectural style defines architectural style and deployment topology and deployment topology for a familyfor a family
Software factory Software factory platform is used to build platform is used to build architectural factoriesarchitectural factories
Software factory Software factory platform is used to build platform is used to build architectural factoriesarchitectural factories
useusecreatecreate
Solution Supply Chains
DiscreteDiscretePLMPLMFactoryFactory
DiscreteDiscretePLMPLMFactoryFactory
AerospaceAerospacePLMPLMFactoryFactory
AerospaceAerospacePLMPLMFactoryFactory
Finite ElementFinite ElementAnalysisAnalysisFactoryFactory
SoftwareSoftwareFactoryFactoryInfrastructureInfrastructure
SoftwareSoftwareFactoryFactoryInfrastructureInfrastructure
CADCADFactoryFactoryCADCADFactoryFactory
EDMEDMFactoryFactoryEDMEDMFactoryFactory
PDMPDMFactoryFactoryPDMPDMFactoryFactory
Architectural Architectural FactoriesFactories
CAMCAMFactoryFactoryCAMCAMFactoryFactory
2D Engine2D EngineFactoryFactory
3D Engine3D EngineFactoryFactory
PLMPLMSolutionSolutionFactoryFactory
PLMPLMSolutionSolutionFactoryFactory
AutomotiveAutomotivePLMPLMFactoryFactory
AutomotiveAutomotivePLMPLMFactoryFactory
Functional FactoriesFunctional Factories
IndustryIndustryFactoriesFactories
StorageStorageFactoryFactory
ViewingViewingEngineEngineFactoryFactory
WorkflowWorkflowFactoryFactory
CollaborationCollaborationFactoryFactory
PortalPortalFactoryFactory
CIMCIMFactoryFactoryCIMCIMFactoryFactory
ProcessProcessPLMPLMFactoryFactory
ProcessProcessPLMPLMFactoryFactory
specializespecialize
useuse
talkstalks
useuse
ERPERPFactoryFactory
SCMSCMFactoryFactory
CRMCRMFactoryFactory
ManufacturingManufacturingPLMPLMFactoryFactory
ManufacturingManufacturingPLMPLMFactoryFactory
useuse
specializespecialize
useuse
useuse
createcreate
useuse
Functional factories begin Functional factories begin to appear as supply chain to appear as supply chain maturesmatures
Functional factories begin Functional factories begin to appear as supply chain to appear as supply chain maturesmatures
ERP, SCM, CRM are ERP, SCM, CRM are functional factories that functional factories that interact closely with interact closely with industry factoriesindustry factories
ERP, SCM, CRM are ERP, SCM, CRM are functional factories that functional factories that interact closely with interact closely with industry factoriesindustry factories
Industry factories Industry factories are used to deliver are used to deliver end customer end customer solutionssolutions
Industry factories Industry factories are used to deliver are used to deliver end customer end customer solutionssolutions
Supply Chain Prerequisites
• Feature based requirements engineering• Required for reasoning about variability and
inter-dependencies among requirements
• Unambiguous architecture specification• Required for systematic development
by assembly with adaptation
• Maturation of service oriented technologies• Required for reasoning about operational qualities
of component assemblies and for assembly by orchestration and generative adaptation
Next Level
• Mass Customization: The New Frontier in Business Competition• Joseph Pine; Harvard Business School Press; ISBN: 0-87584-
946-6
• Build-to-Order & Mass Customization• David Anderson; CIM Press; ISBN: 1-878072-30-7
• Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools• http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dn
bda/html/softfact3.asp
• Jack Greenfield, Keith Short, Steve Cook, Stuart Kent; Wiley; ISBN: 0-471-20284-3
Summary
• Supply chains and mass customization work well in other mature industries
• Misalignment between software suppliers and consumers precludes this in contemporary software development
• Software factories provide a step on the road to supply chains and mass customization in software
• Publishing key life cycle metadata using standard formats is a prerequisite to supply chain formation
• Supply chains can be partitioned horizontally or vertically
Homework
• Are you a supplier, consumer or both?
• Do you form part of a supply chain?• How easy or difficult is it for you to
integrate 3rd party software into your product...
• ...or have your software integrated by others?
• What would make it easier, why, and what changes would be needed to make it happen?