54 research outputs found

    An Integrated Methodology for Creating Composed Web/Grid Services

    Get PDF
    This thesis presents an approach to design, specify, validate, verify, implement, and evaluate composed web/grid services. Web and grid services can be composed to create new services with complex behaviours. The BPEL (Business Process Execution Language) standard was created to enable the orchestration of web services, but there have also been investigation of its use for grid services. BPEL specifies the implementation of service composition but has no formal semantics; implementations are in practice checked by testing. Formal methods are used in general to define an abstract model of system behaviour that allows simulation and reasoning about properties. The approach can detect and reduce potentially costly errors at design time. CRESS (Communication Representation Employing Systematic Specification) is a domainindependent, graphical, abstract notation, and integrated toolset for developing composite web service. The original version of CRESS had automated support for formal specification in LOTOS (Language Of Temporal Ordering Specification), executing formal validation with MUSTARD (Multiple-Use Scenario Testing and Refusal Description), and implementing in BPEL4WS as the early version of BPEL standard. This thesis work has extended CRESS and its integrated tools to design, specify, validate, verify, implement, and evaluate composed web/grid services. The work has extended the CRESS notation to support a wider range of service compositions, and has applied it to grid services as a new domain. The thesis presents two new tools, CLOVE (CRESS Language-Oriented Verification Environment) and MINT (MUSTARD Interpreter), to respectively support formal verification and implementation testing. New work has also extended CRESS to automate implementation of composed services using the more recent BPEL standard WS-BPEL 2.0

    Rigorous Development of Composite Grid Services

    Get PDF
    CRESS (Communication Representation Employing Systematic Specification) is introduced as notation, a methodology and a toolset for service development. The article focuses on rigorous development of composite grid services, with particular emphasis on the principles behind the methodology. A straightforward graphical notation is used to describe grid services. These are then automatically specified, analysed and implemented. Analysis includes formal verification of desirable service properties, formal validation of test scenarios, testing of implementation functionality, and evaluation of implementation performance. The case study that illustrates the approach is document content analysis to compare two pieces of text. This involves two composite services supported by two partner services. The usability of the service design notation is assessed, and a comparison is made of the approach with similar ones. These show that the CRESS approach to developing services is usable and more complete than other comparable approaches

    Correctness of services and their composition

    Get PDF
    We study correctness of services and their composition and investigate how the design of correct service compositions can be systematically supported. We thereby focus on the communication protocol of the service and approach these questions using formal methods and make contributions to three scenarios of SOC.Wir studieren die Korrektheit von Services und Servicekompositionen und untersuchen, wie der Entwurf von korrekten Servicekompositionen systematisch unterstĂźtzt werden kann. Wir legen dabei den Fokus auf das Kommunikationsprotokoll der Services. Mithilfe von formalen Methoden tragen wir zu drei Szenarien von SOC bei

    A Rigorous Methodology for Composing Services

    Get PDF
    Creating new services through composition of existing ones is an attractive option. However, composition can be complex and service compatibility needs to be checked. A rigorous and industrially-usable methodology is therefore desirable required for creating, verifying, implementing and validating composed services. An explanation is given of the approach taken by CRESS (Communication Representation Employing Systematic Specification). Formal verification and validation are performed through automated translation to LOTOS (Language Of Temporal Ordering Specification). Implementation and validation are performed through automated translation to BPEL (Business Process Execution Logic) and WSDL (Web Services Description Language). The approach is illustrated with an application to grid service composition in e-Social Science

    Correctness of services and their composition

    Get PDF
    We study correctness of services and their composition and investigate how the design of correct service compositions can be systematically supported. We thereby focus on the communication protocol of the service and approach these questions using formal methods and make contributions to three scenarios of SOC.Wir studieren die Korrektheit von Services und Servicekompositionen und untersuchen, wie der Entwurf von korrekten Servicekompositionen systematisch unterstĂźtzt werden kann. Wir legen dabei den Fokus auf das Kommunikationsprotokoll der Services. Mithilfe von formalen Methoden tragen wir zu drei Szenarien von SOC bei

    Service Discovery Using Communication Fingerprints

    Get PDF
    A request to a service registry must be answered with a service that fits in several regards, including semantic compatibility, non-functional compatibility, and interface compatibility. In the case of stateful services, there is the additional need to check behavioral (i.e. protocol) compatibility. This paper is concerned with the latter aspect. An apparent approach to establishing behavioral compatibility would be to apply the well-known technology of model checking to a composition of the provided service and the requesting service. However, this procedure must potentially be repeated for all provided services in the registry which may unprohibitively slow down the response time of the broker. Hence, we propose to insert a preprocessing step. It consists of computing an abstraction of the behavior for each published service that we call communication fingerprint. Upon request, we use the fingerprint to rule out as many as possible incompatible services thus reducing the number of candidates that need to be model checked for behavioral compatibility. The technique is based on linear programming and is thus extremely efficient. We validate our approach on a large set of services that we cut out of real world business processes

    Industrial Robot Programming and UPnP Services Orchestration for the Automation of Factories

    Full text link
    The integration of equipment and other devices built into industrial robot cells with modern Ethernet interface technologies and low‐cost mass produced devices (such as vision systems, laser scanners, force torque‐sensors, PLCs and PDAs etc.) enables integrators to offer more powerful and smarter solutions. Nevertheless, the programming of all these devices efficiently requires very specific knowledge about them, such as their hardware architectures and specific programming languages as well as details about the systemÂżs low level communication protocols. To address these issues, this paper describes and analyses the Plug‐and‐Play architecture. This is one of the most interesting service‐oriented architectures (SOAs) available, which exhibits characteristics that are well adapted to industrial robotics cells. To validate their programming features and applicability, a test bed was specially designed. This provides a new graphical service orchestration which was implemented using Workflow Foundation 4 of .NET. The obtained results allowed us to verify that the use of integration schemes based on SOAs reduces the system integration time and is better adapted to industrial robotic cell system integrators.The authors wish to express their gratitude to the Plan Nacional de I+D (FEDER-CICYT, Spanish Government) and to the Universitat Politecnica de Valencia (Spain) for the financing of this work, which was made under the research projects DPI2010-20814-C02-02, DPI2011-28507-C02-01 and PAID/2011/039. In addition, they also want to acknowledge the assistance of Elena Ruiz Gomez for her help in the translation of the article.Valera FernĂĄndez, Á.; GĂłmez Moreno, J.; SĂĄnchez SalmerĂłn, AJ.; Ricolfe Viala, C.; Zotovic Stanisic, R.; VallĂŠs Miquel, M. (2012). Industrial Robot Programming and UPnP Services Orchestration for the Automation of Factories. International Journal of Advanced Robotic Systems. 9:1-11. doi:10.5772/51373S1119Ahn, S., Lee, J., Lim, K., Ko, H., Kwon, Y., & Kim, H. (2006). UPnP SDK for Robot Development. 2006 SICE-ICASE International Joint Conference. doi:10.1109/sice.2006.315791Ahn, S., Lee, J., Lim, K., Ko, H., Kwon, Y., & Kim, H. (2006). Requirements to UPnP for Robot Middleware. 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems. doi:10.1109/iros.2006.282262Kelleher, C., & Pausch, R. (2005). Lowering the barriers to programming. ACM Computing Surveys, 37(2), 83-137. doi:10.1145/1089733.1089734Candido, G., Colombo, A. W., Barata, J., & Jammes, F. (2011). Service-Oriented Infrastructure to Support the Deployment of Evolvable Production Systems. IEEE Transactions on Industrial Informatics, 7(4), 759-767. doi:10.1109/tii.2011.2166779Crnkovic, I., Stafford, J., & Szyperski, C. (2011). Software Components beyond Programming: From Routines to Services. IEEE Software, 28(3), 22-26. doi:10.1109/ms.2011.62Cucinotta, T., Mancina, A., Anastasi, G. F., Lipari, G., Mangeruca, L., Checcozzo, R., & Rusina, F. (2009). A Real-Time Service-Oriented Architecture for Industrial Automation. IEEE Transactions on Industrial Informatics, 5(3), 267-277. doi:10.1109/tii.2009.2027013Delamer, I. M., & Lastra, J. L. M. (2006). Service-Oriented Architecture for Distributed Publish/Subscribe Middleware in Electronics Production. IEEE Transactions on Industrial Informatics, 2(4), 281-294. doi:10.1109/tii.2006.885188Estevez-Ayres, I., Basanta-Val, P., Garcia-Valls, M., Fisteus, J. A., & Almeida, L. (2009). QoS-Aware Real-Time Composition Algorithms for Service-Based Applications. IEEE Transactions on Industrial Informatics, 5(3), 278-288. doi:10.1109/tii.2009.2026422Foster, H., Uchitel, S., Magee, J., & Kramer, J. (2010). An Integrated Workbench for Model-Based Engineering of Service Compositions. IEEE Transactions on Services Computing, 3(2), 131-144. doi:10.1109/tsc.2010.19Chen, H.-M., Kazman, R., & Perry, O. (2010). From Software Architecture Analysis to Service Engineering: An Empirical Study of Methodology Development for Enterprise SOA Implementation. IEEE Transactions on Services Computing, 3(2), 145-160. doi:10.1109/tsc.2010.21Jaejoon Lee, & Kotonya, G. (2010). Combining Service-Orientation with Product Line Engineering. IEEE Software, 27(3), 35-41. doi:10.1109/ms.2010.30Jammes, F., & Smit, H. (2005). Service-Oriented Paradigms in Industrial Automation. IEEE Transactions on Industrial Informatics, 1(1), 62-70. doi:10.1109/tii.2005.844419Juric, M. B., Kezmah, B., Hericko, M., Rozman, I., & Vezocnik, I. (2004). Java RMI, RMI tunneling and Web services comparison and performance analysis. ACM SIGPLAN Notices, 39(5), 58. doi:10.1145/997140.997146Lewis, G., Morris, E., Simanta, S., & Smith, D. (2011). Service Orientation and Systems of Systems. IEEE Software, 28(1), 58-63. doi:10.1109/ms.2011.15Martin M., Grounds N.G., Antonio J.K., Crawford K. and Madden J. (2010). “Banker's Deadlock Avoidance Algorithm for Distributed Service-Oriented Architectures”, PDPTACSREA Press, pp. 43–50.Menasce, D., Gomaa, H., Malek, S., & Sousa, J. (2011). SASSY: A Framework for Self-Architecting Service-Oriented Systems. IEEE Software, 28(6), 78-85. doi:10.1109/ms.2011.22Remy, S. L., & Blake, M. B. (2011). Distributed Service-Oriented Robotics. IEEE Internet Computing, 15(2), 70-74. doi:10.1109/mic.2011.38Sasa, A., Juric, M. B., & Krisper, M. (2008). Service-Oriented Framework for Human Task Support and Automation. IEEE Transactions on Industrial Informatics, 4(4), 292-302. doi:10.1109/tii.2008.2008641Unver, H. O. (2011). System Architectures Enabling Reconfigurable Laboratory-Automation Systems. IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews), 41(6), 909-922. doi:10.1109/tsmcc.2011.2107552Veiga, G., Pires, J. N., & Nilsson, K. (2009). Experiments with service-oriented architectures for industrial robotic cells programming. Robotics and Computer-Integrated Manufacturing, 25(4-5), 746-755. doi:10.1016/j.rcim.2008.09.001Veiga, G., Pires, J. N., & Nilsson, K. (2007). ON THE USE OF SERVICE ORIENTED SOFTWARE PLATFORMS FOR INDUSTRIAL ROBOTIC CELLS. IFAC Proceedings Volumes, 40(3), 109-115. doi:10.3182/20070523-3-es-4908.00019WHITLEY, K. N. (1997). Visual Programming Languages and the Empirical Evidence For and Against. Journal of Visual Languages & Computing, 8(1), 109-142. doi:10.1006/jvlc.1996.0030Xu, L. D. (2011). Enterprise Systems: State-of-the-Art and Future Trends. IEEE Transactions on Industrial Informatics, 7(4), 630-640. doi:10.1109/tii.2011.216715

    Operating guidelines for services

    Get PDF
    In the paradigm of service-oriented computing, companies organize their core competencies as services and may request other functionalities from services of other companies. Services provide high flexibility, platform independent loose coupling, and distributed execution. They may thus help to reduce the complexity of dynamically binding and integrating heterogenous processes within and across organizations. The vision of service-oriented architectures is to provide a framework for publishing new services, for on demand searching for and discovery of existing services, and for dynamically binding services to achieve common business goals. That way, each individual organization gains more flexibility to dynamically react on new challenges. As services may be created or modified, or collaborations may be restructured at any point in time, a new challenge arises in this setting—the challenge for deciding the compatibility of the composed services before their actual binding. Recent literature distinguishes four different aspects of service compatibility: syntactical, behavioral, semantical, and non-functional compatibility. In this thesis, we focus on behavioral compatibility and abstract from the other aspects. Potential behavioral incompatibilities between services include deadlocks (two services wait for a message of each other), livelocks (two services keep exchanging messages without progressing), and pending messages that have been sent but cannot be received anymore. For stateful services that interact via asynchronous message passing, deciding behavioral compatibility is far from trivial. Local changes to one service may introduce errors in some or even all other services of an interaction. The verification of behavioral compatibility suffers from state explosion problems and is restricted by privacy issues. That is, the parties of an interaction are essentially autonomous and may be competitors in other business fields. Consequently, they do not want to reveal the internals of their processes to the other participants in order to hide trade secrets. To systematically approach this challenge, we introduce a formal framework based on Petri nets and automata for service modeling and formalize behavioral compatibility as deadlock freedom of the composition of the services. The main contribution of this thesis is to introduce the concept of the operating guideline of a service. Operating guidelines provide a formal characterization of the set of all behaviorally compatible services R for a given service S. Usually, this set is infinite. However, the operating guideline OGS of a service S serves as a finite representation of this infinite set. Furthermore, the operating guideline of S reveals only internals that are inevitably necessary to decide behavioral compatibility with S. We provide a construction method of operating guidelines for finite-state services with bounded communication. Operating guidelines can be used in many applications in the context of serviceoriented computing. The most fundamental application is to support the discovery of behaviorally compatible services. To this end, we develop a matching procedure that efficiently decides whether a given service R is characterized by the operating guideline OGS of a service S. If R matches, then both services R and S are behaviorally compatible and can be bound together to interact with each other. If R does not match with OGS, then the services are behaviorally incompatible and may run into severe behavioral errors and not reach their common business goal. Operating guidelines can furthermore be applied in the novel research areas of service substitutability and the generation of adapter services, for instance. To this end, we develop methods to compare the sets of services characterized by the operating guidelines OGS and OGS0 . If OGS0 characterizes more services than OGS, then the service S can be substituted by the service S0 without loosing any behaviorally compatible interaction partner R. Furthermore, we show how to synthesize a service R from the operating guideline OGS such that R is behaviorally compatible to S by construction. All results presented in this thesis are implemented in our service analysis tool Fiona. Fiona may compute operating guidelines for services modeled as Petri nets. It may match a service with an operating guideline, compare operating guidelines for equivalence or an inclusion relation, and synthesize service adapters for behaviorally incompatible services. Together with the tool BPEL2oWFN— which translates web services specified in BPEL into Petri net models of the services—we can immediately apply our results to services that stem from practic

    Relating fair testing and accordance for service replaceability

    Get PDF
    AbstractThe accordance pre-order describes whether a service can safely be replaced by another service. That is, all partners for the original service should be partners for the new service. Partners for a service interact with the service in such a way that always a certain common goal can be reached.We relate the accordance pre-order to the pre-orders known from the linear–branching time spectrum, notably fair testing. The differences between accordance and fair testing include the modeling of termination and success, and the parts of the services that cannot be used reliably by any partner. Apart from the theoretical results, we address the practical relevance of the introduced concepts
    • …
    corecore