June 2011
International Journal of Software Engineering & Knowledge Engine;Jun2011, Vol. 21 Issue 4, p605
Academic Journal
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.


Related Articles

  • Specification and verification challenges for sequential object-oriented programs. Gary Leavens; K. Leino; Peter Müller // Formal Aspects of Computing;Jun2007, Vol. 19 Issue 2, p159 

    Abstract  The state of knowledge in how to specify sequential programs in object-oriented languages such as Java and C# and the state of the art in automated verification tools for such programs have made measurable progress in the last several years. This paper describes several remaining...

  • UML interaction model-driven runtime verification of Java programs. Li, X.; Qiu, X.; Wang, L.; Chen, X.; Zhou, Z.; Yu, L.; Zhao, J. // IET Software;Apr2011, Vol. 5 Issue 2, p142 

    The authors use unified modelling language (UML) 2.0 interaction overview diagrams (IODs) and sequence diagrams to construct simple and expressive scenario-based specifications, and present an approach to runtime verification of Java programs for exceptional consistency and mandatory...

  • Product Focus: Software. Rosenberg, Barry // Avionics Magazine;8/15/2010, Vol. 34 Issue 8, p8 

    The article presents information related to developing software programs for the avionics industry. According to software experts, the use of object-oriented programming techniques plays an important role in software development and testing of complex avionics systems. It has been stated that...

  • OBJECTS-FIRST VS. STRUCTURES-FIRST APPROACHES TO OO PROGRAMMING EDUCATION: AN EMPIRICAL STUDY. Johnson, Richard A.; Moses, Duane R. // Academy of Information & Management Sciences Journal;2008, Vol. 11 Issue 2, p95 

    Software development is a cornerstone of information technology and computer programming is a key element of software development. Teaching computer programming to undergraduates can be challenging. Adding to the challenge is the near universality of the objectoriented paradigm in computer...

  • OLE, Java vie for Internet brass ring. Berlind, David // PC Week;3/11/96, Vol. 13 Issue 10, p58 

    Differentiates Java and Object-Linking and Embedding (OLE) technologies. Location of codes and cross-platform support; Security limitations; Security problems associated with persistent architecture.

  • Java. Simon, Travis // Australian Personal Computer;Jan1999, Vol. 20 Issue 1, p118 

    Deals with object-oriented programming and looks into some Java objects by implementing an address book. Definition of classes; Creating AddressEntry objects; Concluding remarks.

  • A Framework for Classifying and Comparing Graphical Object Oriented Modeling Languages. Ali Kamandi; Jafar Habibi // International MultiConference of Engineers & Computer Scientists;2008, p897 

    Object-oriented modeling has become the de-facto standard in the software development process during the last decades. A great deal of research in this area focuses on proposing modeling languages. In order to properly understand, and assess an object oriented modeling language, we believe that...

  • Comparison of C++ and JAVA in the Context of Object-Oriented Metrics. Chhillar, Rajender Singh // IUP Journal of Computer Sciences;Apr2011, Vol. 5 Issue 2, p39 

    In recent years, we have seen the increasingly emerging object-oriented technologies in software development. And software metrics play a very important role in analyzing the suite of Object- Oriented (OO) design metrics defined in Stroustrup (1991) and Jacobson (1993). The metrics for...

  • AOP Has Yet to Prove Its Value. Beuche, Danilo; Beust, Cédric // IEEE Software;Jan/Feb2006, Vol. 23 Issue 1, p73 

    The article focuses on the effectiveness of a new technology for software programmers called aspect oriented programming (AOP). This technology is expected to improve system modularization by separating concerns. The conceptual shift to aspect-oriented software design and architecture is...


Read the Article


Sorry, but this item is not currently available from your library.

Try another library?
Sign out of this library

Other Topics