2nd WASDETT @ ICSM 2008

2nd International Workshop on Advanced Software Development Tools and Techniques (WASDeTT-2)

Theme: Tools for Software Maintenance, Visualization, and Reverse Engineering

Co-located with the 24th IEEE International Conference on Software Maintenance (ICSM 2008), Beijing, China

Full day workshop (9:00 to 17:30) on October 3, 2008

Workshop Format and Schedule

This workshop is very interactive and participants are strongly encouraged to contribute to the discussion after the talks, during the open panel and in the breakout session.

9.00 - 9.30
Welcome and Summary of 1st WASDeTT: Holger Kienle, University of Victoria (PDF, 2.5 MB)
9.30 - 10.30
Tool Building in Industry Session (each talk 20-25 min. each) (session chair: Holger Kienle)
  1. Talk: Rainer Koschke, Industrial experiences with Axivion and Bauhaus, University of Bremen (PDF, 181 KB)
  2. Talk: Cradle to Grave: Complete Evolution of the LS/2000 Software Architecture, Jim Cordy, Queens University (PDF, 145 KB)
10.30 - 11.00
Nutrition Break
11.00 - 12.30
Tool Building in Industry Session (Continued) (session chair: Leon Moonen)
  1. Talk: Industrial experiences with reengineering of large legacy systems, Harry Sneed, ANECON (Word, 207 KB)
  2. Talk: Industrial experiences with Sun, Mike Godfrey, University of Waterloo (PDF, 406 KB)
12.30 - 14.00
Lunch Break
14.00 - 15.30
Lessons Learned in Tool Building Session (each talk 15-20 min) (session chair: Mike Godfrey)
  1. Talk: The Scavenger Approach to Building Tools to Support your Research, Daniel German, University of Victoria (PDF, 33 KB)
  2. Talk: Lessons learned from Studying Build Systems with MAKAO, B. Adams (PDF, 1.3 MB)
  3. Talk: Web-based reverse engineering visualization tools, Marco D'Ambros and Mircea Lungu (joint presentation) (PDF, 6.8 MB)
15.30 - 16.00
Nutrition Break
16.00 - 17.00
Lessons Learned in Tool Building Session (Continued)
  1. Talk: Lessons learned in building the IntensiVE tool, Andy Kellens, Vrije Universiteit Brussel (PDF, 1.9 MB)
  2. Talk: Building Software-Engineering Tools in Academia -- A Tool Smith's Report, Dirk Beyer, Simon Fraser University (PDF, 609 KB)
17.00 - 17.30
What Caught Your Eye? and wrap-up: Hausi Muller, University of Victoria (PDF, 350 KB)

WASDeTT's Aim and Topics

The motivation for this workshop series is the observation that tools and tool building play an important role in applied computer science research. The tangible results of research projects are often embodied in a tool. Even though tool building is a popular technique to validate research (e.g., proof-of-concept prototyping followed by user studies), it is neither simple nor cheap to accomplish.

Given the importance of tool building and the significant cost associated with it, we initiated this workshop to enable interested researchers to share their tool building experiences and to explore how tools can be build more effectively and efficiently. Thus, this workshop is NOT about the finished product -- a tool's novel features and algorithms -- but about HOW the tool was designed and built.

Topics of interest for this workshop include, but are not limited to:
  • Should tool building remain a craft?
  • Should research prototypes be of commercial quality?
  • How to integrate and combine independently developed tools?
  • What are the positive lessons learned in building tools?
  • What are the (recurring) pitfalls in tool building?
  • What are the good practices and techniques?
  • Are there architectures and patterns for tool building?
  • How to compare or benchmark tools?

This Workshop's Theme and Target Audience

The purpose of this workshop is to bring researcher together -- from both industry and academia -- that are experts in the building of tools in
  • software maintenance
  • software visualization
  • reengineering and reverse engineering tools
with the aim to share experiences and lessons learned about the construction of such tools. Thus, talks in this workshop communicate concrete experiences that the speakers have gained while developing their own tool(s). Furthermore, participants have opportunities to participate in the discussion after talks, during the open panel, and in the breakout session.

This workshop especially focuses on experiences of participants that relate to
  • tool building in industry: Generally, discussion centers around tool building issues that address the interactions between academia and industry; for instance, case studies of (former) research tools that are now developed and/or used in an industrial context. Related discussion topics are: How to elicit tool requirements from industrial participants? How does research with an industrial partner change (and constrain) the building of tools? How to transition a research tool into a commercial offering?
  • component-based tool building: Increasingly, researchers are leveraging components to assemble their tools instead of building them from scratch. Examples of components are off-the-shelf products (commercial as well as open source) such as Eclipse, Rational Rose, Emacs, Visio, Graphviz, Source Navigator and GCC. In this context, tool-building case studies are of interest that have leveraged one or several components. Related discussion topics are: How to assess and select suitable components? How to customize a certain component (via its API or scripting)? How to interoperate with a certain component?
  • tool building in teams: Often tools are developed by a single researcher over a few years as part of his or her thesis or dissertation. These tools are typically prototypes that are abandoned after the degree is completed. In contrast, there are also tools that are developed and maintained over many years by a significant team of developers. In this context, the workshop discusses how team size and team diversity impacts tool building, and how to manage larger teams. Especially, is there a need to introduce more formality in the tool-development process? And how can this be achieved without stifling creativity in research?

Other topics besides the ones mentioned above are of interest as well. For example, design and implementation of fact extractors, repositories, and visualizers; non-functional tool requirements (e.g., scalability, usability, and adoptability); and conducting empirical studies and user studies.


Workshop Organizers

Previous WASDeTTs