首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 0 毫秒
1.
Our research deals with the use of software architecture (SA) as a reference model for testing the conformance of an implemented system with respect to its architectural specification. We exploit the specification of SA dynamics to identify useful schemes of interactions between system components and to select test classes corresponding to relevant architectural behaviors. The SA dynamics is modeled by labeled transition systems (LTSs). The approach consists of deriving suitable LTS abstractions called ALTSs. ALTSs offer specific views of SA dynamics by concentrating on relevant features and abstracting away from uninteresting ones. Intuitively, deriving an adequate set of test classes entails deriving a set of paths that appropriately cover the ALTS. Next, a relation between these abstract SA tests and more concrete, executable tests needs to be established so that the architectural tests derived can be refined into code-level tests. We use the TRMCS case study to illustrate our hands-on experience. We discuss the insights gained and highlight some issues, problems, and solutions of general interest in architecture-based testing.  相似文献   

2.
In this paper, a new systolic multiprocessor architecture for soft tomography algorithms that explores the intrinsic parallelisms and hardware resources which are available in recent Field Programmable Gate Arrays architectures is presented. The soft tomography algorithms such as Electrical Capacitance Tomography (ECT), Magnetic Inductance Tomography (MIT), and Electrical Impedance Tomography (EIT), while they use different sensors and data acquisition modules, they feature common computation requirements which consist of intensive matrix multiplications and fast/frequent memory accesses. Using the variable bit-width and fixed-point multipliers array available in the DSP blocks, which cooperatively perform the partial matrix product with associated Arithmetic and Logic Units (ALU), and distributed memory available in Stratix V FPGA, a dedicated scalable architecture is suggested to host the Landweber algorithm. The experimental results indicate that 16,949 frames of (32 × 32 pixels) can be reconstructed in one second if each element of the matrix is attributed to 18 bits and using a clock frequency of 400 MHz. This is more than enough in most process imaging applications. In addition, the accuracy of the image reconstruction using 18 bits/operand is found to be acceptable since it exceeds 86%. More accuracy can be achieved up to 99% if 36 bits/operand are used which leads to an image reconstruction throughput of 1272 frames /s (for image size 32 × 32).  相似文献   

3.
Many on-chip network circuit and architecture techniques are incompatible with modern design flows, making them unsuitable for use in systems-on-chip. This paper presents a networks-on-chip (NoC) architecture design space exploration method for multi-processor systems-on-chip architecture. The NoC architecture design space is designed with a Layer-Interactive-Building block (LIB) methodology that is divided into three layers: application layer, link/network layer, and physical layer. The suggested LIB design paradigmatic philosophy provides modular building block structure in both hardware and software and the protocols for their interconnection in the three architecture layers. Using LIB the designer can easily select these building blocks to build application-specific NoCs to meet different application requirements such as media, graphic, software radio and communication network applications. The LIB provides the NoC building blocks, architecture interacting systems-on-chip components, the programming models and application mapping strategies. The LIB can be used as a complementary library and tools for future on-chip interconnection network design.  相似文献   

4.
Realizing long-term autonomous missions involving teams of heterogeneous robots is a challenge. It requires mechanisms to make robots react to disturbances or failures that will arise during the mission, while trying to successfully achieve the mission in cooperation. This paper presents HiDDeN, a distributed deliberative architecture that manages the execution of a hierarchical plan. This plan has initially been computed offline, ensuring some military operational constraints of the mission. Each robot’s supervisor then executes its own part of the plan, and reacts to failures using a hierarchical repair approach. This hierarchical repair has been designed with the sake of ensuring operational constraints, while reducing the need of communication between robots, as communication may be intermittent or even nonexistent when the robots operate in completely separate environments. HiDDeN’s robustness and scalability is evaluated with simulations. Experiments with an autonomous helicopter and an autonomous underwater vehicle have been realized and are presented as the defining point of our contribution.  相似文献   

5.
由于深空探测器距离远,要求具有很强的自主健康管理能力.目前大多数深空探测器自主健康管理功能为型号特定、缺乏统一的健康管理方法及软件架构,难以实现星载自主健康管理软件的通用化.针对此问题,本文对深空探测器自主健康管理需求进行了分析,提出了一种基于包应用标准和航天器接口业务标准的自主健康管理方法,设计了分层的通用软件架构.本文对架构中与健康管理相关的在轨监视业务构件、事件报告业务构件、事件动作业务构件等3个核心构件进行了详细设计,并进一步说明了架构在原理样机中的应用验证情况.  相似文献   

6.
一种新的软件测试方法的研究   总被引:1,自引:0,他引:1  
提出基于蒙特卡罗的软件可靠性测试方法。它是软件工程中的一个新的研究领域,主要探讨蒙特卡罗方法和软件工程的交叉。一方面借鉴一些传统的软件测试方法,另一方面借助于蒙特卡罗方法,提出的一套全新的测试技术。  相似文献   

7.
按照测试用例自动生成技术的不同,将测试用例自动生成算法分为随机、遗传、蚁群、粒子群四类,对上述各类算法的现状和进展进行介绍、分析和探讨。最后,对软件测试用例自动生成的研究进行了总结。  相似文献   

8.
9.
Miniature robots enable low-cost planetary surface exploration missions as well as new military missions in urban terrain where small robots provide critical assistance to human operations. These space and military missions have many similar technological challenges. This article describes the technologies under development, the applications where these technologies are relevant to both space and military missions, and the status of the most recent technology demonstrations in terrestrial scenarios  相似文献   

10.
In this paper we analyze the application of parallel and sequential evolutionary algorithms (EAs) to the automatic test data generation problem. The problem consists of automatically creating a set of input data to test a program. This is a fundamental step in software development and a time consuming task in existing software companies. Canonical sequential EAs have been used in the past for this task. We explore here the use of parallel EAs. Evidence of greater efficiency, larger diversity maintenance, additional availability of memory/CPU, and multi-solution capabilities of the parallel approach, reinforce the importance of the advances in research with these algorithms. We describe in this work how canonical genetic algorithms (GAs) and evolutionary strategies (ESs) can help in software testing, and what the advantages are (if any) of using decentralized populations in these techniques. In addition, we study the influence of some parameters of the proposed test data generator in the results. For the experiments we use a large benchmark composed of twelve programs that includes fundamental algorithms in computer science.  相似文献   

11.
The component’s interaction points with the external world play a fundamental role in the specification of an application’s architecture. Current software architecture approaches consider an interaction point as an atomic element in the specification of interconnections, despite the complexity of its structure and the attached behavior. It is not possible in current component models to deal separately with an element of an interaction point when such an element is needed alone for specifying a specific logic. To support such logic and the specification of a wide range of early ideas in the process of elaborating a software system, the Integrated Approach to Software Architecture (IASA) uses an interaction point model which provides facilities to manipulate any structural or behavioral element defining an interaction point. In addition, such facilities represent the fundamental foundation of the native support by IASA of Aspect Oriented Software Architectures (AOSA) specifications.  相似文献   

12.
Design space exploration of a software speculative parallelization scheme   总被引:2,自引:0,他引:2  
With speculative parallelization, code sections that cannot be fully analyzed by the compiler are optimistically executed in parallel. Hardware schemes are fast but expensive and require modifications to the processors and/or memory system. Software schemes require no changes to the hardware of existing shared-memory systems, but can suffer from significant overheads involved with the speculative execution. In fact, the performance of software schemes is highly dependent on application characteristics, the design and implementation of the scheme, and the system configuration and size. This paper explores the design space of a recently proposed software speculative parallelization scheme. In the process, we gain insight into the most beneficial features of software schemes for speculative parallelization, as well as the most influential application characteristics. For instance, experimental results show that, contrary to intuition, checking for data dependence violations on every speculative store, as opposed to at commit time, leads to little performance degradation in the worst case and to significantly better performance with large configurations. Also, scheduling policies based on windows can perform very close to fully dynamic policies with a fraction of the memory overhead. Finally, experimental results show consistent speedups in the execution of loops that cannot be parallelized at compile time, both with and without RAW data dependences, for 4 to 32 processors.  相似文献   

13.
《Knowledge》2006,19(1):1-8
In large organizations, management of large amounts of knowledge is a common problem. This knowledge is usually available in a distributed environment, in structured or non-structured form, and often is not exactly known where it is located and how to retrieve it in flexible ways. This paper describes an architecture to manage typical activities for an organization such as our University. During system analysis and specification, we had to collect a lot of information about structure and content of our organization, information available in various formats and media and not always automatically collectable. Hence, we designed a Document-based Software Architecture to support systems where formalization of information repositories, standardization of information location and management of every aspect involved in distributed contexts are crucial needs. We discuss if the configuration of a central-knowledge centered organization is the right solution or if it is better the choice of a distributed one. Since, all the documents managed in any organization are usually available in a structured way, we foresee a strong usage of XML documents and metadata standard definitions.  相似文献   

14.
A software architecture for open service gateways   总被引:1,自引:0,他引:1  
Two industrial trends are changing our day-to-day lives. One is the introduction of broadband service to the home, where it promises to deliver complex new services. The other is the increasing resourcefulness, connectedness, and intelligence of home appliances. A residential gateway is a networking device that creates a bridge between the broadband network and the in-home network, and between different networking technologies within the home. The article gives an overview of this emerging marketplace, and introduces the work ongoing at the Open Service Gateway initiative. OSG1 is defining a set of open-standard software application interfaces (APIs) for building open-service gateways, including residential gateways  相似文献   

15.
A good software architecture facilitates application system development, promotes achievement of functional requirements, and supports system reconfiguration. We present a domain-specific software architecture (DSSA) that we have developed for a large application domain of adaptive intelligent systems (AISs). The DSSA provides: (a) an AIS reference architecture designed to meet the functional requirements shared by applications in this domain, (b) principles for decomposing expertise into highly reusable components, and (c) an application configuration method for selecting relevant components from a library and automatically configuring instances of those components in an instance of the architecture. The AIS reference architecture incorporates features of layered, pipe and filter, and blackboard style architectures. We describe three studies demonstrating the utility of our architecture in the subdomain of mobile office robots and identify software engineering principles embodied in the architecture  相似文献   

16.
A CASE tool for software architecture design   总被引:3,自引:1,他引:2  
This paper describes the Software Architect's Assistant, an automated visual tool for the design and construction of Regis distributed programs. Unlike conventional CASE tools and their supported methodologies, the Architect's Assistant supports a compositional approach to program development in which the software architecture plays a central role throughout the software life-cycle—from the early design stage through to system management and evolution.In its implementation, we have addressed some of the limitations of existing CASE tools, particularly in the degree of automated support offered to the human developer. Conscious effort has been made to maximise usability and efficiency, primarily by enhancing the level of automation and flexibility together with careful design of the user interface. Our objective is to provide a tool which automates all mundane clerical tasks, enforces program correctness and consistency and, at the same time, accommodates the individual working styles of its users.Although currently specific to the development of Regis programs, the Architect's Assistant embodies concepts and ideas which are applicable to CASE tools in general.  相似文献   

17.
Symbolic execution is a well-known program analysis technique which represents program inputs with symbolic values instead of concrete, initialized, data and executes the program by manipulating program expressions involving the symbolic values. Symbolic execution has been proposed over three decades ago but recently it has found renewed interest in the research community, due in part to the progress in decision procedures, availability of powerful computers and new algorithmic developments. We provide here a survey of some of the new research trends in symbolic execution, with particular emphasis on applications to test generation and program analysis. We first describe an approach that handles complex programming constructs such as input recursive data structures, arrays, as well as multithreading. Furthermore, we describe recent hybrid techniques that combine concrete and symbolic execution to overcome some of the inherent limitations of symbolic execution, such as handling native code or availability of decision procedures for the application domain. We follow with a discussion of techniques that can be used to limit the (possibly infinite) number of symbolic configurations that need to be analyzed for the symbolic execution of looping programs. Finally, we give a short survey of interesting new applications, such as predictive testing, invariant inference, program repair, analysis of parallel numerical programs and differential symbolic execution.  相似文献   

18.
在软件开发及应用中,由于具有可复现性,模糊测试能够帮助发现漏洞和有针对性地对漏洞成因进行分析。为了解决模糊测试过程的效率及测试力度等问题,提出了软件漏洞模糊测试的关键分支探索及热点更新算法。该方法通过捕获、分析和利用受检程序在处理测试用例时的执行位置的关键信息,以指导模糊测试过程的探索方向和测试用例的生成。实验结果表明,提出的方法相较于传统随机发散的模糊测试方法在漏洞发现能力上有较大提升,在Otfcc、Swftools等14个开源程序中发现了100余个未被公布的漏洞,为模糊测试用于软件漏洞检测提供了新的可靠途径。  相似文献   

19.
20.
J. Kramer  J. Magee  M. Sloman 《Automatica》1984,20(1):93-102
Distributed computer control systems have a number of potential advantages over centralized systems, especially where the application is itself physically distributed. A computer station can be placed close to the plant being controlled, and a communications network used to enable the stations to communicate to coordinate their actions. However, the software must be carefully designed to exploit the potential advantages of distribution. This paper describes the software architecture of CONIC, a system to support distributed computer control applications. This architecture emphasizes the distinction between the writing of individual software components and the construction and configuration of a system from a set of components. A modular structure is used to separate programming from configuration. Typed entry and exit ports are used to clearly define module interfaces. Ports, analagous to the plugs and sockets of hardware components, permit modules to be interconnected in different ways. On-line modification and extension of the system is supported by permitting the dynamic creation and interconnection of modules. Message passing primitives are provided to permit modules to coordinate and synchronize control actions.  相似文献   

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

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