28 resultados para developer


Relevância:

10.00% 10.00%

Publicador:

Resumo:

Conventional debugging tools present developers with means to explore the run-time context in which an error has occurred. In many cases this is enough to help the developer discover the faulty source code and correct it. However, rather often errors occur due to code that has executed in the past, leaving certain objects in an inconsistent state. The actual run-time error only occurs when these inconsistent objects are used later in the program. So-called back-in-time debuggers help developers step back through earlier states of the program and explore execution contexts not available to conventional debuggers. Nevertheless, even back-in-time debuggers do not help answer the question, ``Where did this object come from?'' The Object-Flow Virtual Machine, which we have proposed in previous work, tracks the flow of objects to answer precisely such questions, but this VM does not provide dedicated debugging support to explore faulty programs. In this paper we present a novel debugger, called Compass, to navigate between conventional run-time stack-oriented control flow views and object flows. Compass enables a developer to effectively navigate from an object contributing to an error back-in-time through all the code that has touched the object. We present the design and implementation of Compass, and we demonstrate how flow-centric, back-in-time debugging can be used to effectively locate the source of hard-to-find bugs.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Navigating large software systems is difficult as the various artifacts are distributed in a huge space, while the relationships between different artifacts often remain hidden and obscure. As a consequence, developers using a modern interactive development environment (IDE) are forced to open views on numerous source artifacts to reveal these hidden relationships, leading to a crowded workspace with many opened windows or tabs. Developers often lose the overview in such a cluttered workspace as IDEs provide little support to get rid of unused windows. AutumnLeaves automatically selects windows unlikely for future use to be closed or grayed out while important ones are displayed more prominently. This reduces the number of windows opened at a time and adds structure to the developer's workspace. We validate AutumnLeaves with a benchmark evaluation using recorded navigation data of various developers to determine the prediction quality of the employed algorithms.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The reliability of millimeter and sub-millimeter wave radiometer measurements is dependent on the accuracy of the loads they employ as calibration targets. In the recent past on-board calibration loads have been developed for a variety of satellite remote sensing instruments. Unfortunately some of these have suffered from calibration inaccuracies which had poor thermal performance of the calibration target as the root cause. Stringent performance parameters of the calibration target such as low reflectivity, high temperature uniformity, low mass and low power consumption combined with low volumetric requirements remain a challenge for the space instrument developer. In this paper we present a novel multi-layer absorber concept for a calibration load which offers an excellent compromise between very good radiometric performance and temperature uniformity and the mass and volumetric constraints required by space-borne calibration targets.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Answering run-time questions in object-oriented systems involves reasoning about and exploring connections between multiple objects. Developer questions exercise various aspects of an object and require multiple kinds of interactions depending on the relationships between objects, the application domain and the differing developer needs. Nevertheless, traditional object inspectors, the essential tools often used to reason about objects, favor a generic view that focuses on the low-level details of the state of individual objects. This leads to an inefficient effort, increasing the time spent in the inspector. To improve the inspection process, we propose the Moldable Inspector, a novel approach for an extensible object inspector. The Moldable Inspector allows developers to look at objects using multiple interchangeable presentations and supports a workflow in which multiple levels of connecting objects can be seen together. Both these aspects can be tailored to the domain of the objects and the question at hand. We further exemplify how the proposed solution improves the inspection process, introduce a prototype implementation and discuss new directions for extending the Moldable Inspector.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Software developers are often unsure of the exact name of the method they need to use to invoke the desired behavior in a given context. This results in a process of searching for the correct method name in documentation, which can be lengthy and distracting to the developer. We can decrease the method search time by enhancing the documentation of a class with the most frequently used methods. Usage frequency data for methods is gathered by analyzing other projects from the same ecosystem - written in the same language and sharing dependencies. We implemented a proof of concept of the approach for Pharo Smalltalk and Java. In Pharo Smalltalk, methods are commonly searched for using a code browser tool called "Nautilus", and in Java using a web browser displaying HTML based documentation - Javadoc. We developed plugins for both browsers and gathered method usage data from open source projects, in order to increase developer productivity by reducing method search time. A small initial evaluation has been conducted showing promising results in improving developer productivity.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Software developers are often unsure of the exact name of the API method they need to use to invoke the desired behavior. Most state-of-the-art documentation browsers present API artefacts in alphabetical order. Albeit easy to implement, alphabetical order does not help much: if the developer knew the name of the required method, he could have just searched for it in the first place. In a context where multiple projects use the same API, and their source code is available, we can improve the API presentation by organizing the elements in the order in which they are more likely to be used by the developer. Usage frequency data for methods is gathered by analyzing other projects from the same ecosystem and this data is used then to improve tools. We present a preliminary study on the potential of this approach to improve the API presentation by reducing the time it takes to find the method that implements a given feature. We also briefly present our experience with two proof-of-concept tools implemented for Smalltalk and Java.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Background: Since the cognitive revolution of the early 1950s, cognitions have been discussed as central components in the understanding and treatment of mental illnesses. Even though there is an extensive literature on the association between therapy-related cognitions such as irrational beliefs and psychological distress over the past 60 years, there is little meta-analytical knowledge about the nature of this association. Methods: The relationship between irrational beliefs and distress was examined based on a systematic review that included 100 independent samples, gathered in 83 primary studies, using a random-effect model. The overall effects as well as potential moderators were examined: (a) distress measure, (b) irrational belief measure, (c) irrational belief type, (d) method of assessment of distress, (e) nature of irrational beliefs, (f) time lag between irrational beliefs and distress assessment, (g) nature of stressful events, (h) sample characteristics (i.e. age, gender, income, and educational, marital, occupational and clinical status), (i) developer/validator status of the author(s), and (k) publication year and country. Results: Overall, irrational beliefs were positively associated with various types of distress, such as general distress, anxiety, depression, anger, and guilt (omnibus: r = 0.38). The following variables were significant moderators of the relationship between the intensity of irrational beliefs and the level of distress: irrational belief measure and type, stressful event, age, educational and clinical status, and developer/validator status of the author. Conclusions: Irrational beliefs and distress are moderately connected to each other; this relationship remains significant even after controlling for several potential covariates.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

BACKGROUND Little is known about medical educators' self-definition. AIMS The aim of this study is to survey an international community of medical educators focusing on the medical educators' self-definition. METHODS Within a comprehensive, web-based survey, an open question on the participants' views of how they would define a "medical educator" was sent to 2200 persons on the mailing list of the Association for Medical Education in Europe. The free text definitions were analysed using qualitative thematic analysis. RESULTS Of the, 200 medical educators invited to participate, 685 (31.1%) provided a definition of a "medical educator". The qualitative analysis of the free text definitions revealed that medical educators defined themselves in 13 roles, primarily as "Professional Expert", "Facilitator", "Information Provider", "Enthusiast", "Faculty Developer", "Mentor", "Undergraduate and Postgraduate Trainer", "Curriculum Developer", "Assessor and Assessment Creator", and "Researcher". CONCLUSIONS Our survey revealed that medical educators predominantly define themselves as "Professional Experts" and identified 12 further self-defined roles of a medical educator, several of which not to have been reported previously. The results can be used to further the understanding of our professional identity.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Parylenes are poly(p-xylylene) polymers that are widely used as moisture barriers and in biomedicine because of their good biocompatibility. We have investigated MeV ion beam lithography using 16O+ ions for writing defined patterns in Parylene-C, which is evaluated as a coating material for the Cochlear Implant (CI) electrode array, a neuroprosthesis to treat some forms of deafness. Parylene-C and -F on silicon and glass substrates as well as 50 μm thick PTFE were irradiated to different fluences (1×1013-1×10161×1013-1×1016 1 MeV 16O+ ions cm−2) through aperture masks under high vacuum and a low pressure (<10−3 mbar) oxygen atmosphere. Biocompatibility of the irradiated and unirradiated surfaces was tested by cell-counting to determine the proliferation of murine spiral ganglion cells. The results reveal that an oxygen ion beam can be used to pattern Parylene-C and -F without using a liquid solvent developer in a similar manner to PTFE but with a ∼25× smaller removal rate. Biocompatibility tests showed no difference in cell adhesion between irradiated and unirradiated areas or ion fluence dependence. Coating the Parylene surface with an adhesion-promoting protein mixture had a much greater effect on cell proliferation.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Previous studies on issue tracking systems for open source software (OSS) focused mainly on requests for bug fixes. However, requests to add a new feature or an improvement to an OSS project are often also made in an issue tracking system. These inquiries are particularly important because they determine the further development of the software. This study examines if there is any difference between requests of the IBM developer community and other sources in terms of the likelihood of successful implementation. Our study consists of a case study of the issue tracking system BugZilla in the Eclipse integrated development environment (IDE). Our hypothesis, which was that feature requests from outsiders have less chances of being implemented, than feature requests from IBM developers, was confirmed.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Object inspectors are an essential category of tools that allow developers to comprehend the run-time of object-oriented systems. Traditional object inspectors favor a generic view that focuses on the low-level details of the state of single objects. Based on 16 interviews with software developers and a follow-up survey with 62 respondents we identified a need for object inspectors that support different high-level ways to visualize and explore objects, depending on both the object and the current developer need. We propose the Moldable Inspector, a novel inspector model that enables developers to adapt the inspection workflow to suit their immediate needs by making the inspection context explicit, providing multiple interchangeable domain-specific views for each object, and supporting a workflow that groups together multiple levels of connected objects. We show that the Moldable Inspector can address multiple kinds of development needs involving a wide range of objects.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Understanding the run-time behaviour of object-oriented applications entails the comprehension of run-time objects. Traditional object inspectors favor generic views that focus on the low-level details of the state of single objects. While universally applicable, this generic approach does not take into account the varying needs of developers that could benefit from tailored views and exploration possibilities. GTInspector is a novel moldable object inspector that provides different high-level ways to visualize and explore objects, adapted to both the object and the current developer need.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Subtype polymorphism is a cornerstone of object-oriented programming. By hiding variability in behavior behind a uniform interface, polymorphism decouples clients from providers and thus enables genericity, modularity and extensi- bility. At the same time, however, it scatters the implementation of the behavior over multiple classes thus potentially hampering program comprehension. The extent to which polymorphism is used in real programs and the impact of polymorphism on program comprehension are not very well understood. We report on a preliminary study of the prevalence of polymorphism in several hundred open source software systems written in Smalltalk, one of the oldest object-oriented programming languages, and in Java, one of the most widespread ones. Although a large portion of the call sites in these systems are polymorphic, a majority have a small number of potential candidates. Smalltalk uses polymorphism to a much greater extent than Java. We discuss how these findings can be used as input for more detailed studies in program comprehension and for better developer support in the IDE.