ibm software group ibm software group rational software ®® scma45 building a distributed release...
TRANSCRIPT
IBM Software Group
IBM Software Group Rational software ®®
SCMA45
Building a Distributed Release Process Using IBM Rational ClearCase, IBM Rational
ClearDDTS at Cisco SystemsRinat Ailon and Gadi Berman
Cisco [email protected]
IBM Software Group Rational softwareRational User Conference 2003
®
IBM Software Group Rational softwareRational User Conference 2003
®
Who Are We?
A release engineering team in Cisco Systems (15 release engineers), that provides process and tools for a distributed development and test environments (1800 engineers in 10 sites)
IBM Software Group Rational softwareRational User Conference 2003
®
Specifically, we handle
Build Management
Change Management
IBM Rational ClearCase
IBM Rational ClearCase MultiSite
IBM Rational ClearDDTS
In a distributed environment, using
IBM Software Group Rational softwareRational User Conference 2003
®
Builds should be monitoredand controlled from all sites (mutually)
Total of 100 different products/releases/platforms builds on 30 build machines, used by 10 development sites.
Redundancy is needed for fast recovery
Products are built in 5 sites (SJ, Champaign, Netanya, Bangalore, Chennai)
Build machines should be protected
IBM Software Group Rational softwareRational User Conference 2003
®
The strategy
The tools
IBM Software Group Rational softwareRational User Conference 2003
®
IBM Software Group Rational softwareRational User Conference 2003
®
Getting There
Release Management
PIT
Release Engineering
Team
DevelopmentTeams
TestTeams
IBM Software Group Rational softwareRational User Conference 2003
®
The PIT PIT – a cross organizational Process Improvement Team
was established
The PIT includes developers, test engineers, team leaders, and a project manager, all working together to improve the release engineering process
IBM Software Group Rational softwareRational User Conference 2003
®
Identifying our release engineering challenges/problems
PIT Baseline Deliverables
Mapping the current process that is used ("is model"), and then identify the gaps, if exist, to a "should model" that would address better and improve team operations
Identifying the “should model” RE meta-process
Identifying the “should model” RE process boundaries
Defining the sub processes and provide requirements documents
IBM Software Group Rational softwareRational User Conference 2003
®
Identifying The RE Meta-Process
IBM Software Group Rational softwareRational User Conference 2003
®
Identifying The RE Process Boundaries
Inputs:1. Build plan2. DDTS
Initial Setup Modify codeUnit testing on dev
machine
Hand in code(Checkin, label,
merge)Build Integration tests Acceptance Test End
ImageBuild reportsNew Baseline
Test result, RN
Input:Test plan
Input:Set up Dev envInstalldevelopment tools,MCCM etc
WeeklyLoop
Daily Loop
Hand in
Hand off
Modify code
Build
Setup
IBM Software Group Rational softwareRational User Conference 2003
®
Defining The Sub Processes Daily/Weekly Build Process
We have defined our current daily/weekly build process in terms of ownerships/responsibilities, occurrences, schedules, inputs, outputs, and customers
IBM Software Group Rational softwareRational User Conference 2003
®
Once the current process is defined, we can start working on improving it
IBM Software Group Rational softwareRational User Conference 2003
®
IBM Software Group Rational softwareRational User Conference 2003
®
Change Management Improved Process
Shared
Private
Official Integ
Developers work on private or shared branch (per task/ddts item)
Work is merged by developers (push) to the daily branch, where the integration (daily) build is performed
Work is merged by the project manager (pull) to the official (weekly) branch, where the official (weekly) build is performed
IBM Software Group Rational softwareRational User Conference 2003
®
Build Improved Process
The second phase was to improve the build tools, so it will align with the change management process and will provide a solution to our needs
IBM Software Group Rational softwareRational User Conference 2003
®
IBM Software Group Rational softwareRational User Conference 2003
®
From Process To Tools
Change Management
Build Management
Quality Assessment
IBM Software Group Rational softwareRational User Conference 2003
®
We have developed a tool and a concept designed to deploy our change management methodologies and make Rational ClearCase operations simpler
Change Management Process Support Tool
IBM Software Group Rational softwareRational User Conference 2003
®
MATIS ClearCase Manager3.3
At a glance …
IBM Software Group Rational softwareRational User Conference 2003
®
Choose the profile to work with
Choose dynamic or snapshot view
In a snapshot view you may add the load rules here. Use the “Add” and “Remove” buttons to edit the list of directories to load into the snapshot view
What is a profile?A profile is a shared branching scheme which the view is based on. By creating the view based on a profile – we do not need to know how to create config specs.
MCCM3.3 Example Operation – Create View
IBM Software Group Rational softwareRational User Conference 2003
®
MCCM3.3 Example Operation - Merge
Choose branch to merge from. Only the important branches are shown.
Choose view to merge to.
and then …
IBM Software Group Rational softwareRational User Conference 2003
®
Merge
Choose in which directory you want to look for files that need merging.
and then …
IBM Software Group Rational softwareRational User Conference 2003
®
Rational ClearCase Merge Manager Will Appear With The List Of Relevant Files:
IBM Software Group Rational softwareRational User Conference 2003
®
Sites With No Rational ClearCase Servers Site with no Rational ClearCase servers, use Rational ClearCase Web
interface
IBM Software Group Rational softwareRational User Conference 2003
®
MATIS Build System
MATIS Build System is a generic build framework that can wrap any type of build architecture and provides:
Log parser for easy lookup and messaging of errors
Web interface for scheduling, controlling and monitoring builds
Protects build machines and provides redundancy between machines
Builds related reporting system
IBM Software Group Rational softwareRational User Conference 2003
®
Start/Stop/Continue/Rerun builds
Schedule builds
Build Control Center
Monitor running builds
IBM Software Group Rational softwareRational User Conference 2003
®
Official BuildBoard
Public board to hold official builds for a product to be downloaded
IBM Software Group Rational softwareRational User Conference 2003
®
Build Reports
Reporting on changes made between two builds and changes made from a certain build to the upcoming build
IBM Software Group Rational softwareRational User Conference 2003
®
Quality Metric Graphs System Displays the current status of a product’s quality during the
development cycle
IBM Software Group Rational softwareRational User Conference 2003
®
Quality Metric Graphs system Displays the trend of a product’s quality during the
development cycle
IBM Software Group Rational softwareRational User Conference 2003
®
IBM Software Group Rational softwareRational User Conference 2003
®
IBM Software Group Rational softwareRational User Conference 2003
®
Gadi Berman
Rinat [email protected]