SlideShare a Scribd company logo
Offshore Software Patterns
      What system must be in place?
                                        ALE 2011, September 2011
                                           Mads Troels Hansen
                                             Fujitsu Denmark




© 2009, 2010, 2011 Mads Troels Hansen                              Rev 07092011, ALE
Employees      Customer




                                        Shareholders




• Why patterns for offshore development?
       – Avoid/limit common global problems
       – Improve Thrust, Quality, Productivity and ROI
© 2009, 2010, 2011 Mads Troels Hansen                      2
A pattern, simplistically put, is a
    solution to a problem in a context.

    A pattern language is the
    sequence of patterns (graph) and the
    patterns         Drink
                                        Often
                           Get                      Share
                           Water                    Water

                                        Save
                                        for later
                                                     http://www.hillside.net/patterns
                                                          http://www.scrumplop.org




• Main Patterns described using the form
  – Problem. Therefore, Solution.
                                                    xxxxx


© 2009, 2010, 2011 Mads Troels Hansen                                                   3
Balance




• 9 Main Patterns and 27 Related Patterns
• My own experience with Distributed Work (since 2004)
       – Primarily Asia and Eastern Europe
© 2009, 2010, 2011 Mads Troels Hansen                  4
© 2009, 2010, 2011 Mads Troels Hansen   5
”Too many managers with
    multiple directions and
    bottlenecks”


• Main Pattern
                                          Global
                                        Management
                                          System
© 2009, 2010, 2011 Mads Troels Hansen                6
Global
                                                          Management
                                                            System




• Patterns
           Step back and                 Establish
                                                        Do Gemba
            design ONE                  Fast Problem
                                                       Walks Offshore
           global system                  Solving

© 2009, 2010, 2011 Mads Troels Hansen                                   7
”Many offshore
    <resources> and Mistrust”



• Main Pattern
                                         Global
                                        Structure
© 2009, 2010, 2011 Mads Troels Hansen               8
Global
                                                             Structure

       Demand                              Throughput




• Patterns
             Design
                                        Establish Daily   Balance Demand
           Global Value
                                        Transparency       and Capacity
             Streams

© 2009, 2010, 2011 Mads Troels Hansen                                      9
”Deadlines not respected
    and finding bugs late”



• Main Pattern
                                        Global
                                        Rhythm
© 2009, 2010, 2011 Mads Troels Hansen            10
Global
                                                      Rhythm




• Patterns
                Implement               Regular      Fast
               Incremental               Sneak     Feedback
               and Iterative            Previews    Culture

© 2009, 2010, 2011 Mads Troels Hansen                          11
”Complex and labor-
    intensive deployments”



• Main Pattern
                                            Global
                                          Technical
                                        Infrastructure
© 2009, 2010, 2011 Mads Troels Hansen                    12
Global
                                                               Technical
                                                             Infrastructure




• Patterns
               Simplify then            Baseline core     Teach the
                Automate                 standards      infrastructure


© 2009, 2010, 2011 Mads Troels Hansen                                         13
”Global Meetings are
    painful and waste of time”



• Main Pattern
                                           Global
                                        Communication
                                          Protocols

© 2009, 2010, 2011 Mads Troels Hansen                   14
Global
                                                           Communication
                                                             Protocols




• Patterns
                                          Establish       Meeting
                Daily Video
                                        Communication   purpose and
                 Meetings
                                           Toolbox        owners

© 2009, 2010, 2011 Mads Troels Hansen                                      15
“Problems with quality
    code and DONE”



• Main Pattern
                                          Global
                                        Development
                                         Practices
© 2009, 2010, 2011 Mads Troels Hansen                 16
Global
                                                          Development
                                                           Practices




• Patterns
                                        Global Code
              Define Global                           Global Source
                                          Review
                 DONE                                    Control
                                         Cadence

© 2009, 2010, 2011 Mads Troels Hansen                                   17
“Requirements are
    misunderstood”



• Main Pattern
                                         Global Req
                                        Management
© 2009, 2010, 2011 Mads Troels Hansen                 18
Global Req
                                                           Management




• Patterns
                  Do                      Slice and
                                                        Communicate
             Requirement                   Iterate
                                                          the onion
              Validation                understanding

© 2009, 2010, 2011 Mads Troels Hansen                                    19
“Wrong Business
    Understanding”



• Main Pattern
                                          Global
                                         Domain
                                        Knowledge
© 2009, 2010, 2011 Mads Troels Hansen               20
Global
                                                            Domain
                                                           Knowledge




• Patterns
           My background                                Tell stories
                                         Build Shared
             is not your                                 about the
                                        Domain models
            background                                    obvious

© 2009, 2010, 2011 Mads Troels Hansen                                  21
“We are not working
    together and it is more us
    and them!”


• Main Pattern
                                        Cross cultural
                                        understanding

© 2009, 2010, 2011 Mads Troels Hansen                    22
Cross cultural
                                                             understanding




• Patterns
                Rotate                  Find People     Shared view on
                People                  with a Global   behaviors and
              Frequently                   Mindset        standards

© 2009, 2010, 2011 Mads Troels Hansen                                         23
Offshore Software Patterns

                                                                    Global
       Global                              Global
                                                                  Development
     Management                            Rhythm
                                                                   Practices
       System

                                                            Global
                        Global                            Technical
                       Structure                        Infrastructure               Cross cultural
                                                                                     understanding

                                                                           Global
                                          Global Req.
                                                                          Domain
                                          Management
                                                                         Knowledge



                                               Global
                                            Communication
                                              Protocols

        WHY to work Global                 HOW to work Global              WHAT to Deliver Global
© 2009, 2010, 2011 Mads Troels Hansen
mth@lean-agile.dk

                                         blog.lean-agile.dk
                                             @madsth


       Offshore Software Patterns
       “Real solutions to common Offshore Software
         problems that arise in different contexts”
© 2009, 2010, 2011 Mads Troels Hansen                         25

More Related Content

PDF
Kanban Personal Kanban 04102009
PDF
Patterns For Successful Distributed Development - Agileee2009
PDF
Distributed scrum - agileee 2012, Kiev
PDF
Lean startup intro - Marts 2012
PDF
Do's and don'ts for distributed scrum. GOTO Aarhus
PDF
Balancing and growing agile testing with high productive distributed teams. B...
PDF
Intro kaizen teknik_ws_2012
PDF
From output to outcome with scrum
Kanban Personal Kanban 04102009
Patterns For Successful Distributed Development - Agileee2009
Distributed scrum - agileee 2012, Kiev
Lean startup intro - Marts 2012
Do's and don'ts for distributed scrum. GOTO Aarhus
Balancing and growing agile testing with high productive distributed teams. B...
Intro kaizen teknik_ws_2012
From output to outcome with scrum

Similar to Offshore Software Patterns. ALE Berlin (20)

PDF
Agile 2009, Chicago: From CMMI and Isolation to Agile, Scrum, Lean and Collab...
PPTX
Applying Patterns to Mobile Design
PDF
XP Day 2009 (London) - Patterns For Successful Distributed Development Xpday ...
PDF
Design Patterns Lw
PPTX
Nov. 8, 2011 webcast desiging mobile interfaces by steven hoober
PDF
Design Patterns: Defining and Sharing Web Design Languages
PDF
Build Systems, Not Stuff
PDF
Design Patterns Summer Course 2009-2010 - Session#1
PPTX
Executing for Every Screen: Build, launch and sustain products for your custo...
PPT
Melbourne agile and scrum sig slides v01-00
PPTX
2014 asdenca - An outlook on patterns as an aid for business and it alignment...
PPTX
I Love Patterns
PPTX
Execute for Every Screen
PDF
Maximizing Value and Consistency of Experiences with Design Systems - Centerl...
PPT
How to grow your (Java) User Group to have 250 attendees show up at every mee...
PPTX
Cs 1023 lec 9 design pattern (week 2)
PPT
404 lecture powerpointdesign
PDF
How we sold design systems to internal team and then to our clients
PPTX
Uw pce gise presentation 07-17-2012
PDF
Standards success factors
Agile 2009, Chicago: From CMMI and Isolation to Agile, Scrum, Lean and Collab...
Applying Patterns to Mobile Design
XP Day 2009 (London) - Patterns For Successful Distributed Development Xpday ...
Design Patterns Lw
Nov. 8, 2011 webcast desiging mobile interfaces by steven hoober
Design Patterns: Defining and Sharing Web Design Languages
Build Systems, Not Stuff
Design Patterns Summer Course 2009-2010 - Session#1
Executing for Every Screen: Build, launch and sustain products for your custo...
Melbourne agile and scrum sig slides v01-00
2014 asdenca - An outlook on patterns as an aid for business and it alignment...
I Love Patterns
Execute for Every Screen
Maximizing Value and Consistency of Experiences with Design Systems - Centerl...
How to grow your (Java) User Group to have 250 attendees show up at every mee...
Cs 1023 lec 9 design pattern (week 2)
404 lecture powerpointdesign
How we sold design systems to internal team and then to our clients
Uw pce gise presentation 07-17-2012
Standards success factors
Ad

More from Mads Troels Hansen (8)

PDF
Scrum Day DK 2016 - Scrum Adoption Barriers
PDF
Top 5, Unused potential and Principles in Scrum & Agile - Professional Scrum
PDF
ScrumDay DK 2014: Scrum, kanban, prince2, dos and donts
PPTX
Øresund Agile 2009: ws7 customer_collaboration
PPT
Why both scrum and lean in dist dev 07092010
PPTX
Case metaconomy january2010
PPTX
Introduction to kanban lean ghm_02022010
PDF
User Story Mapping Daug 09062009
Scrum Day DK 2016 - Scrum Adoption Barriers
Top 5, Unused potential and Principles in Scrum & Agile - Professional Scrum
ScrumDay DK 2014: Scrum, kanban, prince2, dos and donts
Øresund Agile 2009: ws7 customer_collaboration
Why both scrum and lean in dist dev 07092010
Case metaconomy january2010
Introduction to kanban lean ghm_02022010
User Story Mapping Daug 09062009
Ad

Recently uploaded (20)

PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Mushroom cultivation and it's methods.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
A Presentation on Artificial Intelligence
PDF
August Patch Tuesday
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PPTX
TLE Review Electricity (Electricity).pptx
PDF
Getting Started with Data Integration: FME Form 101
PDF
Assigned Numbers - 2025 - Bluetooth® Document
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Mushroom cultivation and it's methods.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
A comparative analysis of optical character recognition models for extracting...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
OMC Textile Division Presentation 2021.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
A Presentation on Artificial Intelligence
August Patch Tuesday
Encapsulation_ Review paper, used for researhc scholars
Digital-Transformation-Roadmap-for-Companies.pptx
Network Security Unit 5.pdf for BCA BBA.
Advanced methodologies resolving dimensionality complications for autism neur...
Heart disease approach using modified random forest and particle swarm optimi...
Group 1 Presentation -Planning and Decision Making .pptx
TLE Review Electricity (Electricity).pptx
Getting Started with Data Integration: FME Form 101
Assigned Numbers - 2025 - Bluetooth® Document

Offshore Software Patterns. ALE Berlin

  • 1. Offshore Software Patterns What system must be in place? ALE 2011, September 2011 Mads Troels Hansen Fujitsu Denmark © 2009, 2010, 2011 Mads Troels Hansen Rev 07092011, ALE
  • 2. Employees Customer Shareholders • Why patterns for offshore development? – Avoid/limit common global problems – Improve Thrust, Quality, Productivity and ROI © 2009, 2010, 2011 Mads Troels Hansen 2
  • 3. A pattern, simplistically put, is a solution to a problem in a context. A pattern language is the sequence of patterns (graph) and the patterns Drink Often Get Share Water Water Save for later http://www.hillside.net/patterns http://www.scrumplop.org • Main Patterns described using the form – Problem. Therefore, Solution. xxxxx © 2009, 2010, 2011 Mads Troels Hansen 3
  • 4. Balance • 9 Main Patterns and 27 Related Patterns • My own experience with Distributed Work (since 2004) – Primarily Asia and Eastern Europe © 2009, 2010, 2011 Mads Troels Hansen 4
  • 5. © 2009, 2010, 2011 Mads Troels Hansen 5
  • 6. ”Too many managers with multiple directions and bottlenecks” • Main Pattern Global Management System © 2009, 2010, 2011 Mads Troels Hansen 6
  • 7. Global Management System • Patterns Step back and Establish Do Gemba design ONE Fast Problem Walks Offshore global system Solving © 2009, 2010, 2011 Mads Troels Hansen 7
  • 8. ”Many offshore <resources> and Mistrust” • Main Pattern Global Structure © 2009, 2010, 2011 Mads Troels Hansen 8
  • 9. Global Structure Demand Throughput • Patterns Design Establish Daily Balance Demand Global Value Transparency and Capacity Streams © 2009, 2010, 2011 Mads Troels Hansen 9
  • 10. ”Deadlines not respected and finding bugs late” • Main Pattern Global Rhythm © 2009, 2010, 2011 Mads Troels Hansen 10
  • 11. Global Rhythm • Patterns Implement Regular Fast Incremental Sneak Feedback and Iterative Previews Culture © 2009, 2010, 2011 Mads Troels Hansen 11
  • 12. ”Complex and labor- intensive deployments” • Main Pattern Global Technical Infrastructure © 2009, 2010, 2011 Mads Troels Hansen 12
  • 13. Global Technical Infrastructure • Patterns Simplify then Baseline core Teach the Automate standards infrastructure © 2009, 2010, 2011 Mads Troels Hansen 13
  • 14. ”Global Meetings are painful and waste of time” • Main Pattern Global Communication Protocols © 2009, 2010, 2011 Mads Troels Hansen 14
  • 15. Global Communication Protocols • Patterns Establish Meeting Daily Video Communication purpose and Meetings Toolbox owners © 2009, 2010, 2011 Mads Troels Hansen 15
  • 16. “Problems with quality code and DONE” • Main Pattern Global Development Practices © 2009, 2010, 2011 Mads Troels Hansen 16
  • 17. Global Development Practices • Patterns Global Code Define Global Global Source Review DONE Control Cadence © 2009, 2010, 2011 Mads Troels Hansen 17
  • 18. “Requirements are misunderstood” • Main Pattern Global Req Management © 2009, 2010, 2011 Mads Troels Hansen 18
  • 19. Global Req Management • Patterns Do Slice and Communicate Requirement Iterate the onion Validation understanding © 2009, 2010, 2011 Mads Troels Hansen 19
  • 20. “Wrong Business Understanding” • Main Pattern Global Domain Knowledge © 2009, 2010, 2011 Mads Troels Hansen 20
  • 21. Global Domain Knowledge • Patterns My background Tell stories Build Shared is not your about the Domain models background obvious © 2009, 2010, 2011 Mads Troels Hansen 21
  • 22. “We are not working together and it is more us and them!” • Main Pattern Cross cultural understanding © 2009, 2010, 2011 Mads Troels Hansen 22
  • 23. Cross cultural understanding • Patterns Rotate Find People Shared view on People with a Global behaviors and Frequently Mindset standards © 2009, 2010, 2011 Mads Troels Hansen 23
  • 24. Offshore Software Patterns Global Global Global Development Management Rhythm Practices System Global Global Technical Structure Infrastructure Cross cultural understanding Global Global Req. Domain Management Knowledge Global Communication Protocols WHY to work Global HOW to work Global WHAT to Deliver Global © 2009, 2010, 2011 Mads Troels Hansen
  • 25. mth@lean-agile.dk blog.lean-agile.dk @madsth Offshore Software Patterns “Real solutions to common Offshore Software problems that arise in different contexts” © 2009, 2010, 2011 Mads Troels Hansen 25