Abstract
Frameworks and libraries that use annotations are becoming popular. However, there is not enough software engineering support for annotation development. In particular, the validation of constraints in the use of annotations requires further support. In this paper we postulate that annotation frameworks are a projection of the domain model into a programming language model. Using this idea, we have developed a tool that allows the annotation programmer to specify, and then validate the constraints of the annotation framework regarding a given annotated application using a domain model. To validate our approach to the validation of constraints using models, we apply it to the Fraclet annotation framework and compare it to the previous implementation.
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
OMG Unified Modelling Language Infrastructure (OMG UML) V.2.1.2 (November 2004), http://www.omg.org/spec/UML/2.1.2/Infrastructure/PDF
Barais, O.: SpoonEMF, une brique logicielle pour l’utilisation de l’IDM dans le cadre de la réingénierie de programmes Java5. In: Journées sur l’Inénierie Dirigée par les Modéles (IDM) (June 2006) Poster
Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.-B.: The fractal component model and its support in java: Experiences with auto-adaptive and reconfigurable systems. Softw. Pract. Exper. 36(11-12), 1257–1284 (2006)
Cepa, V., Kloppenburg, S.: Representing Explicit Attributes in UML. In: 7th International Workshop on Aspect-Oriented Modeling (AOM) (2005)
Cepa, V., Mezini, M.: Declaring and enforcing dependencies between.NET custom attributes. In: Karsai, G., Visser, E. (eds.) GPCE 2004. LNCS, vol. 3286, pp. 283–297. Springer, Heidelberg (2004)
Cisterino, A., Cazzola, W., Colombo, D.: Metadata-driven library design. In: Proceedings of Library Centric Software Development Workshop (October 2005)
Eichberg, M., Schäfer, T., Mezini, M.: Using Annotations to Check Structural Properties of Classes. In: Cerioli, M. (ed.) FASE 2005. LNCS, vol. 3442, pp. 237–252. Springer, Heidelberg (2005)
Evans, D., Guttag, J., Horning, J., Tan, Y.M.: A tool for using specifications to check code. In: Proceedings of the ACM SIGSOFT 1994 Symposium on the Foundations of Software Engineering, pp. 87–96 (1994)
Evans, D., Larochelle, D.: Improving security using extensible lightweight static analysis. IEEE Software 19(1), 42–51 (2002)
Gosling, J., Joy, B., Steele, G., Bracha, G.: The Java Language Specification, 3rd edn. Addison-Wesley, Reading (2005)
Hedin, G.: Attribute extensions - a technique for enforcing programming conventions. Nord. J. Comput 4(1), 93–122 (1997)
Michel, L.D., Keith, M.: Enterprise JavaBeans, Version 3.0. Sun Microsystems, JSR-220 (May 2006)
Noguera, C., Pawlak, R.: AVal: an extensible attribute-oriented programming validator for java. Journal of Software Maintenance and Evolution (July 2007)
Pawlak, R., Noguera, C., Petitprez, N.: Spoon: Program analysis and transformation in java. Technical Report 5901, INRIA (May 2006)
Rouvoy, R., Pessemier, N., Pawlak, R., Merle, P.: Using attribute-oriented programming to leverage fractal-based developments. In: Proceedings of the 5th International ECOOP Workshop on Fractal Component Model (Fractal 2006), Nantes, France (July 2006)
Wada, H., Suzuki, J.: Modeling turnpike frontend system: A model-driven development framework leveraging UML metamodeling and attribute-oriented programming. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 584–600. Springer, Heidelberg (2006)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Noguera, C., Duchien, L. (2008). Annotation Framework Validation Using Domain Models. In: Schieferdecker, I., Hartman, A. (eds) Model Driven Architecture – Foundations and Applications. ECMDA-FA 2008. Lecture Notes in Computer Science, vol 5095. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69100-6_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-69100-6_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69095-5
Online ISBN: 978-3-540-69100-6
eBook Packages: Computer ScienceComputer Science (R0)