共查询到20条相似文献,搜索用时 31 毫秒
1.
In this paper we present an algebra of actors extended with mechanisms to model crash failures and their detection. We show how this extended algebra of actors can be successfully used to specify distributed software architectures. The main components of a software architecture can be specified following an object-oriented style and then they can be composed using asynchronous message passing or more complex interaction patterns. This formal specification can be used to show that several requirements of a software system are satisfied at the architectural level despite failures. We illustrate this process by means of a case study: the specification of a software architecture for intelligent agents which supports a fault tolerant anonymous interaction protocol. 相似文献
2.
Context
A software reference architecture is a generic architecture for a class of systems that is used as a foundation for the design of concrete architectures from this class. The generic nature of reference architectures leads to a less defined architecture design and application contexts, which makes the architecture goal definition and architecture design non-trivial steps, rooted in uncertainty.Objective
The paper presents a structured and comprehensive study on the congruence between context, goals, and design of software reference architectures. It proposes a tool for the design of congruent reference architectures and for the analysis of the level of congruence of existing reference architectures.Method
We define a framework for congruent reference architectures. The framework is based on state of the art results from literature and practice. We validate our framework and its quality as analytical tool by applying it for the analysis of 24 reference architectures. The conclusions from our analysis are compared to the opinions of experts on these reference architectures documented in literature and dedicated communication.Results
Our framework consists of a multi-dimensional classification space and of five types of reference architectures that are formed by combining specific values from the multi-dimensional classification space. Reference architectures that can be classified in one of these types have better chances to become a success. The validation of our framework confirms its quality as a tool for the analysis of the congruence of software reference architectures.Conclusion
This paper facilitates software architects and scientists in the inception, design, and application of congruent software reference architectures. The application of the tool improves the chance for success of a reference architecture. 相似文献3.
DECAF - A Flexible Multi Agent System Architecture 总被引:6,自引:0,他引:6
John R. Graham Keith S. Decker Michael Mersic 《Autonomous Agents and Multi-Agent Systems》2003,7(1-2):7-27
4.
5.
6.
7.
8.
信息化条件下,军事信息系统应满足互连、互通、互操作要求,实现横向集成和聚集。通过对比层次式软件体系结构和正交式软件体系结构,并将这两种异构的软件体系结构融合应用于军事信息系统的软件体系结构设计领域,提出了联合作战模拟系统的体系结构框架。这种异构软件体系结构的组合使得系统结构清晰,具有可扩展性,易于理解,同时提高了软件复用的粒度和开发效率,为军用软件体系结构设计提供了一种参考思路。 相似文献
9.
Agent integration architectures enable a heterogeneous, distributed set of agents to work together to address problems of greater complexity than those addressed by the individual agents themselves. Unfortunately, integrating software agents and humans to perform real-world tasks in a large-scale system remains difficult, especially due to three main challenges: ensuring robust execution in the face of a dynamic environment, providing abstract task specifications without all the low-level coordination details, and finding appropriate agents for inclusion in the overall system. To address these challenges, our Teamcore project provides the integration architecture with general-purpose teamwork coordination capabilities. We make each agent team-ready by providing it with a proxy capable of general teamwork reasoning. Thus, a key novelty and strength of our framework is that powerful teamwork capabilities are built into its foundations by providing the proxies themselves with a teamwork model.Given this teamwork model, the Teamcore proxies addresses the first agent integration challenge, robust execution, by automatically generating the required coordination actions for the agents they represent. We can also exploit the proxies' reusable general teamwork knowledge to address the second agent integration challenge. Through team-oriented programming, a developer specifies a hierarchical organization and its goals and plans, abstracting away from coordination details. Finally, KARMA, our Knowledgeable Agent Resources Manager Assistant, can aid the developer in conquering the third agent integration challenge by locating agents that match the specified organization's requirements. Our integration architecture enables teamwork among agents with no coordination capabilities, and it establishes and automates consistent teamwork among agents with some coordination capabilities. Thus, team-oriented programming provides a level of abstraction that can be used on top of previous approaches to agent-oriented programming. We illustrate how the Teamcore architecture successfully addressed the challenges of agent integration in two application domains: simulated rehearsal of a military evacuation mission and facilitation of human collaboration. 相似文献
10.
M. Lozano P. Morillo J.M. Orduña V. Cavero G. Vigueras 《Journal of Network and Computer Applications》2009,32(2):474-482
Crowd simulation requires both rendering visually plausible images and managing the behavior of autonomous agents. Therefore, these applications need an efficient design that allows them to simultaneously handle these two requirements. Although several proposals have focused on the software architectures for these systems, no proposals have focused on the computer systems supporting them.In this paper, we analyze the computer architectures used in the literature to support distributed virtual environments. Also, we propose a distributed computer architecture which is efficient enough to support simulations of thousand of autonomous agents. This proposal consists of a cluster of interconnected computers in order to improve flexibility and robustness, as well as a hierarchical software architecture that efficiently provides consistency. Performance evaluation results show that the trade-off between flexibility and consistency allows to efficiently manage thousands of autonomous agents. Therefore, this network-based system architecture can provide the required scalability for large-scale crowd simulations. 相似文献
11.
Samuil Angelov Author Vitae Paul Grefen Author Vitae 《Journal of Systems and Software》2008,81(11):1816-1844
Business-to-business e-contracting aims at automating the contracting process between companies. It improves the efficiency of the contracting process and enables the introduction of new business models that can be supported by companies. For the development of an e-contracting system, an architecture is required that describes the system components and the communication channels between them. This paper presents a reference architecture for the development of e-contracting systems. The architecture is designed on the basis of a requirement analysis of e-contracting systems. Established architectural principles are used in its design. The architecture can serve as a foundation in the analysis and design of concrete architectures of e-contracting systems. Furthermore, it can be used as a standardization model that facilitates system integration and communication of ideas. Its value for both software architects and business professionals makes it an important tool in the analysis and implementation of e-contracting systems. 相似文献
12.
C_2风格软件构架的演化研究 总被引:1,自引:0,他引:1
软件演化是软件生命周期中始终存在的变化活动,软件维护只是软件演化的特定阶段的活动和组成部分。由于软件复用思想的兴起,基于构件和构架的软件开发方法得到越来越广泛的应用,而相应的软件演化就成为组成软件系统的构件的演化和构架的演化。该文探讨了软件演化和构架演化的概念,研究了构架动态演化所涉及到的问题,并在分析软件构架风格的基础上重点研究了C2构架风格对构架动态演化的支持能力。该文提出的构架动态演化模型及其与C2风格的结合能够支持实际的构架演化。 相似文献
14.
文章通过一个协作式客户机/服务器软件系统的实例阐明了设计不同系统体系可复用扩展软件构架的一种方法。笔者提出的构架,将使用构架描述语言进行定义,通过软件复用的三个层次(独立于应用域的,领域特有的和应用特有的),有机地组织起来。构架由可复用领域的特定黑盒构架模式和可扩展领域的特定白盒构架模式组成。文章重点阐述了软件构架中复用的不同层次以及构架如何实现扩展。 相似文献
15.
This paper outlines a multi-agent architecture for regulated information exchange of crime investigation data between police forces. Interactions between police officers about information exchange are analysed as negotiation dialogues with embedded persuasion dialogues. An architecture is then proposed consisting of two agents, a requesting agent and a responding agent, and a communication language and protocol with which these agents can interact to promote optimal information exchange while respecting the law. Finally, dialogue policies are defined for the individual agents, specifying their behaviour within a negotiation. Essentially, when deciding to accept or reject an offer or to make a counteroffer, an agent first determines whether it is obligatory or permitted to perform the actions specified in the offer. If permitted but not obligatory, the agent next determines whether it is in his interest to accept the offer. 相似文献
16.
Technical framework for Internetware: An architecture centric approach 总被引:13,自引:0,他引:13
Being a new software paradigm evolved by the Internet, Internetware brings many challenges to the traditional software methods and techniques. Sponsored by the national basic research program (973), researchers in China have developed an architecture centric technical framework for the definition, incarnation and engineering of Internetware. First of all, a software model for Internetware is defined for what to be, including that Internetware entities should be packaged as components, behaving as agents, interoperating as services, collaborating in a structured and on demand manner, etc. Secondly, a middleware for Internetware is designed and implemented for how to be, including that Internetware entities are incarnated by runtime containers, structured collaborations are enabled by runtime software architecture, Internetware can be managed in a reflective and autonomic manner, etc. Thirdly, an engineering methodology for Internetware is proposed for how to do, including the way to develop Internetware entities and their collaborations by transforming and refining a set of software architectures which cover all the phases of software lifecycle, the way to identify and organize the disordered software assets by domain modeling, etc. 相似文献
17.
Dharmalingam Ganesan Thorsten Keuler Yutaro Nishimura 《Information and Software Technology》2009,51(11):1586-1600
In this paper, we report on our experiences with architecture compliance checking – the process of checking whether the planned or specified software architecture is obeyed by the running system – of an OSGi-based, dynamically evolving application in the office domain. To that end, we first show how to dynamically instrument a running system in the context of OSGi in order to collect run-time traces. Second, we explain how to bridge the abstraction gap between run-time traces and software architectures, through the construction of hierarchical Colored Petri nets (CP-nets). In addition, we demonstrate how to design reusable hierarchical CP-nets. In an industry example, we were able to extract views that helped us to identify a number of architecturally relevant issues (e.g., architectural style violations, behavior violations) that would not have been detected otherwise, and could have caused serious problems like system malfunctioning or unauthorized access to sensitive data. Finally, we package valuable experiences and lessons learned from this endeavor. 相似文献
18.
This paper presents a formal model and a systematic approach to the validation of communication architectures at a high level
of abstraction. This model is described mathematically by a function, named GeNoC. The correctness of GeNoC is expressed as a theorem, which states that messages emitted on the architecture reach their expected destination without
any modification of their content. The model identifies the key constituents common to all on chip communication architectures, and their essential properties from which the correctness theorem is deduced. Each constituent
is represented by a function that has no explicit definition but is constrained to satisfy the essential properties. Thus,
the validation of a particular architecture is reduced to the proof that its concrete definition satisfies the essential properties.
In practice, the model has been defined in the logic of the ACL2 theorem proving system. We illustrate our approach on several
architectures that constitute concrete instances of the generic GeNoC model. Some of these applications come from industrial designs, such as the AMBA AHB bus or the Octagon network from ST Microelectronics.
C. Delgado Kloos 相似文献
19.
Cristiano Maffort Marco Tulio Valente Ricardo Terra Mariza Bigonha Nicolas Anquetil André Hora 《Empirical Software Engineering》2016,21(3):854-895
Software architecture conformance is a key software quality control activity that aims to reveal the progressive gap normally observed between concrete and planned software architectures. However, formally specifying an architecture can be difficult, as it must be done by an expert of the system having a high level understanding of it. In this paper, we present a lightweighted approach for architecture conformance based on a combination of static and historical source code analysis. The proposed approach relies on four heuristics for detecting absences (something expected was not found) and divergences (something prohibited was found) in source code based architectures. We also present an architecture conformance process based on the proposed approach. We followed this process to evaluate the architecture of two industrial-strength information systems, achieving an overall precision of 62.7 % and 53.8 %. We also evaluated our approach in an open-source information retrieval library, achieving an overall precision of 59.2 %. We envision that an heuristic-based approach for architecture conformance can be used to rapidly raise architectural warnings, without deeply involving experts in the process. 相似文献