Software Architecture of the Algorithmic Music System ImproSculpt
Abstract
This document investigates how real-time algorithmic music composition software constrains and shapes software architecture. To accomplish this, we have employed a method known as Action Research on the software system ImproSculpt. ImproSculpt is real-time algorithmic music composition system for use in both live performances and studio contexts, created by Øyvind Brandtsegg. Our role was to improve the software architecture of ImproSculpt, while gathering data for our research goal. To get an overview of architecture and architectural tactics we could use to improve the structure of the system, a literature study was first conducted on this subject. A design phase followed, where the old architecture was analyzed, and a suggestion for a new system architecture was proposed. After the design phase was completed, we performed four iterations of the action resesarch cyclical process model, where we implemented our new architecture step by step, evaluating and learning from the process as we went along. This project is a follow up of our previous research project, Artistic Software [3], that investigated how algorithmic composition was influenced by software.