Home / Tutorials
|
Tutorial Number |
Presenters | Tutorial Title |
| T1: Tutorial 1 |
Pragmatic Strategies for
Variability Management in Product Lines in Small- to Medium-Size Companies |
|
| T2: Tutorial 2 | John McGregor | Building Reusable Testing Assets for a Software Product Line |
| T3: Tutorial 3 | John McGregor | Production Planning in a Software Product Line Organization |
| T4: Tutorial 4 | Danilo Beuche | Transforming Legacy Systems into Software Product Lines |
| T5: Tutorial 5 | Charles Krueger |
Systems and Software Product Line Engineering with the SPL Lifecycle Framework |
| T6: Tutorial 6 |
Danilo Beuche Isabel John |
Managing Requirements in Product Lines |
| T7: Tutorial 7 |
Isabel John Karina Villela |
Evolutionary Product Line Scoping |
| T8: Tutorial 8 |
Bruce Trask Angel Roman |
Leveraging Model Driven Engineering in Software Product Line Architectures |
| T9: Tutorial 9 |
Larry Jones |
Introduction to Software Product Lines Adoption |
| T10: Tutorial 10 |
Introduction to Software Product Lines |
Tutorial Schedule:
| Monday, September 13, 2010 | Tuesday, September 14, 2010 | |
|
AM (09:00 - 12:30) |
T1, T2, T8 | T3, T6 |
|
PM (14:00 - 17:30) |
T4, T5, T9 | T7, T10 |
Tutorial
Details:
T1 : Pragmatic Strategies for Variability Management in Product Lines in Small- to Medium-Size Companies
Presenter : Stan
Jarzabek
Abstract
Setting up and stabilizing reusable core assets
for a family of similar products is the first step towards reuse via
software Product Line (SPL) approach. Additional variation
mechanisms are applied to help in configuring and customizing core
assets during reuse-based derivation of custom products. Initially,
companies tend to adopt simple variation mechanisms such as
preprocessing, parameter files and build tools. For relatively small
SPLs, say with core assets in range of 50 KLOC, this strategy works
well. However, as the size of core assets grows and the impact of
features spreads through core assets, application of multiple, and
usually incompatible variation mechanisms becomes increasingly
difficult. In the tutorial, we analyze the above problems. We
present XVCL, a variation mechanism that replaces the need for
multiple, ad hoc variation mechanism. XVCL alleviates identified
problems and provides a complete, one-stop solution for variability
management in SPLs. We illustrate XVCL applications, evaluate its
merits and trade-offs.
Top Page
T2 : Building Reusable Testing Assets for a Software Product Line
Presenter :
John McGregor
Abstract
A software product line presents all of
the usual testing challenges and adds additional obligations. While
it has always been important to test the earliest products of
development, a product line makes this much more important in order
to avoid a combinatorial explosion of test suites. We will consider
ways to reuse test cases, test infrastructure, and test results. We
will consider fault models for software product lines and then
develop a set of test plans based on those fault models.
Top Page
T3 : Production Planning in a Software Product Line Organization
Presenter :
John McGregor
Abstract
Production planning gives early guidance
concerning how products should be built and hence how core assets
should be designed. The production strategy addresses business goals
through product building. The production method implements the
production strategy by delineating exactly how a product is built
from core assets. The production plan instantiates the production
method for a specific product. In this tutorial we will layout
production planning in a software product line and provide examples
from a number of different product lines.
Top Page
T4 : Transforming Legacy Systems into Software Product Lines
Presenter :
Danilo Beuche
Abstract
This tutorial discusses many aspects of the
migration process in an organization when existing software systems
are used as starting point for a software product line. It is
intended to provide food for thought as well as practical
approaches for the migration.
Top Page
T5 : Systems and Software Product Line Engineering with the SPL Lifecycle Framework
Presenter :
Charles Krueger
Abstract
Mainstream forces are driving Software
Product Line (SPL) approaches to take a more holistic perspective
that is deeply integrated into the systems and software engineering
lifecycle. These forces illustrate that SPL challenges will not be
solved at any one stage in the product engineering lifecycle, nor
will they be solved in independent and disparate silos in each of
the different stages of the lifecycle. We explore our response to
these forces – a SPL Lifecycle Framework. The motivation for this
technology framework is to ease the integration of tools, assets and
processes across the full systems and software development
lifecycle. The goal is to provide product line engineers with a
common set of SPL concepts and constructs for all of their tools and
assets, at every stage of the lifecycle, and to assure that product
line development traceability and processes flow cleanly from one
stage of the lifecycle to another.
Top Page
T6 : Managing Requirements in Product Lines
Presenter :
Danilo Beuche and Isabel John
Abstract
Any organizations develop software or
software –intensive products, which are can be seen as variants or
members of a product line. Often the market demands variability and
the software organization expects productivity benefits from reuse.
In any case, complexity of the software development increases.
Requirements management plays a central role in this, when it comes
to mastering the complexity. In this tutorial we will give an
overview on how to analyze, build and manage common and variable
requirements for a product line.
Top Page
T7 : Evolutionary Product Line Scoping
Presenter :
Isabel John and Karina Villela
Abstract
Product Line Engineering has a
widespread use in industry now. Therefore there is a high need for
customizable, adaptable, and also for mature methods. Scoping is an
integral part of Product Line Engineering. In this phase we
determine where to reuse and what to reuse, establishing the basis
for all technical, managerial, and investment decisions in the
product line to come. In this tutorial we will give an introduction
on how to analyze an environment with the purpose of planning a
product line and its future evolution.
Top Page
T8 : Leveraging Model Driven Engineering in Software Product Line Architectures
Presenter :
Bruce Trask and Angel Roman
Abstract
Model Driven Engineering (MDE) is a promising recent innovation in
the software industry that has proven to work synergistically with
Software Product Line Architectures (SPLAs). It can provide the
tools necessary to fully harness the power of Software Product
Lines. This tutorial continues to be updated each year to include
recent and critical innovations in MDE and SPL. This
year will include information on key Model Transformation and
Software Product Line migration technologies as well as various
Model Constraint technologies.
Top Page
T9 : Introduction to Software Product Lines Adoption
Presenter :
Larry Jones and
Abstract
This tutorial describes a phased,
pattern-based approach to software product line adoption.
It reviews the challenges of product line adoption;
introduces a roadmap for phased, product line adoption; describes
adoption planning artifacts; and establishes linkages with other
improvement efforts.
Top Page
T10 : Introduction to Software Product Lines
Presenter :
Abstract
Software product lines have emerged as a
new software development paradigm of great importance.
A software product line is a set of software intensive systems
sharing a common, managed set of features, that satisfy the specific
needs of a particular market segment or mission and that are
developed from a common set of core assets in a prescribed way.
Organizations developing a portfolio of products as a software
product line are experiencing order-of-magnitude improvements in
cost, time to market, staff productivity, and quality of the
deployed products. The tutorial reviews the basic concepts of
software product lines, discusses the costs and benefits of product
line adoption, introduces the SEI’s Framework for Software Product
Line PracticeSM, and describes approaches to applying the
practices of the framework.
Top Page