Abstract
In this paper, we present the experience of refactoring the architecture of Ginga, the Brazilian Terrestrial Digital TV System (SBTVD) middleware. The main goal of the Ginga refactoring was to increase its configurability, through the automatic management of its variabilities. The resultant middleware, named GingaForAll, is based on a software product line (SPL) architecture, which encompasses both the middleware commonalities and its specific functionalities. Aspect-oriented techniques were used to improve the modularization of crosscutting mandatory and variable features from the Ginga SPL architecture. A model-driven based process was developed to allow the automatic management of the common and variable features in a high abstraction level that supports the management of code assets in terms of configurable models. The integration of such software engineering techniques have contributed to provide a flexible and configurable Ginga architecture, which allows the automatic generation of middleware customizations driven by the devices constraints and applications needs.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Linden, L.F., Schmid, K., Romes, E.: Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer, New York (2007)
Muthig, D., et al.: Generic Implementation of Product Line Components. In: Aksit, M., Mezini, M., Unland, R. (eds.) NODe 2002. LNCS, vol. 2591, pp. 313–329. Springer, Heidelberg (2003)
Braga, R., et al.: AIPLE-IS: An Approach to Develop Product Lines for Information Systems Using Aspects. In: Proc. of the Brazilian Symp. on Comp., Arch. and Software Reuse, SBCARS (2007)
PPLive, http://www.pplive.com/en/
Favre, L., et al.: Improving MDA-based Process Quality through Refactoring Patterns. In: Proc. of the 1st International Workshop on Software Patterns and Quality (2007)
Alves, et al.: Refactoring product lines. In: Proceedings of the 5th Int. Conf. on Generative Programming and Component Engineering, pp. 201–210 (2006)
Zhang, C., et al.: Refactoring Middleware with Aspects. IEEE Transactions on Parallel and Distributed Systems, 1058–1073 (November 2003)
Conejero, J., Hernandez, J., Jurado, E., Clemente, P.J., Rodríguez, R.: Early Analysis of Modularity in Software Product Lines. In: 21st International Conference on Software Engineering and Knowledge Engineering (SEKE), Boston, USA (2009)
Clements, P., et al.: Software Product Lines Practices and Patterns. Addison-Wesley, Reading (2002)
Filman, R., et al.: Aspect-Oriented Software Development. Addison-Wesley, Reading (2005)
Frankel, D.: Model-Driven Software Development. Business Process Trends Journal in MDA (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Saraiva, D. et al. (2010). Architecting a Model-Driven Aspect-Oriented Product Line for a Digital TV Middleware: A Refactoring Experience. In: Babar, M.A., Gorton, I. (eds) Software Architecture. ECSA 2010. Lecture Notes in Computer Science, vol 6285. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15114-9_14
Download citation
DOI: https://doi.org/10.1007/978-3-642-15114-9_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-15113-2
Online ISBN: 978-3-642-15114-9
eBook Packages: Computer ScienceComputer Science (R0)