A Component Based Infrastructure to Develop Software Supporting Dynamic Unanticipated Evolution

  • Hyggo Almeida UFCG
  • Angelo Perkusich UFCG
  • Evandro Costa UFAL
  • Glauber Ferreira UFCG
  • Emerson Loureiro UFCG
  • Loreno Oliveira UFCG
  • Rodrigo Paes PUC-Rio

Resumo


Neste artigo apresenta-se uma infra-estrutura baseada em componentes para o desenvolvimento de software com suporte à evolução dinâmica não antecipada. Propõe-se um modelo de componentes que provê mecanismos para gerenciar alterações no software não previstas em projeto, inclusive em tempo de execução. Apresenta-se uma implementação em Java do modelo de componentes e um modelo analítico para avaliação de desempenho. Para dar suporte às atividades de desenvolvimento, propõe-se uma ferramenta baseada na plataforma Eclipse. Por fim, apresenta-se uma aplicação da infra-estrutura proposta para o desenvolvimento de um middleware para computação pervasiva.

Referências

Ben-Shaul, I., Holder, O., and Lavva, B. (2001). Dynamic Adaptation and Deployment of Distributed Components In Hadas. IEEE Trans. Softw. Eng., 27(9):769–787.

Cervantes, H. and Hall, R. S. (2004). Autonomous Adaptation to Dynamic Availability Using a Service-Oriented Component Model. In Proceedings of the International Conference on Software Engineering (ICSE), pages 614–623. IEEE Computer Society.

Crnkovic, I. (2001). Component-based Software Engineering New Challenges in Software Development. In Software Focus, volume 4, pages 127–133. Wiley.

Ebraert, P., Vandewoude, Y., D’Hondt, T., and Berbers, Y. (2005). Pitfalls in unanticipated dynamic software evolution. In Proceedings of the Workshop on Reflection, AOP and Meta-Data for Software Evolution(RAM-SE’05).

Fayad, M., Johnson, R., and Schmidt, D. (2000). Building Application Frameworks. Wiley.

Gamma, E., Helm, R., Johnson, R., and Vlissides, J. (1995). Design Patterns: Elements of Reusable Object-oriented Software. Addison-Wesley.

Handorean, R. and Roman, G.-C. (2003). Secure Service Provision in Ad Hoc Networks. In Proc. of the First International Conference on Service Oriented Computing, volume 2910 of Lecture Notes in Computer Science, pages 367–383, Trento, Italy. Springer Verlag.

Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., and Griswold, W. (2001). An Overview of AspectJ. In ECOOP ’01: Proceedings of the 15th European Conference on Object-Oriented Programming, pages 327–353, London, UK. Springer-Verlag.

Kniesel, G., Noppen, J., Mens, T., and Buckley, J. (2002). 1st Int. Workshop on Unanticipated Software Evolution. In ECOOP Workshop Reader, volume 2548 of LNCS. Springer Verlag.

Loureiro, E., Oliveira, L., Almeida, H., Ferreira, G., and Perkusich, A. (2005). Improving flexibility on host discovery for pervasive computing middlewares. In 3rd International Workshop on Middleware for Pervasive and Ad-hoc Computing, Grenoble, France. ACM Press.

Mayer, J., Melzer, I., and Schweiggert, F. (2003). Lightweight Plug-In-Based Application Development. In NODe ’02: Revised Papers from the International Conference NetObjectDays on Objects, Components, Architectures, Services, and Applications for a Networked World, pages 87–102. Springer-Verlag.

Papazoglou, M. P. (2003). Service-Oriented Computing: Concepts, Characteristics and Directions. In Proc. of Fourth International Conference on Web Information Systems Engineering, pages 3–12, Rome, Italy. IEEE.

Piccinelli, G., Zirpins, C., and Lamersdorf, W. (2003). The FRESCO Framework: An Overview. In Proceedings of the 2003 Symposium on Applications and the Internet Workshops, pages 120–123, Orlando, USA. IEEE Computer Society.

Vlissides, J., Coplien, J., and Kerth, N. (1996). Pattern Languages of Program Design 2. Addison-Wesley.

Waldo, J. (1999). The Jini Architecture for Network-centric Computing. Communications of the ACM, 42(7):76–82.
Publicado
16/10/2006
ALMEIDA, Hyggo; PERKUSICH, Angelo; COSTA, Evandro; FERREIRA, Glauber; LOUREIRO, Emerson; OLIVEIRA, Loreno; PAES, Rodrigo. A Component Based Infrastructure to Develop Software Supporting Dynamic Unanticipated Evolution. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 20. , 2006, Florianópolis. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2006 . p. 145-160. DOI: https://doi.org/10.5753/sbes.2006.21210.