IDEAS home Printed from https://ideas.repec.org/a/gam/jftint/v16y2024i11p416-d1517836.html
   My bibliography  Save this article

Automatically Injecting Robustness Statements into Distributed Applications

Author

Listed:
  • Daniele Marletta

    (Dipartimento di Matematica e Informatica, University of Catania, 95125 Catania, Italy)

  • Alessandro Midolo

    (Dipartimento di Matematica e Informatica, University of Catania, 95125 Catania, Italy)

  • Emiliano Tramontana

    (Dipartimento di Matematica e Informatica, University of Catania, 95125 Catania, Italy)

Abstract

When developing a distributed application, several issues need to be handled, and software components should include some mechanisms to make their execution resilient when network faults, delays, or tampering occur. For example, synchronous calls represent a too-tight connection between a client requesting a service and the service itself, whereby potential network delays or temporary server overloads would keep the client side hanging, exposing it to a domino effect. The proposed approach assists developers in dealing with such issues by providing an automatic tool that enhances a distributed application using simple blocking calls and makes it robust in the face of adverse events. The proposed devised solution consists in automatically identifying the parts of the application that connect to remote services using simple synchronous calls and substituting them with a generated customized snippet of code that handles potential network delays or faults. To accurately perform the proposed transformation, the devised tool finds application code statements that are data-dependent on the results of the original synchronous calls. Then, for the dependent statements, a solution involving guarding code, proper synchronization, and timeouts is injected. We experimented with the analysis and transformation of several applications and report a meaningful example, together with the analysis of the results achieved.

Suggested Citation

  • Daniele Marletta & Alessandro Midolo & Emiliano Tramontana, 2024. "Automatically Injecting Robustness Statements into Distributed Applications," Future Internet, MDPI, vol. 16(11), pages 1-16, November.
  • Handle: RePEc:gam:jftint:v:16:y:2024:i:11:p:416-:d:1517836
    as

    Download full text from publisher

    File URL: https://www.mdpi.com/1999-5903/16/11/416/pdf
    Download Restriction: no

    File URL: https://www.mdpi.com/1999-5903/16/11/416/
    Download Restriction: no
    ---><---

    References listed on IDEAS

    as
    1. Alessandro Midolo & Emiliano Tramontana, 2023. "An Automatic Transformer from Sequential to Parallel Java Code," Future Internet, MDPI, vol. 15(9), pages 1-19, September.
    Full references (including those not matched with items on IDEAS)

    Most related items

    These are the items that most often cite the same works as this one and are cited by the same works as this one.

      Corrections

      All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:gam:jftint:v:16:y:2024:i:11:p:416-:d:1517836. See general information about how to correct material in RePEc.

      If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

      If CitEc recognized a bibliographic reference but did not link an item in RePEc to it, you can help with this form .

      If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

      For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: MDPI Indexing Manager (email available below). General contact details of provider: https://www.mdpi.com .

      Please note that corrections may take a couple of weeks to filter through the various RePEc services.

      IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.