Abstract
Applications often use objects that they do not create. In general, these objects belong to an execution environment and are used for some services (server objects). This makes applications strongly dependent on these objects and make them vulnerable to any modifications to these objects
In this paper, we present a solution to this problem through the service group concept. A service group is an intermediary between the applications and the server objects. A service group is defined by the administrator of the shared services, for the entire set of client applications. A service group embodies a collection of signatures corresponding to the provided services and maintains the required associations between these signatures and the actual implementations of these services by the server objects. The client applications access the services through service groups, and are no longer directly related to servers, thus becoming more independent and better protected from modifications to the server objects. The service group will not only make it possible to pool disparate services in order to structure execution environment, but also to construct new services by composing existing ones
Chapter PDF
Similar content being viewed by others
Keywords
References
P. A. Bernstein. An architecture for distributed system services. Technical Report CRL 93/6, Digital Equipment Corporation, Cambridge Research Lab, March 1993.
A. P. Black and M. P. Immel. Encapsulating Plurality. In O. Nierstrasz, editor, Proceedings of the ECOOP’ 93 European Conference on Object-oriented Programming, LNCS 707, pages 57–79, Kaiserslautern, Germany, July 1993. Springer-Verlag.
E. Blake and S. Cook. On Including Part Hierarchies in Object-Oriented Languages, with an Implementation in Smalltalk. In ECOOP’87, pages 41–50, 1987.
W. Brookes and J. Indulska. A type management system for open distributed processing. Technical Report 285, Department of Computer Science, Queensland U., Brisbane QLD (Australia), February 1994.
D. Buchs and N. Guelfi. A formal specification framework for object-oriented distributed systems. IEEE Transactions on Software Engineering, 26(7):635–652, 2000.
L. Cardelli and P. Wegner. On Understanding Types, Data Abstraction, and Polymorphism. ACM Computing Surveys, 17(4):471–522, December 1985.
D. Caromel. Toward a method of object-oriented concurrent programming. Communications of the ACM, 36(9):90–102, September 1993.
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns, Elements of Reusable Object-Oriented Software. Addison Wesley, 1995.
R. Guerraoui, B. Garbinato, and K. Mazouni. Garf: A tool for programming reliable distributed applications. IEEE Concurrency, 5(4):32–39, 1997.
R. Guerraoui and S. André. Software-based replication for fault tolerance. IEEE Computer, 30(4):68–74, April 1997. 11. R. Helm, I. Holland, and D. Gangopadhyay. Contracts: Specifying Behavioral Compositions in Object-Oriented Systems. In N. Meyrowitz, editor, Conference on Object-Oriented Programming, Systems, Languages, and Applications/European Conference on Object Oriented Programming (OOPSLA/ECOOP’90), ACM SIGPLAN Notices, pages 169–180, October 1990.
IONA and Isis. An Introduction to Orbix+Isis. Technical report, IONA Technologies Ltd, November 1995.
ITU/ISO. Reference model of open distributed processing — part 2: Foundations, 1995. ISO/IEC 10746-2, ITU-T Rec. X.902.
G. Koscielny and S. Sadou. Type de service générique pour la réutilisation de composants. In Jacques Malenfant and Roger Rousseau, editors, langages et modèles à objets (LMO’99), pages 115–130. Hermès Science Publications, 1999.
B. B. Kristensen and K. Østerbye. Roles: Conceptual abstraction theory and practical language issues. Theory and Practice of Object Sytems, 2(3):143–160, 1996.
D. Lea. Objects in groups. Technical report, SUNY Oswego, 1993.
S. Maffeis. Run-Time Support for Object-Oriented Distributed Programming. PhD thesis, University of Zurich, February 1995.
J. McAffer. Meta-Level Programming with CodA. In W. Olthoff, editor, European Conference on Object Oriented Programming (ECOOP’95), Lecture Notes in Computer Science, pages 190–214. Springer-Verlag, aug 1995.
Microsoft. Dcom. http://www.microsoft.com/cominfo/.
M. Muenke, W. Lamersdorf, B. O. Christiansen, and K. Mueller-Jones. Type management: A key to software reuse in open distributed systems. In EDOC’97, Gold Coast, AUSTRALIA, 1997.
ODP. Open Distributed Processing. http://info.gte.com/ftp/doc/activities/x3h7/by_model/ODP.html.
R. Monson-Haefel. Enterprise JavaBeans, 2nd Edition. March 2000, O’Reilly & Associates, INC.
OMG. CORBAservices: Common Object Services Specification, chapter Trading Object Service Specification. Object Management Group, Inc. Publications, March 1997. 97-12-23.
E. Oskiewicz and N. Edwards. A model for interface groups. Technical Report APM.1002.01, ANSA, Architecture Projects Management Limited, Cambridge, UK, May 1994.
S. Sadou, G. Koscielny, P. Frison, and J-M. Inglebert. Groupes pour la coopération entre activités. Technical report, Valoria/Orcade, Université de Bretagne Sud, December 1999. http://www.iu-vannes.fr/ sadou/groop/rapport/rapport.html.
K. Shimizu, M. Maekawa, and J. Hamano. Hierarchical Object Groups in distributed Operating Systems. In IEEE Computer Society and Technical Committee on Distributed Processing, editors, The 14th International Conference on Distributed Computing Systems, pages 18–24, San Jose, California, June 1988. IEEE, Computer Society Press.
N. Singh and M. A. Gisi. Coordinating distributed objects with declarative interfaces. In Paolo Ciancarini and Chris Hankin, editors, Coordination Languages and Models (Coordination’96), number 1061 in Lecture Notes in Computer Science, pages 368–385. Springer, 1996.
A. M. Zaremski and J. M. Wing. Specification matching of software components. ACM Transactions on Software Engineering and Methodology, 6(4):333–369, October 1997.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 IFIP International Federation for Information Processing
About this paper
Cite this paper
Sadou, S., Koscielny, G., Mili, H. (2001). Abstracting Services in a Heterogeneous Environment. In: Guerraoui, R. (eds) Middleware 2001. Middleware 2001. Lecture Notes in Computer Science, vol 2218. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45518-3_8
Download citation
DOI: https://doi.org/10.1007/3-540-45518-3_8
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42800-8
Online ISBN: 978-3-540-45518-9
eBook Packages: Springer Book Archive