VLDB 2026 Research / reviewers in the wild / expert
Debra J. Richardson
dblp:r/DJRichardson
· DBLP profile ↗
56ranked-venue papers
7as first author
4since 2021 · last 2022
0000-0002-8202-9274ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 43 · 5 first-authorHuman-computer interaction and ubiquitous computing · 8 · 2 first-author · 3 since 2021Applied, interdisciplinary, general and emerging computing · 6 · 1 since 2021Security and privacy · 2Artificial intelligence and machine learning · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2022 | Examining the What, Why, and How of Multilingual Student Identity Development in Computer ScienceabstractDeveloping student interest is critical to supporting student learning in computer science. Research indicates that student interest is a key predictor of persistence and achievement. While there is a growing body of work on developing computing identities for diverse students, little research focuses on early exposure to develop multilingual students’ interest in computing. These students represent one of the fastest growing populations in the US, yet they are dramatically underrepresented in computer science education. This study examines identity development of upper elementary multilingual students as they engage in a year-long computational thinking curriculum, and follows their engagement across multiple settings (i.e., school, club, home, community). Findings from pre- and post-surveys of identity showed significant differences favoring students’ experiences with computer science, their perceptions of computer science, their perceptions of themselves as computer scientists, and their family support for computer science. Findings from follow-up interviews and prior research suggest that tailored instruction provides opportunities for connections to out-of-school learning environments with friends and family that may shift students’ perceptions of their abilities to pursue computer science and persist when encountering challenges. Sharin Jacob, Jonathan Montoya, Debra J. Richardson, Mark Warschauer |
ACM Trans. Comput. Educ. | 4 |
| 2021 | Leveraging Collective Impact to Promote Systemic Change in CS EducationabstractCollective impact is an approach for solving complex social problems at scale. The challenge of broadening participation in computing (BPC) is one such problem. The complexity of BPC is compounded by the decentralized nature of public education, where decisions are made primarily at the state level and subject to interpretation at the district level. As such, diversifying computer science (CS) pathways across the nation requires a systemic approach such as collective impact to engage all of the stakeholders who influence CS education and whose decisions can either facilitate or hinder BPC efforts. This experience report discusses how the collective impact framework has been used to advance the work of the Expanding Computing Education Pathways (ECEP) Alliance, an NSF funded BPC Alliance focused on states and state policy as the unit of change. We discuss how the five essential features of collective impact (common agenda, shared measurement, mutually reinforcing activities, continuous communication, and backbone support) coalesce to facilitate ECEP's theory of change. The report highlights specific policy changes that ECEP states have addressed to promote BPC, the flipped accountability that results from a non-hierarchical leadership model, and the challenges of measuring systemic changes as an intermediary to BPC. Carol L. Fletcher, Sarah Dunton, Ryan Torbey, John Goodhue, Maureen Biggers, Joshua Childs, Leigh Ann Sudol-DeLyser, Anne T. Ottenbreit-Leftwich, Debra J. Richardson |
SIGCSE | 9 |
| 2021 | Document Analysis of ECEP Longitudinal Data: A Case Study with IndianaabstractIn recent years, state members of the Expanding Computing Education Pathways (ECEP) Alliance have made efforts to increase access to and broaden participation in computing at the K-12 levels. Each ECEP state's K-12 computer science (CS) education journey has been documented during their ECEP membership resulting in over 25,000 digital documents. Over the course of the project it was necessary to track key events, identify trends across states, and maintain consumable records of state progress. A systematic way to collect and track the data is critical to conduct historical and cross-state analyses. In an effort to quantify and categorize, the researchers engaged in a review process of all ECEP reports, artifacts, and other relevant data to develop a system. Relevant and important components were identified in each type of document and assigned codes using ECEP's Five Stage Model ("a five-step process toward state-level CS education reform"), the Capacity, Access, Participation, and Experience (CAPE) framework (to measure equity in CS education implementation), and specific policies initiatives (alignment with various policy initiatives - Code.org's "Nine Policy Ideas to Make CS Fundamental to K?12 Education"). Indiana was identified as a state to conduct an initial, in-depth case study using this process. Indiana's case will be used as a model to further develop the stories of other ECEP Alliance member states. Through the development of a data dashboard, we hope to organize all of this information to make it more easily accessible for review and further analysis. The ECEP data dashboard development is currently in progress. Minji Jeon, Jacob Koressel, Anne T. Ottenbreit-Leftwich, Alan Peterfreund, Sarah Dunton, Jeffrey Xavier, Carol L. Fletcher, Rebecca Zarch, Maureen Biggers, Debra J. Richardson, Joshua Childs, Leigh Ann Sudol-DeLyser, John Goodhue |
SIGCSE | 10 |
| 2021 | Development and Preliminary Validation of the Assessment of Computing for Elementary Students (ACES)abstractAs reliance on technology increases in practically every aspect of life, all students deserve the opportunity to learn to think computationally from early in their educational experience. To support the kinds of computer science curriculum and instruction that makes this possible, there is an urgent need to develop and validate computational thinking (CT) assessments for elementary-aged students. We developed the Assessment of Computing for Elementary Students (ACES) to measure the CT concepts of loops and sequences for students in grades 3-5. The ACES includes block-based coding questions as well as non-programming, Bebras-style questions. We conducted cognitive interviews to understand student perspectives while taking the ACES. We piloted the assessment with 57 4th grade students who had completed a CT curriculum. Preliminary analyses indicate acceptable reliability and appropriate difficulty and discrimination among assessment items. The significance of this paper is to present a new CT measure for upper elementary students and to share its intentional development process. Miranda C. Parker, Yvonne Kao, Dana Saito-Stehberger, Diana Franklin, Susan Krause, Debra J. Richardson, Mark Warschauer |
SIGCSE | 6 |
| 2020 | Supporting Students from Underrepresented Groups to Succeed in Computing: Research and Programs in Community CollegeabstractThere are over 1,000 community colleges (CC) in the U.S.; they enroll more than 13 million students--nearly half of all undergraduates-- and over half of CC students are non-white (American Association of Community Colleges). However, efforts to broaden participation in computing have been directed disproportionately to 4-year institutions. The focus of this panel is on research and strategies for increasing the retention of students from groups that are underrepresented in computing--female, Latinx, and African American students. It includes experts from across the US--from CC's and a research organization. The panelists will describe curriculum and programs that are designed to support students, and include the perspectives of students on what helps and hinders them from persisting. The intended audience for this panel is researchers, educators, and administrators from both community colleges and 4-year institutions. Debra J. Richardson, Amardeep Kahlon, Cheryl Calhoun, Shannon Campe |
SIGCSE | 1 |
| 2020 | Teacher Perceptions of Equity in High School Computer Science ClassroomsabstractEffective and equitable CS teaching is contingent on teachers’ robust understanding of equity issues in CS classrooms. To this end, this study examined high school teachers’ perceptions of equity during their participation in a CS teacher certificate program over two years. The participants are from various disciplines and from schools that serve under-represented students. Using a qualitative approach, we conducted content analysis of the teachers’ written reflections and responses to semi-structured interviews. Based on the justice-centered framework, we analyzed the major themes that emerged from the content analysis. The findings provide insights into high school CS teachers’ understanding of equity, the strategies that teachers use to address equity issues, and how teachers interpret the causes of inequities in CS classrooms. This research presents frameworks for examining teachers’ conceptualizations of equity and can inform the implementation of future professional development programs for CS teachers. Ninger Zhou, Yucheng Cao, Sharin Jacob, Debra J. Richardson |
ACM Trans. Comput. Educ. | 4 |
| 2020 | High School Teachers' Self-efficacy in Teaching Computer ScienceabstractSelf-efficacy is an important construct for CS teachers’ professional development, because it can predict both teaching behaviors as well as student outcomes. Research has shown that teachers’ self-efficacy can be as influential as their actual level of knowledge and abilities. However, there has been very limited research on CS teachers’ self-efficacy. This study describes the development and implementation of an instrument that measures secondary school teachers’ self-efficacy in teaching computer science. Teachers attended a nine-week hybrid professional development program and completed the computer science teaching self-efficacy instrument. Confirmatory factor analysis validated the self-efficacy instrument, which can be potentially used in other CS education settings. The results also indicated that teachers’ self-efficacy in the content knowledge and pedagogical content knowledge dimensions of teaching computer science significantly increased from participating in the professional development program. Ninger Zhou, Christian Fischer 0007, Debra J. Richardson, Mark Warschauer |
ACM Trans. Comput. Educ. | 4 |
| 2014 | Systematic mapping study on software engineering for sustainability (SE4S)abstractBackground/Context: The objective of achieving higher sustainability in our lifestyles by information and communication technology has lead to a plethora of research activities in related fields. Consequently, Software Engineering for Sustainability (SE4S) has developed as an active area of research. Objective/Aim: Though SE4S gained much attention over the past few years and has resulted in a number of contributions, there is only one rigorous survey of the field. We follow up on this systematic mapping study from 2012 with a more in-depth overview of the status of research, as most work has been conducted in the last 4 years. Method: The applied method is a systematic mapping study through which we investigate which contributions were made, which knowledge areas are most explored, and which research type facets have been used, to distill a common understanding of the state-of-the-art in SE4S. Results: We contribute an overview of current research topics and trends, and their distribution according to the research type facet and the application domains. Furthermore, we aggregate the topics into clusters and list proposed and used methods, frameworks, and tools. Conclusion: The research map shows that impact currently is limited to few knowledge areas and there is need for a future roadmap to fill the gaps. Birgit Penzenstadler, Ankita Raturi, Debra J. Richardson, Coral Calero, Henning Femmer, Xavier Franch |
EASE | 3 |
| 2013 | The requirements engineering body of knowledge (REBoK)abstractA body of knowledge is a term used to represent the complete set of concepts, terms and activities that make up a professional domain. It encompasses the core teachings, skills and research in a field or industry. So far, the discipline of RE is lacking an official Requirements Engineering Body of Knowledge (REBoK). This working session brings together researchers and practitioners to elaborate the goals, requirements and constraints for a REBoK that shall serve as commonly agreed basis for developing a draft over the following months. Birgit Penzenstadler, Daniel Méndez 0001, Debra J. Richardson, David Callele, Krzysztof Wnuk |
RE | 3 |
| 2010 | MbSRT2: Model-Based Selective Regression Testing with TraceabilityabstractWidespread adoption of model-centric development has created opportunities for software testing, with Model-Based Testing (MBT). MBT supports the generation of test cases from models and the demonstration of model and source-code compliance. Models evolve, much like source code. Thus, an important activity of MBT is selective regression testing, which selects test cases for retest based on model modifications, rather than source-code modifications. This activity explores relationships between model elements and test cases that traverse those elements to locate retest able test cases. We contribute an approach and prototype to model-based selective regression testing, whereby fine-grain traceability relationships among entities in models and test cases are persisted into a traceability infrastructure throughout the test generation process: the relationships represent reasons for test case creation and are used to select test cases for re-run. The approach builds upon existing regression test selection techniques and adopts scenarios as behavioral modeling perspective. We analyze precision, efficiency and safety of the approach through case studies and through theoretical and intuitive reasoning. Leila Naslavsky, Hadar Ziv, Debra J. Richardson |
ICST | 3 |
| 2010 | ASSURE: automated support for secure and usable requirements engineeringabstractProper testing is an essential and critical part of any development effort. However, software testing is a complex undertaking, especially in the midst of today's security threats. Hackers, social engineering scams, and unaware users, are just a few potential threats that developers must consider not only during development, but more importantly during testing. There are significant reputation and financial losses related to security aspects that could have been addressed during requirements specification. While a variety of approaches to security requirements specification have been proposed, there is a tangible lack in the support that they offer during testing. In this paper we describe the tool support of a new security requirements engineering technique called SURE-Secure and Usable Requirements Engineering. ASSURE - Automated Support for Secure and Usable Requirements Engineering -, is a system developed to aid in the mapping of security requirements into testing artifacts. This support goes beyond mapping and aids also in the management of users and projects. Jose Romero-Mariona, Hadar Ziv, Debra J. Richardson |
ISSTA | 3 |
| 2010 | Design and evaluation of a computer science and engineering course for middle school girlsabstractA significant focus in the United States recently has been to increase engagement and interest in STEM curricula, particularly among girls and underrepresented minorities [3]. In this work, we take an approach to teaching and learning that supports flexibility, experimentation, and play with technology. With this approach, we aim to make STEM curricula more comfortable and engaging for all types of children and teens, with a particular emphasis on lower socio-economic status female students. We designed and tested a computing course for middle school girls, and this work resulted in three best practices: hands-on work incorporating creativity through crafts into engineering and computing, the frequent presence of an audience to motivate engagement, and engineering-focused individual roles structuring group work. Pre- and post-surveys and exit interviews revealed significant changes in attitudes and an enthusiasm for engineering projects and careers as a result of participation in the course. Gabriela Marcu, Samuel J. Kaufman, Jaihee Kate Lee, Rebecca W. Black, Paul Dourish, Gillian R. Hayes, Debra J. Richardson |
SIGCSE | 7 |
| 2010 | iMuse: interactive model-based use-case and storytelling environmentabstractRequirements specification is an important problem in software engineering. Key challenges in Requirements Engineering (RE) include enabling different stakeholders to understand and validate the requirements, and enabling collaboration among different types of stakeholders with different skills and expertise and potentially conflicting needs and expectations. We contend that collaboration among both technical and non-technical stakeholders is improved by a requirements specification technique that provides both precision and usability - and a better balance of the two. We implement our specification technique in iMuse - Interactive Model-based Use-case and Storytelling Environment. In this demo, we show how iMuse can be used by stakeholders to express and view narrative functional requirements. Kristina Winbladh, Hadar Ziv, Debra J. Richardson |
SIGSOFT FSE | 3 |
| 2009 | A model-based regression test selection techniqueabstractThroughout their life cycle, software artifacts are modified, and selective regression testing is used to identify the negative impact of modifications. Code-based regression test selection retests test cases sub-set that traverse code modifications. It uses recovered relationships between code parts and test cases that traverse them to locate test cases for retest when code is modified. Broad adoption of model-centric development has created opportunities for software testing. It enabled driving testing processes at higher abstraction levels and demonstrating code to model compliance by means of Model-Based Testing (MBT). Models also evolve, so an important activity of MBT is selective regression testing. It selects test cases for retest based on model modification, so it relies on relationships between model elements and test cases that traverse those elements to locate test cases for retest. We contribute an approach and prototype that during test case generation creates fine-grained traceability relationships between model elements and test cases, which are used to support model-based regression test selection. Leila Naslavsky, Hadar Ziv, Debra J. Richardson |
ICSM | 3 |
| 2008 | Statistical Sampling Based Approach to Alleviate Log Replay TestingabstractTypical software systems in financial firms are message- based server-side systems , the regression testing of which is currently done through a 'log- replay' mechanism. As the production volumes are large and continue to grow rapidly, this approach leads to many problems such as scalability, resource crunch, reconciliation, redundancy, production impact. The approach in this paper continues to use the production log as the basis for regression testing. However, it deviates from the current approach in not using the entire production log but only a subset or sample of it.This approach has been implemented for regression testing of production systems in a major financial firm. The result was that the number of test cases executed converged to a small fraction of the number previously being executed, while still retaining a high degree of confidence in the code- coverage quality of the selected sample. Ravidutta Kodre, Hadar Ziv, Debra J. Richardson |
ICST | 3 |
| 2007 | CCARCH: Architecting Common Criteria Security RequirementsabstractAs technology continues to evolve, so do different entities that threaten the security of this technology. We believe that in order to build dependable software security should be treated just as any other important aspect of a system; to do this we must emphasize it at the beginning of our development cycle and be able to carry these security requirements down the cycle. We focus on a technique known as the Common Criteria, which allows for the development of security requirements. We extend the capabilities of Common Criteria beyond the requirements phase, to allow us to take security requirements into further stages of the cycle. In this paper we describe CCARCH, a technique accompanied by a set of tools, that takes Common Criteria expressed security requirements to the architectural level. Our approach aids in making the usage of Common Criteria more beneficial and applicable. Jose Romero-Mariona, Hadar Ziv, Debra J. Richardson |
IAS | 3 |
| 2007 | Using traceability to support model-based regression testingabstractModel-driven development is leading to increased use of models in conjunction with source code in software testing. Model-based testing, however, introduces new challenges for testing activities, which include creation and maintenance of traceability information among test-related artifacts. Traceability is required to support activities such as selective regression testing. In fact, most model-based testing automated approaches often concentrate on the test generation and execution activities, while support to other activities is limited (e.g. model-based selective regression testing, coverage analysis and behavioral result evaluation) Leila Naslavsky, Debra J. Richardson |
ASE | 2 |
| 2007 | Towards leveraging model transformation to support model-based testingabstractThe adoption of model-driven development is leading to increased use of models in conjunction with source code in software testing. Model-based testing, however, introduces new challenges for testing activities, which include creation and maintenance of traceability information among test-related artifacts. Traceability is required to support activities such as model-based result evaluation, regression testing and coverage analysis. In this paper, we present an automated approach that leverages model transformation techniques to support test generation. The test generation process includes creation of test-related models and fine-grained relationships among these models. We also motivate our approach with a simple example demonstrating support for model-based regression testing Leila Naslavsky, Hadar Ziv, Debra J. Richardson |
ASE | 3 |
| 2007 | In the Requirements Lies the Power
Rand Waltzman, Kristina Winbladh, Thomas A. Alspaugh, Debra J. Richardson |
SEKE | 4 |
| 2006 | LtRules: an automated software library usage rule extraction toolabstractThe need to manually specify temporal properties of software systems is a major barrier to wider adoption of software model checking, because the specification of software temporal properties is a difficult, time-consuming, and error-prone process. To address this problem, we propose to automatically extract software library usage rules, which are one type of temporal specifications. Our approach uses a model checker to check a set of software library usage rule candidates against known good programs using that library, and identifies valid rules based on model checking results. These valid rules can help programmers learn about common software library usage. They can also be used to check new programs using the same library. We have implemented our approach in an Eclipse plug-in named LtRules, which can extract software library usage rules from C programs using BLAST as the underlying model checker. Chang Liu 0028, En Ye, Debra J. Richardson |
ICSE | 3 |
| 2006 | Software Library Usage Pattern Extraction Using a Software Model CheckerabstractThe need to manually specify temporal properties of software systems is a major barrier to wider adoption of software model checking, because the specification of software temporal properties is a difficult, time-consuming, and error-prone process. To address this problem, we propose to automatically extract software library usage patterns, which are one type of temporal specifications. Our approach uses a model checker to check a set of software library usage pattern candidates against existing programs using that library, and identifies valid patterns based on model checking results. These valid patterns can help programmers learn about common software library usage. They can also be used to check new programs using the same library. We applied our approach to C programs using the OpenSSL library and the C standard library, and extracted valid usage patterns using BLAST. We also successfully used the extracted valid usage patterns to detect an error in an open source project hosted by SourceForge.net Chang Liu 0028, En Ye, Debra J. Richardson |
ASE | 3 |
| 2006 | An Automated Approach for Goal-driven, Specification-based TestingabstractThis paper presents a specification-based approach that addresses several known challenges including false positives and domain knowledge errors. Our approach begins with a goal graph and plans. Source code is annotated with goals and events and precompiled to emit those at run time. Plans are automatically translated into a rule-based recognizer. An oracle is produced from the pre- and postconditions associated with the plan's goals. When the program is executed, goals and events are emitted and automatically tested against plans and oracles. The concept is demonstrated on a small example and a larger publicly available case study Kristina Winbladh, Thomas A. Alspaugh, Hadar Ziv, Debra J. Richardson |
ASE | 4 |
| 2006 | Software architecture-based regression testing
Henry Muccini, Marcio S. Dias, Debra J. Richardson |
J. Syst. Softw. | 3 |
| 2006 | An architectural pattern for non-functional dependability requirements
Lihua Xu, Hadar Ziv, Thomas A. Alspaugh, Debra J. Richardson |
J. Syst. Softw. | 4 |
| 2005 | Reasoning About Software Architecture-Based Regression Testing Through a Case StudyabstractTwo main issues need to be covered when dealing with the dependability of component-based systems: quality assurance of reusable software components and quality assurance of the assembled component-based system. By focussing on the assembly, a software architecture specification of a component-based system allows to explicitly model the structure and required system behavior by specifying how components and connectors are intended to interact. Software architecture-based conformance testing techniques can yield confidence on the implementation conformance to expected structural and behavioral properties as specified in the architectural models. In this paper we explore software architecture-based regression testing methods that enable reuse of earlier saved results to test if a different assembly of components conforms to the evolved software architecture. The approach is presented through a running example. Henry Muccini, Marcio S. Dias, Debra J. Richardson |
COMPSAC (2) | 3 |
| 2005 | Informatics: Contextualizing Computer Science and Software Engineering EducationabstractProvides an abstract of the keynote presentation and a brief professional biography of the presenter. The complete presentation was not made available for publication as part of the conference proceedings. Debra J. Richardson |
CSEE&T | 1 |
| 2005 | A B.S. degree in informatics: contextualizing software engineering educationabstractSoftware engineering (SE) is very different in focus from traditional computer science: it is not just about computers and software, but as much about the context in which they are used. This means we must teach about software and information, development and design, technical and social issues, while creating solutions as well as understanding and analyzing them. In effect, we must teach a discipline broader than SE or CS alone for SE education to be effective. At UC Irvine, we designed and now offer a program doing just this -- a four-year B.S. degree in Informatics. The major brings topics in SE together with human-computer interaction, computer-supported collaborative work, social analysis, and management, along with other application disciplines. Here, we discuss the philosophy behind the major, its structure, and the questions concerning SE education that the new major raises. André van der Hoek, David G. Kay, Debra J. Richardson |
ICSE | 3 |
| 2005 | Extending undergraduate CS programs with informatics: emphasizing software and system design in contextabstractIn this poster we describe the diversification of our undergraduate curricula in the computing disciplines at UC Irvine, in particular the creation of Bachelor of Science degree in Informatics. David G. Kay, André van der Hoek, Debra J. Richardson |
ITiCSE | 3 |
| 2005 | Informatics: a focus on computer science in contextabstractBecause the field of computer science has broadened so much in recent years, traditional degree programs are becoming crowded with new courses, each introducing its own "essential" topic. However, with more and more such courses, it is no longer possible to cover every topic in a single, coherent, four-year program. Many alternative approaches are available to address this situation. At UC Irvine, we have chosen a solution in which we offer four coordinated degree programs: a B.S. in Computer Science & Engineering, a conventional B.S. in Computer Science, a new B.S. in Informatics, and a broad overview B.S. in Information and Computer Science. Of these, the B.S. in Informatics is the most innovative, focusing on software and information design. Context plays a particularly strong role in our B.S. in Informatics: Placing software development in context is critical to the delivery of successful solutions, and we educate our students accordingly. We present our definition of informatics, detail our curriculum, describe its pedagogical characteristics and objectives, and conclude with some critical observations regarding informatics and its place in computer science education. David G. Kay, André van der Hoek, Debra J. Richardson |
SIGCSE | 3 |
| 2004 | Generating Regression Tests via Model CheckingabstractDuring software maintenance, regression testing is an expensive but critical activity to ensure that modified versions of the system do not "regress". As software evolves, chances are that not only the implementation changes, but that the specification of the system changes too. We argue that guiding regression testing by the system specifications generated early in the software lifecycle will be more accurate than extracting specification from source code, and more cost effective. Model checking is used to reason about the truth of statements about the system specification. We use a model checker as part of a highly automated regression test generation tool, providing a practical approach to specification based regression testing. Features of our approach that support different specification description languages and different test coverage criteria are also presented. Lihua Xu, Marcio S. Dias, Debra J. Richardson |
COMPSAC | 3 |
| 2004 | Systematic Testing of Software Architectures in the C2 Style
Henry Muccini, Marcio S. Dias, Debra J. Richardson |
FASE | 3 |
| 2002 | Using RAIC for Dependable On-line Upgrading of Distributed SystemsabstractThe technology of redundant arrays of independent components (RAIC) uses groups of similar or identical distributed components to provide dependable services (Liu and Richardson, 2002). RAIC allows components in the redundant array to be added or removed dynamically during run-time. This paper gives a brief overview of RAIC and discusses its special application for dependable on-line upgrading of distributed systems. A proof-of-concept example is given to illustrate how problems that occur during upgrading can be masked by RAIC and thus not affect smooth operations of the system-under-upgrade. Chang Liu 0028, Debra J. Richardson |
COMPSAC | 2 |
| 2002 | Identifying Cause & Effect Relations between Events in Concurrent Event-Based ComponentsabstractConcurrent event-based components present characteristics that impose difficulties in understanding their dynamic behavior, mainly for interpreting the cause and effect relations between input and output events in component interactions. In this paper, we propose a technique to help in the process of understanding the dynamic behavior of concurrent event-based components. It checks the event trace (generated by monitoring the component execution) against a specification of the component communication protocol (even with a possibly incomplete or incorrect specification). The technique identifies and presents the more probable cause and effect relations between the component events, providing also a measurement related to this probability. Marcio S. Dias, Debra J. Richardson |
ASE | 2 |
| 2002 | Analyzing Dependencies in Large Component-Based SystemsabstractComponent-based development has become an important area in the software engineering field. In spite of this, there has been little effort to understand and to manage the different forms of dependencies that can occur in systems built from components. Dependencies reflect the potential for one component to affect or be affected by the elements (e.g., other components) that compose the system. Understanding dependencies is an essential requirement to perform important tasks, such as evolution and testing, during a component-based system's life cycle. In this paper, we present a technique to analyze dependencies in large component-based systems. Marlon E. R. Vieira, Debra J. Richardson |
ASE | 2 |
| 2000 | Using application states in software testing (poster)abstractAlgorithmic cost estimation in the context of software evolution is being addressed as part of the FEAST/2 project with encouraging results from an industrial case study. Chang Liu 0028, Debra J. Richardson |
ICSE | 2 |
| 2000 | Analyzing software architectures with Argus-IabstractThis formal research demonstration attempts to present an approach to develop and assess architecture and component-based systems based on specifying software architecture augmented by statecharts representing component behavioral specifications [1]. The approach is applied for the C2 style [2] and associated ADL and is supported within a quality-focussed environment, called Argus-I, which assists specification-based analysis and testing at both the component and architecture levels. Marlon E. R. Vieira, Marcio S. Dias, Debra J. Richardson |
ICSE | 3 |
| 2000 | Automated Security Checking and Patching Using TestTalkabstractIn many computer system security incidents, attackers successfully intruded computer systems by exploiting known weaknesses. Those computer systems remained vulnerable even after the vulnerabilities were known because it requires constant attention to stay on top of security updates. It is often both time-consuming and error-prone to manually apply security patches to deployed systems. To solve this problem, we propose to develop a framework for automated security checking and patching. The framework, named Securibot, provides a self-operating mechanism for security checking and patching. Securibot performs security testing using security profiles and security updates. It can also detect compromised systems using attack signatures. Most important, the Securibot framework allows system vendors to publish recently discovered security weaknesses and new patches in a machine-readable form so that the Securibot system running on deployed systems can automatically check out security updates and apply the patches. Chang Liu 0028, Debra J. Richardson |
ASE | 2 |
| 1999 | Towards Discovery, Specification, and Verification of Component UsageabstractImpediments to software quality are exacerbated when applications-under-test are developed using component-based software engineering. Component misuse is one such impediment. Component misuse occurs when a component is used in a way that differs from the component producer's expectation. This paper explores the cause of the component misuse problem and proposes a technique to discover, specify, and verify component usage. This technique utilizes regular expressions as the formalism to deal with component usage. This research is part of the software retrospector effort, which aims at a better approach to software analysis and testing for component-based software. Chang Liu 0028, Debra J. Richardson |
ASE | 2 |
| 1999 | Siddhartha: A Method for Developing Domain-Specific Test Driver GeneratorsabstractSiddhartha applies the domain-specific language (DSL) paradigm to solve difficult problems in specification-based testing (SBT). Domain-specific test case data specifications (TestSpecs) and difficult-to-test program design styles engender difficult SBT problems, which are the essential phenomena of interest to Siddhartha. Difficult-to-test program design styles are explicitly represented by domain-specific, unit test driver reference designs that accommodate the problematic program design styles. DSLs are developed to represent both TestSpecs and Driver reference designs. A DSL language processing tool (a translator) is developed that maps TestSpecs into Drivers. We developed a prototype implementation of Siddhartha via Reasoning SDK (formerly known as Software Refinery) and developed two domain-specific TestSpec/spl rarr/Driver translators. Each translator generated Drivers that revealed new failures in a real-world digital flight control application program. Arthur Alexander Reyes, Debra J. Richardson |
ASE | 2 |
| 1998 | The Most Influential Papers from the ISSTA Research Community (Panel)abstractNo abstract available. Richard G. Hamlet, Richard A. Kemmerer, Edward F. Miller, Debra J. Richardson |
ISSTA | 4 |
| 1998 | ADLscope: An Automated Specification-based Unit Testing ToolabstractSpecification-based testing is important because it relates directly to what the program is supposed to do and can detect certain errors that are often not detected by traditional code-based testing techniques such as branch coverage and statement coverage. We have developed an automated testing tool, called ADLscope, that utilizes the formal specification of a program unit as the basis for test coverage measurement. A tester uses ADLscope to test application programming interfaces (APIs) written in the C programming language. The API must be formally specified in the Assertion Definition Language (ADL). The tester uses ADLscope to generate coverage conditions from a program's ADL specifications. When the API is tested, ADLscope automatically measures how many of the coverage conditions have been covered by the tests. Juei Chang, Debra J. Richardson |
ASE | 2 |
| 1998 | Specification-based Testing of Ada Units with Low EncapsulationabstractDescribes a system that improves testing quality by supporting automatic test data selection, execution and result verification. The system tests poorly-encapsulated Ada units against formal specifications. This task is difficult partly because the unit's interface is not explicit, but rather is buried in the body/implementation code. We attack this problem by making the unit's interface explicit and complete. This is accomplished via automatic and manual analysis of the body. The complete interface is represented using an extended algebraic signature notation. Once the signature has been discovered, it can be reformulated so that a collection of well-defined, static mappings are established between it and the signature of the unit's formal specification. These mappings guide the development of test artifact transformers and oracles, which support automatic test data selection, execution and result verification. This paper discusses problems that arise as a result of testing under low encapsulation, discusses our solution using an ongoing example, and compares our solution to earlier solutions. Arthur Alexander Reyes, Debra J. Richardson |
ASE | 2 |
| 1997 | Constructing Bayesian-network models of software testing and maintenance uncertaintiesabstractThe lifetime of many software systems is surprisingly long, often far exceeding initial plans and expectations. During software evolution and maintenance, developers and managers frequently gain or lose confidence in software artifacts, especially when existing uncertainties are relieved or new ones are encountered. Fluctuations in developers' confidences may in turn affect process actions or decisions, e.g. in determining the impact of change, whether regression testing is needed or when to stop testing. We present an approach that allows developers' confidences or “beliefs” regarding software components to be modeled and updated directly. This approach is part of an overall strategy that calls for explicit modeling of software uncertainties using the technique called Bayesian belief networks. Initially, we present several kinds of software uncertainty and how they may be modeled. This is followed by introducing Bayesian belief networks and how they may be used to either confirm, evaluate or predict software uncertainties. We discuss our experiences in constructing Bayesian-network models for an existing software system under development at Beckman Instruments. Once constructed, these models may be used by developers and managers in future software understanding, evolution and maintenance activities. We also list several factors that may affect confidence as identified in conjunction with the Beckman study. Finally, we describe the design and implementation of a Java program that allows software systems and associated beliefs to be modeled explicitly Hadar Ziv, Debra J. Richardson |
ICSM | 2 |
| 1996 | An Evaluation of Software Test Environment Architectures
Nancy S. Eickelmann, Debra J. Richardson |
ICSE | 2 |
| 1996 | Structural Specification-Based Testing with ADLabstractThis paper describes a specification-based black-box technique for testing program units. The main contribution is the method that we have developed to derive test conditions, which are descriptions of test cases, from the formal specification of each program unit. The derived test conditions are used to guide test selection and to measure comprehensiveness of existing test suites. Our technique complements traditional code-based techniques such as statement coverage and branch coverage. It allows the tester to quickly develop a black-box test suite.In particular, this paper presents techniques for deriving test conditions from specifications written in the Assertion Definition Language (ADL) [SH94], a predicate logic-based language that is used to describe the relationships between inputs and outputs of a program unit. Our technique is fully automatable, and we are currently implementing a tool based on the techniques presented in this paper. Juei Chang, Debra J. Richardson, Sriram Sankar |
ISSTA | 2 |
| 1996 | Legal Sufficiency of Testing Processes
Clark Savage Turner, Debra J. Richardson, John Leslie King |
SAFECOMP | 2 |
| 1994 | TAOS: Testing with Analysis and Oracle SupportabstractFew would question that software testing is a necessary activity for assuring software quality, yet the typical testing process is a human intensive activity and as such, it is unproductive, error-prone, and often inadequately done. Moreover, testing is seldom given a prominent place in software development or maintenance processes, nor is it an integral part of them. Major productivity and quality enhancements can be achieved by automating the testing process through tool development and use and effectively incorporating it with development and maintenance processes. Debra J. Richardson |
ISSTA | 1 |
| 1993 | An Information Flow Model of Fault DetectionabstractRELAY is a model of how a fault causes a failure on execution of some test datum. This process begins with introduction of an original state potential failure at a fault location and continues as the potential failure(s) transfers to output. Here we describe the second stage of this process, transfer of an incorrect intermediate state from a faulty statement to output. Margaret C. Thompson, Debra J. Richardson, Lori A. Clarke |
ISSTA | 2 |
| 1993 | An Analysis of Test Data Selection Criteria Using the RELAY Model of Fault DetectionabstractRELAY is a model of faults and failures that defines failure conditions, which describe test data for which execution will guarantee that a fault originates erroneous behavior that also transfers through computations and information flow until a failure is revealed. This model of fault detection provides a framework within which other testing criteria's capabilities can be evaluated. Three test data selection criteria that detect faults in six fault classes are analyzed. This analysis shows that none of these criteria is capable of guaranteeing detection for these fault classes and points out two major weaknesses of these criteria. The first weakness is that the criteria do not consider the potential unsatisfiability of their rules. Each criterion includes rules that are sufficient to cause potential failures for some fault classes, yet when such rules are unsatisfiable, many faults may remain undetected. Their second weakness is failure to integrate their proposed rules.> Debra J. Richardson, Margaret C. Thompson |
IEEE Trans. Software Eng. | 1 |
| 1992 | Specification-Based Test Oracles for Reactive SystemsabstractArticle Specification-based test oracles for reactive systems Share on Authors: Debra J. Richardson View Profile , Stephanie Leif Aha View Profile , T. Owen O'Malley View Profile Authors Info & Claims ICSE '92: Proceedings of the 14th international conference on Software engineeringJune 1992 Pages 105–118https://doi.org/10.1145/143062.143100Online:01 June 1992Publication History 114citation1,378DownloadsMetricsTotal Citations114Total Downloads1,378Last 12 Months18Last 6 weeks0 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access Debra J. Richardson, Stephanie Leif Aha, T. Owen O'Malley |
ICSE | 1 |
| 1989 | A Formal Evaluation of Data Flow Path Selection CriteriaabstractThe authors report on the results of their evaluation of path-selection criteria based on data-flow relationships. They show how these criteria relate to each other, thereby demonstrating some of their strengths and weaknesses. A subsumption hierarchy showing their relationship is presented. It is shown that one of the major weaknesses of all the criteria is that they are based solely on syntactic information and do not consider semantic issues such as infeasible paths. The authors discuss the infeasible-path problem as well as other issues that must be considered in order to evaluate these criteria more meaningfully and to formulate a more effective path-selection criterion.> Lori A. Clarke, Andy Podgurski, Debra J. Richardson, Steven J. Zeil |
IEEE Trans. Software Eng. | 3 |
| 1985 | A Comparison of Data Flow Path Selection Criteria
Lori A. Clarke, Andy Podgurski, Debra J. Richardson, Steven J. Zeil |
ICSE | 3 |
| 1985 | Applications of symbolic evaluation
Lori A. Clarke, Debra J. Richardson |
J. Syst. Softw. | 2 |
| 1985 | Partition Analysis: A Method Combining Testing and VerificationabstractThe partition analysis method compares a procedure's implementation to its specification, both to verify consistency between the two and to derive test data. Unlike most verification methods, partition analysis is applicable to a number of different types of specification languages, including both procedural and nonprocedural languages. It is thus applicable to high-level descriptions as well as to low-level designs. Partition analysis also improves upon existing testing criteria. These criteria usually consider only the implementation, but partition analysis selects test data that exercise both a procedure's intended behavior (as described in the specifications) and the structure of its implementation. To accomplish these goals, partition analysis divides or partitions a procedure's domain into subdomains in which all elements of each subdomain are treated uniformly by the specification and processed uniformly by the implementation. This partition divides the procedure domain into more manageable units. Information related to each subdomain is used to guide in the selection of test data and to verify consistency between the specification and the implementation. Moreover, the testing and verification processes are designed to enhance each other. Initial experimentation has shown that through the integration of testing and verification, as well as through the use of information derived from both the implementation and the specification, the partition analysis method is effective for evaluating program reliability. This paper describes the partition analysis method and reports the results obtained from an evaluation of its effectiveness. Debra J. Richardson, Lori A. Clarke |
IEEE Trans. Software Eng. | 1 |
| 1982 | A Close Look at Domain TestingabstractWhite and Cohen have proposed the domain testing method, which attempts to uncover errors in a path domain by selecting test data on and near the boundary of the path domain. The goal of domain testing is to demonstrate that the boundary is correct within an acceptable error bound. Domain testing is intuitively appealing in that it provides a method for satisfying the often suggested guideline that boundary conditions should be tested. Lori A. Clarke, Johnette Hassell, Debra J. Richardson |
IEEE Trans. Software Eng. | 3 |
| 1981 | A Partition Analysis Method to Increase Program Reliability
Debra J. Richardson, Lori A. Clarke |
ICSE | 1 |