David Lorge Parnas

Orcid: 0000-0003-1953-3459

According to our database1, David Lorge Parnas authored at least 169 papers between 1966 and 2021.

Collaborative distances:

Awards

ACM Fellow

ACM Fellow 1994, "For the richness of insights¿provided into system software design characteristics that provide for system change. The award winning work is entitled Design Software for Ease of Extension and Contraction.".

IEEE Fellow

IEEE Fellow 2009, "For contributions to software engineering".

Timeline

Legend:

Book 
In proceedings 
Article 
PhD thesis 
Dataset
Other 

Links

Online presence:

On csauthors.net:

Bibliography

2021
Software Engineering: A Profession in Waiting.
Computer, 2021

2018
Software Structures: A Careful Look.
IEEE Softw., 2018

2017
Software Systems Engineering programmes a capability approach.
J. Syst. Softw., 2017

The real risks of artificial intelligence.
Commun. ACM, 2017

2012
The use of mathematics in software quality assurance.
Frontiers Comput. Sci. China, 2012

2011
A Comparison of Tabular Expression-Based Testing Strategies.
IEEE Trans. Software Eng., 2011

Software Engineering - Missing in Action: A Personal Perspective.
Computer, 2011

The risks of stopping too soon.
Commun. ACM, 2011

The Use of Mathematics in Software Development - (Extended Abstract).
Proceedings of the Theoretical Aspects of Computing - ICTAC 2011 - 8th International Colloquium, Johannesburg, South Africa, August 31, 2011

Software Engineering: Multi-person Development of Multi-version Programs.
Proceedings of the Dependable and Historic Computing, 2011

2010
Defining the meaning of tabular mathematical expressions.
Sci. Comput. Program., 2010

A family of computer systems for delivering individualized advice.
Knowl. Based Syst., 2010

Documenting and verifying systems assembled from components.
Frontiers Comput. Sci. China, 2010

Really Rethinking 'Formal Methods'.
Computer, 2010

Risks of undisciplined development.
Commun. ACM, 2010

From Requirements to Architecture.
Proceedings of the New Trends in Software Methodologies, Tools and Techniques, 2010

A documentation approach for the self-adaptive system design.
Proceedings of the 22nd International Conference on Software Engineering & Knowledge Engineering (SEKE'2010), Redwood City, San Francisco Bay, CA, USA, July 1, 2010

Precise Documentation: The Key to Better Software.
Proceedings of the Future of Software Engineering., 2010

2009
Point/Counterpoint.
IEEE Softw., 2009

Document based rational software development.
Knowl. Based Syst., 2009

2008
Computer systems availability evaluation using a segregated failures model.
Qual. Reliab. Eng. Int., 2008

Connecting Good Theory to Good Practice: Software Documentation: A Case Study.
Proceedings of the Software Engineering 2008. Fachtagung des GI-Fachbereichs Softwaretechnik, 2008

Fault Propagation in Tabular Expression-Based Specifications.
Proceedings of the 32nd Annual IEEE International Computer Software and Applications Conference, 2008

2007
Stop the numbers game.
Commun. ACM, 2007

Which is riskier: OS diversity or OS monopoly?
Commun. ACM, 2007

Software Product-Lines: What To Do When Enumaration Won't Work.
Proceedings of the First International Workshop on Variability Modelling of Software-Intensive Systems, 2007

Precise software documentation: making object-orientation work better.
Proceedings of the Companion to the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2007

"No silver bullet" reloaded: retrospective on "essence and accidents of software engineering".
Proceedings of the Companion to the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2007

Tabular Expressions and Total Functional Programming.
Proceedings of the Implementation and Application of Functional Languages, 2007

Precise Documentation of Critical Software.
Proceedings of the Tenth IEEE International Symposium on High Assurance Systems Engineering (HASE 2007), 2007

Document-driven Software Design - A Novel Approach that Should Not Be Novel.
Proceedings of the ENASE 2007, 2007

Resolving Dilemmas in Software Engineering Education.
Proceedings of the 20th Conference on Software Engineering Education and Training (CSEE&T 2007), 2007

2006
Component Interface Documentation: What do we Need and Why do we Need it?
Proceedings of the New Trends in Software Methodologies, Tools and Techniques, 2006

Inspection of Concurrent Systems: Combining Tables, Theorem Proving and Model Checking.
Proceedings of the International Conference on Software Engineering Research and Practice & Conference on Programming Languages and Compilers, 2006

Specification of Software Component Requirements Using the Trace Function Method.
Proceedings of the International Conference on Software Engineering Advances (ICSEA 2006), October 28, 2006

Segregated failures model for availability evaluation of fault-tolerant systems.
Proceedings of the Computer Science 2006, 2006

2005
Goals for software engineering student education.
ACM SIGSOFT Softw. Eng. Notes, 2005

Using information about functions in selecting test cases.
ACM SIGSOFT Softw. Eng. Notes, 2005

Wikipedia risks.
Commun. ACM, 2005

Disciplined Methods of Software Specification: A Case Study.
Proceedings of the International Symposium on Information Technology: Coding and Computing (ITCC 2005), 2005

A Family of Mathematical Methods for Professional Software Documentation.
Proceedings of the Integrated Formal Methods, 5th International Conference, 2005

Availability Evaluation of Hardware/Software Systems with Several Recovery Procedures.
Proceedings of the 29th Annual International Computer Software and Applications Conference, 2005

Document Driven Disciplined Development of Software.
Proceedings of the 16th Australian Software Engineering Conference (ASWEC 2005), 31 March, 2005

2004
New Year's Resolutions for Software Quality.
IEEE Softw., 2004

2003
The Role of Inspection in Software Quality Assurance.
IEEE Trans. Software Eng., 2003

Guest Editors' Introduction: Inspection's Role in Software Quality Assurance.
IEEE Softw., 2003

Structured programming: A minor part of software engineering.
Inf. Process. Lett., 2003

The Limits of Empirical Studies of Software Engineering.
Proceedings of the 2003 International Symposium on Empirical Software Engineering (ISESE 2003), 30 September, 2003

Modularity in the New Millenium: A Panel Summary.
Proceedings of the 25th International Conference on Software Engineering, 2003

Software Inspections We Can Trust.
Proceedings of the Scientific Engineering of Distributed Java Applications, 2003

2002
Requirements-Based Monitors for Real-Time Systems.
IEEE Trans. Software Eng., 2002

Licensing software engineers in Canada.
Commun. ACM, 2002

On a 'Buzzword': Hierarchical Structure (Reprint).
Proceedings of the Software Pioneers., 2002

On the Criteria To Be Used in Decomposing Systems into Modules (Reprint).
Proceedings of the Software Pioneers., 2002

The Secret History of Information Hiding.
Proceedings of the Software Pioneers., 2002

2001
The Tabular Method for Relational Documentation.
Proceedings of the First International Workshop on Relational Methods in Software, 2001

RelMiS 2001 - Preface.
Proceedings of the First International Workshop on Relational Methods in Software, 2001

Computers: boon or bane?
Commun. ACM, 2001

University Programmes in Software Development.
Proceedings of the Software Engineering im Unterricht der Hochschulen, 2001

Systematic Documentation of Requirements.
Proceedings of the 5th IEEE International Symposium on Requirements Engineering (RE 2001), 2001

Software Engineering Research Agendas Panel (SERA): What Can't We Do, But Need to Learn How to Do?
Proceedings of the 23rd International Conference on Software Engineering, 2001

Software Documentation and the Verification Process.
Proceedings of the Computer Aided Verification, 13th International Conference, 2001

2000
Priority Scheduling Versus Pre-Run-Time Scheduling.
Real Time Syst., 2000

Two Positions on Licensing.
Proceedings of the 4th International Conference on Requirements Engineering, 2000

Requirements Documentation: Why a Formal Basis is Essential.
Proceedings of the 4th International Conference on Requirements Engineering, 2000

The Use of Mathematics in Software Engineering.
Proceedings of the 3rd IEEE International Conference on Formal Engineering Methods, 2000

Making Mathematical Methods More Practical for Software Developers (Invited Talk).
Proceedings of the Algebraic Methodology and Software Technology. 8th International Conference, 2000

Invited Talk: A Software Engineering Program of Lasting Value.
Proceedings of the Algebraic Methodology and Software Technology. 8th International Conference, 2000

1999
Software Engineering Programs Are Not Computer Science Programs.
IEEE Softw., 1999

Parnas on Parnas: a life of indecision.
ACM SIGSOFT Softw. Eng. Notes, 1999

On code reuse.
ACM SIGSOFT Softw. Eng. Notes, 1999

Ten Myths About Y2K Inspections.
Commun. ACM, 1999

Systematic Techniques for Inspecting Critical Software.
Proceedings of the TOOLS 1999: 30th International Conference on Technology of Object-Oriented Languages and Systems, Delivering Quality Software, 1999

Tools for Component Documentation, Analysis and Testing.
Proceedings of the TOOLS 1999: 30th International Conference on Technology of Object-Oriented Languages and Systems, Delivering Quality Software, 1999

An Easily Extensible Toolset for Tabular Mathematical Expressions.
Proceedings of the Tools and Algorithms for Construction and Analysis of Systems, 1999

1998
Using Test Oracles Generated from Program Documentation.
IEEE Trans. Software Eng., 1998

Who taught me about software engineering research?
ACM SIGSOFT Softw. Eng. Notes, 1998

Successful software engineering research.
ACM SIGSOFT Softw. Eng. Notes, 1998

"Formal methods" technology transfer will fail.
J. Syst. Softw., 1998

Software Engineering Programmes are not Computer Science Programmes.
Ann. Softw. Eng., 1998

1997
Software Engineering: An Unconsummated Marriage.
Commun. ACM, 1997

Software Engineering: An Unconsummated Marriage (Extended Abstract).
Proceedings of the Software Engineering, 1997

Teaching for Change.
Proceedings of the Tenth Conference on Software Engineering Education and Training, 1997

Tabular Representations in Relational Documents.
Proceedings of the Relational Methods in Computer Science., 1997

1996
Why Software Jewels Are Rare.
Computer, 1996

An Invitation to Formal Methods.
Computer, 1996

1995
On ICSE's "most influential" papers.
ACM SIGSOFT Softw. Eng. Notes, 1995

Functional Documents for Computer Systems.
Sci. Comput. Program., 1995

Teaching Programming as Engineering.
Proceedings of the ZUM '95: The Z Formal Specification Notation, 1995

Language-Free Mathematical Methods for Software Design.
Proceedings of the ZUM '95: The Z Formal Specification Notation, 1995

The Future of Formal Methods in Industry.
Proceedings of the ZUM '95: The Z Formal Specification Notation, 1995

1994
Simulating the Behavior of Software Modules by Trace Rewriting.
IEEE Trans. Software Eng., 1994

Precise Documentation of Well-Structured Programs.
IEEE Trans. Software Eng., 1994

Generating a Test Oracle from Program Documentation (Work in Progress).
Proceedings of the 1994 International Symposium on Software Testing and Analysis, 1994

Inspection of Safety-Critical Software Using Program-Function Tables.
Proceedings of the Linkage and Developing Countries, Information Processing '94, Volume 3, Proceedings of the IFIP 13th World Computer Congress, Hamburg, Germany, 28 August, 1994

The Professional Responsibilities of Software Engineers.
Proceedings of the Applications and Impacts, Information Processing '94, Volume 2, Proceedings of the IFIP 13th World Computer Congress, Hamburg, Germany, 28 August, 1994

Mathematical Description and Specification of Software.
Proceedings of the Technology and Foundations - Information Processing '94, Volume 1, Proceedings of the IFIP 13th World Computer Congress, Hamburg, Germany, 28 August, 1994

Software Aging.
Proceedings of the 16th International Conference on Software Engineering, 1994

1993
<i>Correction to</i> "On Satisfying Timing Constraints in Hard-Real-Time Systems''.
IEEE Trans. Software Eng., 1993

On Satisfying Timing Constraints in Hard-Real-Time Systems.
IEEE Trans. Software Eng., 1993

Predicate Logic for Software Engineering.
IEEE Trans. Software Eng., 1993

Some Theorems We Should Prove.
Proceedings of the Higher Order Logic Theorem Proving and its Applications, 1993

Documentation of requirements for computer systems.
Proceedings of IEEE International Symposium on Requirements Engineering, 1993

Simulating the Behaviour of Software Modules by Trace Rewriting.
Proceedings of the 15th International Conference on Software Engineering, 1993

Documentation for Safety Critical Software.
Proceedings of the 15th International Conference on Software Engineering, 1993

1992
A Formal Approach to Computer Systems Requirements Documentation.
Proceedings of the Hybrid Systems, 1992

Trace Rewriting Systems.
Proceedings of the Conditional Term Rewriting Systems, Third International Workshop, 1992

1990
Scheduling Processes with Release Times, Deadlines, Precedence, and Exclusion Relations.
IEEE Trans. Software Eng., 1990

On Iterative Constructs.
ACM Trans. Program. Lang. Syst., 1990

Education for Computing Professionals.
Computer, 1990

Evaluation of Safety-Critical Software.
Commun. ACM, 1990

Education for Computing Professionals (Abstract).
Proceedings of the Advances in Computing and Information, 1990

Functional Specifications for Old (and New) Software.
Proceedings of the GI, 1990

1989
On "Artificial Intelligence and Expert Systems - Myths, Legends, and Facts".
Proceedings of the Information Processing 89, Proceedings of the IFIP 11th World Computer Congress, San Francisco, USA, August 28, 1989

Documentation of Communications Services and Protocols.
Proceedings of the Formal Description Techniques, 1989

1988
On Synchronization in Hard-Real-Time Systems.
Commun. ACM, 1988

1987
Active design reviews: Principles and practices.
J. Syst. Softw., 1987

Warum ich an SDI nicht mitarbeite: Eine Auffassung beruflicher Verantwortung.
Inform. Spektrum, 1987

1986
Correction to "A Rational Design Process: How and Why to Fake It".
IEEE Trans. Software Eng., 1986

A Rational Design Process: How and Why to Fake it.
IEEE Trans. Software Eng., 1986

Why We Would Never Trust the SDI Software.
Proceedings of the Spring COMPCON'86, 1986

1985
The Modular Structure of Complex Systems.
IEEE Trans. Software Eng., 1985

Software aspects of strategic defense systems.
ACM SIGSOFT Softw. Eng. Notes, 1985

The Parnas papers.
SIGCAS Comput. Soc., 1985

1983
A Generalized Control Structure and Its Formal Definition.
Commun. ACM, 1983

A Technique for Software Module Specification with Examples (Reprint).
Commun. ACM, 1983

1982
Rapid prototyping by means of abstract module specifications written as trace axioms.
Proceedings of the workshop on Rapid Prototyping, 1982

1981
Lastig gepreek uit nuenen.
ACM SIGSOFT Softw. Eng. Notes, 1981

A Procedure for Designing Abstract Interfaces for Device Interface Modules.
Proceedings of the 5th International Conference on Software Engineering, 1981

1979
Designing Software for Ease of Extension and Contraction.
IEEE Trans. Software Eng., 1979

1978
Another view of the Dijkstra-dMLP controversy.
ACM SIGSOFT Softw. Eng. Notes, 1978

The non-problem of nested monitor calls.
ACM SIGOPS Oper. Syst. Rev., 1978

Using assertions about traces to write abstract specifications for software modules.
Proceedings of the Information Systems Methodology, 1978

1977
ACM (Association of Carriage Manufacturers): SIGTRANS notices - another historical item.
ACM SIGSOFT Softw. Eng. Notes, 1977

Building reliable software in BLOWHARD.
ACM SIGSOFT Softw. Eng. Notes, 1977

The Use of Precise Specification in the Development of Software.
Proceedings of the Information Processing, 1977

1976
Design and Specification of the Minimal Subset of an Operating System Family.
IEEE Trans. Software Eng., 1976

On the Design and Development of Program Families.
IEEE Trans. Software Eng., 1976

Abstract Types Defined as Classes of Variables.
Proceedings of the SIGPLAN 1976 Conference on Data: Abstraction, 1976

Response to Undesired Events in Software Systems.
Proceedings of the 2nd International Conference on Software Engineering, 1976

Design and Specification of the Minimal Subset of an Operating System Family (Abstract).
Proceedings of the 2nd International Conference on Software Engineering, 1976

1975
On the need for fewer restrictions in changing compile-time environments.
ACM SIGPLAN Notices, 1975

Evaluation criteria for abstract machines with unknown applications.
SIGARCH Comput. Archit. News, 1975

Use of the Concept of Transparency in the Design of Hierarchically Structured Systems.
Commun. ACM, 1975

On a Solution to the Cigarette Smoker's Problem (Without Conditional Statements).
Commun. ACM, 1975

Significant Event Simulation.
Commun. ACM, 1975

The influence of software structure on reliability.
Proceedings of the International Conference on Reliable Software 1975, 1975

1974
Information Streams Sharing a Finite Buffer: Other Solutions.
Inf. Process. Lett., 1974

On a 'Buzzword': Hierarchical Structure.
Proceedings of the Information Processing, 1974

Software Engineering or Methods for the Multi - Person Construction of Multi - Version Programs.
Proceedings of the Programming Methodology, 4th Informatik Symposium, 1974

1973
The design of the virtual memory aspects of a virtual machine.
Proceedings of the Workshop on Virtual Computer Systems, 1973

1972
Comment on Deadlock Prevention Method.
Commun. ACM, 1972

On the Criteria To Be Used in Decomposing Systems into Modules.
Commun. ACM, 1972

A Technique for Software Module Specification with Examples.
Commun. ACM, 1972

Comments on "A Comparison of Two Synchronizing Concepts by Per Brinch Hansen".
Acta Informatica, 1972

A course on software engineering techniques.
Proceedings of the 2nd SIGCSE Technical Symposium on Computer Science Education, 1972

Some conclusions from an experiment in software engineering techniques.
Proceedings of the American Federation of Information Processing Societies: Proceedings of the AFIPS '72 Fall Joint Computer Conference, December 5-7, 1972, Anaheim, California, USA, 1972

1971
Concurrent Control with "Readers" and "Writers".
Commun. ACM, 1971

Information Distribution Aspects of Design Methodology.
Proceedings of the Information Processing, Proceedings of IFIP Congress 1971, Volume 1, 1971

1969
On simulating networks of parallel processes in which simultaneous events may occur.
Commun. ACM, 1969

More on simulation languages and design methodology for computer systems.
Proceedings of the American Federation of Information Processing Societies: AFIPS Conference Proceedings: 1969 Spring Joint Computer Conference, 1969

On the use of transition diagrams in the design of a user interface for an interactive computer system.
Proceedings of the 24th national conference, 1969

1968
Letters to the editor: on improving the quality of our technical meetings.
Commun. ACM, 1968

1967
SODAS and a methodology for system design.
Proceedings of the American Federation of Information Processing Societies: Proceedings of the AFIPS '67 Fall Joint Computer Conference, 1967

1966
State table analysis of programs in an ALGOL-like language.
Commun. ACM, 1966

On facilitating parallel and multiprocessing in ALGOL.
Commun. ACM, 1966

On the preliminary report of C<sup>3</sup>S.
Commun. ACM, 1966

A language for describing the functions of synchronous systems.
Commun. ACM, 1966

State table analysis of programs in an algo-like language.
Proceedings of the 21st national conference, 1966


  Loading...