Best Practices for working in a Group

Hi all,

in my current University Course I’m working on a project with five other people creating a Chatbot using the Rasa Framework (Version 3.1)

We use github as version control and are currently trying to merge all our cases together in one branch to connect that with RASA X to collect some test data.

Some of my team members have expressed concerns that it will probably be super complicated as we further develop our stories as probably every merge request will generate conflicts as we are all working in the same .yml-files.

(On a side note: We started with creating Personas and then generating User Stories for different cases(Happy Paths) to have a foundation to build upon. We’ve split up the workload per Persona so everybody so far has created some potential scenarios with their own intents, custom actions etc. - while we were trying to keep track of variable names in a separate file to try to match variable names in an attempt to avoid duplicates)

In an attempt to avoid chaos and headaches I wanted to ask if there are some best practices on how we should organize further development.

I’d appreciate input from the experienced bunch in how we best structure this to avoid problems.

Greetings toby

I’ve most commonly seen a git based workflow without Rasa X. Split the nlu, rules & stories up with multiple files using an organization that makes most sense to the team to reduce collisions but recognize that you’re bound to have them and resolve them like any other git conflict. The financial-demo shows a basic structure.

1 Like

Hi Tobias, not sure if this is exactly what you were looking for, but I recently wrote a blog post about 12 principles for creating a successful chatbot, hopefully you will get some inspiration here on principles you can bring in working in your team: Best practices for chatbot development: 12 principles for building a successful chatbot | Everything Chatbots Blog