LANGUAGE SUPPORT FOR MOPS


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).



CONCLUSION

M-commerce exploits the potential of the globally connected mobile computing environment, consisting of the Internet and mobile devices, to carry out commercial transactions ‚ namely, collecting information, ordering goods, and ensuring payment. In the mobile computing environment, the traditional transaction model needs to be replaced by a more realistic model, called a "workflow model", between several clients and servers that interact, compete , and cooperate, realising an intergalactic client-server program (ICSP). The various types of workflow patterns that arise in m-commerce (e.g., e-checking, shipping goods, purchasing, and market forecasting) require a subjunctive, or "what-if", programming approach consisting of intention and actions for trial-error design, before an actual commitment is made. Eiffel, iContract tool of Java, and UML are powerful languages to implement the intergalactic client-server program (ICSP). They provide for a software contract that captures mutual obligations using program constructs such as "require [else]" for precondition and "ensure [then]" for postcondition, assertions, and invariants needed in the mobile computing environment. Such program constructs are essential to deal with the uncertain nature of connectivity of mobile devices and networks, and the trialerror (subjunctive) nature of the processes and the programs used in M-commerce.



ACKNOWLEDGMENTS

The author thanks the reviewers for providing valuable suggestions in revising this chapter.



REFERENCES

Bacon, J. ( 1993 ). Concurrent systems . Reading, MA : Addison-Wesley .

Chen, Q., & Dayal, U. ( 2000 ). Multi-agent cooperative transactions for e-commerce . In Lecture notes in computer science: Vol. 1901 ( pp. 311 ‚ 322 ). New York : Springer-Verlag .

Clark, A., & Warmer, J. (Eds.). ( 2002 ). Lecture notes in computer science: Vol. 2263. Object modeling with the OCL . New York : Springer-Verlag .

Dani, A. R., & Radha Krishna, P. ( 2001 ). An e-check framework for e-payment systems in Web based environment . In Lecture notes in computer science: Vol. 2115. Electronic commerce and Web technologies ( pp. 91 ‚ 100 ). New York : Springer-Verlag .

Dignum, F., & Cortes, U. (Eds.). ( 2001 ). Lecture notes in artificial intelligence: Vol. 2003. Agent-mediated electronic commerce III . New York : Springer-Verlag .

Dignum, F., & Sierra, C. (Eds.). ( 2001 ). Lecture notes in artificial intelligence: Vol. 1991. Agent mediated electronic commerce . New York : Springer-Verlag .

Feng, Y., & Zhu, J. ( 2001 ). Wireless Java programming with J2ME . Indianapolis, IN : Sams .

Gamma, E., et al. ( 1995 ). Design patterns . Boston : Addison-Wesley .

Gogolla, M., & Kobryn, C. (Eds.). ( 2001 ). Lecture Notes in Computer Science: Vol. 2185. <<UML>> 2001 -The Unified Modeling Language . New York : Springer-Verlag .

Jezequel, M., Train, M., & Mingins, C. ( 2000 ). Design patterns and contracts . Reading, MA : Addison-Wesley .

Knabe, F. ( 1996 ). An overview of mobile agent programming . In Lecture notes in computer science: Vol. 1192. Analysis and verification of multiple-agent languages ( pp. 100 ‚ 115 ). New York : Springer-Verlag, .

Kramer, R. ( 1998 ). "iContract-The java Design by contract tool ,, 26 th Conference on Technology of object oriented Systems,(TOOLS USA'98) Santa Barbara .

Krishnamurthy, E. V., & Murthy, V. K. ( 1992 ). Transaction processing systems . Sydney, New South Wales : Prentice Hall .

Meyer, B. ( 1992a ). Eiffel: The language . New York : Prentice Hall .

Meyer, B. ( 1992b ). Applying design by contracts . IEEE Computer , 25 ( 10 ), 40 ‚ 52 .

Milner, R. ( 1999 ). Communicating and mobile systems: the pi-calculus . Cambridge, England : Cambridge University Press .

Nodine, M. H., Ramaswamy, S., & Zdonik, S. B. ( 1995 ). A cooperative transaction model for databases . In A. K. Elmagarmid (Ed.), Database transaction models ( pp. 53 ‚ 83 ). San Mateo, CA : Morgan Kaufmann .

Ozsu, M. T. ( 1994 ). Transaction models and transaction management in object-oriented database management systems . In A. Dogac, M. T. Ozsu, A. Bilris, & T. Sellis (Eds.), Series F: Computer and system sciences, Vol. 30. Advances in object-oriented database systems ., New York : Springer-Verlag .

Sendall, S., & Strohmeier, A. ( 2002 ). Specifying concurrent system behaviour and timing constraints using OCL and UML . In M. Gogolla & C. Kobryn (Eds.), Lecture notes in computer science: Vol. 2185. <<UML>> 2001 -The Unified Modeling Language ( pp. 391 ‚ 405 ). New York : Springer-Verlag .

Silva, F. M., & Krause, S. ( 1997 ). A distributed transaction model based on mobile agents . In Lecture notes in computer science: Vol. 1219 ( pp. 198 ‚ 209 ). New York : Springer-Verlag .

Thomas, P., & Weedon, R. ( 1998 ). Object-oriented programming in Eiffel . Reading, MA : Addison Wesley .

Vitek, J., & Tschudin, C. (Eds.). ( 1997 ). Lecture notes in computer science: Vol. 1222. Mobile object systems towards the programmable Internet . New York : Springer-Verlag .

Wachter, H., & Reuter, A. ( 1995 ). The ConTract model . In A. K. Elmagarmid (Ed.), Database transaction models ( pp. 219 ‚ 264 ). San Mateo, CA : Morgan Kaufmann .

Wang, G., & Das, A. ( 2001 ). Models and protocol structures for software agent based complex e-commerce transactions . In Lecture notes in computer science: Vol. 2115. Electronic commerce and Web technologies ( pp. 121 ‚ 131 ). New York : Springer-Verlag .

Warmer, J., & Kleppe, A. ( 1999 ). The Object Constraint Language . Reading, MA : Addison-Wesley .

Wiener, R. S. ( 1996 ). An object-oriented introduction to computer science using Eiffel . NJ : Prentice Hall .

Wooldridge, M., Muller, J. P., & Tambe, M. (Eds.). ( 1996 ). Lecture notes in computer science: Vol. 1037. Intelligent agents II -Agent theories , architectures, and languages . New York : Springer-Verlag .