Get from Amazon. All programmers should read it - Robert C. Martin Our lives are increasingly tracked and monitored by software. Governments and companies rely on computers to automatically detect fraud, predict behaviour and enforce laws. Inflexible automatons, barely smarter than a fridge, now make life-changing decisions. Computers are determined to follow instructions to the letter — but the instructions are human, and flawed!
|Published (Last):||17 January 2007|
|PDF File Size:||1.59 Mb|
|ePub File Size:||1.24 Mb|
|Price:||Free* [*Free Regsitration Required]|
How to get the benefits from Specification Workshops without having to be in the same place. Mar 31, Published in: Agile software development articles , Recommended reading , One of the best things about Specification by Example is how it allows a group of people to quickly get to shared understanding, and collaboratively discover and define exactly what they need to build.
Specification workshops are the most effective when everyone is in the same room and has access to the same information. So here are some tips on getting the benefits from spec workshops without having to be in the same place. For remote work where everyone is in a different location, the key constraints for the facilitator are engaging everyone in the discussion and keeping the conversation going without visually observing the whole group.
Although group video-conferencing tools have advanced significantly in the last few years, allowing multi-screen and multi-camera views, the view is significantly more filtered compared to a group in a big room with a large whiteboard. The flip side is that you can engage much larger groups over a video link than around a single whiteboard. Preparation For remote spec workshops, the preparation is almost the same as for a large in-person workshop, but there is less opportunity to improvise and experiment on the spot.
The facilitator needs to choose a set of topics upfront, and ideally come up with some initial examples that would reflect the scope for each important topic. If you need to facilitate a specification workshop with a smaller group, you can start directly with an example mapping session. For larger groups, you probably want to do an example mapping session with a smaller group, maybe one key representative of each role involved in the delivery. This will help set the scope for the larger group conversation.
I suggest using audio-conferencing with screen share, ideally some collaborative way of note-taking. Discussing examples Once you have a set of topics, and some key examples and questions about each one, organise a discussion on each of them in sequence. Remote discussions generally require a bit more structure than in-person ones. I wrote more about this in How to develop software like commanding a tank in Some video-conferencing solutions support dynamic breakout rooms, so you can in theory simulate this experience remotely, but I would not suggest that.
When a participant has a question, ask them to propose an illustrative example that shows the potential uncertainty well. After a few minutes of discussion, you should see a common structure among the examples. Prepare for the boundary analysis by restructuring the data on the screen, so that there is a clear relationship between inputs and outputs. Boundary analysis With physical meetings, groups usually do boundary analysis as a quick informal discussion, and the facilitator picking conflicting examples and inviting people to explain them.
Instead, I suggest doing boundary analysis by inviting participants to listing inputs, and do not provide their opinion about the outputs and outcomes yet.
Then the facilitator should choose some examples from the group to run feedback exercises, to discover differences in understanding and further topics for discussion. If you participated in one of my workshops, feedback exercises were those parts where everyone wrote their opinion on a sticky note individually, then we compared the results and looked for differences.
Remotely, you can ask people to write down the outcome on a piece of paper and keep quiet about it. To speed things up, you can do so even for a whole group of examples instead of doing them one by one.
As a facilitator, you can then ask someone to say their answer out loud, and ask other people to complain if their answer is different. Then discuss the differences, and either get the decision makers to provide an answer, or note the example as an open question for follow-up discussions if nobody in the group can provide a definite conclusion.
Using screen-sharing or collaborative document editing is very helpful at this point, since you get meeting notes for free. Make sure everyone has access to the same visual or audio features. Some people contributing over screen share with other people just dialling in to audio is a great way to make people feel isolated and left out, and to miss out important discussion hints.
If your goal is to reach shared understanding, start with a shared experience.
Specification by Example, remotely
How to get the benefits from Specification Workshops without having to be in the same place. Mar 31, Published in: Agile software development articles , Recommended reading , One of the best things about Specification by Example is how it allows a group of people to quickly get to shared understanding, and collaboratively discover and define exactly what they need to build. Specification workshops are the most effective when everyone is in the same room and has access to the same information. So here are some tips on getting the benefits from spec workshops without having to be in the same place.
Specification by Example is the winner of the Jolt Award for the best book. This book presents case studies of over 50 projects of how successful Lean and Agile teams design, develop, test and deliver software efficiently. Specification By Example is a must read for anyone serious about delivering software that matters. It is the result of a research on how teams all over the world specify, develop, test and deliver the right software, without defects, in very short iterative delivery cycles. With case studies and real examples, this book helps you understand how successful teams implement specification by example, agile acceptance testing and behaviour driven development to bridge the communication gap between stakeholders and implementation teams, build quality into software from the start, design, develop and deliver systems fit for purpose.
Specification by Example