全部 标题 作者
关键词 摘要

OALib Journal期刊
ISSN: 2333-9721
费用:99美元

查看量下载量

相关文章

更多...

Context-Aware Adaptation of Component-Based Systems: An Active Repository Approach

DOI: 10.1155/2012/963728

Full-Text   Cite this paper   Add to My Lib

Abstract:

Context-aware systems are able to monitor and automatically adapt their operation accordingly to the execution context in which they are introduced. Component-based software engineering (CBSE) focuses on the development and reuse of self-contained software assets in order to achieve better productivity and quality. In order to store and retrieve components, CBSE employs component repository systems to provide components to the system developers. This paper presents an active component repository that is able to receive the current configuration from the context-aware system and compute the components and the new architecture that better fit the given context. Since the repository has a wide knowledge of available components, it can better decide which configuration is more suitable to the running system. The repository applies Fuzzy logic algorithm to evaluate the adequacy level of the components and GRASP algorithm to mount the new system architecture. In order to verify the feasibility of our approach, we use a digital TV middleware case study to achieve experimental results. 1. Introduction Pervasive computing is becoming increasingly popular, as introduced by Weiser [1], the term pervasive refers to the seamless integration of computer devices and software into the everyday life. Context-awareness adaptation is an important field of the pervasive computing area. Context-aware systems are able to monitor and automatically adapt their operation accordingly to the execution context in which they are introduced. Component-based software engineering (CBSE) [2, 3] focuses on the development and reuse of self-contained software assets in order to achieve better productivity [4] and quality as software systems are composed by previously developed components used (and tested) in other projects. In this approach, the software system is composed by self-contained components that explicitly declare their provided functionalities (provided interfaces), required functionalities (required interfaces), and also their execution context requirements. In addition to the advantages described previously, component-based software (CBS) may present other features like component update, functionality enhancement, and adaptability. If a CBS needs to be updated, only the specific component implementing the updated feature needs to be updated. Functionality enhancement is also facilitated since new components with new functionalities can be added and dynamically loaded into the system. Finally, adaptability can also be accomplished by configuring and/or replacing a component

References

[1]  M. Weiser, “The computer for the 21st century,” Scientific American, vol. 265, no. 3, pp. 94–104, 1991.
[2]  C. Szyperski, D. Gruntz, and S. Murer, Component Software—Beyond Object-Oriented Programming, ACM Press, 2nd edition, 2002.
[3]  G. T. Heineman and W. T. Councill, Component-Based Software Engineering: Putting the Pieces Together, Addison-Wesley, 2001.
[4]  C. W. Krueger, “Software reuse,” ACM Computing Surveys, vol. 24, no. 2, pp. 131–183, 1992.
[5]  Component Source, 2012, http://www.componentsource.com.
[6]  S. Henninger, “Using iterative refinement to find reusable software,” IEEE Software, vol. 11, no. 5, pp. 48–59, 1994.
[7]  K. Inoue, R. Yokomori, H. Fujiwara, T. Tamamoto, M. Matsushita, and S. Kusumoto, “Component rank: relative significance rank for software component search,” in Proceedings of the 25th International Conference on Software Engineering (ICSE '03), pp. 14–24, Portland, Ore, USA, May 2003.
[8]  C. J. M. Geisterfer and S. Ghosh, “Software component specification: a study in perspective of component selection and reuse,” in Proceedings of the 5th International Conference on Commercial-off-the-Shelf (COTS)-Based Software Systems, p. 9, February 2006.
[9]  B. Srivastava, K. Ponnalagu, N. C. Narendra, and K. Kannan, “Enhancing asset search and retrieval in a services repository using consumption contexts,” in Proceedings of IEEE International Conference on Services Computing (SCC '07), pp. 316–323, July 2007.
[10]  D. Lucrécio, A. Prado, and E. Santana, “A Survey on software components search and retrieval,” in Proceedings of the 30th Euromicro Conference (Eromicro '04), pp. 152–159, 2004.
[11]  Y. Ye, Supporting component-based software development with active component repository systems [Ph.D. thesis], Department of Computer Science, University of Colorado, 2001.
[12]  G. Klir and B. Yuan, Fuzzy Sets and Fuzzy Logic, Prentice Hall, Englewood Cliffs, NJ, USA, 1995.
[13]  L. Leite, G. Farias, G. Souza, and S. Meira, “Uma Metaheurística GRASP para Otimiza??o de Sistemas Orientados a Componentes de Software,” in Anais do Simpósio da Sociedade Basileira de Pesquisa Operacional, Ceará, Brazil, 2007.
[14]  P. Winter and M. Zachariasen, “Euclidean Steiner minimum trees: an improved exact algorithm,” Networks, vol. 30, no. 3, pp. 149–166, 1997.
[15]  Y. Lee, S. Y. Chiu, and J. Ryan, “A branch and cut algorithm for a Steiner tree-star problem,” INFORMS Journal on Computing, vol. 8, no. 3, pp. 194–201, 1996.
[16]  M. Resende, “Greedy randomized adaptive search procedures (GRASP),” in Encyclopedia of Optimization, vol. 2, pp. 373–382, Kluwer Academic Publisher, 2001.
[17]  Stanford Center for Biomedical Informatics Research, “The Protégé Ontology Editor and Knowledge Acquisition System,” 2012, http://protege.stanford.edu/.
[18]  T. H. Trojahn, J. L. Goncalves, J. C. B. Mattos, et al., “Tests and performance analysis of media processing implementations for the middleware of Brazilian Digital TV system using different scenarios,” in Proceedings of the 5fth International Conference on Multimedia and Ubiquitous Engineering (MUE '11), pp. 95–100, June 2011.
[19]  Lindo Systems, “Lingo—Optimization Modeling Software for Linear, non-linear and Integer Programming,” 2012, http://www.lindo.com/index.php?option=com_content&view=article&id=2&Itemid=10.
[20]  The Apache Software Foundation, “Apache Jena,” 2012, http://incubator.apache.org/jena/.
[21]  MathWorks, “Matlab—The Language of Technical Computing,” 2011, http://www.mathworks.com/products/matlab/.
[22]  O. Hummel, W. Janjic, and C. Atkinson, “Code conjurer: pulling reusable software out of the thin air,” IEEE Software, vol. 25, no. 5, pp. 45–52, 2008.
[23]  “Merobase—Software Component Finder,” 2012, http://www.merobase.com.
[24]  F. McCarey, M. ó. Cinnéide, and N. Kushmerick, “Rascal: a recommender agent for agile reuse,” Artificial Intelligence Review, vol. 24, no. 3-4, pp. 253–276, 2005.
[25]  D. Mandelin, L. Xu, R. Bodík, and D. Kimelman, “Jungloid mining: helping to navigate the API jungle,” in Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '05), pp. 48–61, ACM Press, Chicago, Ill, USA, June 2005.
[26]  S. Thummalapenta and T. Xie, “Parseweb: a programmer assistant for reusing open source code on the web,” in Proceedings of the 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE '07), pp. 204–213, ACM Press, New York, NY, USA, November 2007.
[27]  G. Blair, T. Coupaye, and J.-B. Stefani, “Component-based architecture: the Fractal initiative,” Annals of Telecommunications, vol. 64, no. 1-2, pp. 1–4, 2009.
[28]  P. Merle and J.-B. Stefani, “A formal specification of the fractal component model in alloy,” INRIA Research Report 6721, 2008.
[29]  E. Bruneton, T. Coupaye, M. Leclercq, V. Quéma, and J.-B. Stefani, “The FRACTAL component model and its support in Java,” Software—Practice and Experience, vol. 36, no. 11-12, pp. 1257–1284, 2006.
[30]  G. Coulson, G. Blair, P. Grace et al., “A generic component model for building systems software,” ACM Transactions on Computer Systems, vol. 26, no. 1, article 1, 2008.
[31]  N. Venkatasubramanian, S. Gutierrez-nolasco, S. Mohapatra, et al., “Design and Implementation of a Safe, Reflective Middleware Framework,” CiteSeerX—Scientific Literature Digital Library and Search Engine, 2008.

Full-Text

Contact Us

service@oalib.com

QQ:3279437679

WhatsApp +8615387084133