3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

44
3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland

Transcript of 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Page 1: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

3184Optimizing StarTeam for

Distributed Teams

Randy GuckChief Scientist, DSP

Borland

Page 2: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Overview

The distributed team dilemma– The challenge– The dilemma– Advantages and concerns of

replication– Advantages and concerns of

centralization

Page 3: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Overview

Distributed teams the StarTeam way– Optimizations for remote teams

• Client-activated options• New features for StarTeam 7.0

– StarTeamMPX• Turning the network inside-out• New features for StarTeam 7.0

– StarTeam Import/Export Manager– The future of distributed teams

Page 4: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

The Distributed Team Dilemma

Page 5: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Centralize or Replicate?

The challenge– Teams are increasingly becoming

distributed• Global companies, out-sourcing, etc.

– Geographically dispersed teams need access to the same lifecycle artifacts

• Variation: Sometimes network issues raise the same issues for “network near” teams

Page 6: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Centralize or Replicate?

The dilemma– Should repositories be centralized and

access provided to all team members? or…

– Should repositories be replicated to remote locations for local access?

Page 7: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Replication

Advantages– Network-near performance for remote

teams– Remote teams remain productive

when the root server is inaccessible

Page 8: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Replication

Concerns– High administrative cost for constant

replication– Artificial merge conditions introduced– Replication demands its own

bandwidth and reliability– High product cost (extra hardware,

licenses, DBAs, …)

Page 9: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Centralized Repositories

Advantages– Maximum administrative control

• Users, groups, security• Workflow, customization• Product versions and upgrades

– No artificial merge conditions– Lowest overall cost (e.g., admin,

servers, H/A features in one place)

Page 10: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Centralized Repositories

Concerns– How do remote teams get

performance?– How do remote teams remain

productive during network brownouts?

Page 11: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

The StarTeam Solution

StarTeam promotes centralized repositories– Highest control/security, lowest cost

How do remote teams remain productive?– Optimizations for remote users– Innovative technology for remote teams– Intelligent “push caching”, reducing the

need to touch the network

Replication not needed for distributed teams!

Page 12: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Optimizations forRemote Teams

Page 13: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

StarTeam C/S Architecture

StarTeamClient

StarTeamClient

VaultVault

StarTeamServer

DB

Command API

StarTeamClient

All information is pulled by

clients using a request/reply

command API

Page 14: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Optimizations for Remote Teams

Command API compression

Reduces network traffic up to 80%

Page 15: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Optimizations for Remote Teams

Delta check-outs for faster check-outs

New for 7.0: Cross-platform client support

Page 16: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Optimizations for Remote Teams

Auto-reconnect: Connection loss resiliency

New for 7.0: Cross-platform client support

Page 17: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

StarTeamMPX:Turning the network inside/out

Page 18: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

StarTeamMPX Architecture

StarTeamClient

StarTeamClient

VaultVault

StarTeamServer

DBMessageBroker

Event publish stream

StarTeamClient

Updated objects are pushed to

clients, preventing poll and refresh

requests, reducing network demand

Page 19: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

StarTeamMPX Profiles

Deploy a Message Broker in each geographic region with > 5 users– Note: Maximum 10 Message Brokers

Create an MPX profile for each Message Broker– e.g., “Denver MPX Profile”

Set the “client default” profile to the one most users will use

Page 20: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Hub-and-Spoke Configuration

MB

MB

MB

MB

ST Server and MB

Page 21: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Using StarTeamMPX

First enable it…

– Automatic refresh options take advantage of update messages

Page 22: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Using StarTeamMPX

…then choose the appropriate MPX profile

Page 23: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

New for 7.0: MPX Cache Agent

StarTeamClient

StarTeamClient

VaultVault

StarTeamServer

DB

EncryptedCache

EncryptedCache

MessageBroker

CacheAgent

File publish stream

Check-outrequests

The Cache Agent is trickled charged

with file contents, providing an alternate

check-out source for remote clients.

Page 24: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

MPX Cache Agent

Advantages– New files are broadcast once– Unicast and multicast broadcasting– Multiple Cache Agents can be

deployed to assist remote locations– Cache Agents are trickled-charged

automatically (“push caching”)– Multiple StarTeam server support

Page 25: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

MPX Cache Agent

Advantages– Files are encrypted in transfer and

storage– Cache Agent-aware clients can check-

out from any Cache Agent• Clients can be configured to auto-locate

the nearest Cache Agent

– Up to 98% of outbound traffic removed from StarTeam server

Page 26: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

MPX Cache Agent

Advantages– Remote users receive network-near

check-out performance• Bulk/parallel check-out faster than normal

check-out

– Traffic reduced over long wires; more bandwidth for other apps

– Server “availability window” reduced for large file check-outs

Page 27: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Stacked Cache Agents

StarTeamClient

StarTeamClient

VaultVault

StarTeamServer

DB

EncryptedCache

EncryptedCache

MessageBroker

RemoteCacheAgent

RootCacheAgent

Alternate check-out path

Catch-up/forwarded requests

Page 28: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Tiered Cache Agents

Advantages– Special root Cache Agent provides

forwarding headwater– Downstream Cache Agents can

forward request “misses” to root Cache Agent

• All Cache Agents in the “stream” are charged along the way (like traditional “demand” caching)

Page 29: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Tiered Cache Agents

Advantages– Downstream Cache Agents can catch-

up from root Cache Agent after network outages

• Cache Agents know how to recharge/synchronize, regardless of clocks, topologies, etc.

• New Cache Agents can “pre-charge” from root Cache Agent

Page 30: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Tiered Cache Agents

Advantages– Cache Agents can be tiered in any

configuration; any # of levels– Cache Agents auto-locate the root

Cache Agent; minimal configuration– New remote Cache Agents can be

added to the cloud dynamically; auto-locate clients will automatically find and use

Page 31: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Cache Agent-Aware Clients

Cross-platform Client

Page 32: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Cache Agent-Aware Clients

Bulk check out (BCO) command-line utility– Alternative to “stcmd co” command– Cache Agent-aware– Switches to regular check-out if

needed

Example:bco -p "user:pw@prod1:49201/Project1/View1/srcfiles"

-useCA autolocate -cfgl "6.0.1" -is -o -filter IO "*.java"

Page 33: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Distributed Cache Agents

MB and CA

MB and CA

MB and CA

MB and CA

ST Server, MB,and root CA

Page 34: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

StarTeam Import/Export Manager

Page 35: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Is Replication Ever Needed?

Most cited reasons for replication:– Scalability

• Team size exceeds server capabilities• Not a valid reason for StarTeam!

– Distributed teams• Software doesn’t support remote teams• Not a valid reason for StarTeam!

Page 36: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Is Replication Ever Needed?

Most cited reasons for replication:– Security issues

• Establish a virtual firewall between teams• Not a valid reason for StarTeam!

– Connectivity• No physical network with a remote team• The most valid reason for needing

replication

Page 37: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

New for StarTeam 7.0:StarTeam Import/Export Manager

Features:– Separate export, transfer, and import

phases– Full and incremental export/import– Scoped processing: server, project,

view, folder hierarchy– Ideal for project transfer

Page 38: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Import/Export Basic Flow

XML+archive

image

On-line oroff-line transfer

SourceStarTeam

Server

Export

XML+archive

image

Read-onlyprocess

TargetStarTeam

Server

Import

Local updateprocess

Page 39: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

StarTeam Import/Export Manager

Ideal for copying critical projects from one repository to another

Bi-directional flows can be set-up

Can be used to “move” projects to new servers (e.g., for rebalancing)

Note: Copied projects are not identical to the original– E.g., CR numbers may change

Page 40: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

The Future of Distributed Teams

Page 41: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Where are we headed?

Occasionally-connected/mobile teams– Read-only caching of all artifacts– Client “auto save” of view contexts– Updates queued and resynched when

connectivity is restored• Think email client/PDA metaphor• Merge conditions resolved during sync

Page 42: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Summary

Optimize StarTeam for distributed teams– Centralized repositories– Command compression, delta check-

out, auto-reconnect– StarTeamMPX, distributed Cache

Agents, CA-aware clients– StarTeam Import/Export Manager

when replication is the only choice

Page 43: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Questions?

Page 44: 3184 Optimizing StarTeam for Distributed Teams Randy Guck Chief Scientist, DSP Borland.

Thank You

3184

Optimizing StarTeam for Distributed Teams

Please fill out the speaker evaluation

You can contact me further at …[email protected]