Top Banner
London Atlassian User Group, February 2014 The story of a basic Agile worflow The story of a basic Agile workflow ...or how I discovered SIL Dan Petzen [email protected] London Atlassian User Group, 18 February 2014
14

Advanced Agile Workflow - Dione Technology

Oct 22, 2014

Download

Technology

Example of an Agile workflow for Catapult Satellite Applications
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

The story of a basic Agile workflow...or how I discovered SIL

Dan Petzen

[email protected]

London Atlassian User Group, 18 February 2014

Page 2: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

Background

● Dan Petzen, Dione Technology - founded 2013 with Ram Tandukar and Sven Lecherbonnier

● Current client:

● Various interesting projects and tasks

● One of the tasks:

– Work with the DevOps team to help them make the most of their JIRA

Page 3: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

High level overview

Page 4: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

First workflow draft

Page 5: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

Final (initial) workflow version

Page 6: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

...a bit more complicated...

Page 7: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

Page 8: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

This is not an advert – really!(They don't even know I'm doing this presentation)

What's this? JJupin?

Page 9: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

SIL – Simple Issue Language

● Called from post-functions, validators, listeners, services etc, etc

● Runs in a JIRA or an issue context

● Access to variables (R/W) and API function

● ...and loads more

Page 10: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

User story post function 'B'

string st; for (st in subtasks(key)) { if (%st%.status == "Created") autotransition("Queue", st);}

Page 11: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

User Story validation of tranisition 'E'

string sub_task;

for (sub_task in subtasks(key)) { if (%sub_task%.status != "Done") return false, "One or more sub-tasks are still being worked on ('Doing' state)."; else return true;}

Page 12: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

User Story post function for transistions 'F' and 'Fn'string st;boolean sub_tasks = false;

// Parent (i.e. User Story):if (isNull(parent)) { resolution = "Cancelled"; for (st in subtasks(key)) { if (%st%.status == "Ready") { autotransition("Cancel", st); %st%.resolution = "Cancelled"; logPrint("DEBUG", "Task " + %st%.key + " is moved to 'Ready' via the 'Cancel' transition."); sub_tasks = true; } } return;}

// Sub-task (Fn):for (st in subtasks(parent.key)) { if (%st%.status == "Ready" || %st%.status == "Doing") sub_tasks = true;}

if (!sub_tasks) { if (parent.status == "Ready") { logPrint("DEBUG", "This (" + key + ") was the last sub-task. The story is in 'Ready', so I'm 'Cancelling' story " + parent.key); autotransition("Cancel", parent); parent.resolution = "Cancelled"; }}

Page 13: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

What's next?

● One more demo session

● Stomp out bugs, thorough testing etc

● Implementation in production

Page 14: Advanced Agile Workflow - Dione Technology

London Atlassian User Group, February 2014

The story of a basic Agile worflow

Questions?