Focuses on the mistakes of engineers in debugging a system using a four-port Wide Area Network adapter card. Separation of the system into smaller pieces; Neglect on the standard scientific method; Connection of data ...
详细信息
Focuses on the mistakes of engineers in debugging a system using a four-port Wide Area Network adapter card. Separation of the system into smaller pieces; Neglect on the standard scientific method; Connection of data pins into the transmit chips.
debugging HIGH-END EMBEDDED APPLICATIONS IS NO LONGER STATIC. SEMICONDUCTOR VENDORS, TOOL DEVELOPERS, AND INSTRUMENT MAKERS HAVE COMBINED TO SUPPORT THE NEXUS STANDARD, WHICH RELIES ON ON-CHIP HARDWARE FEATURES AND DE...
详细信息
debugging HIGH-END EMBEDDED APPLICATIONS IS NO LONGER STATIC. SEMICONDUCTOR VENDORS, TOOL DEVELOPERS, AND INSTRUMENT MAKERS HAVE COMBINED TO SUPPORT THE NEXUS STANDARD, WHICH RELIES ON ON-CHIP HARDWARE FEATURES AND DEFINES A RIGOROUS TOOL METHODOLOGY TO ASSIST IN REAL-TIME debugging OF EMBEDDED APPLICATIONS.
Two experiments were conducted to investigate the relationship between planning and debugging and the effect of program authorship on debugging strategies. Three groups of participants with different programming exper...
详细信息
Two experiments were conducted to investigate the relationship between planning and debugging and the effect of program authorship on debugging strategies. Three groups of participants with different programming experiences were recruited. In the first experiment, the participants were asked to develop and debug their self-generated program whereas in the second experiment, they were asked to debug an other-written program where some logical errors were planted. Situated cognition approach, being an emergent cognitive paradigm, furnishes an alternative framework to understand the problems of interest. Deweyan notion of inquiry and Gibsonian theory of affordance are of particular relevance. The results show that planning is ineffective for debugging, irrespective of the programming expertise level and program authorship. Besides, situated debugging is demonstrated to be the preferred strategy which is not significantly related to the program authorship. A model of planning for program debugging and a theory of two-faceted transparency are postulated for explicating the observations.
The work reported in the article seeks to expand the single-user-logbook approach to investigate the phenomenology of debugging across a large population of users, aiming to understand and address the problems of prof...
详细信息
The work reported in the article seeks to expand the single-user-logbook approach to investigate the phenomenology of debugging across a large population of users, aiming to understand and address the problems of professional programmers working on very large programming tasks. The author conducted a survey of professional programmers, asking them to describe their most difficult bugs involving large pieces of software. The survey was conducted through email and conferencing/bulletin board facilities with worldwide access, including Usenet newsgroups, the BYTE Information Exchange, Compuserve, and Applelink. An analysis of the debugging anecdotes collected form worldwide email trawl revealed three primary dimensions of interest: why the bugs were difficult to find, how the bugs were found, and root causes of bugs. The investigation highlights a potential wealth of information available on Internet and indicates it may be possible to establish an online repository for perusal by those with an urgent need to solve complex debugging problems.
A good user interface brings the end user face-to-face with whatever is being manipulated and experienced. The article discusses about the experience of immediacy in a programming environment which draws the programme...
详细信息
A good user interface brings the end user face-to-face with whatever is being manipulated and experienced. The article discusses about the experience of immediacy in a programming environment which draws the programmer closer to the program. In such cases debugging is easier. The principle of immediacy can serve as a guide, keeping builders of programming environments on the path to productive environments. When programming environments convey the experience of immediacy, programmers perceive and manipulate the facets of the program and its unfolding computation with less conscious efforts and accelerate the debugging process. Authors describe how the principle of immediacy applies to debugging environments by describing ZStep 95, a program debugging environment based on the principle of immediacy. Three kinds of immediacy important for debugging, on which software designers should strive are explained in the article. These are: temporal immediacy, semantic immediacy, and spatial immediacy.
computers enables programmers to fashion their own universes, choosing their own sets of 'physical laws.' Although, may computer-based systems seem to have their physics well debugged. Some collaborative virtu...
详细信息
computers enables programmers to fashion their own universes, choosing their own sets of 'physical laws.' Although, may computer-based systems seem to have their physics well debugged. Some collaborative virtual environments allow their users to 'program' For example, LambdaMOO at Xerox PARC allows users to make new kinds of objects with new behaviors. In virtual Kansas, nearly anything can be reprogrammed, including the computations that display objects and the mechanisms underlying arithmetic. Indeed, Kansas is a multiuser programming environment for the Self language from which it is built. In Kansas, two plus two can equal five, at least the resulting inconsistency brings the entire system crashing to halt. In cases in which the attempt to restart Kansas fails, the watcher knows to create a new world -- Oz -- with a debugger on the broken Kansas process. Users find themselves suddenly thrown into Oz, where they can collaborate in repairing the problem and then resume and reenter Kansas.
The technology of running external programs on the server side of a relational database management system (RDBMS) has been developed in the past few years. Database 2(TM)/Common Server (DB2(TM)/CS) for UNIX(TM)-based ...
详细信息
The technology of running external programs on the server side of a relational database management system (RDBMS) has been developed in the past few years. Database 2(TM)/Common Server (DB2(TM)/CS) for UNIX(TM)-based platforms supports external programs (i.e., user-defined functions and stored procedures) that are written by the application developer in a third-generation language such as C or C++. The main difficulty in debugging these external programs is that they are executed under the control of DB2/CS, which is itself a large software system for which no source code is provided. If is therefore impractical for a debugger to penetrate through the layers of software of DB2/CS to locate and debug the external programs. It is also very difficult for the debugger to determine when an external program will be invoked by the database engine and in which process it will be run. In addition, in an environment where the DS2/CS server is shared between a large number of users, if is necessary to ensure that the debugger does not violate the security of the DB2/CS system. In this paper, we describe a set of extensions to a distributed debugger and DB2/CS to support the debugging of external programs. A prototype was implemented to show the feasibility of the proposed approach.
Two problem-solving experiments were conducted to determine the effects of prior knowledge of problem intermittency on human troubleshooting performance. Intermittency was defined as the rate at which a network compon...
详细信息
Two problem-solving experiments were conducted to determine the effects of prior knowledge of problem intermittency on human troubleshooting performance. Intermittency was defined as the rate at which a network component or output, when tested, gave an incorrect report of its status (i.e., reported hat it was working when it actually was not). Participants' task was to find faulty components in a set of 18 computer-based problems that caused a network to malfunction. In the first experiment, half the participants were told whether a problem was intermittent or not before they began troubleshooting procedures. In the second experiment, half the participants were given specific rates of intermittency for the problems. It was found that providing participants with only general ''intermittent'' or ''nonintermittent'' prior information did not affect troubleshooting performance. Participants given specific problem intermittency rates did, however, perform better on the trouble-shooting problems than did participants who were not given this information.
Programming faults are defined in the framework of the program verification schema (proof outline). Component S in program P is faulty if P cannot be proved correct with the current implementation of S but it can be p...
详细信息
Programming faults are defined in the framework of the program verification schema (proof outline). Component S in program P is faulty if P cannot be proved correct with the current implementation of S but it can be proved using the implementation specification for S. A programming error is a state that violates that specification. Conditions for error propagation and masking are expressed in terms of the relationships between the implementation and design specification of S, which defines the role of S in the overall design of P. Errors propagate due to the dependencies between program entities. It is shown that "classical" static dependencies, developed for the purpose of code optimization, are inadequate for the analysis of error propagation since they do not capture events that occur on individual paths through the program. A novel path analysis method is proposed to identify variables potentially corrupted on a same path due the existence of the fault. The method is based upon error propagation axioms. The axioms are used to define path relations for structured programming constructs. The relations provide a conservative structural approximation to the semantical theory of error creation and propagation and are shown useful in testing, debugging and static analysis.
In this article authors describe an approach to fostering debugging communities on the World-Wide Web, that will enable programmers to collaboratively debug programs synchronously and asynchronously. Over the past cou...
详细信息
In this article authors describe an approach to fostering debugging communities on the World-Wide Web, that will enable programmers to collaboratively debug programs synchronously and asynchronously. Over the past couple of years, a significant number of communities have benefited by interacting through the net using newsgroups and Webpages. To describe a bug, programmer needs to describe the code, the point in the execution where the symptom occurs, and the context. The article aims to make it easy for programmers to swap bug descriptions around the world. Therefore, system should be platform independent, run on relatively modest hardware, and should not require exchange of source code. Internet Software Visualization Laboratory (ISVL) is an approach to solving bug-description-sharing problem, which uses a client/server architecture to deliver visualizations any Java-enabled Web browser. Using a Java-enabled Web browser, programmers can connect to the ISVL client. Using the client, programmers can upload and run their programs on the server and receive back a visualization.
暂无评论