% $Id: conclusion.tex 16891 2009-02-21 04:02:36Z gokhale $
\section{Concluding Remarks}
\label{sec:conclusion}

The last few years have seen a significant increase in the popularity of
component middleware platforms for developing distributed, real-time
and embedded (DRE) systems, such as emergency response systems,
intelligent transportation systems, total shipboard computing
environment across a wide range of application domains.  Its higher
levels of programming abstractions coupled with mechanisms that support
sophisticated and highly tunable infrastructure configuration are well
suited for rapid development and/or maintenance of such systems.

The generality of contemporary component middleware platforms, however,
has increased the complexity in properly configuring these platforms to
meet application-level QoS  requirements.  Automated
solutions~\cite{Gokhale_GTQMAP_RTAS:08} are an attractive alternative to
achieving the QoS configuration of component-based systems, however,
they incur excessive system resource overheads often leading to
sub-optimal system QoS.  
% Thus, important research challenges in
% achieving optimal QoS in the context of component middleware
% platforms remain unresolved. 

In this paper, we discussed an automated, model transformation-based
approach that takes into account the component collocation heuristics to
optimize application QoS configuration thereby improving the quality of
the software architecture.  We discussed the design of our approach, and
the transformation algorithm used to optimize the QoS configuration.  We
also evaluated our approach and compare it against the existing
state-of-the-art.  The results demonstrated the effectiveness of our
approach in optimizing QoS configuration in the context of a
representative DRE system reusable component assembly.   

The following are the lessons learned from our research:

\begin{BulletList}
\item Optimal QoS configuration for component-based systems is a crucial
research area that has been unaddressed till date.  As component
middleware gains popularity, and available resources become constrained,
especially in the context of DRE systems, it is critical to improve the
overall quality of the DRE system software architectures.  

\item Existing research works in QoS configuration have focused largely
on achieving \emph{locally optimized} solutions, \emph{i.e.}, they are
restricted to analyzing and modifying/manipulating the middleware
configuration space.   

\item Our approach showed that excessive overheads can be avoided by
analyzing QoS configurations in the context of other application
characteristics such as its component collocation/node placement
heuristics.  

\item We have focused on combining the deployment decisions with the
application QoS specification.  However, as our results have indicated,
further optimizations are possible by combining our technique with other
design-, development-, run-time techniques, which merits further
investigation.  Additional investigations are also necessary to test our
approach on larger DRE systems and different middleware platforms.

\item Our approach indicated improvements in latencies.  Significant
research remains to done to see how other QoS metrics can be improved as
well.  When multiple QoS metrics are considered together, simple
heuristics may not work.  Instead multiobjective
optimizations~\cite{Deb_EMO:05}  may be necessary. This will form part
of our future research.
\end{BulletList}
