Chair, Organizing Committee for the Workshop on Software Engineering and Programming Languages, Cambridge MA (June 1996).
Co-chair, Working Group on Software Engineering and Programming Languages, CRA/ACM Strategic Directions in Computing Research, Cambridge MA (June 1996).
Associate editor, ACM Transactions on Software Engineering and Methodology (1989-1997).
Associate editor, Journal of Programming Languages (1992-1997).
General co-chair, 8th Israeli Conference on Computer Systems and Software Engineering (June 1997).
Program committee chair
Co-chair, 17th International Conference on Software Engineering (April 1995). Proceedings of the 17th International Conference on Software Engineering. Ross Jeffery and David Notkin, editors. ACM Press, April 1995. ISBN 0-89791-708-1.
Guest editor, Special Section of the Best Papers of the 17th International Conference on Software Engineering. D. Notkin and D.R. Jeffery. IEEE Transactions on Software Engineering 22,6 (June 1996).
ACM SIGSOFT '93 Symposium on Foundations of Software Engineering (December 1993). Proceedings of the First ACM SIGSOFT Symposium on the Foundations of Software Engineering. David Notkin, editor. December 1993. ISBN 0-89791-625-5. Appears as ACM SIGSOFT Software Engineering Notes 18,5 (December 1993).
ACM Software Systems Award Committee (1993-98, chair 1996-97).
International Conference on Software Engineering Steering Committee (1993-1998, chair 1994-96).
ACM SIGSOFT Chair (1997-99).
ACM SIGSOFT Secretary/Treasurer (1992-1997).
Program committee member
First ACM SIGPLAN Workshop on the Automated Analysis of Software (January 1997).
International Conference on Software Engineering '97 (May 1997).
Fourth Workshop on Program Comprehension (March 1996).
2nd International Symposium on Object Technologies for Advanced Software (March 1996).
ACM SIGSOFT '94 Symposium on Foundations of Software Engineering (December 1994).
Sixteenth International Conference on Software Engineering (May 1994).
1st International Symposium on Object Technologies for Advanced Software (November 1993).
Fifteenth International Conference on Software Engineering (May 1993).
1st International Workshop on Feature Interactions in Telecommunications Software Systems (December 1992).
ACM SIGSOFT '92: Fifth Symposium on Software Development Environments (December 1992).
Second International Symposium on Environments and Tools for Ada (January 1992).
Fifth International Workshop on the Software Process (October 1990).
Second ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (March 1990).
Thirteenth International Conference on Software Engineering (May 1991).
Twelfth International Conference on Software Engineering (March 1990). Area chair: environments.
Eleventh International Conference on Software Engineering (May 1989).
ACM SIGSOFT '88: Third Symposium on Software Development Environments (December 1988).
National Science Foundation, CCR CAREERS, December 1995.
National Science Foundation, Information Infrastructure Technology and Applications, June 1994.
National Science Foundation, Research Initiation Awards, CISE/Software Engineering, March 1994.
National Science Foundation, Institutional Laboratory Infrastructure Awards, January 1992.
Distinguished Lecture, University of Alberta, Department of Computer Science, March 1997.
Referee or reviewer: Communications of the ACM, ACM Transactions on Programming Languages and Systems, ACM Transactions on Computer Systems, ACM Computing Surveys, IEEE Transactions on Computers, IEEE Transactions on Software Engineering, IEEE Transactions on Parallel and Distributed Systems, IEEE Computer, IEEE Software, IEEE Micro, IPL Letters, Software Practice & Experience, ACM Doctoral Dissertation Award competition, National Science Foundation, various publishing houses.
Chair, ``Novel notions, wild idea, and fun flames.'' ACM SIGSOFT '96 Fourth Symposium on the Foundations of Software Engineering (October 1996).
Panelist, ``What can programming languages contribute to software engineering, and vice versa.'' ACM SIGSOFT '96 Fourth Symposium on the Foundations of Software Engineering (October 1996).
Speaker, NSF Workshop on Research Results and Innovative Teaching, Evergreen State College, Olympia WA (June 1996). Title: “The Use of Software Engineering Tools in Senior-Level Courses.”
Speaker, Workshop on Component-Based Software Development, Microsoft Corporation, Redmond WA (June 1996). Title: “Components: Design and Extraction.”
Tutorial presenter (with G. Murphy), International Conference on Software Maintenance '96, San Jose CA (November 1996). Title: “Alternative Approaches to Software Maintenance Tasks.”
Speaker, Nanzan University 25th Anniversary Workshop on the Future of Software Engineering, Nagoya Japan (February 1996). Position paper: “Noisy Data in Software Engineering: Preliminary Thoughts.”
Participant, Workshop on Foundational Studies for Software Engineering, Stanford University, Palo Alto, CA (September 1995). Position paper: “Approximation and Task in Software Engineering.”
External dissertation appraiser, Spiros Mancoridis, University of Toronto (January 1996).
External dissertation committee member, Yi-Jing Lin, Brown University (October 1995).
Participant, Workshop on Software Architecture (Dagstuhl, February 1995). Position paper: “Reflection Models: Exploiting High-Level Models without Compromising Reality.”
Panelist, “Making Software Engineering Research More Scientific.” ACM SIGSOFT 94 Symposium on the Foundations of Software Engineering (New Orleans, December 1994).
Speaker, JSSST International Symposium on Object Technologies for Advanced Software, Kanazawa Japan (November 1993).
Participant, Workshop on Studies of Software Design (Baltimore, May 1993). Position paper (with Gail Murphy): “Difficulties with Object-Oriented Frameworks.” Appears in Proceeding of the Workshop on Studies of Software Design. Baltimore, MD, May 17-18, 1993. Compiled by David Alex Lamb and Sandra Crocker. Available as Queen's University Department of Computing and Information Science External Technical Report ISBN-0836-0227-93-352.
Participant, Future Directions in Software Engineering (Dagstuhl, February 1992). Position paper: “Software Evolution.”
External Member, Ph.D. committee for Robert L. Nord, School of Computer Science, Carnegie Mellon University (November 1991).
Session chair, 3rd International Workshop on Software Quality Improvement (Tokyo, January 1991). Position paper: “Software Evolution, Structure, and Archeology.”
Invited speaker, SRA Private Show '90 Autumn (Tokyo, September 1990): “Accommodating Heterogeneous Computer Systems.”
Panelist, Information Processing Society of Japan, Joint Meeting of Special Interest Groups on Programming Languages and Databases (Tokyo, September 1990). Position paper: “Events Models for Integration.”
Participant, SIGCHI '90 Workshop on Structure Editing (Seattle, April 1990). Position paper: “Non-Intrusive Error Reporting Using Color.”
Opponent, Ph.D. committee for Sten Minör, School of Electrical Engineering, Lund Institute of Technology (February 1990).
Panelist, The Structure of Distributed Systems. Software Engineers' Association (Tokyo, June 1989).
Session organizer, The Relationship Between Software Development Environments and the Software Process. ACM SIGSOFT '88: Third Symposium on Software Development Environments, Boston MA (December 1988).
Poster presentation, Washington Exhibition of Science and Technology, WEST '88 (Seattle, October 1988).
Session recorder, 4th Software Process Workshop, Devon, England (May 1988). Position paper: “Full Lifecycle, Enactable Software Process Models are Premature.” Appears in ACM SIGSOFT Software Engineering Notes 14,4, pp.116--117 (June 1989).
Speaker, Second Workshop on Large-Grained Parallelism (October 1987). Position paper: “Research in Parallelism at the University of Washington.” Appears inProceedings from the Second Workshop on Large-Grained Parallelism, Special Report CMU/SEI-87-SR-5, Carnegie-Mellon University, Software Engineering Institute, pp. 67--71 (November 1987).
Participant, Workshop on Performance Efficient Parallel Programming (September 1986). Position paper: “Parallel Programming Environments.”
Invited participant, Workshop on Requirements for Programming Environments, University of Maryland (May 1986). Position paper: “Enhancement through Extension.”
Scribe, ACM SIGOPS Workshop on Accommodating Heterogeneity (Orcas Island, December 1985).
Group leader (Environments for Heterogeneous Systems), Workshop on Software Engineering Environments for Programming-in-the-Large (June 1985). Position paper: “Structure Editing Environments.”
Speaker, Second International Symposium on Computation and Information, Monterrey, Mexico (September 1983).
Speaker, Associated Simula Users' Workshop on Program Development Tools, Lund, Sweden (February 1983).
Author of questions for Graduate Record Examination in Computer Science (1984-87).
Site visitor: Ohio State University, Department of Computer and Information Sciences; Ohio State Board of Regents, Ohio Eminent Scholars Program (1988).
Consultant: TRW, Siemens, US Army, Bell Laboratories, Tartan Laboratories, IBM, Xerox PARC, US West/AT, Stoel Rives Boley Jones & Grey, Preston Thorgrimson Shidler Gates & Ellis, MacDonald, Hoague & Bayless, Perkins Coie.
Contributor, Language Information Reports (LIRs) as part of the test and evaluation of Ada (with A. N. Habermann and D. E. Perry).
Contributor to the definition of Stoneman, the programming environment for Ada.
Membership
Association for Computing Machinery. Special Interest Groups: Programming Languages, Software Engineering. Officer, Brown University Student Chapter (1975-77).
Institute of Electrical and Electronic Engineers. IEEE Computer Society.
Society of the Sigma Xi. Carnegie-Mellon University Chapter, Full Member (1983). Brown University Chapter, Associate Member (1977).
Local arrangements chair, Second ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (March 1990).