Now showing items 1-20 of 23

    • An ethnographically-informed analysis of the influence of culture on global software-testing practice 

      Shah, Hina (Georgia Institute of Technology, 2014-05-27)
      There have been fewer studies performed to understand real-world software-testing practice than for other areas of software engineering, such as software requirements, design and development. In particular, surprisingly ...
    • Analysis and Testing of Programs with Exception-Handling Constructs 

      Sinha, Saurabh; Harrold, Mary Jean (Georgia Institute of Technology, 2000)
      Analysis techniques, such as control flow, data flow, and control dependence, are used for a variety of software-engineering tasks, including structural and regression testing, dynamic execution profiling, static and ...
    • Applying Aggressive Propagation-based Strategies for Testing Changes 

      Santelices, Raul; Harrold, Mary Jean (Georgia Institute of Technology, 2010)
      Test-suite augmentation for evolving software— the process of augmenting a test suite to adequately test software changes—is necessary for any program that undergoes modifications as part of its development and ...
    • Automated Concolic Testing of Smartphone Apps 

      Anand, Saswat; Naik, Mayur; Yang, Hongseok; Harrold, Mary Jean (Georgia Institute of Technology, 2012)
      We present an algorithm and a system for generating input events to exercise smartphone apps. Our approach is based on concolic testing and generates sequences of events automatically and systematically. It alleviates ...
    • Effective fault localization techniques for concurrent software 

      Park, Sang Min (Georgia Institute of Technology, 2014-08-19)
      Multicore and Internet cloud systems have been widely adopted in recent years and have resulted in the increased development of concurrent programs. However, concurrency bugs are still difficult to test and debug for at ...
    • Effects of Pointers on Data Dependences 

      Orso, Alessandro; Sinha, Saurabh; Harrold, Mary Jean (Georgia Institute of Technology, 2000)
      Data dependences, which relate statements that compute data value to statements that use those values, are useful for automating a variety of program-comprehension-related activities, such as reverse engineering, impact ...
    • Efficient Computation of Parameterized Pointer Information for Interprocedural Analyses 

      Liang, Donglin; Harrold, Mary Jean (Georgia Institute of Technology, 2000)
      Pointer information that is provided by many algorithms identifies a memory location using the same name throughout a program. Such pointer information is inappropriate for use in analyzing C programs because, using ...
    • Extending and Evaluating Flow-Insensitve and Context-insensitive Points-to Analyses for Java 

      Liang, Donglin; Pennings, Maikel; Harrold, Mary Jean (Georgia Institute of Technology, 2001)
      This paper presents extensions to Steensgaard's and Andersen's algorithms to handle Java features. Without careful consideration, the handling of these features may affect the correctness, precision, and efficiency of ...
    • A Framework for Understanding Data Dependences 

      Orso, Alessandro; Liang, Donglin; Sinha, Saurabh; Harrold, Mary Jean (Georgia Institute of Technology, 2002)
      Identifying and understanding data dependences is important for a variety of software-engineering tasks. The presence of pointers, arrays, and dynamic memory allocation introduces subtle and complex data dependences ...
    • Gamma System: Continuous Evolution of Software after Deployment 

      Orso, Alessandro; Liang, Donglin; Harrold, Mary Jean; Lipton, Richard J. (Georgia Institute of Technology, 2002)
      In this paper, we present the Gamma system---a new approach for continuous improvement of software systems after their deployment. The Gamma system facilitates remote monitoring of deployed ...
    • HDCCSR: software self-awareness using dynamic analysis and Markov models 

      Harrold, Mary Jean; Rugaber, Jon Spencer; Rehg, James Matthew (Georgia Institute of Technology, 2008-12-20)
    • Improving the Classification of Software Behaviors using Ensembles 

      Bowring, James Frederick; Harrold, Mary Jean; Rehg, James Matthew (Georgia Institute of Technology, 2005)
      One approach to the automatic classification of program behaviors is to view these behaviors as the collection of all the program's executions. Many features of these executions, such as branch profiles, can be measured, ...
    • Incremental Slicing Based on Data-Dependences Types 

      Orso, Alessandro; Sinha, Saurabh; Harrold, Mary Jean (Georgia Institute of Technology, 2000)
      Program slicing is useful for assisting with software-maintenance tasks, such as program understanding, debugging, impact analysis, and regression testing. The presence and frequent usage of pointers, in languages such ...
    • Matching Test Cases for Effective Fault Localization 

      Baah, George K.; Podgurski, Andy; Harrold, Mary Jean (Georgia Institute of Technology, 2011)
      Finding the cause of a program’s failure from a causal-analysis perspective requires, for each statement, tests that cover the statement and tests that do not cover the statement. However, in practice the composition ...
    • Paper: Evaluating the Precision of Static Reference Analysis Using Profiling 

      Liang, Donglin; Pennings, Maikel; Harrold, Mary Jean (Georgia Institute of Technology, 2002)
      Program analyses and optimization of Java programs require reference information that determines the instances that may be accessed through dereferences. Reference information can be computed using reference analysis. This ...
    • Probabilistic Slicing for Predictive Impact Analysis 

      Santelices, Raul; Harrold, Mary Jean (Georgia Institute of Technology, 2010)
      Program slicing is a technique that determines which statements in a program affect or are affected by another statement in that program. Static forward slicing, in particular, can be used for impact analysis by identifying ...
    • Software Behavior: Automatic Classification and its Applications 

      Bowring, James Frederick; Rehg, James Matthew; Harrold, Mary Jean (Georgia Institute of Technology, 2003)
      A program's behavior is ultimately the collection of all its executions. This collection is diverse, unpredictable, and generally unbounded. Thus it is especially suited to statistical analysis and machine learning techniques. ...
    • SPA: Symbolic Program Approximation for Scalable Path-sensitive Analysis 

      Harrold, Mary Jean; Santelices, Raul (Georgia Institute of Technology, 2009)
      Symbolic execution is a static-analysis technique that has been used for applications such as test-input generation and change analysis. Symbolic execution’s path sensitivity makes scaling it difficult. Despite recent ...
    • A Technique for Dynamic Updating of Java Software 

      Orso, Alessandro; Rao, Anup; Harrold, Mary Jean (Georgia Institute of Technology, 2002)
      TDuring maintenance, systems are updated to correct faults, improve functionality, and adapt the software to changes in its execution environment. The typical software-update process consists of stopping the system ...
    • Understanding Data Dependences in the Presence of Pointers 

      Orso, Alessandro; Sinha, Saurabh; Harrold, Mary Jean (Georgia Institute of Technology, 2003)
      Understanding data dependences in programs is important for many software-engineering activities, such as program understanding, impact analysis, reverse engineering, and debugging. The presence of pointers, arrays, and ...