Development process
agile | programming | teams
DEV. Process - overview & example
SCRUM
ceremonies
next
iteration
1. PLANNING
2. REFINEMENT
(GROOMING)
3. REVIEW (DEMO)
4. RETROSPECTIVE
daily
sprint 2
10AM SPRINT
PLANNING
sprint 1
QA
Release person
Mon Tue Wed Thu Fri Mon Tue Wed Thu Fri Mon Tue Wed Thu Fri MoWed Thu Fri
bugfixing/dev DevelopmentDev Team
1-2 days to fix leftovers (if any) Code Freeze
release “develop”
branch to staging
1-2 days of regression
testing on staging
2PM SPRINT
REVIEW
(on develop branch on UAT env.)
testing on staging
Release to
PROD on Wed
testing on staging
bugfixing/dev Development
Testing, Automation Testing, Automa
UAT on
PROD
10AM SPRINT
PLANNING
UAT on
PROD
SCRUM
ceremonies
SCRUM Process - PLANNING
Planning
ceremonies
prioritized
backlog
backlog
items
effort
involved for
each item
iteration
forecast
iteration
forecast
PO & team discuss
PO brings
team estimates
team makes
work becomes
team prepares for
planning (e.g. questions
to User Stories in Jira)
team creates tech. tasks
for User Stories
1
1
1
2
1
3
1
5
1
8
1
1
3
1
2
0
?
!
!
Estimations
ceremonies 1
1
1
2
1
3
Estimation is hard.
Agile estimation is a team sport.
effort
involved for
each item
team estimates
team makes
iteration
forecast
story points
for User
Stories
hours for
tech. tasks
team estimates
team estimates
Dev & QA process
TODO
DEVELOPMENT
CODE REVIEW
TESTING
PO SIGN OFF
DONE
REOPEN
IMPLEMENTATION APPROVED BY
PRODUCT OWNER
MANUAL TESTING
PASSED
CODE REVIEW PASSED
READY FOR TESTING
READY FOR
REVIEW
START
DEVELOPMENT
workflow
process
TODO DEVELOPMENT CODE REVIEW TESTING PO SIGN OFF DONE
process Board
process
step 1
developer
get newest code
from master
dev & qa
dev process
step 2
developer
create new branch
for feature/bug
step 1
developer
get newest code
from master
dev & qa
dev process
step 3
developer
implement new
feature / fix bug
step 4
developer
add unit tests
step 2
developer
create new branch
for feature/bug
step 1
developer
get newest code
from master
dev & qa
dev process
step 5
developer
rebase with master
and squash commits
step 6
developer
push to Github
and create Pull Request
step 7
developer
code review by
another developer
step 8
tester
manual testing of feature
branch on Testing instance
step 3
developer
implement new
feature / fix bug
step 4
developer
add unit tests
step 2
developer
create new branch
for feature/bug
step 1
developer
get newest code
from master
dev & qa
dev process
step 9
developer
merge to master - if code review is done,
and testing passed successfully
step 10
tester
final testing of feature on UAT
instance on master branch
step 5
developer
rebase with master
and squash commits
step 6
developer
push to Github
and create Pull Request
step 7
developer
code review by
another developer
step 8
tester
manual testing of feature
branch on Testing instance
step 3
developer
implement new
feature / fix bug
step 4
developer
add unit tests
step 2
developer
create new branch
for feature/bug
step 1
developer
get newest code
from master
dev & qa
dev process
Agile process
Definition of DONE
agile process
A task is done only when the following points are met:
● the implementation is completed according to description/acceptance criteria,
● if applicable implementation is covered by unit tests,
● all unit tests pass on Jenkins build,
● the code is reviewed and accepted by other developer, giving +1 when all comments are actioned,
● testing scenarios are prepared and documented,
● all tasks are tested and pass all testing scenarios and acceptance criteria,
● implementation works on the newest versions of browsers,
● code is merged into the main development branch,
● story is done when the PO has signed it off.
Definition of READY
agile process
Minimum Required Information
● Stories with description in User Story format and acceptance criteria.
● Bugs description according to bug reporting template.
● Chores and Spikes with defined expectations.
● Any changes to non-functional requirements highlighted.
● Sprint backlog is prioritized.
● Designs are available when required.
Additionally for a Sprint
● Project goal/roadmap updated and dates/meetings clarified.
● Sprint theme with SMART goals.
● Teams should understand business value/justification.

STX Next - Scrum Development Process Overview

  • 1.
    Development process agile |programming | teams
  • 2.
    DEV. Process -overview & example
  • 3.
  • 4.
    sprint 2 10AM SPRINT PLANNING sprint1 QA Release person Mon Tue Wed Thu Fri Mon Tue Wed Thu Fri Mon Tue Wed Thu Fri MoWed Thu Fri bugfixing/dev DevelopmentDev Team 1-2 days to fix leftovers (if any) Code Freeze release “develop” branch to staging 1-2 days of regression testing on staging 2PM SPRINT REVIEW (on develop branch on UAT env.) testing on staging Release to PROD on Wed testing on staging bugfixing/dev Development Testing, Automation Testing, Automa UAT on PROD 10AM SPRINT PLANNING UAT on PROD SCRUM ceremonies
  • 5.
  • 6.
    Planning ceremonies prioritized backlog backlog items effort involved for each item iteration forecast iteration forecast PO& team discuss PO brings team estimates team makes work becomes team prepares for planning (e.g. questions to User Stories in Jira) team creates tech. tasks for User Stories 1 1 1 2 1 3 1 5 1 8 1 1 3 1 2 0 ? ! !
  • 7.
    Estimations ceremonies 1 1 1 2 1 3 Estimation ishard. Agile estimation is a team sport. effort involved for each item team estimates team makes iteration forecast story points for User Stories hours for tech. tasks team estimates team estimates
  • 8.
    Dev & QAprocess
  • 9.
    TODO DEVELOPMENT CODE REVIEW TESTING PO SIGNOFF DONE REOPEN IMPLEMENTATION APPROVED BY PRODUCT OWNER MANUAL TESTING PASSED CODE REVIEW PASSED READY FOR TESTING READY FOR REVIEW START DEVELOPMENT workflow process
  • 10.
    TODO DEVELOPMENT CODEREVIEW TESTING PO SIGN OFF DONE process Board process
  • 11.
    step 1 developer get newestcode from master dev & qa dev process
  • 12.
    step 2 developer create newbranch for feature/bug step 1 developer get newest code from master dev & qa dev process
  • 13.
    step 3 developer implement new feature/ fix bug step 4 developer add unit tests step 2 developer create new branch for feature/bug step 1 developer get newest code from master dev & qa dev process
  • 14.
    step 5 developer rebase withmaster and squash commits step 6 developer push to Github and create Pull Request step 7 developer code review by another developer step 8 tester manual testing of feature branch on Testing instance step 3 developer implement new feature / fix bug step 4 developer add unit tests step 2 developer create new branch for feature/bug step 1 developer get newest code from master dev & qa dev process
  • 15.
    step 9 developer merge tomaster - if code review is done, and testing passed successfully step 10 tester final testing of feature on UAT instance on master branch step 5 developer rebase with master and squash commits step 6 developer push to Github and create Pull Request step 7 developer code review by another developer step 8 tester manual testing of feature branch on Testing instance step 3 developer implement new feature / fix bug step 4 developer add unit tests step 2 developer create new branch for feature/bug step 1 developer get newest code from master dev & qa dev process
  • 16.
  • 17.
    Definition of DONE agileprocess A task is done only when the following points are met: ● the implementation is completed according to description/acceptance criteria, ● if applicable implementation is covered by unit tests, ● all unit tests pass on Jenkins build, ● the code is reviewed and accepted by other developer, giving +1 when all comments are actioned, ● testing scenarios are prepared and documented, ● all tasks are tested and pass all testing scenarios and acceptance criteria, ● implementation works on the newest versions of browsers, ● code is merged into the main development branch, ● story is done when the PO has signed it off.
  • 18.
    Definition of READY agileprocess Minimum Required Information ● Stories with description in User Story format and acceptance criteria. ● Bugs description according to bug reporting template. ● Chores and Spikes with defined expectations. ● Any changes to non-functional requirements highlighted. ● Sprint backlog is prioritized. ● Designs are available when required. Additionally for a Sprint ● Project goal/roadmap updated and dates/meetings clarified. ● Sprint theme with SMART goals. ● Teams should understand business value/justification.