It works like this: Given (context), When (an action), Then (an outcome).
A User Story would typically have one Acceptance Criteria but may have more depending on the complexity of the User Story. If, when writing Acceptance Criteria, it turns out to be complex – you may want to consider breaking your User Story into smaller pieces.
A framework of people, processes, actions and materials which deliver the desired outcomes.
An anti-pattern is in effect a solution to a problem, but where the solution (which may appear to be useful at the time) may actually not be very effective and worse still, cause further issues.
The backlog is list Epics, User Stories or Features which have not been prioritised in the current / upcoming Sprint. The Epic backlog is maintained by the Stakeholders which defines which User Stories or Features the Project Team should prioritise in turn.
During a Sprint an emergency may cause a User Story from the Backlog to be promoted into the current or next Sprint. Similarly, a User Story which suddenly becomes unimportant, or has a dependency on a 3rd pty and cannot be completed in the current Sprint may be demoted to the Backlog.
Typically in a bi-weekly meeting the Backlog is reviewed, prioritised and sized in readiness for the next Sprint. Once refinement has been completed and your team are clear on the contents of the next Sprint, it should ideally be replayed to the Stakeholder(s) for approval.
Behaviour Driven Development is the method which encourages Acceptance Criteria in using the “Given, When, Then” format.
The Burn Up Chart shows the number of User Stories which have been delivered vs the number of User Stories. It is normal for some User Stories to be added and some to be removed from a Sprint while it’s in-flight – see the example below:
Business Agility is the capability of an organisation (or sub-division) to adapt quickly to internal and external changes, to respond quickly in a productive manner and to focus on continuous competitive advantage.
Business Agility encourages skills such as creativity, adaptability and resilience – which in turn help deliver the Outcomes required to remain agile.
Continuous Delivery is one of the aims of the Agile Framework. Each two-week Sprint should deliver tangible value in the form of a completed widget (product, software, process, material etc) or in the form of having progressed the development of a Product.
Daily Meeting (aka Scrum)
Definition of “Done”
The Acceptance Criteria attached to a User Story define when the User Story has been completed – or is “Done”.
An Epic is a large piece of work typically defined by Stakeholders or a Program Manager. For example “As ABC Ltd we have on-boarded a 3rd pty provider to satisfy our Regulatory Reporting requirements”.
An Epic usually comes with a t-shirt size ranging from XS to XXL – using the same Fibonacci series as “sizes” but typically in weeks rather than days. For example an extra-small “XS” Epic may mean one Sprint, and a medium “M” Epic may mean 4 weeks.
An Epic usually also comes with Acceptance Criteria, when help Product Owners and Project / Program Managers to break down an Epic into User Stories.
It is important than once this break-down has completed, it should be replayed to the Stakeholders / Management Team to make sure they understand and are happy with the approach.
A facilitator is someone who conducts a meeting – their focus being to create the conditions and to pursue the objectives of the meeting.
Agile attempts to define a better way of sizing Epics and User Stories by limiting the choice of estimation to the Fibonacci series.
In practice this means that you can estimate the number of days (aka Story Points) to be 0.5, 1, 2, 3, 5, 8 or 13 days. Yes 0.5 is not really in the Fibonacci series but is necessary to size User Stories which will take less than a day.
If a User Story is sized at 5 or more Story Points you may want to consider breaking it into more than one story.
Incremental Delivery means adding new functionality (e.g. in software) in as small chunks as possible – each defined by a User Story with Acceptance Criteria.
INVEST (Acronym) INVEST in Agile is an acronym which refers to how a User Story should be written: I = Independent of other User Stories N = Negotiable – i.e. not a hard specification for features V = Valuable – i.e. to the incremental development of a Product E = Estimable – i.e. you can estimate how long it will take to complete vs. it’s Acceptance Criteria S = Small – i.e. to ideally fit into a Sprint T = Testable – i.e. the User Story comes with useful Acceptance Criteria Iteration
An Agile Iteration is the length of the Sprint. For example if your Sprints are two weeks in length, you might say that a Medium Epic will take four iterations to complete.
Kanban derives from a Japanese method where work and it’s breakdown and status are displayed visually on a Kanban Board.
In it’s simplest form it has three columns To Do, Doing and Done.
In practice Agile will use a few more columns – e.g. in JIRA to keep track of the status of each User Story in the daily Scrum.
Similar to a bi-weekly Retrospective at the end of each Sprint, a Milestone Retrospective looks back at the period since the last milestone to identify what went well and what could have gone better.
It is important that a Retrospective has specific Outcomes – for example a set of actions which are fed back into the Agile process to help make improvements or avoid making the same mistake again.
Minimum Viable Product (MVP)
An MVP derives from “Lean Startup” and means an initial version of a new product which “allows a team to collect the maximum amount of validated learning about customers with the least effort” (Eric Ries, Author of “Lean Startup”).
In practice this means your MVP should be useful and deliver against a desired Outcome with the least effort. Typically this means building in assumptions, short-cuts and hard-coding (business or technical) into your MVP.
Planning Poker is an informal way during the Backlog Refinement meeting to size User Stories.
Once a User Story has been described (ideally by the Product Owner (PO) or an SME) everyone is asked to hold up cards or fingers (careful now) indicating how many Story Points should be associated with the User Story.
The PO or SME will check the results and challenge any outliers. For example if most people hold up three fingers and one holds up one finger – that person should explain why they think this User Story is one Point.
A Product Owner is not a Project Manager. In Agile, each team should “self-organise” which may need assistance from the PO.
The PO should push back on any additional User Stories which Stakeholders / Management Team may want to add once a Sprint is in-flight. If an emergency occurs then of course some User Stories can roll into the next Sprint to free up resourcing for the emergency.
The PO has to balance the demands and timelines of multiple Stakeholders.
The PO is responsible for each Sprint, beginning with understanding an Epic, translating into User Stories and running meetings with the exception of the daily Scrum.
Proof of Concept (PoC)
Although not strictly part of the Agile Framework, setting aside one or more Sprints to deliver a PoC is a very powerful method especially for technical projects requiring software development. PoC’s typically require a number of assumptions and hard-coded data which in turn enable the testing of a concept such as “Can we join trade data from multiple systems into one database for portfolio analysis”. In this example you may have to “fake” unique trade id’s or skip what would normally be unified static data to see if, once assembled, the joined up data works.
A Retrospective is an essential part of the bi-weekly rhythm of the Agile process. It occurs at the end of a Sprint, when the Scrum Master hosts a meeting where team members say what worked well, what didn’t, and what actions may be useful to capture to help improve the Agile process.
Typically the Scrum Master would own this process of capturing, communicating and tracking actions.
The Daily Scrum is the heartbeat of the Agile Framework. Each morning, the Agile team should assemble and each team member should review in just a few minutes where they are with each of their User Stories.
This session is also very useful for team members to highlight any problems they’re having – potentially to engage help from other team members, the PO and/or the Scrum Master.
The Scrum Master acts as a facilitator for the Stakeholders, Product Owners and Agile team members.
Most importantly, they run the daily Scrums and although they might not get involved in team members issues, they will capture the issues and manage a log.
Scrum Masters assist PO’s and help to improve the overall efficiency of the team.
Scrum Masters should also help motivate and empower the PO and especially the team members.
For Stakeholders as well as the PO and team, Scrum Masters produce MI for everyone to help make the planning, backlogs and Sprint Burn-Up’s all transparent for all to see.
Scrum Masters should be able to answer enquiries from Stakeholders and Senior Execs etc regarding the state of Epics, each teams Velocity and the status of any individual Sprint.
SMART is an acronym used when setting goals or milestones:
S = Specific – i.e. when setting a goal you should be as specific as you can about what you want to achieve M = Measurable – i.e. what metrics will you use to know whether or not you achieved your goal? Also known as Success Criteria. For long projects you may what to set intermediate goals which are measurable. A = Achievable – i.e. to make sure your goal is achievable and at the same time motivating for your team. If the ultimate goal is outside of your teams skill set, an intermediate goal could be to complete some training. R = Relevant – i.e. the goal you are setting is in context with a higher level goal or vision within your organisation. T = Time-boxed – i.e. in addition to being relevant, your goal should be achievable in a reasonable time, which is also part of the success criteria. Sprint
A Sprint is typically the two week period when a planned, refined and sized set of User Stories is to be worked on.
The Sprint Backlog is the set of User Stories contained in this Sprint. It is not unusual for the scope of the Sprint to change along the way. That said, it is the Product Owners job to manage & push-back on the scope-creep and involve the Scrum Master and Stakeholders in deciding which User Stories should be pushed onto the main Backlog.
Sprint Planning (aka Refinement)
Sprint planning typically occurs a day or two before a new Sprint commences. The planning session is the final stage in defining the Sprint Backlog, making sure the User Stories are well defined, sized by the team and have good Acceptance Criteria to enable a team member to work on each User Story.
Story Points are in effect the same as Sizing – i.e. if you size a User Story to be 3 days, you can say the it has three Story Points. Note – it is not necessary to equate one point to one day. An Agile implementation can define what it means by one Story Point – for example that could equal one hour.
A User Story is the smallest chunk of work in the Agile Framework. It has Acceptance Criteria so you know when it has been completed, and it will be sized by the Agile team so you know about how long it should take to complete.
An Epic comprises many User Stories.
Velocity is the rate at which an Agile team completes it’s work (User Stories).
In effect it describes how many User Story points a team can handle in a Sprint.
This is very useful information for the Product Owner, Scrum Master and for Stakeholders as Velocity information helps to predict the work-rate of each Agile team.
In turn this makes it easier to forecast milestones and Epic completion dates.
It will typically take a number of completed Sprints before you have enough data to start articulating Velocity and using those numbers to predict work rates.
Each Product should have a Vision Statement. It should be short, clear and ideally motivating for the team.
The Vision can change as Sprints develop (remember – stay flexible) – and it is important to share the Vision Statement with Stakeholders, the Scrum Master and the wider team.
If Stakeholders have defined Vision Statements at the Epic-level, it should be possible to dove-tail Product Vision Statements into those of the Epic.
A template to help drive Vision Statements is:
Target Group / Needs / Product / Value or, if you’re developing a product to sell… For (the target customer) Who (statement of the need) The (product) Is a (type of product) That (key benefit) Unlike (competitor) Our Product (further elaboration) EXAMPLE For people who want an easy way to rent cars, the vroomer is an app that lets users choose a car at the pick-up point and receive an electronic key. Unlike existing car rental companies our product is online, secure, flexible and FAST!