\section{The problem}

\subsection{Market trends}

Consumer Electronics Products are a large variety of products, which have evolved from
straightforward electronic devices, such as radios, into complex software intensive systems.
Figure~\ref{fig:ARproductsRvO} shows a typical set of today's audio and video products.

\FigureImposeWidth{ARproductsRvO}{Today's Audio Video Consumer Products}{8cm}

Technological advances and business opportunities result in a convergence of separate worlds.
The worlds of {\it telecommunications}, {\it computers} and {\it consumer electronics} are
converging, see figure~\ref{fig:LWAconvergence}.

\FigureImposeWidth{LWAconvergence}{Trend: Convergence of separate worlds}{5cm}

This convergence means that functions from the different domains are integrated in new
types of appliances. These appliances are optimized towards the intended use. User, form factor,
function and environment all together determine what an optimal appliance looks like.
The wide variety in users, form factors, functions and environments requires a very
rich variety of appliances.

Figure~\ref{fig:LWAintegrationAndDiversity} shows at the left hand side a small subset of
existing devices belonging in one of the three domains. More to the right some of the form factors
are shown, while the right hand side shows some of the environments. The number of useful
combinations of functions, form factors and environments is nearly infinite!

\FigureTextwidth{LWAintegrationAndDiversity}{Integration and Diversity}

In this presentation video entertainment  will be used as the application area.
Figure~\ref{fig:ARcurrentProducts} shows a typical diagram of the set up of video products in our
homes. We see products to connect with the outside world (set top box), storage products
(Video Cassette Recorder abbreviated as VCR), and conventional TV's and remote controls,
which are the de facto user interface.

\FigureImposeWidth{ARcurrentProducts}{Today's Video Products}{6cm}

This chain of video products is slowly evolving, as depicted in figure~\ref{fig:ARproductEvolution}.
In the past a straightforward analog chain was used. The elements in this chain are
stepwise changed into digital elements. The introduction of the Large Flat TV's breaks open
the old paradigm of an integrated TV, which integrates tuner and related electronics
with the monitor function.

In the near future many more changes can be expected, such as the introduction of the
Digital Video Recorder (DVR), a gateway to alternative broadband solutions, wireless inputs and
outputs, home networks enabling multiple TV's.

\FigureTextwidth{ARproductEvolution}{Evolution of Video Products}

The function allocation for this last stage of figure~\ref{fig:ARproductEvolution} and the network
topology can be solved in several ways. Figure~\ref{fig:ARproductScenarios} shows 4
alternatives, based on a client-server idiom.

The expectation is that all alternatives will materialize, where the consumer chooses a solution
which fits his needs and environment.

\FigureImposeWidth{ARproductScenarios}{Distribution Scenario's}{8cm}

These alternatives require different packaging of functions into products,
as shown in figure~\ref{fig:ARpackaging}.

\FigureTextwidth{ARpackaging}{Product Packaging Options}

\subsection{Technology trends}

The major trend for electronic devices is Moore's law, roughly stating that the available amount of
transistors in an integrated circuit doubles every 18 months. Devices based on IC's follow this
trend. Figure~\ref{fig:LWAmooresLawRvO} shows the growth of the amount of memory in TV's.

\FigureImposeWidth{LWAmooresLawRvO}{Moore's law}{7cm}

The amount of software in products, measured as lines of code, more or less follows Moore's law.
Unfortunately the software engineering discipline did not proceed at the same rate,
which is reflected by a fault metric expressed as fault per thousand lines of code, varying
between 1 for very rigid organized producers, to 10 or more for ad hoc products.
Typical values for CE type products is 3  faults per 1000 lines of code.
See figure~\ref{fig:ARproblem} for typical values  as function of the year.

\FigureImposeWidth{ARproblem}{Problem: increasing SW size, decreasing reliability?}{8cm}

The increase of the amount of software causes many problems:
\begin{myList}
\item Increase of development cost
\item (Non) availability of skilled engineers
\item Increase of development time, and hence time to market
\item Decrease of product reliability
\end{myList}

\FigureImposeWidth{ARtheHolyGrail}{The Holy Grail: Reuse}{6cm}

Reuse is often presented as {\bf the solution} for all problems mentioned above.
Experience learns that quite the opposite happens in many cases,
see~\cite{www:ProductFamiliesAndGenericAspects}, the challenge of
executing a successful reuse program is often severely underestimated.

The most common root-cause of reuse failure is the mistake to see reuse as a goal rather than
a means.

\subsection{Example Digital Television}

An example of a new product is a digital television, which is the merger of a set top box and
a television. This television can directly connect to a digital cable infrastructure and
offer services provided by cable or content providers.

One way of realizing such a system is to declare the reuse of existing software, integrate
all this software on a single hardware platform and to support this hardware platform factor
out the ''lower'' software layers. Figure~\ref{fig:ARdigitalTelevisionSimplisticArchitecture}
shows the simplistic architecting to achieve this merger.

\FigureImposeWidth{ARdigitalTelevisionSimplisticArchitecture}{Simplistic Architecting: Digital TV}
{10cm}

Figure~\ref{fig:ARdigitalTelevisionCodeAssets} shows the rationale behind the reuse of existing
software packages. The cumulative effort of the software involved exceeds 500 manyears.

\FigureImposeWidth{ARdigitalTelevisionCodeAssets}{Available Code Assets}{7cm}

