首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 0 毫秒
1.
Pat Allen  Alan Burns 《Software》1988,18(12):1125-1138
Program generation software is increasingly being used, not only to assist non-computer professionals to produce their own applications, but also to provide tools for programmers and designers. As part of the toolkit for an Ada dialogue development system, a program generator has been written in Ada to generate the package which codes the dialogue manager for a specified user interface. The input specifications and the method of generation are described. The advantages and disadvantages of Ada as the implementation, target and specification language are discussed.  相似文献   

2.
Program development can be greatly speeded by a dump analysis program which makes the state of a program more visible to the programmer. A single comprehensive analysis presenting as much of the relevant material in as concise a manner as possible has proved superior in use to the alternative of interactive analysis one item-at-a-time. The methods adopted in the STAB utility to achieve comprehensive and concise output are described. The system and compiler modifications necessary to support this type of system are discussed.  相似文献   

3.
When updating a knowledge base, several problems may arise. One of the most important problems is that of integrity constraints satisfaction. The classic approach to this problem has been to develop methods forchecking whether a given update violates an integrity constraint. An alternative approach consists of trying to repair integrity constraints violations by performing additional updates thatmaintain knowledge base consistency. Another major problem in knowledge base updating is that ofview updating, which determines how an update request should be translated into an update of the underlying base facts. We propose a new method for updating knowledge bases while maintaining their consistency. Our method can be used for both integrity constraints maintenance and view updating. It can also be combined with any integrity checking method for view updating and integrity checking. The kind of updates handled by our method are: updates of base facts, view updates, updates of deductive rules, and updates of integrity constraints. Our method is based on events and transition rules, which explicity define the insertions and deletions induced by a knowledge base update. Using these rules, an extension of the SLDNF procedure allows us to obtain all possible minimal ways of updating a knowledge base without violating any integrity constraint.  相似文献   

4.
This paper describes DAVE, a system for analysing Fortran programs. DAVE is capable of detecting the symptoms of a wide variety of errors In programs, as well as assuring the absence of these errors. In addition, DAVE exposes and documents subtle data relations and flows within programs. The central analytic procedure used is a depth first search. DAVE itself is written in Fortran. Its implementation at the University of Colorado and some early experience are described.  相似文献   

5.
Metal-level compositions of object logic programs are naturally implemented by means of meta-programming techniques. Metainterpreters defining program compositions however suffer from a computational overhead that is due partly to the interpretation layer present in all meta-programs, and partly to the specific interpretation layer needed to deal with program compositions. We show that meta-interpreters implementing compositions of object programs can be fruitfully specialised w.r.t. meta-level queries of the form Demo (E, G), where E denotes a program expression and G denotes a (partially instantiated) object level query. More precisely, we describe the design and implementation of declarative program specialiser that suitably transforms such meta-interpreters so as to sensibly reduce — if not to completely remove — the overhead due to the handling of program compositions. In many cases the specialiser succeeds in eliminating also the overhead due to meta-interpretation. Antonio Brogi, Ph.D.: He is currently assistant professor in the Department of Computer Science at the University of Pisa, Italy. He received his Laurea Degree in Computer Science (1987) and his Ph. D. in Computer Science (1993) from the University of Pisa. His research interests include programming language design and semantics, logic programming, deductive databases, and software coordination. Simone Contiero: He is currently a Ph. D. student at the Department of Computer Science, University of Pisa (Italy). He received his Laurea Degree in Computer Science from the University of Pisa in 1994. His research interests are in high-level programming languages, metaprogramming and logic-based coordination of software.  相似文献   

6.
A system has been implemented that enables students on a programming course to hand in programs for assessment without the need for printed listings to be generated. The system test runs all submitted programs using standard sets of data, and then facilitates the marking of these programs by the staff teaching the course. The implementation of this system is described, and the experience gained from using it is discussed.  相似文献   

7.
随着计算机在各个行业中的广泛运用和计算机科学技术的迅猛发展,软件维护成本在整个系统生命周期成本中占有越来越大的份额。本文针对现有的编辑工具中替换功能不支持通配符和多行替换等问题,提出了一套用于软件维护的程序更新方法。利用这一方法能有效地提高软件维护业务的效率,降低维护成本。  相似文献   

8.
The essential components of an effective program development environment are described. These assist in the interactive investigation of program behaviour and accelerate the rate at which programs are modified. The whole system is compact and simple, being designed for use on small machines. It is considered as important to understand how to use these tools as it is to provide them.  相似文献   

9.

Context

Practitioners may use design patterns to organize program code. Various empirical studies have investigated the effects of pattern deployment and work experience on the effectiveness and efficiency of program maintenance. However, results from these studies are not all consistent. Moreover, these studies have not considered some interesting factors, such as a maintainer’s prior exposure to the program under maintenance.

Objective

This paper aims at identifying what factors may contribute to the productivity of maintainers in the context of making correct software changes when they work on programs with deployed design patterns.

Method

We performed an empirical study involving 118 human subjects with three change tasks on a medium-sized program to explore the possible effects of a suite of six human and program factors on the productivity of maintainers, measured by the time taken to produce a correctly revised program in a course-based setting. The factors we studied include the deployment of design patterns and the presence of pattern-unaware solutions, as well as the maintainer’s prior exposure to design patterns, the subject program and the programming language, and prior work experience.

Results

Among the factors under examination, we find that the deployment of design patterns, prior exposure to the program and the presence of pattern-unaware solutions are strongly correlated with the time taken to correctly complete maintenance tasks. We also report some interesting observations from the experiment.

Conclusion

A new factor, namely, the presence of pattern-unaware solutions, contributes to the efficient completion of maintenance tasks of programs with deployed design patterns. Moreover, we conclude from the study that neither prior exposure to design patterns nor prior exposure to the programming language is supported by sufficient evidences to be significant factors, whereas the subjects’ exposure to the program under maintenance is notably more important.  相似文献   

10.
There is an increasing need to operate computers in a real-time environment whereby the solution path of the task cannot be pre-determined. Such problems (eg intelligent process control, vision understanding, data fusion etc.) can be solved with an expert system approach that may necessitate interaction with procedural processes. Since expert systems are in general more effectively implemented in declarative languages (eg Lisp, Prolog, Hope), the requirement exists for a powerful AI Computer capable of executing declarative languages and, if necessary, directing the operation of real-time equipment.

The Declarative Language Machine (DLM) is a dedicated operational computer designed and built by Bristish Aerospace for this purpose and incorporates the following key features:

1. (1) Prolog execution rate of 620 KLIPS (the DLM is believed to be the fastest AI computer in the world).
2. (2) Direct support for real-time operation and interaction with real-time equipment.
3. (3) Capability for the efficient execution of Prolog, Parlog, Hope and Lisp.
4. (4) Capable of being a stand-alone computer or embedded within host equipment.
5. (5) Floating-point co-processor for arithmetic operations.

This paper describes the architecture of the DLM  相似文献   


11.
The paper proposes an algebraic representation of program modules, called F(p), and illustrates the algorithms that use F(p) to generate program graph models for measurement, documentation and testing activities. The representation refers to procedural languages, D-structured programs and one-in/one-out modules but its definition can be extended to programs structured in terms of an arbitrary set of one-in/one-out legal control structures. Since it is possible to produce F(p) directly from the program code using reverse engineering techniques, the algorithms proposed are of considerable interest for the setting up of tools supporting the program comprehension phase, which is a fundamental first step in any maintenance operation.  相似文献   

12.
Michael J. Spier 《Software》1976,6(3):293-299
A sequence of events is described, leading to the severe deterioration of an initially well conceived and cleanly implemented compiler. It is shown how an initial “optimization” implanted a latent bug in the compiler, how the bug was subsequently activated through innocent compiler modification, and how the compiler then deteriorated because of the incompetent correction of the bus manifestation. This exceedingly negative case history is presented in the hope of conveying to the reader a better feeling for the complex problems inherent to industrial software production and maintenance. The difficulty in proposing any constructive (and complete!) software engineering methodology is known and acknowledged; the study of an episode such as described in this paper might help put the difficulties, with which we are confronted, into better perspective.  相似文献   

13.
The applicability of program schema results to programs   总被引:6,自引:0,他引:6  
Several classes of programs, which are the analogues of previously investigated classes of program schemas, are defined. Decidability and translatability questions are considered for these classes of programs, as well as the applicability of these results to the theories of optimization and program testing. The usefulness of the schema model is studied by considering the inheritability of schema properties by programs, and conversely, the inheritability of program properties by schemas.  相似文献   

14.
15.
Logistics functions directly support the principal operation. In the international petroleum industry they mainly are maintenance, materials and transport. CALM is a microcomputer system which integrates the arrangement of these functions. It operates at the plant level.

There are six CALM subsystems: 1) equipment control; 2) maintenance work control; 3) materials control; 4) transport control; 5) budgeting and costs and 6) management reporting.

CALM is a collection of relational data bases and application programs. Its modules are distributed and are under user control. Data bases are designed for three organizational levels: 1) local area networks on microcomputers at the user level (CALM ); 2) relational data bases on minicomputers at the plant level and 3) relational data bases on main frame computers at the corporate level. This is said to be a 3-level computer system. Data base design is optimized over the three levels.

System integration requires strict discipline over the design of identification codes (equipment, spare parts, job plans, job orders, failure reports, etc.). The paper suggests standard code formats which have proved to be successful in industry.

Besides CALM, integrated systems from four multinational oil companies are discussed. Design errors experienced in these projects are described. Specific design precautions are emphasized.  相似文献   


16.
GD3 is a system for graphic input and output, which has been developed at CERN over the past several years primarily for the laboratory's scientific community. An important feature of the system is the production of an intermediate data file called the “display file”, which allows a user's program to be truly device independent. The system is written largely in FORTRAN and although the main implementation has been on CDC 7000/6000 series computers at CERN, it has also been implemented on other machines both within CERN and at laboratories outside CERN.

The main facilities available to the user are described including the system's interactive capabilities. Use has also been made of GD3 to provide the graphics part of other special user oriented packages developed at CERN.  相似文献   


17.
对机房集中监控系统三级监控单元SU、SC、SS所使用的各种物理设备的类型及其原理进行分析,提出有针对性的物理设备故障检测技术及日常维护方法。所探讨的这些故障检测技术及维护方法,均经过实践证明具有高准确度,可以为机房维护人员准确分析设备故障状态提供参考,及时有效地采取措施,提高工作效率和降低维护费用。  相似文献   

18.
This paper presents a syntax-directed editor dubbed SRE, for syntax recognizing editor. Unlike other syntax-directed editors, SRE enables the user to edit programs with nearly the same natural and unrestrictive ease as a conventional text editor. In addition, it helps identify syntax errors and many typing errors before leaving the editor and attempting to compile a program. Programs are also formatted during entry, thereby providing immediate visual feedback of the recognized structure. The editor replaces the scanner/parser pass of a conventional compiler and thus reduces compilation time substantially.  相似文献   

19.
D. C. Ince 《Software》1985,15(6):583-594
Program design languages are an increasingly important method of expressing the detailed design of a software system. Such languages can be modelled using a data structure known as a semantic net. This paper describes a maintenance tool for program design languages based on such a data structure. The tool allows the user to interrogate a semantic net using an interactive procedural language in order to derive information necessary for software maintenance. The technique upon which this tool is based is applicable to the maintenance of activities throughout the software lifecycle.  相似文献   

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

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