SlideShare a Scribd company logo
© 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?
Ad

More Related Content

What's hot (20)

Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
IBM UrbanCode Products
 
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
IBM 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 Business
Sanjeev Sharma
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOps
Sanjeev 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_cust
dennisn129
 
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
IBM 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 bottlenecks
Sanjeev 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 Roadmap
IBM 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 Cloud
IBM 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 Deploy
Claudia Ring
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reduction
Chris 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 Dots
IBM UrbanCode Products
 
PureApplication: Devops and Urbancode
PureApplication: Devops and UrbancodePureApplication: Devops and Urbancode
PureApplication: Devops and Urbancode
John 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 slides
IBM 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 DevOps
Sanjeev Sharma
 
Continuous Delivery in the Enterprise
Continuous Delivery in the EnterpriseContinuous Delivery in the Enterprise
Continuous Delivery in the Enterprise
IBM UrbanCode Products
 
XL Deploy Demo Slides
XL Deploy Demo SlidesXL Deploy Demo Slides
XL Deploy Demo Slides
XebiaLabs
 
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
IBM 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 Business
Sanjeev Sharma
 
How NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOpsHow NBCUniversal Adopted DevOps
How NBCUniversal Adopted DevOps
Sanjeev 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_cust
dennisn129
 
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
IBM 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 bottlenecks
Sanjeev 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 Roadmap
IBM 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 Cloud
IBM 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 Deploy
Claudia Ring
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reduction
Chris 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 Dots
IBM UrbanCode Products
 
PureApplication: Devops and Urbancode
PureApplication: Devops and UrbancodePureApplication: Devops and Urbancode
PureApplication: Devops and Urbancode
John 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 slides
IBM 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 DevOps
Sanjeev Sharma
 
XL Deploy Demo Slides
XL Deploy Demo SlidesXL Deploy Demo Slides
XL Deploy Demo Slides
XebiaLabs
 

Similar to 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
Perforce
 
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
Perforce
 
Challenges Scaling DevOps
Challenges Scaling DevOpsChallenges Scaling DevOps
Challenges Scaling DevOps
Rachel 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 Enterprise
Perforce
 
Configuration Management is Old and Boring
Configuration Management is Old and BoringConfiguration Management is Old and Boring
Configuration Management is Old and Boring
Mandi Walls
 
ClearCase Escape Plan
ClearCase Escape PlanClearCase Escape Plan
ClearCase Escape Plan
Perforce
 
Bomt model- Technology Business Accelerator
Bomt model- Technology Business AcceleratorBomt model- Technology Business Accelerator
Bomt model- Technology Business Accelerator
Leo TechnoSoft
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays
 
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
Rogue 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 DevOps
Perforce
 
Pain points of agile development
Pain points of agile developmentPain points of agile development
Pain points of agile development
Perforce
 
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
 
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
dennisn129CBN
 
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
Mike 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 Infotech
Calidad Infotech
 
From monolith to multi-services, how a platform engineering approach transfor...
From monolith to multi-services, how a platform engineering approach transfor...From monolith to multi-services, how a platform engineering approach transfor...
From monolith to multi-services, how a platform engineering approach transfor...
Arnaud Héritier
 
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
Cedar 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
 
Webinar: The Acceleration of Everything
Webinar: The Acceleration of EverythingWebinar: The Acceleration of Everything
Webinar: The Acceleration of Everything
Perforce
 
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
Perforce
 
Challenges Scaling DevOps
Challenges Scaling DevOpsChallenges Scaling DevOps
Challenges Scaling DevOps
Rachel 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 Enterprise
Perforce
 
Configuration Management is Old and Boring
Configuration Management is Old and BoringConfiguration Management is Old and Boring
Configuration Management is Old and Boring
Mandi Walls
 
ClearCase Escape Plan
ClearCase Escape PlanClearCase Escape Plan
ClearCase Escape Plan
Perforce
 
Bomt model- Technology Business Accelerator
Bomt model- Technology Business AcceleratorBomt model- Technology Business Accelerator
Bomt model- Technology Business Accelerator
Leo TechnoSoft
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays
 
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
Rogue 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 DevOps
Perforce
 
Pain points of agile development
Pain points of agile developmentPain points of agile development
Pain points of agile development
Perforce
 
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
 
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
dennisn129CBN
 
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
Mike 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 Infotech
Calidad Infotech
 
From monolith to multi-services, how a platform engineering approach transfor...
From monolith to multi-services, how a platform engineering approach transfor...From monolith to multi-services, how a platform engineering approach transfor...
From monolith to multi-services, how a platform engineering approach transfor...
Arnaud Héritier
 
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
Cedar 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
 
Ad

More from 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
Perforce
 
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 SOPs
Perforce
 
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 Workflow
Perforce
 
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
Perforce
 
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
Perforce
 
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 2
Perforce
 
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.4
Perforce
 
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 2019
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 Needs
Perforce
 
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 SOPs
Perforce
 
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 Workflow
Perforce
 
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
Perforce
 
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
Perforce
 
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 2
Perforce
 
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.4
Perforce
 
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 2019
Perforce
 
Ad

Recently uploaded (20)

WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
How can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptxHow can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptx
laravinson24
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
Kubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptxKubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptx
CloudScouts
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
ssuserb14185
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
How can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptxHow can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptx
laravinson24
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
Kubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptxKubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptx
CloudScouts
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
ssuserb14185
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 

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