The paper reports on the underlying concepts of a system for software reverse engineering. Although, the immediate goal is translation from CMS-2 to Ada, the system is envisaged more broadly as a comprehensive environ...
详细信息
ISBN:
(纸本)0897914457
The paper reports on the underlying concepts of a system for software reverse engineering. Although, the immediate goal is translation from CMS-2 to Ada, the system is envisaged more broadly as a comprehensive environment for the software lifecycle: for initial development, maintenance, re-engineering and re-documentation. This environment must assure consistency at all times of design, programs and documentation. The paper describes the three phases of the system: Extracting design and documentation from existing software. User visualization and design/redesign of the software. Ada program generation from design/redesign. The first phase translates source programs into an object-oriented Entity-Relation-Attribute (ERA) diagram, which is the main vehicle for the graphic visualization. The translation uses a concise set of objects and relations. The second phase consists of user query and retrieval of subdiagrams that provide views of the software, needed to visualize or redesign specific aspects of the software. This phase is divided into in-the-large and in-the-small parts. The in-the-large part involves high level objects such as: systems, packages, tasks, procedures (or functions), external variables, input/output and comments that specify requirements or provide explanations. The user may need to use design tools that optimize the design. The in-the-small part consists of execution statements within an individual program unit. These are translated into the MODEL equational language and visualized through a petri-net like graph. The equational representation is considerably easier to comprehend, test and verify. Finally, the code generation phase uses the graphics and text from the previous phase to generate respective parts of Ada programs. There are three code generators, as follows: Packages are generated from object usage views. Tasks are generated from dataflow views. Individual procedures are generated from equations and petri-net like diagrams. The approac
When a program for the construction of a product by a flexible assembly cell is automatically derived from a CAD drawing, this may give rise to problems. To help the programming process additional input by an expert w...
详细信息
ISBN:
(纸本)0897913728
When a program for the construction of a product by a flexible assembly cell is automatically derived from a CAD drawing, this may give rise to problems. To help the programming process additional input by an expert will be very practical. In this paper a description is given of how to handle the input of additional information with a user interface. This user interface consists of two parts: an instruction interpreter and a dialogue system. With the instruction interpreter the expert can give advice on (details of the) the cell program;with the dialogue system the programming system itself can ask the expert for solutions of problems it encounters. When the expert uses the instruction interpreter or communicates with the dialogue system, he may use a subset of English, which facilitates the communication.
A design for AGNA, a persistent object system that utilizes parallelism in a fundamental way to enhance performance, is presented. The underlying thesis is that fine-grained parallelism is essential for achieving scal...
详细信息
ISBN:
(纸本)0818621389
A design for AGNA, a persistent object system that utilizes parallelism in a fundamental way to enhance performance, is presented. The underlying thesis is that fine-grained parallelism is essential for achieving scalable performance on parallel multiple instruction/multiple data (MIMD) machines. This, in turn, implies a data-driven model of computation for efficiency. The complete design based on these principles starts with a declarative source language because such languages reveal the most fine-grained parallelism. It is described how transactions are compiled into an abstract, fine-grained parallel machine called P-RISC. The P-RISC virtual heap is implemented in the memory and disks of a parallel machine in such a way that paging is overlapped with useful computation. The current implementation status is described, some preliminary performance results are reported and the approach presented is compared to several recent parallel database system projects.
The joint action approach to modeling of reactive systems is presented and augmented with real time. This leads to a stepwise design method where temporal logic of actions can be used for formal reasoning, superpositi...
详细信息
An object model for structural analysis and design is described. Although the model is developed for two-dimensional, steel frame structures subject to static loads, its basis is general and it can be extended for mor...
详细信息
ISBN:
(纸本)096261047X
An object model for structural analysis and design is described. Although the model is developed for two-dimensional, steel frame structures subject to static loads, its basis is general and it can be extended for more complex structures. The model provides natural support for a hierarchical decomposition of structures. Three fundamental characteristics of the model are a top-down model definition, a consistent treatment of structural and nonstructural members, and unlimited nesting of substructures. Although the analysis capabilities are relatively full-featured, only limited design and drawing functionality has been considered. implementation of the model in an object-oriented programminglanguage is described.
SKILL is a programminglanguage that supports both command entry and procedural customization in OpusTM design FrameworkTM. After briefly considering some related work, we examine the requirements that motivate the pr...
ISBN:
(纸本)9780897913638
SKILL is a programminglanguage that supports both command entry and procedural customization in OpusTM design FrameworkTM. After briefly considering some related work, we examine the requirements that motivate the provision of a programminglanguage available to the user and describe some of the technical characteristics of the languagedesign and implementation. Finally, we describe our experience with the language and outline future work. A number of programming examples are appended.
The design and implementation of a database modeling aid called Database designer (DBD) using VP-Expert are discussed. The DBD expert system is intended to help novice users design a proper database by asking question...
详细信息
The design and implementation of a database modeling aid called Database designer (DBD) using VP-Expert are discussed. The DBD expert system is intended to help novice users design a proper database by asking questions of the user and thus incrementally building a structure for an extended entity relationship (ER) diagram. The authors discuss their approach to system design for DBD and implementation issues specific to VP-Expert, such as combining backward chaining and forward chaining, procedural techniques, and transparency and visibility of VP-Expert statements. This study indicates that applying a systematic, structural approach, properly commenting the code, and logically grouping rules can make an expert system programming approach viable for designing a complex procedural design application like DBD.< >
Dataparallel C is a SIMD programminglanguage suitable for solving many problems arising in science and engineering. We have developed compilers that translate Dataparallel C programs into C code that can be compiled ...
详细信息
Dataparallel C is a SIMD programminglanguage suitable for solving many problems arising in science and engineering. We have developed compilers that translate Dataparallel C programs into C code that can be compiled and executed on multicomputers and multiprocessors. We describe the Dataparallel C programminglanguage, the implementation of three scientific programs in Dataparallel C, and the performance of the compiled programs on three MIMD computers: the Intel iPSC/2, the nCUBE 3200, and the Sequent Symmetry S81. These case studies-an ocean circulation model, the "shallow-water" atmospheric model, and the Sharks World model-illustrate that nontrivial SIMD programs can achieve good speedup on MIMD computers and still be portable.
The proceedings contain 29 papers. The topics discussed include: improving register allocation for subscripted variables;profile guided code positioning;fast breakpoints: design and implementation;representing control...
ISBN:
(纸本)0897913647
The proceedings contain 29 papers. The topics discussed include: improving register allocation for subscripted variables;profile guided code positioning;fast breakpoints: design and implementation;representing control in the presence of first-class continuations;register allocation across procedure and module boundaries;graph coloring register allocation for processors with multi-register operands;two-directional record layout for multiple inheritance;fast code generation using automatically-generated decision trees;task granularity analysis in logic programs;how to print floating-point numbers accurately;compilation of Haskell array comprehensions for scientific computing;iterative type analysis and extended message splitting: optimizing dynamically-typed object-oriented programs;type-dependent parameter inference;generators and the replicator control structure in the parallel environment of ALLOY;and higher-order attribute grammars and editing environments.
This conferenceproceedings contains 30 papers. The main subjects are code generation, code positioning, register allocation, representing control, program optimization, floating-point numbers accurately, optimizing d...
详细信息
ISBN:
(纸本)0897913647
This conferenceproceedings contains 30 papers. The main subjects are code generation, code positioning, register allocation, representing control, program optimization, floating-point numbers accurately, optimizing dynamically-typed object-oriented programs, higher-order attribute grammars and editing environments, program and data dependence, demand-driven interpretation of imperative languages, analysis of pointers and structures, and compact representations for control dependence.
暂无评论