Workshops

ChairTravis Griggs
Cincom Systems

OOPSLA workshops provide a creative and collaborative environment where attendees meet to discuss, and solve challenging problems related to a variety of research topics. Workshops provide a great opportunity for software developers and researchers to establish as well as foster communities on these topics.

The topics of workshops as well as their formats are diverse. For example, workshops may provide an opportunity for people working in a particular area to coordinate efforts and to establish a collective plan of action, to collaborate on a book, to seek contribution, or to discuss and share ideas on a hot new emerging technology.

This year we have selected 15 excellent workshops. We invite you to read about them and consider participating in one, or more!


Workshops

Extravagaria IV: Photographing Conferences

Room: 110Date: Oct 19, 2008Time: 8:30 - 17:00
Richard P. Gabriel
IBM Research
Kevin J. Sullivan
University of Virginia

Abstract

Photographing a conference is not a matter of point and shoot. And it's not just about pix to share with friends and family - the time is ripe for both serious photojournalism to capture our community's leaders, its activities, and its human face and for the use of artistry to tell stories and get people thinking. In this workshop you will learn the basic technical and aesthetic techniques for good conference photography, and you will practice these techniques during OOPSLA. Work will be critiqued using a writers' workshop process to enable you to continue learning and improving after the workshop. Participants will be expected to attend a full-day of lectures and interactive learning activities as well as photograph Monday, Tuesday, and Wednesday with short, early morning writers' workshops on Tuesday, Wednesday, and Thursday.

Details on how to participate in this workshop can be found at: http://dreamsongs.com/Feyerabend/Extravagaria2008.html



Sixth International Workshop on SOA & Web Services - Best Practices

Room: Belmont 3Date: Oct 19, 2008Time: 8:30 - 17:00
Anders Aas Bjerkestrand
Bekk Consulting AS
Lars Arne Skaar
Mile Consulting AS
Ruth Lennon
Letterkenny Institute of Technology
Amir Zeid
The American University of Kuwait

Abstract

Both Academia and Industry have intensified their efforts to realize the potential of Service Oriented Computing and Service Oriented Architecture (SOA). There are many obstacles yet to overcome in the commercial adoption, design and implementation of SOA. This workshop seeks insight from academia and industry to describe the problems encountered and formulate theoretical and propose practical solutions for their resolution from industry and academia perspectives. This workshop is a continuation of a highly successful series of workshops at OOPSLA 2007, OOPSLA 2006, OOPSLA 2005, OOPSLA 2004 and OOPSLA 2003.

Details on how to participate in this workshop can be found at: http://boss.bekk.no/oopsla2008/



The 8th OOPSLA Workshop on Domain-Specific Modeling

Room: 210Date: Oct 19, 2008Time: 8:30 - 17:00
Room: 210Date: Oct 20, 2008Time: 8:30 - 17:00
Juha-Pekka Tolvanen
MetaCase
Jonathan Sprinkle
University of Arizona
Jeff Gray
University of Alabama at Birmingham
Matti Rossi
Helsinki School of Economics

Abstract

An upward shift in abstraction leads to a corresponding increase in productivity. In the past this has occurred when programming languages have evolved towards a higher level of abstraction. Today, domain-specific modeling languages provide a viable solution for continuing to raise the level of abstraction beyond coding, making development faster and easier. In domain-specific modeling (DSM) the models are constructed using concepts that represent things in the application domain, not concepts of a given programming language. The modeling language follows the domain abstractions and semantics, allowing developers to perceive themselves as working directly with domain concepts. Together with frameworks and platforms, DSM can automate a large portion of software production. Some possible topics for submission to the workshop include: o Industry/academic experience reports o Creation of metamodel-based languages o Novel approaches for code generation from domain-specific models o Evolution of languages o Metamodeling frameworks and languages o Tools for DSM

Details on how to participate in this workshop can be found at: http://www.dsmforum.org/events/DSM08/



Worked Examples for Sound Object-Oriented Pedagogy: A "Killer Examples" Workshop

Room: Belmont 2Date: Oct 19, 2008Time: 8:30 - 17:00
Michael Caspersen
University of Aarhus
Jürgen Börstler
Umeå University
Adrienne Decker
University at Buffalo, SUNY
Carl Alphonce
University at Buffalo, SUNY

Abstract

The "Killer Examples" workshops are highly interactive workshops, held annually at OOPSLA since 2002. The workshop goals are to bring together educators and developers to share their object-oriented expertise, and provide a forum for discussion of teaching techniques and pedagogical goals. The theme of last year's workshop was process in the pedagogy of object orientation; the theme of this year's workshop is pedagogically sound examples for object orientation: examples which are structured to support student learning. The workshop solicits examples which can be used in the teaching of object orientation. Submitters present their examples at the workshop; participants in the workshop will critique the examples and actively engage in refining the examples in a way that they support a clear and sound pedagogy. The workshop accepts walk-ins if space permits and walk-ins are determined to have adequate interest and background in the workshop theme to contribute positively to the discussions.

Details on how to participate in this workshop can be found at: http://www.cse.buffalo.edu/faculty/alphonce/KillerExamples/OOPSLA2008



The 2nd Workshop on Refactoring Tools

Room: 209Date: Oct 19, 2008Time: 8:30 - 17:00
Danny Dig
Massachusetts Institute of Technology
Robert M. Fuhrer
IBM T.J Watson Research Center
Ralph Johnson
University of Illinois at Urbana-Champaign

Abstract

Refactoring is the process of applying behavior-preserving transformations to a program with the objective of improving the program's design. A specific refactoring is identified by a name (e.g., Extract Method), a set of preconditions, and a set of specific transformations that need to be performed. Tool support for refactoring is highly desirable because checking the preconditions for a given refactoring often requires nontrivial and non local program analysis, and applying the transformations may affect many locations in the program. In recent years, the emergence of light-weight programming methodologies such as Extreme Programming has generated a great amount of interest in refactoring, and refactoring support has become a required feature in modern-day IDEs. Until now, there has not been a suitable forum for discussions among researchers and developers of such tools. This full day event on refactoring tools fills that need, with a strongly practical focus. The workshop features both presentations given by developers and researchers in the field of refactoring, as well as demonstrations of practical refactoring tools.

Details on how to participate in this workshop can be found at: http://refactoring.info



2nd Workshop on Assessment of Contemporary Modularization Techniques

Room: 211/212Date: Oct 19, 2008Time: 8:30 - 17:00
Phil Greenwood
Lancaster University
Alessandro Garcia
Lancaster University
Elisa Baniassad
The Chinese University of Hong Kong
Kevin Sullivan
University of Virginia
Yuanfang Cai
Drexel University
Alan MacCormack
Harvard Business School

Abstract

A variety of new modularization techniques is emerging to cope with the challenges of contemporary software engineering, such as Aspect Oriented Software Development (AOSD), Feature Oriented Programming (FOP), and the like. The effective assessment of such technologies plays a pivotal role in (i) understanding their costs and benefits when compared to conventional development techniques, and (ii) their effective transfer to mainstream software development. The goal of the 2nd ACoM workshop is to put together researchers and practitioners with different backgrounds to (a) understand the impact of contemporary modularization techniques in practice; (b) explore new, and potentially more effective, modularity modeling and assessment methods to account for and guide the application of modularization techniques, and (c) discuss the potential of using modularity assessment results to improve software development outcomes, to improve existing modularization techniques, and to foster the development of new techniques.

Details on how to participate in this workshop can be found at: http://www.comp.lancs.ac.uk/computing/ACoM.08/



Virtual Machines and Intermediate Languages for Emerging Modularization Mechanisms

Room: Ryman 2Date: Oct 19, 2008Time: 8:30 - 17:00
Hridesh Rajan
Iowa State University
Michael Haupt
Hasso-Plattner-Institut, University of Potsdam
Christoph Bockisch
Technische Universität Darmstadt
Robert Dyer
Iowa State University

Abstract

Modern programming languages are compiled to intermediate code preserving the intention of high-level language constructs. Emerging modularization mechanisms, however, lack such handling. Recent research results have shown that deeper support for these modularization mechanisms, e.g., in virtual machines and intermediate languages, is feasible; it allows applying tailored optimizations and radically improves development processes such as incremental compilation, debugging, etc. The VMIL workshop, second in the series, is a forum for research in virtual machines and intermediate languages with support for emerging modularization mechanisms such as mix-ins, units, open classes, hyper-slices, adaptive methods, roles, composition filters, layers, pointcuts-and-advice, and inter-type declarations. Topics of interest include, but are not limited to: compilation-based and interpreter-based virtual machines as well as intermediate language designs with dedicated support for emerging modularization mechanisms, compilation techniques, optimization strategies, improved techniques for fast predicate evaluation (e.g., of pointcuts) inside virtual machines, and advanced caching and memory management schemes.

Details on how to participate in this workshop can be found at: http://www.cs.iastate.edu/~design/vmil/



Challenges: Agile Values Meet Different Value Systems

Room: 211Date: Oct 20, 2008Time: 8:30 - 17:00
Joerg Pechau
CoreMedia AG
Petra Becker-Pechau
University of Hamburg

Abstract

One might expect that nowadays object oriented software development and agile methods are mainstream in industrial practice. Especially the handling of method mixtures as we face it when different organizations and disciplines have to work together should have been addressed by now. Actually conflicts arise exactly at that point, in the worst case leading to failed software projects.

Our assumption: The choice of methods and tools is an expression of the value systems of an individual, a team, an organization etc. This applies to software development as well as to any other discipline. Different value systems are accountable for conflicts. The question is: how do we, as software developers who value agile methods and object oriented approaches, handle such structural conflicts?

Details on how to participate in this workshop can be found at: http://oopsla2008.2isnot3.eu



Escaped from the Lab: Crossing the Gap from Invention to Practice

Room: Ryman 1Date: Oct 20, 2008Time: 8:30 - 17:00
Dennis Mancl
Alcatel-Lucent Bell Labs
Steven Fraser
Cisco Research
Bill Opdyke
Motorola

Abstract

This workshop will address many practical questions that arise in software product organizations large and small, focusing on the transition from an idea to a product. How do you go from a good research idea to a real-world product? Why is it so hard to address performance, reliability, and security issues when going from an initial prototype implementation into product-quality code? What have we learned from our successes and failures in converting research ideas into quality software products? Workshop participants will explore the challenges, compiling a set of the most important techniques to utilize when turning inventions into practice.

Details on how to participate in this workshop can be found at: http://mysite.verizon.net/dennis.mancl/oopsla08/index.html



Relationships and Associations in Object-Oriented Languages

Room: Fisk 1Date: Oct 20, 2008Time: 8:30 - 17:00
Stephen Nelson
Victoria University of Wellington
Stephanie Balzer
ETH Zurich
Gavin Bierman
Microsoft Research
Erik Meijer
Microsoft Research
James Noble
Victoria University of Wellington
David Pearce
Victoria University of Wellington
Jiri Soukup
Code Farms
Frank Tip
IBM Watson

Abstract

There is a disconnect between modelling and implementation: relationships are prevalent in system models but implementation languages do not provide first class support for them. For example, in Java (and other Object Oriented Languages), relationships must be implemented by hand using references embedded in participants. This approach is cumbersome and error prone, and leads to a disconnect between the system model and the system implementation. As software systems grow and models become increasingly complex this disconnect causes problems not only for implementers but especially for code maintainers. To address this issue, the software community is using frameworks and tool support to manage the disconnect. However, this does not address the core issue of relating design and implementation. Recent proposals for programming language extensions to add first class relationships demonstrate another approach to the same problem: an increased level of abstraction in programming languages to close the gap between model and implementation. We plan to gather the growing number of researchers in the object oriented programming language community who are working on relationship based systems to share their research and discuss the future of relationship based constructs in programming languages.

Details on how to participate in this workshop can be found at: http://www.mcs.vuw.ac.nz/raool/



Smalltalk Superpowers -- their uses for good and for evil

Room: 212Date: Oct 20, 2008Time: 8:30 - 17:00
Martin McClure
GemStone Systems, Inc.
Travis Griggs
Cincom Systems, Inc.

Abstract

Have you seen a superhero produce a beautiful bit of code that changes the class of objects at runtime? Or a supervillain write a brittle nightmare that abuses #become:? Come tell us about it! Smalltalk includes features that are outside of the normal best-practice rules of object-oriented programming. #become:, #changeClassTo:, #doesNotUnderstand:, #thisContext, and more. We term these features superpowers because developers that use them, like the superheroes and supervillains of the comic-book world, gain abilities that mere mortals lack. The question of when to break the rules is a difficult one. This workshop will compare real-world successes and failures, and seek patterns that identify when it is appropriate to use these powerful but dangerous features. Although the workshop organizers are primarily experienced with Smalltalk, we encourage participation by those with experience with the superpowers of any OO language.

Details on how to participate in this workshop can be found at: http://smalltalk-superpowers.org



1st ACM Workshop on Hot Topics in Software Upgrades

Room: 107Date: Oct 20, 2008Time: 8:30 - 17:00
Tudor Dumitras
Carnegie Mellon University
Danny Dig
Massachusetts Institute of Technology
Iulian Neamtiu
University of California at Riverside

Abstract

The goal of HotSWUp is to identify cutting edge research ideas for implementing software upgrades. Actively used software is upgraded regularly to incorporate bug fixes and security patches or to keep up with the evolving requirements. Whether upgrades are applied offline or online, they significantly impact the software s performance and reliability. Recently introduced commercial products aim to address various aspects of this problem, e.g., programing language/framework/middleware support for online upgrade, large scale dissemination of fine grained updates, live data migration in storage area networks. However, recent studies and a large body of anecdotal evidence suggest that, in practice, upgrades are failure prone, tedious, and expensive.

Details on how to participate in this workshop can be found at: http://hotswup.org/



Design Patterns: The Next Generation

Room: Ryman 2Date: Oct 20, 2008Time: 8:30 - 17:00
Brian Foote
Industrial Logic, Inc.
Dirk Riehle
SAP
Joshua Kerievsky
Industrial Logic, Inc.

Abstract

One of the striking things about patterns is that they were distilled from experience and prior art, rather than culled from original research. Since the Gang of Four book was published, hundreds of additional patterns have been added to the pattern canon, but for many, the focus has remained on the design-level patterns.

We propose to revisit this fertile vein, with the aim of reviewing, revising, refining, refactoring, and recatagorizing this material.

THEREFORE, we are soliciting position papers that address the following issues:

1. New pattern classification schemes and taxonomies

2. Presentations of existing patterns as combinations or refactorings of other patterns

3. Reflections on one or more existing design patterns, in the light of the nearly a genereration of experience

4. Discussions of Gang-of-Four "outtakes" or omissions; or of patterns that should have been elevated into the Design Patterns pantheon, but have not been, and of which should be elided.

Details on how to participate in this workshop can be found at: http://www.laputan.org/dp-tng.html



Lisp50 - The 50th Birthday of Lisp at OOPSLA 2008

Room: 204Date: Oct 20, 2008Time: 8:30 - 17:00
Pascal Costanza
Vrije Universiteit Brussel
Richard P. Gabriel
IBM Research
Robert Hirschfeld
Universität Potsdam
Guy L. Steele Jr.
Sun Microsystems Laboratories

Abstract

In October 1958, John McCarthy published one in a series of reports about his then ongoing effort for designing a new programming language that would be especially suited for achieving artificial intelligence. That report was the first one to use the name LISP for this new programming language. 50 years later, Lisp is still in use. Over the past five decades, it has changed and turned—a seed bed for new ideas that have influenced many other languages along the way—but the central corner stones have remained the same, making it one of the oldest programming language still in use today, second only to Fortran.

This year we are celebrating Lisp's 50th birthday. OOPSLA 2008 is an excellent venue for such a celebration, because object-oriented programming benefited heavily from Lisp ideas and because OOPSLA 2008 takes place in October, exactly 50 years after the name Lisp was used publicly for the first time. We will have talks by John McCarthy himself, and numerous other influential Lispers from the past five decades. We will also take a look at the next 50 years of Lisp.

This workshop is open to all OOPSLA attendees.

Details on how to participate in this workshop can be found at: http://www.lisp50.org



The following workshops are offered by the co-located GPCE symposium.

GPCE: Workshop on Domain-Specific Program Development

Room: 110Date: Oct 22, 2008Time: 8:30 - 17:00
Julia Lawall
University of Copenhagen
Laurent Réveillère
University of Bordeaux

Abstract

Domain-specific knowledge is traditionally integrated in the software development process in an ad hoc and partial fashion, without much formal basis or tools. Nevertheless, the concept of domain expertise intervenes at all stages of the continuum of modeling, programming, and compiling. Putting domain expertise at the center of the software development process entails providing abstractions that are well adapted to expressing problems in the domain, providing verifications that capture essential domain properties, and providing implementation strategies that take domain requirements into account.

These issues have been considered in the fields of modeling, programming, and compiling, but in isolation. Indeed, the field of domain-specific modeling has had little influence on the design of domain-specific programming languages, and the design of domain-specific programming languages has been considered independently of implementation techniques. The purpose of this workshop is to bring together researchers in these fields to identify possible points of synergy, common problems and solutions, and visions for the future.

Details on how to participate in this workshop can be found at: http://www.labri.fr/perso/reveille/DSPD/2008/



GPCE: Modularization, Composition and Generative Techniques for Product Line Engineering

Room: 105Date: Oct 23, 2008Time: 8:30 - 17:00
Neil Loughran
Lancaster University, UK
Iris Groher
Siemens AG, Germany & Linz University, Austria
Roberto Lopez-Herrejon
University of Oxford, UK
Sven Apel
University of Passau, Germany
Christa Schwanninger
Siemens AG, Germany

Abstract

Product Line Engineering (PLE) is an increasingly important paradigm in software development whereby commonalities and variations among similar systems are systematically identified and exploited. PLE covers a large spectrum of activities, from domain analysis to product validation and testing. Variability is manifested throughout this spectrum in artifacts such as requirements, models, code and documentation and it is often of crosscutting nature. These characteristics promote different kinds of modularization and composition techniques (e.g. objects, components, aspects, features, subjects, frames, etc.) as suitable candidates to manage variability. Prior work on Generative Programming (GP) and Component Engineering (CE) has shown their successful applicability to PLE and the potential benefits of different modularization and composition techniques.

This workshop aims at expanding and capitalizing on the increasing interest of researchers from these communities. It builds on the success of the Aspect-oriented Product Line (AOPLE) workshop which has run consecutively at GPCE for the past two years. AOPLE established an initial community and formulated a first joint research agenda. The main goal of the workshop is to broaden this agenda and strengthen the established collaborations, to share and discussed ideas, identify research opportunities and foster collaboration to tackle the challenges these opportunities may bring about. Each submitted paper will be reviewed by at least three committee members. Accepted papers will be posted on the web and attendants will be requested to read them in advance. The workshop will last a full day to give time for short paper presentations, and "Open Space" discussions on topics distilled from the presentations.

Details on how to participate in this workshop can be found at: http://www.infosun.fim.uni-passau.de/cl/staff/apel/McGPLE2008/index.html