clearcase ucm deployment at loto-qu©bec
TRANSCRIPT
© Koserto 2005
ClearCase UCM deployment at
Loto-Québec
www.koserto.com
Deploying ClearCase UCM at Loto-Québec 2© Koserto 2005 11/17/05
Context
• Original Mandate– Deploy ClearCase across all development
teams shipping on Tandem, Windows, QNX
• Initial state of affairs– 200 developers, ~30 concurrent projects– Access, VB, J2EE, C++, Tandem, QNX, …
• Deliveries calendar with no spare room
• Very varied degrees of SCM experience
• Some reluctance and skepticism
Deploying ClearCase UCM at Loto-Québec 3© Koserto 2005 11/17/05
Approach
Assess size & maturity of each groupPlan the implementation project Devise global SCM plan
Consult, publish, validate, revise, prepare training material
Secure resources Plan iterations Execute iterations
Ongoing … improvement … of … infrastructure
Deploying ClearCase UCM at Loto-Québec 4© Koserto 2005 11/17/05
Iteration details 1/2
• Identify core team of CM advocates• Hold 6-8 workshops over 4-6 weeks
• Plan & hold training (tool and FMO)• Hold tests sessions with all users
•Raise awareness•Inventory users and components
•Devise their own local SCMP•Train core teams on SCM and FMO
•Setup test env. just like the real one•Must be realistic
•Tests the infrastructure and the FMO•Train & iron out quirks
1 2 3 4 5 6 7 8 9 10 weeks
Deploying ClearCase UCM at Loto-Québec 5© Koserto 2005 11/17/05
Iteration details 2/2
• Converge and freeze components• Migrate components into final P/VOBs• Fix and deploy• Start ongoing monitoring and adjustments
•Spot deviations and analyze constructively•Use reporting
…
• Consider lessons learned– improve approach
1 2 3 4 5 6 7 8 9 10 weeks
Deploying ClearCase UCM at Loto-Québec 6© Koserto 2005 11/17/05
Actual deployment scheduleTitre
16 23 30 6 13 20 27 4 11 18 25 1 8 15 22 29 5 12 19 26 3 10 17 24 31 7 14 21 28 5 12 19 26 2 9 16 23 30 6 13 20 27 6 13 20 27 3 10 17 24
Gestion des donnéespréparation iter 1 iter 2 - baselineiter 2 iter 3 - baselineiter 3
Systèmes administratifspréparation - baselinepréparation iter 1 - baselineiter 1 iter 2 - baselineiter 2 (LTM, ARS, PB, TFE (VB), …) iter 3 - baselineiter 3 (Safir, CPRH, EPRH, ATP)
Systèmes des jeux préparation - baselinepréparation iter 1 - baselineiter 1 - (BOS, SDP) iter 2 - baselineiter 2 - (V3K, App Term.,) ?iter 3 - (PES)
Projetspréparation - baselinepréparation iter 1 - baselineiter 1 - JEF
Gestion des jeux & AALpréparation - baselinepréparation iter 1 - baselineiter 1 - 4ab (?) * iter 2 - baseline
WEB *préparation - baselinepréparation iter 1 - baselineiter 1 (toutes les applications WEB)
* Sujet à confirmation
Nov
-08
Mar
-09
Dec
-08
Jan-
09
Feb-
09
Sep
-08
Apr
-09
Oct
-08
Jul-0
8
Aug
-08
May
-08
Jun-
08
Deploying ClearCase UCM at Loto-Québec 7© Koserto 2005 11/17/05
Key deliverables
• Global SCM plan
• Local SCM plan template
• CC SCM Procedures& memory jogger
• FMO training slides
• FMO test plan template
• FMO setup in CC UCM
• Delivery slip mechanism inClearQuest
Deploying ClearCase UCM at Loto-Québec 8© Koserto 2005 11/17/05
Other useful tools
• The global calendar
• The users census worksheet– For license provisioning & client installation– Includes training requirements and budget
• The Organizational Breakdown Structure
• The component inventoryworksheet
Deploying ClearCase UCM at Loto-Québec 9© Koserto 2005 11/17/05
Key success factors
• Workshop based– Encourages buy-in
• Adapt or fail– No size fits all.– Know where to trade-off
• Just-in-time training
• Buy-in, buy-in, buy-in– Ongoing stakeholder analysis
• Stamina
Deploying ClearCase UCM at Loto-Québec 10© Koserto 2005 11/17/05
Service Oriented Management
• A tight-knit CM team– Can be centralized or not
• Customer service oriented (ITIL-like)– Agree on SLA– Underpin SLA with vendors and suppliers– Setup tiered support structure
• Setup a contingency– with agreed upon parameters
Deploying ClearCase UCM at Loto-Québec 11© Koserto 2005 11/17/05
UCM terminology 1/2
C_GDD_compABC
Prog.c
Help.doc
doc/
Prog.h
B_P_GDJ_RDD_1.0_dev_blah2_PROD
B_P_GDJ_RDD_2.0_dev_blah2_TA1
B_P_GDJ_RDD_2.0_dev_blah2_TA2
C_GDD_ compXYZ
upref.c
upref.doc
Readme. txt
upref .h
B_P_GDJ_RDD_1.0_dev_blah2_PROD
B_P_GDJ_RDD_2.0_dev_blah2_TA1
...
Système RDD 2.0Bdl_T04-0013 _mep1.txt
Système JEF v 123
Bdl_T04-0164 _mea2.txt
...
Composants(assemblages d’éléments )
Baselines(configurations de composants )
Systèmes(assemblages de composant -baselines )
élément
version
Nom du système : Service responsable du système :Intégrateur responsable :
Date de livraison : <2004 -07 -27>Objectif de la livraison : mea _1
Nom du projet d 'origine : <P _GDD_ dev_649 a2_ JEF_blah 1>Nom du projet destination : <P_GDD _tapp _649 a2_JEF _blah 1>
Configuration TAP P :C_ GDD_< composantABC > : <P_GDD _ref _TDM _dmep 1234_ liv2>
C_ GDD_< composantDEF > : <P_GDD _ref _TDM _dmep 1234_ liv2>…
Baselines livrés :C_ GDD_< composantABC > : <P_GDD _dev _649 a2_JEF _baseline 123>C_ GDD_< composantDEF > : <P_GDD _dev _649 a2_JEF _baseline 234>
...
Instructions de build : ...
Instructions d’assemblage : ...Instructions d’installation : ...Changements : ...
Commentaires : ...
Components(collection of elements)
Baselines(configurations of components)
System configurations(packaging of baselines)(composite baselines)
Deploying ClearCase UCM at Loto-Québec 12© Koserto 2005 11/17/05
UCM terminology 2/2
PD1v2dev
Integ
CcCb
Ca
dev1 dev2
Cc
Cb
Ca C
c
Cb
Ca
rebase
rebase
Deliver
activités
Prref
Pd1v1
Pd1v1
Pd1v1
Pd1v1.1
Pd1v1.1
Pd1v1.1
Cc
Cb
Ca
Cc-B1
Prdev-Bti1
Deliver
activités
VD1 . VD2 .
Vinteg .
VD1 .
VD2 .
project
stream
componentsbaselines
rebase
Projectfoundation
views
VOBs(data)
PVOBs(meta data)
Deploying ClearCase UCM at Loto-Québec 13© Koserto 2005 11/17/05
SCM Plan
• Local plan builds on global one
• A well defined naming convention– For components, projects, streams, baselines, …
– E.g. projects: P_<svc>_<dev|tapp|ref>
• Referential contains all productionassets– What goes in the referential?
• Forced transition to controlled environment– On the way to acceptance testing
or production– Controlled by librarians
Deploying ClearCase UCM at Loto-Québec 14© Koserto 2005 11/17/05
UCM Mode of operation
See http://www.koserto.com/documents/public/lqcc/CC_UCM_Loto-Quebec_2.pdf for …
• The full mode of operation– For complex development environments
• A simplified mode of operation– For most simple development environments
Deploying ClearCase UCM at Loto-Québec 15© Koserto 2005 11/17/05
Delivery slip
Smith JohnSmithJ 555-1212 #222
\\pkgsrv\gdj\telephonie123
\\pkgsrv\gdj\telephonie123-…
Deploying ClearCase UCM at Loto-Québec 16© Koserto 2005 11/17/05
Build → Package → Install (BPI)
• SCM FMO says nothing about BPI– To do so would lead to pointless resistance
• BPI is post SCM delivery but …• BPI post delivery must be
controlled by librarian– Or else opportunity to slip bugs or hacks
• Access to production strictly controlled• BPI should be automated
– So librarians can do it or better yet, fully automated• BPI must be tested prior to hand off
Deploying ClearCase UCM at Loto-Québec 17© Koserto 2005 11/17/05
ClearCase Projects Organization
ABCBCDCDEDEF
…
………
…………
…………………………………
Deploying ClearCase UCM at Loto-Québec 18© Koserto 2005 11/17/05
In the drawing board …
• Automated code delivery (CC & CQ)• Use of composite baselines• Better use of derived objects• Reporting• SLAs• Continuous monitoring• Monitoring dashboard
– For usage, performance & compliance,
Deploying ClearCase UCM at Loto-Québec 19© Koserto 2005 11/17/05
PM consideration
• A charter to secure commitment
• Understand change management
• Commitment falters. Nourish it.
• Plan ahead and give warning
• Communicate
• Manage risks aggressively
- Be honest- Do not fear not knowing- Get users involved- Encourage feedback- Know when to draw the line
- Coordination committee meets monthly- Monthly tribune with execs- Broadcast periodic bulletins- Setup an intranet
Deploying ClearCase UCM at Loto-Québec 20© Koserto 2005 11/17/05
Resistance to change
UNFOUNDED RESISTANCEFOUNDED RESISTANCE
Resistances Matrix
GenuineResistance
Apprehension
IGNORANCEStrategy : Information, clarification
AWARENESS OF LOSSESStrategy: Reassurance
Non genuine Resistance
Pretext
MALICE - STUBBORNNESS.Strategy : Neutralisation, isolation
CREATION OF ANEGOTIATION SPACEStrategy : Negociation
© TURBO
Deploying ClearCase UCM at Loto-Québec 21© Koserto 2005 11/17/05
Lessons learned
• Setup an intranet early on
• Setup service infrastructure early on
• Spend more time instilling customerorientation in SCM organization
• Spend more effort upfront on backup &recovery plan and test it.
Deploying ClearCase UCM at Loto-Québec 22© Koserto 2005 11/17/05
A team
• A project manager to deploy it– With no ties helps setting politic aside– <shameless plug>Call us: www.koserto.com</shameless plug>
• A lead to operate it once deployed (you provide)
• A good CC admin (call us here again)
• A good HW admin (you provide)
• A good trainer (call us here again)
• Ambassadors (you provide)
– Enlist the hardest opponents with the most clout• Committed execs (you definitely provide but we can help with the business case)
Deploying ClearCase UCM at Loto-Québec 23© Koserto 2005 11/17/05
Resources
• Rational CC communityhttp://www-128.ibm.com/developerworks/forums/dw_forum.jsp?forum=333&cat=24
• Books & Articles– Spectrum of Functionality in Configuration Management Systems
http://www.sei.cmu.edu/legacy/scm/tech_rep/TR11_90/TOC_TR11_90.html– CM Plans : The beginning to your CM solution
http://www.sei.cmu.edu/legacy/scm/papers/CM_Plans/CMPlans.MasterToC.html– Achieving CMMI Level 2 in the Configuration Management Process
Area Using IBM Rational Software Solutionshttp://www-128.ibm.com/developerworks/rational/library/content/RationalEdge/mar03/CMMI_TheRationalEdge_Mar2003.pdf
– Software Configuration Management Patternshttp://www.amazon.ca/exec/obidos/ASIN/0201741172/qid=1112041520/702-3116675-6252844
– Software Configuration Management Strategies and RationalClearCase(R): A Practical Introductionhttp://www.amazon.ca/exec/obidos/ASIN/0201604787/qid=1112041594/702-3116675-6252844