© 2009 ibm corporation ibm software group an ibm proof of technology collaborative application...
TRANSCRIPT
© 2009 IBM Corporation
IBM Software Group
An IBM Proof of Technology
Collaborative Application Lifecycle Management (C/ALM)
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 2
Welcome to the Technical Exploration Center● Introductions
● Access restrictions
● Restrooms
● Emergency Exits
● Smoking Policy
● Breakfast/Lunch/Snacks – location and times
● Special meal requirements?
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 3
Introductions● Please introduce yourself
● Name and organization
● Current integration technologies/tools in use
What do you want out of this Exploration session?
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 4
Agenda● Introduction to Collaborative Application Lifecycle Management (C/ALM)
● Lab Overview
● Module 1 Update the Product Backlog
● Module 2 Plan the Sprint
● Module 3 Sprint
● Module 4 Respond to a Test Failure
● Session Summary
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 5
Objectives● Explore how the Rational tools support collaborative application lifecycle
management by Enabling teams to collaborate in real time in the context of the work they are doing,
especially in globally diverse environments
Enabling projects to be managed more effectively by providing visibility into accurate project health information drawn directly from actual work
Automating traceability and auditability by managing artifacts and their inter-relationships across the lifecycle, empowering teams to deliver more value
● Provide a hands on experience using Rational Team Concert and Rational Quality Manager to automate the software delivery process
© 2009 IBM Corporation
IBM Software Group
An IBM Proof of Technology
Introduction to Collaborative Application Lifecycle Management (C/ALM)
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 7
ALM Integrations... a blessing and a challenge...
Integrations are the #1… Reason customers buy Rational products.Problem after they purchase.
Our customers have requested integrations for many years, this is not new.
What’s new is our approach to solving the problem via the Jazz Integration Architecture.
Brittle integrations Proprietary repository API’s
High maintenance and administration costs
Need to fully and seamlessly integrate the work of testers, business analysts, and developers
Little or no project visibility – project management and reports need to span multiple repositories & time zones
It is hard to enact a process
Inconsistency among products – user interface, underlying logic, storage
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 8
Integrations the old way
Tool A
Tool CTool B
Tool E Tool F
Tool D
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 9
The Internet – an inspiration for an architecture
● Amazingly scalable
● Integrates information on a massive scale
● Infinitely extensible
● Collaboration on unprecedented scale
● World-wide information visibility
Web Pageshtml, css, js
Audio/Videomp3, divx, mov
Documentspdf, doc
Indexgoogle, yahoo
HTTPget/put/post
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 10
What does Internet inspiration mean?
● Data specified independently of tools
● All data are resources with URLs
● Multiple Tools access data
● References are embedded URLs
● Resources have representations
● Unprecedented extensibility
● Independent search and query
● REST (Representational State Transfer)
Diagrams
Requirements
ChangeRequests
GlobalIndex
HTTPget/put/post
Semantic web
“Linked data”: http://www.w3.org/DesignIssues/LinkedData.html
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 11
Inspired by the world-wide-web
The evolution of software delivery: Surf the “ALM web”
All three of these areas must be addressed
“Outside-In” scenarios● “Real-World” End-to-end lifecycle● Role-based, task-based user experiences
Open Approach to define the SDLC Data model ● Cohesive, open and customizable data model for the whole
Software Delivery Life cycle● Collaborate openly on common resource definitions
Proven architecture and principles of the Internet● Presentation / Semantic Split ● Open, Extensible and On-Demand
Workflow
Data
Architecture
Jazz Integration Architecture
Open Services for Lifecycle Collaboration
C/ALM scenarios public on Jazz.net & open-services.net
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 12
Team collaboration based on middleware servicesBuilt on an extensible platform and common repository
Tool A Tool B Tool C Tool D Tool E Tool F
Events &Services
Team Collaboration Services
Tool A
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 13
IBM & Partner Ecosystem
Global Development and Delivery
Discipline-specific pluggable modules
Deep functionality Eclipse and web
UI based on need Integrated
Practitioner tools
Project Health & Dashboard
Cross-discipline integration
Enterprise-scale Heterogeneous
vendor support
Jazz Foundation Services
Project status, charts, reports
Multi-repository data warehouse
Web based UI
Software Development Discipline-Specific Capabilities
Ass
et M
anag
emen
t
Requirements Management & Definition
Collaborative Development
Quality ManagementEnterprise Build Management
Reports, Feeds
Automation & Scanning
Cross-repository services
Collabor-ationProcessQueryStorageDiscovery
Data ware-housePresenta-tion Admin
Project & Iteration Plans
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 14
Business Planning
& Alignment
Optimizing desired business outcomes
Source: Based on hundreds of client interactions of the IBM Rational Services Organization, as observed by VP Services, IBM Rational
Best practices in scope management can improve predictability of project delivery by 20-30%
Being able to collaborate on work items, defects and
build errors can reduce late rework by 25-50%
Analyst
Quality Management
Configuration& Change
Management
Architect Developer
Automated status reporting derived from evolving
engineering artifacts canimprove productivity by 5-10%
Business Executive
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 15
What is C/ALM 1.0
● One of many projects contributing to Rational’s C/ALM strategy. C/ALM 1.0 will provide integrations between Requirements Composer 2.0
Team Concert 2.0
Quality Manager 2.0
all of which leverage Jazz Foundation 1.0.x
● C/ALM 1.0 builds on the Jazz Foundation integration support
Common User Interface elements
Collaboration in context with cross repository linking & queries
Dashboards supporting transparency of C/ALM information
● Integration capabilities exist in each product
When deployed together, the integration scenarios provide a C/ALM solution
There is no additional software needed to enable the integrations
We expect the integrations to deepen over time and to include many other products
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 16
Themes
● Connect the work of Analysts, Developers and Testers
● Enable users to weave a ‘web’ of ALM resources that they can use to collaborate, navigate and track status
In-context collaboration
Navigation
Transparency
● Enable our customers to choose the tools that best suit their needs by providing flexible and open integrations
● Collaborate with and contribute to OSLC specifications and implementations
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 17
Collaboration fosters business alignment & high qualityRequirement links foster clarity
Analyst
Developer
TesterRational Quality Manager
Rational Team Concert
Rational Requirements Composer
Testers link to requirements from test plans and test cases
Analysts communicate requirements with links to development and test plans
Developers link to requirements from work-items
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 18
Collaboration fosters business alignment & high quality Defect links speed time to resolution
Analyst DeveloperTester
Rational Quality ManagerRational Team ConcertRational Requirements
Composer
Defects can link to requirements
Defects link to Test Execution results
Test Execution Results link to defects
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 19
19
Common UI elements aid in ease-of-use
Rich hovers provide at-a-glance, in-context information
Dashboards in all products aid in transparency
Common banners
Link Dialogs enable cross-repository linking
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 20
C/ALM Cross Product Query Viewlets
C/ALM queries leverage links to provide answers to meaning questions
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 21
C/ALM Mash-up Dashboard – RTC example
Developers have insight into requirements in Rational Requirements Composer
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 22
Link Creation independent of product choice
● A common ‘delegated’ approach to artifact creation & linking in all products. Product A asks Product B what artifacts
it can create or link to
Product B provides the UI for creating or linking to its artifacts
Link types in Foundation
OSLC implementations (Integrating application uses a single URL)
● Provides choice and flexibility Project associations drive link choices
Reduces the coupling between applications, enabling independent upgrades
Minimizes a products knowledge about the other repository artifacts
● Example: link RQM test execution failure to an RTC defect
RTC provides UI details & semantics
Quality Manager
URL calls RTC link picker
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 23
Summer 2009 – Team Concert 2.0 & Quality Manager 2.0CQ integrations included
● Quality Manager users can: Testers can link test cases to Team Concert plan items
Testers can create / link to defects to Team Concert
Submit defects to ClearQuest
CALM Queries: Tests blocked by Defects, Defects blocking Test.
● Team Concert users can: Developers can navigate links to test execution results / test cases
CALM Queries: Defects blocking Test.
Link work-items and ClearQuest records
● Administrators can: Establish Quality Manager & Team Concert repositories as “friends”
Link development and testing project areas
Configure the ClearQuest Bridge for Team Concert
Configure the ClearQuest defect provider for Team Concert
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 24
Fall 2009 – Add Requirements Composer 2.0
● Requirements Composer users can: Requirements sets link to Quality Manager test plans
Requirements create / link to Quality Manager test cases
Requirement create/link to Team Concert plan items
CALM Mash-up Dashboards containing viewlets from Team Concert
● Quality Manager (2.0.0.1) users can: Link Test Plans to Composer requirements sets
Link test cases to Composer requirements
● Team Concert (2.0.0.2) users can: Link plan items to Composer requirements
Navigate links to Composer requirements
CALM Mash-up Dashboards containing viewlets from Composer
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 25
Supported Versions
● Jazz Foundation 1.0 see Foundation 1.0 Release Plan
● July: RTC/RQM 2.0
● Fall: RTC 2.0.0.2, RQM 2.0.0.1 and RRC 2.0
● RTC / z support (releases trail RTC 2.0)
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 26
C/ALM 1.0 Supported Configuration 1
Documented on jazz.net: https://jazz.net/wiki/bin/view/Main/CALMJazzConfig
Single LDAP for user groups
Individual application servers.
User synchronization with LDAP server
Single Database server hosting all three databases reduces infrastructure & provides database back-up
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 27
C/ALM on Jazz.net
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 28
Community: open-services.net
Wiki and mailing lists
License terms Encourage contribution to and
implementation of specifications
Specifications are created under a Creative Commons Attribution copyright license
Covenant – specification implementers are free from patent claims by contributors
Process Stages Scope (scenarios)
Draft
Convergence (IP covenant)
Final Specification
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 29
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 30
Scenario for PoT Labs● You will play the role of various members on a project (called SQUAWK) as they work
through the definition, prioritization, implementation, testing and fixing of a new requirement:
Bob: The product owner
Scott: The Scrum master
Deb: A developer
Tanuj: The test lead
Marco: The development lead
● The project follows the Scrum methodology.
● You will be using Rational Team Concert and Rational Quality Manager as the project’s collaborative development environment.
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 31
Quick Scrum Overview● “Scrum” is an agile process for software development. (Often spelled “SCRUM”,
although not an acronym.)
● Scrum roles: Scrum Master: Individual who maintains the processes (essentially a project manager).
Responsible for removing impediments to team progress.
Product Owner: Represents the stakeholders
Team: Cross-functional group of people who do the work
● Scrum concepts: Story: A brief description of a user need. Each story has a relative priority and complexity.
Product backlog: A prioritized set of high-level requirements of work, usually described in stories.
Sprint: A 2-to-4 week period in which the team creates a potentially shipping product. A Scrum project consists of several sprints.
Sprint planning meeting: A meeting to determine which backlog items go into a sprint.
Scrum: A short daily meeting where each team member shares what they accomplished yesterday, what they will work on today and what, if anything is blocking their progress.
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 32
Sequence of eventsBobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 33
Sequence of events – Lab 1BobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 34
Sequence of events – Lab 2BobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 35
Sequence of events – Lab 3BobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 36
Sequence of events – Lab 4BobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 38
Powered by
Rational C/ALM Solution Components
Collaboraitve Business-Driven Quality
Coordinate quality assurance plans, processes and resources
Quality Manager
Open Lifecycle Service Integrations
JAZZ TEAM SERVER
Best Practice Processes
Search and Query
collaborationTeam awareness Events notification
Security
Dashboards
Quality Manager
Business Expert Collaboration
Requirements Composer
Elicit, capture, elaborate, discuss and review requirements
Team ConcertInnovation Through Collaboration
Unify by “thinking & working” in unison with real-time project heath
Requirements Composer
Team Concert
offeringoffering offering
Business Partner Jazz
Offerings
ClearQuest
ClearCaseBuild Forge
Asset ManagerRequisite
Pro
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 39
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
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
IBM Jazz™ Team Server
Integrated stream management
Component level baselines
Server-based sandboxes
Parallel development
ClearCase connector
SCM Work Items Defects, enhancements
and conversations View and share query results Support for approvals and
discussions Query editor interface ClearQuest connector
Work item and change set traceability
Build definitions for team and private builds
Local or remote build servers Supports Ant and command
line tools Integration with Build Forge®
Build
Iteration Planning Integrated iteration planning and execution Task estimation linked to key milestones Out of the box agile process templates
Project Transparency Customizable web based dashboards Real time metrics and reports Project milestone tracking and status
Rational Team Concert: A closer look
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 4040
Centralised Quality Management hub enabled by Jazz
Storage
Collaboration
Search & QuerySecurity
Administration: Users, projects, process
Presentation:Mashups
Best Practice Processes
ManageTest Lab
CreatePlan
BuildTests
ReportResults
ExecuteTests
IBM Collaborative Application Lifecycle ManagementIBM Collaborative Application Lifecycle Management
Test Management
Rational Quality ManagerQuality Dashboard
RequirementsManagement Defect
Management
Open Lifecycle Service Integrations
FunctionalTesting Performance
TestingWeb Service
Quality
CodeQuality
Security andCompliance
Open Platform
homegrown
Test Data Quality
Java System z, iSAP .NET
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 41
Process Sketching
Rational Requirements Composer: A closer lookRich Authoring Environment Web Review and Approval
UI Sketching and Storyboarding
Glossaries
Use CasesRich Text Requirements
Wiki style interfaceCategorize / TagCommentReview / Approve
Collaboration Server
Share work instantlyUsers / teams / authorizationsLinking between all artifactsVersioning
© 2009 IBM Corporation
IBM Software Group
Collaborative Application Lifecycle Management 42
© 2009 IBM Corporation
IBM Software Group
An IBM Proof of Technology
Collaborative Application Lifecycle Management (C/ALM)
© 2009 IBM Corporation
IBM Software Group
An IBM Proof of Technology
Module 1 – Update the Product Backlog
© 2009 IBM Corporation
IBM Software Group
Module 1 – Update the Product Backlog 45
Agenda● Introduction to Collaborative Application Lifecycle Management (C/ALM)
● Lab Overview
● Module 1 Update the Product Backlog
● Module 2 Plan the Sprint
● Module 3 Sprint!
● Module 4 Responding to a Test Failure
● Session Summary
© 2009 IBM Corporation
IBM Software Group
Module 1 – Update the Product Backlog 46
Objectives
● Explore the Rational Team Concert (RTC) web interface.
● Explore RTC dashboards and viewlets.
● Explore how RTC can facilitate and manage changes to project plans.
● Explore how RTC can manage SCRUM stories and product backlogs.
© 2009 IBM Corporation
IBM Software Group
Module 1 – Update the Product Backlog 47
Sequence of events – Lab 1BobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Module 1 – Update the Product Backlog 48
Lab 1 Scenario
● You are “Bob”, the product owner, for this entire lab.
● You have a new story that you want included in the coming sprint.
● You will create the new story, add it to the product backlog and then reprioritize the backlog so that your new story becomes the highest priority.
● All of Bob’s work will be done via the Rational Team Concert web interface.
© 2009 IBM Corporation
IBM Software Group
Module 1 – Update the Product Backlog 49
Lab 1 Concepts Learned
● The Rational Team Concert (RTC) web interface is a robust interface that can be used as the primary interface for many team roles (essentially, anyone who does not have a requirement to modify items under source control).
● RTC provides direct support for Scrum. Note: While this session uses Scrum, RTC provides excellent support for a variety of development methodologies.
● RTC dashboards provide each team member with the information they require. Projects, teams and individuals can have their own dashboards customized to their needs.
● RTC makes it easy to manage a project's development plan.
© 2009 IBM Corporation
IBM Software Group
Module 1 – Update the Product Backlog 50
© 2009 IBM Corporation
IBM Software Group
An IBM Proof of Technology
Module 2 – Plan the Sprint
© 2009 IBM Corporation
IBM Software Group
Module 2 – Plan the Sprint 52
Agenda● Introduction to Collaborative Application Lifecycle Management (C/ALM)
● Lab Overview
● Module 1 Update the Product Backlog
● Module 2 Plan the Sprint
● Module 3 Sprint!
● Module 4 Responding to a Test Failure
● Session Summary
© 2009 IBM Corporation
IBM Software Group
Module 2 – Plan the Sprint 53
Objectives
● Explore how a team using Rational Team Concert (RTC) and Rational Quality Manager (RQM) can collaborate to integrate testers with the development team and ensure test coverage.
● Further explore the RTC web interface.
● Further explore RTC dashboards and viewlets.
● Explore how RTC enables agile teams to manage sprint/iteration plans.
● Explore how RTC can be used to facilitate a sprint planning meeting.
● Explore how RTC can be used to track project status and find impediments to progress.
● Explore using RQM to update the test plan, create new test cases and link them to requirements.
© 2009 IBM Corporation
IBM Software Group
Module 2 – Plan the Sprint 54
Sequence of events – Lab 2BobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Module 2 – Plan the Sprint 55
Lab 2 Scenario
● You will play three different roles in this lab!
● As Bob, the product owner, you will use the Rational Team Concert (RTC) web interface to order and describe the highest priority features to the team.
● As Scott, the scrum master, you will use the RTC web interface to create a plan for the new sprint, add items to the plan and create development tasks for each item in the plan.
● As Tanuj, the test lead, you will use Rational Quality Manager (RQM) to add new test cases to the test plan and link them to the stories they are testing.
● Finally, as Scott (again), you will use the RTC web interface to ensure that all stories planned for this sprint have test cases associated with them.
© 2009 IBM Corporation
IBM Software Group
Module 2 – Plan the Sprint 56
Lab 2 Concepts Learned
● RQM and RTC to give users of either tool visibility into data from the other tool, and link items from either tool together. This helps all team members stay in sync.
● For teams using Scrum, RTC can be an integral tool in the sprint planning meeting. It provides views (Product Backlog, Taskboard) and viewlets (Team Velocity) that are essential to Scrum.
● RTC makes it easy to create new sprint/iteration plans and add work to them, or move items from one plan to another.
● For Scrum, stories can link to one or more development tasks that can be used to assign work to developers.
© 2009 IBM Corporation
IBM Software Group
Module 2 – Plan the Sprint 57
© 2009 IBM Corporation
IBM Software Group
An IBM Proof of Technology
Module 3 & 4 – Sprint! & Responding to a Test Failure
© 2009 IBM Corporation
IBM Software Group
Module 3 – Sprint! 59
Agenda● Introduction to Collaborative Application Lifecycle Management (C/ALM)
● Lab Overview
● Module 1 Update the Product Backlog
● Module 2 Plan the Sprint
● Module 3 Sprint!
● Module 4 Responding to a Test Failure
● Session Summary
© 2009 IBM Corporation
IBM Software Group
Module 3 – Sprint! 60
Objectives
● Explore how Rational Quality Manager (RQM) can be used to associate test implementations (scripts) with test cases.
● Explore the Rational Team Concert (RTC) Eclipse interface from a developer’s perspective.
● Understand uses RTC to accept work, complete development tasks and deliver updated work to the team.
● Explore the team build features of RTC.
● Explore how all team members can monitor the status of team builds, regardless of whether they use RTC or RQM.
© 2009 IBM Corporation
IBM Software Group
Module 4 – Responding to a Test Failure 61
Objectives
● Explore how Rational Quality Manager (RQM) can be used to execute manual tests, log test results and generate defects for the development team to fix.
● Explore how Rational Team Concert (RTC) can be used to triage defects and help determine who should be assigned new work.
● Further explore how a developer uses RTC to discover new work assigned to them, fix defects, deliver fixes to the team and work with team builds.
● Explore how a tester can use RQM to monitor the team build status, determine what work is included in a new build and verify that defects have been fixed.
© 2009 IBM Corporation
IBM Software Group
Module 3 – Sprint! 62
Sequence of events – Lab 3BobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Module 4 – Responding to a Test Failure 63
Sequence of events – Lab 4BobBob
(product owner)(product owner)ScottScott
(SCRUM Master)(SCRUM Master)
Agree to items for the backlog
Agree to items for the backlog
Prioritize the backlogPrioritize the backlog
Create the new storyCreate the new story
TanujTanuj(Test Lead)(Test Lead)
DebDeb(Developer)(Developer)
MarcoMarco(Development Lead)(Development Lead)
Define the sprint goalDefine the sprint goalDescribe the highest priority features
Describe the highest priority features
Add development tasksAdd development tasks Align the test sprint plan
Align the test sprint plan
Create script and execution recordsCreate script and execution records
Develop “surfer squawker”
Develop “surfer squawker”
Monitor the build statusMonitor the build status
Execute test & submit defect
Execute test & submit defect
Monitor the integration build
Monitor the integration build
Fix defect & deliver change
Fix defect & deliver change
Triage defectsTriage defects
Confirm defect is fixedConfirm defect is fixed
Check the team’s alignment
Check the team’s alignment
Track statusTrack status
© 2009 IBM Corporation
IBM Software Group
Module 3 – Sprint! 64
Lab 3 Scenario
● You will play two different roles in this lab.
● As Tanuj, the test lead, you will use Rational Quality Manager (RQM) to create and edit new test scripts and test execution records for the test cases you added in the previous lab.
● As Deb, the developer, you will use the Rational Team Concert (RTC) Eclipse interface to plan your work, complete your development tasks, deliver your updates to the team and execute an integration build on the team's build server.
● As Tanuj (again), you will use RQM to monitor the team build status and deploy the built application (following a test script) so that the application is ready for test.
© 2009 IBM Corporation
IBM Software Group
Module 4 – Responding to a Test Failure 65
Lab 4 Scenario
● You will play three different roles in this lab!
● As Tanuj, the test lead, you will use RQM to execute a manual test, denote that the test failed and generate a new defect related to the test result.
● As Macro, the development lead, you will use the RTC web interface to analyze the new defect, determine who should fix the defect and assign the defect.
● As Deb, the developer, you will use the RTC Eclipse interface to determine that there is a new defect assigned to you, analyze the test result related to that defect, resolve the defect and request a new team build.
● As Tanuj (again), you will notice the new build result, determine what is fixed in that build, deploy the new build and verify that the defect you created is indeed fixed.
© 2009 IBM Corporation
IBM Software Group
Module 3 – Sprint! 66
Lab 3 Concepts Learned● RQM test scripts implement test cases that can be linked to the drivers for those test cases (in
this case, stories).
● RQM includes a highly descriptive manual testing facility that provides the tester with the right level of detail required to execute the test correctly.
● RTC queries make it simple for any team member to see what they need to work on.
● A change set is the fundamental unit of change and collaboration in your team environment. Change sets are migrated between streams via two operations: accepting and delivering.
● This team did not require work items to be associated with delivered changes, but that could be turned on.
● Developers can run "personal builds" on the team's build server to ensure that the code they see in their workspace successfully builds using the team's build process. Ensuring compilation in the IDE isn't always enough.
● Team members can request a "team build" that will grab the latest code on the team's integration stream and build it on the team build server.
● Every team member has access to build data from team builds. This promotes communication and collaboration among the contributors – on local or remote sites.
© 2009 IBM Corporation
IBM Software Group
Module 4 – Responding to a Test Failure 67
Lab 4 Concepts Learned
● RQM's manual test facility allows the test to document step-by-step test results as the test is being executed, including grabbing helpful screen snapshots that may be useful in debugging.
● Test results can document the build that was used for the test, to aid in debugging.
● Defects can be created from test results and routed to the development team. Defects created from test results are automatically linked back to the test result, to aid in debugging.
● Testers can denote which defects are preventing (blocking) test cases from succeeding…ensuring they don't waste time executing the same test and generating duplicate defects. This also helps testers monitor the defects they've generated so they know when it's worthwhile to run the test again.
● RTC queries make it easy for team leads to find new work and determine the appropriate person for assignment.
● Change sets can be associated with work items to denote which artifacts were modified to implement a work item.
© 2009 IBM Corporation
IBM Software Group
Module 3 – Sprint! 68
© 2009 IBM Corporation
IBM Software Group
Module 3 – Sprint! 69
Contacts● Perth
Andy Rutherford [email protected]
● Adelaide Lee Kinsman [email protected]
● Auckland Alan Kan [email protected]
● Brisbane Davyd Norris [email protected]
● Wellington Alan Kan [email protected]
● Canberra Joe Williams
● Melbourne Davyd Norris [email protected]
● Sydney Rafal Michalski [email protected]