Agile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMS

Post on 14-Apr-2017

126 views 0 download

Transcript of Agile Testing Days 2015 - PIMP MY SCRUM – DOCUMENTATION FUN FOR AGILE TEAMS

PIMP MY SCRUMDOCUMENTATION FUN FOR SCRUM TEAMS

11.11.2015 ANIS BEN HAMIDENE

ANDREAS FALK

02.05.20232

Our Mission: Fixed Quality for moving Targets

Agile Quality Engineering

PIMP MY SCRUMDOCUMENTATION FUN FOR SCRUM TEAMS

WHAT?

HOW?

max. 30 days

Every 24 hours

Scrum Big Picture

Documentation

Test

RequirementsTool

s

Cross functional

Team

02.05.20236

What is Agile?

http://agilemanifesto.org/

Individuals and interactions

over processes and tools

Working software over

Customer collaboration over contract negotiation

Responding to change over over following a plan

comprehensive documentation

02.05.20237

What do you think of when you hear

“Documentation”?

Boring ?Too much of it?

Nobody needs it !

WHY?REASONS FOR FAILING DOCUMENTATION

Unclear Goals

• What shall it be used for?• Feature documentation• Technical documentation• Requirements• User documentation• Support• …

02.05.202311

Business experts

Developer TesterArchitect

Requirement Management Tool

ModelsDeliverables

Source Code

Test scripts

Bug reports

Documentation

Test Specification

Different formats and repositories

02.05.202312

Unclear Roles & Responsabilities

HOW?TIPS FOR SUSTAINABLE DOCUMENTATION

02.05.202314

Tips for sustainable documentation

• Define the goals for the documentation and share them

• Adopt agile principles

• YAGNI

• Inspect and Adapt

• Fix quality

• Definition Of Done

• Face 2 Face communication

02.05.202315

Tips for sustainable documentation

• Build a central glossary for domain terms!

Product OwnerBusiness experts

DeveloperArchitects

Tester

Single sourceof truth

User should be able to add DVDs to a

shopping cart

Register as “user1” Go to “/catalog/search” Enter “Ice Age” Click “Search” Click “Add to Cart” Click “View Cart” Verify “Cart” contains “Ice Age”

Customer customer = new Customer(); Order order = new Order(customer); newOrder.AddDVD( Catalog.Find(“Ice Age”) );

Make the Documentation accessible and centralized

Seperate Requirement Specifications from Feature Documentation

User Story

Change

Short living

Goal: Planing & Doing

Feature Specification

Final state

Long living

Goal: Documentation & Validation D

avid

Eva

ns –

effe

ctiv

e U

ser S

torie

s

Business Goals

Scope (Product Backlog, User Stories)

Specification with examples

Executable specificati

on Living documentation

1

23

4

5

Key Example

s

Try Specification By Example

Try Specification By Example

Integrate Documentation Tasks into Lifecycle

SpecificationWorkshop

Impact Analysis

Observe& Learn

Go Live!

Review

Sprint Planning

SessionBasedTesting

ContinuousValidation

ProductBacklog

Living Documentation

BusinessExpert

ProductOwner

Enduser

Tester

Developer

Automatetest

examples

Refine

Develop

Finalize

Story

Think about BDD Tools• Different format• Table based• Text based• Script based• etc.

• Known Tools• testIT LivingDoc• FitNesse (fitnesse.org)• JBehave (jbehave.org)• Robot Framework (code.google.com/p/robotframework)• Cucumber (cukes.info)• Concordion (concordion.org)

02.05.202322

02.05.2023 LivingDoc23

GreenPepper / LivingDoc History

GP Version 1.0 GP Version 1.1… GP Version 3.0 LivingDoc V.1.0

2006 Initial Release Greenpepper

Server Confluence Plugin

2007 Eclipse Plugin Maven Plugin Improved

documentation

2015 „GreenPepper 4.0“ Confluence 5.x plugin Eclipse 4.x plugin

https://github.com/testIT-LivingDoc/testit-livingdoc

2012 Last GreenPepper

release Confluence 4.x

plugin

02.05.2023 LivingDoc24

LivingDoc – Architecture and Components

Remote AgentServerCore

02.05.202325

LivingDoc – Executable specifications using Confluence

LivingDoc

LivingDoc Interpreters

Fixture code (Java)

System under Test

Specification (Confluence WIKI + LivingDoc Plugin)

+

+

+ Executable Specification

02.05.2023 LivingDoc26

LivingDoc – Developing fixtures with Eclipse 4 Plugin

02.05.2023 LivingDoc27

LivingDoc – Workflow (1)

1. Create specification (Product Owner, Tester, Developer)

02.05.2023 LivingDoc28

LivingDoc – Workflow (2)

public class GreeterFixture {

private String message;

public String greeting () { return "hello " + this.message; }

public void setMessage(String message) { this.message = message; }}

2. Implement Fixture Code (Developer)

02.05.2023 LivingDoc29

LivingDoc – Workflow (3)

3. Execute specification (Product Owner, Tester)

HELLO WORLD DEMO

02.05.2023 LivingDoc31

LivingDoc – Evolve a “Real World” living documentation

Reference documentation (Getting started, guides, …)

TIME TRACKER DEMO

UI TEST DEMO

02.05.2023 LivingDoc34

LivingDoc – Stay Tuned for Release (1)

Soon to be released on https://github.com/testIT-LivingDoc/testit-livingdoc

02.05.2023 LivingDoc35

LivingDoc – Stay Tuned for Release (2)

Stay tuned on http://blog.novatec-gmbh.deor follow @NT_AQE

GO AHEAD!

CREATE A LIVING DOCUMENTATION

WITH

THANK YOU FOR YOUR ATTENTIONWWW.NOVATEC-GMBH.DE/EN

aqe.novatec-gmbh.de

@NT_AQE

blog.novatec-gmbh.de