0 checkout
in

Software Production Adventures (SPA) Workshop Series

Do you want to work with Francesco Cirillo on a real software product and see how he applies product development and software design and development practices to grow it in an effective and enjoyable way? How he flattens the cost of change curve? Organizes customer requests? Transforms them into adaptable units of value to favour product change and growth? Chooses software engineering processes, practices and tools? Selects design patterns to reduce the complexity of the system?

Agile, Kanban, XP, user stories, use cases, story splitting, design patterns, functional programming, TDD... Our current times require us to know many software engineering concepts and tools, and yet when it comes to applying them something doesn't work. We apply these processes, principles and practices as we once studied them from really good books or courses and, as a result, unexpectedly, software becomes more complicated, it starts to hinder rather than help the development of the next features.

The Software Production Adventures (SPA) series has been created to train product developers and software designers and developers to apply software engineering concepts and tools in real software production scenarios.

A Software Production Adventure is a series of episodes in which Francesco Cirillo works on customer requests for of a real software product together with the participants. He explains how he makes his product management and software design decisions and why he applies certain processes, practices and tools.

As a result of each adventure episode, you will acquire greater awareness on how to make effective product management and software development decisions, which principles to apply and why.

Learn how to flatten the cost of change of software production.

Ready to flatten the cost of change curve of software

What is a Software Production Adventure?

Software Production Adventures are journeys in which Francesco Cirillo, you and the other participants will develop one or more customer requests of a real application.

A Software Production Adventure (SPA) is a series of one or more 3,5-hour workshops, called episodes, in which Francesco Cirillo shows participants how to apply product and software development processes, principles, practices and tools in order to deliver customer requests of a real software product.

Each adventure is organised in a series of episodes. Each episode features a series of product management and software development challenges.

Each episode is independent. You can participate in the whole adventure or in individual episodes.

How it works

  1. A customer sends an email with one or more software requests to be developed.
  2. Francesco Cirillo and the participants analyse the request(s) from a business point of view.
    He shows participants how he makes product management decisions such as identifying functional and non-functional requirements, structuring and splitting units of value to reduce the complexity of the business system and writing significant behavioural scenarios.
  3. Once the "structure of value" of the business system is clear and reorganized, it's time to start working on the technical part: the software system.
    Francesco shows how he makes software design decisions to reduce the complexity of the software system by implementing one behavioural scenario at a time.

Why should you attend a Software Design Adventure?

In order to deliver features in a fast and sustainable way, you need to learn how to reduce the complexity of a software system every time you introduce a new functionality.

Applying processes, principles, practices and tools is not enough to develop software products effectively.

What you need to know is how to apply them to flatten the cost of change curve in your daily work.

To learn how to do this you need to train yourself working on a real software system.

Working on a small exercise or a CodeKata is not enough. To develop the skill to reduce the cost of change of your software product, you need to train yourself to deal with a real software system and have to implement customer requests in an evolutionary way. Isn't this the context that you have to deal with in your daily work?

Our Software Production Adventures offer you the context you need to train yourself to reduce the cost of change:

  • Every Adventure is based on a real software product. Usually, the idea for our adventures comes from software products that we have already developed or that we are going to. For instance, a desktop app, a software as a service, a video game, etc.
  • Our customer sends us a new request every time we deliver the previous one. And of course, we can't predict our customer next requests!
  • Flattening the cost of change curve is our mission! Our challenge is to grow our product evolutionary, one request at a time, by reducing the complexity of our software system.

To do that, we have to take several decisions, both in the Product Development and in Software Development area, such as:

  • Which adaptive development process should be applied in order to favour change and uncertainty?
  • How to turn requests into useful unit of values able to favour our product growth and change?
  • Which design pattern is better to use in order to reduce the complexity of our Software System?

And many more!

Participating in our Adventures, you will have the opportunity to learn how to make these product and software development decisions by observing real working on a real application.

What process, practices and tools will be used in an Adventure?

Every adventure is characterised by the choice of a particular development process, practices and tools:

  • The Accounting Adventure for example has been developed by applying an Adaptive Business Analysis process based on Use Case modelling and Scenarios, and an Adaptive Software Design process based on Scenarios and Collaboration Diagrams. TDD was not applied.
  • The Tea Assistant has been developed with an Iterative Incremental Analysis process based on Use Case modelling and Scenarios and an Anticipatory Design Process based on Collaboration Diagrams.

Can I join an Episode if I missed the previous ones?

Yes! Adventure episodes are structured in such a way that participants can attend any of them without having attended the previous ones.

Every Adventure episode is based on an existing software system and new requests to be implemented.

Related Activities

We recommend that you combine this series of workshops with:

Type Activity Note
Mentoring Software Production Mentoring You & Me If you want to apply what you have learned to your individual or team real context and needs.
Workshop Series Software Production Explained (SPE) Seminars Series If you want to learn the concepts and tools applied in the Adventures.
Workshop Series Software Production Adventures (SPA) Workshops Series If you want to apply what you have learned to flatten the cost of change on a real software product.
Adventure Series Info

Series Format
Each Software Production Adventure is structured in one or more intensive highly-interactive 3,5-hour episodes for no more than 4 to 6 participants.

Delivery Options
This training activity can be offered live online, onsite in your company and in-house in our offices. Private tuition and large-group discounts are also available.

Who is it for
This training activity is aimed at Product Developer, Software Developers, IT Managers and Coaches. Perfect for newbies as well as experienced profiles.

Requirements
Adventure episodes are structured in such a way that participants can attend any of them without having attended the previous ones.

Language
At the moment, the course is offered in English and Italian (Choose your course).

Preparation
Participants will need the following to attend this training activity:

  • Know how to use Google Sheets.

Remote Training Preparation
Please do the following at least one day before the course is scheduled to start:

  • Upgrade Zoom to the most recent version.
  • Check audio, video, and screen sharing on Zoom.

Materials and benefits
You will receive the material used during the session at the end of each adventure episode.


Our Adventures

Here's some of the adventures which are part of this series.

The Arcade Games Adventure - 8 episodes

Learning to flatten the cost of change curve in software production

In the COVID lockdown I got a craving for video games. You know, like Pong, Pac Man, Space Invaders... Two conditions:

  1. No bad IF for collision detection.
  2. want to use the same objects for several video games.

Do you accept the challenge?

The Accounting Adventure - 6 episodes

Working with objects on non-functional requirements

Marc wants to keep track of his finances and asks us to generate a series of reports from the csv file with the payment transactions he exports from his bank.

The Tea Assistant - 5 episodes

An upfront design adventure

We absolutely need to drink our tea at the ideal temperature!

That's why we bought a USB thermometer and developed a software desktop product to let us know when we can drink it.


About the Trainer

Francesco Cirillo

Francesco has worked at the forefront of the software industry for more than 30 years.

In a career spanning startups, corporations and freelance consulting, he has mentored thousands of professionals, developers, managers and software teams.

In the 1990s he worked as a Senior Consultant and Mentor for Sun Microsystem, expert in Software Architectures and Software Development Processes and Java and Object-Oriented Evangelist.

Francesco is one of the pioneers of agile methods. He started working on XP and TDD in 1999. He was chosen by Kent Beck as reviewer of the second edition of the book Extreme Programming Explained.

He created the Anti IF Campaign in 2007 to raise awareness in the international community of developers to apply good design principles.

Francesco has been developing RRP, a new method of software development, since 2008.

He has been running the Software Design Training Programme since 2019.

Francesco created the Pomodoro® Technique, a renowned time-management tool used by millions of people all over the world, while a university student looking for a way to get more done in less time.

Read the Francesco Cirillo's complete profile.


Upcoming sessions

Can't make it on any of our dates?

We can discuss other options with you


Testimonials

Carlo Garatti
Carlo Garatti

CEO, Caplab

Feedback after attending the course: you must attend! Seeing how and why Francesco makes software design decisions is super helpful in improving how you make your decisions!


Useful Resources

Pomodoro® Web App

The Pomodoro® Timer Web App will be your time tutor and help you stay focused so you can get more...

Pomodoro® Sheets

To help you get started, check out the official templates of the Pomodoro Technique that you can download and print....

Pomodoro® Internal Process

Time is limited. We can't have as much as we want, neither stop it nor slow it down. When our...

Pomodoro® Core Process

Interruptions and procrastination are one of the most dangerous productivity killers. How to deal with the Predator while we're working...

Pomodoro® Daily Process

You have to work on multiple tasks during the day. While you're working, the predator can show up in your...

Mastering the Pomodoro® Technique

Your task is difficult to complete. The deadline is coming! You see no progress. The Predator is approaching. You are...

Pomodoro® Weekly Process

You have to get some multiple goals reached by the end of the week. You organize your week in time...

Pomodoro® Team Process

You work in a team and your team needs to reach their goals. New occasions for your Predator to show...


FAQ

Do you have a question not listed here?

Pomodoro® Web App

The Pomodoro® Timer Web App will be your time tutor and help you stay focused so you can get more...

Pomodoro® Sheets

To help you get started, check out the official templates of the Pomodoro Technique that you can download and print....

Pomodoro® Internal Process

Time is limited. We can't have as much as we want, neither stop it nor slow it down. When our...

Pomodoro® Core Process

Interruptions and procrastination are one of the most dangerous productivity killers. How to deal with the Predator while we're working...