20,686 research outputs found

    Design and implementation of a behaviorally typed programming system for web services

    Get PDF
    Dissertação apresentada na Faculdade de Ciências e Tecnologia da Universidade Nova de Lisboa para a obtenção do Grau de Mestre em Engenharia Informática.The growing use of the Internet as a global infrastructure for communication between distributed applications is leading to the development of a considerable amount of technologies to ease the deployment, description and data exchange among services and thus improve their interoperability. There is also a growing interest in the use of the “software as a service” business model where a software vendor develops and hosts applications to be used by its clients over the Internet. The use of these Web Services is provided through an API describing the interface of the service that can hide how the service provider hosts the application. This approach allows for the creation of an abstraction layer that offers additional capabilities without increasing the maintenance cost usually linked to the management of those machines (like software and hardware updates or just application/system configuration). However, the main tools provided by the standards and existing technology to combine these services usually only account for limited automatic verification techniques (based on standard signature checking of methods in interface descriptions) and thus relying the behavioral compatibility among services to the programmer. The programmer then becomes dependent on the quality of the documentation and the development time available to manually (and without formal guarantees) assure the correctness of the code. In this thesis, we propose a behavioral type system, in the context of yak, a prototype scripting language for web services, that enhances traditional typecheckers by allowing to statically check the correct usage of services (as remote or local objects). Our language uses behavioral annotations in the protocol descriptions, similar to regular expressions, that are translated to deterministic finite automatons during the typechecking phase. The intent of this work is to ease the creation and deployment of Web Services by providing a friendly integration of behavioral type concepts within a practical programming language, so to make the use of these services (with behavioral descriptions) transparent and effortless to the programmer. We also provide a full implementation of the interpreter, behavioral typechecker and run-time support system for the yak language, that may be used to develop prototypical systems and experiment with web services and behavioral type

    Tau Be or not Tau Be? - A Perspective on Service Compatibility and Substitutability

    Get PDF
    One of the main open research issues in Service Oriented Computing is to propose automated techniques to analyse service interfaces. A first problem, called compatibility, aims at determining whether a set of services (two in this paper) can be composed together and interact with each other as expected. Another related problem is to check the substitutability of one service with another. These problems are especially difficult when behavioural descriptions (i.e., message calls and their ordering) are taken into account in service interfaces. Interfaces should capture as faithfully as possible the service behaviour to make their automated analysis possible while not exhibiting implementation details. In this position paper, we choose Labelled Transition Systems to specify the behavioural part of service interfaces. In particular, we show that internal behaviours (tau transitions) are necessary in these transition systems in order to detect subtle errors that may occur when composing a set of services together. We also show that tau transitions should be handled differently in the compatibility and substitutability problem: the former problem requires to check if the compatibility is preserved every time a tau transition is traversed in one interface, whereas the latter requires a precise analysis of tau branchings in order to make the substitution preserve the properties (e.g., a compatibility notion) which were ensured before replacement.Comment: In Proceedings WCSI 2010, arXiv:1010.233

    Investigating the adoption and use of smartphones in the UK : a silver-surfers perspective

    Get PDF
    Copyright and all rights therein are retained by the authors. All persons copying this information are expected to adhere to the terms and conditions invoked by each author's copyright. These works may not be re-posted without the explicit permission of the copyright holdersSmart phones are innovations that currently provide immense benefits and convenience to users in society. However, not all members of society are accepting and using smart phones; more specifically, for this research study silver-surfers or older adults (50+) are a demographic group displaying such an attitude. Currently, there is minimal knowledge of the reasons for older adults adopting and using smartphones. Bearing this in mind, this research study aims to investigate the adoption and usage behaviours of silver-surfers. For this purpose, the conceptual framework applied to this research draws factors from the following theories: Unified Theory of Acceptance and Use of Technology (UTAUT), the Diffusion of Innovations theory (DoI), and TAM3 (Technology Acceptance Model). From the online survey of 204 completed replies it was found that observability, compatibility, social influence, facilitating conditions, effort expectancy and enjoyment are important to the adoption and use of smartphones within silver-surfers. The contributions of this research are an identification and understanding of the factors that encourage or inhibit smartphone use within the older adult population. Second, this research can inform the design of computing devices and applications used for silver-surfers. Finally, this research can enlighten policy makers when forming decisions that encourage adoption and use of smartphones among silver surfersFinal Published versio
    • …
    corecore