David Weiss

Professor of Software Engineering
Office: 229 Atanasoff (Computer Science), 2214 Coover (ECE)
Phone: (515) 294-1580
Email: weiss at iastate dot edu


Spring 2015

SE 329: Project Management


Fall 2014

SE 329: Project Management

COMS 410/510: Distributed Software Development

HONORS 321Q: Software Design: What, Why, and How?



     Ph.D.                   Computer Science, University of Maryland,
                                 December, 1981

     M.S.                    Computer Science, University of Maryland,
                                 August, 1973

     B.S.                     Mathematics, Union College, June, 1964

Current Affiliations

Biographical Sketch

David M. Weiss received the B.S. degree in Mathematics in 1964 from Union College, and the M.S. in Computer Science in 1974 and the Ph.D. in Computer Science in 1981 from the University of Maryland. He is currently professor of software engineering at Iowa State University.

Previously, he was the Director of the Software Technology Research Department at Avaya Laboratories, where he worked on the problem of how to improve the effectiveness of software development in general and of Avaya's software development processes in particular. To focus on the latter problem, he formed and led the Avaya Resource Center for Software Technology.

Before joining Avaya Labs, he was the head of the Software Production Research Department at Lucent Technologies Bell Laboratories, which conducted research on how to improve the effectiveness of software development. Prior to Bell Labs, he was Director of the Reuse and Measurement Department of the Software Productivity Consortium (SPC), a consortium of 14 large U.S. aerospace companies. Before SPC Dr. Weiss spent a year at the Office of Technology Assessment, where he was co-author of a technology assessment of the Strategic Defense Initiative. During the 1985-1986 academic year he was a visiting scholar at The Wang Institute and for many years was a researcher at the Computer Science and Systems Branch of the Naval Research Laboratory (NRL), in Washington, D.C. He has also worked as a programmer and as a mathematician. Dr. Weiss is a senior member of the IEEE.

Dr. Weiss's principal research interests are in the area of software engineering, particularly in software development processes and methodologies, software design, and software measurement. His best known work is the goal-question-metric approach to software measurement, his work on the modular structure of software systems, and his work in software product-line engineering as a co-inventor of the Synthesis process, and its successor the FAST process. He is co-author and co-editor of two books: Software Product Line Engineering and Software Fundamentals: Collected Papers of David L. Parnas. Papers on which he has been co-author have three times won retrospective awards, twice from the IEEE and once from the ACM.

Research Interests

Software Engineering
Software Architecture
Software Measurement
Software Product Line Engineering
Distributed Software Development

Research Areas

Software Engineering, Software Systems


Ph.D.   Computer Science, University of Maryland   1981
M.S.   Computer Science, University of Maryland   1973
B.S.   Mathematics, Union College   1964

Honors and Awards

IEEE Software 25th Anniversary Top Pick selection  "Architecture Reviews: Practice and Experience, with J. Maranzano, S. Rozsypal, G. Warnken, P. Wirth, A. Zimmerman", 2008

ACM SIGSOFT Impact Paper Award  "The Modular Structure of Complex Systems?, with P. Clements and D. Parnas", 2008

Best Retrospective Paper Award from 7th International Conference on Software Engineering  "The Modular Structure of Complex Systems, with P. Clements and D. Parnas", 1995

Representative Publications (See also https://scholar.google.com/citations?user=T1iIhDEAAAAJ&hl=en)

Refereed Journal and Conference Publications

Dong Li, David Weiss. Adding Value through Software Product Line Engineering: The Evolution of the FISCAN Software Product Line. Software Product Lines Conference, Munich, Germany, 2011.

Randy Hackbarth, Audris Mockus, John Palframan, David Weiss. Assessing the State of Software in a Large Enterprise. Journal of Empirical Software Engineering, Springer, 2009.

Hazhir Rahmandad, David Weiss. Dynamics of Concurrent Software Development. System Dynamics Review, Wiley Interscience. Vol. 25. No. 3. pp. 224-229, 2009.

H. Slye, H. Sun, T. Trung, J.Li, D. Weiss. Decision-model-based Code Generation for PLE. Software Product LInes Conference 2008, Limerick, Ireland, Submitted, 2008.

Mockus, Audris., Weiss, David. Interval Quality: Relating Customer-Perceived Quality To Process Quality. International Conference on Software Engineering 200, Leipzig, Germany, IEEE, 2008.

Maranzano, J., Rozsypal, S., Warnken, G., Weiss, D., Wirth, P., . Zimmerman, A. Architecture Reviews: Practice and Experience. IEEE Software, IEEE, 2005.

Mockus, A., Zhang, P., Weiss, D.;. Understanding and Predicting Effort in Software Projects. International Conference on Software Engineering 2003, Portland, OR, IEEE, 2003.

Mockus, Audris., Weiss, David. Globalization By Chunking: A Quantitative Approach. IEEE Software, IEEE, 2001.

Ardis, M.,Daley, N., Hoffman, D., Siy, H., Weiss, D. Software Product Lines: A Case Study. Software Practice and Experience, Wiley. Vol. 30. No. 7, 2000.

Gupta, N., Jagadeesan, L., Koutsofios, E. Weiss, D. Auditdraw: Generating Audits the FAST Way. IEEE International Symposium on Requirements Engineering, Annapolis, MD, IEEE, 1997.

David Weiss. Teaching A Software Design Methodology. IEEE Transactions on Software Engineering, IEEE. Vol. SE-13. No. 11, 1987.

David Weiss. The FAST Process. Computing in High Energy Physics 95, Rio De Janeiro, Brazil, 1985.

David Parnas, David Weiss. Active Design Reviews: Principles and Practices. International Conference on Software Engineering 1985, London, England, IEEE, 1985.

Victor Basili, David Weiss. Evaluating Software Development By Analysis of Changes: Some Data From The Software Engineering Laboratory. IEEE Transactions on Software Engineering, IEEE, 1985.

Victor Basili, David Weiss. A Methodology For Collecting Valid Software Engineering Data. IEEE Transactions on Software Engineering, IEEE, 1984.

P. C. Clements, D. L. Parnas, D. M. Weiss. The Modular Structure of Complex Systems. International Conference on Software Engineering 1984, Orlando, FL, IEEE, Submitted, 1984.

P. Mange, R. Meier, D. Weiss. A High Altitude Measurement of the Lyman-alpha Nightglow at Solar Minimum,. Journal of Geophysical Research, American Geophysical Union. Vol. 25, 1970.


Daniel M. Hoffman, David M. Weiss, eds. Software Fundamentals. Addison Wesley 2001.

David M. Weiss, Robert Chi Tau Lai. Software Product Line Engineering, A Family Based Development Process. Addison Wesley 1999.

Book Chapters

Randy Hackbarth, Audris Mockus, John Palframan, David Weiss. Assessing the State of Software in a Large Enterprise, Chapter 15 of Analyzing Software Development, Bird, Zimmerman, Menzies, eds., to be published, spring 2015.
David Weiss, John Klein. What Is Architecture?. In: Beautiful Architecture (Ed. Diomidis Spinellis, Georgios Gousios), O'Reilly 2009.


Bentley; Jon L, Krishnakumar; Anjur Sundaresan, Weiss; David M;
Automated peer authentication, Patent 8,646,039, issued 4 February 2014

Li, Juan Jenny; Weiss; David M.; Efficient program instrumentation, Patent 8,484,623, issued 9 July 2013

Li, Juan Jenny; Weiss; David M.; Efficient encoding of instrumented data in real-time concurrent systems, Patent 8,356,289, issued 15  January 2013

Li, Juan Jenny; Weiss; David M.; Off-line program analysis and run-time instrumentation, Patent 8,291,399, issued 16  October 2012

Diethorn; Eric, Bentley; Jon, Krishnakumar; Anjur Sundaresan Weiss; David, Facilities management system, Patent 8,218,738, issued 10 July 2012

Li, Juan Jenny; Howell S., Weiss; David M., Code-coverage guided prioritized test generation, Patent 8,108,826, issued 31 January 2012

Bentley; Jon; Krishnakumar; Anjur Sundaresan, Weiss; David; Acoustic sensor network, Patent 7,986,231, issued 26 July 2011

Ordille; Joann J. Slye; John Hamilton, Tendick; Patrick, Weiss; David M.; Method and apparatus for dynamically adjusting membership of a communication flow expression, Patent 8,001,182 issued 16 August 2011

Episkopos; Dennis C., Li; J. Jenny, Yee; Howell S., Weiss; David M., Constraint solver to code based test data generation for improving software reliability and security, Patent 7,861,226 issued 28 Dec 2010

Episkopos; Dennis C., Li; J. Jenny, Yee; Howell S., Weiss; David M., Prioritize code for testing to improve code coverage of complex software, Patent 7,886,272, issued 8 Feb 2011

Episkopos; Dennis C., Hill; Deborah Jeanne Li; J. Jenny, Yee; Howell S. Weiss; David M., Handling loops in programs and examining feasible software behavior for detecting malicious code, Patent 7,945,898, issued 17 May 2011

Background Influences

If you are interested, you can find out more about my background and about ideas that have had a strong influence on me.