Accepted Tutorials

Tutorial Presenter Duration
Journey of Behaviour Driven Development (BDD) Devesh Maheshwari Half day
Scaling for Enterprise Agility Dr. Asif Q. Gill Half day
What developers and researchers need to know about DevOps Ingo Weber Half day
Working with User Stories: Advanced Agile Techniques Dipesh Pala Half day

 

Journey of Behaviour Driven Development (BDD)

Presenter: Devesh Maheshwari
Duration: Half day (3 hours)

Abstract

While automated testing tools and unit testing frameworks have proven their effectiveness and are widely accepted by the agile teams practicing Test Driven Development, not many teams see a project’s test suite as the result of a joint effort between the developers, testers and domain experts (BA and Product owners).

Intention

While automated testing tools and unit testing frameworks have proven their effectiveness and are widely accepted by the agile teams practicing Test Driven Development, not many teams see a project’s test suite as the result of a joint effort between the developers, testers and domain experts (BA and Product owners).

Discuss the role of testing and testers in requirements discovery and definition in the context of BDD practices, and how that plays into meaningful reporting and feedback cycles. This talk will go beyond the warm and fuzzy theory, and give some practical tips about how to (and how not to) make this approach work for you.

Summary

Behaviour Driven Development is an increasingly popular Agile practice that turns testing on its head, and involves a major shift in the role testers play in a project.

A BDD approach goes one step further and brings all the stakeholders together to create an executable specification – a set of the tests written in a natural language that is understandable by the user while still being executable and verifiable. Although popularly associated with automated acceptance testing and tools like Cucumber, BDD actually has much broader applications.

In this talk, we will look at how BDD radically changes the traditional tester role in Agile projects, and empowers them to tangibly contribute much more to the successful outcomes of the project. We will see how collaboratively discussing and defining acceptance criteria help reduce assumptions and errors in the early phases of the project, and help ensure that the features being built are well understood, testable, and valuable to the business.

We will look at ways to write more effective, easier to maintain automated acceptance criteria that free testers to do more productive testing tasks such as exploratory testing. And we will see how automated and manual acceptance test reporting can be combined to provide valuable progress, product documentation and release preparation reporting.

Format

Slides and some examples of code and living documentation.

Audience

No prior knowledge of BDD required. Tutorials may range from basic, intermediate level.

Takeaways

  • Gain a better understanding of what BDD means for tester’s
  • How it can empower them to contribute more effectively to product delivery.
  • Introduction to BDD frameworks
  • Practical tips on what works and what doesn’t and tips for creating reusable and maintainable acceptance tests
  • Anti patterns of BDD and how it can be used as living documentation

Scaling for Enterprise Agility

Presenter: Dr. Asif Q. Gill, University of Technology Sydney
Duration: Half day (3 hours)

Abstract

Agile or adaptive software development and management practices offer ways of working that have foundation in agile values and principles. The challenge is how to scale these practices for enterprise scale agility. This tutorial introduces a structured approach to Adapt (assess, adopt, and improve), Define, Operate, Manage, and Support [ADOMS approach] an integrated agile or adaptive enterprise project management capability for handling large scale and distributed software programs and projects.

Intention

This tutorial session will go beyond the theory and practice of handling simple or single agile project, and demonstrate how to scale for agility at the portfolio and program level by involving and integrating agile or adaptive enterprise project management with the enterprise architecture.

Summary

Being agile at the large scale is a daunting task. It may pose several risks if it is not handled with care. This tutorial will introduce a systematics and less risk approach of scaling for enterprise agility. It will discuss well-known enterprise scale lean agile practices, adaptive enterprise project management capability reference model, agile adoption and improvement model (AAIM), and examples.

Format

Slides and examples will be discussed during the tutorial session.

Audience

Portfolio Manager, Program Manager, Project Managers, Development Managers, Researchers and anyone who has interest in enterprise agile.

Takeaways

  • Introduction to enterprise scale agile frameworks and practices
  • Practical understanding of scaling for enterprise agility
  • Enterprise scale agility challenges and tips

What developers and researchers need to know about DevOps

Presenter: Ingo Weber, NICTA
Duration: Half day (3 hours)

Abstract

This tutorial is based on our new book: “DevOps: A Software Architect’s Perspective” published by Addison-Wesley Professional, and on presentations given to hundreds of developers and students. The motivation for DevOps is that developers and operators often have opposing goals: developers (Devs) try to push new features into the product, while the core concern of operators (Ops) is system dependability and availability – which is most easily achieved by putting high burdens on the process of releasing new features. The goal of DevOps is to achieve both – by encouraging collaboration and sharing responsibilities between Devs and Ops. DevOps is a set of practices intended to reduce the time from implementing a change to a system until that change is placed into normal production, while ensuring high quality. By applying DevOps practices, “IBM has gone from spending about 58% of its development resources on innovation to about 80%” according to a recent IBM report.

In this tutorial I will introduce DevOps, the motivation for it, our definition and its implications, and the main DevOps practices. Then I will discuss the organizational and cultural aspects of introducing DevOps, which leads over to structural impact on products: Microservice Architectures. From there I will move on to Continuous Deployment (CD), CD pipelines, and explain how it relates to DevOps. CD topics also include methods to achieve deployment without downtime, e.g. Blue/Green, Rolling Upgrade, as well as live testing and staged rollouts. Finally I’ll summarize one of the three case studies from our book, on continuous deployment and microservices in enterprise environments, and provide an outlook on recent research that is of broad interest in the area.

Takeaways

  • What DevOps is about, and how it changes software structure and development
  • The main practices of DevOps and how to achieve them
  • Microservice Architecture overview, and how it enables DevOps practices
  • Continuous Deployment, and how to update your application 20 times per day without downtime

Book Raffle

At the end of the tutorial, there will be a raffle where you can win a copy of our book “DevOps: A Software Architect’s Perspective” valued at $45.

Terms & Conditions:

  1. Eligibility for a book prize requires paid registration to the ASWEC tutorial day to be held on 28 September 2015, and physical presence during the raffle draw to be held between 4pm and 5pm ACST on the day of the tutorial. For every 10 registered tutorial participants, one copy of the book prize will be raffled off, to a maximum of 50 participants. (Minimum number of participants: 10. Maximum number of books: 5.)
  2. The raffle will be drawn at random at the conclusion of the tutorial “What developers and researchers need to know about DevOps” presented by Ingo Weber on 28/9/2015 between 4pm and 5pm ACST at the University of Adelaide, North Terrace, Adelaide. There will be one draw per book copy to be raffled off.
  3. If winners are not physically present during the draw, there will be an immediate redraw until a winner that is physically present is selected.
  4. The raffle will be conducted by Ingo Weber, Senior Researcher at National ICT Australia Limited (ABN 62 102 206 173) of 13 Garden St, Eveleigh NSW 2015 (“NICTA”).

Audience

Software architects, engineers / developers, and researchers with an interest in DevOps. Participants with at least an intermediate knowledge in computing systems and basic knowledge in cloud computing, system operations, and distributed systems are likely to make the most of their participation.


Working with User Stories: Advanced Agile Techniques

Presenter: Dipesh Pala, IBM
Duration: Half day (3 hours)

Abstract

In introducing Agile, a key element User Stories will allow a beginner to grasp core Agile values and associated principles, and use them as a primary vehicle for hearing the voice of the customer.

Breaking up user stories can sometimes be as painful as a relationship break up – but it does not have to be like that!

Our experience has shown us that the key to getting full benefit from introducing Agile is in how the team’s work is broken up. When it gets difficult to see how to write small enough user stories, teams often resort to technical story cards. While this may give the team visibility of the work that is being done, the business is not seeing potentially implementable product, or early delivery of business value.

This workshop will expose the real reasons for splitting up user stories and not just talk about doing it as a good practice – we must BE Agile not just DO Agile!

Using real-world examples, this workshop will also offer a set of guidelines and some unconventional ways for breaking up larger chunks of work into valuable user stories that can help Agile teams become more successful.

Do you have a large User Story that you believe is impossible to split? Bring it to this session and be prepared to be surprised!

This interactive session will inspire and encourage every Agile practitioner to simplify User Stories and to think like a Customer.

Format

This tutorial is conducted in a fast paced, highly-interactive style to keep the audience engaged throughout. Light-hearted humour is used to make the analogy between relationship break ups and user story break ups.

Outline of the session

  • Introduction and setting the scene – Why are break ups (be it real life relationships or User Stories) so difficult?
  • The perfect User Story – is there such a thing?
  • Breaking up – a set of guidelines to follow when breaking up larger chunks of work (epics) into valuable user stories. The presenter will be drawing upon their extensive Agile experience to share learning’s and use real-world examples of user stories to illustrate how this is done.
  • One format that has worked really well for this workshop in the past is breaking up this (core)   section of this talk into 3 segments (with 2 short ‘commercial breaks’ in between). During these 2 ‘breaks’, the session is turned into an open-forum kind of style where a couple of seed questions are planted to encourage some insightful discussions. A couple of example questions are When is the best time to break up? or Who should initiate a break up?. These sorts of questions get the audience really excited. These discussions are lead to become a nice segue into the next segment.
  • Conclusion: Call to Action to convert every ‘Excuse’ into an ‘Opportunity’ to break up!
  • Q & A

May even challenge the audience to come up with large Users Stories that are unbreakable!

In this tutorial, there will be 10 break-up techniques covered during the talk – 3 of which will be done with audience participation. These will be treated as exercise for the audience. The mechanics of this will be is really simple regardless of the size of the audience.

In addition to that, there are several other opportunities for audience interactions throughout the presentation.

While this workshop is mainly targeted towards beginner and intermediate levels, expert Agile practitioners will also get a lot of benefits out of this tutorial. I also use this talk as a segment of the Agile Fundamentals and the Scrum Master Certification courses that I teach… it is ideal for illustrating how organisations maximise ROI sooner.

I will be sharing a lot of tips and techniques for splitting up user stories that are unconventional and not commonly found in published patterns and methods. Audiences in my previous sessions connected really well with the real life user stories from real projects.

All attendees will also get to hear a lot of little ‘gems’ (general Agile tips and tricks of the trade) that are based on my hands-on experience in this area. The little ‘gems’ peppered throughout this talk ensures that participants of all experience levels are inspired!

Audience

While this workshop is mainly targeted towards beginner and intermediate levels, expert Agile practitioners will also get a lot of benefits out of this tutorial.

Takeaways

  • Understanding that making stories smaller may be the least important part for splitting up stories
  • Anti-patterns to look out for when trying to break up user stories
  • Knowing when NOT to break up user stories
  • A set of guidelines and some unconventional ways to follow when breaking up larger features / epics into valuable user stories
  • How to ensure that it can all still be put together after the break up
  • How to convert the most common ‘Excuses’ into ‘Opportunities’ to break up User Stories.

Comments are closed.