首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 0 毫秒
1.
    
Mobile agents have come forward as a technique for tackling the complexity of open distributed applications. However, the pervasive nature of code mobility implies that it cannot be modularized using only object‐oriented (OO) concepts. In fact, developers frequently evidence the presence of mobility scattering in their system's modules. Despite these problems, they usually rely on OO application programming interfaces (APIs) offered by the mobility platforms. Such classical API‐oriented designs suffer a number of architectural restrictions, and there is a pressing need for empowering developers with an architectural framework supporting a flexible incorporation of code mobility in the agent applications. This work presents an aspect‐oriented software architecture, called ArchM, ensuring that code mobility has an enhanced modularization and variability in agent systems, and is straightforwardly introduced in otherwise stationary agents. It addresses OO APIs' restrictions and is independent of specific platforms and applications. An ArchM implementation also overcomes fine‐grained problems related to mobility tangling and scattering at the implementation level. The usefulness and usability of ArchM are assessed within the context of two case studies and through its composition with two mobility platforms. Copyright © 2008 John Wiley & Sons, Ltd.  相似文献   

2.
面向方面的软件工程指南   总被引:1,自引:0,他引:1  
莫倩  刘晓 《计算机工程》2007,33(14):62-65
面向方面的软件开发(AOSD)技术的目标,是在整个软件生命周期中提供系统化标识、模块化以及组合横切关注点。随着AOSD技术的成熟,需要一个指南来支持良好工程化的面向方面系统的开发。该文综述了现有面向方面软件工程的各种方法,分析了在需求分析、设计和编程实现阶段对方面进行考虑的方法,并提出了比较这些方法的准则。文章为面向方面的实际应用选择专门的方法(方法组)提供了指南。  相似文献   

3.
软件体系结构的提出对软件重用机制和软件开发效率的提高具有非常重要的意义。软件体系结构的使用是提高软件开发质量、减少软件开销和促进软件生产率提高的最有效方法之一。采用定性分析、比较研究等多种方法,实现了几种新型软件体系结构风格的剖析。给出了软件体系结构及软件体系结构风格的定义,阐述了几种新型软件体系结构风格中关键要素的定义及特性及其风格的主要内容,分析了几种新型软件体系结构风格的特点。  相似文献   

4.
    
Stock trading is one of the key items in an economy and estimating its behavior and taking the best decision in it are among the most challenging issues. Solutions based on intelligent agent systems are proposed to cope with those challenges. Agents in a multiagent system (MAS) can share a common goal or they can pursue their own interests. That nature of MASs exactly fits the requirements of a free market economy. Although existing studies include noteworthy proposals on agent‐based market simulation and researchers discuss theoretical design issues of agent‐based stock exchange systems, unfortunately only a very few of the studies consider exact development and implementation of multiagent stock trading systems within the software engineering perspective and guides to the software engineers for constructing such software systems starting from scratch. To fill this gap, in this paper, we discuss the development of a multiagent‐based stock trading system by taking into consideration software design according to a well‐defined agent oriented software engineering methodology and implementation with a widely‐used MAS software development framework. Each participant in the system is first designed as belief–desire–intention agents with their facts, goals, and plans, and then belief–desire–intention reasoning and behavioral structure of the designed agents are implemented. Lessons learned during design and development within the software engineering perspective and evaluation of the implemented multiagent stock exchange system are also reported. Copyright © 2011 John Wiley & Sons, Ltd.  相似文献   

5.
    
The introduction of object‐oriented technology does not appear to hinder overall productivity on new large commercial projects, but nor does it seem to improve it in the first two product generations. In practice, the governing influence may be the business workflow, and not the methodology. Copyright © 1999 John Wiley & Sons, Ltd.  相似文献   

6.
    
This article describes a framework for practical social reasoning designed to be used for analysis, specification, and implementation of the social layer of agent reasoning in multiagent systems. Our framework, called the expectation strategy behavior (ESB) framework, is based on (i) using sets of update rules for social beliefs tied to observations (so‐called expectations), (ii) bounding the amount of reasoning to be performed over these rules by defining a reasoning strategy, and (iii) influencing the agent's decision‐making logic by means of behaviors conditioned on the truth status of current and future social beliefs. We introduce the foundations of ESB conceptually and present a formal framework and an actual implementation of a reasoning engine, which is specifically combined with a general (belief–desire–intention‐based) practical reasoning programming system. We illustrate the generality of ESB through select case studies, which show that it is able to represent and implement different typical styles of social reasoning. The broad coverage of existing social reasoning methods, the modularity that derives from its declarative nature, and its focus on practical implementation make ESB a useful tool for building advanced socially reasoning agents.  相似文献   

7.
    
Software systems are subject to series of changes during their evolution as they move from one release to the next. The change histories of software systems hold useful information that describes how artifacts evolved. Evolution‐based metrics, which are the means to quantify the change history, are potentially good indicators of the changes in a software system. The objective of this paper is to derive and validate (theoretically and empirically) a set of evolution‐based metrics as potential indicators of the change‐prone classes of an object‐oriented system when moving from one release to the next. Release‐by‐release statistical prediction models were built in different ways. The results indicate that the proposed evolution‐based metrics measure different dimensions from those of typical product metrics. Additionally, several evolution‐based metrics were found to be correlated with the change‐proneness of classes. Moreover, the results indicate that more accurate prediction of class change‐proneness is achieved when the evolution‐based metrics are combined with product metrics. Copyright © 2012 John Wiley & Sons, Ltd.  相似文献   

8.
    
We describe the design and implementation of system architecture to support object introspection in C++. In this system, information is collected by parsing class declarations, and is used to build a supporting environment for object introspection. Our approach is non‐intrusive because it requires no changes in the original class declarations and libraries; hence, binary compatibility between objects before and after the addition of introspective capability is ensured. This is critical if one wants to integrate third‐party class libraries, which are often supplied as black boxes and allow no modification, into highly dynamic applications. We present two applications: the first is automatic I/O support for C++ objects, and the other is interactive exercise of dynamically loaded C++ class libraries. Copyright © 2001 John Wiley & Sons, Ltd.  相似文献   

9.
    
The implementation of crosscutting concerns in object‐oriented (OO) systems entails scattering and tangling of code across several components increasing code duplication and making the system harder to comprehend, maintain, evolve and reuse. Therefore, identification of crosscutting concerns drives the re‐engineering or refactoring tasks in order to improve modularization of an existing system and increasing its overall internal quality. This paper proposes an approach to identify and analyse the components implementing the static and dynamic crosscutting in OO systems. The approach defines a meta‐model representing the structure of an OO system in terms of its components. A static analysis of an OO software system is performed to create an instance of this meta‐model. Such meta‐model is finally analysed to find static and dynamic crosscutting among concerns. The effectiveness and efficiency of the proposed approach have been validated in an empirical assessment where it was applied to some OO java systems. The obtained results show a good level of effectiveness for the crosscutting analysis. Copyright © 2016 John Wiley & Sons, Ltd.  相似文献   

10.
    
Recovery‐oriented software is built with the perspective that hardware or software failures and operation mistakes are facts to be coped with, as they are problems that cannot be fully solved while developing real complex applications. Consequently, any software will always have a non‐zero chance of failure. Some of these failures may be caused by defects that may be removed or encapsulated. From the point of view of removing or encapsulating defects, a failure is considered to be trivial, when (i) the required effort to identify and eliminate or encapsulate the causing defect is small, (ii) the risk of making mistakes in these steps is also small and (iii) the consequences of the failure are tolerable. It is highly important to design systems in such a way that most (ideally all) of the failures are trivial. Such systems are called ‘debuggable systems’. In this study, we present the results of systematic applying techniques that focus on creating debuggable software for real embedded applications. Copyright © 2008 John Wiley & Sons, Ltd.  相似文献   

11.
赵艳  ;刘同明 《微机发展》2008,(10):225-229
面向方面编程(AOP)是面向对象编程(00P)的扩展和延续,能够很好地解决横切关注点问题,实现了业务逻辑与非业务逻辑的解耦合。目前大部分研究还主要是把AOP作为一种程序设计方法加以研究的,实际上,AOP对于软件设计和开发过程的影响是全面的。因此在AOP的基础上,从概念、规约、实现三个视角定义了方面,并从概念层、规约层、实现层三个层次研究了面向方面软件开发(AOSD)的开发过程,在Spring框架下给出了J2EE企业应用系统的实现过程,与只使用OOP方法相比,不但简化了设计,也使代码更具可读性。  相似文献   

12.
    
The subsumption architecture is a layered mediator invented by Rodney Brooks for behaviour‐based control of robots. The layers are minimally dependent and use minimal communication. We develop an object‐oriented software design for the subsumption architecture, and demonstrate that each layer can be used as a slot for a set of plug‐and‐play components that implement different microstrategies for achieving a particular goal. Guidelines for the development of specific layers and components of a subsumption architecture are also presented. Copyright © 2001 John Wiley & Sons, Ltd.  相似文献   

13.
    
The increasing complexity of large‐scale distributed applications is driving the Software Engineering community to adopt new software technologies for the development of distributed systems. In this sense, the emergence of component‐based software engineering represents a significant advance towards assembling applications by plugging in pre‐fabricated components. Additionally, the principle of ‘advanced’ separation of concerns is nowadays widely applied to improve modularity, reusability and adaptability of software components. In this way, the aspect‐oriented software development paradigm separates into a new dimension, named aspect, those properties that crosscut the system ‘objects’ or ‘components’, reducing their dependencies. However, the development of software based on the composition of components and aspects is still in its early stages. Part of the reason for this is the lack of well‐defined development processes and tools that help software developers in the use of existing component and aspect‐based approaches. Therefore, the primary aim of this paper is to propose an integrated development process for deriving applications by the assembly of a set of prefabricated components and aspects. This process supports the development of Component‐Aspect Model/Dynamic Aspect‐Oriented Platform (CAM/DAOP) applications, where CAM/DAOP is a new model and platform based on components and aspects. Our intention is to show how, with the support of the integrated development process presented in this paper, it is possible to use CAM/DAOP as an alternative to current distributed platforms. Copyright © 2006 John Wiley & Sons, Ltd.  相似文献   

14.
    
For many years systems engineers have produced traditional system requirements specifications containing shall‐statement requirements. The rapid adoption of use case modeling for capturing functional requirements in the software community has caused systems engineers to examine the utility of use case models for capturing system‐level functional requirements. A transition from traditional shall‐statement requirements to use case modeling has raised some issues and questions. This paper advocates a hybrid requirements process in which use case modeling and traditional shall‐statement requirements are applied together to effectively express both functional and nonfunctional requirements for complex, hierarchical systems. This paper also presents a practical method for extracting requirements from the use case text to produce a robust requirements specification. © 2004 Wiley Periodicals, Inc. Syst Eng 7: 303–319, 2004  相似文献   

15.
    
This paper argues for the adoption of object‐oriented design and UML tools for nonsoftware designs, i.e., systems, hardware and algorithms: This is a controversial position. It presents a case study, the design of a heating, ventilation, and air conditioning system, using UML tools. This case study also shows the incremental elaboration used to progress from the requirements model, to the analysis model, to the design model, etc. The paper finally discusses some difficulties that must be overcome in order to apply UML tools to system designs. © 2002 Wiley Periodicals, Inc. Syst Eng 6: 28–48, 2003.  相似文献   

16.
    
In previous work, we have modeled a vocabulary given as a semantic network by an object‐oriented database (OODB). The OODB schema thus obtained provides a compact abstract view of the vocabulary. This enables the fast traversal of the vocabulary by a user. In the semantic network vocabulary, the IS‐A relationships express the specialization hierarchy. In our OODB modeling of the vocabulary, the SUBCLASS relationship expresses the specialization hierarchy of the classes and supports the inheritance of their properties. A typical IS‐A path in the vocabulary has a corresponding shorter SUBCLASS path in the OODB schema. In this paper we expose several cases where the SUBCLASS hierarchy fails to fully correspond to the IS‐A hierarchy of the vocabulary. In these cases there exist traversal paths in the semantic network for which there are no corresponding traversal paths in the OODB schema. The reason for this failure is the existence of some IS‐A relationships between concepts of two classes, which are not connected by a SUBCLASS relationship. This phenomenon weakens the accuracy of our modeling. To rectify the situation we introduce a new OODB semantic relationship IS‐A to represent the existence of IS‐A relationships between concepts of a pair of classes which are not connected via a SUBCLASS relationship. The resulting schema contains both SUBCLASS relationships and IS‐A relationships which completely model the IS‐A hierarchy of the vocabulary. We define a mixed‐class level traversal path to contain either SUBCLASS or IS‐A relationships. Consequently, each traversal path in the semantic network has a corresponding mixed traversal path in the OODB schema. Hence the introduction of the semantic OODB IS‐A relationship improves the modeling of semantic network vocabularies by OODBs. Copyright © 2003 John Wiley & Sons, Ltd.  相似文献   

17.
一种面向对象的领域工程方法   总被引:26,自引:0,他引:26       下载免费PDF全文
王千祥  吴琼  李克勤  杨芙清 《软件学报》2002,13(10):1977-1984
介绍了一种面向对象的领域工程方法--\"青鸟领域工程方法\".领域工程是对一个领域中的若干系统进行分析,识别这些应用的共同特征和可变特征,进行面向复用的开发,产生出特定于领域的构件和构架.领域工程给软件复用提供了有力的支持.\"青鸟领域工程方法\"以\" 青鸟面向对象开发方法\"为基础,明确规定了领域工程中各个阶段的活动和产品,并针对每个阶段和活动给出了操作指南.  相似文献   

18.
19.
Agents in a team should be in agreement. Unfortunately, they may come to disagree due to sensor uncertainty, intermittent communication failures, etc. Once a disagreement occurs, the agents should detect and diagnose the disagreement. Current diagnostic techniques do not scale well with the number of agents, as they have high communication and computation complexity. We present novel techniques that enable scalability in three ways. First, we use communications early in the diagnostic process to stave off unneeded reasoning, which ultimately leads to unneeded communications. Second, we use light‐weight (and inaccurate) behavior recognition to focus the diagnostic reasoning on beliefs of agents that might be in conflict. Finally, we propose diagnosing only to a limited number of representative agents (instead of all the agents). We examine these techniques in large‐scale teams of situated agents in two domains and show that combining the techniques produces a diagnostic process that is highly scalable in both communication and computation.  相似文献   

20.
    
In this work, the controllability of single‐leader multi‐agent systems with chain structures is studied. It is shown that the necessary and sufficient condition for the multi‐chain system to be controllable is that there exist no two chain lengths in the form ? 1=i + k 1(2i + 1) and ? 2=i + k 2(2i + 1), where i is some natural number and k 1 and k 2 some nonnegative integers. Using this condition, the author derives an upper bound based on the length of the longest chain and proves that if the number of chains exceeds this bound, the multi‐chain system must be uncontrollable. In addition, the author investigates an augmented system constructed by connecting some follower nodes of the multi‐chain system and obtains a sufficient condition for the augmented system to be uncontrollable. Finally, the author shows how to select a minimum number of additional leaders to make an uncontrollable multi‐chain system controllable. Numerical examples are provided to illustrate the results. Copyright © 2016 John Wiley & Sons, Ltd.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号