LANGUAGE SUPPORT FOR MOPS


Eiffel ( Meyer, 1992a, 1992b; Thomas & Weedon, 1998; Wiener, 1996), Java (Feng & Zhu, 2001) and UML (Gogolla & Kobryn, 2001; Warmer & Kleppe, 1999) are powerful languages to implement a mobile object programming system (MOPS), in particular the intergalactic client-server program (ICSP). They provide for a software contract that captures mutual obligations through program constructs such as "require [else]" for precondition and "ensure [then]" for postcondition, assertions, and invariants. Eiffel provides for a good semantics for exception handling through a " rescue " clause and " retry " clause for dealing with the recovery and resumption.

The tool called iContract (Kramer, 1998) provides developers with supports for design by contract using Java. It provides:

  1. Support for design testability.

  2. Uniform implementation of invariant and pre- and postcondition checks.

  3. Synchronized documentation and code.

  4. Semantic level specification of what requirements and benefits a class/ message offers.

Special features include quantifiers (for all, exists), implications, old and return values references to postconditions, as well as the naming of exception classes to throw. iContract also supports the propagation of invariants, pre- and postconditions via inheritance, multiple interface implementation, and interface extension mechanism.

UML (Unified Modelling Language, Warmer & Kleppe, 1999) has also been gaining importance. OCL (Object Constraint Language) is used along with UML (Clark & Warmer, 2002). OCL can be used to add design by contract information in UML (Gogolla & Kobryn, 2001).




Mobile Commerce Applications
Mobile Commerce Applications
ISBN: 159140293X
EAN: 2147483647
Year: 2004
Pages: 154

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net