MuseScore is an application that allows musicians to create, share and modify digital scores in many ways; even recording them by playing a digital keyboard. Furthermore, it allows musicians to store all their scores digitally and bring them to performances without hassle.
This document aims to provide an architectural analysis by identifying the vision underlying MuseScore. To do so, the end goal of MuseScore is identified, together with its use-case and capabilites. The stakeholders are analysed and the roadmap for the product is evaluated. Finally, a context view shows all the relations of the system.
What MuseScore tries to achieve
The vision of MuseScore is “to create digital products which will replace paper with the digital format in the processes of writing, learning, publishing, and performing sheet music. We focus on replacing paper all over the process from ideation to publishing and performing scores.”1
MuseScore aims to support musicians, whether they are hobbyists, professionals or educators, in their field. This includes the process of creating music and arrangements, but also learning music theory, harmony and notation. Finally, MuseScore strives to assist its users in publishing their works, learning to play instruments and performing.
In order to do so, they offer1:
- Cross-platform applications (including tablet devices) which allow creating and editing music faster than using a pen and paper in addition to a realistic playback
- Online services which provide collaborative work, auto synchronization across all devices and the public catalog/marketplace and finally, a better experience for practicing and performing sheet music
Since only the cross-platform application for music score editing is an open-source system, we will only focus on this application. It is important to note that the open-source application MuseScore is created under GPLv22, meaning that the application will remain free of cost, and contributors will remain free to change the software. The musescore.com website where scores are shared is not a part of this essay.
End-user mental model
The MuseScore application is focused on people who want to create their own scores for personal use or to publish them online. This includes both composers who want to put their own music in an actual score; as well as musicians who transcribed, arranged or combined existing music into a new score.
So, the functionality is focused mainly on creating new scores as easily as possible. This entails that users should be able to easily add new notes to the score they are creating. A composer/musician should be able to write music notes in the system just as fast as by hand. MuseScore should offer users a way to freely add music notes to the score, transpose notes in the score and change the length of a note.
The form of the system is a WYSIWYG editor, as seen in the picture below. MuseScore is for writing music scores, like Microsoft Word is for writing text documents. Furthermore, the system should compile to playback the score to the user.
Screenshot of the WYSIWYG editor
Key capabilities & properties
MuseScore aims to be a tool that is easy to use for both professionals and amateurs. To establish both goals it should be an all-in-one solution for multiple score-writing tasks; it should integrate well with other tools used by musicians and the software must support multiple workflows.
The main properties that the system strives for, are:
- creating music scores;
- importing and exporting scores;
- handling multiple instruments at the same time;
- supporting notations for different instruments;
- playing back scores;
- allowing MIDI (Musical Instrument Digital Interface, a protocol to easily enter music notes into a computer3) inputs
We describe all the stakeholders of MuseScore by addressing them one by one, and explaining why they are considered a stakeholder of MuseScore.
MuseScore & Ultimate Guitar
The main company stakeholder is MuseScore, who have set out the initial vision for the product and the future development of the program. In 2018, the company was acquired by Ultimate Guitar, who can be seen as the main business stakeholder. Their visions of the MuseScore open-source editing system are the same, meaning that the software will continue to be developed under the open-source license GPLv2245.
Musicians are the end-users of the product, we differentiate between hobbyists and professional musicians. Even though both groups use the application in the same way, they have different requirements. A professional musician will uphold the application to a higher standard, than a hobbyist musician. The reason they are still the same stakeholder group is because professional musicians and hobbyists use the application similarly, to create music scores. They are the target audience of MuseScore, and the reason why MuseScore was made.
Many of the music scores that are uploaded are copyrighted, which can lead to illegal use of the music scores. The copyright holder of the score is not necessarily the user uploading the score. Therefore, the actual copyright holder will want to either work together with MuseScore or have influence on MuseScore to see that his/her scores are removed or acknowledged. With the acquisition by Ultimate Guitar, the copyright holders have obtained a bigger stake, because “Ultimate Guitar has pioneered a successful model for working with music publishers”6.
GitHub is a stakeholder, because the development of MuseScore takes place on GitHub. As successful open-source projects attract many developers to contribute to the product, these people will need to use GitHub to do so, which in turn benefits GitHub.
The community of MuseScore is an integral part of the development and use of MuseScore and we have classified the community into three different groups.
These people work to contribute to the project of MuseScore for free. They provide their services for free to MuseScore, thus, MuseScore is partly developed by these contributors.
Services are people or companies that have a business model around MuseScore, this means that they are dependent on the existence of MuseScore and will want MuseScore to do well. These include music educators and people offering trainings and workshops.
Active users are different from contributors, because they do not contribute to the software itself, but are helpful online to other users and have built a reputation for themselves on that forum. They might report bugs or recommend new features.
Current & future context
MuseScore exists in the context of sheet music, offering a way to keep the scores digitally. In the figure above, we have illustrated the context in which MuseScore operates. This clearly shows the relationships, dependencies and interactions of MuseScore and allows us to easily see connections with these instances.
Where MuseScore is a free application that is available for different platforms, its competitors Flat and NoteFlight only operate as a browser engine. LilyPond differs from MuseScore as music notes are put in like a programming language instead of a drag-and-drop base. ScoreCloud is another application, although it does not support Linux, but offers an App Store application, clearly focusing on Mac users.
The MuseScore code base is written in C++ and maintained on GitHub. However, all communication with the developer community is done on the musescore.org website, where issues are tracked and developer guides are posted.
Having MuseScore interact with tools that listen to the MIDI3 protocol, greatly improves the usability of the system.
In the future, digital sheet music will most likely become more popular as the use of paper for printing and writing is further diminished7. So, tools to create digital scores will be used more frequently. Sheet music has existed for a long time, and the musical notation has hardly changed over the years. Furthermore, the notation is globally accepted, using mostly Italian words. So, as this will probably not change in the future, MuseScore will not need to account for changing its complete base of notating scores.
MuseScore has a detailed roadmap on their website. However, this was last updated two years ago, while MuseScore 3 was released in December of 2018. Therefore, some of the roadmap features in this list could have already been implemented. The most important features that are still in active development are:
Another document is the known bug list of MuseScore 3. This is more recent, as it was last updated one year ago. However, this does not add any features, but it shows that MuseScore is committed to get MuseScore 3 to the product they envision.
The final document that gives some insights in the roadmap for MuseScore is an interview with their lead designer Martin Keary. In this interview, it becomes evident that he wants to focus more on the user experience of MuseScore, thereby making MuseScore accessible to more people. Accessibility and usability seem to be the two main keypoints in the roadmap that MuseScore is going to focus on in the foreseeable future.
Latta, G. S., Plantinga, A. J. & Sloggy, M. R. The Effects of Internet Use on Global Demand for Paper Products. Journal of Forestry, Volume 114, Issue 4. July 1, 2016. Pages 433–440. ↩