Abstract
We would like to welcome you to this, the first workshop on Developing Tools as Plug-Ins (TOPI 2011). Tools and environments to increase software quality and productivity have always been an important aspect of software engineering. There are two major ways for programmers to communicate with the computer - programming languages and tools. Through languages, programmers encode decisions, actions and algorithms, while tools have the added advantage of providing analysis, synthesis and visualization. At the same time, software development environments have grown in power: today's environments, such as Visual Studio, Eclipse or an Emacs configuration, bear little resemblance to those of two decades ago. Syntactic and documentation support, recommendations for fixes and re-factorings, relatively seamless integration with version control and debugging tools, and more, are not only available, but are expected by modern programmers. Plug-ins are the modern approach towards incrementally adding new tools into these rich environments. Proving for plug-ins is necessary because it is at best very hard to get programmers to try a new tool without integrating it into an existing environment. Indeed, our knowledge of how to solve software engineering problems is increasingly being encapsulated in tools. These tools are at their strongest when they operate in a pre-existing development environment. This approach allows integration with existing elements such as compilers, debuggers, profilers, visualizers as well as numerous other development and, often, runtime tools. However, building tools as plug-ins can be challenging. How do they interact with the core environment? How do they interact with one another - especially since each developer may choose a different set of plug-ins? How can we share tools across different, and future, core development environments? These are all questions that will be addressed during TOPI 2011. The workshop received 32 submissions from 21 countries. They attested to the interest in the topic and to the diversity of IDEs currently in use today, including Visual Studio 2010, Eclipse and MonoDevelop. Each paper was reviewed by three member of the PC, and then there followed a vigorous online meeting. From this, we selected 14 full papers and 8 short papers, giving an acceptance rate of 68%. Through these papers, we shall address the following themes: identify recent successful tools as plug-inscategorize the characteristics of good plug-insunderstand interoperability requirements to making tools available across platformslist which tools lend themselves best to the plug-in approachspecify the medium and long term challenges of tools as plug-ins So, while we are more concerned in this workshop with understanding the characteristics and creation of tools as plug-ins, than of the tools themselves, we did accept some papers with very interesting tools, including those from industry. The workshop will be opened with a welcoming session by the chairs, followed by a keynote by Tom Ball from Microsoft Research on the Software Engineering of Plug-in Architectures. The talk will be punctuated by personal insights and Tom's long experience as a research leader. In the following two sessions, selected papers describing successful plug-in experience and practice will be presented. We want to try and identify patterns and commonalities that could be used to characterize "good" plug-ins. The goal was to come out with a first version of a framework that could be used to classify plug-in tools. During the third session we invited a discussion around presentations that tackled the barriers of making plug-ins available across different platforms. Rather than arguing for an agnostic approach, the goal is to better understand the differences and identify opportunities to interact and cooperate. The last session of the workshop is dedicated to presentations that look into the future of tools as plug-ins, followed by a brainstorming session on medium and long term challenges of plug-in development. The papers to be presented at TOPI 2011 indicate that developing better ways to plug tools into modern environments, and developing better ways for those tools to interact with other related tools in these environments, is definitively a critical research topic.
Published Version
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.