Related papers: Practical Approach to Distributed Systems' Design
Over the last decade we have witnessed an increasing use of data processing in embedded systems. Where in the past the data processing was limited (if present at all) to the handling of a small number of "on-off control signals", more…
This paper establishes a general framework for describing hybrid dynamical systems which is particularly suitable for numerical simulation. In this context, the data structures used to describe the sets and functions which comprise the…
Distributed locking mechanisms are fundamental to ensuring data consistency and integrity in distributed systems. This paper presents a comprehensive analysis of distributed locking algorithms, focusing on their performance characteristics…
Risks and potential benefits of distributing software development projects globally depend to a large extent on how to allocate work to different development sites and regions. Existing methods in task allocation are likely to omit the…
The evolution of distributed architectures and programming paradigms for performance-oriented program development, challenge the state-of-the-art technology for performance tools. The area of high performance computing is rapidly expanding…
Design patterns are well practices to share software development experiences. These patterns allow enhancing reusability, readability and maintainability of architecture and code of software applications. As simulation applies computerized…
Context: The globalisation of activities associated with software development and use has introduced many challenges in practice and for research. While the predominant approach to research in software engineering has followed a positivist…
In this article are discussed some problems in developing software related to the management of information flows. We presented the basic stages in their development. We bold a methodology for conceptual modeling and design of information…
Recent work in data-driven control has led to methods that find stabilizing controllers directly from measurements of an unknown system. However, for multi-agent systems we are often interested in finding controllers that take their…
Decentralized systems are a subset of distributed systems where multiple authorities control different components and no authority is fully trusted by all. This implies that any component in a decentralized system is potentially…
This work proposes multi-agent systems setting for concurrent engineering system design optimization and gradually paves the way towards examining graph theoretic constructs in the context of multidisciplinary design optimization problem.…
Technological progress paves the way to ever-increasing opportunities for automating city services. This spans from already existing concepts, such as automated shuttles at airports, to more speculative applications, such as fully…
Distributed File Systems (DFS) have emerged as sophisticated solutions for efficient file storage and management across interconnected computer nodes. The main objective of DFS is to achieve flexible, scalable, and resilient file storage…
Open Source Software (OSS) development challenges traditional software engineering practices. In particular, OSS projects are managed by a large number of volunteers, working freely on the tasks they choose to undertake. OSS projects also…
Information-Centric Networking (ICN), with its data-oriented operation and generally more powerful forwarding layer, provides an attractive platform for distributed computing. This paper provides a systematic overview and categorization of…
Knowledge about the roles developers play in a software project is crucial to understanding the project's collaborative dynamics. Developers are often classified according to the dichotomy of core and peripheral roles. Typically,…
Correctly applying distributed systems concepts is important for software that seeks to be scalable, reliable and fast. For this reason, Distributed Systems is a course included in many Computer Science programs. To both describe current…
Context: Designing software is an activity in which software developers think and make design decisions that shape the structure and behavior of software products. Designing software is one of the least understood software engineering…
Distributed implementations of access control abound in distributed storage protocols. While such implementations are often accompanied by informal justifications of their correctness, our formal analysis reveals that their correctness can…
This paper introduces a framework for studying the interactions of autonomous system components and the design of the connectivity structure in Systems of Systems (SoSs). This framework, which uses complex network models, is also used to…