This document discusses deployment options for IBM's Collaborative Lifecycle Management (CLM) software on existing projects. It provides background on application lifecycle management (ALM) and defines CLM. CLM offers integrated requirements, quality, planning, and version control management to help meet ALM goals. For projects with existing tools, the document discusses challenges and recommends deployment options like importing data, bridging to existing tools, or synchronizing data between CLM and other tools.
5. • What we hear from our customers
• Use of multiple SCM tools is becoming more prevalent
• Projects want to consolidate and simplify the SCM infrastructure
• End users want light-weight, easy to use tools
• Increasing demand for high rigor, and traceability capabilities
• More adoption of Agile principles and processes
• Questions
• Do I have to abandon my legacy tools and processes to make
my end users happy?
• How do I move from my current infrastructure to the tools my
users want without breaking my schedule?
• Just what are all of these components in IBM/Rational’s ALM
solution, and how do they fit together?
Background
6. • What we will address today
• What CLM is
• How CLM uniquely provides a successful ALM solution
• The business value of deploying a CLM solution on your project
• CLM deployment options
• How to decide how to deploy CLM
• CLM deployment examples
• Legacy IBM/Rational tools
• Open source
• 3rd party solutions
Background
7. Application Lifecycle Management
“The product lifecycle management (governance, development, and
maintenance) of application software”
https://en.wikipedia.org/wiki/Application_lifecycle_management
• Evolved from Product Lifecycle Management (PLM)
• American Motors (now Chrysler) developed in 1985
• Needed to speed up its development processes to compete against larger competitors
• Key elements:
• Computer-aided design (CAD) software that made engineers more productive
• New communication system to allow conflicts to be resolved faster
• Centralize control of all drawings and documents in a central database to reduce maintenance costs
• ALM encompasses:
• Requirements management
• Software architecture
• Computer programming
• Software testing
• Software maintenance
• Change management
• Project management
• Release management
ALM
8. • Five imperatives for successful ALM
• Maximize product value with in-context collaboration
• Integrate discussions about items into the plan
• Collaborate with ALL stakeholders
• Accelerate time to delivery with real-time planning
• Track the work of the entire team in one place
• Integrate the plan with task execution
• Plan continuously
• Improve software quality with lifecycle traceability
• Make it easy to link artifacts, even across disciplines
• Use traceability to assess completeness
• Refine predictability with development intelligence
• Identify measurements that are appropriate for the team
• Rely on data that is generated automatically
• Start small!
• Reduce costs with continuous improvement
• Encourage all team members to participate
• Make the results of improvements visible to everyone
• Review continuously
ALM
9. • Collaborative Lifecycle Management
• Conceptually:
• The coordination of software development activities across
business and system requirements, design, development, build,
test, and delivery
• As a solution:
• A seamlessly integrated release of tools built on a Jazz team
server:
• IBM/Rational Team Concert (RTC)
• IBM Rational Quality Manager (RQM)
• IBM Rational Requirements Composer (RRC)
• Design Management
• IBM Rational Software Architect Design Manager (RSA) - for systems and
embedded software engineers
• IBM Rational Rhapsody Design Manager (RDM) – for software designers
• Version 4.0.3 released on 6/14/2013
CLM Defined
11. Jazz Team Server
Requirements
Management
Quality/Test
Management
Project Transparency
Planning
• Integrated release/iteration planning
• Effort estimation & progress tracking taskboards
• Out of the box process templates: formal or agile
Change and Configuration Management
CLM: A Closer Look
12. Jazz Team Server
Requirements
Management
Quality/Test
Management
Planning
• Integrated release/iteration planning
• Effort estimation & progress tracking taskboards
• Out of the box process templates: formal or agile
Project Transparency
• Customizable web based dashboards
• Real time metrics and reports
• Project Milestone tracking and status
Change and Configuration Management
CLM: A Closer Look
13. Jazz Team Server
Requirements
Management
Quality/Test
Management
Planning
• Integrated release/iteration planning
• Effort estimation & progress tracking taskboards
• Out of the box process templates: formal or agile
Project Transparency
• Customizable web based dashboards
• Real time metrics and reports
• Project Milestone tracking and status
Version
Control
Work Items Build
Change and Configuration Management
CLM: A Closer Look
15. Build
Version
Control
Work Items
• Component-based SCM
simplifies reuse across projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
Change and Configuration Management
CLM: A Closer Look
16. Build
Work Items
• Component-based SCM
simplifies reuse across projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
• Defects, enhancements, and
conversations
• View and share query results
• Approval and discussion
support
• Query editor interface
Change and Configuration Management
Version
Control
CLM: A Closer Look
17. Work Items
• Component-based SCM
simplifies reuse across projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
• Defects, enhancements, and
conversations
• View and share query results
• Approval and discussion
support
• Query editor interface
Change and Configuration Management
Version
Control
CLM: A Closer Look
• Automated traceability to work
items and change sets
• Build definitions for team and
personal builds
• Local or remote build servers
• Multi-level continuous integration
Build
18. Work Items
• Component-based SCM
simplifies reuse across projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
• Defects, enhancements, and
conversations
• View and share query results
• Approval and discussion
support
• Query editor interface
Change and Configuration Management
Version
Control
CLM: A Closer Look
• Automated traceability to work
items and change sets
• Build definitions for team and
personal builds
• Local or remote build servers
• Multi-level continuous integration
Build
19. Jazz Team Server
Requirements
Management
Quality/Test
Management
Planning
• Integrated release/iteration planning
• Effort estimation & progress tracking taskboards
• Out of the box process templates: formal or agile
Project Transparency
• Customizable web based dashboards
• Real time metrics and reports
• Project Milestone tracking and status
BuildVersion
Control
Work Items
• Component-based SCM
simplifies reuse across
projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
• Defects, enhancements,
and conversations
• View and share query
results
• Approval and discussion
support
• Query editor interface
• Automated traceability to
work items and change sets
• Build definitions for team and
personal builds
• Local or remote build servers
• Multi-level continuous
integration
Change and Configuration Management
CLM: A Closer Look
20. Jazz Team Server
Requirements
Quality/Test
Management
Planning
• Integrated release/iteration planning
• Effort estimation & progress tracking taskboards
• Out of the box process templates: formal or agile
Project Transparency
• Customizable web based dashboards
• Real time metrics and reports
• Project Milestone tracking and status
BuildWork Items
• Component-based SCM
simplifies reuse across
projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
• Defects, enhancements,
and conversations
• View and share query
results
• Approval and discussion
support
• Query editor interface
• Automated traceability to
work items and change sets
• Build definitions for team and
personal builds
• Local or remote build servers
• Multi-level continuous
integration
• Convenient tools to define
and organize requirements
• Automated traceability to
identify gaps and change
impact
• Visually define requirements
with diagrams and custom
project content
Change and Configuration Management
Version
Control
CLM: A Closer Look
21. Jazz Team Server
Requirements Quality/Test
Planning
• Integrated release/iteration planning
• Effort estimation & progress tracking taskboards
• Out of the box process templates: formal or agile
Project Transparency
• Customizable web based dashboards
• Real time metrics and reports
• Project Milestone tracking and status
BuildWork Items
• Component-based SCM
simplifies reuse across
projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
• Defects, enhancements,
and conversations
• View and share query
results
• Approval and discussion
support
• Query editor interface
• Automated traceability to
work items and change sets
• Build definitions for team and
personal builds
• Local or remote build servers
• Multi-level continuous
integration
• Convenient tools to define
and organize requirements
• Automated traceability to
identify gaps and change
impact
• Visually define requirements
with diagrams and custom
project content
• Comprehensive test
planning
• Simplified lab management
• Quicker manual testing
• Requirements-driven testing
Change and Configuration Management
Version
Control
CLM: A Closer Look
22. Jazz Team Server
Requirements Quality/Test
Planning
• Integrated release/iteration planning
• Effort estimation & progress tracking taskboards
• Out of the box process templates: formal or agile
Project Transparency
• Customizable web based dashboards
• Real time metrics and reports
• Project Milestone tracking and status
BuildWork Items
• Component-based SCM
simplifies reuse across
projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
• Defects, enhancements,
and conversations
• View and share query
results
• Approval and discussion
support
• Query editor interface
• Automated traceability to
work items and change sets
• Build definitions for team and
personal builds
• Local or remote build servers
• Multi-level continuous
integration
• Convenient tools to define
and organize requirements
• Automated traceability to
identify gaps and change
impact
• Visually define requirements
with diagrams and custom
project content
• Comprehensive test
planning
• Simplified lab management
• Quicker manual testing
• Requirements-driven testing
• Single structure for project-related artifacts
• World-class team on-boarding/off-boarding
including team membership, sub-teams, and
project inheritance
• Role-based operational control for flexible
definition of process and capabilities
• Team advisor for defining/refining “rules” and
enabling continuous improvement
• Process enactment and enforcement
• In-context collaboration enables team members
to communicate in context of their work
Change and Configuration Management
Version
Control
CLM: A Closer Look
23. • Why add CLM to my existing software project?
Why CLM?
24. • Why add CLM to my existing software project?
• We already have a Software CM solution in place…
• CLM provides:
• Built-in build and process automation
Why CLM?
25. • Why add CLM to my existing software project?
• We already have a Software CM solution in place…
• CLM provides:
• Built-in build and process automation
• We have an automated build solution already…
• CLM provides:
• Integrated requirements and quality management
Why CLM?
26. • Why add CLM to my existing software project?
• We already have a Software CM solution in place…
• CLM provides:
• Built-in build and process automation
• We have an automated build solution already…
• CLM provides:
• Integrated requirements and quality management
• But, we have requirements and test solutions too…
• CLM provides:
• Integrated project planning
• Flexible project dashboards
• “Social” collaboration
• Web-based and Eclipse-based client access
Why CLM?
27. Jazz Team Server
Requirements Quality/Test
Planning
• Integrated release/iteration planning
• Effort estimation & progress tracking taskboards
• Out of the box process templates: formal or agile
Project Transparency
• Customizable web based dashboards
• Real time metrics and reports
• Project Milestone tracking and status
BuildWork Items
• Component-based SCM
simplifies reuse across
projects
• Change set-based for easy
feature additional/removal
• Server-based sandboxes
• Defects, enhancements,
and conversations
• View and share query
results
• Approval and discussion
support
• Query editor interface
• Automated traceability to
work items and change sets
• Build definitions for team and
personal builds
• Local or remote build servers
• Multi-level continuous
integration
• Convenient tools to define
and organize requirements
• Automated traceability to
identify gaps and change
impact
• Visually define requirements
with diagrams and custom
project content
• Comprehensive test
planning
• Simplified lab management
• Quicker manual testing
• Requirements-driven testing
• Single structure for project-related artifacts
• World-class team on-boarding/off-boarding
including team membership, sub-teams, and
project inheritance
• Role-based operational control for flexible
definition of process and capabilities
• Team advisor for defining/refining “rules” and
enabling continuous improvement
• Process enactment and enforcement
• In-context collaboration enables team members
to communicate in context of their work
Change and Configuration Management
Version
Control
How does CLM meet ALM imperatives
28. Jazz Team Server
Requirements Quality/Test
Planning
• Accelerate time to delivery with real-time planning
Project Transparency
• Refine predictability with development intelligence
• Reduce costs with continuous improvement
• Collaboration
• Traceability
• Maximize product value with in-context collaboration
• Reduce costs with continuous improvement
Change and Configuration Management
• Maximize product value with in-context collaboration
• Improve software quality with lifecycle traceability
• Collaboration
• Traceability
How CLM meets ALM imperatives
29. • Process
• Sunk cost in defining development processes
• Integration of existing workflow customization with new process
• Resistance to workflow/process simplification
• Cost to configure new tools to enable custom workflows
• People
• Cost of educating users in new tools/process
• Schedule impact while users become proficient in new process
• Getting buy-in:
• Convincing “power users” of value of new tools/process
• Overcoming arguments for “favorite” tools
• Resistance to change
• Discomfort with more schedule/plan visibility
Challenges for existing projects
38. • Importer
• One-way data migration
• Transfer management from current tool to CLM
• Bridge
• Provides link from CLM into current tool
• Creates “loose coupling” – CLM UI navigation to invoke
current tools
• Simplest one to write if doesn’t already exist
• Synchronizer (aka Connector)
• Two-way synchronization of data between current tool
and corresponding CLM data
• Intended to support parallel efforts in both repositories
Deployment – Connector Types
39. • Importer
• Desire to move off of legacy tools
• Preservation of historical versions not a high priority
• Opportunity for process simplification/redesign
• Bridge
• High satisfaction with current tools/processes
• Desire to preserve investment in current environment while adding
RTC planning features
• Easiest deployment path (no data to migrate or synchronize)
• Synchronizer (aka Connector)
• Supports trial projects without isolating trial users from rest of team
• Allows work to be done in either repository and be visible in both
• Optimizes setting up “agile islands” for small/medium teams whose
work is destined for delivery to legacy tools
Deployment – Connector Rationale
40. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
41. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
• Sync.
Deployment Options
42. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
43. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
44. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
45. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
46. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
• Sync.
Deployment Options
47. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
48. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
49. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
50. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
51. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
52. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
53. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
54. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
55. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
56. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
57. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
58. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
59. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
• Bridge
Deployment Options
60. Jazz Team Server
Requirements Quality/Test
Planning Project Transparency
BuildWork Items
Change and Configuration Management
Version
Control
Deployment Options
61. For an exhaustive listing of available integration options, see:
https://jazz.net/extend/integrations/
Deployment Options
62. • How complex is the existing version control environment?
• Number of servers
• Number of supported users/clients
• Are multiple development locations being supported and coordinated?
• How customized is the development and delivery workflow?
• Is the version control integrated with other legacy tools?
• Is there a desire to work with RTC source control?
• Will it be used in parallel with the existing version control tools/process?
• How complex is the existing change management environment?
• Are heavily customized change control workflows in use?
• Has the legacy tool been extensively customized?
• What disciplines’ change workflows are currently supported?
• Will CLM be used to address business needs not yet being met?
• Requirements Management
• Test/Quality Management
• Planning/scheduling
• Reporting/dashboards
Key Deployment Considerations
63. • Start small
• Inter-operability support simplifies implementing in small pieces
• Preserves investment in legacy tools while gaining new benefits
• Make the process slightly simpler than it needs to be
• Synchronizing data between legacy and new tools sounds appealing
• But, it introduces an additional layer of environment complexity
• Use pilot projects
• Focus on early adopters
• Apply lessons learned on pilots to later projects
• Allocate dedicated resources to support deployment
• Typical cause of failure
• Human nature is to fall back to familiar process when things get busy
• Publicize successes
• Build a desire for projects to get to move to the new environment
Deployment Best Practices
64. • CLM is both a concept and a solution
• IBM Rational CLM provides a unique ALM solution
• Preserves legacy tools while enabling Agile principles and processes
• Supports 5 imperatives for successful ALM
• Collaboration, planning, traceability, development intelligence, and continuous
improvement
• Integrates with industry-leading tools
• Allows for incremental implementation
• IBM Rational CLM is uniquely suited for use in existing development
environments
• Deployment best practices:
• Start small
• Keep process simple
• Leverage successful pilots
• Dedicate resources to roll-out
• Publicize successes
Summary