#speakgeek - agile development in iconnect360
TRANSCRIPT
and now
MONTLY RELEASE CYCLE
IMPROVE QUALITYGREATER CUSTOMER SATISFACTION
INCREASED PRODUCTIVITY
REDU
CED RISK
SELF ORGANIZE TEAM
AUTOMATED DEPLOYMENT
ADAPT AND RESPONSE FASTER
Going back to basic
“What is a user story?”“Do our developers know how to write testable code?”“How do we test?”
Is our team been trained for success?
Management needs to realize they need to provide support and training to their team for them to be successful
Do anyone know how to automate deployment?
“Do you know what are the 12 agile principles?
Being lean – remove non
productive taskTake the first steps
Find someone to inspire
Gradual improvement –
productivity, test coverage
Don’t push hard “If your training seems hard to the average person (and it probably
would), then it’s because you have gradually worked up to that level over a long period of time. To you, it should not feel difficult because you’ve adapted to it.”
“There will always be promoters and detractors”“Change is always hard”
“Inspire advocate and influence”
“Kung Fu masters win not by sprinting, but by pacing
themselves for the long run. And they succeed
beautifully.”
Be the marathoner and not sprinter“Have a long term strategy or goals”
“Be consistent”
3 years roadmap to achieve full continuous integration
Long term technology roadmap
Continues improvement
(process, technology and individual)
Being lean
Be disciplined
“The big secret to discipline is that it
must be cultivated and nurtured — slowly,
steadily, tenderly, not clobbered with a club.”
“Know your True North and works towards it”“Define a predictable and repeatable process”
“Everyone have to do their job well”
Define the job scope and be accountable
Define standards
Schedule recurring meeting (weekly or
monthly)
Monthly release cycle – 1st or 3rd Thursday of the
month
Balance the Yin and Yang “Kung Fu trains you not just to defend yourself against punches and
kicks, but also to defend yourself from colds and flus, chronic illness, and even from accidents.”
“Balance between business requirement, technology and user experience”
“Balance between features release and fixing technical debt”
“Balance between company growth and personal growth”
“Balance between scope and timeline”
Build the agile culture and not processSchneider Model • Collaboration culture is
about working together.
• Control culture is about getting and keeping control.
• Competence culture is about being the best.
• Cultivation culture is about learning and growing with a sense of purpose.
Our development mantra – the 12 agile principles
Satisfy the customer through early and continuous delivery
Welcome changing requirements, even late in development
Deliver working software frequently Business people and developers work together daily.
Build projects around motivated individuals Maintain a constant pace indefinitely
Convey information via face-to-face conversation
Give continuous attention to technical excellence
Working software is the primary measure of progress
Simplify: maximize the amount of work not done
Teams self-organize Teams retrospect and tune their behaviours
Common issues we face Not having enough resources (UX and SETs are shared resources) No full-time product owner We need to meet release deadlines Difficult to balance between fixing technical debt and delivering
features Constantly changing requirements Poor communication
Common issues we face Not having enough resources (UX and SETs are shared resources) No full-time product owner We need to meet release deadlines Difficult to balance between fixing technical debt and delivering
features Constantly changing requirements Poor communicationAdapting the Process to Fit The Circumstance
Our Product Development Team
User Experience Engineering Test DevOps
Each team run their own scrum and their own sprint planning
Team alignment is from the quarterly release plan
UX team will always had the head start
UX and Test joins the engineering daily scrum
Everyone involved in the planning
Our UX process
Concepts & Prototype
Internal & External validation
Document requirements
Presentation to stakeholder for sign-off
Requirements Gathering and Design Research
- Validate internally to ensure business goals met & technically feasible- Validate externally with customers and users to ensure their needs are met & expectations managed
- Sketches and conceptual design and validation with the developers- Realistic clickable prototype to communicate user journeys
- Gathering requirements and data from various sources. - Research to understand users, use cases & pain points
- Documenting key behaviours and design decisions for future reference
- Present outcomes to stakeholders in Product Panel for feedback and sign-off
Presentation to development/testing/instructional design team
- Present outcomes to team to enable execution of respective tasks- Evangelise knowledge on the customer & user
Iterate
Development Phase in details
Phases Description Communications
Requirement Gathering
Initial phase of scoping and discussion Minutes and outcomes of product panel meeting communicated to involved parties
Feature Development
Software Development
Feature Stabilization Feature testing, bug fixing (production and feature release) and product showcase
Show case agenda will be communicated to relevant parties
Regression Testing Final testing and preparation for release Release communication to all staff after release readiness meeting
UX Process Feature Development Feature Stabilization
Regression Testing / Release
Product Panel Meeting
Requirement Review
Sprint Planning
Test Case Review
DevelopmentFreeze
ProductShow case
Code Freeze
Release Readiness
Meeting
Release ReleaseRetrospective
Monthly sprint
SummaryBe Lean
Be disciplineAgile is our culture
“Culture is process. Identify your culture and promote that.”