MVCDC2005
Abstract
Workshop Goals
Position Papers
Important Dates
Workshop Activities
Organizing Committee
|
|
2nd
Workshop on
Managing
Variabilities Consistently in Design and Code
at
the
20th
Annual ACM SIGPLAN Conference on
Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA
2005).
Abstract
Software product lines
/ software families promise a reduction of development time and product
development cost through systematic reuse and improved software quality.
The idea is to develop the common parts of a family just once while being
prepared to adapt these parts to the different product requirements in
a controlled way.
With the introduction
of software product line approaches into the practice, variants and variability
add a new dimension of complexity to the software development process.
The combinatorial explosion of possible variants in systems with a high
degree of variability requires special concepts for specifying, modeling,
and implementing these systems to assure quality and functionality.
Object technology encompasses
a diversity of variability approaches at different abstraction levels.
During the analysis phase, OO provides useful techniques such as use cases
or scenarios. During design, patterns, and frameworks serve to handle
variability. At the implementation level, OO supports variability by,
for example, dynamic binding, polymorphism, inheritance and sub-typing.
These approaches are
not integrated and none of them explicitly supports the description and
implementation of variants.
Feature models are better suited for planning and supporting strategic
decision both for architectural and for component development. Feature
models are tightly connected to object-oriented models of the UML. Feature
Models are used in different
ways:
- They are the basis
for choosing a set of features by a customer in order to configure a
product, especially by expressing feature dependencies.
- They support the
navigation in requirements specification.
- They are used for
directing and coordinating the partitioning of architecture and implementation
according to the Separation of Concerns principle.
- They are applied
for composing the final software product.
For all the above mentioned
reasons, Feature Models play a central role in Product Line development.
However, their definition in terms of syntax, semantics and graphical
representation as well as the integration into the software development
process is still limited.
Likewise, OO languages
do not give much support in making variants explicit. AO languages seem
to be more appropriate for implementing a feature in a separate concern
and making features first class citizens within the software.
Workshop Goals
The goal of this workshop
is to evaluate existing technologies for their ability to manage variants
and the resulting variability in design and code consistently, identify
gaps and find points for collaboration to fill these gaps.
This is the second workshop
on managing variability. The position papers of the first workshop can
be found at MVCDC1.
Position Papers
The
main goal is to discuss and identify efficient ways for dealing with highly
variable software systems on design and code level by evaluating existing
approaches and new ideas from the research community and industrial practice.
Please download and
read all positione papers before the workshop and complete the following
two sentences for each:
- What I really liked about this paper is ...
- The most important question I would like to ask the author is ...
Sushil
Krishna Bajracharya, Cristina Videira Lopes |
Bajracharya+Lopes.pdf |
Venkat
Chakravarthy, Eric Eide |
Chakravarthy.pdf |
Sofie
Goderis, Dirk Deridder |
Goderis.pdf |
Thomas
Leich, Sven Apel, Marko Rosenmueller, Gunter Saake |
Leich.pdf |
Adriaan
Moors, Jan Smans, Eddy Truyen, Frank Piessens, Wouter Joosen |
Moors.pdf |
Important Dates
Position Papers
Due: |
Friday, August
26, 2005 |
Notification
of Acceptance: |
Wednesday, September
7, 2005 |
Workshop: |
Thursday, October
20, 2005 |
Workshop activities
Workshop preparation
Two weeks before the
workshop a detailed workshop schedule will be published together with
all submitted position papers. The participants are expected to prepare
for the workshop by reading the position papers and thinking about the
questions they want to ask the authors.
Planned workshop activities
The workshop is laid
out as full day workshop.
Instead of presenting the papers, each participant will be expected to
review everyone else's paper before the workshop and complete the following
two sentences for each:
- What I really liked about this paper is ...
- The most important question I would like to ask the author is ...
These questions are
written down on index cards and will be collected before the workshop.
During the workshop, we will spend the morning with questions and answers
to gain deeper insight into the problem described in the paper. Before
each paper session, the author will be permitted a 4 minute slot to very
briefly present his/her paper/work. The workshop format in the afternoon
will be utilizing the "Open Space" format in order to discuss
topics of interest that might be, or might not be directly related to
the papers presented in the morning.
Post-workshop activities
The workshop results
are published on the MVCDC
Wiki page together with a schedule on follow up activities. We will
provide a summary of the workshop on the web page and aim on a joint research
agenda for investigating ways to handle variants consistently in design
and code.
If we receive a significant amount and quality of submissions, we also
consider trying a special issue of some Journal.
Organizing committee
Danilo Beuche
(danilo.beuche at pure-systems.com) is managing director of the pure-systems
GmbH. pure-systems is a software company specialized in services and tool
development for the application of product line technologies in embedded
software systems. When he joined the GMD First (now Fraunhofer FIRST)
in 1995, he started to work in the field of embedded operating systems
and software families and continued this line of work at the University
Magdeburg. His work on tool support for feature based software development
has gained interest both in the research community and in the industry
and finally lead to the founding of pure-systems in 2001.
Krzysztof Czarnecki
(czarnecki at acm.org)is an Assistant Professor at the University
of Waterloo, Canada. Before coming to Waterloo, he spent 8 years at DaimlerChrysler
Research working on the practical applications of generative programming.
He is co-author of the book "Generative Programming" (Addison-Wesley,
2000), which is regarded as founding work of the area and is used as a
graduate text at universities around the world. He was General Chair of
the 2003 International Conference on Generative Programming and Component
Engineering (GPCE) and will deliver a keynote on generative software development
at the at the UML 2004 conference in Lisbon. His current research focuses
on realizing the synergies between generative programming and MDA.
Mira Mezini (mezini
at informatik.tu-darmstadt.de) is professor of computer science at
Darmstadt University of Technology, where she is leading the software
technology group. Her research focuses on developing methods and tools
that support programmers in writing software that has a clear modular
structure that reflects a clear separation of concerns. A key theme underlying
her current work is aspect-oriented software development (AOSD). She is
leading several important projects in this area.
Christa Schwannninger
(christa.schwanninger at siemens.com) is a Senior Research Scientist at
Siemens AG, Corporate Technology, Munich, Germany. Her fields of interest
are software architecture, distributed object computing, patterns, frameworks
and aspect oriented software development. She participates in industrial
research in new and promising areas of software engineering and is a consultant
for business units that actually build commercial software, mostly embedded
in small, resource restricted devices.
Markus Voelter (voelter
at acm.org) works as a freelance consultant for software technology
and engineering. He focuses on the architecture of large, distributed
systems. His interests include patterns, frameworks, components, middleware
as well as generative and model-driven development. Markus is the author
of various technical articles and papers as well as several published
patterns. He is a regular speaker at national and international conferences
and co-author of Wiley's "Server Component Patterns" book. Over
the last years, Markus has worked on several projects of different sizes
in different domains such as banking, media, astrophysics and automotive.
Most recently, he has been working on the architecture of embedded software,
specifically the small components project, which aims at providing component
infrastructures for embedded systems.
Rainer Burgstaller,
PhD Student, Munich, Germany
Rainer Burgstaller is a PhD student (since March 2005) at Darmstadt University
of Technology, supported by Siemens AG Munich. His fields of interest
are model-driven software development as well as aspect-oriented software
development. Currently, his PhD work concentrates on model-to-model transformations
in the context of domain driven development.
Previous Workshops
Christa Schwanninger,
Danilo Beuche, Krzysztof Czarnecki, Mira Mezine, Markus Völter, Workshop
- MVCDC: Managing Variabilities consistently in Design and Code, OOPSLA
04 conference, Vancouver, Canada, October 2004
Markus Voelter, Michael
Kircher, Christa Schwanninger, Uwe Zdun, Alexander Schmid, Workshop
- Reuse in Constrained Environments, OOPSLA'03 conference, Anaheim,
California, USA , October 2003
Matthias Riebisch, Jim
Coplien, Detlef Streitferdt, Workshop on Modeling Variability for Object-Oriented
Product Lines, ECOOP'03, Darmstadt, July 2003
Bedir Tekinerdogan,
Mehmet Aksit, Krzysztof Czarnecki, Sholom Cohen , OOPSLA'01 Workshop on
Managing Variability in Domain Engineering using OO Technology, OOPSLA'01
conference, Tampa, Florida, USA, October 2001
|