首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 0 毫秒
1.
In this paper, there will be a particular focus on mental models and their application to inductive reasoning within the realm of instruction. A basic assumption of this study is the observation that the construction of mental models and related reasoning is a slowly developing capability of cognitive systems that emerges effectively with proper contextual and social support. More specifically, we first will identify some key elements of the structure and function of mental models in contrast to schemas. Next, these key elements of modeling will be used to generate some conjectures about the foundations of model-based reasoning. In the next section, we will describe the learning-dependent progression of mental models as a suitable approach for understanding the basics of deductive and inductive reasoning based on models as “tools for thought.” The rationale of mental models as tools for reasoning will be supported by empirical research to be described in a particular section of this paper. Finally, we will turn to the instructional implications of model-based reasoning by discussing appropriate instructional methods to affect the construction of mental models for performing deductive and inductive reasoning.  相似文献   

2.
In this paper we describe and review the course plan and syllabus we use in a course on formal methods in software engineering currently included in the degree in Informatics of the Faculty of Sciences at the University of Bologna. The course matches the theory of formal methods with their practice based on actual tool usage. In fact, the course is centered upon a project whose main goal is to let students learn some formal specification techniques, all supported by specific tools. The students use well-known notations for both requirements specification and formal design. The formal methods we use are based on the Z notation for requirements specification and on the Larch family of languages for design specifications.  相似文献   

3.
Testing software product lines (SPLs) is very challenging due to a high degree of variability leading to an enormous number of possible products. The vast majority of today??s testing approaches for SPLs validate products individually using different kinds of reuse techniques for testing. Because of their reusability and adaptability capabilities, model-based approaches are suitable to describe variability and are therefore frequently used for implementation and testing purposes of SPLs. Due to the enormous number of possible products, individual product testing becomes more and more infeasible. Pairwise testing offers one possibility to test a subset of all possible products. However, according to the best of our knowledge, there is no contribution discussing and rating this approach in the SPL context. In this contribution, we provide a mapping between feature models describing the common and variable parts of an SPL and a reusable test model in the form of statecharts. Thereby, we interrelate feature model-based coverage criteria and test model-based coverage criteria such as control and data flow coverage and are therefore able to discuss the potentials and limitations of pairwise testing. We pay particular attention to test requirements for feature interactions constituting a major challenge in SPL engineering. We give a concise definition of feature dependencies and feature interactions from a testing point of view, and we discuss adequacy criteria for SPL coverage under pairwise feature interaction testing and give a generalization to the T-wise case. The concept and implementation of our approach are evaluated by means of a case study from the automotive domain.  相似文献   

4.
The number, variety and complexity of projects involving data mining or knowledge discovery in databases activities have increased just lately at such a pace that aspects related to their development process need to be standardized for results to be integrated, reused and interchanged in the future. Data mining projects are quickly becoming engineering projects, and current standard processes, like CRISP-DM, need to be revisited to incorporate this engineering viewpoint. This is the central motivation of this paper that makes the point that experience gained about the software development process over almost 40 years could be reused and integrated to improve data mining processes. Consequently, this paper proposes to reuse ideas and concepts underlying the IEEE Std 1074 and ISO 12207 software engineering model processes to redefine and add to the CRISP-DM process and make it a data mining engineering standard.  相似文献   

5.
Testing safety-critical systems is crucial since a failure or malfunction may result in death or serious injuries to people, equipment, or environment. An important challenge in testing is the derivation of test cases that can identify the potential faults. Model-based testing adopts models of a system under test and/or its environment to derive test artifacts. This paper aims to provide a systematic mapping study to identify, analyze, and describe the state-of-the-art advances in model-based testing for software safety. The systematic mapping study is conducted as a multi-phase study selection process using the published literature in major software engineering journals and conference proceedings. We reviewed 751 papers and 36 of them have been selected as primary studies to answer our research questions. Based on the analysis of the data extraction process, we discuss the primary trends and approaches and present the identified obstacles. This study shows that model-based testing can provide important benefits for software safety testing. Several solution directions have been identified, but further research is critical for reliable model-based testing approach for safety.  相似文献   

6.
Molecular biology's advent in the 20th century has exponentially increased our knowledge about the inner workings of life. We have dozens of completed genomes and an array of high-throughput methods to characterize gene encodings and gene product operation. The question now is how we will assemble the various pieces. In other words, given sufficient information about a living cell's molecular components, can we predict its behavior? We introduce the major classes of cellular processes relevant to modeling, discuss software engineering's role in cell simulation, and identify cell simulation requirements. Our E-Cell project aims to develop the theories, techniques, and software platforms necessary for whole-cell-scale modeling, simulation, and analysis. Since the project's launch in 1996, we have built a variety of cell models, and we are currently developing new models that vary with respect to species, target subsystem, and overall scale.  相似文献   

7.
Model-based and qualitative reasoning: An introduction   总被引:1,自引:0,他引:1  
Knowledge-based systems which use an explicit model of the subject they reason about are an important area in current research on Artificial Intelligence (AI). This paper surveys some of the important techniques that have been applied to qualitatively model physical systems and explains principles of model-based reasoning in diagnostic systems. (Date of reference: 1993.) This revised version was published online in June 2006 with corrections to the Cover Date.  相似文献   

8.
IPTES: A concurrent engineering approach for real-time software development   总被引:2,自引:2,他引:0  
The constantly increasing concurrency, complexity, and risks associated with the industrial development of real-time embedded computer systems has been approached in different ways in recent years. In Esprit project no. EP5570, called IPTES, a methodology and a supporting environment to support the Boehm's spiral process are being developed. The prototyping environment will enable the specification, development, and verification of executable system models so that different parts of the system may represent different modeling levels and yet can be executed as a total system. Concurrent engineering problems in connection with multi-supplier, distributed software development are also addressed in the IPTES environment. In the IPTES project the concept of heterogeneous prototyping is proposed as a solution. Each of the development teams may use relatively abstract models of the other parts of the systems as a testbed (environment model) for their own part, yet they can proceed developing their own part full speed by means of advancing the maturity of their part to the next abstraction level(s). The IPTES environment provides a set of tools to help in the process of creating, analyzing, and testing distributed heterogeneous prototypes.  相似文献   

9.

Software development is a complex process in which it is all too easy to introduce errors or faults that can be extremely difficult to identify . However , there has been little research into the use of intelligent diagnostic techniques for software ( as compared to hardware , for example ). Therefore , applying such techniques to software is potentially extremely useful . In many cases the presence of a bug is only identified when an invalid result is observed . However , the task of identifying the software elements that may have contributed to this result can be a time - consuming and tedious task , but must be performed before the actual root cause can be identified and a repair effected . This operation is akin to fault localization within hardware diagnosis and has been the subject of extensive research within the model - based community . This article presents a technique that minimizes the tedious task of fault localization with the software system , leaving the developer to concentrate on identifying the root cause and remedial action . In particular , we treat diagnosis as a trial with witnesses for the prosecution and defense . The result is a diagnostic trial that uses the source code of a system as its model and knowledge of valid and invalid results ( victims ) to identify a set of suspects for a developer to investigate further .  相似文献   

10.
Search-based software engineering (SBSE) solutions are still not scalable enough to handle high-dimensional objectives space. The majority of existing work treats software engineering problems from a single or bi-objective point of view, where the main goal is to maximize or minimize one or two objectives. However, most software engineering problems are naturally complex in which many conflicting objectives need to be optimized. Software refactoring is one of these problems involving finding a compromise between several quality attributes to improve the quality of the system while preserving the behavior. To this end, we propose a novel representation of the refactoring problem as a many-objective one where every quality attribute to improve is considered as an independent objective to be optimized. In our approach based on the recent NSGA-III algorithm, the refactoring solutions are evaluated using a set of 8 distinct objectives. We evaluated this approach on one industrial project and seven open source systems. We compared our findings to: several other many-objective techniques (IBEA, MOEA/D, GrEA, and DBEA-Eps), an existing multi-objective approach a mono-objective technique and an existing refactoring technique not based on heuristic search. Statistical analysis of our experiments over 31 runs shows the efficiency of our approach.  相似文献   

11.
The knowledge-representation and compilation techniques used in a model-based, automatic software synthesis environment are discussed. The environment was used to build Caddmus, a system with more than 250 cooperating processes. The real-time execution environment automatically generates a macro-dataflow computation from declarative models. Central to the approach is the Multigraph Architecture, which provides the framework for model-based synthesis in real-time, parallel-computing environments. Application of Caddmus to analysis of all data related to testing new and redesigned turbine engines is described  相似文献   

12.
A software architecture centric engineering approach for Internetware   总被引:13,自引:0,他引:13  
As a new software paradigm evolved by the Internet, Internetware brings many challenges for the traditional software development methods and techniques. Though architecture-based component composition (ABC) approach is originated in the traditional software paradigm, it supports the engineering of Internetware effectively due to its philosophy, rationales and mechanisms. ABC has three major contributions to the en- gineering of Internetware in detail. First, the feature oriented domain modeling method can structure the “disordered”“software entities” to “ordered Internetware” bottom-up in the problem space. Second, the architecture centric design and analysis method can support the development of self-adaptive Internetware. Third, the component operating platform is a reflective and self-adaptive middleware that not only provides Internetware with a pow- erful and flexible runtime infrastructure but also enables the self-adaptation of the structure and individual entities of Internetware.  相似文献   

13.
In order to plan, control, and evaluate the software development process, one needs to collect and analyze data in a meaningful way. Classical techniques for such analysis are not always well suited to software engineering data. A pattern recognition approach for analyzing software engineering data, called optimized set reduction (OSR), that addresses many of the problems associated with the usual approaches is described. Methods are discussed for using the technique for prediction, risk management, and quality evaluation. Experimental results are provided to demonstrate the effectiveness of the technique for the particular application of software cost estimation  相似文献   

14.
Developing and evolving today’s systems are often stymied by the sheer size and complexity of the capabilities being developed and integrated. At one end of the spectrum, we have sophisticated agent-based software with hundreds of thousands of collaborating nodes. These require modeling abstractions relevant to their complex workflow tasks as well as predictable transforms and mappings for the requisite elaborations and refinements that must be accomplished in composing these systems. At the other end of the spectrum, we have ever-increasing capabilities of reconfigurable hardware devices such as field-programmable gate arrays to support the emerging adaptability and flexibility needs of these systems. From a model-based engineering perspective, these challenges are very similar; both must move their abstraction and reuse levels up to meet growing productivity and quality objectives. Model-based engineering and software system variants such as the model-driven architecture (MDA) are increasingly being applied to systems development as the engineering community recognizes the benefits of managing complexity, separating key concerns, and automating transformations from high-level abstract requirements down through the implementation. However, there are challenges when it comes to establishing the correct boundaries for change-tolerant parts of the system. Capabilities engineering (CE) is a promising approach for defining long-lived components of a system to ensure some sense of change tolerance. For innovative initiatives such as the National Aeronautics and Space Administration (NASA)’s autonomous nanotechology swarms (ANTS), the development and subsequent evolution of such systems are of considerable importance as their missions involve complex, collaborative behaviors across distributed, reconfigurable satellites. In this paper, we investigate the intersection of these two technologies as they support the development of complex, change-tolerant systems. We present an effective approach for bounding computationally independent models so that, as they transition to the architecture, capabilities-based groupings of components are relevant to the change-tolerant properties that must convey in the design solution space. The model-based engineering approach is validated via a fully functional prototype and verified by generating nontrivial multiagent systems and reusing components in subsequent systems. We build off of this research completed on the collaborative agent architecture, discuss the CE approach for the transition to architecture, and then examine how this will be applied in the reconfigurable computing community with the new National Science Foundation Center for High-Performance Reconfigurable Computing. Based on this work and extrapolating from similar efforts, the model-based approach shows promise to reduce the complexities of software evolution and increase productivity—particularly as the model libraries are populated with canonical components.  相似文献   

15.
Over the last decade, a lot of research has been directed toward integrating performance analysis into the software development process. Traditional software development methods focus on software correctness, introducing performance issues later in the development process. This approach does not take into account the fact that performance problems may require considerable changes in design, for example, at the software architecture level, or even worse at the requirement analysis level. Several approaches were proposed in order to address early software performance analysis. Although some of them have been successfully applied, we are still far from seeing performance analysis integrated into ordinary software development. In this paper, we present a comprehensive review of recent research in the field of model-based performance prediction at software development time in order to assess the maturity of the field and point out promising research directions.  相似文献   

16.
李苗在 《计算机应用研究》2011,28(12):4604-4606
传统的可信性评估模型通常使用软件度量医逻辑验证方法进行定量估计,在应用于体系结构复杂、可信度要求较高的嵌入式软件时,依然存在可信需求不明确、专家主观认知无法集成等问题.在分析嵌入式软件可信需求的基础上,构建一种基于证据推理方法的嵌入式软件可信性评估模型,并定义证据合成算子和效用估算模型以实现多样化可信证据的一致融合与量化.仿真实验验证了该模型在解决嵌入式软件可信性评估问题时的合理性与有效性.  相似文献   

17.
The common presupposition of enterprise systems (ES) is that they lead to significant efficiency gains. However, this is only the case for well-implemented ES that are well-aligned with the organisation. The list of ES implementation failures is significant which is partly attributable to the insufficiently addressed fundamental problem of adapting an ES efficiently. As long as it is not intuitively possible to configure an ES, this problem will prevail because organisations have a non-generic character. A solution to this problem consists in re-thinking current practices of ES provision. This paper proposes a new approach based on configurable process models, which reflect ES functionalities. We provide in this paper a taxonomy of situations that can occur from a business perspective during process model configuration. This taxonomy is represented via so-called semantic configuration patterns. In the next step, we discuss so-called syntactic configuration patterns. This second type of configuration patterns implements the semantic configuration patterns for specific modelling techniques. We chose two popular process modelling languages in order to illustrate our approach.  相似文献   

18.
Requirements Engineering - By increasing the importance of the performance in industrial and business software systems, efficient approaches to model-based performance engineering are becoming an...  相似文献   

19.
Model-based data engineering for Web services   总被引:1,自引:0,他引:1  
Although XML offers heterogeneous IT systems a new level of interoperability, it doesn't ensure that the various systems correctly interpret the data they receive. To address this, data engineering supports clear definitions for exchanged data elements. With model-based data engineering, organizations use a common reference model, which offers further clarity and performance improvements. Organizations can use the resulting data to configure mediation services, translating dialects of new or legacy services into a common language for use in a service-oriented architecture.  相似文献   

20.
Selecting software technologies for software projects represents a challenge to software engineers. It is known that software projects differ from each other by presenting different characteristics that can complicate the selection of such technologies. This is not different when considering model-based testing. There are many approaches with different characteristics described in the technical literature that can be used in software projects. However, there is no indication as to how they can fit a software project. Therefore, a strategy to select model-based testing approaches for software projects called Porantim is fully described in this paper. Porantim is based on a body of knowledge describing model-based testing approaches and their characterization attributes (identified by secondary and primary experimental studies), and a process to guide by adequacy and impact criteria regarding the use of this sort of software technology that can be used by software engineers to select model-based testing approaches for software projects.  相似文献   

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

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