Tuesday, September 2, 2014

Understanding product line architectures

A product line architecture (PLA) can be defined as a set or family or group of elements that coordinate with each other to provide a defined product functionality. It defines not only element types, but also how they interact, in addition to how these are mapped to the product functionality.
Additionally, product line architecture could also define a few instances of the architectural elements. We could use this term to refer to a set of products within an organization.

How do we define PLA?
We can think of product line architecture (PLA) as being a draft for creating groups or families of related applications. Product line architecture proceeds on the premise that it is wiser for organizations to produce sets or groups of intimately related products than to build individual products.

Why should organizations need to go for PLA?
Product line architectures are important for a very critical reason: software keeps becoming obsolete and complex at a breakneck speed. This calls for very strong effort in keeping the costs of software development and maintenance down. With product line architecture, an organization can make good the effort it puts into software design and development, which it can implement across a variety of products, leading to major reduction in costs.
It is for this simple, commonsensical reason that creating multiple products is more prudent and cost and time saving than individual ones. This principle has some correlation to economies of scale: just as how it makes greater sense to build a mold that manufactures more products than have one mold for each; PLA too creates standards or frameworks on which smaller and more diverse products can be built with lesser effort and time.
Since about four decades, the benefits of having multiple software families are being experienced by organizations.

References:
http://www.cs.utexas.edu/ftp/predator/stja.pdf

No comments:

Post a Comment