Individuals who desire structure and proof in problem solving exhibit acharacteristic known as a theoretical value belief; these individuals also exhibit othercharacteristics that are associated with programming and p...
详细信息
Individuals who desire structure and proof in problem solving exhibit acharacteristic known as a theoretical value belief; these individuals also exhibit othercharacteristics that are associated with programming and programmers. For instance, they are highlyobjective and focused, rarely showing interest in, or consideration of, artifacts that are unprovenor untested. They routinely look for the reason and validation behind an event or object, and theyfrequently prefer to work individually.
Creating an integrated development environment for a new programming language is a nontrivial and laborious task. Such universal integration platforms as Eclipse, NetBeans, MS Visual Studio, and others partly facilita...
详细信息
Creating an integrated development environment for a new programming language is a nontrivial and laborious task. Such universal integration platforms as Eclipse, NetBeans, MS Visual Studio, and others partly facilitate it. The paper gives a comparative analysis of the approaches to creating a development environment on the basis a universal integration platform and proposes a new approach that eliminates the disadvantages while retaining the advantages of the existing approaches.
The article examines how the proliferation and availability of open source is affecting software development practices. The open source community gives a rich base of reusable software, typically available at the cost...
详细信息
The article examines how the proliferation and availability of open source is affecting software development practices. The open source community gives a rich base of reusable software, typically available at the cost of downloading the code from the Internet. Source code's availability lets software developers perpetually improve, fix and support reused elements. This factor often mitigates the risk of orphaned components or incompatible evolution paths that are associated with the reuse of proprietary components. INSET: Further Reading List..
Input validation is essential and critical in Web applications. It is the enforcement of constraints that any input must satisfy before it is accepted to raise external effects. We have discovered some empirical prope...
详细信息
Input validation is essential and critical in Web applications. It is the enforcement of constraints that any input must satisfy before it is accepted to raise external effects. We have discovered some empirical properties for characterizing input validation in Web applications. In this paper, we propose an approach for automated recovery of input validation model from program source code. The model recovered is represented in a variant of control flow graph, called validation flow graph, which shows essential input validation features implemented in programs. Based on the model, we then formulate two coverage criteria for testing input validation. The two criteria can be used to guide the structural testing of input validation in Web applications. We have evaluated the proposed approach through case studies and experiments. (c) 2007 Published by Elsevier Inc.
Much attention has been paid to the question of how many subjects are needed in usability research. Virzi (1992) modelled the accumulation of usability problems with increasing numbers of subjects and claimed that fiv...
详细信息
Much attention has been paid to the question of how many subjects are needed in usability research. Virzi (1992) modelled the accumulation of usability problems with increasing numbers of subjects and claimed that five subjects are sufficient to rnd most problems. The current paper argues that this answer is based on an important assumption, namely that all types of users have the same probability of encountering all usability problems. If this homogeneity assumption is violated, then more subjects are needed. A modified version of Virzi's model demonstrates that the number of subjects required increases with the number of heterogeneous groups. The model also shows that the more distinctive the groups, the more subjects will be required. This paper will argue that the simple answer 'five' cannot be applied in all circumstances. It most readily applies when the probability that a user will encounter a problem is both high and similar for all users. It also only applies to simple usability tests that seek to detect the presence, but not the statistical prevalence, of usability problems.
Bugs happen because people create them when they can not remember the details needed to write correct programs. In this article, the author suggests the use of plentiful computer memory instead of wasting user's s...
详细信息
Bugs happen because people create them when they can not remember the details needed to write correct programs. In this article, the author suggests the use of plentiful computer memory instead of wasting user's scarce biological memory. programmers optimize inner loops of their source code because that is where the biggest performance gains are possible. The inner loop involves figuring out what to type and then typing it. It is required to create a programming environment that speeds both the figuring out and the typing. Getting correct all the details of source code demands lots of biological memory, frequently more than is available. But at any point in the typing of code, options are usually constrained by the legal constructs of the language, the functions and data available, and the context. Since the programmer's brain is already full of the details of the task and the algorithm, use of computer's brain is suggested. Emacs Menus is an adjunct to the Emacs text editor presenting the programmer with context-sensitive menus containing options that are least syntactically and typewise legal for the code under the mouse.
The causes of a computer program's failure are often a complex mix of interactions between developer-written code and library code. To reduce debugging time and effort, the Signpost system uses a program's beh...
详细信息
The causes of a computer program's failure are often a complex mix of interactions between developer-written code and library code. To reduce debugging time and effort, the Signpost system uses a program's behavior to query a knowledge base and automatically retrieve articles that describe known bugs and approaches.
The state of a concurrent object, intended as some abstraction over the values of the fields of the object, usually determines its coordination behavior. Therefore, state is always in the programmer's mind, even t...
详细信息
The state of a concurrent object, intended as some abstraction over the values of the fields of the object, usually determines its coordination behavior. Therefore, state is always in the programmer's mind, even though implicitly. We suggest a feature for J ava-like languages, which makes the state of a concurrent object explicit and supports the expression of the object's behavior depending on the state it is currently in. Namely, an object will be in one of the states declared in its class. The state determines the presence of fields and methods. State transition statements explicitly change the state of an object, and thus change the availability of fields and methods. When a thread calls a method which is declared in the object's class but absent from its current state, it waits, until the state of the object changes to a state which does contain that method. This directly expresses coordination. We claim that this feature makes it easier to understand and develop concurrent programs, and substantiate our claim through the discussion of some popular examples of concurrent programs written using this *** develop a type and effect system, which guarantees that, during execution of a method invoked on a concurrent object. No attempt will be made to access fields not available in the current state of and (2) No method invoked on a receiver (syntactically) different from may cause the invocation of a method on the latter guarantee helps to enforce the former and prevents a family of accidental violations of the intended coordination protocol.
Defect logging and defect data:analysis aim to decrease programmers' repetitive errors. DLDA was inspired by Watts Humphrey's Personal Software Process but has a much lower learning cost. A controlled experime...
详细信息
Defect logging and defect data:analysis aim to decrease programmers' repetitive errors. DLDA was inspired by Watts Humphrey's Personal Software Process but has a much lower learning cost. A controlled experiment validated the technique.
This article presents a re-engineering case study of the product requirements definition process at Digital Equipment Corporation. Based on cross-functional teams working in direct partnership with customers, the re-e...
详细信息
This article presents a re-engineering case study of the product requirements definition process at Digital Equipment Corporation. Based on cross-functional teams working in direct partnership with customers, the re-engineered process was designed to ensure customer satisfaction and business readiness before a line of code is written, an electronic circuit designed, or a service defined.
暂无评论