Figure 1. A position in Salsa Dancing

As technology progresses dance educators are looking for new ways to interact with and teach their students beyond the traditional in-person classes. This had lead to many advancements over the past decade such as the incorporation of annotations for preservation and searching, virtual and augmented reality for choreography and teaching and algorithms to identify the beats in music for a dance genre. As such this project looks to implement novel approaches to the incorporation of technology in dance education within the context of social latin dance with South Africa.

The components developed focussed on creating a web-based Domain Specific Modelling Language (DSML) for a Step Notation tool and a mobile application Video Annotation tool for the Android devices. The main goal of the project is to determine the viability of these tools from both an educator and student perspective as motivation that they should be developed further. The viability is determined through the use of user evaluations allowing the target audience to test the software first-hand. The results indicate that the tools were perceived as highly useful by both student and educators, although due to this study only proving the perceieved usefullness it is suggested that further studies be conducted on the effect of using these tools in-practice to test the true benefit they provide.


This project has been undertaken in partnership with the Evolution Dance Studio in Cape Town. The Evolution Dance studio offers lessons in the Salsa and Bachata dances. As partners, the dance educators will be co-developing the applications with the team by providing the requirements each project needs to satisfy. Additionally, any material such as audio and videos used with the applications will be provided by them.


The project was divided into two separate development projects, each carried out by one of the team members. These projects each have their own software design aims and goals for using software to improve the traditional dance teaching experience.


Testing the viability of a Video Annotation tool which would allow educators to provide feedback on student-submitted dance videos to encourage students to continue practicing at home without fear of reinforcing incorrect steps. Additionally, extending the Annotation Tool to allow educators to create multiple choice quizzes on professional dance videos to teach students basic steps, terminology and theory before in-person classes.

More Info


Figure 1. An of the Step Notation Tool with an empty canvas

The graphical interface is composed by a canvas that is divided in 8 beats allowing the user to add either 2 steps or the keyword pause. Each button Beat represents the beat of the salsa dance move. The salsa dance move has 8 beats which in this case are 8 boxes representing the beats. In each beat, the user can only add 2 beats and a keyword PAUSE in order to be completly done. The user can also add arrows to show movemement and can also perform some changes in the graphic setup. The solid color represents the weight in on the step and the ligth color or no color represents no weight in on the step.

More Info

Meet the Team

James Kriel

James is a Computer Science Honours student at UCT. He currently holds a Bachelors in Computer Science and Mathematical Statistics. He created the Video Annotation Component of the SALSA Project.

Ana Dauane

Ana is a Information Technology Honours student at UCT. Ana holds a Bachelors of Science in Computer Science and Information Systems from Rhodes University. She was responsable for the development of the Step Notation Tool.


Please find the download links for the general project resources below. For section-specific resources, please visit the relevant project pages.