design thinking, agile, devops - fuel the innovation delivery
Post on 16-Apr-2017
2.667 Views
Preview:
TRANSCRIPT
Design Thinking, Agile, DevOps Fuel the Innovation Delivery
Yi XU, Agile Coach & Consultant GCG Agile/DevOps CoE, IBM GBS
Visibility Adaptability
Business Value Risk
1. Functionality is developed or prototyped and immediately checked with business - hence the outcome (application functionality) is visible from the start and continuously improved
2. Close interactions or collaboration between business and IT leads to better outcome
3. Responding to changes instead of following long term plans gives flexibility
4. Pervasive transparency that shows the status of the development at any stage reduces risk
Agile Value Proposition is Good, but Not Enough
IBM Design :: IBM Confidential :: ©2014 IBM Corporation 4
“The biggest driver of sustained growth is the Client Experience”
-- Ginni Rometty
IBM Design :: IBM Confidential :: ©2014 IBM Corporation
! An approach for leaders to guide their teams to achieve market outcomes
! An approach for project teams (business, design, & technology) to develop exemplary solutions
! An approach to transform companies into becoming client-centered
IBM Design Thinking
Placing ‘user experience’ and the ability to meet customer needs at the core of design, by using it as the measure for generated business and customer value.
DevOps Approach Apply Lean principles to software innovation and delivery to create a continuous feedback loop with customers
Line-of-business
Customer
1
3
2
1. Get ideas into production fast 2. Get people to use it
3. Get feedback
Adopt DevOps approach to continuously manage changes, obtain feedback and ,
deliver changes to users
Eliminate any activity that is not
necessary for learning what
customers want
Understand
Explore
Prototype
Evaluate
Hills Invest for market
outcomes
Sponsor Users Envision the user
experience
Playbacks Collaborate, align,
engage!
! The IBM Design Thinking framework is a modern approach to iterative experience design and development. Paired with agile, IBM Design Thinking is a powerful way to increase and accelerate innovation across our clients. IBM Design Thinking Principles
The IBM Design Thinking is rooted in a product management philosophy for software and experience implementation and has been practiced and refined at scale across hundreds of IBM Software Application and client digital design and development initiatives. The main principles of design thinking include: • understand
developing deep empathy for users • explore
the process of generating potential solutions for your user’s problem
• prototype process of rendering ideas as concrete experiences
• evaluate decide whether to move forward with an idea, or generate more solutions
IBM Design Thinking combines these general principles with three new core practices that are unique to IBM: Hills, Sponsor Users, and Playbacks. These practices are designed to maintain a Team’s focus as they attempt to solve big, often complex problems for real people, ensuring that we hit unforeseen roadblocks early, before we get to market.
IBM Design Thinking supports Agile product development
IBM Design Thinking
9
IBM has a long history in design and was the first corporation to establish a worldwide design program in the 1950s. Our services organization has worked for decades helping clients achieve their business goals through design. Building on that heritage and organizational knowledge as well as industry best practices, we now have a company-wide framework called IBM Design Thinking which is optimized for the fast moving world of cloud, mobile, analytics, social, and more. It is used within our product divisions and is available to clients through our Interactive Experience services organization within Global Business Services (GBS). It brings together specialists in business, technical, and design to collaborate in order to understand, explore, prototype, and evaluate with a razor focus on the problem spaces to address and achieving desired market outcomes.
IBM Design Thinking focuses on three core practices to help solve a number of well-known issues during product delivery – Hills, Sponsor Users, and Playbacks.
Karel Vredenburg IBM Design Director/
Sponsor User
Playback and Evaluate
I Like
I Wonder I Suggest
I Would Improve
• Overall experience and improvement the function will bring to work efficiency. • PEM chat function between HR, PEM and staff. • Having an overview of staff and activities in one place (home screen). • Alerts notifying of outstanding actions and approaching deadlines.
• The clarity of the overall Home Screen • The labelling of the alerts and functions to make it clearer • Clearer understanding of how to go between screens • The link functionality to all PEM data sources
• Can I see employee salary? • Will this bring a reduction in the number of reminders and approval emails that I currently receive (5/day)?
• Including texts for icons on the Home Screen • Making it clearer that all key links are on one page. • Consistency between screens (e.g. headings). • Maximum of 5 clicks to complete a task • Calendar will automatic booking of meetings • Ability to customise the Home Page. • Only alerts that require actions visible on screen.
What to expect out of Agile team? Agile integrates proven practices that enable innovation and mitigate solution delivery risk
16
IBM Confidential
Agile Waterfall
Self-Organizing, Empowered, Cross Functional, End-to-End Value Delivery Team
Developers
Testers
Business Analyst
A team that has everything and everyone they need to
deliver a working increment of tested, documented,
deployable software.
Core Agile Delivery
Team Lead Developer
Product Owner / Business SME
Scrum Master
Vertical Slicing & User Story
• a premium member can cancel the same day without a fee • a non-premium member is charged 10% for a same-day cancellation • an email confirmation is sent.
As a member, I want cancel a reservation, so that I can avoid waste.
Condition of Satisfaction
Definition of Done
Condition of Satisfaction • = Confirmation (User Story’s 3C) • ≈ Acceptance Test It is • Feature’s behavior details • User’s expected results in certain scenarios
Quality: CoS & DoD
Small Batch, Itemized Requirement to Delivery
Sprint Planning • Fit to Sprint Capacity
SS
SS
SSS S
SSS S
SS
S
Future Future
Small Batch Requirement Analysis • Refine Requirements according to Sprint Capacity • Prepare Requirements for future Sprints
Req. Analysis
SSSS
• Ordered Requirement/Story • Team Backlog
Continuous Analysis, Planning, Implementation
Req. DONE Req. Ongoing Req. for Next Sprint
! One team culture ! Two-way flow ! Minimise hands-off ! End-to-end and capability within each location
! Innovation ! Share and learn ! Continuous knowledge transfer
! Empowered ! Willing to do everything ! T-shaped skills ! Courage to challenge, and be challenged
! Being able to start/stop work at low cost ! Move from Push-to-Pull culture of Self-Service ! Deliver Business Value rather than Projects
! Being able to start/stop work at low cost ! Funding of work is conductive to the Agile ways of
working ! Agile Demand Management
Agility @
Scale
! End-to-end capability within teams ! Long lived teams ! “you build it, you maintain it” ! Capacity and Dependency Management
PASSIONATE PEOPLE
CONTINUOUS IMPROVEMENT
DISTRUBUTED DELIVERY
CUSTOMER VALUE
SCALING TEAMS
AGILE GOVERNANCE
Scale Matters
Agile Delivery with Multiple Teams
Team Backlog Team Backlog Team Backlog Team Backlog Team Backlog Team Backlog
Team Backlog Team Backlog Team Backlog Team Backlog Team Backlog Team Backlog
Team Backlog Team Backlog Team Backlog Team Backlog Team Backlog Team Backlog
Product Feedback Loop
Product Backlog
Product Increment Product Increment Product Increment
Agile Team A
Agile Team B
Agile Team C
Product Feedback Loop Product Feedback Loop
© 2015 IBM Corporation
Self-Organizing Cross-Functional Feature Teams i.e. End-to-End Delivery Team
Scrum of Scrums
Scrum of Scrums of Scrums
E2E Delivery Team S o S
E2E Delivery Team
Shared Dev Platform, Requirements (Product Backlog), Testing Env etc.
(@Suncorp) Lync TV for video conference, JIRA
to sync physical wall (backlog)
Continuous Integration Quality Dashboard
Scale Agile in a Global Organization
Product Backlog
Sprint Backlog
Deployable Capabili7es Mul7ple Sprints
Agile Team 1
Agile Team n
Product Mangement Team Define themes, capabilities, initial stories, assumptions Capacity Planning for next release Facilitate common cross-team product insight and tradeoffs
Delivery Support Teams Guide and support agile teams Assist in product backlog refinement Work WITH teams to standardize and optimize
(agile approach, architecture decisions, reviews, code integration, regression test)
Release Backlog
SAMPLE Organization Structure
Arch CoP
Tester CoP
Front-End Dev CoP
SoS
Scrum Team
Chief PO
PO PO PO
SM SM SM SM SM SM
Chief SM
MW Dev CoP
End-
to-E
nd P
rodu
ct D
eliv
ery
Specific Arch Team
Scrum Team Scrum Team Scrum Team Scrum Team Scrum Team
SAMPLE: Business Process Modeling & User Story
Business Process Modeling
MRD L0—L2
PRD L3
Level 0 – Industry Area Level 1 – Business Area Level 2 – Business Scope Level 3 – Business Process Level 4 – Business Activity Level 5 & 6 – Business Step Level 7 & 8 – System Operation Step
As [type of user],
I want [feature],
So that [business value]
User Story Estimation 5 Story Points
Task1 Make login page UI
Estimate 5 Hours
Task2 Coding text field verification rule
Estimate 2 Hours
Task3 Call web service to verify credentials
Estimate 3 Hours
Task4 Write tests
Estimate 4 Hours
Priority
Agile Team Kanban Board
SAMPLE: Project & Team Kanban Boards
Project Kanban Boards
Not a Perfect Example, as Team is in multi-Projects
Pair Programming TDD
Acceptance Test
Collective Code Ownership
Daily Standup
Product Backlog
Burndown Chart
Sprint Planning Retrospective
Scrum Master
Product Owner
Refactoring
Whole Team
Sustainable Pace
Awareness
Agile Transformation Committee
Product Planning & Management
System Metaphor
Governance
Management Technical
Agile Delivery Adoption
Agile Transformation We also need tooling+ to speed up delivery.
The DevOps Ecosystem
1
2
3
4
5
Developer
Tools
Environment
Process
QA Tester Team LeadOperations Analyst
DevOps components: Process (includes governance and organization), Tools, Environment DevOps Methodology supports various environments: Mainframe, Midrange, Distributed, Cloud, Mobile, etc Various Tools to support project life-cycle depending upon the environment The processes aid continuous solution delivery using Iterative Agile Methodology by leveraging tighter integration between Development and Ops Teams The processes, tools and environment become the foundation on which product driven iterative development occurs
DevOps is a development and test approach that fosters collaboration between Development and Operations teams to enable continuous delivery
Previous efforts/practices, such as Agile, addressed only a subset of the value chain
Develop / Test
Release / Deploy
Plan / Measure
Monitor / Optimize
Continuous Delivery of Software-driven innovation with a feedback loop
Business Owner
Service Developer/Tester Service
Operations Target Customer
Goal: Get ideas into market/production fast, get people to use it, get feedback
Idea Market
DevOps
DevOps breaks down silos and enables collaboration
Continuous Deployment
Cont. Business Planning Continuous Integration
Agile Development Continuous Monitoring
Continuous Testing
DevOps enables an E2E approach to product delivery
© 2015 IBM Corporation
Implementing a DevOps toolchain
SCM
Build / CI Server
Unit testing Test Automation Test Stubbing
Delivery Pipeline
Environment Configuration
Automated Monitoring
Asset Repository
DevOps Best Practices,
Build a tooling “pipeline” for DevOps practices ! Assess tooling options that are available
! Implement tooling solutions for enablement of DevOps
! Supporting build cycle – source code check in source code control, coordinate your
build
! Deployment – automated test environments and infrastructure
! Automated testing
! Reporting & monitoring
! Experimentation & feedback loops
! Analytics
Provide those Tools-as-a-Service
! Dev teams should use hosted everything
! Infrastructure, dev tools, build/test/deploy tools, + operational tools
! Hosted tools should evolve quickly, be extensible, and have great SLAs
! Tools should work well individually but better together
how does IBM do it and recommend
People
Process Tools
Operate Develop/ Test
Deploy
Steer
Continuous Delivery Pipeline
Agile planning and tracking Applica7on auto-‐scaling AppScan mobile analyzer Con7nuous delivery pipeline Git hos7ng
Mobile applica7on security Mobile data Mobile quality assurance Monitor & analy7cs Push
Bluemix DevOps services RapidApps (beta) Server-‐side code Web IDE
© 2015 IBM Corporation
First, preposition the role of architecture and product manager. They need sort out the items and set priority to projects and requirements by using tools like integrated model.
2
Second, architecture and product manager will assign tasks with agreed priorities to each development team.
2
Agile in development team includes daily scrum meeting, sprint iteration, Kanban, automatic testing, continuous integration, etc. Put aside environment dependency, through data and environmental simulation, with the help of XP and TDD which can improve personal capability and efficiency, component team can be transferred into feature team. Each team can achieve team level agile and ultimately improve team productivity.
1
From project level, under project dimension, each development team leader and project manager form virtual project agile team. They track and monitor tasks, coordinate progress. Finally delivery based on priority achieved.
2
Based on project level agile, each department collaborate with each other to solve problems of version-level requirements, dependency management, multiple project requirements pool, project priority and requirements , task priority analyze and delivery, testing task precondition, large version project tracking and management issues.
3
The ultimate vision is to achieve enterprise level agile with continuous delivery, that is, agile practice with continuous integration extends to the testing center and application support, achieve continuous integration testing and deployment of agile whole processes, product innovation center hit from the business requirements and back-end verification, testing center quick delivery, starting with requirements analysis, application support provide high efficient support for quick delivery.
4
Vision for Transformation
SAMPLE: Pilot Projects Execution Plan
standardization and commitment Guidance and consolidation Cultivation and Research
Pro
ject
Pre
para
tion
E
stim
atio
n P
hase
Promotion of development culture changes
Promotion of Agile core implementation
Promotion of Agile Tool/Environment support
Promotion of Implementation Requirement Agility
S
umm
ary
of P
ilot P
roje
cts
Three Phases
Agile Practice Implement
© 2015 IBM Corporation
Coaching and Transformation*
Identifying priorities of practices of each phases by measuring the team maturity and traits
Burn Down Chart
User story
Diff
icul
ty L
evel
Team Maturity
Stand-up meeting
Kanban
Panning meeting
Retrospective
Spring Review
Requirement Itemizing
SoS
Grooming
Proactive testing
Continuous Integration
Unit Test
Estimation and
Velocity
Automation Testing
Environment Improvement
Requirement List
Agile management tooling
Main Branch
Development
team morale Prioritizing
requirements
Iteration List
Initial Underway Mature
*
*
*
*
*
SAMPLE: Team’s Agile Practice Adoption Path
* IBM Service Offering
Coaching and Transformation*
Actions Implemented
Key Points along the way
• Intense training and education training to internal Agile Coaches
• Agile Coaches train all members of product line teams
• Rearrange requirements according to Agile approach
• Core member backup development
• Code peer review • Dev-Test collaboration • Arch-Design cross-
review
• Training to business department senior directors
• Add cooperation and deployment processes
• Consultant coach on refining architecture
• Product KPI, data-based operation • Team self-organizing, community
interaction • Culture cultivation, activity
management
• Re-charging Period for Agile Coaches
• Office place select • Role candidates
selection • Learning period for
team members
• Coaching on solving conflicts between new and traditional ways of working
• Agile capability build-up • Q&A and coaching during Agile
adoption
• Coaching more product lines
• Product quality support
• Testing work coaching
• Labor division problem of product x
• Collaboration and cooperation (with other related systems) problems of product y
• Architecture problem coaching
• Operation planning and coaching
• Teams into rapid development period
Aw
aren
ess
& T
rain
ing
Coa
chin
g by
IB
M C
onsu
ltant
Coa
chin
g by
In
tern
al C
oach
Team
Sel
f-O
rgan
izin
g * IBM Service Offering
Agile Planning & Agile Project Delivery*
2~4 Week Sprint
Daily Product Backlog
Sprint Backlog
Stand-Up
Potential Shippable Product Increment
Sprint Goal Area Product
Backlog
Product Vision
Release Planning Sprint Planning Sprint Review Sprint Retro
Continuous Integration
Test Automation
User Story
1
2
3
5
4 5
6
7
8
9
Through Continuous Coaching to Embrace Agile Values and Principles into Practice
Expect to take two or three months to start feeling comfortable with the practices and another two to six months for them to become second nature. ------ “The Art of Agile Development”, James Shore
* IBM Service Offering
IBM Design Thinking, Agile and DevOps
! Organisations are embracing User Stories as a way to document project requirements.
! Great User Stories alone do not guarantee compelling customer experiences. > Design Thinking focusses teams on valuable customer outcomes
! Organisations are embracing agile software development techniques to create potentially valuable outcomes.
! Great outcomes are only valuable when they can be used by customers. > DevOps brings an Agile way of working into the IT Operations teams, enabling rapid delivery.
! Live use generates real feedback from real Customers, Business & IT Operations people.
! Imagine a world where project outcomes are shaped by genuine insight, not clairvoyance.
1(IBM Design Thinking) + 1(Agile Development) + 1(DevOps) > 3
Kaveri, Yi XU
Agile Coach & Consultant
GCG Agile/DevOps Center of Excellence
IBM GBS GCG
CSM, CSP, PSM I
PMI-ACP, ITILv3 Foundation
Certified Coach of MG-SCC
CONTACT
• Email: shxyi@cn.ibm.com • Site: http://kaverjody.com • http://linkedin.com/in/kaveri • http://slideshare.net/kaverjody • WeChat / Skype: kaverjody • Translation: Agile Manifesto, Scrum
Reference Card, Explore It, Agile Coaching, The Element of Scrum, Management 3.0, Beautiful Teams
Books Translated by Yi XU
top related