SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
© 2019 Perforce Software, Inc.
Should You Break Up Your Monolith?
TOM TYLER AND CHUCK GEHMAN | NOVEMBER 2019
perforce.com2 | © 2019 Perforce Software, Inc.
Speakers
Chuck Gehman
Technical Marketing Engineer, Perforce Software
Chuck is a Technical Marketing Engineer at Perforce. He has
worked as a CTO, architect, developer, and product leader
in startups and large enterprises. When he has spare time,
he enjoys volunteering for technology education initiatives,
attending Meetups, and writing.
Tom Tyler
Senior Consultant, Perforce Software
After starting his career at the NASA Kennedy Space Center,
Tom has consulted as a software developer and development
environment architect in many software development
organizations. Tom is passionate about training, mentoring,
and consulting with Perforce customers large and small.
perforce.com3 | © 2019 Perforce Software, Inc.
Should You Break Up Your Monolith?
1
2
3
4
Why Break Up the Monolith?
Constructing the Right Approach
Implementing New Tools
Solving for the Legacy
perforce.com4 | © 2019 Perforce Software, Inc.
• Need to:
• Modernize technology.
• Deliver value to customers more quickly.
• Address pain points:
• System is too difficult to maintain.
• Inability to identify issues quickly.
• Long delays in handoffs between dev, QA, and
operations.
• Too many defects released to production.
• Cannot find developers to work on fragile, legacy
code base.
• Stifling innovation.
Why Break Up the Monolith?
perforce.com5 | © 2019 Perforce Software, Inc.
• Monolith is probably generating enormous
amounts of revenue for the company.
• But customers want more, new features.
• Rising fear of disruptive competitors.
• Business risks in upgrading your monolith:
• Delays to development.
• Concerns with new architecture working.
• Stability/reliability.
• Refactoring is a multi-year project.
Risks and Pain Points
Constructing The Right Approach
perforce.com7 | © 2019 Perforce Software, Inc.
• Steps for a less painful migration:
• Assess low-hanging fruit.
• Break-off and refactor after you migrate.
• Attack a component/package/service in a logical order.
• Adopt new tools throughout the process.
• Goal = Support both the old and the new models
simultaneously.
Constructing a New Environment
perforce.com8 | © 2019 Perforce Software, Inc.
1. Start with capabilities of the monolith that are decoupled and don’t require changes to customer-facing apps.
2. Focus on delivery approaches, upskilling team members.
3. Build out minimum infrastructure needed to deliver independently deployable components (e.g., containerized
microservices) that expose self-service APIs.
4. Start tracking technical issues for new and legacy:
• Counting errors released to production
• Service availability
• Time to remediate, etc.
5. Consider cloud deployment options (as appropriate).
6. Implement basic monitoring for new and legacy.
7. Implement automation wherever possible.
8. Migrate in atomic steps.
Step-By-Step Approach
Implementing New Tooling
perforce.com10 | © 2019 Perforce Software, Inc.
• Review existing tools and process.
• Look at direct costs of licenses, maintenance, and hardware as well as personnel time that can be recovered.
• What challenges do your teams face?
• Speed?
• Scale?
• Supporting multiple facilities?
• Integration with popular DevOps tools?
• Legacy hardware?
• Build out the underlying infrastructure to support modern architecture:
• Version control.
• CI/CD pipelines.
• API management.
Review the Current State and Goals
perforce.com11 | © 2019 Perforce Software, Inc.
• Issues with keeping old legacy tooling around forever:
• Keep paying license costs.
• Run the risk of admin retiring, and difficulty hiring new admins.
• Performance and automation disadvantages.
• Some may want to try to move the legacy codebase to Git.
• Git lacks the ability to support dimensions of scale:
• Number of people.
• Number of projects.
• Size of files.
• Size of repositories.
• Number of geographic locations.
Review Your Choices
perforce.com12 | © 2019 Perforce Software, Inc.
• Is Git great for microservices?
• Yes, it is used by many companies today.
• Is Git a great place to migrate the monolith codebase and legacy production workflow?
• Not so much.
• To move into Git, you would have to do years’ worth of work FIRST,
and then try to migrate.
• You don’t have time to wait.
Is Git the Best Option?
perforce.com13 | © 2019 Perforce Software, Inc.
• You can develop for the future and maintain the legacy with the right VCS –– Helix Core.
• Helix Core serves the needs of the old and new code base, in a unified system.
• Helix Core can handle the entire monolith “as-is” without requiring major refactoring first.
• Just import and GO! No barriers, no risk.
• No immediate need to break up your monolith.
• Once in Helix Core, you can methodically attack a component/package/service one at a time.
• The tooling/process should support your transition seamlessly.
• If you are trying to migrate some of these components/packages to a Git based solution:
• Do this seamlessly using Helix4Git without impacting the build & release process.
• Flexibility to manage the carved out components in Helix Core, or any Git management tool.
The Right VCS
HELIX CORE
Solving for the Legacy
perforce.com15 | © 2019 Perforce Software, Inc.
• High-level migration strategies –– how much history do you
need?
• Tips.
• Detailed History Import (DHI).
• Baseline and Branch Import (BBI).
• ClearCase to Perforce Migration.
• SVN to Perforce Migration.
• Steps for Your Complex Project.
What Should You do With Legacy Code?
perforce.com16 | © 2019 Perforce Software, Inc.
• Tips Only:
• Copy tips into new system.
• Baseline & Branch Import (BBI):
• Bring along only “interesting” history.
• Baselines and high-level branch operations.
• Detailed History Import (DHI)
• Bring historical details into Helix Core.
How Much History Do You Need?
perforce.com17 | © 2019 Perforce Software, Inc.
How Much History Do You Need?
• Detailed History Import (DHI): • Baseline and Branch Import:
perforce.com18 | © 2019 Perforce Software, Inc.
• VOBs and Depots.
• ClearCase MultiSite/Regions.
• VOBs Servers vs. “The Server (Super VOB).”
• Registry and license servers.
• Not necessary in Perforce.
• Rethinking label strategies.
• Take advantage of lightweight, automatic labels in Helix Core.
• Leverage the power of the changelist!
• Unified Change Management (UCM) vs. Perforce Streams:
• Helix Core gives you branching and merging with guardrails that you define.
• Technical Challenges:
• For example, “Evil Twins.”
ClearCase to Perforce Migration
perforce.com19 | © 2019 Perforce Software, Inc.
• Options are similar to ClearCase migrations.
• Benefits of Migrating:
• Major performance enhancements.
• Replication around the globe.
• Conflict-free merges (saves time and money).
• Enables parallel development at scale.
• Makes your entire team more productive.
• Migration Challenges:
• Big repos take resources to move over (especially with DHI imports).
• Fully supported tools available to help migrate.
SVN to Perforce Migration
perforce.com20 | © 2019 Perforce Software, Inc.
• Step 1: Choose a new version control system that
provides the foundation for both legacy systems and
forward-looking development.
• Step 2: Methodically plan and choose the parts of
the monolith that can transition to a more modern
architecture and have the best impact on the
business.
• Step 3: Along the way, use integration with best of
class tools (existing and new) for both legacy and
new.
• Automate your enterprise SDLC.
• Reduce risk and optimize productivity.
• Achieve lower tooling costs along the way!
Conclusion: Simple Steps For Your Complex Project
Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

A Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for DatabasesA Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for DatabasesIBM UrbanCode Products
 
DevOps Thinking for the Line of Business
DevOps Thinking for the Line of BusinessDevOps Thinking for the Line of Business
DevOps Thinking for the Line of BusinessSanjeev Sharma
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsSanjeev Sharma
 
IBM InterConnect 2016: Security for DevOps in an Enterprise
IBM InterConnect 2016: Security for DevOps in an Enterprise IBM InterConnect 2016: Security for DevOps in an Enterprise
IBM InterConnect 2016: Security for DevOps in an Enterprise Sanjeev Sharma
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_custdennisn129
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeIBM UrbanCode Products
 
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksUsing Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksSanjeev Sharma
 
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapGet Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapIBM UrbanCode Products
 
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...Sanjeev Sharma
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudIBM UrbanCode Products
 
Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...IBM UrbanCode Products
 
Hybrid Cloud DevOps with Apprenda and UrbanCode Deploy
Hybrid Cloud DevOps with Apprenda and UrbanCode DeployHybrid Cloud DevOps with Apprenda and UrbanCode Deploy
Hybrid Cloud DevOps with Apprenda and UrbanCode DeployClaudia Ring
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reductionChris Sparshott
 
UrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsUrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsIBM UrbanCode Products
 
PureApplication: Devops and Urbancode
PureApplication: Devops and UrbancodePureApplication: Devops and Urbancode
PureApplication: Devops and UrbancodeJohn Hawkins
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesIBM Rational software
 
From DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOpsFrom DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOpsSanjeev Sharma
 
XL Deploy Demo Slides
XL Deploy Demo SlidesXL Deploy Demo Slides
XL Deploy Demo SlidesXebiaLabs
 

Was ist angesagt? (20)

Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
 
A Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for DatabasesA Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for Databases
 
DevOps Thinking for the Line of Business
DevOps Thinking for the Line of BusinessDevOps Thinking for the Line of Business
DevOps Thinking for the Line of Business
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOps
 
IBM InterConnect 2016: Security for DevOps in an Enterprise
IBM InterConnect 2016: Security for DevOps in an Enterprise IBM InterConnect 2016: Security for DevOps in an Enterprise
IBM InterConnect 2016: Security for DevOps in an Enterprise
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCode
 
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksUsing Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
 
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapGet Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
 
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to Cloud
 
Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...
 
Hybrid Cloud DevOps with Apprenda and UrbanCode Deploy
Hybrid Cloud DevOps with Apprenda and UrbanCode DeployHybrid Cloud DevOps with Apprenda and UrbanCode Deploy
Hybrid Cloud DevOps with Apprenda and UrbanCode Deploy
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reduction
 
UrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsUrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the Dots
 
PureApplication: Devops and Urbancode
PureApplication: Devops and UrbancodePureApplication: Devops and Urbancode
PureApplication: Devops and Urbancode
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slides
 
From DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOpsFrom DevOps to DevSecOps: 2 Dimensions of Security for DevOps
From DevOps to DevSecOps: 2 Dimensions of Security for DevOps
 
Continuous Delivery in the Enterprise
Continuous Delivery in the EnterpriseContinuous Delivery in the Enterprise
Continuous Delivery in the Enterprise
 
XL Deploy Demo Slides
XL Deploy Demo SlidesXL Deploy Demo Slides
XL Deploy Demo Slides
 

Ähnlich wie Should You Break Up With Your Monolith?

Webinar: The Acceleration of Everything
Webinar: The Acceleration of EverythingWebinar: The Acceleration of Everything
Webinar: The Acceleration of EverythingPerforce
 
Branching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessBranching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessPerforce
 
Challenges Scaling DevOps
Challenges Scaling DevOpsChallenges Scaling DevOps
Challenges Scaling DevOpsRachel Maxwell
 
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterpriseBetter, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterprisePerforce
 
Configuration Management is Old and Boring
Configuration Management is Old and BoringConfiguration Management is Old and Boring
Configuration Management is Old and BoringMandi Walls
 
ClearCase Escape Plan
ClearCase Escape PlanClearCase Escape Plan
ClearCase Escape PlanPerforce
 
Bomt model- Technology Business Accelerator
Bomt model- Technology Business AcceleratorBomt model- Technology Business Accelerator
Bomt model- Technology Business AcceleratorLeo TechnoSoft
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous IntegrationXPDays
 
5 strategies for enterprise cloud infrastructure success
5 strategies for enterprise cloud infrastructure success5 strategies for enterprise cloud infrastructure success
5 strategies for enterprise cloud infrastructure successRogue Wave Software
 
Five Pain Points of Agile Development (And How Software Version Management Ca...
Five Pain Points of Agile Development (And How Software Version Management Ca...Five Pain Points of Agile Development (And How Software Version Management Ca...
Five Pain Points of Agile Development (And How Software Version Management Ca...Perforce
 
How to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsHow to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsPerforce
 
Pain points of agile development
Pain points of agile developmentPain points of agile development
Pain points of agile developmentPerforce
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsEnterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsCollabNet
 
CollabNet Houston Workshop Live Enterpise agility_11.12.14
CollabNet Houston Workshop Live Enterpise agility_11.12.14CollabNet Houston Workshop Live Enterpise agility_11.12.14
CollabNet Houston Workshop Live Enterpise agility_11.12.14dennisn129CBN
 
Comparing Legacy and Modern e-commerce solutions
Comparing Legacy and Modern e-commerce solutionsComparing Legacy and Modern e-commerce solutions
Comparing Legacy and Modern e-commerce solutionsMike Ensor
 
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...TomHalpin9
 
Why DevOps is important for start-ups? | Calidad Infotech
Why DevOps is important for start-ups? | Calidad InfotechWhy DevOps is important for start-ups? | Calidad Infotech
Why DevOps is important for start-ups? | Calidad InfotechCalidad Infotech
 
Cedar Day 2018 - Cloud IaaS - Ken MacMahon
Cedar Day 2018 - Cloud IaaS - Ken MacMahonCedar Day 2018 - Cloud IaaS - Ken MacMahon
Cedar Day 2018 - Cloud IaaS - Ken MacMahonCedar Consulting
 
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...DevOps.com
 
Unexpected benefits of .net development outsourcing. 2
Unexpected benefits of .net development outsourcing. 2Unexpected benefits of .net development outsourcing. 2
Unexpected benefits of .net development outsourcing. 2AnupamSingh211
 

Ähnlich wie Should You Break Up With Your Monolith? (20)

Webinar: The Acceleration of Everything
Webinar: The Acceleration of EverythingWebinar: The Acceleration of Everything
Webinar: The Acceleration of Everything
 
Branching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessBranching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development Process
 
Challenges Scaling DevOps
Challenges Scaling DevOpsChallenges Scaling DevOps
Challenges Scaling DevOps
 
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterpriseBetter, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
 
Configuration Management is Old and Boring
Configuration Management is Old and BoringConfiguration Management is Old and Boring
Configuration Management is Old and Boring
 
ClearCase Escape Plan
ClearCase Escape PlanClearCase Escape Plan
ClearCase Escape Plan
 
Bomt model- Technology Business Accelerator
Bomt model- Technology Business AcceleratorBomt model- Technology Business Accelerator
Bomt model- Technology Business Accelerator
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
5 strategies for enterprise cloud infrastructure success
5 strategies for enterprise cloud infrastructure success5 strategies for enterprise cloud infrastructure success
5 strategies for enterprise cloud infrastructure success
 
Five Pain Points of Agile Development (And How Software Version Management Ca...
Five Pain Points of Agile Development (And How Software Version Management Ca...Five Pain Points of Agile Development (And How Software Version Management Ca...
Five Pain Points of Agile Development (And How Software Version Management Ca...
 
How to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsHow to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOps
 
Pain points of agile development
Pain points of agile developmentPain points of agile development
Pain points of agile development
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsEnterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using Jenkins
 
CollabNet Houston Workshop Live Enterpise agility_11.12.14
CollabNet Houston Workshop Live Enterpise agility_11.12.14CollabNet Houston Workshop Live Enterpise agility_11.12.14
CollabNet Houston Workshop Live Enterpise agility_11.12.14
 
Comparing Legacy and Modern e-commerce solutions
Comparing Legacy and Modern e-commerce solutionsComparing Legacy and Modern e-commerce solutions
Comparing Legacy and Modern e-commerce solutions
 
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...
 
Why DevOps is important for start-ups? | Calidad Infotech
Why DevOps is important for start-ups? | Calidad InfotechWhy DevOps is important for start-ups? | Calidad Infotech
Why DevOps is important for start-ups? | Calidad Infotech
 
Cedar Day 2018 - Cloud IaaS - Ken MacMahon
Cedar Day 2018 - Cloud IaaS - Ken MacMahonCedar Day 2018 - Cloud IaaS - Ken MacMahon
Cedar Day 2018 - Cloud IaaS - Ken MacMahon
 
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
 
Unexpected benefits of .net development outsourcing. 2
Unexpected benefits of .net development outsourcing. 2Unexpected benefits of .net development outsourcing. 2
Unexpected benefits of .net development outsourcing. 2
 

Mehr von Perforce

How to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsHow to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsPerforce
 
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...Perforce
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Perforce
 
Understanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsUnderstanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsPerforce
 
How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog Perforce
 
Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Perforce
 
Shift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowShift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowPerforce
 
Hybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldHybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldPerforce
 
Easier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMEasier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMPerforce
 
How To Master Your Mega Backlog
How To Master Your Mega Backlog How To Master Your Mega Backlog
How To Master Your Mega Backlog Perforce
 
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Perforce
 
How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure Perforce
 
Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Perforce
 
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Perforce
 
What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4Perforce
 
Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Perforce
 
5 Ways to Accelerate Standards Compliance with Static Code Analysis
5 Ways to Accelerate Standards Compliance with Static Code Analysis 5 Ways to Accelerate Standards Compliance with Static Code Analysis
5 Ways to Accelerate Standards Compliance with Static Code Analysis Perforce
 
Code Quality Management Best Practices
Code Quality Management Best Practices Code Quality Management Best Practices
Code Quality Management Best Practices Perforce
 
Scale Kanban Beyond Team Level
Scale Kanban Beyond Team Level Scale Kanban Beyond Team Level
Scale Kanban Beyond Team Level Perforce
 
Revealed: The State of Automotive Software Development in 2019
Revealed: The State of Automotive Software Development in 2019Revealed: The State of Automotive Software Development in 2019
Revealed: The State of Automotive Software Development in 2019Perforce
 

Mehr von Perforce (20)

How to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsHow to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning Needs
 
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
 
Understanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsUnderstanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPs
 
How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog
 
Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team
 
Shift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowShift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New Workflow
 
Hybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldHybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated World
 
Easier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMEasier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALM
 
How To Master Your Mega Backlog
How To Master Your Mega Backlog How To Master Your Mega Backlog
How To Master Your Mega Backlog
 
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
 
How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure
 
Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2
 
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
 
What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4
 
Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison
 
5 Ways to Accelerate Standards Compliance with Static Code Analysis
5 Ways to Accelerate Standards Compliance with Static Code Analysis 5 Ways to Accelerate Standards Compliance with Static Code Analysis
5 Ways to Accelerate Standards Compliance with Static Code Analysis
 
Code Quality Management Best Practices
Code Quality Management Best Practices Code Quality Management Best Practices
Code Quality Management Best Practices
 
Scale Kanban Beyond Team Level
Scale Kanban Beyond Team Level Scale Kanban Beyond Team Level
Scale Kanban Beyond Team Level
 
Revealed: The State of Automotive Software Development in 2019
Revealed: The State of Automotive Software Development in 2019Revealed: The State of Automotive Software Development in 2019
Revealed: The State of Automotive Software Development in 2019
 

Kürzlich hochgeladen

Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 

Kürzlich hochgeladen (20)

Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 

Should You Break Up With Your Monolith?

  • 1. © 2019 Perforce Software, Inc. Should You Break Up Your Monolith? TOM TYLER AND CHUCK GEHMAN | NOVEMBER 2019
  • 2. perforce.com2 | © 2019 Perforce Software, Inc. Speakers Chuck Gehman Technical Marketing Engineer, Perforce Software Chuck is a Technical Marketing Engineer at Perforce. He has worked as a CTO, architect, developer, and product leader in startups and large enterprises. When he has spare time, he enjoys volunteering for technology education initiatives, attending Meetups, and writing. Tom Tyler Senior Consultant, Perforce Software After starting his career at the NASA Kennedy Space Center, Tom has consulted as a software developer and development environment architect in many software development organizations. Tom is passionate about training, mentoring, and consulting with Perforce customers large and small.
  • 3. perforce.com3 | © 2019 Perforce Software, Inc. Should You Break Up Your Monolith? 1 2 3 4 Why Break Up the Monolith? Constructing the Right Approach Implementing New Tools Solving for the Legacy
  • 4. perforce.com4 | © 2019 Perforce Software, Inc. • Need to: • Modernize technology. • Deliver value to customers more quickly. • Address pain points: • System is too difficult to maintain. • Inability to identify issues quickly. • Long delays in handoffs between dev, QA, and operations. • Too many defects released to production. • Cannot find developers to work on fragile, legacy code base. • Stifling innovation. Why Break Up the Monolith?
  • 5. perforce.com5 | © 2019 Perforce Software, Inc. • Monolith is probably generating enormous amounts of revenue for the company. • But customers want more, new features. • Rising fear of disruptive competitors. • Business risks in upgrading your monolith: • Delays to development. • Concerns with new architecture working. • Stability/reliability. • Refactoring is a multi-year project. Risks and Pain Points
  • 7. perforce.com7 | © 2019 Perforce Software, Inc. • Steps for a less painful migration: • Assess low-hanging fruit. • Break-off and refactor after you migrate. • Attack a component/package/service in a logical order. • Adopt new tools throughout the process. • Goal = Support both the old and the new models simultaneously. Constructing a New Environment
  • 8. perforce.com8 | © 2019 Perforce Software, Inc. 1. Start with capabilities of the monolith that are decoupled and don’t require changes to customer-facing apps. 2. Focus on delivery approaches, upskilling team members. 3. Build out minimum infrastructure needed to deliver independently deployable components (e.g., containerized microservices) that expose self-service APIs. 4. Start tracking technical issues for new and legacy: • Counting errors released to production • Service availability • Time to remediate, etc. 5. Consider cloud deployment options (as appropriate). 6. Implement basic monitoring for new and legacy. 7. Implement automation wherever possible. 8. Migrate in atomic steps. Step-By-Step Approach
  • 10. perforce.com10 | © 2019 Perforce Software, Inc. • Review existing tools and process. • Look at direct costs of licenses, maintenance, and hardware as well as personnel time that can be recovered. • What challenges do your teams face? • Speed? • Scale? • Supporting multiple facilities? • Integration with popular DevOps tools? • Legacy hardware? • Build out the underlying infrastructure to support modern architecture: • Version control. • CI/CD pipelines. • API management. Review the Current State and Goals
  • 11. perforce.com11 | © 2019 Perforce Software, Inc. • Issues with keeping old legacy tooling around forever: • Keep paying license costs. • Run the risk of admin retiring, and difficulty hiring new admins. • Performance and automation disadvantages. • Some may want to try to move the legacy codebase to Git. • Git lacks the ability to support dimensions of scale: • Number of people. • Number of projects. • Size of files. • Size of repositories. • Number of geographic locations. Review Your Choices
  • 12. perforce.com12 | © 2019 Perforce Software, Inc. • Is Git great for microservices? • Yes, it is used by many companies today. • Is Git a great place to migrate the monolith codebase and legacy production workflow? • Not so much. • To move into Git, you would have to do years’ worth of work FIRST, and then try to migrate. • You don’t have time to wait. Is Git the Best Option?
  • 13. perforce.com13 | © 2019 Perforce Software, Inc. • You can develop for the future and maintain the legacy with the right VCS –– Helix Core. • Helix Core serves the needs of the old and new code base, in a unified system. • Helix Core can handle the entire monolith “as-is” without requiring major refactoring first. • Just import and GO! No barriers, no risk. • No immediate need to break up your monolith. • Once in Helix Core, you can methodically attack a component/package/service one at a time. • The tooling/process should support your transition seamlessly. • If you are trying to migrate some of these components/packages to a Git based solution: • Do this seamlessly using Helix4Git without impacting the build & release process. • Flexibility to manage the carved out components in Helix Core, or any Git management tool. The Right VCS HELIX CORE
  • 14. Solving for the Legacy
  • 15. perforce.com15 | © 2019 Perforce Software, Inc. • High-level migration strategies –– how much history do you need? • Tips. • Detailed History Import (DHI). • Baseline and Branch Import (BBI). • ClearCase to Perforce Migration. • SVN to Perforce Migration. • Steps for Your Complex Project. What Should You do With Legacy Code?
  • 16. perforce.com16 | © 2019 Perforce Software, Inc. • Tips Only: • Copy tips into new system. • Baseline & Branch Import (BBI): • Bring along only “interesting” history. • Baselines and high-level branch operations. • Detailed History Import (DHI) • Bring historical details into Helix Core. How Much History Do You Need?
  • 17. perforce.com17 | © 2019 Perforce Software, Inc. How Much History Do You Need? • Detailed History Import (DHI): • Baseline and Branch Import:
  • 18. perforce.com18 | © 2019 Perforce Software, Inc. • VOBs and Depots. • ClearCase MultiSite/Regions. • VOBs Servers vs. “The Server (Super VOB).” • Registry and license servers. • Not necessary in Perforce. • Rethinking label strategies. • Take advantage of lightweight, automatic labels in Helix Core. • Leverage the power of the changelist! • Unified Change Management (UCM) vs. Perforce Streams: • Helix Core gives you branching and merging with guardrails that you define. • Technical Challenges: • For example, “Evil Twins.” ClearCase to Perforce Migration
  • 19. perforce.com19 | © 2019 Perforce Software, Inc. • Options are similar to ClearCase migrations. • Benefits of Migrating: • Major performance enhancements. • Replication around the globe. • Conflict-free merges (saves time and money). • Enables parallel development at scale. • Makes your entire team more productive. • Migration Challenges: • Big repos take resources to move over (especially with DHI imports). • Fully supported tools available to help migrate. SVN to Perforce Migration
  • 20. perforce.com20 | © 2019 Perforce Software, Inc. • Step 1: Choose a new version control system that provides the foundation for both legacy systems and forward-looking development. • Step 2: Methodically plan and choose the parts of the monolith that can transition to a more modern architecture and have the best impact on the business. • Step 3: Along the way, use integration with best of class tools (existing and new) for both legacy and new. • Automate your enterprise SDLC. • Reduce risk and optimize productivity. • Achieve lower tooling costs along the way! Conclusion: Simple Steps For Your Complex Project