John Goodenough retired from the SEI in December 2011 but is pursuing his research on assurance case confidence as a part-time member of the Research, Technology, and System Solutions Program. His current work involves the development of a theory for assessing confidence in assurance cases using eliminative induction and defeasible reasoning, both notions borrowed from philosophy. A forthcoming report will describe this work.
Goodenough led the SEI's System of Systems (SoS) Software Assurance (SoSSA) research initiative, an activity started in FY2008. The project investigated assurance issues that arise in large-scale systems of systems. The key research question was determining what types of evidence (and associated argumentation) are needed to achieve justified confidence that SoS behavior (with respect to quality attributes such as reliability, availability, performance, or security) will be acceptable when the SoS is used in its actual and evolving usage environment. The ultimate goal was to provide an integrated set of methods and practices for developing justified confidence in the acceptability of SoS behavior under all field and usage conditions.
From 2002 until 2007, Goodenough led the Performance Critical Systems Initiative. His research work focused on the application of assurance cases.
From 1996 until 2002, Goodenough was the Chief Technical Officer of the SEI. From 1986 until 1996 he led a project developing the theory and practice of rate monotonic analysis for real-time systems.
Goodenough was named a Fellow of the Association for Computing Machinery (ACM) in 1995. He was a Distinguished Reviewer for the Ada 95 language revision effort and served as head of the U.S. delegation to the ISO Working Group on Ada. He was the principal author of the document specifying the revision requirements for Ada 95 and served as chair of the group responsible for recommending interpretations of the Ada language.
Before joining the SEI, Goodenough was manager of the research and development department of SofTech, Inc. His work focused on the Ada programming language. He was the principal designer of one of the candidate languages leading to Ada. He later led the Ada Compiler Validation effort and helped develop Ada training materials.
Goodenough has worked at the Wang Institute of Graduate Studies as a visiting scholar, where he lectured on software reusability and testing and led seminars on object-oriented languages. He also has worked at the Air Force Electronic Systems Division in Bedford, Mass. There, he was responsible for formulating contract and in-house research and development, and he sponsored the first research work on software maintenance.
Publications (recent or significant)
- Weinstock, C.B., Goodenough, J.B., and Hudak, J.J., "Dependability Cases", CMU/SEI-2004-TN-016.
- Sha, L. and Goodenough, J.B. "Real-Time Scheduling Theory and Ada," Computer 23, 4 (April 1990): 53-62.
- Ross, D.T., Goodenough, J.B., and Irvine, C.A., "Software engineering: Process, principles, and goals," Computer 8, 5 (May 1975): 17-27.
- Goodenough, J.B. and Gerhart, S. L. "Toward a Theory of Test Data Selection," IEEE-TSE 1, 2 (June 1975): 156-173.
- Goodenough, J.B. "Exception handling: issues and a proposed notation." CACM 17, 12 (Dec. 1975): 683-696.
- PhD, Computer Science, Harvard University
- MA, Computer Science, Harvard University
- BA, Physics, Harvard College