eprintid: 116 rev_number: 8 eprint_status: archive userid: 5 dir: disk0/00/00/01/16 datestamp: 2013-01-09 07:03:26 lastmod: 2016-05-20 09:23:16 status_changed: 2013-01-09 07:03:26 type: article metadata_visibility: show creators_name: Nguyen, Thu Trang creators_name: Truong, Ninh Thuan creators_name: Nguyen, Viet Ha creators_id: thuannt@vnu.edu.vn creators_id: hanv@vnu.edu.vn corp_creators: VNU-UET title: Verifying Java Object Invariants at Runtime ispublished: pub subjects: IT divisions: fac_fit abstract: An object invariant consisting of a set of properties that must hold for all instances of a class at any time is usually used in object-oriented design. However, verifying object invariants at runtime is always a challenging task in software verification. This paper proposes a method for verifying invariants of Java objects at runtime using AOP. Suppose that a software application is designed using UML models and its constraints are specified in OCL expressions, the software is then implemented, by default, using the UML design. They propose to construct verifiable aspects which are automatically generated from OCL constraints. These aspects can be woven into Java code to check whether object invariants are violated at runtime. Benefiting from AOP in separation of crosscutting concerns and weaving mechanisms, generated aspects can do the verification task whenever values of objects' attributes are changed. A Verification Aspect Generator (VAG) tool has been developed allowing the automatic generation of verifying aspects from the UML/OCL constraints. Read More: http://www.worldscientific.com/doi/abs/10.1142/S0218194011005281 date: 2011-06-01 date_type: published official_url: http://www.worldscientific.com/doi/abs/10.1142/S0218194011005281 id_number: 10.1142/S0218194011005281 full_text_status: none publication: International Journal of Software Engineering and Knowledge Engineering volume: 21 number: 04 pagerange: 605-619 refereed: TRUE citation: Nguyen, Thu Trang and Truong, Ninh Thuan and Nguyen, Viet Ha (2011) Verifying Java Object Invariants at Runtime. International Journal of Software Engineering and Knowledge Engineering, 21 (04). pp. 605-619.