Yesterday, I talked about the Moose analysis platform at the Seminar on Advanced Tools & Techniques for Software Evolution (SATTOSE).
The first goal of the talk was to give the audience an overview of what exists in Moose. Thus, first I talked about Moose as a tool and presented briefly some dozens of various analyses that have been developed by our community. I then shifted the discourse towards how Moose is also a platform for modeling, visualization and tool building and integration. I also emphasized how Moose is a collaborative effort that amounts to more than 100 men-years.
The second goal was to project the idea behind Moose of how it is possible to go beyond research collaboration on paper and towards having a tool centered process. The problem is as follows. On the one hand research is about exercising ideas and is not about engineering. On the other hand, without an engineered infrastructure we cannot try our ideas. Hence most researchers tend to play alone and implement only as much as they need. This results in a low reusability of the engineering effort and the collaboration between researchers happens mostly on paper.
Over the past 10 years we have built Moose exactly by sharing our engineering effort and investing into the infrastructure. This approach payed off both in terms of how the amount of spawned ideas and in terms of obtaining robust tools as byproducts. Thus, the Moose experience can serve as a show case for how we should explicitly introduce engineering into the research process and how we should reuse each others tools. A further advantage of having more robust tools is the ability to apply them on industrial case studies and eventually attract industry interest and resources in the research world.
Here are the slides I used: