SlideShare ist ein Scribd-Unternehmen logo
1 von 43
Agile Way to First Iteration
Mikalai Alimenkou
http://xpinjection.com
Background
• Java Technical Lead/Scrum Master at
Zoral Labs
• 6+ years in software development
• 4+ years of working by Agile
methodologies
• Expert in Agile engineering practices
• Agile coach (TDD, Testing, Planning, etc.)
at XP Injection (http://xpinjection.com)
Ideal Agile project
I have idea of
new product!
Ideal Agile project
I have idea of
new product!
We can
implement it!
Ideal Agile project
I want to do it
in Agile way!
Ideal Agile project
I want to do it
in Agile way!
Nice! We have cross
functional and self
organizing team!
Yes, we are
ready to start!
Ideal Agile project
I have prioritized
backlog and
project vision for
you!
Ideal Agile project
I personally will
be you PO!
Ideal Agile project
OK, but lets sign
Agile contract
before?
Ideal Agile project
OK, but lets sign
Agile contract
before?
Sounds good
for me!
Lets start first
iteration!
What do you have?
What do you want to archive?
When things are simple?
• Another CRUD application
• Application with many competitors on the
market
• Ready to use requirements or specification
from the customer
• Cool idea but simple product
• Reverse engineering of existing project
What is iteration 0?
• Before first real iteration
• Prepare all tools and environments
• Establish team practices
• Prepare backlog to first iteration planning
• Learning new technologies
• Establishing team velocity
• Even earning some business value
What happens in real world?
Backlog is not ready because customer is not
ahead of developers
What happens in real world?
UI has many inconsistencies without common
UI design
What happens in real world?
Architectural decisions can’t satisfy nearest
project requirements
What happens in real world?
Functionality is ready but product doesn’t
satisfy non-functional requirements
What happens in real world?
Lack of deep common understanding of what
product is built
Lead to significant rework
STOP! We don’t do anything upfront!
What we do in Agile?
• Refactoring
• Simple design
• YAGNI
• DRY principle
• JIT
Agile planning
What do we need to start?
Concepts
???
User
Stories
Iteration
plan
Acceptance
Tests
Budget Team
What does customer need to start?
Concepts
Major
Features
Product
Design
Product
Architecture
Test
Strategy
Risks
User
Value
Efforts
Estimates
Skills
Set
Cost
Estimates
Release
Plan
User
Stories
Iteration
plan
Acceptance
Tests
Budget
Team
Execution
PlanningVision
Real transformation
Concepts Ideas
Main
Features
Features
&
Design
User
Stories
Product vision
• Help everyone be on the same page
• Collective understanding of the product
• Define main and differentiating features
• Ways:
– Product workshop
– Users, roles and functions game
– UI prototyping
We understand
• Who are the customers
• Competitors and alternative products on the
market
• Product category and role on the market
• Key features of the product
Product design
• Major data flows
• Main UI navigation paths
• Messaging and communication protocols
• Users and their roles in the system
• Main user activities
Traditional approach
Agile approach
• Actors, roles and goals list
– Whiteboard snapshots or simple spreadsheets
– Personas for each role (details like name, life cycle,
image, etc.)
• Paper or other lightweight prototyping
– Mockup tools as cheap and quick as possible
– Helps communicate effectively
• User testing
– Execution of scenarios on prototypes
– Get feedback from users to avoid early mistakes
Agile risk management
• Risk meeting to identify risks
• Store main risks on cards and put them into
zone by impact and probability
• Brainstorm for high right corner risks
• Make results visible and revisit during
development
Define architecture
• Understand key components, flows and
technologies
• Reduce technological and schedule risks
• Prove main assumptions
Traditional approach
• Create detailed architectural document
• Build all kinds of diagrams and architectural
views
• Review architecture
• etc.
Agile approach
• Use informal style of documents
• Validate main architectural decisions with
architectural prototypes
• Mock unneeded components and services
Testing strategy
• Testing strategy helps to reduce time of tests
automation
• Select testing frameworks and tools for each
kind of tests
• Define roles and responsibilities for testing
Acceptance testing
• Define acceptance criteria for each User Story
during iteration planning (PO, QA)
• Create acceptance tests (PO, QA, DEV)
• Implement acceptance tests (QA, DEV)
• Use them as part of DONE criteria
• At the end of iteration all acceptance criteria
must pass
Release planning
• Divide functionality by importance
• Must have, Important, Would be nice
• Estimate features, not stories
• Don’t put all top priority stories in first release
• Story mapping
Colored backlog
Visible
Feature
Architectural
Feature
Visible
Defect
Technical
Dept
Visible Invisible
Positive
Value
Negative
Value
Hiring business resources
• Important Product Owner role:
– Strong business leadership and vision
– Understand needs of users
– Open to new ways of working
– Have planning skills, not just reacting to the facts
– Collaborative, decisive, conceptual thinker
• Wrong Product Owner can:
– Slow down the project
– Lead the team in the wrong direction
Hiring technical team
• Need experienced senior development staff early:
– Estimate features
– Define architecture
– Prepare “proof of the concept” architectural prototypes
– Help to hire rest of the team
• Full team hiring should wait for budget approval and
architectural decisions:
– Identify needed skills and team size
– Some time should be spent to bring team up to speed on
the vision
– Team trainings on Agile and engineering practices
You take away
• Not all projects may be started quickly with
Agile
• Some things needs to be done upfront
• Don’t use Agile practices fanatically
• Almost every traditional activity may be
performed in Agile way
Any questions?

Weitere ähnliche Inhalte

Was ist angesagt?

Why agile - ING bootcamp
Why agile - ING bootcampWhy agile - ING bootcamp
Why agile - ING bootcampErik Talboom
 
Iasa UK Archimate Overview
Iasa UK Archimate OverviewIasa UK Archimate Overview
Iasa UK Archimate OverviewIasa UK
 
A Portfolio of Opportunities, Johan Oskarsson - Knowit
A Portfolio of Opportunities, Johan Oskarsson - KnowitA Portfolio of Opportunities, Johan Oskarsson - Knowit
A Portfolio of Opportunities, Johan Oskarsson - KnowitKnowit_TM
 
Modeling and Evolving a Web Portal with the TOGAF Framework and the ArchiMate...
Modeling and Evolving a Web Portal with the TOGAF Framework and the ArchiMate...Modeling and Evolving a Web Portal with the TOGAF Framework and the ArchiMate...
Modeling and Evolving a Web Portal with the TOGAF Framework and the ArchiMate...Iver Band
 
Can we make Agile Architecture SAFe® ? - The Open Group London Conference 2018
Can we make Agile Architecture SAFe® ? - The Open Group London Conference 2018Can we make Agile Architecture SAFe® ? - The Open Group London Conference 2018
Can we make Agile Architecture SAFe® ? - The Open Group London Conference 2018Łukasz Wrześniewski
 
DOES16 London - Jan Schilt - DevOps Is Not Going to Work: The Phoenix Project...
DOES16 London - Jan Schilt - DevOps Is Not Going to Work: The Phoenix Project...DOES16 London - Jan Schilt - DevOps Is Not Going to Work: The Phoenix Project...
DOES16 London - Jan Schilt - DevOps Is Not Going to Work: The Phoenix Project...Gene Kim
 
Hybrid Development Workshop Presentation (San Francisco)
Hybrid Development Workshop Presentation (San Francisco)Hybrid Development Workshop Presentation (San Francisco)
Hybrid Development Workshop Presentation (San Francisco)Brian Dawson
 
Agile Or Pmbok 11 Jun09
Agile Or Pmbok 11 Jun09Agile Or Pmbok 11 Jun09
Agile Or Pmbok 11 Jun09RHDrown
 
How "Agile" helps Localization with an old Dilema
How "Agile" helps Localization with an old DilemaHow "Agile" helps Localization with an old Dilema
How "Agile" helps Localization with an old DilemaMatthias Caesar
 
Does Agile EA Equal Agile Plus EA?
Does Agile EA Equal Agile Plus EA?Does Agile EA Equal Agile Plus EA?
Does Agile EA Equal Agile Plus EA?Jason Bloomberg
 
DSDM Frameworks for Agile Project Management Offices
DSDM Frameworks for Agile Project Management OfficesDSDM Frameworks for Agile Project Management Offices
DSDM Frameworks for Agile Project Management Officesnetmind
 
Archimate 2.1 an introduction
Archimate 2.1   an introductionArchimate 2.1   an introduction
Archimate 2.1 an introductionDaan Bakboord
 
Enterprise Architecture with the Zachman Framework and the Archimate Language
Enterprise Architecture with the Zachman Framework and the Archimate LanguageEnterprise Architecture with the Zachman Framework and the Archimate Language
Enterprise Architecture with the Zachman Framework and the Archimate LanguageIver Band
 
The Business Analyst Role: Agile vs. Waterfall
The Business Analyst Role: Agile vs. WaterfallThe Business Analyst Role: Agile vs. Waterfall
The Business Analyst Role: Agile vs. WaterfallEnterprise Knowledge
 
Agile Economics - Is It Cheaper Or More Expensive To Use Agile
Agile Economics - Is It Cheaper Or More Expensive To Use AgileAgile Economics - Is It Cheaper Or More Expensive To Use Agile
Agile Economics - Is It Cheaper Or More Expensive To Use AgileVaidas Adomauskas
 
Agile Reporting in JIRA
Agile Reporting in JIRAAgile Reporting in JIRA
Agile Reporting in JIRACprime
 

Was ist angesagt? (20)

Why agile - ING bootcamp
Why agile - ING bootcampWhy agile - ING bootcamp
Why agile - ING bootcamp
 
Iasa UK Archimate Overview
Iasa UK Archimate OverviewIasa UK Archimate Overview
Iasa UK Archimate Overview
 
A Portfolio of Opportunities, Johan Oskarsson - Knowit
A Portfolio of Opportunities, Johan Oskarsson - KnowitA Portfolio of Opportunities, Johan Oskarsson - Knowit
A Portfolio of Opportunities, Johan Oskarsson - Knowit
 
Modeling and Evolving a Web Portal with the TOGAF Framework and the ArchiMate...
Modeling and Evolving a Web Portal with the TOGAF Framework and the ArchiMate...Modeling and Evolving a Web Portal with the TOGAF Framework and the ArchiMate...
Modeling and Evolving a Web Portal with the TOGAF Framework and the ArchiMate...
 
Can we make Agile Architecture SAFe® ? - The Open Group London Conference 2018
Can we make Agile Architecture SAFe® ? - The Open Group London Conference 2018Can we make Agile Architecture SAFe® ? - The Open Group London Conference 2018
Can we make Agile Architecture SAFe® ? - The Open Group London Conference 2018
 
Hybrid approach for project management,9 10-2012
Hybrid approach for project management,9 10-2012Hybrid approach for project management,9 10-2012
Hybrid approach for project management,9 10-2012
 
DOES16 London - Jan Schilt - DevOps Is Not Going to Work: The Phoenix Project...
DOES16 London - Jan Schilt - DevOps Is Not Going to Work: The Phoenix Project...DOES16 London - Jan Schilt - DevOps Is Not Going to Work: The Phoenix Project...
DOES16 London - Jan Schilt - DevOps Is Not Going to Work: The Phoenix Project...
 
Hybrid Development Workshop Presentation (San Francisco)
Hybrid Development Workshop Presentation (San Francisco)Hybrid Development Workshop Presentation (San Francisco)
Hybrid Development Workshop Presentation (San Francisco)
 
Agile Or Pmbok 11 Jun09
Agile Or Pmbok 11 Jun09Agile Or Pmbok 11 Jun09
Agile Or Pmbok 11 Jun09
 
How "Agile" helps Localization with an old Dilema
How "Agile" helps Localization with an old DilemaHow "Agile" helps Localization with an old Dilema
How "Agile" helps Localization with an old Dilema
 
2016 Fpso World congress NBigle
2016 Fpso World congress NBigle2016 Fpso World congress NBigle
2016 Fpso World congress NBigle
 
Does Agile EA Equal Agile Plus EA?
Does Agile EA Equal Agile Plus EA?Does Agile EA Equal Agile Plus EA?
Does Agile EA Equal Agile Plus EA?
 
DSDM Frameworks for Agile Project Management Offices
DSDM Frameworks for Agile Project Management OfficesDSDM Frameworks for Agile Project Management Offices
DSDM Frameworks for Agile Project Management Offices
 
AXELOS - PRINCE2 Agile® Practitioner
AXELOS - PRINCE2 Agile® PractitionerAXELOS - PRINCE2 Agile® Practitioner
AXELOS - PRINCE2 Agile® Practitioner
 
Archimate 2.1 an introduction
Archimate 2.1   an introductionArchimate 2.1   an introduction
Archimate 2.1 an introduction
 
Empowering startups
Empowering startupsEmpowering startups
Empowering startups
 
Enterprise Architecture with the Zachman Framework and the Archimate Language
Enterprise Architecture with the Zachman Framework and the Archimate LanguageEnterprise Architecture with the Zachman Framework and the Archimate Language
Enterprise Architecture with the Zachman Framework and the Archimate Language
 
The Business Analyst Role: Agile vs. Waterfall
The Business Analyst Role: Agile vs. WaterfallThe Business Analyst Role: Agile vs. Waterfall
The Business Analyst Role: Agile vs. Waterfall
 
Agile Economics - Is It Cheaper Or More Expensive To Use Agile
Agile Economics - Is It Cheaper Or More Expensive To Use AgileAgile Economics - Is It Cheaper Or More Expensive To Use Agile
Agile Economics - Is It Cheaper Or More Expensive To Use Agile
 
Agile Reporting in JIRA
Agile Reporting in JIRAAgile Reporting in JIRA
Agile Reporting in JIRA
 

Ähnlich wie Agile Way to First Iteration

UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM WatsonUserTesting
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - UXPA International
 
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...Maurizio Mancini
 
We did it!!? There is place for QAs in Agile!!?
We did it!!? There is place for QAs in Agile!!?We did it!!? There is place for QAs in Agile!!?
We did it!!? There is place for QAs in Agile!!?mkujalowicz
 
World Usability Day 2005 • User Research at Orbitz
World Usability Day 2005 • User Research at OrbitzWorld Usability Day 2005 • User Research at Orbitz
World Usability Day 2005 • User Research at OrbitzJason Kunesh
 
Agile project, myths & selection criteria
Agile project, myths & selection criteriaAgile project, myths & selection criteria
Agile project, myths & selection criteriaWilliam Hill Australia
 
Agile Testing - What, why and how.
Agile Testing - What, why and how.Agile Testing - What, why and how.
Agile Testing - What, why and how.Asim Kazmi
 
Sdec11.agile ina day
Sdec11.agile ina daySdec11.agile ina day
Sdec11.agile ina daysdeconf
 
Agile 101 for Resource Planners
Agile 101 for Resource PlannersAgile 101 for Resource Planners
Agile 101 for Resource PlannersJerry Manas
 
Agile Education: PO Basics
Agile Education: PO BasicsAgile Education: PO Basics
Agile Education: PO BasicsBharti Rupani
 
Kanban testing
Kanban testingKanban testing
Kanban testingCprime
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Kari Kakkonen
 
A New Model For Testing
A New Model For TestingA New Model For Testing
A New Model For TestingTEST Huddle
 

Ähnlich wie Agile Way to First Iteration (20)

Scrum 101
Scrum 101 Scrum 101
Scrum 101
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM Watson
 
Fundamentals of Project Management
Fundamentals of Project ManagementFundamentals of Project Management
Fundamentals of Project Management
 
Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
 
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
 
We did it!!? There is place for QAs in Agile!!?
We did it!!? There is place for QAs in Agile!!?We did it!!? There is place for QAs in Agile!!?
We did it!!? There is place for QAs in Agile!!?
 
World Usability Day 2005 • User Research at Orbitz
World Usability Day 2005 • User Research at OrbitzWorld Usability Day 2005 • User Research at Orbitz
World Usability Day 2005 • User Research at Orbitz
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
Agile project, myths & selection criteria
Agile project, myths & selection criteriaAgile project, myths & selection criteria
Agile project, myths & selection criteria
 
The Agile Mindset
The Agile MindsetThe Agile Mindset
The Agile Mindset
 
Agile Testing - What, why and how.
Agile Testing - What, why and how.Agile Testing - What, why and how.
Agile Testing - What, why and how.
 
State of Agile 2017
State of Agile 2017State of Agile 2017
State of Agile 2017
 
Sdec11.agile ina day
Sdec11.agile ina daySdec11.agile ina day
Sdec11.agile ina day
 
Agile 101 for Resource Planners
Agile 101 for Resource PlannersAgile 101 for Resource Planners
Agile 101 for Resource Planners
 
Agile Education: PO Basics
Agile Education: PO BasicsAgile Education: PO Basics
Agile Education: PO Basics
 
Kanban testing
Kanban testingKanban testing
Kanban testing
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
 
New model
New modelNew model
New model
 
A New Model For Testing
A New Model For TestingA New Model For Testing
A New Model For Testing
 

Mehr von Mikalai Alimenkou

Rise and fall of Story Points. Capacity based planning from the trenches.
Rise and fall of Story Points. Capacity based planning from the trenches.Rise and fall of Story Points. Capacity based planning from the trenches.
Rise and fall of Story Points. Capacity based planning from the trenches.Mikalai Alimenkou
 
Static analysis tools as the best friend of QA
Static analysis tools as the best friend of QAStatic analysis tools as the best friend of QA
Static analysis tools as the best friend of QAMikalai Alimenkou
 
Modern CI/CD in the microservices world with Kubernetes
Modern CI/CD in the microservices world with KubernetesModern CI/CD in the microservices world with Kubernetes
Modern CI/CD in the microservices world with KubernetesMikalai Alimenkou
 
Saga about distributed business transactions in microservices world
Saga about distributed business transactions in microservices worldSaga about distributed business transactions in microservices world
Saga about distributed business transactions in microservices worldMikalai Alimenkou
 
Effectiveness tips from Kubernetes trenches by Captain Obvious
Effectiveness tips from Kubernetes trenches by Captain ObviousEffectiveness tips from Kubernetes trenches by Captain Obvious
Effectiveness tips from Kubernetes trenches by Captain ObviousMikalai Alimenkou
 
Ride the database in JUnit tests with Database Rider
Ride the database in JUnit tests with Database RiderRide the database in JUnit tests with Database Rider
Ride the database in JUnit tests with Database RiderMikalai Alimenkou
 
Wastful waste or why everything is so slow in development
Wastful waste or why everything is so slow in developmentWastful waste or why everything is so slow in development
Wastful waste or why everything is so slow in developmentMikalai Alimenkou
 
Hexagonal architecture with Spring Boot
Hexagonal architecture with Spring BootHexagonal architecture with Spring Boot
Hexagonal architecture with Spring BootMikalai Alimenkou
 
Wastful waste or why everything is so slow in development
Wastful waste or why everything is so slow in developmentWastful waste or why everything is so slow in development
Wastful waste or why everything is so slow in developmentMikalai Alimenkou
 
DevOps checklist or how to understand where is your team in DevOps landscape ...
DevOps checklist or how to understand where is your team in DevOps landscape ...DevOps checklist or how to understand where is your team in DevOps landscape ...
DevOps checklist or how to understand where is your team in DevOps landscape ...Mikalai Alimenkou
 
DevOps checklist or how to understand where is your team in DevOps landscape
DevOps checklist or how to understand where is your team in DevOps landscapeDevOps checklist or how to understand where is your team in DevOps landscape
DevOps checklist or how to understand where is your team in DevOps landscapeMikalai Alimenkou
 
Практические трудности в разработке Медкарты для целой страны
Практические трудности в разработке Медкарты для целой страныПрактические трудности в разработке Медкарты для целой страны
Практические трудности в разработке Медкарты для целой страныMikalai Alimenkou
 
Hexagonal architecture with Spring Boot [EPAM Java online conference]
Hexagonal architecture with Spring Boot [EPAM Java online conference]Hexagonal architecture with Spring Boot [EPAM Java online conference]
Hexagonal architecture with Spring Boot [EPAM Java online conference]Mikalai Alimenkou
 
Bro, manage test data like a pro! [QA Fest 2018]
Bro, manage test data like a pro! [QA Fest 2018]Bro, manage test data like a pro! [QA Fest 2018]
Bro, manage test data like a pro! [QA Fest 2018]Mikalai Alimenkou
 
Agile antipatterns: review after 10 years of practice
Agile antipatterns: review after 10 years of practiceAgile antipatterns: review after 10 years of practice
Agile antipatterns: review after 10 years of practiceMikalai Alimenkou
 
Hexagonal architecture with Spring Boot
Hexagonal architecture with Spring BootHexagonal architecture with Spring Boot
Hexagonal architecture with Spring BootMikalai Alimenkou
 
Bro, manage test data like a pro!
Bro, manage test data like a pro!Bro, manage test data like a pro!
Bro, manage test data like a pro!Mikalai Alimenkou
 
Бытовая классификация тестировщиков с точки зрения разработчика
Бытовая классификация тестировщиков с точки зрения разработчикаБытовая классификация тестировщиков с точки зрения разработчика
Бытовая классификация тестировщиков с точки зрения разработчикаMikalai Alimenkou
 
Code Review tool for personal effectiveness and waste analysis
Code Review tool for personal effectiveness and waste analysisCode Review tool for personal effectiveness and waste analysis
Code Review tool for personal effectiveness and waste analysisMikalai Alimenkou
 
Funny stories and anti-patterns from DevOps landscape
Funny stories and anti-patterns from DevOps landscapeFunny stories and anti-patterns from DevOps landscape
Funny stories and anti-patterns from DevOps landscapeMikalai Alimenkou
 

Mehr von Mikalai Alimenkou (20)

Rise and fall of Story Points. Capacity based planning from the trenches.
Rise and fall of Story Points. Capacity based planning from the trenches.Rise and fall of Story Points. Capacity based planning from the trenches.
Rise and fall of Story Points. Capacity based planning from the trenches.
 
Static analysis tools as the best friend of QA
Static analysis tools as the best friend of QAStatic analysis tools as the best friend of QA
Static analysis tools as the best friend of QA
 
Modern CI/CD in the microservices world with Kubernetes
Modern CI/CD in the microservices world with KubernetesModern CI/CD in the microservices world with Kubernetes
Modern CI/CD in the microservices world with Kubernetes
 
Saga about distributed business transactions in microservices world
Saga about distributed business transactions in microservices worldSaga about distributed business transactions in microservices world
Saga about distributed business transactions in microservices world
 
Effectiveness tips from Kubernetes trenches by Captain Obvious
Effectiveness tips from Kubernetes trenches by Captain ObviousEffectiveness tips from Kubernetes trenches by Captain Obvious
Effectiveness tips from Kubernetes trenches by Captain Obvious
 
Ride the database in JUnit tests with Database Rider
Ride the database in JUnit tests with Database RiderRide the database in JUnit tests with Database Rider
Ride the database in JUnit tests with Database Rider
 
Wastful waste or why everything is so slow in development
Wastful waste or why everything is so slow in developmentWastful waste or why everything is so slow in development
Wastful waste or why everything is so slow in development
 
Hexagonal architecture with Spring Boot
Hexagonal architecture with Spring BootHexagonal architecture with Spring Boot
Hexagonal architecture with Spring Boot
 
Wastful waste or why everything is so slow in development
Wastful waste or why everything is so slow in developmentWastful waste or why everything is so slow in development
Wastful waste or why everything is so slow in development
 
DevOps checklist or how to understand where is your team in DevOps landscape ...
DevOps checklist or how to understand where is your team in DevOps landscape ...DevOps checklist or how to understand where is your team in DevOps landscape ...
DevOps checklist or how to understand where is your team in DevOps landscape ...
 
DevOps checklist or how to understand where is your team in DevOps landscape
DevOps checklist or how to understand where is your team in DevOps landscapeDevOps checklist or how to understand where is your team in DevOps landscape
DevOps checklist or how to understand where is your team in DevOps landscape
 
Практические трудности в разработке Медкарты для целой страны
Практические трудности в разработке Медкарты для целой страныПрактические трудности в разработке Медкарты для целой страны
Практические трудности в разработке Медкарты для целой страны
 
Hexagonal architecture with Spring Boot [EPAM Java online conference]
Hexagonal architecture with Spring Boot [EPAM Java online conference]Hexagonal architecture with Spring Boot [EPAM Java online conference]
Hexagonal architecture with Spring Boot [EPAM Java online conference]
 
Bro, manage test data like a pro! [QA Fest 2018]
Bro, manage test data like a pro! [QA Fest 2018]Bro, manage test data like a pro! [QA Fest 2018]
Bro, manage test data like a pro! [QA Fest 2018]
 
Agile antipatterns: review after 10 years of practice
Agile antipatterns: review after 10 years of practiceAgile antipatterns: review after 10 years of practice
Agile antipatterns: review after 10 years of practice
 
Hexagonal architecture with Spring Boot
Hexagonal architecture with Spring BootHexagonal architecture with Spring Boot
Hexagonal architecture with Spring Boot
 
Bro, manage test data like a pro!
Bro, manage test data like a pro!Bro, manage test data like a pro!
Bro, manage test data like a pro!
 
Бытовая классификация тестировщиков с точки зрения разработчика
Бытовая классификация тестировщиков с точки зрения разработчикаБытовая классификация тестировщиков с точки зрения разработчика
Бытовая классификация тестировщиков с точки зрения разработчика
 
Code Review tool for personal effectiveness and waste analysis
Code Review tool for personal effectiveness and waste analysisCode Review tool for personal effectiveness and waste analysis
Code Review tool for personal effectiveness and waste analysis
 
Funny stories and anti-patterns from DevOps landscape
Funny stories and anti-patterns from DevOps landscapeFunny stories and anti-patterns from DevOps landscape
Funny stories and anti-patterns from DevOps landscape
 

Kürzlich hochgeladen

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Kürzlich hochgeladen (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Agile Way to First Iteration

  • 1. Agile Way to First Iteration Mikalai Alimenkou http://xpinjection.com
  • 2. Background • Java Technical Lead/Scrum Master at Zoral Labs • 6+ years in software development • 4+ years of working by Agile methodologies • Expert in Agile engineering practices • Agile coach (TDD, Testing, Planning, etc.) at XP Injection (http://xpinjection.com)
  • 3. Ideal Agile project I have idea of new product!
  • 4. Ideal Agile project I have idea of new product! We can implement it!
  • 5. Ideal Agile project I want to do it in Agile way!
  • 6. Ideal Agile project I want to do it in Agile way! Nice! We have cross functional and self organizing team! Yes, we are ready to start!
  • 7. Ideal Agile project I have prioritized backlog and project vision for you!
  • 8. Ideal Agile project I personally will be you PO!
  • 9. Ideal Agile project OK, but lets sign Agile contract before?
  • 10. Ideal Agile project OK, but lets sign Agile contract before? Sounds good for me! Lets start first iteration!
  • 11. What do you have?
  • 12. What do you want to archive?
  • 13. When things are simple? • Another CRUD application • Application with many competitors on the market • Ready to use requirements or specification from the customer • Cool idea but simple product • Reverse engineering of existing project
  • 14. What is iteration 0? • Before first real iteration • Prepare all tools and environments • Establish team practices • Prepare backlog to first iteration planning • Learning new technologies • Establishing team velocity • Even earning some business value
  • 15. What happens in real world? Backlog is not ready because customer is not ahead of developers
  • 16. What happens in real world? UI has many inconsistencies without common UI design
  • 17. What happens in real world? Architectural decisions can’t satisfy nearest project requirements
  • 18. What happens in real world? Functionality is ready but product doesn’t satisfy non-functional requirements
  • 19. What happens in real world? Lack of deep common understanding of what product is built
  • 21. STOP! We don’t do anything upfront!
  • 22. What we do in Agile? • Refactoring • Simple design • YAGNI • DRY principle • JIT
  • 24. What do we need to start? Concepts ??? User Stories Iteration plan Acceptance Tests Budget Team
  • 25. What does customer need to start? Concepts Major Features Product Design Product Architecture Test Strategy Risks User Value Efforts Estimates Skills Set Cost Estimates Release Plan User Stories Iteration plan Acceptance Tests Budget Team Execution PlanningVision
  • 27. Product vision • Help everyone be on the same page • Collective understanding of the product • Define main and differentiating features • Ways: – Product workshop – Users, roles and functions game – UI prototyping
  • 28. We understand • Who are the customers • Competitors and alternative products on the market • Product category and role on the market • Key features of the product
  • 29. Product design • Major data flows • Main UI navigation paths • Messaging and communication protocols • Users and their roles in the system • Main user activities
  • 31. Agile approach • Actors, roles and goals list – Whiteboard snapshots or simple spreadsheets – Personas for each role (details like name, life cycle, image, etc.) • Paper or other lightweight prototyping – Mockup tools as cheap and quick as possible – Helps communicate effectively • User testing – Execution of scenarios on prototypes – Get feedback from users to avoid early mistakes
  • 32. Agile risk management • Risk meeting to identify risks • Store main risks on cards and put them into zone by impact and probability • Brainstorm for high right corner risks • Make results visible and revisit during development
  • 33. Define architecture • Understand key components, flows and technologies • Reduce technological and schedule risks • Prove main assumptions
  • 34. Traditional approach • Create detailed architectural document • Build all kinds of diagrams and architectural views • Review architecture • etc.
  • 35. Agile approach • Use informal style of documents • Validate main architectural decisions with architectural prototypes • Mock unneeded components and services
  • 36. Testing strategy • Testing strategy helps to reduce time of tests automation • Select testing frameworks and tools for each kind of tests • Define roles and responsibilities for testing
  • 37. Acceptance testing • Define acceptance criteria for each User Story during iteration planning (PO, QA) • Create acceptance tests (PO, QA, DEV) • Implement acceptance tests (QA, DEV) • Use them as part of DONE criteria • At the end of iteration all acceptance criteria must pass
  • 38. Release planning • Divide functionality by importance • Must have, Important, Would be nice • Estimate features, not stories • Don’t put all top priority stories in first release • Story mapping
  • 40. Hiring business resources • Important Product Owner role: – Strong business leadership and vision – Understand needs of users – Open to new ways of working – Have planning skills, not just reacting to the facts – Collaborative, decisive, conceptual thinker • Wrong Product Owner can: – Slow down the project – Lead the team in the wrong direction
  • 41. Hiring technical team • Need experienced senior development staff early: – Estimate features – Define architecture – Prepare “proof of the concept” architectural prototypes – Help to hire rest of the team • Full team hiring should wait for budget approval and architectural decisions: – Identify needed skills and team size – Some time should be spent to bring team up to speed on the vision – Team trainings on Agile and engineering practices
  • 42. You take away • Not all projects may be started quickly with Agile • Some things needs to be done upfront • Don’t use Agile practices fanatically • Almost every traditional activity may be performed in Agile way