100 research outputs found
CARDS: A blueprint and environment for domain-specific software reuse
CARDS (Central Archive for Reusable Defense Software) exploits advances in domain analysis and domain modeling to identify, specify, develop, archive, retrieve, understand, and reuse domain-specific software components. An important element of CARDS is to provide visibility into the domain model artifacts produced by, and services provided by, commercial computer-aided software engineering (CASE) technology. The use of commercial CASE technology is important to provide rich, robust support for the varied roles involved in a reuse process. We refer to this kind of use of knowledge representation systems as supporting 'knowledge-based integration.
To boldly go:an occam-Ļ mission to engineer emergence
Future systems will be too complex to design and implement explicitly. Instead, we will have to learn to engineer complex behaviours indirectly: through the discovery and application of local rules of behaviour, applied to simple process components, from which desired behaviours predictably emerge through dynamic interactions between massive numbers of instances. This paper describes a process-oriented architecture for fine-grained concurrent systems that enables experiments with such indirect engineering. Examples are presented showing the differing complex behaviours that can arise from minor (non-linear) adjustments to low-level parameters, the difficulties in suppressing the emergence of unwanted (bad) behaviour, the unexpected relationships between apparently unrelated physical phenomena (shown up by their separate emergence from the same primordial process swamp) and the ability to explore and engineer completely new physics (such as force fields) by their emergence from low-level process interactions whose mechanisms can only be imagined, but not built, at the current time
Recommended from our members
Designing for Incentives: Better Information Sharing for Better Software Engineering
Software-reliant systems permeate all aspects of modern society. The resulting interconnectedness and associated com- plexity has resulted in a proliferation of diverse stakeholders with conflicting goals. Thus, contemporary software engi- neering is plagued by incentive conflicts, in settling on design features, allocating resources during the development of products, and allocating computational resources at run- time. In this position paper, we describe some of these problems and outline a research agenda in bridging to the economic theory of mechanism design, which seeks to align incentives in multi-agent systems with private information and conflicting goals. The ultimate goal is to advance a principled methodology for the design of incentive-compatible approaches to manage the dynamic processes of software engineering.Engineering and Applied Science
Assurance Cases for Proofs as Evidence
Proof-carrying code (PCC) provides a 'gold standard' for establishing formal and objective confidence in program behavior. However, in order to extend the benefits of PCC - and other formal certification techniques - to realistic systems, we must establish the correspondence of a mathematical proof of a program's semantics and its actual behavior. In this paper, we argue that assurance cases are an effective means of establishing such a correspondence. To this end, we present an assurance case pattern for arguing that a proof is free from various proof hazards. We also instantiate this pattern for a proof-based mechanism to provide evidence about a generic medical device software
A Technology for Predictable Assembly from Certifiable Components
Internal use. Permission to reproduce this document and to prepare derivative works from this document for internal use is granted, provide the copyright and āNo Warranty ā statements are included with all reproductions and derivative works. External use. Requests for permission to reproduce this document or prepare derivative works of this document for external and commercial use should be addressed to the SEI Licensing Agent
FOR THE COMMANDER
Unlimited distribution subject to the copyright. This report was prepared for th
Distributed Object Technology With CORBA and Java: Key Concepts and Implications
: The purpose of this report is to analyze the potential impact of distributed object technology (DOT) on software engineering practice. The analysis culminates with the conclusion that the technology will have a significant influence on both the design and reengineering of information systems and the processes used to build them. We see a profound impact and fundamental change in both technical thinking and practice as a result of the related technologies we group together as DOT. 1 Introduction Distributed object technology (DOT) is defined quite broadly for the purposes of this report. We consider it to include three technologies that have synergistically merged to provide something quite powerful---something greater than the sum of their parts.Those three technologies, in order of their emergence, are . object technology . distribution technology . Web technology Object technology (OT) was introduced to the computing mainstream in the late 1970s by Adele Goldberg and Alan Kay w..
- ā¦