Pub Date : 1999-12-01DOI: 10.1109/EDOC.1999.792066
A. Lauder, S. Kent
In our work with legacy information systems, we have found two prevalent anti-patterns-tight coupling and code pollution-which, if not addressed in replacement systems, could result in today's new systems simply becoming tomorrow's new legacy system. Tight coupling results from Explicit Invocation across collaborating components. Code pollution results from implicit (rather than explicit) reflection of time-ordered collaboration protocols. These anti-patterns diminish component maintainability, flexibility, and reusability. In response, we propose a synthesis of Implicit Invocation (which reduces tight coupling) and Statecharts (which reflect collaboration protocols directly). The paper describes the development of EventPorts, which realize this synthesis and thus encapsulate a novel and promising component collaboration technology.
{"title":"EventPorts: preventing legacy componentware","authors":"A. Lauder, S. Kent","doi":"10.1109/EDOC.1999.792066","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792066","url":null,"abstract":"In our work with legacy information systems, we have found two prevalent anti-patterns-tight coupling and code pollution-which, if not addressed in replacement systems, could result in today's new systems simply becoming tomorrow's new legacy system. Tight coupling results from Explicit Invocation across collaborating components. Code pollution results from implicit (rather than explicit) reflection of time-ordered collaboration protocols. These anti-patterns diminish component maintainability, flexibility, and reusability. In response, we propose a synthesis of Implicit Invocation (which reduces tight coupling) and Statecharts (which reflect collaboration protocols directly). The paper describes the development of EventPorts, which realize this synthesis and thus encapsulate a novel and promising component collaboration technology.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129733495","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1999-09-01DOI: 10.1109/EDOC.1999.792049
Xavier Blanc, M. Gervais, R. L. Delliou
Specification is not a gimmick; it is a real discipline that offers many advantages to software developers. It is helpful for building, managing and describing applications. Specification standards are now available, such as the OMG (Object Management Group) adoption of the UML (Unified Modelling Language) notation and the RM-ODP (Reference Model for Open Distributed Processing) standards developed by ISO (International Standardisation Organisation) and ITU-T (International Telecommunication Union-Telecommunication Sector). However, these standards are totally independent, even though they deal with the same topic. In order to conciliate these two approaches, we propose a way to use the UML notation to express RM-ODP enterprise concepts.
{"title":"Using the UML language to express the ODP enterprise concepts","authors":"Xavier Blanc, M. Gervais, R. L. Delliou","doi":"10.1109/EDOC.1999.792049","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792049","url":null,"abstract":"Specification is not a gimmick; it is a real discipline that offers many advantages to software developers. It is helpful for building, managing and describing applications. Specification standards are now available, such as the OMG (Object Management Group) adoption of the UML (Unified Modelling Language) notation and the RM-ODP (Reference Model for Open Distributed Processing) standards developed by ISO (International Standardisation Organisation) and ITU-T (International Telecommunication Union-Telecommunication Sector). However, these standards are totally independent, even though they deal with the same topic. In order to conciliate these two approaches, we propose a way to use the UML notation to express RM-ODP enterprise concepts.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125058992","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1999-09-01DOI: 10.1109/EDOC.1999.792052
M. Steen, J. Derrick
The open distributed processing (ODP) standardisation initiative has led to a framework by which distributed systems can be modelled using a number of viewpoints. These include an enterprise viewpoint, which focuses on the objectives and policies of the enterprise that the system is meant to support. Although the ODP reference model provides abstract languages of relevant concepts, it does not prescribe particular techniques that are to be used in the individual viewpoints. In particular, there is a need to develop appropriate notations for ODP enterprise specification, in order to increase the applicability of the ODP framework. In this paper, we tackle this concern and develop a specification language to support the enterprise viewpoint. In doing so, we focus on the expression of enterprise policies that govern the behaviour of enterprise objects. The language we develop is a combination of structured English and simple predicate logic, and is built on top of the formal object-oriented specification language Object-Z. We illustrate its use with a case study that presents an enterprise specification of a library support system.
{"title":"Formalising ODP enterprise policies","authors":"M. Steen, J. Derrick","doi":"10.1109/EDOC.1999.792052","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792052","url":null,"abstract":"The open distributed processing (ODP) standardisation initiative has led to a framework by which distributed systems can be modelled using a number of viewpoints. These include an enterprise viewpoint, which focuses on the objectives and policies of the enterprise that the system is meant to support. Although the ODP reference model provides abstract languages of relevant concepts, it does not prescribe particular techniques that are to be used in the individual viewpoints. In particular, there is a need to develop appropriate notations for ODP enterprise specification, in order to increase the applicability of the ODP framework. In this paper, we tackle this concern and develop a specification language to support the enterprise viewpoint. In doing so, we focus on the expression of enterprise policies that govern the behaviour of enterprise objects. The language we develop is a combination of structured English and simple predicate logic, and is built on top of the formal object-oriented specification language Object-Z. We illustrate its use with a case study that presents an enterprise specification of a library support system.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132770436","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1999-09-01DOI: 10.1109/EDOC.1999.792051
P. Linington
The ODP Enterprise Language allows the rules and policies that characterize an organization to be brought together and used to guide the various stages of system design, development and operation. UML is one of the leading notations for system design and is likely to be the basis for a wide range of design tools. However, UML has a comparatively weak set of facilities for supporting the combination of existing, parameterized specifications and, in particular, for defining and managing policies. This paper discusses the requirements for defining communities and expressing policies within a UML environment, compares ways in which the existing notation might be used in enterprise specification, and indicates some of the implications this would have for system development tools.
{"title":"Options for expressing ODP enterprise communities and their policies by using UML","authors":"P. Linington","doi":"10.1109/EDOC.1999.792051","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792051","url":null,"abstract":"The ODP Enterprise Language allows the rules and policies that characterize an organization to be brought together and used to guide the various stages of system design, development and operation. UML is one of the leading notations for system design and is likely to be the basis for a wide range of design tools. However, UML has a comparatively weak set of facilities for supporting the combination of existing, parameterized specifications and, in particular, for defining and managing policies. This paper discusses the requirements for defining communities and expressing policies within a UML environment, compares ways in which the existing notation might be used in enterprise specification, and indicates some of the implications this would have for system development tools.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123381375","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1999-07-01DOI: 10.1109/EDOC.1999.792071
Members of the COTS-based system initiative at the Software Engineering Institute have developed the Generic Enterprise Ensemble (GEE), a generic approach to building distributed, transaction based, secure enterprise information systems (EIS). GEE is a tool to help in the selection of technologies and architectural choices when building enterprise information systems. Enterprise JavaBeans/sup TM/ (EJB) is a specification from Sun Microsystems for an application server based on Java technology. a comparison is made between GEE based solutions and off-the-shelf solutions based on the EJB specification.
{"title":"Custom vs. off-the-shelf architecture","authors":"","doi":"10.1109/EDOC.1999.792071","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792071","url":null,"abstract":"Members of the COTS-based system initiative at the Software Engineering Institute have developed the Generic Enterprise Ensemble (GEE), a generic approach to building distributed, transaction based, secure enterprise information systems (EIS). GEE is a tool to help in the selection of technologies and architectural choices when building enterprise information systems. Enterprise JavaBeans/sup TM/ (EJB) is a specification from Sun Microsystems for an application server based on Java technology. a comparison is made between GEE based solutions and off-the-shelf solutions based on the EJB specification.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1999-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115438141","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.1109/EDOC.1999.792057
Alexander Keller, Helmut Reiser
It is widely recognized that the scalable and efficient management of large, heterogeneous information technology infrastructures requires middleware that allows the extension of managed resources with new functionality at runtime. A recent and promising approach is the Java Dynamic Management Kit (JDMK) that relies on the JavaBeans component technology. Based on our experiences with a prototype implementation that provides an adaptable management instrumentation for an Internet Telephony Server, the paper analyses the suitability of JDMK for building scalable and flexible management systems. The results of our work allow us to evaluate JDMK regarding its suitability for the management of large-scale enterprise networks.
{"title":"Dynamic management of Internet telephony servers: a case study based on JavaBeans and JDMK","authors":"Alexander Keller, Helmut Reiser","doi":"10.1109/EDOC.1999.792057","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792057","url":null,"abstract":"It is widely recognized that the scalable and efficient management of large, heterogeneous information technology infrastructures requires middleware that allows the extension of managed resources with new functionality at runtime. A recent and promising approach is the Java Dynamic Management Kit (JDMK) that relies on the JavaBeans component technology. Based on our experiences with a prototype implementation that provides an adaptable management instrumentation for an Internet Telephony Server, the paper analyses the suitability of JDMK for building scalable and flexible management systems. The results of our work allow us to evaluate JDMK regarding its suitability for the management of large-scale enterprise networks.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133165960","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.1109/EDOC.1999.792050
J. Aagedal, Z. Milosevic
Presents extensions and refinements of those concepts that are pertinent to the ODP (open distributed processing) enterprise viewpoint. We first highlight the intricacies of enterprise modelling and then present key enterprise modelling concepts. These concepts represent both refinements to the existing ODP concepts and some new concepts that we propose for the ODP enterprise language standard currently being progressed. We then investigate how the relevant UML (Unified Modelling Language) constructs can be used to represent the enterprise language concepts and to support the enterprise specifications. We conclude by discussing various tools that are needed to facilitate the processes of enterprise modelling, verification and building of open distributed systems.
{"title":"ODP enterprise language: UML perspective","authors":"J. Aagedal, Z. Milosevic","doi":"10.1109/EDOC.1999.792050","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792050","url":null,"abstract":"Presents extensions and refinements of those concepts that are pertinent to the ODP (open distributed processing) enterprise viewpoint. We first highlight the intricacies of enterprise modelling and then present key enterprise modelling concepts. These concepts represent both refinements to the existing ODP concepts and some new concepts that we propose for the ODP enterprise language standard currently being progressed. We then investigate how the relevant UML (Unified Modelling Language) constructs can be used to represent the enterprise language concepts and to support the enterprise specifications. We conclude by discussing various tools that are needed to facilitate the processes of enterprise modelling, verification and building of open distributed systems.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114359116","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.1109/EDOC.1999.792047
P. Raverdy, R. Lea
The DART (Distributed Adaptive Run-Time) project is developing an adaptive software environment for general-purpose distributed applications. The goal of the project is to provide a software run-time system that allows application authors to quickly develop distributed software, such as network or World Wide Web software, without having to deal with the details of the distribution technology. DART compile-time and run-time components configure the application execution environments depending on hints provided with the application. An essential feature of the run-time component is its ability to reconfigure, or adapt itself, both to the application requirements and to the system and networking environment. To achieve both distribution and adaptation, we use meta-level object programming techniques and run-time monitoring.
{"title":"Reflection support for adaptive distributed applications","authors":"P. Raverdy, R. Lea","doi":"10.1109/EDOC.1999.792047","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792047","url":null,"abstract":"The DART (Distributed Adaptive Run-Time) project is developing an adaptive software environment for general-purpose distributed applications. The goal of the project is to provide a software run-time system that allows application authors to quickly develop distributed software, such as network or World Wide Web software, without having to deal with the details of the distribution technology. DART compile-time and run-time components configure the application execution environments depending on hints provided with the application. An essential feature of the run-time component is its ability to reconfigure, or adapt itself, both to the application requirements and to the system and networking environment. To achieve both distribution and adaptation, we use meta-level object programming techniques and run-time monitoring.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114257327","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.1109/EDOC.1999.792068
K. Renaud, R. Cooper
The paper presents a novel approach to providing error feedback for distributed, component based applications. We describe HERCULE, a framework within which an existing application can execute, to enhance error feedback. HERCULE will collect data from user actions and server requests and provide context dependent feedback on errors. The strength of HERCULE is that the application will not have to be modified or transformed in any way to participate in the framework. Users of software systems often spend a great deal of time trying to work out how to use the system and, in particular, how to deal with errors. It is often difficult to find out what has caused an error, and how to recover from it. Sometimes users are even oblivious to the presence of errors. In component based applications, the constituent parts are developed independently, and consequently traditional methods for implementing global feedback mechanisms will not be feasible. We therefore propose the introduction of an error reporting framework which will provide the required level of feedback for component based systems.
{"title":"HERCULE: a framework for enhancing error reporting in component-based systems","authors":"K. Renaud, R. Cooper","doi":"10.1109/EDOC.1999.792068","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792068","url":null,"abstract":"The paper presents a novel approach to providing error feedback for distributed, component based applications. We describe HERCULE, a framework within which an existing application can execute, to enhance error feedback. HERCULE will collect data from user actions and server requests and provide context dependent feedback on errors. The strength of HERCULE is that the application will not have to be modified or transformed in any way to participate in the framework. Users of software systems often spend a great deal of time trying to work out how to use the system and, in particular, how to deal with errors. It is often difficult to find out what has caused an error, and how to recover from it. Sometimes users are even oblivious to the presence of errors. In component based applications, the constituent parts are developed independently, and consequently traditional methods for implementing global feedback mechanisms will not be feasible. We therefore propose the introduction of an error reporting framework which will provide the required level of feedback for component based systems.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121727495","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.1109/EDOC.1999.792055
J. J. Halliday, S. Shrivastava, S. Wheater
There is growing interest in providing computer support for an organisation's business processes such as customer order processing, product support, stock taking and so forth. Workflow systems are normally used for this purpose to co-ordinate and monitor execution of multiple tasks arranged to form business processes. In this context, computer support for work activity co-ordination will be taken to mean tools and services made available to the employees of an organisation to enable them to carry out their tasks that form the part of these workflows. The paper illustrates how a transactional workflow system can be augmented with support for reliable management of worklists in an arbitrarily distributed environment. Ideally, the workflow enactment service should be neutral to the types of work activity coordination services to be made available to users. In this way, the needs of a wide variety of organisations can be supported by building organisation specific services. The approach taken here is to separate organisational aspects of workflow management from the workflow enactment service as much as possible.
{"title":"Implementing support for work activity coordination within a distributed workflow system","authors":"J. J. Halliday, S. Shrivastava, S. Wheater","doi":"10.1109/EDOC.1999.792055","DOIUrl":"https://doi.org/10.1109/EDOC.1999.792055","url":null,"abstract":"There is growing interest in providing computer support for an organisation's business processes such as customer order processing, product support, stock taking and so forth. Workflow systems are normally used for this purpose to co-ordinate and monitor execution of multiple tasks arranged to form business processes. In this context, computer support for work activity co-ordination will be taken to mean tools and services made available to the employees of an organisation to enable them to carry out their tasks that form the part of these workflows. The paper illustrates how a transactional workflow system can be augmented with support for reliable management of worklists in an arbitrarily distributed environment. Ideally, the workflow enactment service should be neutral to the types of work activity coordination services to be made available to users. In this way, the needs of a wide variety of organisations can be supported by building organisation specific services. The approach taken here is to separate organisational aspects of workflow management from the workflow enactment service as much as possible.","PeriodicalId":365462,"journal":{"name":"Proceedings Third International Enterprise Distributed Object Computing. Conference (Cat. No.99EX366)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130979032","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}