TL;DR: The concept of Flexible Web-Application Partitioning is introduced, a programming model and implementation infrastructure that allows developers to apply the Model/View/Controller design pattern in a partition-independent manner.
Abstract: The Model/View/Controller design pattern is very useful for architecting interactive software systems. This design pattern is partition-independent, because it is expressed in terms of an interactive application running in a single address space. Applying the Model/View/Controller design pattern to web-applications is therefore complicated by the fact that current technologies encourage developers to partition the application as early as in the design phase. Subsequent changes to that partitioning require considerable changes to the application's implementation-despite the fact that the application logic has not changed. This paper introduces the concept of Flexible Web-Application Partitioning, a programming model and implementation infrastructure, that allows developers to apply the Model/View/Controller design pattern in a partition-independent manner Applications are developed and tested in a single address-space; they can then be deployed to various client/server architectures without changing the application's source code. In addition, partitioning decisions can be changed without modifying the application.
TL;DR: The paper describes an approach, which assists in identifying the components from an Analysis Level Object Model, representing a business domain, which makes use of a clustering algorithm, certain constraints, a predefined rule and a set of heuristics.
Abstract: Component based software development is carried out in two phases: component building and application assembly. The key to building business components is a formal approach for identifying the components. The paper describes such an approach, which assists in identifying the components from an Analysis Level Object Model, representing a business domain. The approach makes use of a clustering algorithm, certain constraints, a predefined rule and a set of heuristics. The approach has been implemented in a tool named 'CompMaker' and was used for identifying components for an auto insurance claims domain.
TL;DR: The paper describes how flexibility is supported in the OPENflow distributed workflow system and describes high level tool support for performing dynamic changes to a workflow.
Abstract: Workflow management systems are required to provide flexible ways of managing workflows as the business processes they represent frequently require changes over time. Provision of flexibility features in workflow management systems is very much a research issue as workflow systems in use today have been found lacking in such features. Two approaches to achieving flexibility in workflows have been identified, namely flexibility by selection and flexibility by adaptation. Flexibility by selection is achieved by ensuring that there are a number of execution paths through the workflow process, such that key decision making points are well represented. This allows the appropriate path to be selected on a per-instance basis to take account of the prevailing circumstances. Flexibility by adaptation permits dynamic changes to workflows to include one or more new execution paths. The paper describes how flexibility is supported in the OPENflow distributed workflow system. In particular, it describes high level tool support for performing dynamic changes to a workflow. In OPENflow, dynamic reconfiguration mechanisms have been provided by making use of atomic transactions to add and remove one or more tasks and to allow the addition and removal of dependencies between tasks from a running workflow. Use of transactions ensures that changes are carried out atomically with respect to normal processing. An example application is described to illustrate flexible workflow management.
TL;DR: The paper presents a framework for describing and associating organizational concepts at multiple levels of detail using three separate areas of concerns: goals and strategy, business processes, and information systems.
Abstract: In order to continuously improve its knowledge and to identify problems and possible solutions, an organization requires understanding of the way business is aligned with the organizational strategy and how information systems are supporting the business. The paper presents a framework for describing and associating organizational concepts at multiple levels of detail using three separate areas of concerns: goals and strategy, business processes, and information systems. The framework is presented as an extension to the Unified Modeling Language (UML) using a standard UML Profile. The framework concepts are illustrated by modeling the purchase and sales business operations of a retail store from the strategic, process and information systems viewpoints.
TL;DR: An ontology is proposed that defines the concepts needed for object-oriented modeling and gives a graphical example and allows the definition of development methods, modeling languages and tools that are applicable to complex systems.
Abstract: The development of business and information systems requires a significant amount of modeling. The current modeling languages and tools have difficulties supporting the modeling of systems spanning through multiple organizational levels. The use of inadequate modeling abstractions is one of the important causes for these difficulties. The paper proposes an ontology that defines the concepts needed for object-oriented modeling and gives a graphical example. The ontology is based on RM-ODP and relies on constructivism and system theory. The proposed ontology allows the definition of development methods, modeling languages and tools that are applicable to complex systems. This can lead to significant productivity improvements in the business and software development communities.
TL;DR: The authors present a method known as KobrA that embraces the component concept at all phases of the software life-cycle, and allows high-level components to be implemented using conventional software development approaches, as well as the latest component technologies.
Abstract: Component-based software engineering is widely expected to revolutionize the way in which software systems are developed and maintained. However, companies who wish to adopt the component paradigm for serious enterprise software development face serious migration obstacles due to the perceived incompatibility of components with traditional, commonly used development approaches. This perception is reinforced by contemporary methods and component technologies, which typically view components as merely "binary-level" modules with little relevance beyond the implementation and deployment phases of development. The authors present a method known as KobrA that embraces the component concept at all phases of the software life-cycle, and allows high-level components (described in the UML) to be implemented using conventional software development approaches, as well as the latest component technologies (e.g. JavaBeans, CORBA, COM). The approach therefore provides a practical vehicle for applying the component paradigm within the context of a model driven architecture. After explaining the noteworthy features of the method, the paper briefly presents an example of its use in the development of an enterprise resource planning system.
TL;DR: A layered queueing model for predicting the performance of distributed enterprise applications built on Enterprise JavaBeans (EJB) technology is proposed and it is shown how such models can be applied for capacity sizing of distributed Enterprise systems.
Abstract: Traditional capacity sizing of enterprise systems relies on benchmarking a system using benchmark clients that generate a workload pattern similar to real-world workload. When new functions are added to the system or when the workload pattern changes, benchmarking has to be performed again. This is a costly and time-consuming approach for capacity planning. Layered queueing models have been used to study the performance of software systems. The approach is able to identify major performance parameters of software systems. Given a workload pattern, the models can be solved analytically to predict the system performance quickly. This paper proposes a layered queueing model for predicting the performance of distributed enterprise applications built on Enterprise JavaBeans (EJB) technology. We show how such models can be applied for capacity sizing of distributed enterprise systems. We demonstrate this by using this methodology to predict the performance of a sample application built on an EJB-based business-to-business e-commerce platform. We compare deployment options and study the effect of different workload patterns on system capacity.
TL;DR: This paper presents a new methodology to automatically generate service dependency models that aims for heterogeneous environments as found in large enterprises and outsourcing scenarios and comes with an agent based implementation architecture allowing its smooth integration into existing IT-infrastructures.
Abstract: This paper presents a new methodology to automatically generate service dependency models It strives to enable more comprehensive IT-management by providing an always up-to-date information basis about interdependencies of IT-services and other management objects like services applications and network components The approach specialty aims for heterogeneous environments as found in large enterprises and outsourcing scenarios It comes with an agent based implementation architecture allowing its smooth integration into existing IT-infrastructures
TL;DR: A tool has been developed to support an End-to-End (E2E) integration testing process to address the challenge of testing large integrated information systems on J2EE using EJB and XML with Cloudscape relational database management system.
Abstract: Testing is the primary means for quality assurance for enterprise systems, and integration testing is often the most time consuming and expensive part of testing. Recently Department of Defense proposed an End-to-End (E2E) integration testing process to address the challenge of testing large integrated information systems. The E2E testing activities include test thin-thread tree construction, condition tree specification, test configuration management, risk analysis, regression testing, ripple effect analysis, test scenario/case generation, rest result analysis, statistical analysis, and project management. A tool has been developed to support this E2E testing on J2EE using EJB and XML with Cloudscape relational database management system. This web-based tool also allows distributed collaboration and remote project management by the E2E testing participants including project managers, contractors, designers and testers.
TL;DR: D-Spheres enrich standard OOM and MOM services, uniquely providing for an increased level of reliability for their use in combination in enterprise systems.
Abstract: Many enterprise systems employ both object-oriented middleware (OOM) and message-oriented middleware (MOM). However support for the integration of object and messaging services, in particular for transaction processing across object and messaging components, is very limited. In this paper we introduce the concept of Dependency-Spheres (D-Spheres), a global transaction context for distributed objects and messages. A D-Sphere integrates standard distributed object transactions and conditional asynchronous messages in one single unit-of-work. It is a new service for transaction processing that enhances two-phase-commit ACID transactions with pre-commit message delivery, concurrent evaluations of transaction-critical message conditions, and message compensation support for recovery. D-Spheres enrich standard OOM and MOM services, uniquely providing for an increased level of reliability for their use in combination in enterprise systems.
TL;DR: The paper presents an information infrastructure for supporting Internet-based scalable e- business enterprises (ISEE), formed by a network of ISEE hubs, each of which has a number of replicable e-business servers providing various e-services to individuals and businesses.
Abstract: The paper presents an information infrastructure for supporting Internet-based scalable e-business enterprises (ISEE). The information infrastructure is formed by a network of ISEE hubs, each of which has a number of replicable e-business servers providing various e-services to individuals and businesses. The servers are the implementations of a number of core technologies developed to facilitate collaborative e-business, including business event and rule management, active distributed objects, constraint satisfaction processing, and cost benefit analysis and selection. Using the e-services provided by these servers, other e-services such as constraint-based brokering, supplier selection, active business process management, and automated negotiation can be developed. Supply chain management is used as an example of collaborative e-business in the descriptions of these technologies and their implementations.
TL;DR: It is argued that prevailing policy-based management models are too rigid to adequately represent large, heterogeneous, evolving enterprise as the fluidity and complexity of interactions occurring in such environments are genuinely difficult and often impossible to pre-empt at the time of policy specification and role assignment.
Abstract: The nature of an open distributed environment provides a resoundingly diverse yet potentially chaotic environment for users. A great deal of research has focused on the management of resources in such an environment and policy-based management has emerged as one such promising solution. In order to support large evolving enterprises, we are currently developing a policy model that will be scalable and able to cope with the extraordinarily high rate of change inherent in such environments. To do this, we have developed a number of novel concepts including: enterprise domain, policy space and policy authority which are unique and central to our approach. The overall objective of producing this model is to support dynamic roles, dynamic policies and the subsequent dynamic, conflict analysis. Prevailing policy-based management models largely promote the static definition and analysis of policy. We argue that although these models are suitable for homogenous, largely static environments, they are too rigid to adequately represent large, heterogeneous, evolving enterprise as the fluidity and complexity of interactions occurring in such environments are genuinely difficult and often impossible to pre-empt at the time of policy specification and role assignment.
TL;DR: Underline some similarities between process meta-models and sketch out how they could be organized, as a new information system landscape is emerging that will be more model-centered than object-oriented.
Abstract: A new information system landscape is emerging that will be more model-centered than object-oriented, characterized by many models of low granularity and high abstraction. These models may describe various aspects of a system such as products, structural organization and processes. This latter category may be refined into manufacturing, software and business processes for example. Each of these sub-domains share common concerns such as the definition of work items, performers, inputs and outputs, etc. However, as they may be represented using separate meta-models, there is therefore a risk of facing an uncontrollable number of meta-models that all redefine similar modeling constructs. It would be a wise initiative to put all these contributions together and to study what may be common and what should stay specific. We underline some similarities between process meta-models and we sketch out how they could be organized.
TL;DR: A system that automatically generates a producer and consumer for a human-usable textual notation corresponding to a given information model, based on the Meta-Object Facility, and allows for user alteration of the language through the provision of several language customisations.
Abstract: Existing techniques for the transfer of information in and out of model-based repositories, and in particular the XMI format, are designed for expedient machine processing, and have significant drawbacks for human users. The article describes a system that automatically generates a producer and consumer for a human-usable textual notation corresponding to a given information model. This HUTN system is based on the Meta-Object Facility, an OMG standard for the definition of information models and the subsequent mapping of these models to CORBA interfaces. The primary design goal of the system is human usability, and this is achieved through consideration of the successes and failures of common programming languages. The system uses an abstract base syntax that is applied to all models, and allows for user alteration of the language through the provision of several language customisations.
TL;DR: A number of architectural integration styles for enterprise systems are presented, and a case study of the style selection process applied to a mid-sized Swedish electricity retailer is described.
Abstract: A predominant problem in the management of large-scale enterprise software systems is application integration. Despite the considerable efforts spent on the development of new standards and technologies for software interoperation, the integration of systems that originally were not designed to interact with each other is a major undertaking, requiring in-depth knowledge of existing systems, incorporation of integration products, and development and/or parameterization of various kinds of adapters and gateways. The article presents the concept of architectural integration styles, i.e. architectural styles describing software structures of integration solutions for enterprise software systems. The article further proposes an approach for selection of styles based on the characteristics of the existing software applications and the desired quality attributes of the integrated system. A number of architectural integration styles for enterprise systems are presented, and a case study of the style selection process applied to a mid-sized Swedish electricity retailer is described.
TL;DR: This paper describes a diagnostic tool that checks the actual system behaviour against the pattern specification, and discusses the requirements this places on the form of the specification language and a number of the problems of interpretation that arise in applying such tools.
Abstract: There has been a growing interest in recent years in the use of abstract building blocks in system specification. Designs based on patterns and communities are two examples. However, these structures are then refined further during design and implementation, and it is often difficult to determine whether the eventual system implementation is a faithful reflection of the original properties of the pattern specified. This is particularly true of patterns used to describe an enterprise view of the system. The paper concentrates on the behavioural aspects of pattern specification, and investigates the way that observation of the system can be interpreted to check that properties of the pattern specification are preserved. It describes a diagnostic tool that checks the actual system behaviour against the pattern specification, and discusses the requirements this places on the form of the specification language and a number of the problems of interpretation that arise in applying such tools.
TL;DR: The Network-based IC card Environment (NICE) as mentioned in this paper is a platform for multi-application smart card operation and management, which is designed for multiple business entities scattered over an open network.
Abstract: Our Network-based IC card Environment, "NICE" is a platform for multi-application smart card operation and management. It is designed for multiple business entities scattered over an open network and enables cooperative operation and management of multi-application smart card and card applications. NICE flexibly supports various business models based on a well-defined role model including some new agent roles that are expected to emerge in the near future. Most of the card operations can be performed securely through the Internet by establishing an asymmetric cryptography based security protection framework. It also provides an access control method for card-server communications that is helpful in preventing malicious card usage and achieving easy and efficient card management. The first version of NICE was completed in March 2001, and we confirmed the feasibility of card and card application management using NICE.
TL;DR: The paper presents the development of an enterprise application using distributed object technology that integrates material requirements planning (MRP) to a job shop (simulator) that aims to realize an integrated system that responds rapidly to changing requirements and is able to integrate heterogeneous manufacturing facilities.
Abstract: The paper presents the development of an enterprise application using distributed object technology that integrates material requirements planning (MRP) to a job shop (simulator). The application aims to realize an integrated system that responds rapidly to changing requirements and is able to integrate heterogeneous manufacturing facilities. The application accepts the customer's order and performs material requirements planning. The MRP system then sends daily planned orders to a job shop that carries out real-time scheduling and production. At the same time, orders are sent to suppliers to purchase raw materials. After completing the production task, the job shop returns the relevant information about the finished parts. Once the customer adds or modifies orders, the MRP system will update pertinent data automatically to respond to the changes in customer's requirements rapidly. The Unified Modeling Language (UML) is applied for the analysis and design of the total application. In this integrated application, the MRP system uses Enterprise Java Beans (EJB) that are deployed in a J2EE compliant application server to perform business-to-customer transactions and MRP logic. The job shop system uses Common Object Request Broker Architecture (CORBA) specification as communication platform.
TL;DR: A homogeneous model for the definition of e-business applications components is proposed, a process-based technique for component modelling is presented and an Enterprise Java Beans extension is presented that implements the model.
Abstract: The emerging trends for e-business engineering revolve around specialisation and cooperation. Successful companies focus on their core competencies and rely on a network of business partners for the support services required to compose a comprehensive offer for their customers. Modularity is crucial for a flexible e-business infrastructure, but related requirements seldom reflect on the design and operational models of business information systems. Software components are widely used for the implementation of e-business applications, with proven benefits in terms of system development and maintenance. We propose a service-oriented componentisation of e-business systems as a way to close the gap with the business models they support. Blurring the distinction between external services and internal capabilities, we propose a homogeneous model for the definition of e-business applications components and present a process-based technique for component modelling. We finally present an Enterprise Java Beans extension that implements the model.
TL;DR: The paper presents the results of the initial phase of the Japanese Healthcare Domain Reference Enterprise Model project, and discusses issues faced during model development.
Abstract: INTAP (Interoperability Technology Association for Information Processing, Japan), CBOP (Consortium for Business Object Promotion), MEDIS-DC (Medical Information System Development Center) and JAHIS (Japanese Association of Healthcare Information Systems Industry) have completed the initial phase of the Japanese Healthcare Domain Reference Enterprise Model project. The goal of the project is to define a reference healthcare domain model using an ISO/IEC and ITU-T standardized RM-ODP framework. The initial phase focused on modeling the enterprise aspect of hospital information systems in Japan. RM-ODP Enterprise Viewpoint Language and UML were used as the key languages. The paper presents the results of the initial phase of the project, and discusses issues faced during model development.
TL;DR: It is the thesis that the only reliable way for ensuring that an heterogeneous distributed community of software modules and people conforms to a given policy is for this policy to be strictly enforced.
Abstract: One of the most important challenges facing the builders of enterprise software is the reliable implementation of the policies that are supposed to govern the various communities operating within an enterprise. Such policies are widely considered fundamental to enterprise modeling, and their specification were the subject of several recent investigations. But specification of the policy that is to govern a given community is only the first step towards its implementation; the second, and more critical step is to ensure that all members of the community actually conform to the specified policy. The conventional approach to the implementation of a policy is to build it into all members of the community subject to it. But if the community in question is large and heterogeneous, and if its members are dispersed throughout a distributed enterprise, then such "manual" implementation of its policy would be too laborious and error-prone to be practical. Moreover, a policy implemented in this manual manner would be very unstable with respect to the evolution of the system, because it can be violated by a change in the code of any member of community subject to it. It is our thesis that the only reliable way for ensuring that an heterogeneous distributed community of software modules and people conforms to a given policy is for this policy to be strictly enforced. A mechanism for establishing enterprise communities by formally specifying their policies, and by having these policies enforced is the subject of the paper.
TL;DR: The paper presents a model-based approach to support the design of component based distributed applications through the provision of a suitable MOF based meta model in combination with a UML profile as supporting notation and code generation rules for CORBA-middleware platforms.
Abstract: The paper presents a model-based approach to support the design of component based distributed applications through the provision of a suitable MOF based meta model in combination with a UML profile as supporting notation and code generation rules for CORBA-middleware platforms. The meta-model enables structural definitions of object types whose implementations are contained in components. It supports the specification of their configuration properties as well as interaction policies for communication between these objects. The modeling concepts also allow for the combination of different interaction types, which are operational, signal and continuous media interaction.
TL;DR: A service change notification system that can manage service change events for subscribing clients and is CORBA-based, as it cooperates with a CORBA Trading Service to gather change events and has an Event Notification Service as the core component for change notification.
Abstract: The nature of distribution and autonomy in an open environment makes it difficult to maintain a consistent view of service provision among distributed groups of clients. Change in services may have an impact on current operation of clients if they are not properly informed. Better management for change notification is necessary so that clients are able to prepare for the change accordingly. The paper proposes a service change notification system that can manage service change events for subscribing clients. The architecture of this service is CORBA-based, as it cooperates with a CORBA Trading Service to gather change events and has an Event Notification Service as the core component for change notification. Service providers can also register with this system to announce change events, and clients can subscribe for notification of change in services of their interest, specifying their preference for delivery style, notification format, and quality of service.
TL;DR: The authors propose to integrate a computer supported cooperative work system in a WFMS to solve the cooperation problem and shows the benefits of using MOF for achieving interoperability.
Abstract: In order to be completely adopted by industry, workflow management systems (WFMS) have to provide a more complete support to organisational processes. The cooperation is part of the missing features. The authors propose to integrate a computer supported cooperative work system in a WFMS to solve the cooperation problem. This integration consists of interoperability between the two systems thanks to the Meta-Object Facility and inheritance. By describing the construction scenario of the bridge between the two systems, the paper shows the benefits of using MOF for achieving interoperability.
TL;DR: This article illustrates how to easily address scalability issues within distributed applications built on top of the Coordination Language Facility (CLF) middleware, a distributed object computing framework with high expressiveness, flexibility and dynamicity.
Abstract: This article illustrates how to easily address scalability issues within distributed applications built on top of the Coordination Language Facility (CLF) middleware. CLF provides a distributed object computing framework with high expressiveness, flexibility and dynamicity. Our solutions rely on a core set of techniques such as replication, caching and distribution. We decline them along a geographical, a numerical, and an administrative dimension. We illustrate our approach with examples taken from Yaka, an application in the field of knowledge management and document awareness. In the context of this application we show in detail how the coordination model of the CLF and its associated scripting language enable straightforward solutions to various scalability issues.
TL;DR: This paper proposes a method to reduce risks early in the development cycle that consists of three interrelated elements: work model and workload model, architecture-driven component-based development, and architecture analysis and simulation.
Abstract: A number of risks are associated with building distributed enterprise systems, ranging from functionality to quality attributes. It is critical to identify and reduce these risks early in the development cycle. Current component-based development methods target at improving the precision in the modeling of system functionality based on UML and enhancing reusability through components and frameworks. However, major risks like performance, scalability, and maintainability of distributed systems have not been adequately addressed. In this paper, we propose a method to reduce these risks early in the development cycle. This method consists of three interrelated elements: work model and workload model, architecture-driven component-based development, and architecture analysis and simulation. We demonstrate the effectiveness of this method using the prototype of a factory floor information system.
TL;DR: A new approach to interoperability testing of CORBA implementations by embedded in the test system in such a way, that the behavior of either the client side or the server side of the OUT is controllable and observable.
Abstract: This paper presents a new approach to interoperability testing of CORBA implementations. The ORB Under Test (OUT) is embedded in the test system in such a way, that the behavior of either the client side or the server side of the OUT is controllable and observable. Components of the test system emulate the peer entities of the OUT and the applications based on the OUT in order to get direct access both to the GIOP interface and to the CORBA APIs. A specification framework for the test system is proposed. It separates the concerns of test data and test behavior to facilitate modularity and dynamic of the test system. The description languages CORBA IDL, ODMG ODL and TTCN-3 are used in the framework.
TL;DR: The paper presents the initial ideas for formal modeling of e-contracts, including specification of deontic constraints and verification ofDeontic consistency associated with roles in a contract, precise modeling of temporal constraints/estimates and verify of temporal consistency of an e- contract, and finally scheduling of the required actions.
Abstract: The emerging B2B technologies allow for more automated management of e-contracts including contract drafting, negotiation and monitoring. As technology infrastructure becomes available for electronic exchange of contracts and contract-related messages, the IT community is becoming more interested in modeling of contracts as governance structures for many inter-organisational interactions. The paper presents our initial ideas for formal modeling of e-contracts. This includes specification of deontic constraints and verification of deontic consistency associated with roles in a contract, precise modeling of temporal constraints/estimates and verification of temporal consistency of an e-contract, and finally scheduling of the required actions. The paper also introduces visualisation concepts such as role windows and time maps and describes how they could be used as decision support tools during contract negotiation.