Skip to main content
With their abstract vocabulary and overly long sentences, patent claims, like several other genres of legal discourse, are notoriously difficult to read and comprehend. The enormous number of both native and non-native users reading... more
    • by 
    •   17  
      Computer ScienceArtificial IntelligenceNatural Language ProcessingNatural Language Generation
Translation between natural language and source code can help software development by enabling developers to comprehend, ideate, search, and write computer programs in natural language. Despite growing interest from the industry and the... more
    • by 
    •   7  
      Computer ScienceMachine TranslationJavaProgram Comprehension
This study aimed to make a characterization about how information visualization has been applied on software comprehension with relation to techniques and tools proposed by literature. Systematic Mapping was adopted as the method to guide... more
    • by 
    •   5  
      Computer ScienceVisualizationSoftwareProgram Comprehension
Software complexity measurement has been an agelong quandary in software engineering as the effort used to develop, comprehend, or retain the software depends on so many complicated factors. Measuring and controlling of complexity will... more
    • by 
    • Software Engineering
Software debugging is a time-consuming and challenging process. Supporting debugging has been a focus of the software engineering field since its inception with numerous empirical studies, theories, and tools to support developers in this... more
    • by 
    •   5  
      Computer ScienceSoftware EngineeringProgram ComprehensionComprehension
Software debugging is a time-consuming and challenging process. Supporting debugging has been a focus of the software engineering field since its inception with numerous empirical studies, theories, and tools to support developers in this... more
    • by 
    •   5  
      Computer ScienceSoftware EngineeringProgram ComprehensionComprehension
Introduction. The comprehension of computer programs is claimed to be a decisive faculty and even skill of any successful exercising professional duties of program engineers, for example, prototype analysis, decision making and... more
    • by 
    •   5  
      Program ComprehensionComputer ProgramDidactics of ProgrammingLearning System
Previous studies on program comprehension were carried out largely in the context of procedural languages. Our purpose is to develop and evaluate a cognitive model of object-oriented (OO) program understanding. Our model is based on the... more
    • by 
    •   15  
      Computer ScienceObject Oriented ProgrammingHuman Computer InteractionMental Representation
    • by 
    •   8  
      Computer ScienceSoftware EngineeringReverse EngineeringGrasp
Software complexity measurement has been an agelong quandary in software engineering as the effort used to develop, comprehend, or retain the software depends on so many complicated factors. Measuring and controlling of complexity will... more
    • by 
    • Software Engineering
Translation between natural language and source code can help software development by enabling developers to comprehend, ideate, search, and write computer programs in natural language. Despite growing interest from the industry and the... more
    • by 
    •   7  
      Computer ScienceMachine TranslationJavaProgram Comprehension
Code clones convey important information about a software system's design and implementation. Several tools have been proposed to detect code clones. However, mostly the focus so far has been on fragments of duplicated code. In our... more
    • by 
    •   3  
      Reverse EngineeringProgram ComprehensionDesign Recovery
The communication between the sensor-controllers and the buffering service is achieved using TCP [4]. A failure of the sensor-controller to send signals to the buffering service would be interpreted as the failure of the buffering... more
    • by 
    •   3  
      Computer ScienceArchitectureUnix
In studying about programming languages, the important part is to understand the language itself. Learners need to be able to comprehend a program that is completed with syntax, semantic and program flow. Most learners especially the... more
    • by 
    •   5  
      PsychologyComputer ScienceCognitionProgram Comprehension
During software development, design rules and contracts in the source code are often encoded through regularities, such as API usage protocols, coding idioms and naming conventions. The structural regularities that govern a program can... more
    • by 
    •   19  
      Computer ScienceSoftware MaintenanceData MiningStatic Analysis
The communication between the sensor-controllers and the buffering service is achieved using TCP [4]. A failure of the sensor-controller to send signals to the buffering service would be interpreted as the failure of the buffering... more
    • by 
    •   3  
      Computer ScienceArchitectureUnix
In this paper, we present the results of one aspect of a multinational, multi-institutional study of computer programming students. Specifically, this paper reports on an exploration of relationships between novice programmers'... more
    • by 
    •   8  
      Computer ScienceNavigationLandmarkQa
    • by 
In object-oriented programming, quality assurance is commonly provided through writing unit tests, to exercise the operations of each class. If unit tests are created and maintained manually, this can be a time-consuming and laborious... more
    • by 
    •   5  
      Computer ScienceSoftware EngineeringReadabilityProgrammer
    • by 
    •   5  
      Computer ScienceProgram ComprehensionSource CodeDebugging
    • by 
    •   7  
      Computer ScienceSoftware EngineeringSoftware MaintenanceReverse Engineering
To our families that have also been through it all, supporting us in their thoughts and prayers "team up your grand plans with measured and steady results" a Jeremyville Community Service Announcement
    • by 
    •   7  
      Computer ScienceSoftware EngineeringInformation ScienceMining Software Repositories
Software development in C and C++ is widely used in the various industries including Information Technology, Telecommunication and Transportation since the 80-ies. Over this four decade, companies have built up a huge software legacy. In... more
    • by 
The emergence of the long-tail in the market of software applications is shifting the role of end-users from mere consumers to becoming developers of applications addressing their unique, personal, and transient needs. On the Web, a... more
    • by 
    •   3  
      Computer ScienceMashupArchaeology of Natural Places
Program comprehension during software maintenance is a difficult task, hence the need to support it by recovering the as-built architecture of the system to be maintained. In this paper, we propose a method to recover runtime architecture... more
    • by 
    •   5  
      Computer ScienceArchitectureSoftware ArchitectureProgram Comprehension
    • by 
    •   11  
      Computer ScienceSoftware EngineeringObject Oriented ProgrammingSoftware Maintenance
    • by 
    •   15  
      BusinessComputer ScienceSoftware EngineeringArtificial Intelligence
    • by 
    •   5  
      Computer ScienceSoftware EngineeringSoftware ArchitectureSoftware
A large body of the literature of automated program repair develops approaches where patches are generated to be validated against an oracle (e.g., a test suite). Because such an oracle can be imperfect, the generated patches, although... more
    • by 
    •   11  
      Computer ScienceArtificial IntelligenceMachine LearningHeuristics
Thanks to the object-composition group, the community behind DCI, that helped me in the understanding of the DCI paradigm and trygve language, specially thanks to Matthew Browne, Andreas Söderlund, Trygve Mikkjel Heyerdahl Reenskaug, and... more
    • by 
    •   6  
      Computer ScienceProgramming LanguagesProgramming ParadigmsSoftware Maintenance
Comprehension of computer programs is daunting, due in part to clutter in the software developer's visual environment and the need for frequent visual context changes. Previous research has shown that nonspeech sound can be useful in... more
    • by 
    •   7  
      Cognitive ScienceComputer ScienceHuman Computer InteractionSonification
The graphical representations of software (code visualization in particular) may provide both professional programmers and students learning only the basics with support in program comprehension. Among the numerous proposed approaches,... more
    • by 
    •   6  
      Computer ScienceVisualizationProgram ComprehensionEclipse
Incremental software change adds new functionality to software. It is the foundation of software evolution, maintenance, iterative development, agile development, and other software processes. Highly interactive tool JRipples provides the... more
    • by 
    •   8  
      Computer ScienceSoftware EvolutionProgram ComprehensionImpact Analysis
Incremental software change adds new functionality to software. It is the foundation of software evolution, maintenance, iterative development, agile development, and other software processes. Highly interactive tool JRipples provides the... more
    • by 
    •   8  
      Computer ScienceSoftware EvolutionProgram ComprehensionImpact Analysis
Impact analysis is a specialized process of program comprehension that investigates the nature and extent of a planned software change. Traditionally, impact analysis involves inspecting dependencies among the software components of a... more
    • by 
    •   13  
      Computer ScienceObject Oriented ProgrammingSoftware MaintenanceOpen Source Software
A variety of readers, with a variety of goals, will find this 2005 book useful. While it is clearly not a textbook, particular chapters could be used in a classroom setting to expose students to current streams of research in software... more
    • by 
    •   5  
      EngineeringSoftware MaintenanceSoftware EvolutionBusiness process reengineering
According to a recent observational study, developers spend an average of 48% of their development time on debugging tasks. Approaches such as equivalence checking and fault localization support developers during debugging tasks by... more
    • by 
    •   4  
      Software EngineeringProgram AnalysisProgram ComprehensionSymbolic Execution
In programming education, the instructor tries to find out the learners who needs help by grasping the learners' development of understanding using tests that require knowledge. However, in reality, not many learners will acquire the... more
    • by 
    •   4  
      Computer ScienceProgram ComprehensionComprehensionProgramming language
It is difficult for a student to learn how to program and to build an understanding of the rationale which underpins the development of a program's componentparts. Conventional tools and approaches for explaining this essentially dynamic... more
    • by 
    •   8  
      Computer ScienceSoftware EngineeringProgram ComprehensionLac
Dynamic program analysis tools based on code instrumentation serve many important software engineering tasks such as profiling, debugging, testing, program comprehension, and reverse engineering. Unfortunately, constructing new analysis... more
    • by 
    •   7  
      Computer ScienceSoftware EngineeringJavaProgram Comprehension
Calling context profiling is an important technique for analyzing the performance of object-oriented software with complex inter-procedural control flow. The Calling Context Tree (CCT) is a common data structure that stores dynamic... more
    • by 
    •   4  
      Computer ScienceVisualizationSoftwarePsychology and Cognitive Sciences
This paper presents a methodology for Mining Association Rules from Code (MARC), aiming at capturing program structure, facilitating system understanding and supporting software management. MARC groups program entities (paragraphs or... more
    • by 
    •   7  
      Computer ScienceSoftware QualityProgram ComprehensionComputer Software
This paper presents au empirical study of a programming by demonstration language for a geographic information system (GIS). The long-term goal of the project is to enable non-technical end users to exercise the capabilities of a GIS... more
    • by 
    •   8  
      Computer ScienceVisual LanguageProgram ComprehensionProgramming by Demonstration
    • by 
    •   7  
      Computer ScienceSystem ArchitectureDatabase ManagementSoftware Requirements
    • by 
    •   12  
      Computer ScienceImage ProcessingMental RepresentationProgram Comprehension
Background Well-functioning patient feedback systems can contribute to improved quality of healthcare and ultimately make health systems more accountable. We used realist evaluation to understand the functioning of patient feedback... more
    • by 
    •   5  
      AccountabilityHealth CareTheory of Planned BehaviorRoot-Mean Square Error
The complexity of the systems that software engineers build has continuously grown since the inception of the field. What has not changed is the engineers' mental capacity to operate on about seven distinct pieces of information at a... more
    • by 
    •   7  
      Computer ScienceSoftware EngineeringMachine LearningReverse Engineering
This study aimed to make a characterization about how information visualization has been applied on software comprehension with relation to techniques and tools proposed by literature. Systematic Mapping was adopted as the method to guide... more
    • by 
    •   5  
      Computer ScienceVisualizationSoftwareProgram Comprehension
    • by 
    •   3  
      Computer ScienceProgram ComprehensionComprehension
Decision makers spend significant time and effort interpreting information derived from large multidimensional databases; data are usually represented by several dashboard diagrams. The Complexity Design (CoDe) methodology provides a... more
    • by 
    •   7  
      Computer ScienceProgram ComprehensionComprehensionBig Data