About John Ferguson Smart

John is an international speaker, consultant, author and trainer well known in the Agile community for his many books, articles and presentations, particularly in areas such as BDD, TDD, test automation, software craft and team collaboration.

‘The flow’ is that state of mind of optimal concentration where we are fully focused and hyperproductive, where we feel and perform our best. Now imagine if you could get a whole team, even the business sponsors, into the flow. Imagine what you could achieve.

Inspires

Speaker & Author

John is a regular speaker at international conferences and internal events known for his energy, passion and humour, and the author of several best-selling books.

Advises

Facilitator & coach

John advises and assists organisations in their journey towards more effective collaboration and software delivery practices.

Elevates

Trainer & mentor

John runs a range of public and in-house training and mentoring programs.

The Serenity BDD Online Training Dojo

Learn BDD and advanced test automation practices from industry expert John Ferguson Smart, on your own terms and at your own pace.

The Serenity Dojo is a unique set of online training material with a rapidly growing range of practical and relevant courses, specifically designed for Java test automation engineers who want to excel. Learn BDD Fundamentals, Cucumber, Selenium WebDriver, Rest Assured, and more!

See John in Action

John is an international speaker, consultant, author and trainer well known in the Agile community for his many books, articles and presentations, particularly in areas such as BDD, TDD, test automation, software craft and team collaboration. John is also the author of the best-selling BDD in Action, as well as Jenkins: The Definitive Guide and Java Power Tools.

John is the founder and technical lead of the Serenity BDD Open Source library. Serenity BDD helps you write better, more effective automated acceptance tests, and use these acceptance tests to produce world-class test reports and functional documentation.

Uplifted our development practices and culture

I've had the pleasure of working with John as a repeat customer for almost a decade. During this time John has helped to educate and mentor our staff to become better cross functional delivery teams. John’s technical and coaching skills are highly developed. In addition, he is a thought leader and expert who has a deep and thorough knowledge of BDD, Agile development, software development, DevOps and Continuous Delivery, programming languages and build and test tools. I have not come across anyone in the world who has such a high level of expertise across so many technologies and practices.

Read More

John’s easy going coaching style and knack of teaching complex practices, tools and technologies in a way that is easy to understand, has helped me to uplift our development practices and culture to the next level, across multiple business units. I have no hesitation in recommending John’s services in the highest terms.



Trevor Vella, Delivery Practice Manager, Transport for NSW, Sydney Australia

2017-11-23T11:12:27+00:00

Trevor Vella, Delivery Practice Manager, Transport for NSW, Sydney Australia

[vc_row][vc_column][vc_column_text] Uplifted our development practices and culture I've had the pleasure of working with John as a repeat customer for almost a decade. During this time John has helped to educate and mentor our staff to become better cross functional delivery teams. John’s technical and coaching skills are highly developed. In addition, he is a thought leader and expert who has a deep and thorough knowledge of BDD, Agile development, software development, DevOps and Continuous Delivery, programming languages and build and test tools. I have not come across anyone in the world who has such a high level of expertise across so many technologies and practices.[/vc_column_text][vc_toggle title="Read More"]John’s easy going coaching style and knack of teaching complex practices, tools and technologies in a way that is easy to understand, has helped me to uplift our development practices and culture to the next level, across multiple business units. I have no hesitation in recommending John’s services in the highest terms.[/vc_toggle][/vc_column][/vc_row]

The results were amazing

Recently as part of Transport for New South Wales's Open Data project, where application developers can obtain multi modal journey trip planning data for presentation on mobile device applications such as Opal Travel, one of the teams that John trained was assigned a project that had taken previous teams within the organisation years with no results. We had never applied BDD to a data centric project before and the results were amazing. They were able to deliver the project in four months. They released with no defects and a living specification that describes the behaviour of the data integration in simple business terms.

Read More

The business is very happy about the team’s ability to deliver quickly, with such visibility and with such high quality. I wouldn’t hesitate to say that it was a world class effort.

We are now using BDD for the development of cloud automation. We plan to use it to certify servers based on enterprise hardening requirements and behavoural requirements.



Trevor Vella
Delivery Practice Manager, Transport for NSW, Sydney Australia

2017-11-23T12:11:35+00:00

Trevor Vella
Delivery Practice Manager, Transport for NSW, Sydney Australia

[vc_row][vc_column][vc_column_text] The results were amazing Recently as part of Transport for New South Wales's Open Data project, where application developers can obtain multi modal journey trip planning data for presentation on mobile device applications such as Opal Travel, one of the teams that John trained was assigned a project that had taken previous teams within the organisation years with no results. We had never applied BDD to a data centric project before and the results were amazing. They were able to deliver the project in four months. They released with no defects and a living specification that describes the behaviour of the data integration in simple business terms.[/vc_column_text][vc_toggle title="Read More"]The business is very happy about the team’s ability to deliver quickly, with such visibility and with such high quality. I wouldn’t hesitate to say that it was a world class effort. We are now using BDD for the development of cloud automation. We plan to use it to certify servers based on enterprise hardening requirements and behavoural requirements.[/vc_toggle][/vc_column][/vc_row]

Increased productivity and improved testing cycle time

With John's help, adopting BDD and Serenity framework has increased productivity and improved testing cycle time by approximately 20%.



Oshri Zvi
Software Development Manager, BPay

2017-11-23T12:19:16+00:00

Oshri Zvi
Software Development Manager, BPay

[vc_row][vc_column][vc_column_text] Increased productivity and improved testing cycle time With John's help, adopting BDD and Serenity framework has increased productivity and improved testing cycle time by approximately 20%.[/vc_column_text][/vc_column][/vc_row]

Already proven highly valuable

John was instrumental in introducing BDD into Transport for New South Wales, and the results were astounding. We have just finished a data integration project, using SAP BI tools, which drives a major part of the bus realtime phone apps and in the few months, will drive all bus timetables through 131500 trip planner.

Thanks to our BDD practices, we can run full regression tests in 6 minutes, which is incredible! The best bit is the communications afforded by the "living documentation" we are now providing to the business.

Read More

This has already proven highly valuable when a mismatch in logic between the static provider (us) and the realtime bus tracking service occurred. Within a few minutes an email with all the features/scenarios allowed all parties to fully understand what our static provider code was producing.

The quality achieved, considering the complexity of some areas of the code, was very impressive.



Ian Mansell
Technical Delivery Manager, Transport for NSW, Sydney Australia

2017-11-23T12:23:22+00:00

Ian Mansell
Technical Delivery Manager, Transport for NSW, Sydney Australia

[vc_row][vc_column][vc_column_text] Already proven highly valuable John was instrumental in introducing BDD into Transport for New South Wales, and the results were astounding. We have just finished a data integration project, using SAP BI tools, which drives a major part of the bus realtime phone apps and in the few months, will drive all bus timetables through 131500 trip planner. Thanks to our BDD practices, we can run full regression tests in 6 minutes, which is incredible! The best bit is the communications afforded by the "living documentation" we are now providing to the business.[/vc_column_text][vc_toggle title="Read More"]This has already proven highly valuable when a mismatch in logic between the static provider (us) and the realtime bus tracking service occurred. Within a few minutes an email with all the features/scenarios allowed all parties to fully understand what our static provider code was producing. The quality achieved, considering the complexity of some areas of the code, was very impressive.[/vc_toggle][/vc_column][/vc_row]

This was an ongoing struggle last year

One area my teams have struggled with is writing their BDD G/W/T .feature files at the right level. Because we work on medical devices, many engineers were writing their BDD at a really low implementation detail level.

Writin g BDD in this “imperative steps” style is an anti-pattern and goes against the whole purpose of creating scenarios in the “as a user,” So I was coaching them to create their G/W/T at a more abstract-level, non implementation — like using a more declarative approach.

Read More

This was an ongoing struggle last year. Fortunately Serenity (formally Thucydides) has an extra annotation @step. Used correctly, this allows us to now create higher-level BDD statements without worrying about low-level detail at the G/W/T level. Also, the @step details are written to the report so the implementation details are still captured, but our scenarios are kept implementation free — a true win/win!



Joe Colantonio
General Electric

2019-01-04T12:43:18+00:00

Joe Colantonio
General Electric

[vc_row][vc_column][vc_column_text] This was an ongoing struggle last year One area my teams have struggled with is writing their BDD G/W/T .feature files at the right level. Because we work on medical devices, many engineers were writing their BDD at a really low implementation detail level. Writin g BDD in this “imperative steps” style is an anti-pattern and goes against the whole purpose of creating scenarios in the “as a user,” So I was coaching them to create their G/W/T at a more abstract-level, non implementation — like using a more declarative approach.[/vc_column_text][vc_toggle title="Read More"]This was an ongoing struggle last year. Fortunately Serenity (formally Thucydides) has an extra annotation @step. Used correctly, this allows us to now create higher-level BDD statements without worrying about low-level detail at the G/W/T level. Also, the @step details are written to the report so the implementation details are still captured, but our scenarios are kept implementation free — a true win/win![/vc_toggle][/vc_column][/vc_row]

Decorate as per requirements of the family

"The Serenity BDD ( Thucydides ) framework is like a Christmas tree. Once you have it three quarters of task is done: later one needs to just decorate as per requirements of the family :)..."



Vikram V. Ingleshwar
6Wunderkinder

2019-01-04T12:56:49+00:00

Vikram V. Ingleshwar
6Wunderkinder

[vc_row][vc_column][vc_column_text] Decorate as per requirements of the family "The Serenity BDD ( Thucydides ) framework is like a Christmas tree. Once you have it three quarters of task is done: later one needs to just decorate as per requirements of the family :)..."[/vc_column_text][/vc_column][/vc_row]

It’s the testing solution of our choice

One of my first tasks in my role was to come up with an automated testing solution for our web and mobile e-banking solution. I conducted a vast research through open source frameworks as well as proprietary solutions, worth mentioning Vaading Testbench, eggPlant, Ranorex, TestComplete, etc. I was very lucky when a good friend responsible for QA at Adobe dragged my attention to Serenity, formerly known as Thucydides.

Read More

It was in no time that using the r ich information on the framework website, blog and its maven archetype, I was able to setup our automated testing framework and produce the first pilot test cases. The creator’s support as well as community support was always there to provide a helpful hand when needed.


Theodor Radu
Head Testing Framework Avaloq

2019-01-04T13:07:54+00:00

Theodor Radu
Head Testing Framework Avaloq

[vc_row][vc_column][vc_column_text] It’s the testing solution of our choice One of my first tasks in my role was to come up with an automated testing solution for our web and mobile e-banking solution. I conducted a vast research through open source frameworks as well as proprietary solutions, worth mentioning Vaading Testbench, eggPlant, Ranorex, TestComplete, etc. I was very lucky when a good friend responsible for QA at Adobe dragged my attention to Serenity, formerly known as Thucydides.[/vc_column_text][vc_toggle title="Read More"]It was in no time that using the r ich information on the framework website, blog and its maven archetype, I was able to setup our automated testing framework and produce the first pilot test cases. The creator’s support as well as community support was always there to provide a helpful hand when needed.[/vc_toggle][/vc_column][/vc_row]

John's current and upcoming books:

Screenplay: a pattern for writing sustainable test automation

The flow is that state of mind of optimal concentration where we are fully focused and hyperproductive, where we feel and perform our best.

Feature Mapping – an agile discovery practice

The flow is that state of mind of optimal concentration where we are fully focused and hyperproductive, where we feel and perform our best.

BDD In Action

BDD in Action teaches you the Behavior-Driven Development model and shows you how to integrate it into your existing development process.

Jenkins: The Definitve Guide

Streamline software development with Jenkins, the popular Java-based open source tool that has revolutionized the way teams think about CI.

Java Power Tools

All true craftsmen need the best tools to do their finest work, and programmers are no different. Java Power Tools delivers 30 open source tools designed…

Some of John's clients

© 2019 John Ferguson Smart