Log In
New user? Click here to register. Have you forgotten your password?
NC State University Libraries Logo
    Communities & Collections
    Browse NC State Repository
Log In
New user? Click here to register. Have you forgotten your password?
  1. Home
  2. Browse by Author

Browsing by Author "Dr. Edward Gehringer, Committee Member"

Filter results by typing the first few letters
Now showing 1 - 4 of 4
  • Results Per Page
  • Sort Options
  • No Thumbnail Available
    Automatic Generation and Execution of Specification-Based Test Cases in a Network Based Environment
    (2003-07-29) Chalke, Yatin; Dr. Mladen Vouk, Committee Chair; Dr. Edward Gehringer, Committee Member; Dr. Laurie Williams, Committee Member
    Automatic testing of software has always been of interest. The concept has been receiving more and more attention in the software development climate of today (e.g., agile software processes) where managers and testers are being asked to turn around their products under shorter schedules and with smaller resources. Automation is being looked at as a pathway to meet the product testing and delivery deadlines. There are many research methods and tools, as well as a number of commercial tools that automate test design, generation and execution. Some are specification-based, some are structure based, and some are combinations of both. However the current state of automation of software testing has problems. These include design and maintainability of automation (e.g., current methods may not track product changes in a cost-effective way, and test-case suites do not always evolve easily and consistently), generation of excessive number of test-cases, end-user friendliness of the tool interfaces, measurability of the test-suite effectiveness, and so on. The goal of the work presented here is to study automation of efficient specification-based test-case design, generation and execution. The investigation focuses on the principle known as pair-wise testing. Empirical evidence exists that shows that the technique can produce, depending on the algorithm used, test suites which are not only efficient in fault detection, but also have a manageable size. Objectives of the work were to a) enhance and further asses the open-source pair-wise test case design tool, developed previously by K.C. Tai and his students, called PairTest, b) develop a prototype of an adaptable easy-to-use system for automatic execution of the PairTest test cases, something that the original release of PairTest does not do, in a setting here one tests network-based systems, and c) assess usability of pair-wise testing strategy and automation of testing in an industrial environment. This work explicitly recognizes two stages of testing automation: i) automated test-case design and generation, and ii) automated construction of executable test-case from the generated suite. In assessing performance of PairTest, it was compared to the automatic test case generation practices in the industry with the help of different user scenarios. The prototype system for conversion of PairTest generated test-cases into executable test-suites is based on the open-source 'Expect' toolset. PairTest performs favorably where it comes to test-case design and generation, as well as fault-detection power. It exhibits an ability to contain exponential growth in the number of tests generated with the increase in the number of specification parameter values. A quantitative analysis of pair-wise testing and test automation in two industrial environment shows that, compared with manual methods, automatic test design and execution in general help a) increase the error detection capability (efficiency) of testing, b) reduce resource consumption, and c) increase evolvability (maintainability, adaptability) of the testing process. Results confirm that properly automated testing, as a 'complete' testing solution, not only improves the quality of the software and system, but also saves time and resources.
  • No Thumbnail Available
    Bootstrapping Referral Systems With Social Network Information
    (2007-05-16) Batalagundu Viswanathan, Arvind; Dr. Edward Gehringer, Committee Member; Dr. Laurie Williams, Committee Member; Dr. Munindar P. Singh, Committee Chair
    This thesis addresses the challenge of facilitating human interactions in solving problems. To this end, it assigns an agent to each user, and models a social network as a multiagent system. A user's agent helps them by sending out and responding to queries on their behalf. Each agent makes its decisions based on its models of the expertise and trustworthiness of other agents. However, such models are not trivial to construct and maintain. This thesis develops an approach wherein the models are seeded based upon information extracted from the user's emails and from existing social networking sites. The main contribution of this thesis is in the specification of heuristics by which expertise and trustworthiness can be computed. It also provides a general schema and methodology by which additional sources of social information can be incorporated.
  • No Thumbnail Available
    Predicting Loop Unrolling Impact in OpenMP Programs Using Machine Learning
    (2005-08-16) Poojary, Vikram; Dr. Gregory Byrd, Committee Member; Dr. Edward Gehringer, Committee Member; Dr. Yan Solihin, Committee Chair
    Performance tuning of high performance numerical code is an important process which is still largely performed manually. While recent research in automated performance tuning has proposed run-time application configuration and compilation, most compilers in use today do not support such run-time features. As a result, a performance tuner's role is limited to selecting the right compiler optimizations for a given application and environment in which the application runs. Because many compiler optimizations do not give performance benefits in all cases, performance tuners must tediously test each optimization on their applications under a wide range of scenarios. Therefore, it is desirable to automate compiler optimization selection in order to avoid or at least reduce the tuning effort. This thesis deals with the question of whether machine learning techniques can be used to automate compiler optimization selection. It presents a case study in which an Artificial Neural Network (ANN) and a Decision Tree (DT) are constructed, trained, and used to predict whether, for a given loop nest in a shared memory parallel program, loop unrolling optimization should be applied or not. Simple characteristics of the loop nests, such as the nesting level, iteration count, and body size, are collected and used as input to the ANN or DT. The ANN and DT were trained with loop nests from some OpenMP-based NAS parallel benchmarks, and are used to predict the benefit of loop unrolling across different benchmarks, and across different numbers of parallel threads. Various training methods were tried, and in the best case, ANN predicts correctly whether loop unrolling is beneficial in 62\% of the cases, whereas DT predicts correctly whether loop unrolling is beneficial in 56\% of the cases. Although the results show promise, we believe that to accurately automate compiler optimization selection, many other factors may need to be taken into account in characterizing each loop nest, due to complex interactions of loop unrolling with memory hierarchy, data layout, thread partitioning, and instruction-level parallelism.
  • No Thumbnail Available
    Understanding the Compatibility of Pair Programmers
    (2005-11-01) Katira, Neha Anupkumar; Dr. Jason Osborne, Committee Member; Dr. Laurie Williams, Committee Chair; Dr. Edward Gehringer, Committee Member
    As pair programming is gaining broad acceptance in software engineering, programmers in academia and industry desire to work with compatible partners. Computer science instructors wish to proactively form student pairs to increase the likelihood of compatible pairs. This research investigates patterns that predict pair compatibility, and is aimed at improving the chances of forming mutually compatible pairs in academia and industry. Female and minority students are under-represented in computer science. To make the programming experience of these under-represented groups more satisfactory, an analysis of the factors that possibly impact the compatibility of female and minority student pair programmers were conducted at the North Carolina State University. A structured experiment involving 1053 undergraduate and 112 graduate students was carried out at the North Carolina State University to understand and predict pair compatibility. Additionally, 72 students were included later in the study to examine their work ethic and time management preferences. Three hundred and thirty nine industry pair programmers participated in the experiment by responding to a formal survey. Analysis of the results indicates that students are more compatible with partners whom they perceive of similar skill level, although instructors cannot proactively manage these pairs. Pairing two female students in a pair is likely to result in a compatible pair in the undergraduate classroom, while mixed gender pairs are less likely to perceive compatibility. The higher the programming self-esteem of the undergraduate software engineering students, the more likely they are to be compatible with their partner, while the higher the programming self-esteem of the graduate female students, the less likely it is they perceive compatibility. The greater the difference in the midterm of pair (OO majority), the more likely it is that they perceive compatibility with their partner. As the difference in the GPA of the OO minority students with their partner increases, the less likely they are to perceive compatibility. With undergraduate software engineering students and freshman minority students, the higher their programming self-esteem, the more likely they are to perceive compatibility with their partner. We also observe as the difference in the SAT of the pair increases in the SE class, the less likely they are to perceive compatibility. Pair programmers in the industry perceive compatibility with a partner, who has a similar work ethic. A majority of the respondents believed that a significant benefit of pairing with a compatible partner is that the programming experience is more enjoyable, while a major setback of pairing with an incompatible partner is that it makes the programming experience less enjoyable.

Contact

D. H. Hill Jr. Library

2 Broughton Drive
Campus Box 7111
Raleigh, NC 27695-7111
(919) 515-3364

James B. Hunt Jr. Library

1070 Partners Way
Campus Box 7132
Raleigh, NC 27606-7132
(919) 515-7110

Libraries Administration

(919) 515-7188

NC State University Libraries

  • D. H. Hill Jr. Library
  • James B. Hunt Jr. Library
  • Design Library
  • Natural Resources Library
  • Veterinary Medicine Library
  • Accessibility at the Libraries
  • Accessibility at NC State University
  • Copyright
  • Jobs
  • Privacy Statement
  • Staff Confluence Login
  • Staff Drupal Login

Follow the Libraries

  • Facebook
  • Instagram
  • Twitter
  • Snapchat
  • LinkedIn
  • Vimeo
  • YouTube
  • YouTube Archive
  • Flickr
  • Libraries' news

ncsu libraries snapchat bitmoji

×