Salion, Inc.: A Software Product Line Case Study
1 Introduction
This report is another in a series of Software Engineering
Institute (SEISM) case studies of organizations
that have adopted the software product line approach for
developing systems. 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 [Clements &
Northrop 02]. In contrast to one-at-a-time system
development, software product lines epitomize strategic
reuse. Using this approach, organizations are achieving
order-of-magnitude improvements in time to market, cost,
and product quality. In some cases, the flexibility and
responsiveness brought about by the product line approach
is allowing organizations to dominate their markets and
achieve dominant entry positions in new markets.
This report details the story of Salion, Inc., an enterprise software company dedicated to helping suppliers optimize their revenue acquisition process.
This case study is unique in that
Salion did not possess substantial experience in its application area,
although its key designers and strategists were knowledgeable about related
domains. This is in contrast to organizations like CelsiusTech [Brownsword & Clements 96],
Market Maker [Clements &
Northrop 02], Raytheon [Clements & Northrop 02], and
Cummins, Inc. [Clements &
Northrop 02] that had been building like systems for years before adopting
the software product line approach. These and other organizations were able
to parlay their in-depth knowledge and legacy artifacts into comprehensive
up-front planning that let them define their product line scope and build
their core asset base a priori. By contrast, Salion pursued a reactive
approach [Krueger 01] to its product
line that let it respond flexibly to spontaneous business opportunities and
that significantly lowered the cost of adopting the product line paradigm to
its software system development.
Section 2 begins by examining
Salion's background, business area, and foray into software
product lines. Section 3
examines how it approached several product line practice
areas1 that were key for it.
Section 4 describes the
payoffs as Salion gained more customers for its products.
Section 5 concludes with
lessons learned and a summary of the major thematic aspects
of the Salion story.
1
Twenty-nine product line practice areas categorized as
software engineering, technical management, and
organizational management are described by Clements and
Northrop [Clements &
Northrop 02].