APPLICATION VERSIONING, SELECTIVE CLASS RECOMPILATION AND MANAGEMENT OF ACTIVE INSTANCES IN A FRAMEWORK FOR DYNAMIC APPLICATIONS

Georgios Voulalas, Georgios Evangelidis

Abstract

In our previous research we have presented the core functional and data components of a framework for the development and deployment of web-based applications. The framework enables the operation of multiple applications within a single installation and supports runtime evolution by dynamically recompiling classes based on the source code that is retrieved from the database. It is structured upon a universal database schema (meta-model). The contributions of this paper include a versioning mechanism that enables access to old data in their real context (i.e., within the version of the application that created this data), a proposal for selective recompilation of new classes that allows applications to evolve safely at the minimum processing cost, and a policy for handling active classes (i.e., classes that have running instances) that need to be dynamically recompiled in order to reflect changes.

References

  1. Atkinson, M. and Jordan, M. (2000). A Review of the Rationale and Architectures of PJama: a Durable, Flexible, Evolvable and Scalable Orthogonally Persisteng Programming Platform. Sun Microsystems, Inc., Mountain View, CA.
  2. Barowski, L. A. and Ii, J. H. C. (2002). Extraction and use of class dependency information for java. In WCRE 7802: Proceedings of the Ninth Working Conference on Reverse Engineering (WCRE'02), page 309, Washington, DC, USA. IEEE Computer Society.
  3. Biesack, D. (2007). Create dynamic applications with javax.tools. http://www.ibm.com/ developerworks/java/library/j-jcomp/index. html.
  4. Dmitriev, M. (2001). Towards flexible and safe technology for runtime evolution of java language applications. In In Proceedings of the Workshop on Engineering Complex Object-Oriented Systems for Evolution, in association with OOPSLA 2001 International Conference.
  5. IntelliJ IDEA (2008). Dependency analysis. http://www.jetbrains.com/idea/features/ dependency_analysis.html.
  6. Pinzger, M., Graefenhain, K., Knab, P., and Gall, H. C. (2008). A tool for visual understanding of source code dependencies. In ICPC 7808: Proceedings of the 2008 The 16th IEEE International Conference on Program Comprehension, pages 254-259, Washington, DC, USA. IEEE Computer Society.
  7. Microsystems (2008). The reflection API.
  8. Voulalas, G. and Evangelidis, G. (2007). A framework for the development and deployment of evolving applications: The domain model. In ICSOFT International Conference on Software and Data Technologies, Barcelona, Spain.
  9. Voulalas, G. and Evangelidis, G. (2008a). Developing and deploying dynamic applications: An architectural prototype. In Filipe, J., Shishkov, B., and Helfert, M., editors, Communications in Computer and Information Science, volume 10, pages 293-306. Springer Berlin Heidelberg.
  10. Voulalas, G. and Evangelidis, G. (2008b). Developing and deploying dynamic applications: An architectural prototype. In ICSOFT International Conference on Software and Data Technologies, Porto, Portugal.
  11. Warski, A. (2008). Data versioning and envers. http://www.jboss.org/downloading/ ?projectId=envers&url=/envers/downloads/ presentations/envers_nurnberg.pdf.
  12. Zhu, N. (2003). Data versioning systems. Technical report, Computer Science Department, Stony Brook University.
Download


Paper Citation


in Harvard Style

Voulalas G. and Evangelidis G. (2009). APPLICATION VERSIONING, SELECTIVE CLASS RECOMPILATION AND MANAGEMENT OF ACTIVE INSTANCES IN A FRAMEWORK FOR DYNAMIC APPLICATIONS . In Proceedings of the Fifth International Conference on Web Information Systems and Technologies - Volume 1: WEBIST, ISBN 978-989-8111-81-4, pages 317-322. DOI: 10.5220/0001836703170322


in Bibtex Style

@conference{webist09,
author={Georgios Voulalas and Georgios Evangelidis},
title={APPLICATION VERSIONING, SELECTIVE CLASS RECOMPILATION AND MANAGEMENT OF ACTIVE INSTANCES IN A FRAMEWORK FOR DYNAMIC APPLICATIONS},
booktitle={Proceedings of the Fifth International Conference on Web Information Systems and Technologies - Volume 1: WEBIST,},
year={2009},
pages={317-322},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001836703170322},
isbn={978-989-8111-81-4},
}


in EndNote Style

TY - CONF
JO - Proceedings of the Fifth International Conference on Web Information Systems and Technologies - Volume 1: WEBIST,
TI - APPLICATION VERSIONING, SELECTIVE CLASS RECOMPILATION AND MANAGEMENT OF ACTIVE INSTANCES IN A FRAMEWORK FOR DYNAMIC APPLICATIONS
SN - 978-989-8111-81-4
AU - Voulalas G.
AU - Evangelidis G.
PY - 2009
SP - 317
EP - 322
DO - 10.5220/0001836703170322