This article presents a memory-based approach in recognizing computer programming plans. Automated program understanding can be viewed as the process of automatically extracting design knowledge from source code. The ...
详细信息
This article presents a memory-based approach in recognizing computer programming plans. Automated program understanding can be viewed as the process of automatically extracting design knowledge from source code. The interest lies in automatically extracting object-oriented design knowledge to support translating C programs to C++. In particular, the main interest is in recognizing common objects and operations in C programs and replacing them with libraries containing human-generated object-oriented code written in C++. A small group of student programmers attempting to understand a set of geometrically related functions was studied. The student programmers did not match every program action against every programming plan that might contain it. Instead, they tried to recognize a program plan only when they were reminded of it by a combination of program actions or program plans. The study suggests an organization for the plan library; a collection of discrimination nets of plans at various levels of abstraction with explicit indices from different classes of program components to entries in these nets.
The Automated Class Exerciser (ACE) tool has been fundamental in gaining developer acceptance of cluster and class testing, since it permits developers to focus on the specification of test cases themselves, rather th...
详细信息
The Automated Class Exerciser (ACE) tool has been fundamental in gaining developer acceptance of cluster and class testing, since it permits developers to focus on the specification of test cases themselves, rather than on the specification of the test harness. Moreover, the use of the tool provides a means to easily perform regression testing of when a class is modified. Finally, the ACE test scripts provide a specification of cluster and class test cases in a format that is easy to review. Authors have found the combination of class, cluster, and system testing described in this article to be successful both in uncovering more defects earlier in the life cycle during the development of new features and in uncovering defects lurking in existing software during maintenance. They intend to continue refining their tools to further automate the execution of cluster test plans. They also intend to investigate the cost/benefit trade-offs of sufficient testing of reusable clusters and classes.
This article describes a case study involving information technology managers and their new programmer recruitment policy, but the primary interest is methodological. The processes of issue generation and selection an...
详细信息
This article describes a case study involving information technology managers and their new programmer recruitment policy, but the primary interest is methodological. The processes of issue generation and selection and model conceptualization are described. Early use of ''magnetic hexagons'' allowed the generation of a range of issues, most of which would not have emerged if system dynamics elicitation techniques had been employed. With the selection of a specific issue, flow diagraming was used to conceptualize a model, computer implementation and scenario generation following naturally. Observations are made on the processes of system dynamics modeling, particularly on the need to employ general techniques of knowledge elicitation in the early stages of interventions. It is proposed that flexible approaches should be used to generate, select, and study the issues, since these reduce any biasing of the elicitation toward system dynamics problems and also allow the participants to take up the most appropriate problem-structuring approach.
This article discusses the role of computers in the field of education in the U.S. computer use in schools began during the year 1960 in the U.S. In the year 1970, the idea that all students should learn about basic c...
详细信息
This article discusses the role of computers in the field of education in the U.S. computer use in schools began during the year 1960 in the U.S. In the year 1970, the idea that all students should learn about basic computer applications began to emerge. A nationally distributed report recommended the establishment of a required computer literacy course to be offered at the junior high school level. It suggested that the more mathematically able students should receive instruction in computer programming while less mathematically able students should instead receive hands-on experience in using computer applications. During that time, relatively inexpensive time-shared computing systems were becoming widely available, and such computing facilities were gradually entering precollege education. This analysis suggests that two computer-in-education conflicts emerged quite early. One between those advocating increased use of computer-assisted instruction and those advocating the teaching of computer programming; the other between those advocating the teaching of computer applications and those advocating the teaching of computer programming.
The article focuses on designing and development of next generation of application software. programmers at the Academic Computing Department at the Summer Institute of Linguistics in Dallas, Texas, have been building...
详细信息
The article focuses on designing and development of next generation of application software. programmers at the Academic Computing Department at the Summer Institute of Linguistics in Dallas, Texas, have been building a software that would facilitate understanding for the past three years. The result is called CELLAR (Computing Environment for Linguistic, Literary and Anthropological Research). One of the key technologies in CELLAR is a set of fundamental extensions to the object-oriented approach to software development. Having decided what would be necessary for excellent applications support, the designers decided that these things should be implemented in the innermost parts of the system. This makes things like multiple views of information available through an application, at any level of granularity. The resulting architecture uses an extended object model. CELLAR is a marriage of database and document technologies. The underlying implementation of CELLAR supports editing operations on information displayed in views, so that each view defines a structured editor for the object class.
AbstractTo make microcomputers serve development requires clear vision and leadership on the part of administrators. The assimilation of this technology for government tasks is no longer dependent on cost reductions o...
详细信息
AbstractTo make microcomputers serve development requires clear vision and leadership on the part of administrators. The assimilation of this technology for government tasks is no longer dependent on cost reductions or computer programmers. Rather, it requires administrators to make an explicit choice of software to integrate hardware, information and decisions. At the operational level this process is not a mere technology adoption exercise and is based on three factors—adapting standard packages that are within the reach of even the least developed countries; information specialists and end‐users jointly determining data structures; and integration of microcomputers into existing administrative functions. A decision support system for district administrators developed in India is discussed. The paper concludes with lessons for first time users so that development administrators, aid agencies and governments avoid costly mista
Three experiments were conducted to test the role that semantic knowledge plays in expert programmer ability. In Experiments 1 and 2, changing the normal semantic structure affected experts more than novices, although...
详细信息
Three experiments were conducted to test the role that semantic knowledge plays in expert programmer ability. In Experiments 1 and 2, changing the normal semantic structure affected experts more than novices, although experts still outperformed novices. Experiment 3 showed that the experts' advantage was not due merely to their better knowledge of the keywords used in the programming languages. They were also better at searching for types of keywords. Recall and comprehension measures showed the same effects only in Experiment 1. Overall, the results suggest that the role of semantic knowledge in computer programming is more complex than has been previously thought. Merely substituting for keywords or swapping the order of lines still allows the experts to search and attend better to the functions of the program. When semantically complex functions are used, experts are at an equal disadvantage but still outperform novices.
An experiment is designed to investigate the relationship between system structure and maintainability. An old, ill-structured system is improved in two sequential stages, yielding three system versions for the study....
详细信息
An experiment is designed to investigate the relationship between system structure and maintainability. An old, ill-structured system is improved in two sequential stages, yielding three system versions for the study. The primary objectives of the research are to determine how or whether the differences in the systems influence maintenance performance; whether the differences are discernible to programmers; and whether the differences are measurable. Experienced programmers perform a portfolio of maintenance tasks on the systems. Results indicate that system improvements lead to decreased total maintenance time and decreased frequency of ripple effect errors. This suggests that improving old systems may be worthwhile and may yield benefits over the remaining life of the system. System differences are not discernible to programmers; apparently programmers are unable to separate the complexity of the systems from the complexity of the maintenance tasks. This finding suggests a need for further research on the efficacy of subjectively based software metrics. Finally, results indicate that a selected set of automatable, objective complexity metrics reflected both the improvements in the system and programmer maintenance performance. These metrics appear to offer potential as project management tools. [ABSTRACT FROM AUTHOR]
Investigates the computer instruction set usage by computer programmers. Impact of instruction selection on programmers; Examination on large systems programs; Determination of mnemonic and operation codes.
Investigates the computer instruction set usage by computer programmers. Impact of instruction selection on programmers; Examination on large systems programs; Determination of mnemonic and operation codes.
The shortage of skilled programming staff is not helped by the attitudes of many employers, who refuse to consider training staff to meet their needs. They also fail to realise that the market currently belongs to the...
详细信息
The shortage of skilled programming staff is not helped by the attitudes of many employers, who refuse to consider training staff to meet their needs. They also fail to realise that the market currently belongs to the sellers, and jobs must therefore be made attractive to candidates. Agencies can be useful in recruitment, provided they are used properly.
暂无评论