Presented by Mr Lee Chee Yong, Agile Practice Lead of NCS Agile Competency Centre at ISS Seminar - Agile Software Development: Swift and the Shift on 18 July 2014.
3. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
#1
IT service provider
by market share
# 1
Independent SI in
Singapore*
# 1
Government,
Healthcare, &
Education by market
share
#1
> 4,000
Application developers,
consultants and
specialists
> 15,000
Service Provider in
Singapore Airport
> 3 Mil
No. of analytical reports
churned out
Source: 2012 Ranking, IT Professional Services
(Gartner, Mar 2013)
* Based on Partners awards and accreditations
No. of managed
desktops
> 550K
No. of managed
desktops & network pts
No. of projects
delivered over last 10
years
> 350K sqft
Total data
centre space
3
NCS Track Records
4. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
NCS has 8 Delivery Centres in 5 countries
Singapore, China, Malaysia, Philippines, Australia
4
Hong Kong
Chengdu
Kuala Lumpur
Suzhou
Shanghai
Philippines
Singapore
Australia
• BPO
• ITO
• Development
Centre
• BPO
• ITO
• Development
Centre
• ITO
•Testing
• Development Centre
• BPO Centre
• Development Centre
• ITO
• Development Centre
• ITO, NOC, SOC
• Data Centre
• Call Centre
• Development
Centre
• BPO
• ITO
• Development
Centre
•Development
Centre
4
Delivery Centres in 5 Asian Countries
5. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
5
Public Sector
Defence & Homeland
Security Education
Healthcare Banking Telco & Utilities
Transport & Logistics
Manufacturing
5
NCS Customer Base
7. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Source: VersionOne, published 27th Feb 2013
Caveat: VersionOne sells agile project
management software. Company is pro-agile.
Common Reasons to Go Agile
9. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Agile Conference
Story Mapping
User Personas
Poker Planning
Kanban Task-board Continuous Integration Pipeline
Daily Scrum
Unit Testing
Pair Programming
Story Journey
Agile SW Development Techniques
10. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Coaching/
Enablement
Training
Key Industry
Partnership
Strategic
Partners
Enablement &
Transformation
Company-wide
initiative
Competency Centre
Rapidly Growing Agile
Practitioners in NCS
Company Wide Agile Strategy
Agile Strategy
11. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Customers Like To Change, Change and Change.
But Don’t Understand the Rules of Scrum!
Product
Owner
Scrum
Master
Customer Rep
Service Providers
Customers
SCRUM Team
Stakeholders
- Cross functional
- Experienced
- Self-Organizing
- Agile PM
- Project plan and
execution
- Promotes agile
values and practices
- Empowered
decision
maker
- Committed
- Available
- Qualified
- Participative
- Provides constant
feedback
- Conduct UAT
TeamFinding a customer presentative to play the role of a fair
Product Owner Role is paramount to success!
Agile requires multiple rounds of interaction! It is basically a lot
of User Acceptance Tests and continuous interaction.
Senior Management should not undermine the decisions of the
product owner. The Product Owner must be empowered!
12. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Enlist people with Agile
experience to lead the
transformation
Formalize NCS Agile
Development
Methodology
Support tender
Proposals / Customer
Enquiries
Transform culture to Servant
Leadership and Cross-
Functional CollaborationLarge Agile to Large
Programs and Initiatives
$
Form strategic partnerships
with industry leaders
Supply a deployable pool of
skilled and highly experienced
Agile Practitioners
Setup NCS Agile
Competency Centre,
including ODC.
Coaches, Scrum Masters, Developers
& Business Analysts
Pilot Successful Agile
Projects / Build strong
technical foundation
Transformation
Agile
Journey
Invest in Agile
Training and
Coaching
Engage External
Customers Interest
AWARE PHASE PRACTICE PHASE MASTER PHASE
13. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
NCS Agile Competency Centre
• Experienced Scrum Masters, Agile Developers, Business Analyst to coach on:
• Agile Values and Lean Principles
• Scrum
• Technical Best Practices
• Average 3-4 years of Agile experience in Scrum and Extreme Programming
• Certified CSM, CSPO, PMI-ACP, PSM, PSPO, SAFe Agilist
Agile Coaching Offshore
Delivery Centre
Agile Technical
Practices
Who Are In the Agile Competency Centre?
14. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Training
• Scheduled Learning & Organization Training
• On Demand Project Focused Training
Coaching
• Coaching on Scrum Process Framework and Ceremonies
• Assistance in best practice adoption (automated testing, mock objects,
unit testing, continuous integration etc)
Customer Engagement
• Explaining Agile Concepts and Values
• Requirements Prioritization
• Consultancy Services
• Conducting Product Owner and User Training
Roles of Agile Competency Centre
16. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
16
Agile Developer Course
Developers doing hands-on Test Driven
Development through pair programming, code
refactoring and continuous integration.
Agile Process Framework
Course
Participants perform activities
to appreciate the Scrum
Inspect and Adapt cycles.
Agile Project
Manager Course
Team Leads and PM
transiting to become
servant leaders.
Agile Business Analyst Course
Analysts writing user stories and
perform requirements gathering in
iterative fashion.
NCS Internal Agile Training Programs
17. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Inputs from different
stakeholders
NO CHANGE IN SPRINT
GOAL & DURATION
Sprint
1-4 Weeks
1 DayUser
Stories
Customer
Participation
Code
Refactoring
Code
Review
Automated
Testing
Pair
Programming
Unit
Testing
Collective
Code
Ownership
Emergent
Design
Continuous
Integration
Co-located
Team
Planning
Poker
Test Driven
Development
Retrospectives
Sprint Review
Potentially
Shippable Software
Defer
Commitment Eliminate
Waste
Deliver
Fast Build
Quality In
Empower
the Team
Optimize
the Whole
Amplify
Learning
Scrum Master
& Team
Prioritised
Product
Backlog
FEATURES
Sprint
Backlog
TASKS
Product
Owner
NCS Agile Methodology Founded on Proven Methods
19. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Sprint Planning Meeting
Team decides what are the tasks required
to deliver the committed product backlog
items. Assumptions are discussed.
The team playing Planning Poker to
get team consensus on task estimates.
Sprint Planning
20. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Standup Meetings – Daily Scrum Meetings
Daily Standup at 9:15 am.
Impediments are identified and the
team self-organize to resolve these
impediments.
Daily Scrum – Standup Meetings
21. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Sprint Review Demo
During the sprint review demo, the features are examined in detail to identify defects and new
additional features that needs to be added into the product backlog.
Sprint Review
23. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Big visual monitors and screen projections
help everyone to align and quickly
understand true status of progress in
development.
Pair Programming helps to improve code
quality, share tacit knowledge and develop
friendship and teamwork within the group.
Colocation allows for face to face
communication. Issues are identified and
resolved quickly.
Pair Programming – 2 People to Do the Work of 1?
24. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
During development, JUnit tests are written
first, before the actual coding work, followed
by refactoring activities.
Write Test Before Code
– Are you Sure?
25. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Acceptance Tests are
automatically triggered per
developer code check-in.
Visible status of test results
keep the team honest and
creates sense of urgency to
resolve quality issues.
Testers play a part to influence code quality
during development timeframe.
Automated Testing
– Keeps Regression Testing Less Painful
26. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Requirements are documented as
User Stories
Screen design are part of the
requirements.
Acceptance Criteria in user stories
provides the basis for test cases
specification.
User Story – What the Users Wants
27. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
One Jenkins To Chain it All
Run Functional Tests
Setup & Deploy
Test Environment
Create Build
Artifacts
build#121
Run Code
Coverage Analysis
Run Static
Code Analysis
Run Integration
Tests
Run Unit Tests
Build Source Code
Commit to
Version Control Development
Team
Apply Code
Changes Publish Reports
Continuous
Integration
28. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
GROUP
ENTERPRISE
Of Users Stories,
User Journey,
Product Box,
Personas, Story-
Mapping
29. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Have the Big Picture in Mind
Business Canvas and Product Box
Business Canvas Maps helps to
link IT Projects to Business
Objectives. Think from the
perspective of the customer in
terms of revenue streams,
channels etc.
Product Box exercise helps to
prioritize the key functionalities the
Product / Project is going to bring
across. Pareto’s Rule for 80/20.
30. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Understanding Your Users Through Personas
Personas help to identify who are your customers? What are the needs they
need to address using your system.
Discussing through the personas characters within the development team and
customers help to establish common end users requirements.
31. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Creating User Journeys
User Journeys describe at a high level of
detail exactly what steps different users
take to complete a specific task. Working
through the user journey help to identify
user stories that are necessary for the
application.
User Journeys discussed at Team
Level so that everyone is on the
same page of understanding.
Visualize User Interaction Using User Journey
32. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Putting Together the Whole Flow
– Spot the Discrepancies
Putting everything on one a big wall
helps to “visualize the whole”.
Missing user stories are easily
spotted out.
33. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Prioritizing User Stories through Story Mapping
Story Mapping helps to establish the
relationship of different story priorities
and dependencies to assist in release
planning. This is carried out in a
workshop with the product owner and
the development team together.
Through group participation, the entire
team understands the big picture
together, setting the ground work for
subsequent self-organizing behavior.
Mapping Out the Features to Decide on Releases
34. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Electronic Product Backlog.
A simple physical taskboard keeps track of
activities carried out by the team. Daily Standup
meetings are carried out in front of the
taskboard.
Product Backlog and Taskboard
Keeps The Team Aligned
36. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Customers Like To Change, Change and Change.
But Don’t Understand the Rules of Scrum!
Product
Owner
Scrum
Master
Customer Rep
Service Providers
Customers
SCRUM Team
Stakeholders
- Cross functional
- Experienced
- Self-Organizing
- Agile PM
- Project plan and
execution
- Promotes agile
values and practices
- Empowered
decision
maker
- Committed
- Available
- Qualified
- Participative
- Provides constant
feedback
- Conduct UAT
Team
37. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Customers Like To Change, Change and Change.
But Don’t Understand the Rules of Scrum!
Product
Owner
Scrum
Master
Customer Rep
Service Providers
Customers
SCRUM Team
Stakeholders
- Cross functional
- Experienced
- Self-Organizing
- Agile PM
- Project plan and
execution
- Promotes agile
values and practices
- Empowered
decision
maker
- Committed
- Available
- Qualified
- Participative
- Provides constant
feedback
- Conduct UAT
TeamFinding a customer presentative to play the role of a fair
Product Owner Role is paramount to success!
Agile requires multiple rounds of interaction! It is basically a lot
of User Acceptance Tests and continuous interaction.
Senior Management should not undermine the decisions of the
product owner. The Product Owner must be empowered!
38. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
LOA •10%
Requirement •20%
Development
SIT
UAT •20%
Commission •25%
PGP •15%
12 Months
Warranty •10%
LOA •0%
Release 1
• Sprint 1
• Sprint 2
• Sprint 3
Release 2
• Sprint 4
• Sprint 5
• Sprint 6
Release 3
• Sprint 7
• Sprint 8
• Sprint 9
Commission •25%
PGP •15%
12 Months
Warranty •10%
Traditional Agile
50%
50/3
50/3
50/3
You Don’t Get Paid A Cent Without Working Software!
39. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Mu Mu
Mu
39
Essential
Level
Customer
Participation
Unit Testing
Automated
Testing
Code Review
Intermediate
Level
Advanced
Level
Test Driven
Development
Pair Programming
Collective Code
Ownership
Emergent Design
Continuous Integration
(L3)
User Stories
Code Refactoring
Mutually
Reinforcing
A
depends on
B
Legend
Continuous
Integration (L1)
Continuous
Integration (L2)
Technical Practice
Co-Located
Team
Planning
Poker
People
Practice
CI L1: Automated Build CI L2: Automated Acceptance, Unit, Static Code Analysis,
auto deployment to SIT env, triggered by code commit
CI L3: Full automated testing in SIT, UAT. One touch to verify
Integrity. Continuous Delivery!
Mastering Best Practices Takes Time!
40. GROUP
ENTERPRISE
Copyright 2014 NCS Pte. Ltd. All Rights Reserved.
Tue WedMon
Sprint Planning
Development team task out,
estimate and sign-up to
deliver stories for the new
iteration
Sprint Review
Demonstrate to Product
Owner and business the
signed off stories
Retrospective
Lessons learnt and
how to do better next
time
Sprint Prep
Product Owner decide
what stories should be
played in the next sprint.
PO, analysts, architects,
developers groom the
stories to sufficient
details for discussion.
Thu Fri Mon Tue Wed Thu Fri
Daily Scrum
Daily Scrum to
resynchronize –
inspect and adapt
2 weeks
2 Weeks Sprint – Sprinting, Sprinting ...