managingdistributedglobalteams-2009-01-07
TRANSCRIPT
Managing DistributedGlobal Teams
Tools, Tips and Techniques to Get the Software You Want
Steve Mezak, CEO of Accelerance, Inc.
Copyright 2009
The MRD for this Talk
• Team Structure– What works and what doesn’t – Domestic teams and global outsourced vendors– Development organizations of various sizes
• Describing Your Software– The role of user experience design– Use cases, user stories, wireframes & storyboards – Tools that can be used to create them
• Managing the Development Process– New tools to manage your development process – Incremental development methods – Monitoring programmer activity– Risk management– Metrics and scorecards
Copyright 2009
Why Distributed Teams?
• Company acquisition or close partnership
• Local market support
• Specialized talent elsewhere (outsourcing)
• Cost savings from offshoring and global outsourcing
• Other examples?
Copyright 2009
What Are the Problems?Let’s make this an Agile talk
• Bad and / or Late Software Because. . .–
–
–
–
–
Copyright 2009
Organizational CultureProblems arise from a mismatch of culture
• More than the music and food you like!
• Definition from Organizational Culture and Leadership by Edgar H. Schein:– A pattern of shared basic assumptions that the group
learned as it solved its problems of external adaptation and internal integration, that has worked well enough to be considered valid and, therefore, to be taught to new members as the correct way to perceive, think and feel in relation to those problems.
Copyright 2009
10 Elements of CultureAlso from Shein’s book
1. Observed behavior when people interact• Language, customs, rituals & traditions
2. Group norms• Standards & values that evolve in working groups
3. Espoused values• Publically announced principles & values
4. Formal philosophy• Broad policies & principles – the “HP Way”
5. Rules of the game• The “ropes” learned by a newcomer to be accepted
Copyright 2009
10 Elements of Culture (cont.)more examples. . .
6. Climate• Feeling conveyed by physical layout & way members interact
7. Embedded skills• Special competencies passed on, not always written
8. Habits of thinking, mental models, linguistic paradigms• Shared cognitive frames used & taught to new members
9. Shared meanings• Emergent understandings created during group interactions
10. Root metaphors or integrating symbols• Emotional & Aesthetic ideas, feelings & images in buildings,
office layout & decoration of the group
Copyright 2009
Team StructuresWhat Usually Works
• Autonomous Teams– Grant autonomy by product or module– Have clear boundaries & responsibilities– Frequent (daily) communication– Frequent (quarterly) face-to-face meetings
• Integrated Teams – Working on same / related code– Similar size, maturity & process (and culture!)– Well defined authority & decision making
Copyright 2009
What Doesn’t WorkOr not easily at least
• Teams at different maturity levels– Team A is CMMi 2 and Team B is CMMi 5
– Team of junior engineers managed from afar
• Managing a big network of freelancers
• User interface / experience created by offshore engineers
• Outsourcing QA / Test w/o integrating with the development team
Copyright 2009
What’s NOT working for you?
• Team locations, sizes, cultures & structure–
–
–
–
–
Copyright 2009
Global Software DevelopmentAn Aside on the Pros & Cons & Costs
• India ($20/hr)+ 80% of outsourcing– 10 to 12 hours away
• China ($18/hr)+ Many engineers– Limited English
• Philippines ($20/hr)+ English & low cost– Limited tech workforce
• Russia ($25 to $30/hr)+ Analytical technologists– Limited English & stability
• Eastern Europe ($20/hr)+ Well educated & low cost– Limited English skills
• Vietnam ($17/hr)+ Young, enthusiastic workforce– Limited English
• Mexico ($25 to $30/hr)+ Near & time zone overlap– Higher cost than other countries
• Central & South America ($20 to $30/hr)
+ Low cost in same time zone– Limited tech workforce
Copyright 2009
Why is Offshoring a Failure ?
• 2008 Robert Half Survey* Says:
“Ninety-four percent of chief information officers (CIOs) surveyed said their company does not outsource information technology (IT) jobs outside the United States. Among companies that once sent IT jobs overseas but discontinued the practice, nearly six in 10 (59 percent) respondents cited management challenges as the top reason.”
No Offshore Outsourcing
Management Challenges
* 2008 Overseas IT Outsourcing Rates Low Among CIOs Surveyed
Copyright 2009
Lot’s of Graduates, But. . .How many are globally competitive programmers ?
Who’s on your project?
* 2008 Getting the Numbers Right, Duke University# 2005 McKinsey Global Institute Report
#
#Dynamic Engineers*
• Capable of abstract thinking• High-level problem solving• Using scientific knowledge
Transactional Engineers*
• Solid technical training, but• No experience to apply knowledge to larger domains• Responsible for routine tasks in workplace
Copyright 2009
Offshoring Models
BodyShops
FreelancerNetwork
SWFactory
ODC BOTCapturedOperation
Specs
Working (?)Software
Specs +
+Specs
SoftwareReleases
SoftwareReleases
Copyright 2009
Describing Your SoftwareHow does your “culture” do it?
• How much specification is enough?– Waterfall or Agile?
– Completely new software or an update?
• What precision are your Use Cases?– Actors and a use case title (low)
– Steps for the success scenario (medium)
– Exceptions described (high)
• Marchitecture & Tarchitecture
Copyright 2009
Wireframes & Storyboards
• Extracting use cases from “experts”– Interviews, “prototypes” and napkins
• Wireframes are not enough– Need the sequence of user steps
• Illustrated use cases– Paper prototyping
Success is getting what you want
and happiness is liking what you get.
Copyright 2009
User Interface Tools
• iRise
• Axure
• Powerpoint
• Dreamweaver
• Paper Prototyping
• Microsoft Visual Studio
Copyright 2009
Managing Development
• Agile, Lean & TDD– Daily standup meetings or scrums
– Continuous builds
• Milestones & Project Management– Collaboration by voice & video
– Face-to-face meetings
• Some reviews of Agile tools on UserStories.com/products
Copyright 2009
Tools
• The Basics– Source code control & defect tracking– Build & release process, code editor / studio
• Project Management– Jira (bug track) + Greenhopper (proj mgmt) + Confluence (wiki)– Basecamp– MS Project & Excel– Online proj mgmt like Clarizen, Projity
• Monitoring programmer activity– Sixth Sense Analytics: www.6sa.com
• Test-Driven Development (TDD)– Fitnesse– Unit test tools: “x”Unit
Copyright 2009
Typical Metricsfor Software Development
XAverage time per bug fix
XAmount of rework or repeat bug fixing
XXMentoring time for junior engineers
XXDelay in meeting scheduled release dates
XXWork units (use cases, function or story points, bug fixes) completed by team per day
XNew features per week
Maint.New Dev
Metric
Copyright 2009
Balanced Scorecard
Future orientation of learning & improvement, positioning to take advantage of future opportunities
Learning and Growth
User satisfaction, service level, up-time, etc.
Customer
Operational effectiveness & excellence in creating software
Business Process
Business value of application development projects
Financial
Focus within Application Development Organization
Balanced Scorecard Perspective
Copyright 2009
Some Books to Consider
• Software Business– Four Steps to the Epiphany by Steve Blank– Getting it Right the First Time by John
Katsaros and Peter Christy
• User Experience & Requirements– Paper Prototyping by Carolyn Snyder – Mental Models by Indi Young
• Software without Borders references– www.SoftwareWithoutBordersBook.com
Copyright 2009
Free Book Raffle !
• Put your business card in the bag for a chance to win
• You all get a Special 50% Discount– Year-end deal extended for eBig attendees– Plus $10 of each purchase donated to The
Leukemia & Lymphoma Society in your name
Steve Mezak, CEO Accelerance, [email protected]