BRINGING DEVOPS TO AN
ENTRENCHED LEGACY
ENVIRONMENT WITH KANBAN
Craeg Strong, CTO
Ariel Partners
June 10, 2021
3:15pm-4:15pm EDT
Virtual
© Copyright Ariel Partners 2021
Confidential
§ Software Development since 1988
§ Large Commercial & Government Projects
§ Kanban Coach / DevOps Engineer
§ Kanban Trainer / SpecFlow Trainer
§ Performance & Scalability Architect
§ Certified Ethical Hacker
§ New York & Washington DC Area
CTO, Ariel Partners
AKT, KCP, KMP, CSM, CSP, CSPO,
ITILv3, PMI-ACP, PMP, CLP, SPC
ICP-ACC, ICP-ATF, PSM-II, PSK
www.arielpartners.com
cstrong@arielpartners.com
@ckstrong1
CRAEG STRONG
2
Confidential © Copyright Ariel Partners 2021
J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
AGENDA
§ Define: DevOps
§ The Project
§ The Case For DevOps
§ Implementing DevOps For Legacy
§ Build Automation
§ Test Automation
§ Deployment Automation
§ Configuration As Code
§ Takeaways, QnA
3
Confidential © Copyright Ariel Partners 2021
DEFINE: DEVOPS
4
Confidential © Copyright Ariel Partners 2021
DevOps (a clipped compound of
"development" and "operations") is a
culture, movement or practice that
emphasizes the collaboration and
communication of both software
developers and other information-
technology (IT) professionals while
automating the process of software
delivery and infrastructure changes.
DevOps - Wikipedia, the free encyclopedia
https://en.wikipedia.org/wiki/DevOps
WHAT IS DEVOPS?
Development
(SOFTWARE
ENGINEERING)
QA
(QUALITY
ASSURANCE)
Operations
DevOps
5
Confidential © Copyright Ariel Partners 2021
J U N E 7–11, 2 0 21
S T R E A M I N G 9:45a m –6 :0 0 pm E T
DEVOPS IN THE LARGE
§ Shared Templates & Frameworks
§ Standards are not Static, Evolve Based on Team
Feedback
§ Multiple Tool chains: Java, .NET, MEAN
TOOLS
§ Emphasis on Collaboration/Trust
§ Encourage New Ideas, Limit Downside via Fail-Fast
§ Blameless Post-Mortems
§ Servant Leadership
§ Efficiency vs Thoroughness Trade-off (ETTO Principle)
CULTURE
§ Cross Training
§ Emphasis on Continuous Learning
§ Transition To Management Not Required for Career
Advancement
§ Lightweight, Adaptable
§ Maximize Throughput, Not Utilization
§ Tight Feedback Loops
§ Continuous Service Improvement
PROCESS
ORGANIZATION
6
Confidential © Copyright Ariel Partners 2021
ASPECTS I WILL FOCUS ON
Build
Automation
Test
Automation
Deployment
Automation
Configuration
As Code
7
Confidential © Copyright Ariel Partners 2021
J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
THE PROJECT
8
Confidential © Copyright Ariel Partners 2021
J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
CRIMINAL JUSTICE PROGRAM
9
Confidential © Copyright Ariel Partners 2021
SYSTEM EVOLVED OVER MANY YEARS
1990
Pilot
DNA
Identification
Act
1994 1998
Client-Server: VB6
SQL
Server
2008 Today
C# VB.Net
Multi-Language
SOA Re-Architecture
VB6
2012
2002
10
Confidential © Copyright Ariel Partners 2021
2M+ Lines
of Code
RapidDNA Support
CHALLENGES INHERENT TO LEGACY ENVIRONMENTS
§ Mission-Critical
§ Heavily Regulated
§ Missing or Out of Date
§ Significant Documentation Requirements
§ Mostly Manual
§ System Not Designed For Testability
§ Resistant to Change
§ Battle Fatigue
§ Optimized For Non-Collaboration
§ May Inhibit Pair Programming
§ Heavyweight, Prescriptive
§ Manually-Intensive Reporting
§ Lengthy Approval Process
§ Skeptical of Open Source
System
Criticality
Documentation
Testing
Staff
Facility
Governance
Procurement
11
Confidential © Copyright Ariel Partners 2021
§ Training, Documentation Assumes New (“Greenfield”) Project
§ Relatively Little Guidance Regarding Legacy (“Brownfield”)
Projects
§ How Can We Release To Production Every Two Weeks Given
A 6-Week Approval Cycle?
§ How Can We Adopt Two Week Sprints When Regression
Testing Consumes The Entire Team For Eight Weeks?
§ Can’t Fix Everything At Once
Agile Training &
Literature
Agile Practices
§ Automation Tools Poorly Supported By Older Platforms
§ Legacy Tends To Be Data-Heavy, Little Tool Support for Data
Validation
§ Business Logic Tends To Be In GUI and Data Layers,
Rendering Traditional Unit Testing Useless
Agile Toolset
§ 1
2
Confidential © Copyright Ariel Partners 2021
CHALLENGES IMPLEMENTING AGILE PRACTICES
IN A LEGACY ENVIRONMENT
WHY WOULD ANYONE SIGN UP FOR THIS
13
Confidential © Copyright Ariel Partners 2021
THE MISSION
14
Confidential © Copyright Ariel Partners 2021
THE CHALLENGE
15
Confidential © Copyright Ariel Partners 2021
THE TEAM
16
Confidential © Copyright Ariel Partners 2021
J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
THE CASE FOR DEVOPS
17
Confidential © Copyright Ariel Partners 2021
1. Understand what makes the service “fit for
purpose”
2. Understand sources of dissatisfaction
regarding current delivery
3. Analyze sources of and nature of demand
4. Analyze current delivery capability
5. Model the service delivery workflow
6. Identify & define classes of service
7. Design the kanban system
8. Socialize design & negotiate implementation
18
Confidential © Copyright Ariel Partners 2021
SYSTEMS THINKING APPROACH TO IMPLEMENTING
KANBAN (STATIK)
Work Item Type Class Of Service
Business User Story Standard
Infrastructure User Story Standard
?
Tier III / Triage Expedited
New Forensic Lab Support Scripts Fixed Date
Hot Fix Expedited
Escaped Defect Expedited
Documentation Deliverable Fixed Date
Documentation Rework Expedited
Technical Chore Intangible
19
Confidential © Copyright Ariel Partners 2021
DEMAND ANALYSIS
When you receive the email it is very
important that you “Click to Accept”
that agreement—it is what gives us
permission to use your content and is
required for us to host your talk!
20
Confidential © Copyright Ariel Partners 2021
SCRUM TOOL SETUP
When you receive the email it is very
important that you “Click to Accept”
that agreement—it is what gives us
permission to use your content and is
required for us to host your talk!
0
5
10
15
20
25
1
2
/
2
2
/
1
4
1
2
/
2
3
/
1
4
1
2
/
2
4
/
1
4
1
2
/
2
5
/
1
4
1
2
/
2
6
/
1
4
1
2
/
2
7
/
1
4
1
2
/
2
8
/
1
4
1
2
/
2
9
/
1
4
1
2
/
3
0
/
1
4
1
2
/
3
1
/
1
4
1
/
1
/
1
5
1
/
2
/
1
5
1
/
3
/
1
5
1
/
4
/
1
5
1
/
5
/
1
5
1
/
6
/
1
5
1
/
7
/
1
5
1
/
8
/
1
5
1
/
9
/
1
5
1
/
1
0
/
1
5
1
/
1
1
/
1
5
1
/
1
2
/
1
5
1
/
1
3
/
1
5
1
/
1
4
/
1
5
1
/
1
5
/
1
5
1
/
1
6
/
1
5
Sprint 5: User Story Completion Curve
Testers
Waiting
For Code
Limited
Time For
Testing
21
Confidential © Copyright Ariel Partners 2021
SCRUM TOOL SETUP
Longer Sprint With
Bigger Batch-Size
Bottleneck
Lots of Blocked
Issues, Defects, and
Rejected Fixes
22
Confidential © Copyright Ariel Partners 2021
INITIAL WORKFLOW
§ Developers Check-in In Code That Breaks the Build
§ High Concentration of Defects: Fixing One Issue Breaks
Two More
§ Automated Tests Too Difficult To Write
§ Deployment To Test Environments Lengthy and Error-Prone
§ Test Set-Up Lengthy and Error-Prone, Tear-Down Usually
Skipped
§ Many False Positive Defects Due To Configuration Issues
23
Confidential © Copyright Ariel Partners 2021
SOURCES OF DISSATISFACTION
24
Confidential © Copyright Ariel Partners 2021
ANALYZED WORKFLOW
25
Confidential © Copyright Ariel Partners 2021
BUILD AUTOMATION
Build Machine
TFS
TeamCity
Binary
Repository
Compile Code Run Tests Package Publish
Compile Code
Branch B
Run Tests
Branch B
Package Branch
B
Publish Branch
B
Compile Code
Branch C
Run Tests
Branch C
Package Branch
C
Publish Branch
C
26
Confidential © Copyright Ariel Partners 2021
TYPICAL BUILD AUTOMATION
Build Machine A
TFS
TeamCity
Binary
Repository
Compile Code
Run Unit Tests
Package Publish
Run SQL Tests
Drivers, Patches
Build Machine B
Compile Code
Branch B
Run Unit Tests
Branch B
Package Branch
B
Publish Branch
B
Run Unit Tests
Branch B
27
Confidential © Copyright Ariel Partners 2021
BUILD AUTOMATION FOR LEGACY SYSTEM
“Build Ready” Step
Has Been
Eliminated
But We Still Have
Significant Quality
Problems
28
Confidential © Copyright Ariel Partners 2021
UPDATED WORKFLOW
J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
TEST AUTOMATION
29
Confidential © Copyright Ariel Partners 2021
GUI
Presentation Logic
Server
Business Logic
DB
SQL (CRUD)
Test
Start
Test
End
ü Minimal Setup
Required
ü Code-Only Tests
ü Very Fast Test
Execution
ü No Side Effects
30
Confidential © Copyright Ariel Partners 2021
TYPICAL TEST AUTOMATION
GUI
Presentation-Side
Business Logic
Server
Data Transfer
DB
SQL
Business Logic
ü Significant Setup
Required
ü Tests Require Database
ü Slow Test Execution
ü Significant Side Effects
Test
Start
Test
End
31
Confidential © Copyright Ariel Partners 2021
TEST AUTOMATION FOR LEGACY SYSTEMS
Build Machine A
TeamCity
Binary
Repository
Compile
Code
Run Unit
Tests
Package Publish
Run SQL
Tests
Drivers, Patches
Prepare
Test DB
Run Tests
Batch 1
Build Machine B
Prepare
Test DB
Run Tests
Batch 2
Build Machine C
Prepare
Test DB
Run Tests
Batch 3
Test DB Image
32
Confidential © Copyright Ariel Partners 2021
INCORPORATING TEST AUTOMATION INTO THE
DEVOPS PIPELINE
TFS
But It Still Takes
Too Long Before
We Can Test
Quality Is
Slowly Starting
To Improve
33
Confidential © Copyright Ariel Partners 2021
UPDATED WORKFLOW
J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
DEPLOYMENT AUTOMATION
34
Confidential © Copyright Ariel Partners 2021
TFS
TeamCity
Version Control
Server Build / CI
Server
Binary
Repository
Developer
Deployment
Service
Tester
35
Confidential © Copyright Ariel Partners 2021
TYPICAL DEPLOYMENT AUTOMATION PIPELINE
Deployment Process
Deployment
Service
Tester
TFS
Developer
PreDeploy.ps1
StopServers
UninstallPreviousVersion
DeleteOldDatabase
Deploy.ps1
RestoreTestDB
InstallSoftware
PostDeploy.ps1
AddTestUsers
ConfigureSettings
CleanupPreviousSession
36
Confidential © Copyright Ariel Partners 2021
DEPLOYMENT AUTOMATION FOR LEGACY SYSTEM
But We Are Still
Getting False
Positive Defects
“Test Setup”
Step Has Been
Eliminated
“Deploy” Step
Has Been
Streamlined
37
Confidential © Copyright Ariel Partners 2021
UPDATED WORKFLOW
J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
CONFIGURATION AS CODE
38
Confidential © Copyright Ariel Partners 2021
Operating Platform: Configuration
Application: Code
Database
Matching Engine
Application Server
Graphical User Interface
39
Confidential © Copyright Ariel Partners 2021
DEPLOYMENTS HAVE TWO PIECES: APPLICATION CODE
AND OPERATING PLATFORM
Web Server Compute
Server
Database
Server
Configure
TFS
Configurations
40
Confidential © Copyright Ariel Partners 2021
CONFIGURATION AS CODE: TYPICAL IMPLEMENTATION
No Step Where
1 OS Install
2 Set Hostname & IP Address
3 Set Time zone
4 Install Active Directory Services Production Only
5 Activate Windows
6 Create Messaging & Temp Folders
7 Configure File Share
8 Set Folder Permissions
9 Set Environment Variables
10 Disable Windows Firewall
11 Enable Remote Desktop Dev/Test Only
12 Configure Active Directory Groups
41
Confidential © Copyright Ariel Partners 2021
CONFIGURING THE OPERATING PLATFORM FOR A
LEGACY SYSTEM (1 OF 2)
No Step Where
13 Install 7-Zip Dev/Test Only
14 Install Octopus Tentacle Dev/Test Only
15 Configure Octopus Tentacle Dev/Test Only
16 Register New Tentacle With Octopus Server Dev/Test Only
17 Install SQL SMO and CLR Packages
18 Install MSMQ
19 Install .NET 3.5
20 Install SQL Server
21 Install IIS
22 Configure FTP/FTPS
23 Configure PKI Certificates
24 Install hMailServer Dev/Test Only,
Single Machine
42
Confidential © Copyright Ariel Partners 2021
CONFIGURING THE OPERATING PLATFORM FOR A
LEGACY SYSTEM (2 OF 2)
STEP ONE
100% Manual
300 Page Document
STEP THREE
The Configurator
STEP TWO
Partially Automated
Individual Scripts
43
Confidential © Copyright Ariel Partners 2021
EVOLUTION OF THE PROCESS
File Shares
Windows SXS
Files
Third Party
Installer Files
Test Environment
Nodes
Targeting
File
Configurator
Script
Configure
DevOps Engineer
44
Confidential © Copyright Ariel Partners 2021
ENTER: THE CONFIGURATOR
Greatly Reduced
Incidence of False
Positive Defects
Configuring New Environment Reduced
Weeks à Hours
Validating Existing Environment Reduced
Days à Minutes
45
Confidential © Copyright Ariel Partners 2021
UPDATED WORKFLOW
1. What DevOps Practices Can Benefit My Project?
§ Build Automation
§ Test Automation
§ Deployment Automation
§ Configuration As Code
2. DevOps for Legacy
§ Challenging, Yet Transformative
3. Kanban System and STATIK
§ Lightweight and Effective Guides
46
Confidential © Copyright Ariel Partners 2021
KEY TAKEAWAYS
47
Confidential © Copyright Ariel Partners 2021
THANK YOU!
Selected Training Offerings
§ Fundamentals of Agile
§ Agile for Leaders & Executives
§ Kanban Management Professional
§ Jira Fundamentals / Intermediate
§ Human Centered Design
§ BDD With Cucumber Acceptance
Testing
§ Agile Estimation, Forecasting, &
Metrics
§ Agile Requirements: Story Mapping,
Story Splitting & Discovery Kanban
§ SRE: Site Reliability Engineering
www.arielpartners.com
cstrong@arielpartners.com
Twitter: @arielpartners
Other Offerings
§ Digital Transformation
§ Cloud Native App Development
§ Agile / Kanban Coaching
§ DevOps Jumpstart
§ Compliance As Code
§ Test Automation Jumpstart
§ Legacy Modernization
§ JIRA Jumpstart

20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Environment with the Kanban Method Craeg Strong Ariel Partners

  • 1.
    BRINGING DEVOPS TOAN ENTRENCHED LEGACY ENVIRONMENT WITH KANBAN Craeg Strong, CTO Ariel Partners June 10, 2021 3:15pm-4:15pm EDT Virtual © Copyright Ariel Partners 2021 Confidential
  • 2.
    § Software Developmentsince 1988 § Large Commercial & Government Projects § Kanban Coach / DevOps Engineer § Kanban Trainer / SpecFlow Trainer § Performance & Scalability Architect § Certified Ethical Hacker § New York & Washington DC Area CTO, Ariel Partners AKT, KCP, KMP, CSM, CSP, CSPO, ITILv3, PMI-ACP, PMP, CLP, SPC ICP-ACC, ICP-ATF, PSM-II, PSK www.arielpartners.com cstrong@arielpartners.com @ckstrong1 CRAEG STRONG 2 Confidential © Copyright Ariel Partners 2021
  • 3.
    J U NE 7–11, 2 0 21 S T R E A M I N G 9:45am–6:00pm E T AGENDA § Define: DevOps § The Project § The Case For DevOps § Implementing DevOps For Legacy § Build Automation § Test Automation § Deployment Automation § Configuration As Code § Takeaways, QnA 3 Confidential © Copyright Ariel Partners 2021
  • 4.
    DEFINE: DEVOPS 4 Confidential ©Copyright Ariel Partners 2021
  • 5.
    DevOps (a clippedcompound of "development" and "operations") is a culture, movement or practice that emphasizes the collaboration and communication of both software developers and other information- technology (IT) professionals while automating the process of software delivery and infrastructure changes. DevOps - Wikipedia, the free encyclopedia https://en.wikipedia.org/wiki/DevOps WHAT IS DEVOPS? Development (SOFTWARE ENGINEERING) QA (QUALITY ASSURANCE) Operations DevOps 5 Confidential © Copyright Ariel Partners 2021
  • 6.
    J U NE 7–11, 2 0 21 S T R E A M I N G 9:45a m –6 :0 0 pm E T DEVOPS IN THE LARGE § Shared Templates & Frameworks § Standards are not Static, Evolve Based on Team Feedback § Multiple Tool chains: Java, .NET, MEAN TOOLS § Emphasis on Collaboration/Trust § Encourage New Ideas, Limit Downside via Fail-Fast § Blameless Post-Mortems § Servant Leadership § Efficiency vs Thoroughness Trade-off (ETTO Principle) CULTURE § Cross Training § Emphasis on Continuous Learning § Transition To Management Not Required for Career Advancement § Lightweight, Adaptable § Maximize Throughput, Not Utilization § Tight Feedback Loops § Continuous Service Improvement PROCESS ORGANIZATION 6 Confidential © Copyright Ariel Partners 2021
  • 7.
    ASPECTS I WILLFOCUS ON Build Automation Test Automation Deployment Automation Configuration As Code 7 Confidential © Copyright Ariel Partners 2021
  • 8.
    J U NE 7–11, 2 0 21 S T R E A M I N G 9:45am–6:00pm E T THE PROJECT 8 Confidential © Copyright Ariel Partners 2021
  • 9.
    J U NE 7–11, 2 0 21 S T R E A M I N G 9:45am–6:00pm E T CRIMINAL JUSTICE PROGRAM 9 Confidential © Copyright Ariel Partners 2021
  • 10.
    SYSTEM EVOLVED OVERMANY YEARS 1990 Pilot DNA Identification Act 1994 1998 Client-Server: VB6 SQL Server 2008 Today C# VB.Net Multi-Language SOA Re-Architecture VB6 2012 2002 10 Confidential © Copyright Ariel Partners 2021 2M+ Lines of Code RapidDNA Support
  • 11.
    CHALLENGES INHERENT TOLEGACY ENVIRONMENTS § Mission-Critical § Heavily Regulated § Missing or Out of Date § Significant Documentation Requirements § Mostly Manual § System Not Designed For Testability § Resistant to Change § Battle Fatigue § Optimized For Non-Collaboration § May Inhibit Pair Programming § Heavyweight, Prescriptive § Manually-Intensive Reporting § Lengthy Approval Process § Skeptical of Open Source System Criticality Documentation Testing Staff Facility Governance Procurement 11 Confidential © Copyright Ariel Partners 2021
  • 12.
    § Training, DocumentationAssumes New (“Greenfield”) Project § Relatively Little Guidance Regarding Legacy (“Brownfield”) Projects § How Can We Release To Production Every Two Weeks Given A 6-Week Approval Cycle? § How Can We Adopt Two Week Sprints When Regression Testing Consumes The Entire Team For Eight Weeks? § Can’t Fix Everything At Once Agile Training & Literature Agile Practices § Automation Tools Poorly Supported By Older Platforms § Legacy Tends To Be Data-Heavy, Little Tool Support for Data Validation § Business Logic Tends To Be In GUI and Data Layers, Rendering Traditional Unit Testing Useless Agile Toolset § 1 2 Confidential © Copyright Ariel Partners 2021 CHALLENGES IMPLEMENTING AGILE PRACTICES IN A LEGACY ENVIRONMENT
  • 13.
    WHY WOULD ANYONESIGN UP FOR THIS 13 Confidential © Copyright Ariel Partners 2021
  • 14.
    THE MISSION 14 Confidential ©Copyright Ariel Partners 2021
  • 15.
    THE CHALLENGE 15 Confidential ©Copyright Ariel Partners 2021
  • 16.
    THE TEAM 16 Confidential ©Copyright Ariel Partners 2021
  • 17.
    J U NE 7–11, 2 0 21 S T R E A M I N G 9:45am–6:00pm E T THE CASE FOR DEVOPS 17 Confidential © Copyright Ariel Partners 2021
  • 18.
    1. Understand whatmakes the service “fit for purpose” 2. Understand sources of dissatisfaction regarding current delivery 3. Analyze sources of and nature of demand 4. Analyze current delivery capability 5. Model the service delivery workflow 6. Identify & define classes of service 7. Design the kanban system 8. Socialize design & negotiate implementation 18 Confidential © Copyright Ariel Partners 2021 SYSTEMS THINKING APPROACH TO IMPLEMENTING KANBAN (STATIK)
  • 19.
    Work Item TypeClass Of Service Business User Story Standard Infrastructure User Story Standard ? Tier III / Triage Expedited New Forensic Lab Support Scripts Fixed Date Hot Fix Expedited Escaped Defect Expedited Documentation Deliverable Fixed Date Documentation Rework Expedited Technical Chore Intangible 19 Confidential © Copyright Ariel Partners 2021 DEMAND ANALYSIS
  • 20.
    When you receivethe email it is very important that you “Click to Accept” that agreement—it is what gives us permission to use your content and is required for us to host your talk! 20 Confidential © Copyright Ariel Partners 2021 SCRUM TOOL SETUP
  • 21.
    When you receivethe email it is very important that you “Click to Accept” that agreement—it is what gives us permission to use your content and is required for us to host your talk! 0 5 10 15 20 25 1 2 / 2 2 / 1 4 1 2 / 2 3 / 1 4 1 2 / 2 4 / 1 4 1 2 / 2 5 / 1 4 1 2 / 2 6 / 1 4 1 2 / 2 7 / 1 4 1 2 / 2 8 / 1 4 1 2 / 2 9 / 1 4 1 2 / 3 0 / 1 4 1 2 / 3 1 / 1 4 1 / 1 / 1 5 1 / 2 / 1 5 1 / 3 / 1 5 1 / 4 / 1 5 1 / 5 / 1 5 1 / 6 / 1 5 1 / 7 / 1 5 1 / 8 / 1 5 1 / 9 / 1 5 1 / 1 0 / 1 5 1 / 1 1 / 1 5 1 / 1 2 / 1 5 1 / 1 3 / 1 5 1 / 1 4 / 1 5 1 / 1 5 / 1 5 1 / 1 6 / 1 5 Sprint 5: User Story Completion Curve Testers Waiting For Code Limited Time For Testing 21 Confidential © Copyright Ariel Partners 2021 SCRUM TOOL SETUP
  • 22.
    Longer Sprint With BiggerBatch-Size Bottleneck Lots of Blocked Issues, Defects, and Rejected Fixes 22 Confidential © Copyright Ariel Partners 2021 INITIAL WORKFLOW
  • 23.
    § Developers Check-inIn Code That Breaks the Build § High Concentration of Defects: Fixing One Issue Breaks Two More § Automated Tests Too Difficult To Write § Deployment To Test Environments Lengthy and Error-Prone § Test Set-Up Lengthy and Error-Prone, Tear-Down Usually Skipped § Many False Positive Defects Due To Configuration Issues 23 Confidential © Copyright Ariel Partners 2021 SOURCES OF DISSATISFACTION
  • 24.
    24 Confidential © CopyrightAriel Partners 2021 ANALYZED WORKFLOW
  • 25.
    25 Confidential © CopyrightAriel Partners 2021 BUILD AUTOMATION
  • 26.
    Build Machine TFS TeamCity Binary Repository Compile CodeRun Tests Package Publish Compile Code Branch B Run Tests Branch B Package Branch B Publish Branch B Compile Code Branch C Run Tests Branch C Package Branch C Publish Branch C 26 Confidential © Copyright Ariel Partners 2021 TYPICAL BUILD AUTOMATION
  • 27.
    Build Machine A TFS TeamCity Binary Repository CompileCode Run Unit Tests Package Publish Run SQL Tests Drivers, Patches Build Machine B Compile Code Branch B Run Unit Tests Branch B Package Branch B Publish Branch B Run Unit Tests Branch B 27 Confidential © Copyright Ariel Partners 2021 BUILD AUTOMATION FOR LEGACY SYSTEM
  • 28.
    “Build Ready” Step HasBeen Eliminated But We Still Have Significant Quality Problems 28 Confidential © Copyright Ariel Partners 2021 UPDATED WORKFLOW
  • 29.
    J U NE 7–11, 2 0 21 S T R E A M I N G 9:45am–6:00pm E T TEST AUTOMATION 29 Confidential © Copyright Ariel Partners 2021
  • 30.
    GUI Presentation Logic Server Business Logic DB SQL(CRUD) Test Start Test End ü Minimal Setup Required ü Code-Only Tests ü Very Fast Test Execution ü No Side Effects 30 Confidential © Copyright Ariel Partners 2021 TYPICAL TEST AUTOMATION
  • 31.
    GUI Presentation-Side Business Logic Server Data Transfer DB SQL BusinessLogic ü Significant Setup Required ü Tests Require Database ü Slow Test Execution ü Significant Side Effects Test Start Test End 31 Confidential © Copyright Ariel Partners 2021 TEST AUTOMATION FOR LEGACY SYSTEMS
  • 32.
    Build Machine A TeamCity Binary Repository Compile Code RunUnit Tests Package Publish Run SQL Tests Drivers, Patches Prepare Test DB Run Tests Batch 1 Build Machine B Prepare Test DB Run Tests Batch 2 Build Machine C Prepare Test DB Run Tests Batch 3 Test DB Image 32 Confidential © Copyright Ariel Partners 2021 INCORPORATING TEST AUTOMATION INTO THE DEVOPS PIPELINE TFS
  • 33.
    But It StillTakes Too Long Before We Can Test Quality Is Slowly Starting To Improve 33 Confidential © Copyright Ariel Partners 2021 UPDATED WORKFLOW
  • 34.
    J U NE 7–11, 2 0 21 S T R E A M I N G 9:45am–6:00pm E T DEPLOYMENT AUTOMATION 34 Confidential © Copyright Ariel Partners 2021
  • 35.
    TFS TeamCity Version Control Server Build/ CI Server Binary Repository Developer Deployment Service Tester 35 Confidential © Copyright Ariel Partners 2021 TYPICAL DEPLOYMENT AUTOMATION PIPELINE
  • 36.
  • 37.
    But We AreStill Getting False Positive Defects “Test Setup” Step Has Been Eliminated “Deploy” Step Has Been Streamlined 37 Confidential © Copyright Ariel Partners 2021 UPDATED WORKFLOW
  • 38.
    J U NE 7–11, 2 0 21 S T R E A M I N G 9:45am–6:00pm E T CONFIGURATION AS CODE 38 Confidential © Copyright Ariel Partners 2021
  • 39.
    Operating Platform: Configuration Application:Code Database Matching Engine Application Server Graphical User Interface 39 Confidential © Copyright Ariel Partners 2021 DEPLOYMENTS HAVE TWO PIECES: APPLICATION CODE AND OPERATING PLATFORM
  • 40.
    Web Server Compute Server Database Server Configure TFS Configurations 40 Confidential© Copyright Ariel Partners 2021 CONFIGURATION AS CODE: TYPICAL IMPLEMENTATION
  • 41.
    No Step Where 1OS Install 2 Set Hostname & IP Address 3 Set Time zone 4 Install Active Directory Services Production Only 5 Activate Windows 6 Create Messaging & Temp Folders 7 Configure File Share 8 Set Folder Permissions 9 Set Environment Variables 10 Disable Windows Firewall 11 Enable Remote Desktop Dev/Test Only 12 Configure Active Directory Groups 41 Confidential © Copyright Ariel Partners 2021 CONFIGURING THE OPERATING PLATFORM FOR A LEGACY SYSTEM (1 OF 2)
  • 42.
    No Step Where 13Install 7-Zip Dev/Test Only 14 Install Octopus Tentacle Dev/Test Only 15 Configure Octopus Tentacle Dev/Test Only 16 Register New Tentacle With Octopus Server Dev/Test Only 17 Install SQL SMO and CLR Packages 18 Install MSMQ 19 Install .NET 3.5 20 Install SQL Server 21 Install IIS 22 Configure FTP/FTPS 23 Configure PKI Certificates 24 Install hMailServer Dev/Test Only, Single Machine 42 Confidential © Copyright Ariel Partners 2021 CONFIGURING THE OPERATING PLATFORM FOR A LEGACY SYSTEM (2 OF 2)
  • 43.
    STEP ONE 100% Manual 300Page Document STEP THREE The Configurator STEP TWO Partially Automated Individual Scripts 43 Confidential © Copyright Ariel Partners 2021 EVOLUTION OF THE PROCESS
  • 44.
    File Shares Windows SXS Files ThirdParty Installer Files Test Environment Nodes Targeting File Configurator Script Configure DevOps Engineer 44 Confidential © Copyright Ariel Partners 2021 ENTER: THE CONFIGURATOR
  • 45.
    Greatly Reduced Incidence ofFalse Positive Defects Configuring New Environment Reduced Weeks à Hours Validating Existing Environment Reduced Days à Minutes 45 Confidential © Copyright Ariel Partners 2021 UPDATED WORKFLOW
  • 46.
    1. What DevOpsPractices Can Benefit My Project? § Build Automation § Test Automation § Deployment Automation § Configuration As Code 2. DevOps for Legacy § Challenging, Yet Transformative 3. Kanban System and STATIK § Lightweight and Effective Guides 46 Confidential © Copyright Ariel Partners 2021 KEY TAKEAWAYS
  • 47.
    47 Confidential © CopyrightAriel Partners 2021 THANK YOU! Selected Training Offerings § Fundamentals of Agile § Agile for Leaders & Executives § Kanban Management Professional § Jira Fundamentals / Intermediate § Human Centered Design § BDD With Cucumber Acceptance Testing § Agile Estimation, Forecasting, & Metrics § Agile Requirements: Story Mapping, Story Splitting & Discovery Kanban § SRE: Site Reliability Engineering www.arielpartners.com cstrong@arielpartners.com Twitter: @arielpartners Other Offerings § Digital Transformation § Cloud Native App Development § Agile / Kanban Coaching § DevOps Jumpstart § Compliance As Code § Test Automation Jumpstart § Legacy Modernization § JIRA Jumpstart