@article{domec_rivera_king_peszlen_hain_smith_frampton_2013, title={Hemlock woolly adelgid (Adelges tsugae) infestation affects water and carbon relations of eastern hemlock (Tsuga canadensis) and Carolina hemlock (Tsuga caroliniana)}, volume={199}, ISSN={0028-646X 1469-8137}, url={http://dx.doi.org/10.1111/nph.12263}, DOI={10.1111/nph.12263}, abstractNote={Summary}, number={2}, journal={New Phytologist}, publisher={Wiley}, author={Domec, Jean‐Christophe and Rivera, Laura N. and King, John S. and Peszlen, Ilona and Hain, Fred and Smith, Benjamin and Frampton, John}, year={2013}, month={Apr}, pages={452–463} } @inproceedings{massey_smith_otto_anton_2011, title={Assessing the accuracy of legal implementation readiness decisions}, DOI={10.1109/re.2011.6051661}, abstractNote={Software engineers regularly build systems that are required to comply with laws and regulations. To this end, software engineers must determine which requirements have met or exceeded their legal obligations and which requirements have not. Requirements that have met or exceeded their legal obligations are legally implementation ready, whereas requirements that have not met or exceeded their legal obligations need further refinement. Research is needed to better understand how to support software engineers in making these determinations. In this paper, we describe a case study in which we asked graduate-level software engineering students to assess whether a set of software requirements for an electronic health record system met or exceeded their corresponding legal obligations as expressed in regulations created pursuant to the U.S. Health Insurance Portability and Accountability Act (HIPAA). We compare the assessment made by graduate students with an assessment made by HIPAA compliance subject matter experts. Additionally, we contrast these results with those generated by a legal requirements triage algorithm. Our findings suggest that the average graduate-level software engineering student is ill-prepared to write legally compliant software with any confidence and that domain experts are an absolute necessity. Our findings also indicate the potential utility of legal requirements metrics in aiding software engineers as they make legal compliance decisions.}, booktitle={2011 19th ieee international requirements engineering conference (re)}, author={Massey, A. K. and Smith, B. and Otto, P. N. and Anton, A. I.}, year={2011}, pages={207–216} } @inproceedings{smith_2011, title={Systematizing security test case planning using functional requirements phrases}, booktitle={2011 33rd International Conference on Software Engineering (ICSE)}, author={Smith, B.}, year={2011}, pages={1136–1137} } @article{smith_phillips_2011, title={Truckers drive their own assessment for obstructive sleep apnea: A collaborative approach to online self-assessment for obstructive sleep apnea}, volume={7}, number={3}, journal={Journal of Clinical Sleep Medicine}, author={Smith, B. and Phillips, B. A.}, year={2011}, pages={238–242} } @inproceedings{smith_williams_austin_2010, title={Idea: Using system level testing for revealing SQL injection-related error message information leaks}, volume={5965}, booktitle={Engineering secure software and systems, proceedings}, author={Smith, B. and Williams, L. and Austin, A.}, year={2010}, pages={192–200} } @article{smith_williams_2009, title={On guiding the augmentation of an automated test suite via mutation analysis}, volume={14}, ISSN={["1573-7616"]}, DOI={10.1007/s10664-008-9083-7}, abstractNote={Mutation testing has traditionally been used as a defect injection technique to assess the effectiveness of a test suite as represented by a “mutation score.” Recently, mutation testing tools have become more efficient, and industrial usage of mutation analysis is experiencing growth. Mutation analysis entails adding or modifying test cases until the test suite is sufficient to detect as many mutants as possible and the mutation score is satisfactory. The augmented test suite resulting from mutation analysis may reveal latent faults and provides a stronger test suite to detect future errors which might be injected. Software engineers often look for guidance on how to augment their test suite using information provided by line and/or branch coverage tools. As the use of mutation analysis grows, software engineers will want to know how the emerging technique compares with and/or complements coverage analysis for guiding the augmentation of an automated test suite. Additionally, software engineers can benefit from an enhanced understanding of efficient mutation analysis techniques. To address these needs for additional information about mutation analysis, we conducted an empirical study of the use of mutation analysis on two open source projects. Our results indicate that a focused effort on increasing mutation score leads to a corresponding increase in line and branch coverage to the point that line coverage, branch coverage and mutation score reach a maximum but leave some types of code structures uncovered. Mutation analysis guides the creation of additional “common programmer error” tests beyond those written to increase line and branch coverage. We also found that 74% of our chosen set of mutation operators is useful, on average, for producing new tests. The remaining 26% of mutation operators did not produce new test cases because their mutants were immediately detected by the initial test suite, indirectly detected by test suites we added to detect other mutants, or were not able to be detected by any test.}, number={3}, journal={EMPIRICAL SOFTWARE ENGINEERING}, author={Smith, Ben H. and Williams, Laurie}, year={2009}, month={Jun}, pages={341–369} } @article{smith_williams_2009, title={Should software testers use mutation analysis to augment a test set?}, volume={82}, ISSN={["1873-1228"]}, DOI={10.1016/j.jss.2009.06.031}, abstractNote={Mutation testing has historically been used to assess the fault-finding effectiveness of a test suite or other verification technique. Mutation analysis, rather, entails augmenting a test suite to detect all killable mutants. Concerns about the time efficiency of mutation analysis may prohibit its widespread, practical use. The goal of our research is to assess the effectiveness of the mutation analysis process when used by software testers to augment a test suite to obtain higher statement coverage scores. We conducted two empirical studies and have shown that mutation analysis can be used by software testers to effectively produce new test cases and to improve statement coverage scores in a feasible amount of time. Additionally, we find that our user study participants view mutation analysis as an effective but relatively expensive technique for writing new test cases. Finally, we have shown that the choice of mutation tool and operator set can play an important role in determining how efficient mutation analysis is for producing new test cases.}, number={11}, journal={JOURNAL OF SYSTEMS AND SOFTWARE}, author={Smith, Ben H. and Williams, Laurie}, year={2009}, month={Nov}, pages={1819–1832} }