% software engineering, specification, verification % $Id: se.bib,v 1.67 1999/12/14 21:58:33 leavens Exp leavens $ @TechReport{Abadi-Lamport88, Key="Abadi \& Lamport", Author="Mart\'{i}n Abadi and Leslie Lamport", Title="The Existence of Refinement Mappings", Institution=DECSRC, Year=1988, Month=Aug, Number=29, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="A shorter version appeared in {\em Proceedings of the LICS Conference}, Edinburgh, Scotland, July 1988", Annote="10 references." } @TechReport{Abadi-Lamport90, Key = "Abadi \& Lamport", Author = "Mart\'{\i}n Abadi and Leslie Lamport", Title = "Composing Specifications", Institution = DECSRC, Year = 1990, Number = 66, Month = Oct, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote = "26 references." } @Article{Abadi-Lamport93, Key = "Abadi \& Lamport", Author = "Mart\'{\i}n Abadi and Leslie Lamport", Title = "Composing Specifications", Journal = "ACM Transactions on Programming Languages and Systems", Month = Jan, Year = 1993, Volume = 15, Number = 1, Pages = "73-132", Annote = "27 references." } @InCollection{Abadi-Leino97, Key = "Abadi \& Leino", Author = "Mart\'{\i}n Abadi and Rustan Leino", Title = "A Logic of Object-Oriented Programs", BookTitle = "{TAPSOFT '97}: Theory and Practice of Software Development, 7th International Joint Conference {CAAP/FASE}, Lille, France", Publisher = "Springer-Verlag", Year = 1997, Editor = "Michel Bidoit and Max Dauchet", Series = LNCS, Volume = 1214, Pages = "682-696", Address = NY, Annote = "24 references." } @TechReport{Abadi-Leino98, Key = "Abadi \& Leino", Author = "Mart\'{\i}n Abadi and K. Rustan M. Leino", Title = "A Logic of Object-Oriented Programs", institution = DECSRC, Year = 1998, number = 161, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote = "29 references." } @InProceedings{Abadi-Plotkin91, Key="Abadi \& Plotkin", Author="Mart\'{\i}n Abadi and Gordon D. Plotkin", Title="A Logical View of Composition and Refinement", BookTitle="Conference Record of the Eighteenth Annual ACM Symposium on Principles of Programming Languages, Orlando", Organization=ACM, Month=Jan, Year=1991, Pages="323-332", Annote="Two logics of safety specifications for reactive systems. 25 references." } @TechReport{Abadi90, Key = "Abadi", Author = "Mart\'{\i}n Abadi", Title = "An Axiomatization of Lamport's Temporal Logic of Actions", Institution = DECSRC, Year = 1990, Number = 65, Month = Oct, Address = "130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote = "12 references." } @Article{Abbott87, Key="Abbott", Author="Russell J. Abbott", Title="Knowledge Abstraction", Journal=CACM, Volume=30, Number=8, Month=Aug, Year=1987, Pages="664-671", Annote="Argues that knowledge abstraction allows software to move closer to the problem domain as opposed to data abstraction. 59 references." } @Book{Abrial-Boerger-Langmaack96, editor = "J.-R. Abrial and E. B{\"o}rger and H. Langmaack", title = "Formal Methods for Industrial Applications: Specifying and Programming the Steam Boiler Controller", booktitle = "Formal Methods for Industrial Applications", publisher = "Springer-Verlag", series = "Lecture Notes in Computer Science", volume = "1165", year = "1996", ISBN = "3-540-61929-1", url = "http://www.informatik.uni-kiel.de/~procos/dag9523/dag9523.html", annote = "A comparative collection of formal methods case studies for a real-time control application." } @Book{Abrial96, author = "J.-R. Abrial", title = "The {B}-Book: Assigning Programs to Meanings", publisher = "Cambridge University Press", ISBN = "0521496195", year = "1996", month = aug } @InProceedings{Agerbo-Cornils98, key = {Agerbo \& Cornils}, author = {Ellen Agerbo and Aino Cornils}, title = {How to Preserve the Benefits of Design Patterns}, BookTitle = "OOPSLA '98 Conference Proceedings", Series = SIGPLAN, Volume = "33(10)", Month = Oct, Year = 1998, organization = ACM, pages = {134-143}, annote = {16 references.} } @Article{Ahmad-Steegmans98, key = {Ahmad \& Steegmans}, author = {W. Al-Ahmad and E. Steegmans}, title = {Specialization of Behavior: Comparison, Critique, and a New Approach}, journal = JOOP, year = 1998, volume = 10, number = 9, month = Feb, pages = {29-37}, annote = {Study of inheritance in various OO languages. 10 references.} } @Article{Alagar-Periyasamy92, Key = "Alagar \& Periyasamy", Author = "Vangalur S. Alagar and K. Periyasamy", Title = "A Methodology for Deriving an Object-oriented Design from Functional Specifications", Journal = "Software Engineering Journal", Month = Jul, Year = 1992, Pages = "247-263", Annote = "23 references." } @Article{Alagar-Ramanathan91, Key = "Alagar \& Ramanathan", Author = "Vangalur S. Alagar and Geetha Ramanathan", Title = "Functional Specification and Proof of Correctness for Time Dependent Behaviour of Reactive Systems", Journal = "Formal Aspects of Computing", Year = 1991, Pages = "253-283", Annote = "18 references." } @Article{Alavi84, Key="Alavi", Author="Maryam Alavi", Title="An Assessment of the Prototyping Approach to Information Systems Development", Journal=CACM, Volume=27, Number=6, Month=Jun, Year=1984, Pages="556-563", Annote="Discusses results from studies of commercial products and an experiment comparing prototyping with standard life cycle techniques. Finds prototyping useful in many situations and discusses these and the problems of managing a prototype-based development. Annotations and 15 references." } @InCollection{Alencar-Goguen91, Key = "Alencar \& Goguen", Author = "A. J. Alencar and J. A. Goguen", Title = "{OOZE}: An Object Oriented {Z} Environment", BookTitle = "ECOOP '91: European Conference on Object Oriented Programming", Publisher = "Springer-Verlag", Year = 1991, Editor = "P. America", Series = LNCS, Volume = 512, Pages = "180-199", Address = NY } @InCollection{Alencar-Goguen92, Key = "Alencar \& Goguen", Author = "A. J. Alencar and J. A. Goguen", title = "{OOZE}", BookTitle = "Object Orientation in {Z}", Publisher = "Springer-Verlag", Year = 1992, Address = "Cambridge CB2 1LQ, UK", Series = "Workshops in Computing", Crossref = "Stepney-Barden-Cooper92", Pages = "79-94" } @InCollection{Alencar-Goguen94, Key = "Alencar \& Goguen", Author = "A. J. Alencar and J. A. Goguen", title = "Specification in {OOZE} with Examples", booktitle = "Object-Oriented Specification Case Studies", Publisher = "Prentice Hall", Year = 1994, Address = NY, Series = "The Object-Oriented Series", Crossref = "Lano-Haughton94", Pages = "158-183" } @Book{Alhir98, author = {Sinan Si Alhir}, title = {UML in a Nutshell}, publisher = {O'Reilly}, year = 1998, key = {Alhir}, address = {Sebastapol, CA}, annote = {39 references.} } @Article{Allen-Garlan-Ivers98, key = {Allen \& Garlan \& Ivers}, author = {Robert J. Allen and David Garlan and James Ivers}, title = {Formal Modeling and Analysis of the {HLA} Component Integration Standard}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {70-79}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {23 references.} } @Article{Allen-Garlan94, Key = "Allen \& Garlan", Author = "Robert Allen and David Garlan", Title = "Beyond Definition/Use: Architectural Interconnection", Journal = SIGPLAN, Year = 1994, Volume = 29, Number = 8, Month = Aug, Pages = "35-45", Annote = "14 references." } @Article{Ambriola-Bendix-Ciancarini90, Key = "Ambriola \& Bendix \& Ciancarini", Author = "V. Ambriola and L. Bendix and P. Ciancarini", Title = "The evolution of configuration management and version control", Journal = "Software Engineering Journal", Year = 1990, Volume = 5, Number = 6, Month = Nov, Pages = "303-310" } @TechReport{America-deBoer90a, Key="America \& de Boer", Author="Pierre America and Frank de Boer", Title="A sound and complete proof theory for {SPOOL}", Institution="Philips Research Laboratories", Address="Nederlandse Philips Bedrijven B. V.", Number=505, Month=May, Year=1990, Annote="A Hoare-style proof system. No subtyping, no parallelism, no dynamic binding. 14 references." } @TechReport{America-deBoer90b, Key="America \& de Boer", Author="Pierre America and Frank de Boer", Title="A Proof System for Process Creation", Institution="Philips Research Laboratories", Address="Nederlandse Philips Bedrijven B. V.", Number=506, Month=Apr, Year=1990, Annote="18 references." } @TechReport{America86, Key="America", Author="Pierre America", Title="A proof theory for a sequential version of POOL", Institution="Philips Research Laboratories", Address="Nederlandse Philips Bedrijven B. V.", Number="0188", Month=Oct, Year=1986, Annote="Explores the possibilities for a Hoare-style proof system. No subtyping, no parallelism, no dynamic binding. 13 references." } @InCollection{Andersen-Reenskaug92, Key = "Andersen \& Reenskaug", Author = "Egil P. Andersen and Trygve Reenskaug", Title = "System Design by Composing Structures of Interacting Objects", BookTitle = "ECOOP '92, European Conference on Object-Oriented Programming, Utrecht, The Netherlands", Publisher = "Springer-Verlag", Year = 1992, Editor = "Ole Lehrmann Madsen", Series = LNCS, Address = NY, Volume = 615, Pages = "133-152", Annote = "21 references" } @Unpublished{Andersen-etal93, Key="Andersen, {\em et al}", Author="Jorgen F. Sogaard-Andersen and Stephen J. Garland and John V. Guttag and Nancy A. Lynch and Anna Pogosyants", Title="Computer Assisted Simulation Proofs", Month=Jan, Year=1993, Note="Obtained from the Authors" } @Article{Anderson-etal96, key = {Anderson, {\em et al.}}, author = {Richard J. Anderson and Paul Beame and Steve Burns and William Chan and Francesmary Modugno and David Notkin and Jon D. Reese}, title = {Model Checking Large Software Specifications}, journal = SIGSOFT, year = 1996, editor = {David Garlan}, volume = 21, number = 6, month = Nov, pages = {156-166}, note = {SIGSOFT '96: Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, San Francisco, California}, annote = {22 references.} } @Book{Andleigh-Gretzinger92, Key = "Andleigh \& Gretzinger", Author = "Prabhat K. Andleigh and Michael R. Gretzinger", Title = "Distributed Object-Oriented Data-Systems Design", Publisher = "PTR Prentice Hall", Year = 1992, Address = "Englewood Cliffs, New Jersey", Annote = "27 references." } @TechReport{Andrews-etal93, author = "D.J. Andrews and others", title = "Information Technology Programming Languages -- {VDM-SL}: First Committee Draft Standard {CD1387-1}", institution = "International Standards Organization", year = "1993", key = "Andrews, {\em et al.}", type = "Document", number = "ISO/IEC JTC1/SC22/WG19 N-20", month = Nov, note = "ftp://gatekeeper.dec.com/pub/standards/vdmsl/", URL = "ftp://gatekeeper.dec.com/pub/standards/vdmsl/" } @Book{Andrews97, author = {Derek Andrews}, title = {A Theory and Practice of Program Development}, publisher = {Springer-Verlag}, year = 1997, key = {Andrews}, series = {FACIT}, address = {London, UK}, annote = {Introduction to formal software development based on VDM-SL.} } @Book{Andrews-Gibbins88, key = {Andrews \& Gibbins}, author = {D. Andrews and P. Gibbins}, title = {An Introduction to Formal Methods of Software Development}, publisher = {The Open University Press}, year = 1988, address = {Milton Keynes, UK} } @InCollection{Antoniou-Sperschneider89, Key = "Antoniou \& Sperschneider", Author = "G. Antoniou and V. Sperschneider", Title = "On the verification of modules", BookTitle = "CSL '89", Publisher = "Springer-Verlag", Year = 1989, Editor = "E. Gorger and H. Kleine Buning and M. M. Richter", Series = LNCS, Volume = 440, Pages = "16-35", Address = NY } @Article{Antoy-Gannon94, Key = "Antoy \& Gannon", Author = "S. Antoy and J. Gannon", Title = "Using Term Rewriting to Verify Software", Journal = IEEETSE, Year = 1994, Volume = 20, Number = 4, Month = Apr, Pages = "259-274", Annote = "30 references." } @Article{Apt-Francez-deRoever80, Key="Apt \& Francez \& de Roever", Author="K. R. Apt and N. Francez and W. P. de Roever", Title="A Proof System for Communicating Sequential Processes", Journal=TOPLAS, Volume=2, Number=3, Month=Jul, Year=1980, Pages="359-385" } @InCollection{Apt-Olderog91, Key = "Apt \& 0lderog", Author = "Krzysztof R. Apt and Ernst-Rudiger 0lderog", Title = "Introduction to Program Verification", BookTitle = "Formal Description of Programming Concepts", Publisher = "Springer-Verlag", Year = 1991, Editor = "E. J. Neuhold and M. Paul", Series = "IFIP State-of-the-Art Reports", Pages = "363-429", Address = NY, Annote = "ISBN 0-387-53961-1. 15 references." } @Book{Apt-Olderog97, key = "Apt \& 0lderog", author = {Krzystof R. Apt and Ernst-R\"{u}diger Olderog}, title = "Verification of sequential and concurrent programs", publisher = "Springer-Verlag", address = NY, year = 1997, edition = "2nd ed.", series = "Springer-Verlag graduate texts in computer science series." } @Article{Apt81, Key="Apt", Author="Krzystof R. Apt", Title="Ten Years of {Hoare}'s Logic: A Survey---Part {I}", Journal=TOPLAS, Volume=3, Number=4, Month=Oct, Year=1981, Pages="431-483", Annote="Survey of soundness and completeness results in Hoare's logic. 55 references." } @Article{Arsac79, Key="Arsac", Author="J. J. Arsac", Title="Syntactic Source-to-Source Transforms and Program Manipulation", Journal=CACM, Year=1979, Month=Jan, Volume=22, Number=1, Pages="43-54" } @Article{Ashcroft75, key = "Ashcroft", author = "Ashcroft", title = "Proving Assertions about Parallel Programs", journal = "Journal of Computer and System Sciences", volume = "10", pages = "110--135", year = "1975" } @InCollection{Astesiano-Reggio93, Key = "Astesiano \& Reggio", Author = "Egidio Astesiano and Gianna Reggio", Title = "A Metalanguage for the Formal Requirement Specification of Reactive Systems", BookTitle = "Industrial-Strength Formal Methods, First International Symposium of Formal Methods Europe, Odense, Denmark", Publisher = "Springer-Verlag", Year = 1939, Editor = "J.C.P. Woodcock and P.G. Larsen", Series = LNCS, Volume = 670, Pages = "110-128", Address = NY, Month = Apr, Annote = "22 references." } @TechReport{Attardi-Simi82, Key="Attardi \& Simi", Author="Giuseppe Attardi and Maria Simi", Title="Semantics of Inheritance and Attributions in the Description System Omega", Institution=MITAI, Type="A.I. Memo", Number=642, Month=Jan, Year=1982, Annote="26 references." } @Article{Babin-Lustman-Shoval91, Key = "Babin \& Lustman \& Shoval", Author = "Gilbert Babin and Francois Lustman and Peretz Shoval", Title = "Specification and Design of Transactions in Information Systems: A Formal Approach", Journal = IEEETSE, Year = 1991, Volume = 17, Number = 8, Month = Aug, Pages = "814-829", Annote = "14 references." } @InProceedings{Back-Butler95, author = "R.-J. R. Back and M. Butler", title = "Exploring summation and product operators in the refinement calculus", series = LNCS, volume = "947", pages = "128--??", booktitle = "Mathematics of Program Construction 1995", editor = {B. M\"{o}ller}, year = 1995, ISSN = "0302-9743" } @Article{Back-Sere90, Key = "Back \& Sere", AUTHOR = "R. J. R. Back and K. Sere", TITLE = " Stepwise Refinement of Parallel Algorithms", JOURNAL = "Science of Computer Programming", YEAR = 1990, VOLUME = 13, NUMBER = "2-3", PAGES = "133-180" } @TechReport{Back-Mikhajlova-vonWright97, Key="Back \& Mikhajlova \& von Wright", Author="Ralph Back and Anna Mikhajlova and Joakim von Wright", Title="Class Refinement as Semantics of Correct Subclassing", Institution="Turku Centre for Computer Science", Year=1997, Number=147, month=Dec, note="\newline {http://www.tucs.abo.fi/publications/techreports/TR147.html}", URL={http://www.tucs.abo.fi/publications/techreports/TR147.html} } @TechReport{Back-Mikhajlova-vonWright98, Key="Back \& Mikhajlova \& von Wright", Author="Ralph Back and Anna Mikhajlova and Joakim von Wright", Title="Modeling Component Environments and Interactive Programs Using Interative Choice", Institution="Turku Centre for Computer Science", Year=1998, Number=200, month=Sep, note="\newline {http://www.tucs.abo.fi/publications/techreports/TR200.html}", URL={http://www.tucs.abo.fi/publications/techreports/TR200.html} } @TechReport{Back-vonWright89a, Key="Back \& von Wright", Author="R. J. R. Back and J. {von Wright}", Title="Refinement Calculus, Part {I}: Sequential Nondeterministic Programs", Institution={Abo Akademi University, Department of Computer Science, Lemmink\"{a}inengatan 14, 20520 Abo, Finland}, Number="Ser. A, No 92", Year=1989, Note="Appears in {\em Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, REX Workshop}, Mook, The Netherlands, May/June 1989, Spring-Verlag, LNCS 430, J. W. de Bakker, et al, (eds.), pages 42--66" } @TechReport{Back-vonWright89b, Key="Back", Author="R. J. R. Back and J. {von Wright}", Title="Refinement Calculus, Part {II}: Parallel and Reactive Programs", Institution={Abo Akademi University, Department of Computer Science, Lemmink\"{a}inengatan 14, 20520 Abo, Finland}, Number="Ser. A, No 93(?)", Year=1989, Note="Appears in {\em Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, REX Workshop}, Mook, The Netherlands, May/June 1989, Spring-Verlag, LNCS 430, J. W. de Bakker, et al, (eds.), pages 67--93" } @Article{Back-vonWright90, Key="Back", Author="R. J. R. Back and J. {von Wright}", Title="Duality in Specification Languages: A Lattice-theoretical Approach", Journal="Acta Informatica", Volume=27, Number=7, Month=Jul, Year=1990, Pages="583-626" } @Article{Back-vonWright92, Key="Back \& Von Wright", Author="R. J. R. Back and J. {von Wright}", Title="Combining Angels, deamons and miracles in program specifications", Journal=TCS, Volume=100, Number=2, Month=Jun, Year=1992, Pages="365-383" } @TechReport{Back-vonWright96, author = "Ralph-Johan Back and Joakim von Wright", title = "Interpreting Nondeterminism in the Refinement Calculus", institution = "TUCS - Turku Centre for Computer Science", number = "TUCS-TR-35", month = jul # " 26", year = "1996", keywords = "Refinement Calculus, nondeterminism", url = "http://www.tucs.abo.fi/publications/techreports/TR35.html", abstract = "We introduce a simple programming language and define its predicate transformer semantics. We motivate the choice of the constructs for the language by algebra ic arguments, showing that the constructs are essentially the basic algebraic op erations that are available for predicate transformers, when these are viewed as forming a complete lattice enriched category. We then show that the statements in the language can be given a simple operational interpretation, as describing the interaction between a user and a computing system. This gives a general intuitive interpretation of angelic and demonic nondeterminism. We also consider the notion of correctness and refinement of program statements that this intuitive interpretation gives rise to, and show the connection between the user-system interpretation and the interpretation of program execution as a game." } @Book{Back-vonWright98, Key = "Back \& von Wright", Author = "Ralph-Johan Back and Joakim von Wright", Title = "Refinement Calculus: A Systematic Introduction", Publisher = "Springer-Verlag", Year = 1998, Annote = "Mathematical foundations of the refinement calculus. 144 references." } @Book{Back80, author = "R. J. R. Back", title = "Correctness Preserving Program Refinements: Proof Theory and Applications", series = "Mathematical Center Tracts", volume = 131, publisher = "Mathematical Centre", address = "Amsterdam", year = 1980 } @Article{Back88, Key="Back", Author="R. J. R. Back", Title="A Calculus of Refinements for Program Derivations", Journal="Acta Informatica", Volume=25, Number=6, Month=Aug, Year=1988, Pages="593-624" } @InProceedings{Back89, Key="Back", author = "R. J. R. Back", title = "Refinement calculus, part {II}: Parallel and reactive programs", editor = "J. W. {de Bakker} and W.-P. {de Roever} and G. Rozenberg", booktitle = "Stepwise Refinement of Distributed Systems", other = "REX Workshop for Refinement of Distributed Systems", location = "Nijmegen, The Netherlands, 1989", publisher = "Springer-Verlag", series = "LNCS 430", year = "1990" } @Book{Backhouse86, Key="Backhouse", Author="Roland C. Backhouse", Title="Program Construction and Verification", Publisher=Prentice-Hall, Address="Englewood Cliffs, N.J.", Year=1986 } @Article{Bahlke-Snelting86, Key="Bahlke \& Snelting", Author="Rolf Bahlke and Gregor Snelting", Title="The PSG System: From Formal Language Definitions to Interactive Programming Environments", Journal=TOPLAS, Volume=8, Number=4, Month=Oct, Year=1986, Pages="547-576", Annote="43 references." } @InProceedings{Bailey-Davidson95, Key = {Bailey \& Davidson}, Author = {Mark W. Bailey and Jack W. Davidson}, Title = "A Formal Model and Specification Language for Procedure Calling Conventions", BookTitle = "Conference Record of POPL '95: 22nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Francisco, Calif.", Month = Jan, Year = 1995, Organization = ACM, Address = NY, Pages = "298-310", Annote = "For compilers or assembly language. 18 references." } @Article{Ball98, key = {Ball}, author = {Ball}, title = {On the Limit of Control Flow Analysis for Regression Test Selection}, journal = SIGSOFT, year = 1998, volume = 23, number = 2, month = Mar, pages = {134-142}, note = {ISSTA 98: Proceedings of the ACM SIGSOFT Internatioal Symposium on Software Testing and Analysis}, annote = {12 references.} } @InProceedings{Balzer-Goldman-Wile76, Key="Balzer \& Goldman \& Wile", Author="R. Balzer and N. Goldman and D. Wile", Title="On the Transformational Implementation Approach to Programming", BookTitle="Proceedings of the Second International Conference on Software Engineering", Organization=IEEE, Year=1976, Pages="337-344" } @Article{Balzer-Swartout82, Key="Balzer \& Swartout", Author="R. Balzer and W. Swartout", Title="On the Inevitable Intertwining of Specification and Implementation", Journal=CACM, Year=1982, Month=Jul, Volume=25, Number=7, Pages="438-440" } @InProceedings{Balzer67, Key="Balzer", Author="R. Balzer", Title="Dataless Programming", BookTitle="1967 Fall Joint Computer Conference", Organization=AFIPS, Year=1967, Pages="535-544" } @Article{Balzer81, Key="Balzer", Author="Robert Balzer", Title="Transformational Implementation: an Example", Journal=IEEETSE, Year=1981, Month=Jan, Volume="SE-7", Number=1, Annote="System for transforming specifications into implementations under user control. An example is worked. An evaluation of this approach is discussed. 18 references." } @INPROCEEDINGS{Bancroft93, key = "Bancroft", author = {P. G. Bancroft}, title = {Pointers in refinement calculus: A case study}, booktitle = {Proceedings of the 7th Australian Software Engineering Conference}, year = 1993, month = jul, pages = "11-19", organization = {IREE} } @INCOLLECTION{Bancroft95, key = "Bancroft", author = {P. G. Bancroft and I. J. Hayes}, title = {A formal semantics for a language with type extension}, editor = {Jonathan P. Bowen and Michael Hinchey}, booktitle = {ZUM'95: The Z Formal Specification Notation}, number = 967, series = {Lecture Notes in Computer Science}, pages = "299-314", publisher = {Springer-Verlag}, year = 1995 } @Article{Bansler-Bodker93, Author = "Jorgen P. Bansler and Keld Bodker", Title = "A Reappraisal of Structured Analysis: Design in an Organizational Context", Journal = "ACM Transactions on Office Information Systems", Volume = 11, Number = 2, Pages = "165-193", Year = 1993 } @Article{Barbier-etal98, key = {Barbier, {\em et al.}}, author = {Franck Barbier and Henri Briand and B\'{e}n\'{e}dicte Dano and St\'{e}phane Rideau}, title = {The Executability of Object-Oriented Finite State Machines}, journal = JOOP, year = 1998, volume = 11, number = 4, month = Jul, pages = {16-24}, annote = {24 references.} } @Article{Baresi-Pezze98, author = {Luciano Baresi and Mauro Pezz\'{e}}, title = {Toward Formalizing Structured Analysis}, journal = TOSEM, year = 1998, key = {Baresi \& Pezze}, volume = 7, number = 1, month = Jan, pages = {80-107}, annote = {38 references.} } @Article{Barrett-Kaplan-Wileden96, key = {Barrett \& Kaplan \& Wileden}, author = {Daniel Barrett and Alan Kaplan and Jack C. Wileden}, title = {Automated Support for Seamless Interoperability in Polylingual Software Systems}, journal = SIGSOFT, year = 1996, editor = {David Garlan}, volume = 21, number = 6, month = Nov, pages = {147-155}, note = {SIGSOFT '96: Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, San Francisco, California}, annote = {The PolySPIN approach and toolkit for connecting programs written in different languages. 21 references.} } @Article{Barringer-Cheng-Jones84, Key="Barringer \& Cheng \& Jones", Author="H. Barringer and J. H. Cheng and C. B. Jones", Title="A Logic Covering Undefinedness in Program Proofs", Journal="Acta Informatica", Volume=21, Number=3, Month=Oct, Year=1984, Pages="251-269", Annote="Axiomatization and examples. 33 references." } @TechReport{Barringer86, Key="Barringer", Author="Howard Barringer", Title="Using Temporal Logic in the Compositional Specification of Concurrent Systems", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Number="UMCS-86-10-1", Month=Oct, Year=1986, Annote="20 references." } @Article{Barroca-McDermid92, key = "Barroca \& McDermid", author = "L. Barroca and J. A. McDermid", title = "Formal methods: Use and relevance for the development of safety critical systems", journal = "The Computer Journal", volume = 35, number = 6, pages = "579--599", month = dec, year = 1992 } @TechReport{Barstow77, Key="Barstow", Author="D. R. Barstow", Title="Automatic Construction of Algorithms and Data Structures using a Knowledge Base of Programming Rules", Institution="Stanford A.I. Lab", Number=308, Year=1977, Month=Nov } @Article{Basili-Perricone84, Key="Basili \& Perricone", Author="Victor R. Basili and Barry T. Perricone", Title="Software Errors and Complexity: An Empirical Investigation", Journal=CACM, Volume=27, Number=1, Month=Jan, Year=1984, Pages="42-52", Annote="Observations from a particular medium sized project. Modified modules tended to have errors in data values and initializations. Module size and complexity inversely related to number of errors per line of code. Errors in modified modules are harder to correct than errors in new modules. Interface errors account for most errors of all types. Error corrections account for 62% of changes, enhancements account for 38% of changes. Other studies found error corrections account for 40-64% of all changes. 9 references." } @InProceedings{Basili-Turner75, Key="Basili \& Turner", Author="V. R. Basili and A. J. Turner", Title="Iterative Enhancement: A Practical Technique for Software Development", BookTitle="Proceedings of the First National Conference on Software Engineering", Organization=IEEE, Pages="56-62", Year=1975 } @Article{Basili-etal99, key = {Basili, {\em et al.}}, author = {Victor R. Basili and others}, title = {Final Report {NSF} Workshop on a Software Research Program For the 21st Century, Greenbelt, Maryland}, journal = SIGSOFT, year = 1999, volume = 24, number = 3, month = May, pages = {37-44} } @InCollection{Bastide-Sy-Palanque99, key = {Bastide \& Sy \& Palanque}, author = {R\'{e}mi Bastide and Ousmane Sy and Philippe Palanques}, title = {Formal Specification and Prototyping of {CORBA} Systems}, booktitle = {ECOOP '99 --- Object-Oriented Programming 13th European Conference, Lisbon Portugal}, publisher = {Springer-Verlag}, year = 1999, editor = {Rachid Guerraoui}, volume = 1628, series = LNCS, address = NY, month = Jun, pages = {474-494}, annote = {Java and its Jini mechanism. 9 references.} } @Article{Bates-Constable85, Key="Bates \& Constable", Author="Joseph L. Bates and Robert L. Constable", Title="Proofs as Programs", Journal=TOPLAS, Volume=7, Number=1, Month=Jan, Year=1985, Pages="113-136", Annote="The PRL program development system and its rationale. Aid in construction of formal explanations of programs. 40 references." } @Article{Batory-Geraci97, author = {Don Batory and Bart J. Geraci}, title = {Composition Validation and Subjectivity in {GenVoca} Generators}, journal = IEEETSE, year = 1997, key = {Batory \& Geraci}, volume = 23, number = 2, month = Feb, pages = {67-82}, annote = {58 references.} } @Article{Batory-OMalley92, Key = "Batory \& O'Malley", Author = "Don Batory and Sean O'Malley", Title = "The Design and Implementation of Hierarchical Software Systems with Reusable Components", Journal = TOSEM, Year = 1992, Volume = 1, Number = 4, Month = Oct, Pages = "355-398", Annote = "69 references." } @Article{Batory-etal94, key = {Batory, {\em et al.}}, author = {Don Batory and Vivek Singhal and Jeff Thomas and Sankar Dasari and Bart Geraci and Marty Sirkin}, title = {The {GenVoca} Model of Software-System Generation}, journal = {IEEE Software}, year = 1994, volume = 11, number = 5, month = Sep, pages = {89-94}, annote = {10 references.} } @InCollection{Bauer-etal85, Key="Bauer, {\em et al.}", Author="F. L. Bauer and others", Title="The Munich Project CIP, Vol. 1: The Wide Spectrum Language CIP-L", Series=LNCS, Volume=183, Publisher="Springer-Verlag", Address=NY, Year=1985 } @InCollection{Baugh92, Key="Baugh", Author="J.W. Baugh Jr", Title="Is Engineering Software Amenable to Formal Specification?", Editor="Ursala Martin and Jeanete M. Wing", BookTitle="First International Workshop on Larch, Dedham 1992", Publisher="Springer-Verlag", Year=1992, Pages="1-17", Annote="22 references" } @InProceedings{Baumeister95, Key = "Baumeister", author = "Baumeister", title = "Relations as Abstract Datatypes: An Institution to Specify Relations between Algebras", editor = "P. D. Mosses and M. Nielsen and M. I. Schwartzbach", series = LNCS, booktitle = "TAPSOFT'95: Theory and Practice of Software Development", publisher = "Springer-Verlag", number = 915, year = 1995, month = May, pages = "756-771", annote = "17 references." } @Article{Bazelmans85, Key="Bazelmans", Author="Rudy Bazelmans", Title="Evolution of Configuration Management", Journal=SIGSOFT, Volume=10, Number=5, Month=Oct, Year=1985, Pages="37-46", Annote="Survey of configuration management systems, including some proprietary ones. 27 references." } @Article{Bear-etal90, Key = "Bear, {\em et al.}", Author = "Stephen Bear and Phillip Allen and Derek Coleman and Fiona Hayes", Title = "Graphical Specification of Object Oriented Systems", Journal = SIGPLAN, Year = 1990, Volume = 25, Number = 10, Month = Oct, Pages = "28-37", Note = "{\em OOPSLA ECOOP '90 Proceedings}, N. Meyrowitz (editor).", Annote = "5 references." } @Article{Beck-Cunningham89, Key="Beck \& Cunningham", Author="Kent Beck \& Ward Cunningham", Title="A Laboratory for Teaching Object-Oriented Thinking", Journal=SIGPLAN, Volume=24, Number=10, Month=Oct, Year=1989, Pages="1-6", Note="OOPSLA '89 Conference Proceedings, Norman Meyerowitz (editor), October 1989, New Orleans, Louisiana.", Annote="Class, responsibility, collaborator (CRC) cards." } @Article{Beck-Perkins83, Key="Beck \& Perkins", Author="Leland L. Beck and Thomas E. Perkins", Title="A Survey of Software Engineering Practice: Tools, Methods and Results", Journal=IEEETSE, Volume="SE-9", Number=5, Month=Sep, Year=1983, Pages="541-561", Annote="20 references." } @InCollection{Becker, Key="Becker", Author="K. Becker", Title="Proving Ground Confluence and Inductive Validity in Constructor BAsed Equational Specifications", Journal=LNCS, Number=668, Publisher="Springer-Verlag", Address=NY, Editor="M. C. Gaudel and J. P. Jouannaud", Year=1993, Note="TAPSOFT '93: Theory and Practice of Software Development. 4th International Joint Conference CAAP/FASE France, April 1993. Proceedings.", Pages="46-60", Annote="22 references" } @Article{Belkhouche-Wu99, key = {Belkhouche \& Wu}, author = {Boumediene Belkhouche and Joel Wu}, title = {Behavioral Specification and Analysis of Object-Oriented Designs}, journal = JOOP, year = 1999, volume = 11, number = 8, month = Jan, pages = {37-46}, annote = {Modeling by communication and other events. Histories. Uses CSP. 16 references.} } @Article{Ben-Shaul-Gish-Robinson98, key = {Ben-Shaul \& Gish \& Robinson}, author = {Israel Ben-Shaul James W. Gish and William Robinson}, title = {An Integrated Network Component Architecture}, journal = {IEEE Software}, year = 1998, volume = 15, number = 5, month = Sep, pages = {79-87}, annote = {11 references.} } @Book{Bentley82, Key = "Bentley", Author = "Jon Louis Bentley", Title = "Writing Efficient Programs", Publisher = "Prentice-Hall", Year = 1982, Series = "Software Series", Address = "Englewood Cliffs, N.J.", Annote = "System independent and system dependent rules for making programs more efficient in time, space, etc. 119 references." } @Book{Bentley86b, Key = "Bentley", Author = "Jon Louis Bentley", Title = "Programming pearls", Publisher = "Addison-Wesley", Year = 1986, Address = "Reading, Mass." } @Book{Bentley88, Key = "Bentley", Author = "Jon Louis Bentley", Title = "More programming pearls : confessions of a coder", Publisher = "Addison-Wesley", Year = 1988, Address = "Reading, Mass." } @Unpublished{Berard90, Key = "Berard", Author = "Edward V. Berard", Title = "Issues in the Testing of Object-Oriented Software", Note = "from Newsgroups: comp.object", Annote = "approximately 85 references.", Month = Oct, Year = 1990 } @InCollection{Bergstein-Hursch93, Key = "Bergstein \& Hursch", Author = "Paul L. Bergstein and Walter L. Hursch", Title = "Maintaining Behavioral Consistency during Schema Evolution", BookTitle = "Object Technologies for Advanced Software", Publisher = "Springer-Verlag", Year = 1993, Editor = "Shojiro Nishio and Akinori Yonezawa", Series = LNCS, Volume = 742, Pages = "176-193", Month = Aug, Annote = "17 references." } @Article{Bergstein97, key = {Bergstein}, author = {Paul L. Bergstein}, title = {Maintenance of Object-Oriented Systems During Structural Evolution}, journal = TAPOS, year = 1997, volume = 3, number = 3, pages = {185-212}, annote = {Object restructuring via class graph transformations. 38 references.} } @Article{Bergstra-Heering-Klint90, Key="Bergstra \& Heering \& Klint", Editor="J. A. Bergstra and J. Heering and P. Klint", Title="Module Algebra", Journal=JACM, Volume=37, Number=2, Month=Apr, Year=1990, Pages="335-372" } @InCollection{Bergstra-Tucker80, Key="Bergstra \& Tucker", Author="J. A. Bergstra and J. V. Tucker", Title="A Characterisation of Computable Data Types by Means of a Finite Equational Specification Method", BookTitle="Automata, Languages and Programming, Seventh Colloquium, Noordwykerhout", Publisher="Springer-Verlag", Year=1980, Pages="76-90", Annote="11 references." } @InCollection{Bergstra-etal81, Key="Bergstra {\em et al.}", Author="J. A. Bergstra and M. Broy and J. V. Tucker and M. Wirsing", Title="On the Power of Algebraic Specifications", BookTitle="Mathematical Foundations of Computer Science, Proceedings, Strbske Pleso, Czechoslovakia", Editor="Jozef Gruska and Michal Chytil", Publisher="Springer-Verlag", Address=NY, Series=LNCS, Volume="118", Year=1981, Pages="193-204", Annote="Every computable partial algebra has an equational hidden enrichment specification. Specification of a simple nondeterministic programming language. 40 references." } @InCollection{Bernot-Bidoit-Knapik92, Key = "Bernot \& Bidoit \& Knapik", Author = "Gilles Bernot and Michel Bidoit and Teodor Knapik", Title = "Towards an Adequate Notion of Observation", BookTitle = "ESOP '92, 4th European Symposium on Programming, Rennes, France, February 1992, Proceedings", Publisher = "Springer-Verlag", Year = 1992, Editor = "Bernd Krieg-Bruckner", Series = LNCS, Address = NY, Volume = 582, Pages = "39-55", Annote = "18 references" } @InProceedings{Bernot-Bidoit91, Key = "Bernot \& Bidoit", Author = "Gilles Bernot and Michel Bidoit", Title = "Proving Correctness of Algebraically Specified Software: Modularity and Observability Issues", BookTitle = "Proceedings of the Second International Conference on Algebraic Methodology and Software Technology", Year = 1991, Pages = "139-161", Organization ="The University of Iowa, Department of Computer Science", Address = "Iowa City, Iowa", Month = "May", Annote = "38 references." } @InCollection{Bernot-Gall93, Key="Bernot \& Gall", Author="G. Bernot and P. Le Gall", Title="Exception handling and Term labelling", Journal=LNCS, Number=668, Publisher="Springer-Verlag", Address=NY, Editor="M. C. Gaudel and J. P. Jouannaud", Year=1993, Note="TAPSOFT '93: Theory and Practice of Software Development. 4th International Joint Conference CAAP/FASE France, April 1993. Proceedings.", Pages="421-436", Annote="35 references" } @InProceedings{Bernot-Gaudel-Marre91, Key = "Bernot \& Gaudel \& Marre", Author = "Gilles Bernot and Marie Claude Gaudel and Bruno Marre", Title = "A Formal Approach to Software Testing", BookTitle = "Proceedings of the Second International Conference on Algebraic Methodology and Software Technology", Year = 1991, Pages = "163-170", Organization ="The University of Iowa, Department of Computer Science", Address = "Iowa City, Iowa", Month = "May", Annote = "Black box testing using formal specifications and formally stated testing strategies stated as hypotheses. For example: it does not matter what items are pushed in a stack in testing a stack. 26 references." } @Article{Berzins-Gray-Naumann86, Key="Berzins \& Gray \& Naumann", Author="Valdis Berzins and Michael Gray and David Naumann", Title="Abstraction-Based Software Development", Journal=CACM, Volume=29, Number=5, Month=May, Year=1986, Pages="402-415", Annote="Discussion of software development method based on abstractions, especially practical experience. Points out research directions. 57 references." } @Book{Berzins-Luqi91, Key = "Berzins \& Luqi", Author = "Valdis Berzins and Lucia Luqi", Title = "Software Engineering with Abstractions", Publisher = "Addison-Wesley", Address = "Reading, MA", Year = 1991, Annote = "PSDL is an enhanced DFD for hard real-time systems. 1 reference." } @Article{Best-etal92, Key="Best, {\em et al}", Author="Eike Best, Ludmila Cherkasova and Jorg Desel", Title="Compositional Generation of Home States in Free Choice Nets", Journal="Formal Aspects of Computing", Volume=4, Number=6, Year=1992, Pages="572-581", Annote="7 references." } @Article{Beugnard-etal99, key = {Beugnard, {\em et al.}}, author = {Antoine Beugnard and Jean-Marc J\'{e}z\'{e}quel and N\"{o}el Plouzeau and Damien Watkins}, title = {Making Components Contract Aware}, journal = {Computer}, year = 1999, volume = 32, number = 7, month = Jul, pages = {38-44}, annote = {12 references.} } @Article{Bhansali-Hoar98, key = {Bhansali \& Hoar}, author = {Sanjay Bhansali and Tim J. Hoar}, title = {Automated Software Synthesis: An Application in Mechanical {CAD}}, journal = IEEETSE, year = 1998, volume = 24, number = 10, month = Oct, pages = {848-862}, annote = {32 references.} } @InCollection{Bicarregui-Ritchie93, Key = "Bicarregui \& Ritchie", Author = "Juan Bicarregui and Brian Ritchie", Title = "Invariants, Frames and Postconditions: a Comparison of the {VDM} and {B} Notations", BookTitle = "Industrial-Strength Formal Methods, First International Symposium of Formal Methods Europe, Odense, Denmark", Publisher = "Springer-Verlag", Year = 1993, Editor = "J.C.P. Woodcock and P.G. Larsen", Series = LNCS, Volume = 670, Pages = "162-182", Address = NY, Month = Apr, Annote = "9 references." } @Article{Bicarregui-Ritchie95, Key = "Bicarregui \& Ritchie", Author = "Juan Bicarregui and Brian Ritchie", Title = "Invariants, Frames and Postconditions: a Comparison of the {VDM} and {B} Notations", journal = IEEETSE, year = 1995, volume = 21, number = 2, pages = "79-89", month = Feb, Annote = "9 references." } @Book{Bicarregui-etal94, key = "Bicarregui, {\em et al.}", author = "Juan Bicarregui and John S. Fitgerald and Peter A. Lindsay and Richard Moore and Brian Ritchie", title = "Proof in {VDM}: A Practitioner's Guide", publisher = "Springer-Verlag", year = 1994, address = NY, annote = "30 references." } @Book{Bidoit-etal91, Key = "Bidot, {\em et al.}", Editor = "M. Bidoit and H.-J. Kreowski and P. Lescanne and F. Orejas and D. Sannella", Title = "Algebraic System Specification and Development: A Survey and Annotated Bibliography", Publisher = "Springer-Verlag", Year = 1991, Series = LNCS, Volume = 501, Note = "ISBN 0-387-54060-1", Annote = "Hundreds of references." } @InCollection{Bidot-Dauchet97, Key = "Bidot \& Dauchet", Title = "{TAPSOFT '97}: Theory and Practice of Software Development, 7th International Joint Conference {CAAP/FASE}, Lille, France", BookTitle = "{TAPSOFT '97}: Theory and Practice of Software Development, 7th International Joint Conference {CAAP/FASE}, Lille, France", Publisher = "Springer-Verlag", Year = 1997, Editor = "Michel Bidoit and Max Dauchet", Series = LNCS, Volume = 1214, Address = NY } @Article{Bieman-etal88, Key="Bieman, {\em et al.}", Author="James M. Bieman and Albert L. Baker and Paul N. Clites and David A. Gustafson and Austin C. Melton", Title="A Standard Representation of Imperative Language Programs for Data Collection and Software Measures Specification", Journal="The Journal of Systems and Software", Month=Jan, Year=1988 } @Article{Bieman-Kang98, key = {Bieman \& Kang}, author = {James M. Bieman and Byung-Kyoo Kang}, title = {Measuring Design-Level Cohesion}, journal = IEEETSE, year = 1998, volume = 24, number = 2, month = Feb, pages = {111-124}, annote = {20 references.} } @Article{Bieman-Ott94, key = {Bieman \& Ott}, author = {James M. Bieman and Linda M. Ott}, title = {Measuring Functional Cohesion}, journal = IEEETSE, year = 1994, volume = 20, number = 8, month = Aug, pages = {644-657}, annote = {42 references.} } @InCollection{Bijlsma90, author = "A. Bijlsma", title = "Semantics of quasi-boolean expressions", key = "Bijlsma", booktitle = "Beauty is Our Business", publisher = "Springer-Verlag", year = 1990, editor = "W. H. J. Feijen and others", pages = "27-35" } @Article{Binkley97, key = {Binkley}, author = {David Binkley}, title = {Semantics Guided Regression Test Cost Reduction}, journal = IEEETSE, year = 1997, volume = 23, number = 8, month = Aug, pages = {498-516}, annote = {43 references.} } @Article{Bird-Gibbons-Jones89, Key="Bird \& Gibbons \& Jones", Author="R. S. Bird and J. Gibbons and G. Jones", Title="Formal Derivation of a Pattern Matching Algorithm", Journal="Science of Computer Programming", Volume=12, Number=2, Month=Jul, Year=1989, Pages="93-104", Annote="6 references." } @Article{Bird84, Key="Bird", Author="R. S. Bird", Title="The Promotion and Accumulation Strategies in Transformational Programming", Journal=TOPLAS, Volume=6, Number=4, Pages="487-504", Year=1984 } @Article{Bird89a, Key="Bird", Author="R. S. Bird", Title="Algebraic Identities for Program Calculation", Journal="The Computer Journal", Volume=32, Number=2, Month=Apr, Pages="122-126", Year=1989 } @InCollection{Bird89b, Key="Bird", Author="Richard S. Bird", Title="Lectures on Constructive Functional Programming", Booktitle="Constructive Methods in Computing Science", Series="NATO ASI Series", Volume="F55", Editor="Manfred Broy", Publisher="Springer-Verlag", Address=NY, Pages="151-216", Year=1989, Annote="13 refernces." } @InCollection{Bird90, Key = "Bird", Author = "R. S. Bird", Title = "A Calculus of Functions for Program Derivation", Editor = "David A. Turner", BookTitle = "Research Topics in Functional Programming", Publisher = Addison-Wesley, Year = 1990, Series = "University of Texas at Austin Year of Programming Series", Address = NY, Pages = "287-307", Annote = "6 references." } @TechReport{Birrell-etal87, Key="Birrell, {\em et al.}", Author="A. D. Birrell and J. V. Guttag and J. J. Horning and R. Levin", Title="Synchronization Primitives for a Multiprocessor: A Formal Specification", Institution=DECSRC, Address="Palo Alto, Calif.", Month=Aug, Year=1987, Number=20, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote="21 references." } @Article{Bjorner-Browne-Manna97, key = {Bj{\o}rner \& Browne \& Manna}, author = {Nikolaj Bj{\o}rner and Anca Browne and Zohar Manna}, title = {Automatic generation of invariants and intermediate assertions}, journal = TCS, year = 1997, volume = 173, number = 1, month = Feb, pages = {49-87} } @Book{Bjorner-Jones82, Key="Bjorner \& Jones", Author="Dines Bjorner and Cliff B. Jones", Title="Formal Specification and Software Development", Publisher=Prentice-Hall, Series="International Series in Computer Science", Address="London", Year=1982, Annote="About 400 references." } @InCollection{Bjorner91, Key = "Bjorner", Author = "Dines Bjorner", Title = "Specification and Transformation: Methodology Aspects of the Vienna Development Method", BookTitle = "Formal Description of Programming Concepts", Publisher = "Springer-Verlag", Year = 1991, Editor = "E. J. Neuhold and M. Paul", Series = "IFIP State-of-the-Art Reports", Pages = "137-258", Address = NY, Annote = "ISBN 0-387-53961-1. 16 references." } @Book{Blaha-Premerlani98, author = "Michael Blaha and William Premerlani", title = "Object-Oriented Modelling and Design for Database Applications", publisher = "Prentice Hall", address = "Englewood Cliffs", year = "1998", } @TechReport{Bleyberg91, Key = "Bleyberg", Author = "Maria Zamfir Bleyberg", Title = "On the Semantics of {Petri Nets}", Institution = "Department of Computing & Information Sciences, Kansas State University", Year = 1991, Number = "TR-CS-91-8", Address = "Manhattan, KS 66506", Month = May, Annote = "9 references." } @Article{Blikle81, author = "Andrzej Blikle", title = "The Clean Termination of Iterative Programs", key = "Blikle", journal = "Acta Informatica", year = 1981, volume = 16, pages = "199-217", annote = "25 references." } @Article{Blikle91, key = "Blikle", author = "A. Blikle", title = "Three-valued predicates for software specification and validation", journal = "Fundamenta Informaticae", year = 1991, volume = "XIV", pages = "387-410" } @Article{Bloom-Cheng-Dsouza97, key = {Bloom \& Cheng \& Dsouza}, author = {Bard Bloom and Allan Cheng and Ashvin Dsouza}, title = {Using a Protean Language to Enhance Expressiveness in Specification}, journal = IEEETSE, year = 1997, volume = 23, number = 4, month = Apr, pages = {224-234}, annote = {Examples of using Structural Operational Semantics as a metanotation for specifications. 22 references.} } @InProceedings{Bloom95, Key = {Bloom}, Author = {Bard Bloom}, Title = "Structured Operational Semantics as a Specification Language", BookTitle = "Conference Record of POPL '95: 22nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Francisco, Calif.", Month = Jan, Year = 1995, Organization = ACM, Address = NY, Pages = "107-117", Annote = "21 references." } @Article{Blum85, Key="Blum", Author="Bruce Blum", Title="Understanding the Software Paradox", Journal=SIGSOFT, Volume=10, Number=1, Month=Jan, Year=1985, Pages="43-47", Note="Reprinted from the proceedings of the 23rd Annual Technical Symposium of the Washington, D.C. Chapter of the ACM, 1984", Annote="Discussion of the problems of software engineering, focusing on the development process. 38 references." } @Article{Blum87, Key = "Blum", Author = "Bruce Blum", Title = "A Paradigm for Developing Information Systems", Journal = IEEETSE, Volume = SE-13, Number = 4, Month = Apr, Year = 1987, Pages = "432-439", Annote = "18 references" } @PhdThesis{Boake98, key = {Boake}, author = {Andrew Boake}, title = {A Knowledge-Based Software Design Supervisor}, school = {University of Pretoria}, year = 1998, address = {Pretoria, South Africa}, month = Jun, annote = {The Umhloli design supervisor combines elements of object-oriented design with a logic programming engine. Many references.} } @Article{Bodenstab-etal, Key="Bodenstab, {\em et al.}", Author="D. E. Bodenstab and T. F. Houghton and K. A. Kelleman and G. Ronkin and E. P. Schan", Title="UNIX Operating System Porting Experiences", Journal=BSTJ, Volume=63, Number=8, Month=Oct, Year=1984, Pages="1769-1790", Annote="Discusses porting the UNIX kernel to 4 different computers. 10 references." } @Article{Boehm-Jacopini66, author = {Corrado B\"{o}hm and Guiseppe Jacopini}, title = {Flow Diagrams, Turing Machines and languages with only two formation rules}, journal = {CACM}, year = 1966, key = {B\"{o}hm \& Jacopini}, volume = 9, month = {May}, pages = {366-371}, annote = {One can translate an arbitrary flow diagram in to one without jumps, that is, into a structured program.} } @Article{Boehm-Port99, key = {Boehm \& Port}, author = {Barry Boehm and Dan Port}, title = {Escaping the Software Tar Pit: Model Clashes and How to Avoid Them}, journal = SIGSOFT, year = 1999, volume = 24, number = 1, month = Jan, pages = {36-48}, annote = {34 references.} } @InCollection{Boehm79, Key="Boehm", Author="B. Boehm", Title="Software Engineering: R \& D Trends and Defense Needs", BookTitle="Research Directions in Software Technology", Editor="Peter Wegner", Publisher=MITP, Address="Cambridge, Mass.", Year=1979, Pages="44-79", Annote="Discusses state of software engineering and likely trends. 110 references." } @Book{Boehm81, Key="Boehm", Author="Barry W. Boehm", Title="Software Engineering Economics", Publisher=Prentice-Hall, Address="Englewood Cliffs, N.J.", Year=1981 } @Article{Boehm81b, Key = "Boehm", Author = "Barry W. Boehm", Title = "An Experiment in Small-Scale Application Software Engineering", Journal = IEEETSE, Volume = "SE-7", Number = 5, Month = Sep, Year = 1981, Pages = "482-493", Annote = "19 references" } @InProceedings{Boehm82, Key = "Boehm", Author = "Hans-Juergen Boehm", Title = "A Logic for Expressions with Side-Effects", BookTitle="Conference Record of the Ninth Annual ACM Symposium on Principles of Programming Languages, Albuquerque, New Mexico", Organization=ACM, Month=Jan, Year=1982, Pages="268-280" } @Article{Boehm84, Key="Boehm", Author="Barry W. Boehm", Title="Verifying and Validating Software Requirements and Design Specifications", Journal="IEEE Software", Month=Jan, Year=1984, Volume=1, Number=1, Pages="75-88", Annote="Detailed procedures and a checklist for ensuring quality of requirements and design specifications. 16 references." } @Article{Boehm85, Key="Boehm", Author="Hans-Juergen Boehm", Title="Side Effects and Aliasing Can Have Simple Axiomatic Descriptions", Journal=TOPLAS, Volume=7, Number=4, Month=Oct, Year=1985, Pages="637-655", Annote="Axiomatic descriptions for imperative expression languages such as Algol-68. Simple treatment of pointers, side-effects, aliasing, mutation, etc. 29 references." } @Article{Boehm87, Key="Boehm", Author="Barry W. Boehm", Title="Improving Software Productivity", Journal="Computer", Volume=20, Number=9, Month=Sep, Year=1987, Pages="43-57", Annote="83 references." } @InCollection{Bonsangue-Kok93, Key="Bonsangue \& Kok", Author="M. Bonsangue and J. N. Kok", Title="Semantics, orderings and Recursion in the Weakest Precondition Calculus", Journal=LNCS, Number=666, Editor="J. W. de Baker and W. P. de Rover and G. Rozenberg", Publsiher="Springer-Verlag", Address=NY, Year=1993, Note="Semantics: Foundations and Applications REX Workshop, The NetherLands, june 1992. Proceedings", Page="91-109", Annote="23 references" } @Book{Booch-Rumbaugh-Jacobson99, author = {Grady Booch and James Rumbaugh and Ivar Jacobson}, title = {The Unified Modeling Language User Guide}, publisher = {Addison Wesley Longman}, year = 1999, key = {Booch \& Rumbaugh \& Jacobson}, series = {Object Technology Series}, address = {Reading, Mass.} } @InCollection{Booch83, Key="Booch", Author="G. Booch", Title="Object-Oriented Design", BookTitle="Tutorial: Software Design Techniques", Editor="P. Freeman and A. I. Wasserman", Publisher="IEEE Comp. Soc. Press", Year=1983, Pages="420-436" } @Article{Booch90, Key="Booch", Author="Grady Booch", Title="The Deisgn of the C++ Booch Components", Journal = SIGPLAN, Year = 1990, Volume = 25, Number = 10, Month = Oct, Pages = "1-11", Note = "{\em OOPSLA ECOOP '90 Proceedings}, N. Meyrowitz (editor).", Annote = "15 references." } @Book{Booch91, Key="Booch", Author="Grady Booch", Title="Object-Oriented Design: With Applications", Publisher="Benjamin Cummings", Address=NY, Year=1991, Annote="Concepts, method, and applications in Smalltalk, Object Pascal, C++, CLOS, and Ada. Classified bibliography with hundreds of references." } @Book{Borenstein91, Key = "Borenstein", Author = "Nathaniel S. Borenstein", Title = "Programming as if People Mattered", Publisher = "Princeton University Press", Year = 1991, Address = "Princeton, NJ", Annote = "ISU Call number QA76.758 B67 1991" } @InProceedings{Borgida-Mylopoulos-Reiter93, Key = "Borgida \& Mylopoulos \& Reiter", Author = "Alex Borgida and John Mylopoulos and Raymond Reiter", Title = "`... And Nothing Else Changes': The Frame Problem in Procedure Specification", BookTitle = "Proceedings Fifteenth International Conference on Software Engineering, Baltimore", Year = 1993, Month = "May", Note = "Preliminary version obtained from the authors.", Annote = "22 references." } @Article{Borgida-Mylopoulos-Reiter95, author = {Alex Borgida and John Mylopoulos and Rayomnd Reiter}, title = {On the Frame Problem in Procedure Specifications}, journal = IEEETSE, year = 1995, key = {Borgida \& Mylopoulos \& Reiter}, volume = 21, number = 10, month = Oct, pages = {785-798}, annote = {34 references.} } @InCollection{Borras-etal88, author = "P. Borras and D. Clement and Th. Despeyroux and J. Incerpi and G. Kahn and B. Lang and V. Pascual", title = "{CENTAUR}: the system", key = "Borras, {\em et al}.", booktitle = "Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments", year = 1988, editor = "Peter Henderson", volume = 24, number = 2, series = "SIGPLAN", pages = "14-24", month = Feb, annote = "CENTAUR takes a formal specification of a programming language and produces a language specific environment. 25 references." } @Article{Bothe81, Key="Bothe", Author="Klaus Bothe", Title="A Comparative Study of Abstract Data Type Concepts", Journal="Journal of Information Processing and Cybernetics", Volume=17, Number="4/6", Pages="237-257", Year=1981, Annote="Initiality, finality and external behavior. 29 references." } @Article{Bowen-Hinchey95, author = "J. P. Bowen and M. G. Hinchey", title = "Seven More Myths of Formal Methods", journal = "IEEE Software", volume = "12", number = "4", pages = "34-41", month = jul, year = "1995", url = "http://www.cl.cam.ac.uk/users/mgh1001/TECHREPORTS/7myths.ps.Z", annote = "This article deals with further myths in addition to those presented in \cite{Z:Hall90b}. Previous versions issued as: \begin{itemize} \item Technical Report PRG-TR-7-94, Oxford University Computing Laboratory, June 1994. \item Technical Report 357, University of Cambridge, Computer Laboratory, January 1995. \end{itemize}" } @Article{Bowen-Hinchey95b, author = "J. P. Bowen and M. G. Hinchey", title = "Ten Commandments of Formal Methods", journal = "IEEE Computer", volume = 28, number = 4, pages = "56-63", month = apr, year = 1995, url = "http://www.cl.cam.ac.uk/users/mgh1001/10comms.html", annote = "Previously issued as: Technical Report 350, University of Cambridge, Computer Laboratory, September 1994." } @Proceedings{Bowen-Hinchey99, Key = "Bowen \& Hinchey", Editor = {Jonathan P. Bowen and Michael G. Hinchey}, Title = "High-Integrity System Specification and Design", Publisher = {Springer-Verlag}, Series = {FACIT}, Year = 1999 } @Proceedings{Bowen-Nicholls93, Key = "Bowen \& Nicholls93", Editor = {J. P. Bowen and J. E. Nicholls}, Title = {{Z} User Workshop, {London}, UK, 14--15 December 1992}, Publisher = {Springer-Verlag}, Series = {Workshops in Computing}, Year = 1993, ISBN = {3-540-19818-0} } @Book{Boyer-Moore79, Key="Boyer-Moore", Author="R. S. Boyer and J. S. Moore", Title="A Computational Logic", Series="ACM Monograph Series", Publisher="Academic Press", Address=NY, Year=1979 } @InCollection{Breu-etal97, key = {Breu, {\em et al.}}, author = {Ruth Breu and Ursula Hinkel and Christoph Hofmann and Cornel Klein and Barbara Paech and Bernhard Rumpe and Veronika Thurner}, title = {Towards a Formalization of the {Unified Modeling Language}}, booktitle = {ECOOP '97 --- Object-Oriented Programming 11th European Conference, Jyv\"{a}skyl\"{a}, Finland}, publisher = {Springer-Verlag}, year = 1997, editor = {Mehmet Ak\c{s}it and Satoshi Matsuoka}, volume = 1241, series = LNCS, address = NY, month = Jun, pages = {344-366}, annote = {29 references.} } @Book{Breu91, Key = "Breu", Author = "Ruth Breu", Title = "Algebraic Specification Techniques in Object Oriented Programming Environments", Publisher = "Springer-Verlag", Year = 1991, Volume = 562, Series = LNCS, Address = NY, Annote = "Framework for the design of of object-oriented programs using algebraic specification techniques. 77 references." } @Article{Briand-Daly-Wuest99, key = {Briand \& Daly \& W\"{u}st}, author = {Lionel C. Briand and John W. Daly and J\"{u}rgen K. W\"{u}st}, title = {A Unified Framework for Coupling Measurement in Object-Oriented Systems}, journal = IEEETSE, year = 1999, volume = 25, number = 1, month = Jan, pages = {91-121}, annote = {37 references.} } @Article{Brilliant-Knight99, key = {Brilliant \& Knight}, author = {Susan Brilliant and John C. Knight}, title = {Empirical Research in Software Engineering: A Workshop}, journal = SIGSOFT, year = 1999, volume = 24, number = 3, month = May, pages = {45-52}, annote = {35 references.} } @InCollection{Briggs-Werth94, Key = "Briggs \& Werth", Author = "Ted. L. Briggs and John Werth", Title = "A Specification Language for Object-Oriented Analysis and Design", BookTitle = "Object-Oriented Programming 8th European Conference, ECOOP '94 Bologna, Italy, Proceedings", Publisher = "Springer-Verlag", Year = 1994, Editor = "Mario Tokoro and Remo Pareschi", Series = LNCS, Volume = 821, Pages = "365-385", Address = NY, Month = Jul, Annote = "26 references." } @Article{Brinksma-Bolognesi, Key = "Brinksma \& Bolognesi", Author = "Ed Brinksma and Tommaso Bolognesi", Title = "Introduction to the ISO Specification Language {LOTOS}", Journal = "Computer Networks and ISDN Systems", Year = 1987, Volume = 14, Number = 1 } @InProceedings{Brinksma-Scollo-Steenbergen86, Key = "Brinksma \& Scollo \& Steenbergen", Author = "Ed Brinksma and Giuseppe Scollo and Chris Steenbergen", Title = "{LOTOS} specifications, their implementations and their tests", BookTitle = "Sixth Interantional Symposium on Protocol Specification, Testing and Verification, Montreal", Year = 1986, Publisher = "North Holland" } @InCollection{Brookes85, Key="Brookes", Author="Stephen D. Brookes", Title="A Fully Abstract Semantics and a Proof System for an Algol-like Language with Sharing", BookTitle="Mathematical Foundations of Programming Semantics, International Conference, Manhattan, Kansas", Editor="Austin Melton", Month=Apr, Year=1985, Series=LNCS, Volume=239, Pages="59-100", Publisher="Springer-Verlag", Address=NY, Annote="Denotational semantics based on sharing relations instead of locations to capture aliasing. 32 references." } @Book{Brooks75, Key="Brooks", Author="Brooks, Jr., Frederick P.", Title="The Mythical Man-Month", Publisher=Addison-Wesley, Address="Reading, Mass.", Year=1975 } @Article{Brooks87, Key="Brooks", Author="Frederick P. Brooks, Jr.", Title="No Silver Bullet: Essence and Accidents of Software Engineering", Journal="Computer", Month=Apr, Year=1987, Volume=20, Number=4, Pages="10-19", Annote="12 references." } @Book{Brown96, author = {Alan W. Brown}, title = {Component-Based Software Engineering: Selected Papers from the Software Engineering Institute}, publisher = {IEEE Computer Society Press}, year = 1996, key = {Brown}, address = {Los Alamitos, California} } @TechReport{Brown-Nelson89, Key="Brown \& Nelson", Author="Mark R. Brown and Greg Nelson", Title="IO Streams: Abstract Types, Real Programs", Institution=DECSRC, Year=1980, Month=Nov, Number=53, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote="Modula-3 interfaces for text input and output and their implementation. Specifications of a real-world example. 5 references." } @Article{Brown-Wallnau98, key = {Brown \& Wallnau}, author = {Alan W. Brown and Kurt C. Wallnau}, title = {The Current State of {CBSE}}, journal = {IEEE Software}, year = 1998, volume = 15, number = 5, month = Sep, pages = {37-46}, annote = {5 references.} } @TechReport{Broy-Nelson89, Key="Broy \& Nelson", Author="Manfred Broy and Greg Nelson", Title="Can fair choice be added to Dijkstra's calculus?", Month=Feb, Year=1989, Institution=DECSRC, Number=38, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote="4 references." } @Article{Broy-Nelson94, Key = "Broi \& Nelson", Author = "Manfred Broy and Grag Nelson", Title = "Adding Fair Choice to Dijkstra's Calculus", Journal = TOPLAS, Year = 1994, Volume = 16, Number = 3, Month = May, Pages = "924-938", Annote = "8 references." } @Book{Broy-Schmidt82, Key="Broy \& Schmidt", Editor="Manfred Broy and Gunther Schmidt", Title="Theoretical Foundations of Programming Methodology Lecture Notes of an International Summer School directed by F. L. Bauer, E. W. Dijkstra and C. A. R. Hoare", Publisher="D. Reidel", Address="Hingham, Mass.", Year=1982 } @InCollection{Broy-Wirsing81a, Key="Broy \& Wirsing", Author="M. Broy and M. Wirsing", Title="On the Algebraic Specification of Nondeterministic Programming Languages", BookTitle="CAAP '81: Trees in Algebra and Programming, 6th Colloquium, Genoa, March 1981, Proceedings", Editor="E. Astesiano and C. Bohm", Series=LNCS, Volume=112, Publisher="Springer-Verlag", Address=NY, Month=Mar, Year=1981, Pages="162-179", Annote="20 references." } @InCollection{Broy-Wirsing81b, Key="Broy \& Wirsing", Author="Manfred Broy and Martin Wirsing", Title="On the Algebraic Extensions of Abstract Data Types", BookTitle="Formalization of Programming Concepts, International Colloquium, Peniscola, Spain, April 1981", Publisher="Springer-Verlag", Address=NY, Series=LNCS, Volume=107, Editor="J. Diaz and I. Ramos", Year=1981, Pages="244-251", Annote="Algebraic specifications. 21 references." } @Article{Broy-Wirsing82, Key="Broy \& Wirsing", Author="Manfred Broy and Martin Wirsing", Title="Partial Abstract Types", Journal="Acta Informatica", Volume=18, Number=1, Month=Nov, Year=1982, Pages="47-64", Annote="Studies hierarchical abstract types with conditional equations as formulas. Discussion of different kinds of homomorphisms, initial and weakly terminal models. Full abstraction. Specification of the semantics of programming languages. 41 references." } @TechReport{Broy-etal93, Key="Broy, {\em et al.}", Author="Manfred Broy and others", Title="The Requirement and Design Specification Language {SPECTRUM}---An informal introduction - part {I}", Institution="Institute for Information - Technical University Munchen", Month=May, Year=1993, Number="TUM-I9311", Annote="Part I and II - The Munich Spectrum Group" } @InCollection{Broy82, Key="Broy", Author="Manfred Broy", Title="A Fixed Point to Applicative Multiprogramming", BookTitle="Theoretical Foundations of Programming Methodology", Editor="M. Broy and G. Schmidt", Publisher="Ridel Publishing", Year=1982, Pages="565-623" } @InCollection{Broy83, Key="Broy", Author="Manfred Broy", Title="Fixed Point Theory for Communication and Concurrency", BookTitle="Formal Description of Programming Concepts --- II", Editor="Dines Bj{\o}rner", Publisher=North-Holland, Address=NY, Month=Jun, Year=1983, Pages="125-147", Annote="The applicative language AMPL can represent concurrent programs and communicating systems in the form of mutually recursive streams of nondeterministic equations for functions and streams. Fully abstract mathematical semantics using fixed points. 37 references." } @Article{Broy86, Key="Broy", Author="Manfred Broy", Title="A Theory for Nondeterminism, Parallelism, Communication, and Concurrency", Journal=TCS, Volume=45, Number=1, Year=1986, Pages="1-61", Annote="The applicative language AMPL represents communicating systems in the form of mutually recursive systems of nondeterministic equations for functions and streams. A mathematical and operational semantics. 85 references." } @TechReport{Broy92, Key = "Broy", Author="Manfred Broy", Title="Compositional Refinement of Interactive Systems", Month=Jul, Year=1992, Institution="Systems Research Center", Number=89, Address = "Palo Alto, California", Annote="17 references." } @TechReport{Broy92a, Key = "Broy", Author = "Manfred Broy", Title = "Experiences with Software Specification and Verification Using LP, the Larch Proof Assistant", Month = Jul, Year = 1992, Institution = DECSRC, Number = 93, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote = "31 references." } @Article{Broy93, Key = "Broy", Author = "Manfred Broy", Title = "Functional Specification of Time-Sensitive Communicating Systems", Journal = "ACM Transactions on Software Engineering and Methodology", Volume = 2, Number = 1, Month = Jan, Year = 1993, Pages = "1-46", Annote = "45 references." } @Proceedings{Broy-Jaehnichen95, Key = "Broy \& Jaehnichen", editor = {Manfred Broy and Stefan J\"ahnichen}, title = "{KORSO}: Methods, Languages and Tools for the Construction of Correct Software", booktitle = "{KORSO}: Methods, Languages and Tools for the Construction of Correct Software", Publisher = "Springer-Verlag", address = NY, Series = LNCS, Volume = 1009, Year = 1995 } @TechReport{Bruckner-Sannella91, Key="Bruckner \& Sannella", Author="Bernd Krieg Bruckner and Donald Sannella", Title="Structuring Specifications in-the-Large and in-the-Small: Higher-Order Functions, Dependent Types and Inheritance in SPECTRAL", Organization="Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh", Month=Jan, Year=1991, Number="ECS-LFCS-91-135", Annote="51 references." } @Book{Bruegge-Dutoit00, author = {Bernd Bruegge and Allen H. Dutoit}, title = {Object-Oriented Software Engineering: Conquering Complex and Changing Systems}, publisher = {Prentice Hall}, year = 2000, key = {Bruegge-Dutoit}, address = {Upper Saddle River, NJ}, annote = {Many references.} } @InProceedings{Bruza-vanderWeide89, key = "Bruza \& van der Weide", author = "P. D. Bruza and Th. P. van der Weide", title = "The Semantics of Data Flow Diagrams", editor = "N. Prakash", booktitle = "Proceedings of the International Conference on Management of Data, Hyderabad, India", year = 1989, note = "ftp://ftp.cs.kun.nl/pub/SoftwEng.InfSyst/articles/ProcSem1.ps.Z" } @InProceedings{Buechi-Sekerinski97, key = "Buechi \& Sekerinski", author = {Martin B\"{u}chi and Emil Sekerinski}, title = "Formal Methods for Component Software: The Refinement Calculus Perspective", booktitle = {Proceedings of the Second Workshop on Component-Oriented Programming (WCOP)}, year = 1997, month = Jun, note = {ftp://ftp.abo.fi/pub/cs/papers/mbuechi/FMforCS.ps.gz}, annote = "30 references." } @InProceedings{Burkhart92, Key="Burkhart", Author="Roger Burkhart", Title="Enterprise Integration Modelling", Booktitle="Proc. of the first international conference", Publisher=MITP, Address=NY, Year=1992, Annote="11 references" } @Article{Burmeister82, Key="Burmeister", Author="Peter Burmeister", Title="Partial Algebras --- Survey of a Unifying Approach Towards a Two-valued Model Theory for Partial Algebras", Journal="Algebra Universalis", Volume=15, Pages="306-358", Year=1982, Annote="91 references." } @Article{Burstall-Darlington77, Key="Burstall \& Darlington", Author="R. M. Burstall and J. L. Darlington", Title="A Transformation System for Developing Recursive Programs", Journal=JACM, Year=1977, Month=Jan, Volume=24, Number=1, Pages="44-67" } @InProceedings{Burstall-Goguen77, Key="Burstall \& Goguen", Author="R. M. Burstall and J. A. Goguen", Title="Putting theories together to make specifications", BookTitle="Fifth International Joint Conference on Artifical Intelligence, MIT, Cambridge, Mass.", Organization="IJCAI-77, Department of Computer Science, Carnegie Mellon, Pittsburgh", Year=1977, Month=Aug, Pages="1045-1058", Volume=2, Annote="The specification language Clear. 35 references." } @InCollection{Burstall-Goguen80, Key="Burstall \& Goguen", Author="R. M. Burstall and J. A. Goguen", Title="The Semantics of Clear, a Specification Language", BookTitle="Abstract Software Specification, Copenhagen Winter School", Series=LNCS, Volume=86, Note="Also University of Edinburgh, Department of Computer Science, Internal Report, CSR-65-80, Feb, 1980", Publisher="Springer-Verlag", Address=NY, Year=1980, Pages="292-332" } @InCollection{Burstall-Goguen81, Key="Burstall \& Goguen", Author="R. M. Burstall and J. Goguen", Title="An Informal Introduction to Specification Using CLEAR", BookTitle="The Correctness Problem in Computer Science", Editor="Robert S. Boyer and J. Strother Moore", Publisher="Academic Press, Inc.", Address=NY, Year=1981, Pages="185-213", Annote="23 references." } @InCollection{Burstall-Goguen82, Key="Burstall \& Goguen", Author="R. M. Burstall and J. A. Goguen", Title="Algebras, Theories and Freeness: An Introduction for Computer Scientists", BookTitle="Theoretical Foundations of Programming Methodology: Lecture Notes of an International Summer School directed by F. L. Bauer, E. W. Dijkstra and C. A. R. Hoare", Editor="Manfred Broy and Gunther Schmidt", Year=1982, Publisher="D. Ridel", Address="Dordrecht, Holland", Pages="329-348", Series="series C", Volume=91, Annote="44 references." } @Article{Bustard-Winstanley94, key = {Bustard \& Winstanley}, author = {David W. Bustard and Adam C. Winstanley}, title = {Making Changes to Formal Specifications: Requirements and an Example}, journal = IEEETSE, year = 1994, volume = 20, number = 8, month = Aug, pages = {562-568}, annote = {26 references.} } @InProceedings{Butler-DiVito91, Key = "Butler \& Di Vito", Author = "Ricky W. Butler and Ben L. Di Vito", Title = "Design Strategy for a Formally Verified Reliable Computing Platform", BookTitle = "6th Annual Conference on Computer Assurance (COMPASS 91)", Year = 1991, Month = Jun } @InProceedings{Butler91, Key = "Butler", Author = "Ricky W. Butler", Title = "NASA Langley's Research Program in Formal Methods", BookTitle = "6th Annual Conference on Computer Assurance (COMPASS 91)", Year = 1991, Month = Jun } @TechReport{Buxton-Stenning80, Key="Buxton \& Stenning", Author="John N. Buxton and Vic Stenning", Title="Requirements for Ada Programming Support Environments: Stoneman", Institution="U.S. Department of Defense", Month=Feb, Year=1980, Annote="2 references." } @PhdThesis{Camarao94, author = "Carlos Camar{\~{a}}o de Figueiredo", title = "A Proof System for a Sequential Object-Based Language", school = "University of Manchester", year = 1995, month = "September", note = "Also in University of Manchester Technical Report UMCS--95--1--1, available via ftp.cs.man.ac.uk:pub/TR/UMCS-95-1-1.ps.Z, or http://www.cs.man.ac.uk/csonly/cstechrep/Abstracts/UMCS-95-1-1.html" } @Book{Cameron83, Key = "Cameron", Author = "J. R. Cameron", Editor = "P. Bruce Berra and Bill D. Carroll and Jack Cotton and Jerome R. Cox, Jr. and Ez Nahouraii and Chuan-lin Wu", Title = "Tutorial JSP \& JSD: The Jackson Approach to Software Development", Publisher = "IEEE Computer Society Press", Year = 1983, Series = "A Monograph in the Computer Society Press Series", Address = "Silver Spring, MD", Note = "ISBN 0-8186-8516-6 (casebound), 0-8186-4516-4 (microfiche)" } @Article{Cameron86, Key="Cameron", Author="John R. Cameron", Title="An Overivew of {JSD}", Journal=IEEETSE, Volume="SE-12", Number=2, Month=Feb, Year=1986, Pages="222-240", Annote="7 references." } @Book{Carrano95, key = "Carrano", author = "Frank M. Carrano", title = "Data Abstraction and Problem Solving with C++: Walls and Mirrors", publisher = "Benjamin/Cummings", year = 1995, address = "Redwood City, CA" } @InProceedings{Carrington-etal89, Key="Carrington, {\em et al.}", Author="D. Carrington and D. Duke and R. Duke and P. King and G. Rose and G. Smith", Title="{Object-Z}: An object-oriented extension to {Z}", BookTitle="Formal Description Techniques (FORTE '89), Vancouver", Month=Dec, Year=1989, Publisher=North-Holland, Pages="281-296", Annote="Encapsulation for state variables in 'classes', inheritance of specs, and subtype polymorphism." } @InProceedings{Cartwright81, Key = "Cartwright", Author = "Robert Cartwright", Title = "Formal Program Testing", BookTitle="Conference Record of the Eighth ACM Symposium on Principles of Programming Languages", Publisher=ACM, Month=Jan, Year=1981, Pages="125-132", Annote="Generate verification conditions, and test them. 25 references." } @Unpublished{Casais-etal93, Key = "Casais {\em et al.}", Author = "E. Casais and C. Lewerentz and T. Lindner and F. Weber", Title = "Formal Methods and Object-Orientation", Note = "Tutorial at TOOLS Europe '93", Annote = "127 references.", Year = 1993 } @Article{Cavalcanti-Sampaio-Woodcook99, key = "Cavalcanti \& Sampaio \& Woodcook", title = "An inconsistency in procedures, parameters, and substitution in the refinement calculus", author = "Ana Cavalcanti and Augusto Sampaio and Jim Woodcock", pages = "87-96", journal = "Science of Computer Programming", month = jan, year = "1999", volume = "33", number = "1" } @TechReport{Chalin95, key = "Chalin", author = "Patrice Chalin", title = "Shortcomings of LCL 2.4", institution = "Concordia University, Department of Computer Science", year = 1995, number = "CU/DCS-TR-95-04", address = "1455 de Maisonneuve Blvd. West, Montreal, Quebec, Canada", month = Apr, note = "Available by anonymous ftp at ftp.cs.concordia.ca in pub/chalin/CU-DCS-TR-95-04.ps.Z." } @PhdThesis{Chalin95b, author = {Patrice Chalin}, title = {On the Language Design and Semantic Foundation of {LCL}, a {Larch/C} Interface Specification Language}, school = {Concordia University}, year = 1995, key = {Chalin}, address = {1455 de Maisonneuve Blvd. West, Montreal, Quebec, Canada}, month = {October}, note = {Available as CU/DCS TR 95-12, from the URL ftp://ftp.cs.concordia.ca/pub/chalin/tr.ps.Z.} } @InProceedings{Chalin-Grogono-Radhakrishnan96, key = {Chalin \& Grogono \& Radhakrishnan}, author = {Patrice Chalin and Peter Grogono and T. Radhakrishnan}, title = {Identification of and solutions to shortcomings of {LCL}, a {Larch/C} interface specification language}, editor = "Marie-Claude Gaudel and James Woodcock", volume = 1051, series = LNCS, pages = "385-404", booktitle = "FME '96: Industrial Benefit and Advances in Formal Methods", year = 1996, publisher = "Springer-Verlag", address = NY, month = Mar, annote = "21 references." } @InCollection{Chalmers-etal91, Key = "D. L. Chalmers, {\em et al}", Author = "D. L. Chalmers and B. Dandanell and J. Gortz and J. S. Pedersen and E. Zierau", Title = "Using RAISE --- First Impressions from the LaCoS Applications", BookTitle = "VDM '91 Formal Software Development Methods 4th International Symposium of VDM Europe Noordwijkerhout, The Netherlands, Volume 1: Conference Contributions", Publisher = Springer-Verlag, Year = 1991, Editor = "S. Prehn and W. J. Toetenel", Series = LNCS, Volume = 551, Pages = "645-657", Address = NY, Month = Oct, Annote = "12 references." } @InProceedings{Chan-Boyland-Scherlis98, key = {Chan \& Boyland \& Scherlis}, author = {Edwin C. Chan and John T. Boyland and William L. Scherlis}, title = {Promises: Limited Specifications for Analysis and Manipulation}, booktitle = {Proceedings of the 1998 International Conference on Software Engineering: ICSE 98, Kyoto, Japan}, month = Apr, year = 1998, pages = {167--176}, publisher = IEEE, address = {Los Alamitos, CA}, annote = {22 references.} } @InProceedings{Cheatham-Holloway-Townley81, Key="Cheatham \& Holloway \& Townley", Author="T. E. Cheatham and G. H. Holloway and J. A. Townley", Title="Program Refinement by Transformation", BookTitle="Fifth International Conference on Software Engineering", Organization=IEEE, Year=1981, Pages="430-437" } @InProceedings{Cheatham-Wegbreit72, Key="Cheatham \& Wegbreit", Author="T. E. Cheatham and B. Wegbreit", Title="A Laboratory for the Study of Automating Programming", BookTitle="1972 Spring Joint Computer Conference", Organization=AFIPS, Year=1972 , Pages="11-21" } @InCollection{Cheatham82, Key="Cheatham", Author="T. E. Cheatham", Title="An Overview of the Harvard Program Development System", Year=1981, BookTitle="Software Engineering Environments", Editor="H. Hunke", Publisher=North-Holland, Address=NY } @TechReport{Chen89, Key="Chen", Author="Jolly Chen", Title="The {Larch/Generic} Interface Language", Institution="Massachusetts Institute of Technology, EECS department", Month=May, Year=1989, Note="The author's Bachelor's thesis. Available from John Guttag at MIT (guttag@lcs.mit.edu)", Annote="Generic interface language defining traits for state and conventions for procedure and module interface specfications. 7 references." } @InProceedings{Cheng-Jones91, key = "Cheng \& Jones", author = "J. H. Cheng and C. B. Jones", editor = "C. Morgan and J. C. P. Woodcock", title = "{On the usability of logics which handle partial functions}", booktitle = "{Proceedings of the Third refinement Workshop}", publisher = "Springer-Verlag", address = "Berlin", year = "1991", pages = "51-69", series = "Workshops in Computing Series" } @TechReport{Cheon-Leavens93a, Key = "Cheon \& Leavens", Author = "Yoonsik Cheon and Gary T. Leavens", Title = "A Quick Overview of {Larch/C++}", Institution = "Department of Computer Science, Iowa State University", Month = Jun, Year = 1994, Number = "93-18a", Note = "Appears in the {\em Journal of Object-Oriented Programming\/}, 7(6):39-49, October 1994.", Annote = "29 references." } @Article{Cheon-Leavens94, Key = "Cheon \& Leavens", Author = "Yoonsik Cheon and Gary T. Leavens", Title = "The {Larch/Smalltalk} Interface Specification Language", Journal = "ACM Transactions on Software Engineering and Methodology", Month = Jul, Year = 1994, Volume = 3, Number = 3, Pages = "221-253", Annote = "44 references." } @TechReport{Cheon-Leavens94b, Key = "Cheon \& Leavens", Author = "Yoonsik Cheon and Gary T. Leavens", Title = "The {Larch/Smalltalk} Interface Specification Language", Institution = "Department of Computer Science, Iowa State University", Month = May, Year = 1994, Number = "93-24a", Note = "To appear in {\it ACM TOSEM}, July 1994. Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu.", Annote = "44 references." } @TechReport{Cheon-Leavens94c, Key = "Cheon \& Leavens", Author = "Yoonsik Cheon and Gary T. Leavens", Title = "A gentle introduction to {Larch/Smalltalk} specification browsers", Institution = "Department of Computer Science, Iowa State University", Month = Jan, Year = 1994, Number = "94-01", URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR94-01/TR.ps.Z", Note = "Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu." } @Article{Cheon-Leavens94d, Key = "Cheon \& Leavens", Author = "Yoonsik Cheon and Gary T. Leavens", Title = "A Quick Overview of {Larch/C++}", Journal = "Journal of Object-Oriented Programming", Year = 1994, Volume = 7, Number = 6, Month = Oct, Pages = "39-49", Annote = "29 references." } @TechReport{Cheon91, Key = "Cheon", Author = "Yoonsik Cheon", Title = "{Larch/Smalltalk}: A Specification Language for {Smalltalk}", Institution = "Department of Computer Science, Iowa State University", Year = 1991, Number = "91-15", Address = "Ames, IA", Month = Jun, Note = "Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu.", Annote = "40 references." } @Article{Chetali98, key = {Chetali}, author = {Boutheina Chetali}, title = {Formal Verification of Concurrent Programs Using the {Larch Prover}}, journal = IEEETSE, year = 1998, volume = 24, number = 1, month = Jan, pages = {46-62}, annote = {Proofs of UNITY programs in LP. 35 references.} } @TechReport{Christensen-Jepsen91, Key = "Christensen \& Jepsen", Author = "Soren Christensen and Leif Obel Jepsen", Title = "Modelling and Simulation of a Network Management System using {Hierarchical Coloured Petri Nets} (extended version)", Institution = "Computer Science Department, Aarhus University", Year = 1991, Number = "DAIMI PB 349", Month = "Apr", Annote = "14 references." } @Article{Ciapessoni-etal99, author = {Emanuelle Ciapessoni and Alberto Coen-Porisini and Ernani Crivelli and Dino Mandrioli and Piergiorgio Mirandola and Angelo Morzenti}, title = {From Formal Models to Formally Based Methods: An Industrial Experience}, journal = TOSEM, year = 1999, key = {Ciapessoni, {\em et al.}}, volume = 8, number = 1, month = Jan, pages = {79-113}, annote = {Adopting formal methods incrementally can work. Many references.} } @Article{Cicalese-Rotenstreich99, key = {Cicalese \& Rotenstreich}, author = {Cynthia Della Torre Cicalese and Shmuel Rotenstreich}, title = {Behavioral Specification of Distributed Software Component Interfaces}, journal = {Computer}, year = 1999, volume = 32, number = 7, month = Jul, pages = {46-53}, annote = {Biscotti, a Java extension. 4 references.} } @inproceedings{Ciccia-Ciancarini-Penzo95a, key = "Ciccia \& Ciancarini \& Penzo", author = {P. Ciaccia and P. Ciancarini and W. Penzo}, title = "A Formal Approach to Software Design: The {Clepsydra} Methodology", Booktitle= {Proc. 9th Int. Conf. on the Z Formal Specification Notation (ZUM95), Limerick, Ireland}, publisher = "Springer-Verlag", editor = {J. Bowen and M. Hinchey}, month = {September}, series = LNCS, volume = 967, year = 1995, pages = {5-24}, address = NY, annote = "17 references." } @inproceedings{Ciccia-Ciancarini-Penzo95b, key = "Ciccia \& Ciancarini \& Penzo", author = {P. Ciaccia and P. Ciancarini and W. Penzo}, title = "From Formal Requirements to Formal Design", booktitle = {Proc. 7th Int. Conf. on Software Engineering and Knowledge Engineering, Rockville, Maryland}, year = {1995}, pages = {23-30}, publisher = {Knowledge Systems Institute}, } @techreport{Ciccia-Ciancarini-Penzo95c, key = "Ciccia \& Ciancarini \& Penzo", author = {P. Ciaccia and P. Ciancarini and W. Penzo}, title = "The {Clepsydra} Methodology", institution = "Dept. of Computer Science, Univ. of Bologna", address = "Pza. di Porta S.Donato, 5 -- 40127 Bologna, Italy", year = 1995, number = {UBLCS 95-2}, } @article{Ciccia-Ciancarini-Penzo96, key = "Ciccia \& Ciancarini \& Penzo", author = {P. Ciaccia and P. Ciancarini and W. Penzo}, title = "Formal Requirements and Design Specifications: The {Clepsydra} Methodology", journal = "Int. Journal on Sw Eng. and Knowledge Eng.", year = 1996, volume = {(to appear)}, number = {}, pages = {}, Note="Available from ftp://ftp.cs.unibo.it/pub/cianca/ij.ps.gz" } @InProceedings{Clark-Devnani-Chulani-Boehm98, key = {Clark \& Devnani-Chulani \& Boehm}, author = {Bradford Clark and Sunita Devnani-Chulani and Barry Boehm}, title = {Calibrating the {COCOMO II} Post-Arichitecture Model}, booktitle = {Proceedings of the 1998 International Conference on Software Engineering: ICSE 98, Kyoto, Japan}, year = 1998, organization = IEEE, address = {Los Alamitos, California}, month = Apr, pages = {477-480}, annote = {5 references.} } @TechReport{Clark82, Key="Clark", Author="D. Clark", Title="Modularity and efficiency in protocol implementation", Institution="Arpanet RFC", Number=817, Year=1982, Month=Jul } @Article{Clarke-Emerson-Sistla86, key = "Clarke \& Emerson \& Sistla", author = "E. M. Clarke and E. Allen Emerson and A. P. Sistla", title = "Automatic Verification of Finite State Concurrent Systems Using Temporal Logic Specifications", journal = TOPLAS, volume = 8, number = 2, pages = "244--263", year = 1986, annote = "Model checking of a CTL formula versus a transition graph is introduced. An algorithm is presented that iteratively labels the nodes of the graph with progressively larger subformulas. 19 references." } @InProceedings{Clarke-Potter-Noble98, author = {David G. Clarke and John M. Potter and James Noble}, title = {Ownership Types for Flexible Alias Protection}, BookTitle = "OOPSLA '98 Conference Proceedings", Series = SIGPLAN, Volume = "33(10)", Month = Oct, Year = 1998, key = {Clarke \& Potter \& Noble}, organization = ACM, pages = {48-64}, annote = {46 references.} } @Article{Clarke-Wing96, key = "Clarke \& Wing", author = "Edmund M. Clarke and Jeannette M. Wing and others", title = "Formal Methods: State of the Art and Future Directions", journal = ACMCS, volume = 28, number = 4, pages = "626--643", month = dec, year = 1996, url = "http://www.acm.org/pubs/citations/journals/surveys/1996-28-4/p626-clarke/", annote = "Survey of specification and verification techniques. Many references." } @InCollection{Clerici-Orejas88, Key="Clerici \& Orejas", Author="S. Clerici and F. Orejas", Title="GSBL: An Algebraic Specification Language Based on Inheritance", BookTitle="ECOOP '88, European Conference on Object-Oriented Programming, Oslo, Norway", Editor="S. Gjessing and K. Nygaard", Publisher="Springer-Verlag", Address=NY, Month=Aug, Year=1988, Pages="78-92", Series=LNCS, Volume=322, Annote="Allows incomplete specifications. Order-sorted. 16 references." } @Article{Clyde-Embley-Woodfield92, Key = "Clyde \& Embley \& Woodfield", Author = "Stephen W. Clyde and David W. Embley and Scott N. Woodfield", Title = "Tunable Formalism in Object-Oriented Systems Analysis: Meeting the Needs of Both Theoreticians and Practitioners", Journal = SIGPLAN, Volume = 27, Number = 10, Month = Oct, Year = 1992, Pages = "452-465", Note = "{\em OOPSLA '92 Proceedings}, Andreas Paepcke (editor).", Annote = "17 references." } @InCollection{Coen-Porsini-Kemmerer-Mandrioli, Key="Coen-Porsini \& Kemmerer \& Mandrioli", Author="A. Coen-Porsini and R. A. Kemmerer D. Mandrioli", Title="A Formal FrameWork of ASTRAL Inter-Level Proof Obligations", Journal=LNCS, Number=717, Editor="Ian SommrVille and Manfred Paul", Publsiher="Springer-Verlag", Address=NY, Year=1993, Note="Software Engineering= ESEC '93. 4th European Software Engineering Conference, Germany, Sep 93. Proceedings", Page="483-500", Annote="11 references" } @Book{Cohen-Harwood-Jackson86, Key = "Cohen \& Harwood \& Jackson", Author = "B. Cohen and W. T. Harwood and M. I Jackson", Title = "The Specification of Complex Systems", Publisher = "Addison-Wesley", Year = 1986 } @Article{Cohen-Porisini-Ghezzi-Kemmerer97, key = {Alberto Cohen-Porisini \& Ghezzi \& Kemmerer}, author = {Alberto Cohen-Porisini and Carlo Ghezzi and Richard A. Kemmerer}, title = {Specification of Realtime Systems using {ASTRAL}}, journal = IEEETSE, year = 1997, volume = 23, number = 9, month = Sep, pages = {572-598}, annote = {ASTRAL is a formal specification language for real-time systems. 59 references.} } @Article{Cohen-Porisini-Ghezzi-Kemmerer94, key = {Alberto Cohen-Porisini \& Ghezzi \& Kemmerer}, author = {Alberto Cohen-Porisini and Carlo Ghezzi and Richard A. Kemmerer}, title = {A Formal Framework for {ASTRAL} Intralevel Proof Obligations}, journal = IEEETSE, year = 1994, volume = 20, number = 8, month = Aug, pages = {548-561}, annote = {13 references.} } @Book{Cohen90, Key = "Cohen", Author = "Edward Cohen", Title = "Programming in the 1990s: An Introduction to the Calculation of Programs", Publisher = "Springer-Verlag", Year = 1990, Address = NY, Annote = "32 references." } @Unpublished{Colagrosso-Achuthan-Alagar93, Key = "Colagrosso \& Achuthan \& Alagar", Author = "Piero Colagrosso and Ramesh Achuthan and Vangalur S. Alagar", Title = "Evaluating the Completeness of Class Interface Specifications for Software Reuse", Year = 1993, Note = "Obtained from authors", Annote = "29 references." } @Article{Coleman-Hughes79, author = "D. Coleman and J. W. Hughes", title = "The Clean Termination of {Pascal} Programs", key = "Coleman \& Hughes", journal = "Acta Informatica", year = 1979, volume = 11, pages = "195-210", annote = "8 references." } @PhdThesis{Coleman91, Key = "Coleman", Author = "David L. Coleman", Title = "Formalized structured analysis specifications", School = "Iowa State University", Year = 1991, Address = "Ames, Iowa, 50011", Annote = "Formalization of syntax and some of the semantics of data flow diagrams. 66 references." } @Book{Coleman-etal94, key = "Coleman, {\em et al.}", author = "D. Coleman and P. Arnold and S. Bodoff and C. Dollin and H. Gilchrist and F. Hayes and P. Jeremaes", title = "Object-Oriented Development: The Fusion Method", publisher = "Prentice-Hall", address = "Englewood Cliffs, NJ", year = 1994 } @InCollection{Comon90, Key = "Comon", Author = "Hubert Comon", Title = "Equational Formulas in Order-Sorted Algebra", BookTitle = "17th International Colloquium on Automata, Languages, and Programming (ICALP), Warwick, England", Publisher = Springer-Verlag, Year = 1990, Editor = "M. S. Paterson", Series = LNCS, Pages = "674-688", Address = NY, Month = Jul, Annote = "26 references." } @Book{Constantine-Yourdan79, Key = "Constantine \& Yourdan", Author = "L. L. Constantine and E. Yourdan", Title = "Structured Design", Publisher = "Prentice-Hall", Year = 1979, Address = "Englewood Cliffs, NJ" } @Book{Conway-Gries75, Key="Conway \& Gries", Author="Richard Walter Conway and David Gries", Title="An Introduction to Programming, a Structured Approach Using PL/1 and PL/C-7", Publisher="Winthrop Publishers, Inc.", Address="Cambridge, Mass.", Year=1975 } @Article{Cook78, Key = "Cook", Author = "S. A. Cook", Title = "Soundness and completeness of an axiom system for program verification", Journal = SIAMJC, Year = 1978, Volume = 7, Pages = "70-90", Annote = "Defines relative completeness." } @Book{Cooke98, author = {John Cooke}, title = {Constructing Correct Software: the basics}, publisher = {Springer-Verlag}, year = 1998, key = {Cooke}, series = {FACIT}, address = {London, UK} } @Article{Cooper-Kennedy-Torczon86, Key="Cooper \& Kennedy \& Torczon", Author="Keith D. Cooper and Ken Kennedy and Linda Torczon", Title="The Impact of Interprocedural Analysis and Optimization in the ${\bf R}^{n}$ Programming Environment", Journal=TOPLAS, Volume=8, Number=4, Month=Oct, Year=1986, Pages="491-523", Annote="47 references." } @TechReport{Cooprider79, Key="Cooprider", Author="Lee W. Cooprider", Title="The Representation of Families of Software Systems", Institution=CMU, Number="CMU-CS-79-116", Month=Apr, Year=1979, Annote="Software construction database for different versions of systems. 85 references." } @Article{Coplien-Hoffman-Weiss98, key = {Coplien \& Hoffman \& Weiss}, author = {James Coplien and Daniel Hoffman and David Weiss}, title = {Commonality and Variability in Software Engineering}, journal = {IEEE Software}, year = 1998, volume = 15, number = 6, month = Nov, pages = {37-45}, annote = {16 references.} } @Book{Copelin-Schmidt95, author = {James O. Copelin and Douglas C. Schmidt}, title = {Pattern Languages of Program Design}, publisher = {Addison-Wesley}, year = 1995, key = {Copelin \& Schmidt}, address = {Reading, Mass.} } @InProceedings{Corella93, key = "Corella", author = "F. Corella", title = "Automated high-level verification against clocked algorithmic specification", booktitle = "Computer Hardware Description Languages and their Applications", year = "1993", editor = "{D. Agnew} and {L. Claesen} and {R. Camposano}", pages = "135--142", organization = "IFIP WG10.2, CHDL'93, IEEE COMPSOC", publisher = "Elsevier Science Publishers B.V., Amsterdam, Netherland", address = "Ottawa, Canada", month = apr } @InCollection{Cousot90, Key = "Cousot", Author = "Patrick Cousot", Booktitle = "Handbook of Theoretical Computer Science", Title = "Methods and Logics for Proving Programs", Chapter = 15, Publisher = MITP, Year = 1990, Editor = "J. van Leewen", Pages = "841-993", Volume = "B: Formal Models and Semantics", Address = NY, Annote = "410 references." } @InCollection{Coutaz87, Key="Coutaz", Author={Jo\"{e}lle Coutaz}, Title="The Construction of User Interfaces and the Object Paradigm", BookTitle="ECOOP '87, European Conference on Object-Oriented Programming, Paris, France", Editor="Jean Bezivin and others", Publisher="Springer-Verlag", Address=NY, Month=Jun, Year=1987, Pages="121-130", Note="Lecture Notes in Computer Science, Volume 276", Annote="23 references." } @Article{Criagen-Gerhart-Ralston95, author = {Dan Criagen and Susan Gerhart and Ted Ralston}, title = {Formal Methods Reality Check: Industrial Usage}, journal = IEEETSE, year = 1995, key = {Criagen \& Gehart \& Ralston}, volume = 21, number = 2, pages = "90-98", month = Feb, annote = "Summary of usage and recommendations for enhancement of formal methods, based on a survey and analysis. Notational issues are important. Points in favor of Z, including close interaction with industry and a substantial pedagogical literature. Industry is willing to augment and extend its practices, but not to abandon current practice. They identified 14 features and a rating system for formal methods payoff: A. Product Features: 1. Client Satisfaction 2. Cost of Product 3. Impact of Product 4. Quality 5. Time to Market B. Process Features 6. Cost of Process 7. Impact of Process 8. Pedagogical 9. Tools C. Process Features (specific process effects) 10. Design 11. Reusable components 12. Maintainability 13. Requirements Capture 14. V&V 5 references." } @Article{Cunha-Lucena-Maibaum80, Key="Cunha \& Lucena \& Maibaum", Author="Paulo R. F. Cunha and Carlos J. Lucena and T. S. E. Maibaum", Title="On the Design and Specification of Message Oriented Programs", Journal="International Journal of Computer and Information Sciences", Volume=9, Number=3, Year=1980, Annote="40 references." } @Article{Cunningham-Beck86, Key="Cunningham \& Beck", Author="Ward Cunningham and Kent Beck", Title="A Diagram for Object-Oriented Programs", Journal=SIGPLAN, Volume=21, Number=11, Month=Nov, Year=1986, Pages="361-367", Note="OOPSLA '86 Conference Proceedings, Norman Meyrowitz (editor), September 1986, Portland, Oregon.", Annote="Diagramatic notation for object-oriented algorithms in Smalltalk-80. 5 references." } @Article{Cunningham-Gilford76, Key = "Cunningham \& Gilford", Author = "R. J. Cunningham and M. E. J. Gilford", Title = "A note on the semantic definition of side effects", Journal = "Information Processing Letters", Year = 1976, Volume = 4, Number = 5, Pages = "118-120" } @Article{Curcio98, key = {Curcio}, author = {Igor D. D. Curcio}, title = {{ASAP} --- A Simple Assertion Preprocessor}, journal = SIGPLAN, year = 1998, volume = 33, number = 12, month = Dec, pages = {44-51}, annote = {13 references.} } @InCollection{Cusack-Lai91, Key = "Cusack \& Lai", Author = "Elspeth Cusack and Michael Lai", Title = "Object-Oriented Specification in LOTOS and Z, or My Cat Really is Object-Oriented!", BookTitle = "Foundations of Object-Oriented Languages, REX School/Workshop, Noordwijkerhout, The Netherlands, May/June 1990", Publisher = "Springer-Verlag", Year = 1991, Editor = "J. W. de Bakker and W. P. de Roever and G. Rozenberg", Series = LNCS, Volume = 489, Pages = "179-202", Address = NY, Annote = "Object-oriented interpretation of LOTOS. 23 references." } @InCollection{Cusack-Rafsanjani92, Key = "Cusack \& Rafsanjani", Author = "Elspeth Cusack and G. H. B. Rafsanjani", Title = "{ZEST}", Editor = "Susan Stepney and Rosalind Barden and David Cooper", BookTitle = "Object Orientation in {Z}", Publisher = "Springer-Verlag", Year = 1992, Address = "Cambridge CB2 1LQ, UK", Series = "Workshops in Computing", Crossref = "Stepney-Barden-Cooper92", Pages = "113-126" } @InProceedings{Cusack-Wezeman93, Key = "Cusack \& Wezeman", Author = {E. Cusack and C. Wezeman}, Title = {Deriving Tests for Objects Specified in {Z}}, Crossref = "Bowen-Nicholls93", Pages = "180-195" } @Unpublished{Cusack90, Key = "Cusack", Author = "Elspeth Cusack", Title = "Inheritance in Object Oriented {Z}", Note = "Obtained from the Author. This has been submitted to ECOOP '91", Annote = "Distinguishes subtype inheritance from incremental inheritance. Both are at level of specification. Formal model of subtype is subsumption, but allows coercions. Substutability condition based on semantics of operations as relations in Z. 22 refrences.", Month = Nov, Year = "1990" } @Article{Cusack91a, Key = "Cusack", Author = "Elspeth Cusack", Title = "Refinement, Conformance, and Inheritance", Journal="Formal Aspects of Computing", Month = Jan, Year = 1991, Volume = 3, Pages = "129-141", Annote = "20 references." } @Unpublished{Cusack91b, Key = "Cusack", Author = "Elspeth Cusack", Title = "Object Oriented Modelling in {Z}", Note = "Obtained from the Author.", Annote = "Argues that inheritance is a means for effectively and economically structuring descriptions at the level of specifications. 15 references.", Month = Feb, Year = "1991" } @InProceedings{Cusack91c, Key = "Cusack", Author = "Elspeth Cusack", Title = "Object Oriented Modelling in {Z} For Open Distributed Systems", BookTitle = "International Workshop on Open Distributed Processing", Year = 1991, Month = Oct, Note = "Obtained from the author", Annote = "20 references." } @InProceedings{Cusack91d, author = "E. Cusack", editor = "Pierre America", title = "Inheritance in Object Oriented {Z}", booktitle = "Proceedings of the European Conference on Object-Oriented Programming (ECOOP), Geneva Switzerland", series = "Lecture Notes in Computer Science", Volume = 512, pages = "167--179", publisher = "Springer-Verlag", address = NY, year = 1991 } @Book{Cusumano-Selby95, author = "Michael A. Cusumano and Richard W. Selby", title = "Microsoft Secrets", publisher = "The Free Press", year = 1995, address = NY } @InProceedings{DaSilva-Dehboei-Mejia92, Key = "DaSilva \& Dehboei \& Mejia", Author = "Clara DaSilva and Babak Dehboei and Fernando Mejia", Title = "Formal Specification in the Development of Industrial Applications: Subway Speed Control System", BookTitle = "IFIP Formal Description Techniques", Year = 1992, Editor = "M Diaz and R Groz", Publisher = "Esevier", Address = "Amsterdam", Annote = "The B method" } @Book{Dahl-Dijkstra-Hoare72, Key="Dahl \& Dijkstra \& Hoare", Author="Ole-J. Dahl and E. Dijkstra and C. A. R. Hoare", Title="Structured Programming", Publisher="Academic Press, Inc.", Address=NY, Year=1972, Annote="See Knuth's comments in STAN-CS-73-371" } @Unpublished{Dahl86, Key="Dahl", Author="Ole-Johan Dahl", Title="Object Oriented Specification", Year="1986", Month=Jun, Note="Presented at the Object-Oriented Programming Workshop, June, 1986", Annote="Programming and specification language ABEL. 7 references." } @InCollection{Dahl87, Key="Dahl", Author="Ole-Johan Dahl", Title="Object Oriented Specification", Editor="Bruce Shriver and Peter Wegner", BookTitle="Research Directions in Object-Oriented Programming", Publisher=MITP, Address="Cambridge, Mass.", Year=1987, Pages="561-576", Annote="Programming and specification language ABEL. 7 references." } @Book{Dahl92, Key = "Dahl", Author = "Ole-Johan Dahl", Title = "Verifiable Programming", Publisher = "Prentice-Hall", Year = 1992, Series = "International Series in Computer Science", Address = NY, Annote = "29 references." } @Article{Damiani-Fugini-Bellettini99, author = {E. Damiani and M. G. Fugini and C. Bellettini}, title = {A Hierarchy-Aware Approach to Faceted Classification of Object-Oriented Components}, journal = TOSEM, year = 1999, key = {Damiani \& Fugini \& Bellettini}, volume = 8, number = 3, month = Jul, pages = {215-262}, annote = {69 references.} } @Article{Damon-Jackson-Jha96, key = {Damon \& Jackson \& Jha}, author = {Craig A. Damon and Daniel Jackson and Somesh Jha}, title = {Checking Relational Specifications With Binary Decision Diagrams}, journal = SIGSOFT, year = 1996, editor = {David Garlan}, volume = 21, number = 6, month = Nov, pages = {70-80}, note = {SIGSOFT '96: Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, San Francisco, California}, annote = {23 references.} } @TechReport{Dandanell-George91, Key = "Dandanell \& George", Author = "Bent Dandanell and Chris George", Title = "The {LaCoS} Project", Institution = "Computer Resources Interational A/S", Year = 1991, Number = "LACOS/CRI/BDH/8/V2", Address = "Denmark", Month = Aug, Annote = "13 references." } @Article{Dandanell91, Key = "Dandanell", Author = "Bent Dandanell", Title = "Rigorous Development Using {RAISE}", Journal = "Software Engineering Notes", Year = 1991, Volume = 16, Number = 5, Month = Dec, Pages = "29-43", Note = "ACM SIGSOFT '91 Conference on Software for Critical Systems, New Orleans Louisiana, Dec. 4-6", Annote = "11 references." } @InProceedings{Darlington-Burstall73, Key="Darlington \& Burstall", Author="J. Darlington and R. M. Burstall", Title="A System which Automatically Improves Programs", BookTitle="Proceedings of the Third International Joint Conference on Artificial Intelligence", Organization="IJCAI", Year=1973, Pages="479-485" } @Article{Dart-etal87, Key="Dart, {\em et al.}", Author="Susan A. Dart and Robert J. Ellison and Peter H. Feiler and A. Nico Habermann", Title="Software Development Environments", Journal="Computer", Volume=20, Number=11, Month=Nov, Year=1987, Pages="18-28", Annote="Survey and taxonomy. 53 references." } @Article{Dart-etal97, key = {Dart, {\em et al.}}, author = {Philip Dart and Lorraine Johnston and Cameron Schmidt and Liz Sonenberg}, title = {Developing an Accredited Software Engineering Program}, journal = {IEEE Software}, year = 1997, volume = 14, number = 6, month = Nov, pages = {66-70}, annote = {10 references.} } @Book{Davis90, Key = "Davis", Author = "A. M. Davis", Title = "Software Requirements: Analysis and Specification", Publisher = "Prentice-Hall", Year = 1990, Address = "Englewood Cliffs, NJ" } @Article{Dawson-Newsham97, key = {Dawson \& Newsham}, author = {Ray Dawson and Ron Newsham}, title = {Introducing Software Engineers to the Real World}, journal = {IEEE Software}, year = 1997, volume = 14, number = 6, month = Nov, pages = {37-43}, annote = {Dirty tricks to play on students. 12 references.} } @InCollection{DeBakker-Klop-Meyer82, author = {J. W. De Bakker and J. W. Klop and J.-J. Ch. Meyer}, title = {Correctness of Programs with Function Procedures}, booktitle = {Logics of Programs}, key = {De Bakker \& Klop \& Meyer}, publisher = {Springer-Verlag}, year = 1982, editor = {D. Kozen}, number = 131, series = LNCS, address = NY, pages = {94-112}, annote = {Discusses transforming a program with side-effects in expressions to one in which only simple side effect statements are used (no nested expressions).} } @InCollection{DeLeon-Grumber93, Key="DeLeon \& Grumberg", Author="Hana deLeon and Orna Grumberg", Title="Modular Abstractions for Verifying Real-Time Distributed Systems", Journal=LNCS, Number=663, Publisher="Springer-Verlag", Address=NY, Editor="G. V. Bochmann and D. K. Probst", Year=1993, Note="Computer Aided Verification. 4th Annual workshop, CAV '92 Canada, June 1992", Pages="2-15", Annote="15 references" } @Book{DeMarco78, Key = "DeMarco", Author = "Tom DeMarco", Title = "Structured Analysis and System Specification", Publisher = "Yourdon , Inc.", Year = 1978, Address = "Englewood Cliffs, New Jersey" } @Article{DeRemer-Kron76, Key="DeRemer \& Kron", Author="F. DeRemer and H. H. Kron", Title="Programming in the Large versus Programming in the Small", Journal=IEEETSE, Year=1976, Month=Jun, Volume="SE-2", Number=2, Pages="80-86" } @InProceedings{Delcambre-Lim-Urban91, Key = "Delcambre \& Lim \& Urban", Author = "L. Delcambre and B. Lim and S. Urban", Title = "Object-Centered Constraints", BookTitle = "IEEE International Data Engineering Conference", Year = 1991 } @Article{Delisle-Garlan90, Key="Delise \& Garlan", Author="Norman Delisle and David Garlan", Title="A Formal Specification of an Oscilloscope", Journal="IEEE Software", Volume=7, Number=5, Month=Sep, Year=1990, Pages="29-36", Annote="Specification framework for exploring design space, written in Z. 6 references." } @Article{Demeyer-etal99, key = {Demeyer, {\em et al.}}, author = {Demeyer and Matthias Rieger and Theo Dirk Meijler and Edzard Gelsema}, title = {Class Composition for Specifying Framework Design}, journal = TAPOS, year = 1999, volume = 5, number = 2, pages = {73-81}, annote = {22 references.} } @Article{Demillo-Lipton-Perlis79, Key="DeMillo \& Lipton \& Perlis", Author="Richard A. De Millo and Richard J. Lipton and Alan J. Perlis", Title="Social Processes and Proofs of Theorems and Programs", Journal=CACM, Volume=22, Number=5, Month=May, Year=1979, Pages="271-280", Annote="Formal verification of programs will never play the role that proofs do in mathematics. Formal verification is difficult to justify and manage. Ease of formal verification should not dominate programming language design. 20 references." } @Article{Demillo-Lipton91, Key = "DeMillo \& Lipton", Author = "R. A. DeMillo and R. J. Lipton", Title = "Defining Software by Continuous, Smooth Functions", Journal = IEEESE, Year = 1991, Volume = 17, Number = 4, Month = "Apr", Pages = "383-384", Annote = "5 references." } @Article{Desharnais-etal98, author = {Jules Desharnais and Marc Frappier and Ridha Khe\'{e}dri and Ali Mili}, title = {Integration of Sequential Scenarios}, journal = IEEETSE, year = 1998, key = {Desharnais, {\em et al.}}, volume = 24, number = 9, month = Sep, pages = {695-708}, annote = {Descriptions of interactions between single users and systems. 44 references.} } @TechReport{Detlefs-etal98, author = {David L. Detlefs and K. Rustan M. Leino and Greg Nelson and James B. Saxe}, title = {Extended Static Checking}, institution = {Compaq Systems Research Center}, year = 1998, key = {Detlefs, {\it et al.}}, type = {SRC Research Report}, number = 159, address = {130 Lytton Ave., Palo Alto}, month = {Dec}, annote = {48 references.} } @TechReport{Deutsch-Taft80, Key="Deutsch \& Taft", Author="L. Peter Deutsch and Edward A. Taft", Title="Requirements for an Experimental Programming Environment", Institution="Xerox Palo Alto Research Centers", Year=1980, Month=Jun, Number="CSL-80-10", Annote="List of features desired in a programming language/system including strong type checking and garbage collection. Rank ordering of priorities. 20 references." } @InProceedings{Devanbu-Fong-Stubblebine98, key = {Devanbu \& Fong \& Stubblebine}, author = {Premkumar T. Devanbu and Philip W. L. Fong and Stuart G. Stubblebine}, title = {Techniques for Trusted Software Engineering}, booktitle = {Proceedings of the 1998 International Conference on Software Engineering: ICSE 98, Kyoto, Japan}, year = 1998, organization = IEEE, address = {Los Alamitos, California}, month = Apr, pages = {126-135}, annote = {23 references.} } @Book{Deville90, Key = "Deville", Author = "Yves Deville", Title = "Logic Programming: Systematic Program Development", Publisher = "Addison-Wesley", Year = 1990, Series = "International Logic Programming Series", Address = "Reading, Mass." } @TechReport{Dhara-Leavens92, Key = "Dhara \& Leavens", Author = "Krishna Kishore Dhara and Gary T. Leavens ", Title = "Subtyping for mutable types in object-oriented programming languages", Institution = "Department of Computer Science, Iowa State University", Address = "Ames, Iowa, 50011", Number = "92-36", Year = 1992, Month = Nov, Note = "Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu", Annote = "21 references." } @TechReport{Dhara-Leavens94, Key = "Dhara \& Leavens", Author = "Krishna Kishore Dhara and Gary T. Leavens", Title = "Weak Behavioral Subtyping for Types with Mutable Objects", Institution = "Department of Computer Science, Iowa State University", Address = "Ames, Iowa, 50011", Number = "94-21", Year = 1994, Month = Nov, Note = "Appears in Mathematical Foundations of Programming Semantics, Eleventh Annual Conference, Preliminary Proceedings, pages 269-290. Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu", Annote = "15 references." } @InProceedings{Dhara-Leavens95, Key = "Dhara \& Leavens", Author = "Krishna Kishore Dhara and Gary T. Leavens ", title = "Weak Behavioral Subtyping for Types with Mutable Objects", editor = "S. Brookes and M. Main and A. Melton and M. Mislove", booktitle = "Mathematical Foundations of Programming Semantics, Eleventh Annual Conference", year = 1995, Series = "Electronic Notes in Theoretical Computer Science", publisher = "Elsevier", Volume = 1, URL = "http://www.elsevier.nl:80/mcs/journals/tcs/pc/volume1/dhara.ps", note = "http://www.elsevier.nl/locate/entcs/volume1.html", annote = "20 references." } @TechReport{Dhara-Leavens95b, Key = "Dhara \& Leavens", Author = "Krishna Kishore Dhara and Gary T. Leavens", Title = "Forcing Behavioral Subtyping Through Specification Inheritance", Institution = "Department of Computer Science, Iowa State University", Address = "Ames, Iowa, 50011", Number = "95-20c", Year = 1997, Month = Dec, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR95-20/TR.ps.gz", Note = "Also in Proceedings of the 18th International Conference on Software Engineering, Berlin, Germany, 1996, pp. 258--267. Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu", Annote = "21 references." } @InProceedings{Dhara-Leavens95c, Key = "Dhara \& Leavens", Author = "Krishna Kishore Dhara and Gary T. Leavens ", title = "Weak Behavioral Subtyping for Types with Mutable Objects", editor = "S. Brookes and M. Main and A. Melton and M. Mislove", booktitle = "Mathematical Foundations of Programming Semantics, Eleventh Annual Conference, Preliminary Proceedings", pages = "269-290", year = 1995, publisher = "Elsevier", month = "March", note = "The final version is in {\it Electronic Notes in Theoretical Computer Science}, volume 1, which is on-line at http://www.elsevier.nl/locate/entcs/volume1.html", annote = "20 references." } @InProceedings{Dhara-Leavens96, Key = "Dhara \& Leavens", Author = "Krishna Kishore Dhara and Gary T. Leavens", Title = "Forcing Behavioral Subtyping Through Specification Inheritance", BookTitle = "Proceedings of the 18th International Conference on Software Engineering, Berlin, Germany", Publisher = "IEEE Computer Society Press", Pages = "258-267", Year = 1996, Month = Mar, Note = "A corrected version is Iowa State University, Dept. of Computer Science TR \#95-20c.", Annote = "19 references." } @MastersThesis{Dhara92, Key = "Dhara", Author = "Krishna Kishore Dhara", Title = "Subtyping among Mutable Types in Object-Oriented Programming Languages", School = "Iowa State University", Month = May, Year = 1992, Address = "Department of Computer Science, Ames, Iowa", Note = "Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "Definition of legal subtype relationships for mutable abstract data types." } @TechReport{Dhara97, author = {Krishna Kishore Dhara}, title = {Behavioral Subtyping in Object-Oriented Languages}, institution = {Department of Computer Science, Iowa State University}, year = 1997, key = {Dhara}, number = {TR97-09}, address = {226 Atanasoff Hall, Ames IA 50011-1040}, month = {May}, note = {The author's Ph.D. dissertation.} } @InProceedings{Diaconescu-Goguen-Stefaneas91, author = {R. Diaconescu and J. Goguen and P. Stefaneas}, title = {Logical support for modularization}, booktitle = {Proceedings of a Workshop on Logical Frameworks}, key = {Diaconescu \& Goguen \& Stefaneas}, editor = {G. Huet and G. Plotkin}, year = 1991, month = May } @InProceedings{Dick-Loubersac91, key = {Dick \& Loubersac}, author = {J. Dick and J. Loubersac}, title = {Integrating structured and formal methods: A visual approach to {VDM}}, booktitle = {Proceedings of the European Software Engineering Conference}, number = 550, series = LNCS, year = 1991, publisher = {Springer-Verlag}, address = NY } @Article{Diederich-Milton87, Key="Diederich \& Milton", Author="Jim Diederich and Jack Milton", Title="Experimental Prototyping in Smalltalk-80", Journal="IEEE Software", Volume=4, Number=3, Month=May, Year=1987, Pages="40-49", Annote="10 references." } @Article{Digre98, key = {Digre}, author = {Tom Digre}, title = {Business Object Component Architecture}, journal = {IEEE Software}, year = 1998, volume = 15, number = 5, month = Sep, pages = {60-69}, annote = {7 references.} } @Article{Dijkstra68, Key = "Dijkstra", Author = "E. W. Dijkstra", Title = "Go to statement considered harmful", Journal = CACM, Year = 1968, Volume = 11, Number = 3, Month = Mar, Pages = "147-148" } @InProceedings{Dijkstra69, Key="Dijkstra", Title="Structured programming", Author="E. W. Dijkstra", Organization="NATO", BookTitle="Second NATO Conference on Software Engineering Techniques, Rome, Italy", Year=1969, Pages="84-88" } @Article{Dijkstra72, Key = "Dijkstra", Author = "E. W. Dijkstra", Title = "The Humble Programmer", Journal = CACM, Year = 1972, Volume = 15, Number = 10, Month = Oct, Pages = "859-886", Note = "Reprinted in {\em Programming Methodology, A Collection of Articles by Members of IFIP WG2.3\/}, D. Gries (ed.), Springer-Verlag, 1978." } @Article{Dijkstra75, Key="Dijkstra", Author="E. W. Dijkstra", Title="Guarded Commands, Nondeterminancy and Formal Derivation of Programs", Journal=CACM, Volume=18, Number=8, Month=Aug, Year=1975, Pages="453-457", Annote="Weakest precondition semantics of the guarded command language, which is introduced in this paper. 2 references." } @Book{Dijkstra76, Key="Dijkstra", Author="Edsger W. Dijkstra", Title="A Discipline of Programming", Publisher=Prentice-Hall, Address="Englewood Cliffs, N.J.", Year=1976, Annote="Predicate transformers. Theorems about program composition. Total correctness. Developing programs and proofs." } @Book{Dijkstra90, Key="Dijkstra", Title="Formal Development of Programs and Proofs", Editor="E. W. Dijkstra", Year=1990, Publisher=Addison-Wesley, Series="University of Texas at Austin Year of Programming series", Annote="18 articles by different authors" } @InCollection{Dijkstra93, Key = "Dijkstra", Author = "Edsger W. Dijkstra", Title = "On the Economy of Doing Mathematics", BookTitle = "Mathematics of Program Construction, Second International Conference, Oxford, U.K.", Publisher = "Springer-Verlag", Year = 1993, Editor = "R.S. Bird and C.C. Morgan and J.C.P. Woodcock", Series = LNCS, Volume = 669, Pages = "2-10", Address = NY, Month = "June/July", Annote = "0 references." } @Book{Diller90, Key="Diller", Author="Antoni Diller", Title="Z: An Introduction to Formal Methods", Publisher="Wiley", Year=1990 } @Article{Dingel-etal98, key = {Dingel, {\em et al.}}, author = {J. Dingel and D. Garlan and S. Jha and D. Notkin}, title = {Reasoning about implicit invocation}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {209-221}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {29 references.} } @Article{Donahue85, Key="Donahue", Author="James Donahue", Title="Integration Mechanisms in Cedar", Journal=SIGPLAN, Volume=20, Number=20, Month=Jul, Year=1985, Note="Proceedings of the ACM SIGPLAN 85 Symposium on Language Issues in Programming Environments", Pages="245-251", Annote="Discussion of programming in the large issues in Cedar and how the Cedar mechanisms, especially interfaces, garbage collection, lightweight processes, and procedure objects helped in presenting a unified system. 8 references." } @Article{Dony-Purchase-Winder92, Key = "Dony \& Purchase \& Winder", Author = "Christophe Dony and Jan Purchase and Russel Winder", Title = "Exception Handling in Object-Oriented Systems", Journal = "OOPS Messenger", Year = 1992, Volume = 3, Number = 2, Month = Apr, Pages = "17-30", Annote = "17 references." } @Book{DSouza-Wills99, author = {Desmond F. D'Souza and Alan Cameron Wills}, title = {Objects, Components, and Frameworks with UML: The Catalysis Approach}, publisher = {Addison Wesley}, year = 1999, key = {D'Souza \& Wills}, series = {Object Technology Series}, address = {Reading Mass.}, annote = {93 references.} } @Article{Duce-Fielding87, Key = "Duce \& Fielding", Author = "D. A. Duce and E. V. Fielding", Title = "Formal Specification --- A Comparison of Two Techniques", Journal = "The Computer Journal", Year = 1987, Volume = 30, Number = 4, Annote = "Compares VDM and OBJ on a single problem. Useful tutorial." } @InCollection{Duke-Duke90a, Key="Duke \& Duke", Author="D. Duke and R. Duke", Title="Towards a Semantics for {Object-Z}", BookTitle="VDM '90: VDM and Z --- Formal Methods in Software Development, Third International Symposium of VDM Europe, Kiel, FRG", Month=Apr, Year=1990, Publisher="Springer-Verlag", Series=LNCS, Editor="D. Bjorner and C. A. R. Hoare and H. Langmaack", Volume=428, Pages="244-261", Annote="Meta-circular definition, concentrates on class histories." } @InProceedings{Duke-Duke90b, Key="Duke \& Duke", Author="D. Duke and R. Duke", Title="Aspects of Object-Oriented Formal Specification", BookTitle="ASWEC '90, Sydney, Australia", Month=May, Year=1990, Pages="?" } @Article{Dutertre-Stavridou97, key = "Dutertre \& Stavridou", author = "Bruno Dutertre and Victoria Stavridou", title = "Formal Requirements Analysis of an Avionics Control System", journal = IEEETSE, pages = "267-278", month = May, year = 1997, volume = 23, number = 5, annote = "Uses PVS to specify a real-time system. 28 references." } @InProceedings{Duval98, key = {Duval}, author = {Gr\'{e}gory Duval}, title = {Specification oand Verification of an Object Request Broker}, booktitle = {Proceedings of the 1998 International Conference on Software Engineering: ICSE 98, Kyoto, Japan}, year = 1998, organization = IEEE, address = {Los Alamitos, California}, month = Apr, pages = {43-52}, annote = {Uses Promela. 19 references.} } @Article{Dybjer90, Key="Dybjer", Author="Peter Dybjer", Title="Comparing Integrated and External Logics of Functional Programs", Journal="Science of Computer Programming", Volume=14, Number=1, Month=Jun, Year=1990, Pages="59-79", Annote="29 references." } @TechReport{Egle95, author = {David M. Egle}, title = {Evaluating {Larch/C++} as a Specification Language: A Case Study Using the Microsoft Foundation Class Library}, institution = {Department of Computer Science, Iowa State University}, year = 1995, key = {Egle}, number = {95-17}, address = {Ames, Iowa 50011}, month = Jul, note = {Available from {\tt http://www.cs.iastate.edu}.}, } @Article{Edwards-etal94, author = {Stephen H. Edwards and Wayne D. Heym and Timothy J. Long and Murali Sitaraman and Bruce W. Weide}, title = {Part II: Specifying Components in {RESOLVE}}, journal = SIGSOFT, year = 1994, key = {Edwards, {\em et al.}}, volume = 19, number = 4, month = {Oct}, pages = {29-39} } @Article{Edwards-Weide97, author = {Stephen H. Edwards and Bruce W. Weide}, title = {{WISR8}: 8th Annual Workshop on Sofware Reuse Summary and Working Group Reports}, journal = SIGSOFT, year = 1997, key = {Edwards \& Weide}, volume = 22, number = 5, month = {Sep}, pages = {17-32}, annote = {22 references.} } @InProceedings{Edwards96, author = {Stephen H. Edwards}, title = "Representation Inheritance: A Safe Form of ``White Box'' Code Inheritance", booktitle = {Fourth International Conference on Software Reuse}, key = {Edwards}, year = 1996, publisher = "IEEE Computer Society Press", month = Apr, pages = {195-204} } @Article{Edwards97, author = {Stephen Edwards}, title = {Representation Inheritance: A Safe Form of ``White Box'' Code Inheritance}, journal = IEEETSE, year = 1997, key = {Edwards}, volume = 23, number = 2, month = Feb, pages = {83-92}, annote = {19 references.} } @Article{Edwards99, key = {Edwards}, author = {Stephen H. Edwards}, title = {The State of Reuse: Perceptions of the Reuse Community}, journal = SIGSOFT, year = 1999, volume = 24, number = 3, month = May, pages = {32-36}, annote = {5 references.} } @Book{Eeles-Sims98, key = {Eeles \& Sims}, author = {Peter Eeles and Oliver Sims}, title = {Building Business Objects}, publisher = {John Wiley \& Sons}, year = 1998 } @Article{Eggert90, Key = "Eggert", Author = "Paul Eggert", Title = "Toward Special-Purpose Program Verification", Journal = SIGSOFT, Year = 1990, Volume = 15, Number = 4, Month = Sep, Pages = "25-29", Note = "Proceedings of the ACM SIGSOFT: International Workshop on Formal Methods in Software Development, Mark Moriconi (editor).", Annote = "20 references." } @InCollection{Ehrich-Denker-Sernadas93, Key="Ehrich \& Denker \& Sernadas", Author="KH. D. Ehrich and G. Denker and A. Sernadas", Title="Constructing Systems as Object Communities", Journal=LNCS, Number=668, Publisher="Springer-Verlag", Address=NY, Editor="M. C. Gaudel and J. P. Jouannaud", Year=1993, Note="TAPSOFT '93: Theory and Practice of Software Development. 4th International Joint Conference CAAP/FASE France, April 1993. Proceedings.", Pages="453-467", Annote="50 references" } @InCollection{Ehrich-Goguen-Sernadas91, Key = "Ehrich \& Goguen \& Sernadas", Author = "H.-D. Ehrich and J. A. Goguen and A. Sernadas", Title = "A Categorial Theory of Objects as Observed Processes", BookTitle = "Foundations of Object-Oriented Languages, REX School/Workshop, Noordwijkerhout, The Netherlands, May/June 1990", Publisher = "Springer-Verlag", Year = 1991, Editor = "J. W. de Bakker and W. P. de Roever and G. Rozenberg", Series = LNCS, Volume = 489, Pages = "203-228", Address = NY, Annote = "38 references." } @InCollection{Ehrich78, Key="Ehrich", Author="H. D. Ehrich", Title="Extensions and Implementations of Abstract Data Type Specications", BookTitle="Mathematical Foundations of Computer Science", Series=LNCS, Volume=64, Publisher="Springer-Verlag", Address=NY, Year=1978, Pages="155-164" } @InCollection{Ehrig-Jimenez-Orejas93, Key="Ehrig \& Jimenez \& Orejas", Author="H. Ehrig and R. M. Jimenez and F. Orejas", Title="Compositionality Results for Different Types of Parameterization and parameter passing in Speicfication Languages", Journal=LNCS, Number=668, Publisher="Springer-Verlag", Address=NY, Editor="M. C. Gaudel and J. P. Jouannaud", Year=1993, Note="TAPSOFT '93: Theory and Practice of Software Development. 4th International Joint Conference CAAP/FASE France, April 1993. Proceedings.", Pages="31-45", Annote="25 references" } @Article{Ehrig-Kreowski83, Key="Ehrig \& Kreowski", Author="H. Ehrig and H.-J. Kreowski", Title="Algebraic Implementation of Abstract Data Types", Journal="Theoretical Computer Science", Volume=27, Number=3, Month=Dec, Year=1983, Pages="255-286", Annote="Theory of parameterized implementations. 30 references." } @Book{Ehrig-Mahr85, Key="Ehrig \& Mahr", Author="Hartmut Ehrig and Bernd Mahr", Title="Fundamentals of Algebraic Specification 1: Equations and Initial Semantics", Publisher="Springer-Verlag", Address=NY, Year=1985, Series="EATCS Monographs on Theoretical Computer Science", Volume=6, Annote="Excellent presentation of the fundamental results in equational algebraic specifications. The sepcification language ACT-ONE. Over 100 references." } @Book{Ehrig-Mahr90, Key="Ehrig \& Mahr", Author="Hartmut Ehrig and Bernd Mahr", Title="Fundamentals of Algebraic Specification 2: Module Specifications and Constraints", Publisher="Springer-Verlag", Address=NY, Year=1990, Series="EATCS Monographs on Theoretical Computer Science", Volume=21, Annote="Over 100 references." } @Article{Ehrig-etal82, Key="Ehrig, {\em et al.}", Author="H. Ehrig and H.-J. Kreowski and B. Mahr and P. Padawitz", Title="Algebraic Implementation of Abstract Data Types", Journal="Theoretical Computer Science", Volume=20, Number=3, Month=Jul, Year=1982, Pages="209-263", Annote="Theory of algebraic implementations. Reviews algebraic specifications. 45 references." } @InCollection{Ehrig-etal95, key = "Ehrig, {\em et al.}", author = "H.-D. Ehrig and others", title = "{KORSO} Reference Languages Concepts and Application Domains", crossref = "Broy-Jaehnichen95", pages = "150-172", annote = "Many references." } @Article{Elmstrom-Lassen-Andersen93, key = "Elmstr{\o}m \& Lassen \& Andersen", author = "Ren\'{e} Elmstr{\o}m and Poul B{\o}gh Lassen and Michael Andersen", title = "An Executable Subset of {VDM-SL} in an {SA/RT} Framework", journal = "Real-Time Systems", year = 1993, volume = 5, pages = "197-211", annote = "The executable specification language IPTES Meta-IV, which is based on VDM-SL. 15 references." } @Article{Elmstrom-Lintulampi-Pezze93, key = "Elmstr{\o}m \& Lintulampi \& Pezz\'{e}", author = "Ren\'{e} Elmstr{\o}m and Raino Lintulampi and Mauro Pezz\'{e}", title = "Giving Semantics to {SA/RT} by Means of {High-Level Timed Petri Nets}", journal = "Real-Time Systems", year = 1993, volume = 5, pages = "249-271", annote = "From the IPTES project. 12 references." } @InCollection{Enberg-Granning-Lamport93, Key="Enberg \& Granning \& Lamport", Author="Urban Enberg and Peter Granning and Leslie Lamport", Title="Mechanical Verification of Concurrent systems with TLA", Journal=LNCS, Number=663, Publisher="Springer-Verlag", Address=NY, Editor="G. V. Bochmann and D. K. Probst", Year=1993, Note="Computer Aided Verification. 4th Annual workshop, CAV '92 Canada, June 1992", Pages="44-55", Annote="7 references" } @TechReport{Eriksen-Prehn91, Key = "Eriksen \& Prehn", Author = "Kirsten Eriksen and Soren Prehn", Title = "{RAISE} Overview", Institution = "Computer Resources International A/S", Year = 1991, Number = "RAISE/CRI/DOC/9/V5", Address = "Denmark", Month = Oct, Annote = "17 references." } @Article{Ernst-Hookway-Ogdon94, Key = "Ernst \& Hookway \& Ogdon", Author = "G. W. Ernst and R. J. Hookway and W. F. Ogden", Title = "Modular Verification of Data Abstraction with Shared Realizations", Journal = IEEETSE, Year = 1994, Volume = 20, Number = 4, Month = Apr, Pages = "288-307", Annote = "50 references." } @Article{Ernst-Navlakha-Ogden82, Key = "Ernst \& Navlakha \& Ogden", Author = "George W. Ernst and J. K. Navlakha and W. F. Ogden", Title = "Verification of Programs with Procedure-Type Parameters", Journal = "Acta Informatica", Year = 1982, Volume = 18, Number = 2, Month = Nov, Pages = "149-169" } @Article{Ernst-etal91, Key = "Ernst, {\em et al.}", Author = "G. W. Ernst and R. J. Hookway and J. A. Menegay and W. F. Ofgen", Title = "Modular Verification of {Ada} Generics", Journal = "Computer Languages", Year = 1991, Volume = 16, Number = "3/4", Pages = "259-280" } @Article{Esterbrook-etal98, key = {Esterbrook, {\em et al.}}, author = {Steve Esterbrook and Robyn Lutz and Richarrd Covington and John Kelly and Yoko Ampo and David Hamilton}, title = {Experiences Using Lightweight Formal Methods for Requirements Modeling}, journal = IEEETSE, year = 1998, volume = 24, number = 1, month = Jan, pages = {4-14}, annote = {Three case studies. Lightweight formal methods complimented existing practices. 27 references.} } @InProceedings{Evans96, Key = "Evans", Author = "David Evans", Title = "Static Detection of Dynamic Memory Errors", BookTitle = "SIGPLAN Conference on Programming Language Design and Implementation (PLDI '96)", Month = May, Year = 1996, Pages = "44-53", Annote = "11 references." } @Article{Evans96, key = "Evans", author = "David Evans", title = "Static Detection of Dynamic Memory Errors", journal = SIGPLAN, year = 1996, volume = 31, number = 5, month = May, pages = {44-53}, note = {Proceedings of the 1996 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI).}, URL = "ftp://larch.lcs.mit.edu/pub/Larch/lclint/pldi96.ps.gz", annote = {11 references.} } @Unpublished{Evans96b, Key = "Evans", Author = "David Evans", Title = "{LCLint} User's Guide, Version 2.1", Note = {http://larch-www.lcs.mit.edu:8001/larch/lclint/guide/}, Month = Apr, Year = 1996 } @Article{Fagan86, Key="Fagan", Author="Michael E. Fagan", Title="Advances in Software Inspections", Journal=IEEETSE, Volume="SE-12", Number=7, Month=Jul, Year=1986, Annote="Benefits and process of inspections. 11 references." } @TechReport{Farres-Casals89, Key="Farres-Casals", Author="Jordi Farr\`{e}s-Casals", Title="Proving Correctness of Constructor Implemenations", Institution="Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh", Address="Edinburgh, EH9 3JZ", Number="ECS-LFCS-89-72 (also CSR-286-89)", Month=Jan, Year=1989, Annote="Correctness proofs in Sannella and Tarlecki's framework. 16 references." } @InCollection{Feather93, Key = "Feather", Author = "Martin Feather", Title = "Behavior-oriented specification in Gist", BookTitle = "Formal Program Development", Publisher = "Springer-Verlag", Year = 1993, Editor = "Bernhard Moeller and Helmut Partsch and Steve Schuman", Series = LNCS, Volume = 755, Pages = "89-122", Address = NY, Month = Jul, Annote = "36 references." } @Article{Feather98, key = {Feather}, author = {Martin S. Feather}, title = {Rapid Application of Lightweight Formal Methods for Consistency Analyses}, journal = IEEETSE, year = 1998, volume = 24, number = 11, month = Nov, pages = {949-959}, annote = {13 references.} } @Book{Feijs-Jonkers-Middelburg94, author = "L. M. G. Feijs and H. B. M. Jonkers and C. A. Middelburg", title = "Notations for Software Design", publisher = "Springer-Verlag", address = "London", year = "1994", ISBN = "3-540-19902-0", series = "FACIT Series", annote = "Uses COLD-1. 67 references." } @Book{Feijs-Jonkers92, Key = "Feijs \& Jonkers", Author = "L. M. G. Feijs and H. B. M. Jonkers", Title = "Formal Specification and Design", Publisher = "Cambridge University Press", Year = 1992, Volume = 35, Series = "Cambridge Tracts in Theoretical Computer Science", Address = "Cambridge, UK", Annote = "The wide-spectrum language COLD. 58 references." } @Book{Feijs93, author = {Loe Feijs}, title = {A formalization of design methods: a $\lambda$-calculus approach to systems design with an application to text editing}, publisher = {Ellis Horwood}, year = 1993, key = {Feijs}, series = {Computers and their Applications}, address = {Chicheter, UK} } @Article{Felder-Ghezzi-Pezze93, key = "Felder \& Ghezzi \& Pezz\'{e}", author = "Miguel Felder and Carlo Ghezzi and Mauro Pezz\'{e}", title = "{High-Level Timed Petri Nets} as a Kernel for Executable Specifications", journal = "Real-Time Systems", year = 1993, volume = 5, pages = "235-248", annote = "The IPTES environment kernel. 13 references." } @InCollection{Feldman-Wild92, Key="Feldman \& Wild", Author="G. Feldman and J. Wild", Title="The DECspec Project: Tools for Larch/C", Editor="Ursala Martin and Jeanete M. Wing", BookTitle="First International Workshop on Larch, Dedham 1992", Publisher="Springer-Verlag", Year=1992, Pages="98-103", Annote="13 references" } @InProceedings{Fencott-Lockyer-Taylor92, Key="Fencott \& Lockyer \& Taylor", Author = "P. C. Fencott and M. A. Lockyer and P. Taylor", Title = "Experiences in integrating structured and formal notations for real-time systems", BookTitle = "The Methods Integration Workshop", Publisher = "Springer-Verlag", Year = 1992 } @Article{Fetzer88, Key="Fetzer", Author="James H. Fetzer", Title="Program Verification: The Very Idea", Journal=CACM, Volume=31, Number=9, Month=Sep, Year=1988, Pages="1048-1063", Annote="Algorithms can be verified absolutely. Programs can only be verified relative to the abstract machine they run on. 37 references" } @InCollection{Fiadeiro-Costa94, Key = "Fiadeiro \& Costa", Author = "J. L. Fiadeiro and J. F. Costa", Title = "Institutions for Behavioral Specification", BookTitle = "Recent Trends in Datatype Specification", Publisher = "Springer-Verlag", Year = 1994, Editor = "Egidio Astesiano and Gianna Reggio and Andrzej Tarlecki", Series = LNCS, Volume = 906, Pages = "273-289", Address = NY, Annote = "25 references." } @InCollection{Fiadeiro-Maibaum91, Key = "Fiadeiro \& Maibaum", Author = "J. Fiadeiro and T. Maibaum", Title = "Describing, Structuring and Implementing Objects", BookTitle = "Foundations of Object-Oriented Languages, REX School/Workshop, Noordwijkerhout, The Netherlands, May/June 1990", Publisher = "Springer-Verlag", Year = 1991, Editor = "J. W. de Bakker and W. P. de Roever and G. Rozenberg", Series = LNCS, Volume = 489, Pages = "274-310", Address = NY, Annote = "52 references." } @Article{Fichman-Kemerer92, Key = "Fichman \& Kemerer", Author = "Robert G. Fichman and Chris F. Kemerer", Title = "Object-Oriented and Conventional Analysis and Design Methodologies", Journal = "Computer", Year = 1992, Volume = 25, Number = 10, Month = Oct, Pages = "22-39", Annote = "22 references." } @TechReport{Fickas-Nagarajan88, Key="Fickas \& Nagarajan", Author="Stephen Fickas and P. Nagarajan", Title="Critiquing a Software Specification", Institution="Computer Science Department, University of Oregon", Address="Eugene, Oregon", Number="88-01", Month=Jan, Year=1988, Annote="A knowledge-based system that criticizes specifications. 21 references." } @Article{Fidge-Kearney-Utting97, key = {Fidge \& Kearney \& Utting}, author = {Colin Fidge and Peter Kearney and Mark Utting}, title = {A Formal Method fo Building Concurrent Real-Time Software}, journal = {IEEE Software}, year = 1997, volume = 14, number = 2, month = Mar, pages = {99-106}, annote = {14 references.} } @Article{Fiedler89, Author="S. P. Fiedler", Title="Object-Oriented Unit Testing", Journal="HP Journal", Volume=36, Number=4, Year=1989, Month=Apr } @Article{Finkelstein-etal94, key = {Finkelstein, {\em et al.}}, author = {Anthony C. W. Finkelstein and Dov Gabbay and Anthony Hunter and Jeff Kramer and Bashar Nuseibeh}, title = {Inconsistency Handling in Multiperspective Specifications}, journal = IEEETSE, year = 1994, volume = 20, number = 8, month = Aug, pages = {569-578}, annote = {40 references.} } @Article{Finney96, author = "Kate Finney", title = "Mathematical Notation in Formal Specification: Too Difficult for the Masses?", journal = IEEETSE, year = 1996, volume = 22, number = 2, pages = "158-159", month = Feb, annote = "A preliminary experiment indicating that the symbolic notation in Z specifications may make them hard to read. 8 references." } @Article{Fischer87, Key="Fischer", Author="Gerhard Fischer", Title="Cognitive View of Reuse and Redesign", Journal="IEEE Software", Volume=4, Number=4, Month=Jul, Year=1987, Pages="60-72", Annote="Tools based on Objtalk and WLisp. 10 references." } @TechReport{Fisher-Barringer86, Key="Fisher \& Barringer", Author="Michael Fisher and Howard Barringer", Title="Program Logics -- A Short Survey", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Number="UMCS-86-11-1", Month=Nov, Year=1986, Note="Revised June 1987", Annote="About a hundred references." } @TechReport{Fisher87, Key="Fisher", Author="Michael Fisher", Title="Temporal Logics for Abstract Semantics", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Number="UMCS-86-12-4", Year=1987, Note="The Author's Ph. D. dissertation", Annote="About a hundred references." } @Book{Fitting-Gries90, Key = "Fitting \& Gries", Editor = "Melvin Fitting and David Gries", Title = "First-order logic and automated theorem proving", Publisher = "Springer-Verlag", Year = 1990, Series = "Texts and monographs in computer science.", Address = NY } @TechReport{Fitzgerald-Jones90, Key="Fitzgerald \& Jones", Author="John S. Fitzgerald and Cliff B. Jones", Title="Modularizing the Formal Description of a Database System", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Month=Jan, Year=1990, Number="UMCS-90-1-1", Annote="20 references." } @Book{Fitzgerald-Larsen98, author = {John Fitzgerald and Peter Gorm Larsen}, title = {Modelling Systems: Practical Tools in Software Development}, publisher = {Cambridge}, year = 1998, key = {Fitzgerald \& Larsen}, address = {Cambridge, UK}, annote = {Uses VDM-SL. 16 references.} } @TechReport{Flon-Cooprider82, Key="Flon \& Cooprider", Author="Lawrence Flon and Lee W. Cooprider", Title="Metaprogramming --- Prospects for the Practical Reuse of Software", Institution="Computer Science Department, University of Southern California", Address="Los Angeles, Calif.", Number="TR-112", Year=1982, Month=Jun, Annote="12 references." } @InCollection{Florijn-Meijers-vanWinsen97, key = {Florijn \& Meijers \& van Winsen}, author = {Gert Florijn and Marco Meijers and Pieter van Winsen}, title = {Tool Support for Object-Oriented Patterns}, booktitle = {ECOOP '97 --- Object-Oriented Programming 11th European Conference, Jyv\"{a}skyl\"{a}, Finland}, publisher = {Springer-Verlag}, year = 1997, editor = {Mehmet Ak\c{s}it and Satoshi Matsuoka}, volume = 1241, series = LNCS, address = NY, month = Jun, pages = {472-495}, annote = {8 references.} } @Article{Floyd67, Key="Floyd", Author="R. W. Floyd", Title="Assigning Meanings to Programs", Journal="Proceedings Symposium on Applied Mathematics", Publisher="American Mathematical Society", Address="New York", Volume=19, Pages="19-31", Year=1967 } @Article{Fong-Cameron98, key = {Fong \& Cameron}, author = {Philip W. L. Fong Fong and Robert D. Cameron}, title = {Proof Linking: An Architecture for Modular Verification of Dynamically-Linked Mobile Code}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {222-230}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {19 references.} } @Article{Frakes-Isoda94, key = {Frakes \& Isoda}, author = {William Frakes and Sadahiro Isoda}, title = {Success Factors for Systematic Reuse}, journal = {IEEE Software}, year = 1994, volume = 11, number = 5, month = Sep, pages = {15-19}, annote = {More than 12 references.} } @Article{Frakes-Terry96, key = {Frakes \& Terry}, author = {William Frakes and Carol Terry}, title = "Software Reuse: Metrics and Models", journal = ACMCS, volume = 28, number = 2, pages = "415-435", month = Jun, year = 1996, annote = "40 references." } @Article{France-Bruel-Larrondo-Petrie97, key = {France \& Bruel \& Larrondo-Petrie}, author = {R. B. France and J.-M. Bruel and M. M. Larrondo-Petrie}, title = {An Integrated Object-Oriented and Formal Model Environment}, journal = JOOP, year = 1997, volume = 10, number = 7, month = Nov, pages = {25-34}, annote = {15 references.} } @InProceedings{France-Larrondo-Petrie94, author = "Robert B. France and Maria M. Larrondo-Petrie", title = "From Structured Analysis to Formal Specifications: State of the Theory", key = "France \& Larrondo-Petrie", pages = "249-256", booktitle = "Proceedings of the ACM Computer Science Conference, Phoenix, AZ", year = 1994, organization = "ACM", month = "Mar", annote = "15 references." } @InCollection{France-Larrondo-Petrie95, author = "Robert B. France and Maria M. Larrondo-Petrie", title = "A Two-Dimensional View of Integrated Formal and Informal Specifications Techniques", key = "France \& Larrondo-Petrie", editor = "Jonathan P. Bowen and Michael G. Hinchey", Series = LNCS, Volume = 967, pages = "434-448", booktitle = "ZUM '95: The Z Formal Specification Notation, 9th International Conference of Z Users, Limerick, Ireland", month = Sep, year = 1995, publisher = "Springer-Verlag", annote = "17 references." } @TechReport{France-etal93, Key = "France {\em et al.}", Author = "R. B. France and T. B. Horton and M.M. Larrondo-Petrie and S. Reeves", Title = "Towards Process Support for Rigorous Structured Analysis", Institution = "Florida Atlantic University", Year = 1993, Number = "TR-CSE-93-45", Address = "Department of Computer Science and Engineering, Florida Atlantic University, Boca Raton, FL 33431-0991", Month = Sep, Annote = "5 references." } @Article{France92, Key = "France", Author = "Robert B. France", Title = "Semantically Extended Data Flow Diagrams: A Formal Specification Tool", Journal = IEEETSE, Year = 1992, Volume = 18, Number = 4, Month = Apr, Pages = "329-346", Annote = "Method for associating a DFD with a formal specification. Formal part based on algebraic specifications. 24 references." } @Article{France93, Key = "France", Author = "R. B. France", Title = " A predicative basis for structured analysis specification tools", Journal = "Information and Software Technology", Year = 1993, Volume = 35, Number = 2, Month = Feb, Pages = "67-77", Annote = "14 references." } @Article{Francez77, Key = "Francez", Author = "Nissim Francez", Title = "A Case For A Forward Predicate Transformer", Journal = "Information Processing Letters", Year = 1977, Volume = 6, Number = 6, Month = Dec, Pages = "196-198", Annote = "3 references." } @Book{Francez92, Key="Francez", Title="Program Verification", Author="Nissim Francez", Publisher=Addison-Wesley, Address="Cambridge, UK", Year=1992, Annote="173 references." } @InProceedings{Franch97, author = {Xavier Franch}, title = {The Convenience for a Notation to Express Non-Functional Charateristics of Software Compoents}, booktitle = {Foundations of Component-Based Systems Workshop}, key = {Franch}, editor = {Gary T. Leavens and Murali Sitaraman}, year = 1997, month = Sep, pages = {101-110}, note = {Available from http://www.cs.iastate.edu/\verb|~|leavens/FoCBS.}, annote = {22 references.} } @Article{Frankl-Iakounenko98, key = {Frankl \& Iakounenko}, author = {Phyllis G. Frankl and Oleg Iakounenko}, title = {Further Empirical Studies of Test Effectiveness}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {153-162}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {11 references.} } @Article{Fraser-Kumar-Vaishnavi91, Key = "Fraser \& Kumar \& Vaishnavi", Author = "M. D. Fraser and K. Kumar and V. K. Vaishnavi", Title = "Informal and Foraml Requirements Specification Languages: Bridging the Gap", Journal = IEEETSE, Year = 1991, Volume = 17, Number = 5, Month = May, Pages = "454-466", Annote = "45 references." } @Article{Fraser-Kumar-Vaishnavi94, Key = "Fraser \& Kumar \& Vaishnavi", Author = "M. D. Fraser and K. Kumar and V. K. Vaishnavi", Title = "Strategies for Incorporating Formal Specifications in Software Development", Journal = CACM, Year = 1994, Volume = 37, Number = 10, Month = Oct, Pages = "74-86", Annote = "Survey of formal, semiformal, and informal specification techniques, and processes for using formal methods. Good discussion of related work. 25 references." } @TechReport{Fraser-Lamb88, Key="Fraser \& Lamb", Author="Bruce P. Fraser and David Alex Lamb", Title="An Annotated Bibliography on User Interface Design", Institution="Department of Computing and Information Science, Queen's University at Kingston", Address="Kingston, Ontario, Canada", Month=Jan, Year=1988, Type="External Technical Report", Number="88-214", Annote="Coverage up to May 1987. Around a hundred references." } @Book{Freeman-Lewis80, Key="Freeman \& Lewis", Editor="Herbert Freeman and Philip M. Lewis II", Title="Software Engineering", Publisher="Academic Press, Inc.", Address=NY, Year=1980 } @Article{Freitag-Margaria-Steffen94, Key = "Freitag \& Margaria \& Steffen", Author = "Burkhard Freitag and Tiziana Margaria and Berhard Steffen", Title = "A Pragmatic Approach to Software Synthesis", Journal = SIGPLAN, Year = 1994, Volume = 29, Number = 8, Month = Aug, Pages = "46-58", Annote = "19 references." } @InProceedings{Frick-Neumann-Zimrmann96, author = {A. Frick, W. Neumann, and W. Zimmermann}, title = {A Method for the Construction of Robust Class Hierarchies}, booktitle = {WOON '96}, key = {Frick \& Neumann \& Zimmermann}, year = 1996 } @InProceedings{Frick-Neumann-Zimrmann97, author = {A. Frick, W. Neumann, and W. Zimmermann}, title = {Generation of Robust Class Hierarchies}, booktitle = {TOOLS 23 - Technology of Object-Oriented Programming}, key = {Frick \& Neumann \& Zimmermann}, year = 1997, pages = {282-291} } @InProceedings{Frick-Zimmer-Zimrmann95, author = {A. Frick, W. Zimmer, and W. Zimmermann}, title = {On the Design of Reliable Libraries}, booktitle = {TOOLS 17 - Technology of Object-Oriented Programming}, key = {Frick \& Zimmer \& Zimmermann}, year = 1995, pages = {13-23} } @InProceedings{Froehlich-Larsen9696, key = "Froehlich \& Larsen", author = {Brigette Fr\"ohlich and Peter Gorm Larsen}, title = "Combining {VDM-SL} Specifications with {C++} Code", editor = "Marie-Claude Gaudel and James Woodcock", volume = 1051, series = LNCS, pages = "179-194", booktitle = "FME '96: Industrial Benefit and Advances in Formal Methods", year = 1996, publisher = "Springer-Verlag", address = NY, month = Mar, annote = "28 references." } @InProceedings{Futatsugi-etal85, Key="Futatsugi, {\em et al.}", Author="Kokichi Futatsugi and Joseph A. Goguen and Jean-Pierre Jouannaud and Jose Meseguer", Title="Principles of {OBJ2}", BookTitle="Conference Record of the Twelfth Annual ACM Symposium on Principles of Programming Languages", Year=1985, Pages="52-66", Organization=ACM, Month=Jan, Annote="42 references." } @Article{Gabrielian-Franklin91, Key = "Gabrielian \& Franklin", Author = "Armen Gabrielian and Matthew K. Franklin", Title = "Mulitlevel specification of Real-Time Systems", Journal = CACM, Year = 1991, Volume = "34", Number = "5", Month = May, Pages = "50-60", Annote = "15 references." } @Book{Gabriel96, author = {Richard Gabriel}, title = {Patterns of Software: Tales from the Software Community}, publisher = {Oxford University Press}, year = 1996, key = {Gabriel}, address = NY, annote = "Many references." } @Article{Gallagher-Narasimhan97, key = {Gallagher \& Narasimhan}, author = {Matthew J. Gallagher and V. Lakshmi Narasimhan}, title = {{ADTEST}: A Test Data Generation Suite for Ada Software Systems}, journal = IEEETSE, year = 1997, volume = 23, number = 8, month = Aug, pages = {473-484}, annote = {15 references.} } @InCollection{Gamma-etal93, Key="Gamma {\em et al}", Author="E. Gamma and R. Helm and R. E. Johnson and J. Vlissides", Title="Design Patterns: Abstraction and Reuse of Object-Oriented Design", BookTitle="ECOOP '93 - Object-Oriented Programming 7th European Conference, Germany, July 1993. Proceedings", Publisher="Springer-Verlag", Address=NY, Editor="Oscar M. Nierstrasz", Series=LNCS, Year=1993, Number=707, Pages="406-431", Annote="32 references" } @Book{Gamma-etal95, Key="Gamma {\em et al}", Author="Erich Gamma and Richard Helm and Ralph Johnson and John Vlissides", Title="Design Patterns: Elements of Reusable Object-Oriented Software", Publisher="Addison-Wesley", Address="Reading, Mass.", Year=1995, Annote="Over 50 references." } @Book{Gane-Sarson78, author = "C. Gane and E. Sarson", title = "Structured Systems Analysis: tools and techniques", publisher = "Prentice-Hall", year = 1978 } @InCollection{Gangopadhyay-Mitra93,Key="Gangopadhyay \& Mitra", Author="Dipayan Gangopadhyay and Subrata Mitra", Title="ObjChart: Tangible Specification of Reactive Object Behaviour", Journal=LNCS, Publisher="Springer-Verlag", Address=NY, Editor="Oscar M. Nierstrasz", Number=707, Note="ECOOP '93 - Object-Oriented Programming 7th European Conference, Germany, July 1993. Proceedings", Pages="432-457", Annote="20 references" } @Article{Gannon-Hamlet-Mills87, Key="Gannon \& Hamlet \& Mills", Author="John D. Gannon and Richard G. Hamlet and Harlan D. Mills", Title="Theory of Modules", Journal=IEEETSE, Volume="SE-13", Number=7, Month=Jul, Year=1987, Pages="820-829", Annote="The functional method of program proof. Concrete and abstract domains are sets of states (mappings from variables to values). 8 references." } @Book{Gannon-Purtilo-Zelkowitz94, key = "Gannon \& Purtilo \& Zelkowitz", author = "John D. Gannon and James M. Purtilo and Marvin V. Zelkowitz", title = "Software Specification: A Comparison of Formal Methods", publisher = "Ablex Publishing Co.", year = 1994, address = "355 Chestnut Street, Norwood, NJ 07648", annote = "Also includes predicate transformer and denotational semantics. 64 references." } @InCollection{Gardiner-Martin-Moore93, Key = "Gardiner \& Martin \& Moore", Author = "Paul Gardiner and Clare Martin and Oege de Moor", Title = "An Algebraic Construction of Predicate Transformers", BookTitle = "Mathematics of Program Construction, Second International Conference, Oxford, U.K.", Publisher = "Springer-Verlag", Year = 1993, Editor = "R.S. Bird and C.C. Morgan and J.C.P. Woodcock", Series = LNCS, Volume = 669, Pages = "100-121", Address = NY, Month = "June/July", Annote = "27 references." } @InCollection{Gardiner-Morgan92, Key = {Morgan \& Vickers}, author = {P. H. B. Gardier and Caroll Morgan}, title = {A Single Complete Rule for Data Refinement}, booktitle = {On the Refinement Calculus}, Publisher = "Springer-Verlag", Year = 1994, Editor = "Carroll Morgan and Trevor Vickers", Series = "Formal approaches of computing and information technology series", Address = NY, Annote = "62 references.", Crossref = {Morgan-Vickers94}, Pages = {111-126} } @Article{Garlan-Gulch-Tomayko97, key = {Garlan \& Gulch \& Tomayko}, author = {David Garlan and David P. Gulch and James E. Tomayko}, title = {Agents of Change: Educating Software Engineering Leaders}, journal = {Computer}, year = 1997, volume = 30, number = 11, month = Nov, pages = {59-65}, annote = {CMU's MS in SE program. 8 references.} } @Article{Garlan-Kaiser-Notkin92, Key = "Garlan \& Kaiser \& Notkin", Author = "David Garlan and Gail E. Kaiser and David Notkin", Title = "Usign Tool Abstraction to Compose Systems", Journal = "Computer", Year = 1992, Volume = 25, Number = 6, Month = Jun, Pages = "30-38", Annote = "7 references." } @Article{Garlan90, Key = "Garlan", Author = "David Garlan", Title = "The Role of Formal Reusable Frameworks", Journal = SIGSOFT, Year = 1990, Volume = 15, Number = 4, Month = Sep, Pages = "42-44", Note = "Proceedings of the ACM SIGSOFT: International Workshop on Formal Methods in Software Development, Mark Moriconi (editor).", Annote = "7 references." } @InProceedings{Garland-Notkin91, key = "Garlan \& Notkin", title = "Formalizing Design Spaces: Implicit Invocation Mechanisms", author = "D. Garlan and D. Notkin", booktitle = "VDM 91: Formal Software Development Methods 4th International Symposium of VDM Europe Noordwijkerhout, The Netherlands, Volume 1: Conference Contributions", pages = "31--44", year = "1991", month = Oct, editor = "S. Prehn and W. J. Toetenel", series = LNCS, publisher = "Springer-Verlag", volume = "551", } @Article{Garland-Guttag-Horning90, Key="Garland \& Guttag \& Horning", Author="Stephen J. Garland and John V. Guttag and James J. Horning", Title="Debugging {Larch Shared Language} Specifications", Journal=IEEETSE, Volume=16, Number=6, Month=Sep, Year=1990, Pages="1044-1057", Annote="19 references." } @TechReport{Garland-Guttag-Horning90b, Key="Garland \& Guttag \& Horning", Author="Stephen J. Garland and John V. Guttag and James J. Horning", Title="Debugging Larch Shared Language Specifications", Institution=DECSRC, Address="130 Lytton Avenue, Palo Alto, CA 94301", Month=Jul, Year=1990, Number=60, Note="Revised and expanded from paper presented at the April 1990 IFIP TC2/WG2.2/WG2.3 Working Conference on Programming Concepts and Methods, Elsevier, 1990", Annote="19 references." } @InProceedings{Garland-Guttag88, Key="Garland \& Guttag", Author="Stephen J. Garland and John V. Guttag", Title="Inductive Methods for Reasoning about Abstract Data Types", BookTitle="Conference Record of the Fifteenth Annual ACM Symposium on Principles of Programming Languages, San Diego, Calif.", Organization=ACM, Month=Jan, Year=1988, Pages="219-228", Annote="Questions the utility of inductionless induction. 25 references." } @TechReport{Garland-Guttag91, Key="Garland \& Guttag", Author="Stephen J. Garland and John V. Guttag", Title="A Guide to LP, The Larch Prover", Institution=DECSRC, Address="130 Lytton Avenue, Palo Alto, CA 94301", Month=Dec, Year=1991, Number=82, Note="Order from src-report@src.dec.com", Annote="32 references." } @Book{Gehani-McGettrick86, Key = "Gehani \& McGettrick", Editor = "N. Gehani and A.D. McGettrick", Title = "Software specification techniques", Publisher = "Addison-Wesley", Year = 1986, Annote = "Dated collection of 21 papers on formal specification." } @Article{Geller78, Key = "Geller", Author = "Matthew Geller", Title = "Test Data as an Aid in Proving Program Correctness", Journal = CACM, Year = 1978, Volume = 21, Number = 5, Month = May, Pages = "368-375", Annote = "Divides input into classes such that, if some member of each class gives a correct answer when tested, then every member of that class gives the correct answer. 20 references." } @TechReport{George-Bruun94, Key = "George \& Bruun", Author = "Chris George and Peter Michael Bruun", Title = "Proposed Changes to RSL", Institution = "Computer Resources Internation A/S", Year = 1994, Address = "Bregneroedvej 144, P. O. Box 173, Dk-3460 Birkeroed, Denmark", Month = Apr, Annote = "0 references." } @TechReport{George-Prehn91, Key = "George \& Prehn", Author = "Chris George and Soren Prehn", Title = "The {RAISE} Justification Handbook (Draft)", Institution = "Computer Resources International A/S", Year = 1991, Number = "LACOS/CRI/DOC/7/V2", Address = "Denmark", Month = Nov, Annote = "Formal proof rules to be used in RAISE justifications." } @TechReport{George-etal91, Key = "George, {\em et al.}", Author = "Chris George and Peter Haff and Klaus Havelund and Anne E. Haxthausen and Robert Milne and Claus Bendix Nielsen and Soren Prehn and Kim Ritter Wagner", Title = "The {RAISE} Specification Language", Institution = "Computer Resources International A/S", Year = 1991, Number = "CRI/RAISE/DOC/1/v3", Address = "Denmark", Month = Nov, Note = "To appear as a book, published by Prentice-Hall.", Annote = "52 references." } @TechReport{George91, Key = "George", Author = "Chris George", Title = "The {RAISE} Specification Language: A Tutorial", Institution = "Computer Resources International A/S", Year = 1991, Number = "LACOS/CRI/CWG/24/V1", Address = "Denmark", Month = Aug, Note = "To appear in VDM '91", Annote = "4 references." } @TechReport{George94, Key = "George", Author = "Chris George", Title = "Adopted changes to RSL", Institution = "Computer Resources Internation A/S", Year = 1994, Address = "Bregneroedvej 144, P. O. Box 173, Dk-3460 Birkeroed, Denmark", Month = Apr, Annote = "0 references." } @Article{Gerhart-Craigen-Ralston94, Key= "Gerhart \& Craigen \& Ralston", Author= "Susan Gerhart and Dan Craigen and Ted Ralston", Title= "Experiance with Formal Methods in Critical Systems", Journal="IEEE Software", Volume= 11, Number= 1, Month= Jan, Pages= "21-28", Annote= "7 references" } @InProceedings{German78, author = "Steven M. German", title = "Automating Proofs of the Absence of Common Runtime Errors", key = "German", pages = "105-118", booktitle = "Conference record of the Fifth Annual ACM Symposium on Principles of Programming Languages", year = 1978, organization = ACM, month = Jan, annote = "18 references." } @TechReport{German-Clarke-Halpern88, Key="German \& Clarke \& Halpern", Author="Steven M. German and Edmund M. Clarke and Joseph Y. Halpern", Title="Reasoning about Procedures as Parameters in the Language L4", Institution="GTE Laboratories, Inc.", Address="Waltham, Mass.", Month=Oct, Year=1988, Note="To appear in {\em Information and Computation}", Annote="25 references." } @InCollection{Ghezzi-Felder-Bellettini93, Key="Ghezzi \& Felder \& Bellettini", Author="C. Ghezzi and M. Felder and C. Bellettini", Title="Real-Time Systems: A Survey of Approaches to Formal Specification and Verification", Journal=LNCS, Number=717, Editor="Ian SommrVille and Manfred Paul", Publsiher="Springer-Verlag", Address=NY, Year=1993, Note="Software Engineering= ESEC '93. 4th European Software Engineering Conference, Germany, Sep 93. Proceedings", Page="11-36", Annote="33 references" } @InProceedings{Ghezzi-Kemmerer91a, Key = "Ghezzi \& Kemmerer", Author = "Carlo Ghezzi and Richard A. Kemmerer", Title = "{ASTRAL}: an Assertion Language for Specifying Realtime Systems", BookTitle = "Third European Software Engineering Conference, Milano, Italy", Year = 1991, Month = Oct } @InProceedings{Ghezzi-Kemmerer91b, Key = "Ghezzi \& Kemmerer", Author = "Carlo Ghezzi and Richard A. Kemmerer", Title = "Executing Formal Specifications: the {ASTRAL} to {TRIO} Approach", BookTitle = "Symposium on Testing, Analysis, and Verification, Victoria, British Columbia", Year = 1991, Month = Oct, Pages = "112-119", Annote = "21 references." } @Article{Ghezzi-etal91, Key = "Ghezzi, {\em et al.\/}", Author = "Carlo Ghezzi and Dino Mandrioli and Sandro Morasca and Mauro Pezze", Title = "A Unified {High-Level Petri Net} Formalism for Time-Cricical Systems", Journal = IEEETSE, Year = 1991, Volume = 17, Number = 2, Month = Feb, Pages = "160-172", Annote = "36 references." } @InCollection{Giarratana-Gimona-Montanari76, Key="Giarratana \& Gimona \& Montanari", Author="V. Giarratana and F. Gimona and U. Montanari", Title="Observability Concepts in Abstract Data Type Specifications", BookTitle="Mathematical Foundations of Computer Science 1976, Proceedings 5th Symposium, Gdansk", Month=Sep, Year=1976, Pages="576-587", Editor="A. Mazurkiewicz", Series=LNCS, Volume=45, Publisher="Springer-Verlag", Address=NY, Annote="12 references." } @Article{Gibson91, Key = "Gibson", Author = "Elizabeth A. Gibson", Title = "Flattening the learning curve: educating object-oriented developers", Journal = JOOP, Year = 1991, Volume = 3, Number = 6, Month = Feb, Pages = "24-29", Annote = "8 references." } @Article{Giddings84, Key="Giddings", Author="Richard V. Giddings", Title="Accommodating Uncertainty in Software Design", Journal=CACM, Volume=27, Number=5, Month=May, Year=1984, Pages="428-434", Annote="Domain dependent software and methodology. Prototyping as necessary for most applications where domain is not precisely known. Reusable components identified by formally modeling universe of discourse for the application. Cost-effectiveness of software environments. Nested development cycles. 9 references." } @Article{Gilb85, Key="Gilb", Author="Tom Gilb", Title={Evolutionary Delivery versus the "Waterfall Model"}, Journal=SIGSOFT, Month=Jul, Year=1985, Volume=10, Number=3, Pages="49-61", Annote="Argues that the smallest possible increments be delivered frequently to customers so that the designers can get feedback. 16 references." } @Book{Gilmore-Winder-Detienne94, Key = "Gilmore-Winder-Detienne", Author = "Divid J. Gilmore and Russel L. Winder and Francoise Detienne", Title = "User-Centered Requirements for Software Engineering Environments", Publisher = "Springer-Verlag", Year = 1994, Editor = "Divid J. Gilmore and Russel L. Winder and Francoise Detienne", Volume = 123, Series = "NATO ASI Series", Address = NY, Annote = "Hundreds of references." } @Article{Glass80, Key = "Glass", Author = "Robert L. Glass", Title = "Real-Time: The 'Lost World' of Software Debugging and Testing", Journal = CACM, Year = 1980, Volume = 23, Number = 5, Month = May, Pages = "264-271", Annote = "15 references." } @Article{Gnaedig-Kirchner90, Key = "Gnaedig \& Kirchner", Author = "Isabelle Gnaedig and Helene Kirchner", Title = "Equational Completion in Order-Sorted Algebras", Journal = TCS, Year = 1990, Volume = 72, Number = "2,3", Month = May, Pages = "169-202" } @Article{Go-Shiatori99, key = {Go \& Shiatori}, author = {Kentaro Go and Norio Shiatori}, title = {A Decomposition of a Formal Specification: An Improved Constraint-Oriented Method}, journal = IEEETSE, year = 1999, volume = Mar, number = 25, month = 2, pages = {258-273}, annote = {17 references.} } @Article{Godin-etal98, key = {Godin, {\em et al.}}, author = {Robert Godin and Hafedh Mili and Guy W. Mineau and Rokia Missaoui and Amina Arfi and Thuy-Tien Chau}, title = {Design of Class Hierarchies Based on Concept (Galois) Lattices}, journal = TAPOS, year = 1998, volume = 4, number = 2, pages = {117-134}, annote = {44 references.} } @InCollection{Goerdt87, Key = "Goerdt", Author = "Andreas Goerdt", Title = "Hoare Logic for Lambda-Terms as Basis of Hoare Logic for Imperative Languages", BookTitle = "Symposium on Logic in Computer Science, Ithaca, NY", Publisher = IEEE, Year = 1987, Pages = "293-299", Month = Jun, Annote = "17 references." } @InCollection{Gogolla-etal95, key = "Gogolla, {\em et al.}", author = "M. Gogolla and S. Conrad and G. Denker and R. Herzig and N. Vlachantonis and H. Ehrig", title = "{TROLL} {\it light} --- The Language and its Development Environment", pages = "205-220", annote = "An object-oriented specification language that uses SPECTRUM for its mathematical vocabulary. 19 references.", editor = {Manfred Broy and Stefan J\"{a}hnichen}, booktitle = "{KORSO}: Methods, Languages and Tools for the Construction of Correct Software", Publisher = "Springer-Verlag", address = NY, Series = LNCS, Volume = 1009, Year = 1995 } @InCollection{Goguen-Burstall84, Key="Goguen \& Burstall", Author="J. A. Goguen and R. M. Burstall", Title="Introducing Institutions", BookTitle="Logics of Programs: Workshop, Carnegie Mellon University, June 1983", Editor="Edmund Clarke and Dexter Kozen", Year=1984, Pages="221-256", Publisher="Springer-Verlag", Address=NY, Series=LNCS, Volume=164, Annote="Institutions generalize the notion of a logical system. If interface declarations can be glued together then theories can also be glued together. Conditions on when a theorem prover for one system can be validly used for another. Institutions that admit free models can be extended to institutions whose theories may include constraints such as hierarchy or generating constraints. 56 references." } @Article{Goguen-Burstall92, key = "Goguen \& Burstall", author = "Joseph A. Goguen and Rod M. Burstall", title = "Institutions: Abstract Model Theory for Specification and Programming", journal = JACM, month = Jan, year = 1992, volume = 39, number = 1, pages = "95--146", annote = "107 references." } @Book{Goguen-Malcolm96, author = "J. A. Goguen and G. Malcolm", title = "Algebraic Semantics of Imperative Programs", publisher = "MIT Press", address = "Cambridge, MA", year = "1996", ISBN = "0-262-07172-X", annote = "56 references." } @TechReport{Goguen-Meseguer80, Key="Goguen \& Meseguer", Author="Joseph A. Goguen and Jose Meseguer", Title="Order-Sorted Algebra {I}: Equational Deduction for Multiple Inheritance, Overloading, Exceptions, and Partial Operations", Institution="Computer Science Laboratory, SRI International", Month=Jul, Year=1980, Number="SRI-CSL-89-10", Annote="81 references." } @InCollection{Goguen-Meseguer82, Title = "Universal Realization, Persistent Interconnection and Implementation of Abstract Modules", Author = "Joseph Goguen and Jos\'e Meseguer", Year = 1982, BookTitle = "Proceedings, 9th International Conference on Automata, Languages and Programming, Aarhus, Denmark", Pages = "265-281", Editor = "M. Nielsen and E.M. Schmidt", Publisher = "Springer-Verlag", Address = NY, Series = "Lecture Notes in Computer Science", Volume = 140 } @TechReport{Goguen-Meseguer87b, Key="Goguen \& Meseguer", Author="Joseph A. Goguen and Jose Meseguer", Title="Order-Sorted Algebra Solves the Constructor-Selector, Multiple Representation and Coercion Problems", Institution="Center for the Study of Language and Information", Month=Mar, Year=1987, Number="CSLI-87-92", Note="Appears in Second Annual Symposium on Logic in Computer Science, Ithaca, NY, June, 1987, pages 18-29", Annote="12 references." } @InCollection{Goguen-Meseguer87c, Key="Goguen \& Meseguer", Author="Joseph A. Goguen and Jose Meseguer", Title="Order-Sorted Algebra Solves the Constructor-Selector, Multiple Representation and Coercion Problems", BookTitle = "Symposium on Logic in Computer Science, Ithaca, NY", Publisher = IEEE, Year = 1987, Pages = "18-29", Month = Jun, Annote = "Basics of order-sorted universal algebra. 12 references." } @Article{Goguen-Moriconi87, Key="Goguen \& Moriconi", Author="Joseph Goguen and Mark Moriconi", Title="Formalization in Programming Environments", Journal="Computer", Volume=20, Number=11, Month=Nov, Year=1987, Pages="55-64", Annote="Survey. 79 references." } @InProceedings{Goguen-Tardo79, Key="Goguen \& Tardo", Author="J. A. Goguen and Joseph J. Tardo", Title="An Introduction to OBJ: A Language for Writing and Testing Formal Algebraic Program Specifications", BookTitle="Proceedings Specifications of Reliable Software, Cambridge, Mass.", Organization=IEEE, Month=Apr, Year=1979, Pages="170-189", Annote="An interpreted data type specification language. 51 references." } @InCollection{Goguen-Thatcher-Wagner78, Key="Goguen \& Thatcher \& Wagner", Author="J. A. Goguen and J. W. Thatcher and E. G. Wagner", Title="An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types", BookTitle="Current Trends in Programming Methodology", Publisher=Prentice-Hall, Address="Englewood Cliffs, N.J.", Year=1978, Volume=4, Editor="Raymond T. Yeh", Pages="80-149", Annote="Algebraic specifications of abstract data types. This is the so-called ADJ paper." } @Article{Goguen-etal77, Key = "Goguen, {\em et al.}", Author = "J. A. Goguen and J. W. Thatcher and E. G. Wagner and J. B. Wright", Title = "Initial Algebra Semantics and Continuous Algebras", Journal = JACM, Year = 1977, Volume = 24, Pages = "68-95" } @InCollection{Goguen-etal87, Key="Goguen, {\em et al.}", Author="J. Goguen and C. Kirchner and A. Megrelis and J. Meseguer and T. Winkler", Title="An Introduction to OBJ3", BookTitle="Conditional Term Rewriting Systems, 1st International workshop, Orsay, France", Editor="S. Kaplan and J.-P. Jouannaud", Month=Jul, Year=1987, Series=LNCS, Volume=308, Publisher="Springer-Verlag", Address=NY, Pages="258-263" } @TechReport{Goguen-etal89, Key="Goguen, {\em et al.}", Author="Joseph A. Goguen and Jose Meseguer and Sany Lienwand and Timothy Winkler and Hitoshi Aida", Title="The Rewrite Rule Machine Project", Institution="Computer Science Laboratory, SRI International", Month=Mar, Year=1989, Number="SRI-CSL-89-6", Annote="12 references." } @InBook{Goguen-etal92, Key = "Goguen, {\em et al.}", Author = "Joseph A. Goguen and Timothy Winkler and Jose Meseguer and Kokichi Futatsugi and Jean-Pierre Jouannaud", Title = "Applications of Algebraic Specification Using OBJ", Chapter = "Introducing OBJ", Publisher = "Cambridge University Press", Year = 1992, Editor = "J. A. Goguen and D. Coleman and R. Gallimore" } @Article{Goguen73, Key = "Goguen", Author = "Joseph A. Goguen", Title = "Realization is Universal", Journal = "Math. Systems Theory", Year = 1973, Volume = 6, Number = 4, Pages = "359-374", Annote = "13 references." } @Article{Goguen84, Key="Goguen", Author="Joseph A. Goguen", Title="Parameterized Programming", Journal=IEEETSE, Volume="SE-10", Number=5, Month=Sep, Year=1984, Pages="528-543", Annote="Parameterization mecahanisms in OBJ. Theories, views, and module extensions. 50 references." } @Article{Goguen86, Key="Goguen", Author="Joseph A. Goguen", Title="Reusing and Interconnecting Software Components", Journal="IEEE Computer", Volume=19, Number=2, Month=Feb, Year=1986, Pages="16-28", Annote="42 references." } @TechReport{Goguen88b, Key="Goguen", Author="Joseph A. Goguen", Title="OBJ as a Theorem Prover", Institution="Computer Science Laboratory, SRI International", Number="SRI-CSl-88-4R2", Month=Aug, Year="1988", Annote="45 references." } @Article{Goldberg86, Key="Goldberg", Author="A. T. Goldberg", Title="Knowledge-Based Programming: A Survey of Program Design and Construction Techniques", Journal=IEEETSE, Volume=12, Number=7, Year=1986, Pages="752-768" } @Article{Goldberg87, Key="Goldberg", Author="Adele Goldberg", Title="Programmer as Reader", Journal="IEEE Software", Volume=4, Number=5, Month=Sep, Year=1987, Pages="62-70", Annote="How Smalltalk-80 helps readability. 12 comprehension questions. 10 references." } @Article{Goldberg-Abell-Leibs97, key = {Goldberg \& Abell \& Leibs}, author = {Adele Goldberg and Steven T. Abell and David Leibs}, title = {The {LearningWorks} Development and Delivery Frameworks}, journal = CACM, year = 1997, volume = 40, number = 10, month = Oct, pages = {78-81}, annote = {5 references.} } @TechReport{Goldstein-Bobrow80b, Key="Goldstein \& Bobrow", Author="I. Goldstein and D. Bobrow", Title="A Layered Approach of Software Design", Institution="Xerox PARC", Number="CSL-80-5", Year=1980, Month=Dec } @InCollection{Goodenough77, Key = "Goodenough", Author = "J. B. Goodenough", Title = "Towards a Theory of Testing Data Section Criteria", BookTitle = "Current Trends in Programming Technology", Publisher = "Prentice Hall", Year = 1977, Editor = "", Pages = "", Address = "Englewood Cliffs, NJ", Annote = "" } @Article{Gotlieb-Botella-Rueher98, key = {Gotlieb \& Botella \& Rueher}, author = {Arnaud Gotlieb and Bernard Botella and Michel Rueher}, title = {Automatic Test Data Generation using Constraint Solving Techniques}, journal = SIGSOFT, year = 1998, volume = 23, number = 2, month = Mar, pages = {53-62}, note = {ISSTA 98: Proceedings of the ACM SIGSOFT Internatioal Symposium on Software Testing and Analysis}, annote = {24 references.} } @TechReport{Gough-Barringer87, Key="Gough \& Barringer", Author="Graham D. Gough and Howard Barringer", Title="A Semantics Driven Temporal Verification System", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Number="UMCS-87-12-5", Year=1987, Note="To appear in ESOP '88", Annote="SMG, a generic state machine generator that interfaces to temporal logic checkers. 21 references." } @Article{Gould-Lewis85, Key="Gould \& Lewis", Author="John D. Gould and Clayton Lewis", Title="Designing for Usability: Key Principles and What Designers Think", Journal=CACM, Volume=28, Number=3, Month=Mar, Year=1985, Pages="300-311", Annote="Principles for design of user interfaces: early focus on users and tasks, empirical measurement and iterative design. Discussion of why these are not obvious and exactly what they mean. An example of their use in designing IBM's ADS system. 36 references." } @TechReport{Graham88, Key="Graham", Author="T. C. Nicholas Graham", Title="Conceptual View of Data Structures as a Programming Aid", Institution="Department of Computing and Information Science, Queen's University at Kingston", Address="Kingston, Ontario, Canada", Month=Aug, Year=1988, Number="88-225", Annote="Model of program output. The Weasel environment. 50 references." } @Book{Grand98, author = {Mark Grand}, title = {Patterns in Java: A Catalog of Reusable Design Patterns Illustrated with UML}, publisher = {Wiley}, year = 1998, key = {Grand}, volume = {Volume 1}, annote = {9 references. Includes CD-ROM} } @Book{Grand99, author = {Mark Grand}, title = {Patterns in Java: A Catalog of Reusable Design Patterns Illustrated with UML}, publisher = {Wiley}, year = 1998, key = {Grand}, volume = {Volume 2}, annote = {14 references. Includes CD-ROM} } @InCollection{Gray87, Key="Gray", Author="John W. Gray", Title="The Category of Sketches as a Model for Algebraic Semantics", BookTitle="Categories in Computer Science and Logic, Boulder, Colo.", Editor="John W. Gray and Andre Scedrov", Year=1987, Series="Contemporary Mathematics", Volume=92, Organization="American Mathematical Society", Address="Providence, R.I.", Pages="109-135", Annote="15 references." } @Article{Gray87b, Author="D. Gray", Title="A Pedagogical Verification Condition Generator", Journal="The Computer Journal", Volume=30, Number=3, Year=1987, Pages="239 -- 248" } @Proceedings{Gray-Boehm-Davis96, title = {Empirical Studies of Programmers}, booktitle = {Empirical Studies of Programmers}, year = 1996, key = {Gray \& Boehm-Davis}, editor = {Wayne D. Gray and Deborah A. Boehm-Davis}, publisher = {Alex Publishing Corp.}, address = {Norwood, NJ, USA}, annote = {Papers from the 1996 Workshop on Empirical Studies of Programmers.} } @Article{Greif-Meyer81, Key = "Greif \& Meyer", Author = "Irene Greif and Albert R. Meyer", Title = "Specifying the Semantics of {\bf while} Programs: A Tutorial and a Critique of a Paper by Hoare and Lauer", Journal = TOPLAS, Year = 1981, Volume = 3, Number = 4, Month = Oct, Pages = "484-507", Annote = "22 references." } @Article{Greiter82, Key="Greiter", Title="A Data Type Theory", Author="Gebhard Greiter", Journal=SIGPLAN, Volume=17, Number=5, Month=May, Year=1982, Pages="47-53", Annote="Mathematical model for data type including treatments of error handling. Distinguishes types from implementations. 3 references." } @Article{Greiter83, Key="Greiter", Author="Gebh. Greiter", Title="Comparing two Definitions for the Notion ``Data Type''", Journal=SIGPLAN, Year=1983, Volume=18, Number=7, Month=Jul, Pages="45-49", Annote="Consistency of algebraic specifications. 4 references." } @Article{Gries-Levin80, author = {D. Gries and G. Levin}, title = {Assignment and the Procedure Call Proof Rules}, journal = {TOPLAS}, year = 1980, key = {Gries \& Levin}, volume = 2, number = 4, pages = {564-579} } @Article{Gries-Prins85, Key="Gries \& Prins", Author="David Gries and Jan Prins", Title="A New Notion of Encapsulation", Journal=SIGPLAN, Volume=20, Number=20, Month=Jul, Year=1985, Note="Proceedings of the ACM SIGPLAN 85 Symposium on Language Issues in Programming Environments", Pages="131-139", Annote="Modules indicate how values (or variables) are implemented. Idea allows programmers to program at high level, use partial implementations of data types. 6 references." } @Book{Gries-Schneider94, Key = "Gries \& Schneider", Author = "David Gries and Fred B. Schneider", Title = "A Logical Approach to Discrete Math", Publisher = "Springer-Verlag", Year = 1994, Series = "Texts and Monographs in Computer Science", Address = NY, Annote = "45 references." } @InCollection{Gries-Schneider95, author = {David Gries and Fred B. Schneider}, title = {Avoiding the Undefined by Underspecification}, booktitle = {Computer Science Today: Recent Trends and Developments}, key = {Gries \& Schneider}, publisher = {Springer-Verlag}, year = 1995, editor = {Jan van Leeuwen}, number = 1000, series = LNCS, address = NY, pages = {366-373}, annote = {9 references.} } @Book{Gries78, Key="Gries", Editor="David Gries", Title="Programming Methodology, A Collection of Articles by Members of IFIP WG2.3", Publisher="Springer-Verlag", Address=NY, Year=1978 } @Book{Gries81, Key="Gries", Author="David Gries", Title="The Science of Programming", Year=1981, Publisher="Springer-Verlag", Address=NY, Annote="44 references." } @TechReport{Gries82, Key = "Gries", Author = "David Gries", Title = "The Science of Computer Programming Answer Book", Institution = "Dept. of Computer Science, Cornell, University", Year = 1982, Number = "82-498", Month = Jun, Annote = "Includes errata. 1 reference." } @Article{Grumberg-Long94, Key = "Grumberg \& Long", Author = "Orna Grumberg and David E. Long", Title = "Model Checking and Modular Verification", Journal = TOPLAS, Year = 1994, Volume = 16, Number = 3, Month = May, Pages = "843-871", Annote = "31 references." } @InCollection{Grundy93, Key = "Grundy", Author = "J. Grundy", Title = "Predicative Programming---A Survey", BookTitle = "Formal Methods in Programming and Their Applications", Publisher = "Springer-Verlag", Year = 1993, Editor = "Dines Bjoerner and Manfred Broy and Igor V. Pottosin", Series = LNCS, Volume = 735, Pages = "8-25", Month = Jul, Annote = "18 references." } @Article{Grundy-Hosking-Mugridge98, key = {Grundy \& Hosking \& Mugridge}, author = {John Grundy and John Hosking and Warwick B. Mugridge}, title = {Inconsistency Management for Multiple-View Software Development Environments}, journal = IEEETSE, year = 1998, volume = 24, number = 11, month = Nov, pages = {960-981}, annote = {74 references.} } @Article{Guaspari-Marceau-Polak90, Key="Guaspari \& Marceau \& Polak", Author="David Guaspari and Carla Marceau and Wolfgang Polak", Title="Formal Verification of {Ada} Programs", Journal=IEEETSE, Volume=16, Number=9, Month=Sep, Year=1990, Pages="1058-1075", Annote="Penelope verification editor and Larch/Ada. 35 references." } @InCollection{Guaspari-Marceau-Polak92, Key="Guaspari \& Marceau \& Polak", Author="David Guaspari and Carla Marceau and Wolfgang Polak", Title="Formal Verification of {Ada} Programs", Editor="Ursala Martin and Jeanete M. Wing", BookTitle="First International Workshop on Larch, Dedham 1992", Publisher="Springer-Verlag", Year=1992, Pages="104-141", Annote="35 references" } @InCollection{Guaspari-Seagar-Stilerman, author = {David Guaspari and Mike Seagar and Matt Stillerman}, title = {Specifying the Kernel of a Secure Distributed Operating System}, booktitle = {Applications of Formal Methods}, key = {Guaspari \& Seagar \& Stillerman}, publisher = {Prentice Hall}, year = 1995, editor = {Michael G. Hinchey and Jonathan P. Bowen}, series = {Prentice Hall International Series in Computer Science}, chapter = 12, address = {London}, pages = {285-306} } @TechReport{Guaspari89, Key="Guaspari", Author="David Guaspari", Title="The semantics of two-tiered specifications. Part 1: Modular programming.", Institution="Odyssey Research Associates", Address="301A Harris B. Dates Dr., Ithaca, NY 14850", Number="17-14", Month=Dec, Year=1989, Annote="8 references." } @Misc{Guaspari93, Key = "Guaspari", Author = "David Guaspari", Title = "Dispatching Operations", Howpublished = "Received from author", Year = 1993, Annote = "2 references." } @Book{Guessarian81, Key = "Guessarian", Author = "I. Guessarian", Title = "Algebraic Semantics", Publisher = "Springer-Verlag", Year = 1981, Volume = 99, Series = LNCS, Address = NY } @Book{Gumb89, Key="Gumb", Author="Raymond D. Gumb", Title="Programming Logics: An introduction to verification and semantics", Publisher="Wiley", Address=NY, Annote="Annotated bibliography contains 79 references." } @Article{Gunter96, key = {Gunter}, author = {Carl A. Gunter}, title = {Abstracting Dependencies between Software Configuration Items}, journal = SIGSOFT, year = 1996, editor = {David Garlan}, volume = 21, number = 6, month = Nov, pages = {167-178}, note = {SIGSOFT '96: Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, San Francisco, California}, annote = {Production nets and their models. 16 references.} } @InCollection{Gunther-Schewe-Wetzel93, Key = "Gunther \& Schewe \& Wetzel", Author = "T. Gunther and Klaus-Dieter Schewe and Ingrid Wetzel", Title = "On the Derivation of Executable Database Programs from Formal Specifications", BookTitle = "Industrial-Strength Formal Methods, First International Symposium of Formal Methods Europe, Odense, Denmark", Publisher = "Springer-Verlag", Year = 1993, Editor = "J.C.P. Woodcock and P.G. Larsen", Series = LNCS, Volume = 670, Pages = "351-366", Address = NY, Month = Apr, Annote = "14 references." } @Article{Gupta-Mathur-Soffa98, key = {Gupta \& Mathur \& Soffa}, author = {Neelam Gupta and Aditya Mathur and Mary Lou Soffa}, title = {Automated Test Data Generation Using an Iterative Relaxation Method}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {231-244}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {15 references.} } @inproceedings{Gurski-Baker94, key = "Gurski \& Baker", author = "M. Gurski and A. L. Baker", title = "Testing {SPECS-C++}: A First Step in Validating Distributed Systems", booktitle = "Intellegent Information Management Systems", year = "1994", pages = "105-108", publisher = "The International Society for Mini and Microcomputers - ISMM", address = "Anaheim" } @TechReport{Guttag-Horning-Modet90, Key="Guttag \& Horning \& Modet", Author="John V. Guttag and James J. Horning and Andr\'{e}s Modet", Title="Report on the {Larch Shared Language}: Version 2.3", Institution=DECSRC, Address="130 Lytton Avenue, Palo Alto, CA 94301", Month=Apr, Year=1990, Number=58, Note="Order from src-report@src.dec.com", Annote="19 references." } @Article{Guttag-Horning-Wing82, Key="Guttag \& Horning \& Wing", Author="J. V. Guttag and J. J. Horning and J. M. Wing", Title="Some Remarks on Putting Formal Specifications to Productive Use", Journal="Science of Computer Programming", Volume=2, Number=1, Month=Oct, Year=1982, Pages="53-68" } @TechReport{Guttag-Horning-Wing85a, Author="J. V. Guttag and J. J. Horning and J. M. Wing", Title="{Larch} in Five Easy Pieces", Institution=DECSRC, Year=1985, Month=Jul, Number=5, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote="The five pieces are: the Larch family of specification languages, the Larch shared language, the Larch shared language reference manual, the Larch shared language handbook, and writing Larch interface language specifications. 65 references." } @Article{Guttag-Horning-Wing85b, Key="Guttag \& Horning \& Wing", Author="John V. Guttag and James J. Horning and Jeannette M. Wing", Title="The {Larch} Family of Specification Languages", Journal="IEEE Software", Year=1985, Month=Sep, Volume=2, Number=5, Pages="24-36" } @Article{Guttag-Horning78, Key="Guttag \& Horning", Author="J. Guttag and J. J. Horning", Title="The Algebraic Specification of Abstract Data Types", Journal="Acta Informatica", Year=1978, Volume=10, Number=1, Pages="27-52" } @InProceedings{Guttag-Horning80, Key="Guttag \& Horning", Author="J. Guttag and J. J. Horning", Title="Formal Specification as a Design Tool", BookTitle="Conference Record of the Seventh Annual ACM Symposium on Principles of Programming Languages, Las Vegas, Nevada", Organization=ACM, Year=1980, Month=Jan, Pages="251-261", Annote="6 references." } @TechReport{Guttag-Horning83, Key="Guttag \& Horning", Author="J. V. Guttag and J. J. Horning", Title="Preliminary Report on the {Larch Shared Language}", Institution=MITLCS, Year=1983, Month=Oct, Number=307, Annote="Specification language for abstract data types with a inheritance-like structure. 14 references." } @Article{Guttag-Horning86a, Key="Guttag \& Horning", Author="J. V. Guttag and J. J. Horning", Title="Report on the {L}arch {S}hared {L}anguage", Journal="Science of Computer Programming", Volume=6, Number=2, Month=Mar, Year=1986, Pages="103-134", Annote="Definition of the specification language Larch. 17 references." } @Article{Guttag-Horning86b, Key="Guttag \& Horning", Author="J. V. Guttag and J. J. Horning", Title="A {L}arch {S}hared {L}anguage Handbook", Journal="Science of Computer Programming", Volume=6, Number=2, Month=Mar, Year=1986, Pages="135-157", Annote="Definitions of basic traits in Larch. 3 references." } @TechReport{Guttag-Horning91, Key = "Guttag \& Horning", Author = "J. V. Guttag and J. J. Horning", Title = "Introduction to {LCL}, A {Larch/C} Interface Language", Institution = DECSRC, Year = 1991, Number = 74, Month = Jul, Address="130 Lytton Avenue, Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote = "5 references." } @InCollection{Guttag-Horning91b, Key = "Guttag \& Horning", Author = "J. V. Guttag and J. J. Horning", Title = "A Tutorial on {Larch} and {LCL}, a {Larch/C} Interface Language", BookTitle = "VDM '91 Formal Software Development Methods 4th International Symposium of VDM Europe Noordwijkerhout, The Netherlands, Volume 2: Tutorials", Publisher = "Springer-Verlag", Year = 1991, Editor = "S. Prehn and W. J. Toetenel", Series = LNCS, Volume = 552, Pages = "1-78", Address = NY, Month = Oct, Annote = "Part 2 is an introduction to the Larch Shared Language. 6 references." } @Book{Guttag-Horning93, Key = "Guttag \& Horning", Author = "John V. Guttag and James J. Horning and S.J. Garland and K.D. Jones and A. Modet and J.M. Wing", Title = "{Larch}: Languages and Tools for Formal Specification", Publisher = "Springer-Verlag", Year = 1993, Address = NY, Annote = "99 references." } @Article{Guttag-Horowitz-Musser78, Key="Guttag \& Horowitz \& Musser", Author="John V. Guttag and Ellis Horowitz and David R. Musser", Title="Abstract Data Types and Software Validation", Journal=CACM, Volume=21, Number=12, Month=Dec, Year=1978, Pages="1048-1064", Annote="Use of algebraic axiomatizations in proofs and tools to automate proofs. Data type induction. 25 references." } @Article{Guttag77, Key="Guttag", Author="John Guttag", Title="Abstract Data Types and the Development of Data Structures", Journal=CACM, Month=Jun, Year=1977, Volume=20, Number=6, Pages="396-404", Annote="Application of algebraic specifications for data structures. 25 references." } @Article{Guttag80, Key="Guttag", Author="John Guttag", Title="Notes on Type Abstractions (Version 2)", Journal=IEEETSE, Volume="SE-6", Number=1, Month=Jan, Year=1980, Pages="13-23", Note="Version 1 in {\em Proceedings Specifications of Reliable Software}, Cambridge, Mass., IEEE, April, 1979", Annote="Axiomatic data type specifications. 22 references." } @InCollection{Guttag93, Key="Guttag", Author="J. V. Guttag", Title="Goldilocks and the Three Specifications", Journal=LNCS, Number=668, Publisher="Springer-Verlag", Address=NY, Editor="M. C. Gaudel and J. P. Jouannaud", Year=1993, Note="TAPSOFT '93: Theory and Practice of Software Development. 4th International Joint Conference CAAP/FASE France, April 1993. Proceedings.", Pages="1-14", Annote="9 references" } @Article{Habermann-Flon-Cooprider76, Key="Habermann \& Flon \& Cooprider", Author="A. N. Habermann and Lawrence Flon and Lee Cooprider", Title="Modularization and Hierarchy in a Family of Operating Systems", Journal=CACM, Volume=19, Number=5, Year=1976, Month=May, Pages="266-272", Annote="Design philosophy for a family of operating systems. Family members share software. Concepts of module and level do not coincide in a hierarchy of functions. 9 references." } @Article{Habermann-Notkin86, Key="Habermann \& NOtkin", Author="A. Nico Habermann and David Notkin", Title="Gandalf: Software Development Environments", Journal=IEEETSE, Volume="SE-12", Number=12, Month=Dec, Year=1986, Pages="1117-1127", Annote="67 references." } @Article{Hajnal-Sorgacs98, key = {Hajnal \& Sorg\'{a}cs}, author = {\'{A}kos Hajnal and Istv\'{a}n Sorg\'{a}cs}, title = {An Applicable Test Data Generation Algorithm for Domain Errors}, journal = SIGSOFT, year = 1998, volume = 23, number = 2, month = Mar, pages = {63-72}, note = {ISSTA 98: Proceedings of the ACM SIGSOFT Internatioal Symposium on Software Testing and Analysis}, annote = {15 references.} } @Article{Hall90, Key="Hall", Author="Anthony Hall", Title="Seven Myths of Formal Methods", Journal="IEEE Software", Volume=7, Number=5, Month=Sep, Year=1990, Pages="11-19", Annote="10 references." } @InCollection{Hamilton-Zeldin79, Key="Hamilton \& Zeldin", Author="M. Hamilton and S. Zeldin", Title="Discussion of An Appraisal of Program Specifications", BookTitle="Research Directions in Software Technology", Editor="Peter Wegner", Publisher=MITP, Address="Cambridge, Mass.", Year=1979, Pages="376-380", Annote="10 references." } @InProceedings{Hamilton92, Key="Hamilton", Author = "V. Hamilton", Title = "Experience of combining {Y}ourdon and {V}{D}{M}", BookTitle = "Proceedings of the Methods Integration Workshop", Publisher = "Springer-Verlag", Year = 1992 } @Article{Harel-Kahana92, Key = "Harel \& Kahana", Author = "David Harel and Chaim-Arie Kahana", Title = "On Statecharts with Overlapping", Journal = TOSEM, Year = 1992, Volume = 1, Number = 4, Month = Oct, Pages = "399-421", Annote = "13 references." } @InProceedings{Harel-etal87, key = "Harel, {\em et al.}", author = "D. Harel and A. Pnueli and J. P. Schmidt and R. Sherman", title = "On the Formal Semantics of Statecharts", booktitle = "IEEE Symposium on Logic in Computer Science", pages = "54--64", year = "1987" } @Article{Harel-etal90, Key = "Harel, {\em et al.}", Author = "David Harel and Hagi Lachover and Amnon Naamad and Amir Pnueli and Michal Politi and Rivi Sherman and Aharon Shtull-trauring and Mark Trakhtenbrot", Title = "STATEMATE: A working Environment for the Development of Complex Reactive Systems", Journal = IEEETSE, Year = 1990, Volume = 16, Number = 4, Month = Apr, Pages = "403-413", Annote = "22 references." } @Article{Harel87, Key = "Harel", Author = "David Harel", Title = "Statecharts: A Visual Formalism for Complex Systems", Journal = "Science of Computer Programming", Year = 1987, Volume = 8, Number = 3, Month = Jun, Pages = "231-274" } @Article{Harel92, Key = "Harel", Author = "David Harel", Title = "Biting the Silver Bullet", Journal = "Computer", Year = 1992, Volume = 21, Number = 1, Month = Jan, Pages = "8-20", Annote = "A vanillia approach to systems design, based on an analogy to a conventional programming language. That is the designer should have ability to execute and debug designs. Visual elements are also important. 20 references." } @Article{Harms-Weide91, key = {Harms \& Weide}, author = {Douglas E. Harms and Bruce W. Weide}, title = {Copying and Swapping: Influences on the Design of Reusable Software Components}, journal = IEETSE, year = 1991, volume = 17, number = 5, month = May, pages = {424-435}, annote = {Part of the rationale for RESOLVE. 23 references.} } @InCollection{Harrison-Ossher93, key = "Harrison \& Ossher", author = "William Harrison and Harold Ossher", title = "Subject-Oriented Programming (A Critique of Pure Objects)", booktitle = "OOPSLA 1993 Conference Proceedings", publisher = "ACM Press", year = 1993, editor = "Andreas Paepcke", volume = 28, number = 10, series = SIGPLAN, pages = "411-428", month = Oct, annote = "Subjectivity. 24 references." } @Book{Harrison-Thimbleby90, Key="Harrison \& Thimbleby", Author="Michael Harrison and Harold Thimbleby", Title="Formal Methods in Human-Computer Interaction", Series="Cambridge Series on Human-Computer Interaction", Publisher="Cambridge University Press", Address=NY, Year=1990, Annote="214 references." } @InProceedings{Harrison86, Key="Harrison", Author="William Harrison", Title="A Program Development Environment for Programming by Refinement and Reuse", BookTitle="Nineteenth Annual Hawii International Conference on System Sciences", Year=1986, Organization="University of Hawii, ACM, IEEE", Pages="459-469", Annote="RPDE project. 24 references." } @Book{Hatley-Pirbhai87, Key = "Hatley \& Pirbhai", Author = "D. J. Hatley and I. Pirbhai", Title = "Strategies for Real-Time System Specification", Publisher = "Dorset House", Year = 1987, Address = NY } @Article{Hatton97, key = {Hatton}, author = {Les Hatton}, title = {N-Version Design Versus One Good Version}, journal = {IEEE Software}, year = 1997, volume = 14, number = 6, month = Nov, pages = {71-76}, annote = {Suggests that n-version development is preferable. 12 references.} } @Article{Hatton98, key = {Hatton}, author = {Les Hatton}, title = {Does {OO} Sync with How We Think?}, journal = {IEEE Software}, year = 1998, volume = 15, number = 3, month = May, pages = {46-54}, annote = {No, in a study an OO C++ implementation had a ``poorer defect density'' and took longer to debug than an equivalent non-OO system in C. The problem seems partly attributable to inheritance. 13 references.} } @TechReport{Haxthausen92, Key = "Haxthausen", Author = "Anne Elisabeth Haxthausen", Title = "RAISE Language and Method Evolution", Institution = "Computer Resources International A/S", Year = 1994, Address = "Bregneroedvej 144, P. O. Box 173, DK-3460 Birkeroed, Denmark", Month = Jan, Annote = "0 references." } @TechReport{Hayes-Coleman-Bear89, Key="Hayes \& Coleman \& Bear", Author="Fiona Hayes and Derek Coleman and S. Bear", Title="Introducing ObjectCharts or How to Use Statecharts in Object Oriented Design", Institution="Information Management Lab, Hewlett Packard Laboratories", Type="Technical Memo", Number="?", Month=Nov, Year=1989, Annote="6 references." } @Article{Hayes-Coleman-Bear92, Key="Hayes \& Coleman \& Bear", Author="Fiona Hayes and Derek Coleman and S. Bear", Title="Introducing ObjectCharts or How to Use Statecharts in Object Oriented Design", Journal=IEEETSE, Volume=18, Number=1, Month=Jan, Year=1992, Pages="9-18", Annote="16 references." } @Article{Hayes-Jones-Nicholls94, Key = "Hayes \& Jones \& Nicholls", Author = "I.J. Hayes and C.B. Jones and J.E. Nicholls", Title = "Understanding the Differences Between VDM and Z", Journal = "Software Engineering Notes", Year = 1994, Volume = 19, Number = 3, Month = Jul, Pages = "69-74", Annote = "14 references." } @TechReport{Hayes-Jones89, Key="Hayes \& Jones", Author="Ian J. Hayes and Cliff B. Jones", Title="Specifications are not (necessarily) executable", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Month=Dec, Year=1989, Number="UMCS-90-12-1", Annote="20 references." } @Book{Hayes87, Key="Hayes", Editor="I. Hayes", Title="Specification Case Studies", Publisher=Prentice-Hall, Series="International Series in Computer Science", Year=1987, Annote="Introduces the Z specification language." } @Book{Hayes93, Key="Hayes", Editor="I. Hayes", Title="Specification Case Studies", Publisher=Prentice-Hall, Series="International Series in Computer Science", Year=1993, Edition="Second", Annote="Introduces the Z specification language." } @Book{Headington-Riley94, author = {M. R. Headington and D.D. Riley}, title = {Data Abstraction and Structures Using {C++}}, publisher = {Heath}, year = 1994 } @Article{Hecker99, key = {Hecker}, author = {Frank Hecker}, title = {Setting Up Shop: The Business of Open-Source Software}, journal = {IEEE Software}, year = 1999, volume = 16, number = 1, month = Jan, pages = {45-51} } @Article{Hehner-Gupta-Malton86, Key="Hehner \& Gupta \& Malton", Author="Eric C. Hehner and Lorene E. Gupta and Andrew J. Malton", Title="?", Journal="Acta Informatica", Volume=23, Number=5, Month=Sep, Year=1986, Pages="487-505" } @Book{Hehner93, Key="Hehner", Author="Eric C.R. Hehner", Title="A Practical Theory of Programming", Publisher="Springer-Verlag", Series="Texts and Monographs in Computer Science", Year=1993, Annote="60 references" } @InProceedings{Heimdahl-Leveson95, key = "Heimdahl \& Leveson", author = "Mats P. E. Heimdahl and Nancy G. Leveson", title = "Completeness and Consistency Analysis of State-Based Requirements", pages = "3--14", booktitle = "Proceedings of the~17th~International Conference on Software Engineering", year = "1995", publisher = "ACM Press", month = apr } @Article{Heitmeyer-etal98, key = {Heitmeyer, {\em et al.}}, author = {Constance Heitmeyer and James {Kirby, Jr.} and Bruce Labaw and Myla Archer and Ramesh Bharadwaj}, title = {Using Abstraction and Model Checking to Detect Safety Violations in Requirements Specifications}, journal = IEEETSE, year = 1998, volume = 24, number = 11, month = Nov, pages = {927-948}, annote = {66 references.} } @Article{Helm-Holland-Gangopadhyay90, Key = "Helm \& Holland \& Gangopadhyay", Author = "R. Helm and I. Holland and D. Gangopadhyay", Title = "Contracts: Specifying Behavioral Compositions in Object-Oriented System", Journal = SIGPLAN, Year = 1990, Volume = 25, Number = 10, Month = Oct, Pages = "169-180", Note = "{\em OOPSLA ECOOP '90 Proceedings}, N. Meyrowitz (editor).", Annote = "26 references." } @Article{Henninger94, key = {Henninger}, author = {Scott Henninger}, title = {Using Iterative Refinement to Find Reusable Software}, journal = {IEEE Software}, year = 1994, volume = 11, number = 5, month = Sep, pages = {48-59}, annote = {11 references.} } @InCollection{Henziger-Manna-Pneuli92, Key = "Henziger \& Manna \& Pneuli", Author = "T. A. Henziger and Z. Manna and A. Pneuli", Title = "Temporal Proof Methodologies for Real-Time Systems", BookTitle = "Real-Time Systems: Abstractions, Languages, and Design Methodologies", Publisher = "IEEE Computer Society Press", Year = 1992, Editor = "Krishna M. Kavi", Pages = "145-158", Address = "Los Alamitos, California", Month = Oct, Annote = "14 references." } @Article{Herlihy-Wing90, Key="Herlihy \& Wing", Author="Maurice P. Herlihy and Jeannette M. Wing", Title="Linerizability: A Correctness Condition for Atomic Objects", Journal=TOPLAS, Volume=12, Number=3, Month=Jul, Year=1990, Pages="463-492", Annote="Correctness condition that exploits the semantics of abstract types. 46 references." } @InCollection{Hesselink-Reinds93, Key="Hesselink \& Reinds", Author="W. H. Hesselink and R. Reinds", Title="Temporal Preconditions of Recursive Procedures", Journal=LNCS, Number=666, Editor="J. W. de Baker and W. P. de Rover and G. Rozenberg", Publsiher="Springer-Verlag", Address=NY, Year=1993, Note="Semantics: Foundations and Applications REX Workshop, The NetherLands, june 1992. Proceedings", Page="236-260", Annote="13 references" } @Article{Hesselink88, Key="Hesselink", Author="Wim H. Heselink", Title="A Mathematical Approach to Nondeterminism in Data Types", Journal="TOPLAS", Volume=10, Number=1, Month=Jan, Year=1988, Pages="87-117", Annote="Model theory for nondeterministic data types. Unfocused signatures. Accumulated arrows are finite programs. Morphisms and strict morphisms. Relations and universal models. Extraction equivalence versus observable equivalence. Notion of an implementation. 18 references." } @Article{Hesselink89, Author = "Wim H. Heselink", Title = "Predicate-Transformer Semantics of General Recursion", Journal = "Acta Informatica", Year = 1989, Volume = 26, Number = 4, Month = Feb, Pages = "309-322" } @Book{Hesselink92, Key = "Hesselink", Author = "Wim H. Hesselink", Title = "Programs, Recursion, and Unbounded Choice", Publisher = "Cambridge University Press", Year = 1992, Volume = 27, Series = "Cambridge Tracts in Theoretical Computer Science", Address = NY, Annote = "Predicate transformation calculus semantics of sequential programs including repetition, recursion, and unbounded nondeterminancy. 50 references." } @Article{Hester-Parnas-Utter81, Key="Hester \& Parnas \& Utter", Author="S. D. Hester and D. L. Parnas and D. F. Utter", Title="Using Documentation as a Software Design Medium", Journal=BSTJ, Volume=60, Number=8, Month=Oct, Year=1981, Pages="1941-1977", Annote="Design method based on separation of concerns and information hiding. Structuring of design documents. Expected changes explicitly noted. 16 references." } @Book{Hinchey-Bowen95, key = "Hinchey \& Bowen", editor = "Michael G. Hinchey and Jonathan P. Bowen", title = "Applications of Formal Methods", booktitle = "Applications of Formal Methods", publisher = "Prentice Hall International Series in Computer Science", year = "1995", url = "http://www.cl.cam.ac.uk/users/mgh1001/afm-book.html", ISBN = "0-13-366949-1", annote = "A collection on industrial examples of the use of formal methods. Many references." } @InCollection{Hintermeier-Kirchner-Kirchner94, Key = "Hintermeier \& Kirchner \& Kirchner", Author = "Claus Hintermeier and Claude Kirchner and Helene Kirchner", Title = "Sort Inheritance for Order-Sorted Equational Presentations", BookTitle = "Recent Trends in Datatype Specification", Publisher = "Springer-Verlag", Year = 1994, Editor = "Egidio Astesiano and Gianna Reggio and Andrzej Tarlecki", Series = LNCS, Volume = 906, Pages = "319-335", Address = NY, Annote = "22 references." } @Article{Hill72, Key = "Hill", Author = "I. D. Hill", Title = "Wouldn't it be nice if we could write computer programs in ordinary English---or would it?", Journal = "The Computer Bulletin", Year = "1972", Volume = 16, Number = 6, Month = Jun, Pages = "306-312" } @InCollection{Hoare-Jifeng99, key = {Hoare \& Jifeng}, author = {C. A. R. Hoare and He Jifeng}, title = {A Trace Model for Pointers and Objects}, booktitle = {ECOOP '99 --- Object-Oriented Programming 13th European Conference, Lisbon Portugal}, publisher = {Springer-Verlag}, year = 1999, editor = {Rachid Guerraoui}, volume = 1628, series = LNCS, address = NY, month = Jun, pages = {1-17}, annote = {16 references.} } @Article{Hoare-etal87, Key="Hoare, {\em et al.}", Author="C. A. R. Hoare and I. J. Hayes and He Jifeng and C. C. Morgan and A. W. Roscoe and J. W. Sanders and I. H. Sorensen and J. M. Spivey and B. A. Sufrin", Title="Laws of Programming", Journal=CACM, Volume=30, Number=8, Month=Aug, Year=1987, Pages="672-686", Note="See corrections in the September 1987 CACM.", Annote="Algebraic laws for Dijkstra's language. 13 references." } @Article{Hoare69, Key="Hoare", Author="C. A. R. Hoare", Title="An Axiomatic Basis for Computer Programming", Journal=CACM, Volume=12, Number=10, Month=Oct, Year=1969, Pages="576-583", Annote="Axiomatic semantics introduced, partial correctness, proofs of correctness. 9 references." } @Article{Hoare71, Key = "Hoare", Author = "C.A.R. Hoare", Title = "Proof of a Program: Find", Journal = CACM, Year = 1971, Volume = 14, Number = 1, Month = Jan, Pages = "39-45" } @Article{Hoare72a, Key="Hoare", Author="C. A. R. Hoare", Title="Proof of correctness of data representations", Journal="Acta Informatica", Volume=1, Number=4, Year=1972, Pages="271-281", Annote="8 references." } @InCollection{Hoare72b, Key="Hoare", Author="C. A. R. Hoare", Title="Notes on data structuring", BookTitle="Structured Programming", Editor="Ole-J. Dahl, E. Dijkstra and C. A. R. Hoare", Publisher="Academic Press, Inc.", Address=NY, Year=1972, Pages="83-174", Annote="7 references." } @Article{Hoare78b, Key = "Hoare", Author = "C. A. R. Hoare", Title = "Some Properties of Predicate Transformers", Journal = JACM, Year = 1978, Volume = 25, Number = 3, Month = Jul, Pages = "461-480", Annote = "14 references." } @Article{Hoare86, Key = "Hoare", Author = "C. A. R. Hoare", Title = "Mathematics of Programming", Journal = "BYTE", Year = 1986, Month = Aug, Pages = "115-126" } @Article{Hoare87, Key = "Hoare", Author = "C. A. R. Hoare", Title = "An Overview of Some Formal Methods for Program Design", Journal = "Computer", Year = 1987, Month = Sep, Annote = "Very good tutorial on formal specifications." } @Book{Hoc-etal90, Key = "Hoc, {\em et al.}", Author = "J. M. Hoc and T. R. G. Green and R. Samurcay and D. J. Gilmore", Title = "Psychology of Programming", Publisher = "Academic Press", Year = 1990, Series = "Computers and People Series", Address = "San Diego, Calif.", Annote = "ISBN 0-12-350772-3. A collection of papers on various topics, inccluding language design and acquisition of programming and expert programming skills. Many references." } @InProceedings{Hoare96, key = "Hoare", author = "C. A. R. Hoare", title = "How Did Software Get So Reliable Without Proof?", editor = "Marie-Claude Gaudel and James Woodcock", volume = 1051, series = LNCS, pages = "1-17", booktitle = "FME '96: Industrial Benefit and Advances in Formal Methods", year = 1996, publisher = "Springer-Verlag", address = NY, month = Mar, annote = "A discussion of the role formal methods and proof play in making software reliable, and what people really do." } @Book{Hoffman-Krieg93, Key = "Hoffman \& Kreieg-Bruckner", Author = "Berthold Hoffman and Bernd Krieg-Bruckner", Title = "Program Development by Specification and Transformation: the PROSPECTRA Methodology, Language Family, and System", Publisher = "Springer-Verlag", Year = 1993, Series = "Lecture Notes in Computer Science", Address = NY, Annote = "ISBN 3-540-56733-X, 160 references" } @Article{Hofmann-etal98, key = {Hofmann, {\em et al.}}, author = {Martin Hofmann and Wolfgang Naraschewski and Martin Steffen and Terry Stroup}, title = {Inheritance of Proofs}, journal = TAPOS, year = 1998, volume = 4, number = 1, pages = {51-69}, annote = {A type theory for object-oriented languages in which the object types encode behavior. Subtyping is thus behavioral subtyping. 55 references.} } @Article{Hofstdede-vanderWeide92, key = "Hofstdede \& van der Weide", author = "A. H. M. ter Hofstdede and T. P. van der Weide", title = "Formalization of tehniques: chopping down the methodology jungle", journal = "Information and Software Technology", year = 1992, volume = 34, number = 1, pages = "57-65", month = Jan, annote = "Advocates formalization of informal methods instead of inventing new ones. Example of formalization of NAIM in the Predictor model. 27 references." } @InProceedings{Hogg91a, author = "John Hogg", title = "Islands: Aliasing Protection in Object-Oriented Languages", booktitle = "Proceedings of the {OOPSLA}~'91 Conference on Object-oriented Programming Systems, Languages and Applications", pages = "271--285", month = nov, year = "1991", keywords = "olit oopsla91", note = "Published as ACM SIGPLAN Notices, volume 26, number 11", } @Article{Hogg-etal92, Key = "Hogg, {\em et al.}", Author = "John Hogg and Doug Lea and Alan Wills and Dennis deChampeaux and Richard Holt", Title = "The {Geneva Convention} on the Treatment of Object Aliasing", Journal = "OOPS Messenger", Year = 1992, Volume = 3, Number = 2, Month = Apr, Pages = "11-16", Annote = "12 references." } @InCollection{Holland92, Key = "Holland", Author = "Ian M. Holland", Title = "Specifying Reusable Components Using Contracts", BookTitle = "ECOOP '92, European Conference on Object-Oriented Programming, Utrecht, The Netherlands", Publisher = "Springer-Verlag", Year = 1992, Editor = "Ole Lehrmann Madsen", Series = LNCS, Address = NY, Volume = 615, Pages = "287-308", Annote = "27 references" } @PhdThesis{Hollingsworth92, Key = "Hollingsworth", Author = "Joseph Eugene Hollingsworth", Title = "Software Component Design-for-Reuse: A Language-Independent Discipline Applied to Ada", School = "The Ohio State University", Year = 1992, Address = "Columbus,OH", Annote = "50 references." } @Book{Holzmann91, Key = "Holzmann", Author = "Gerard J. Holzmann", Title = "Design and validation of computer protocols", Publisher = "Prentice-Hall", Year = 1991, Address = "Englewood Cliffs, NJ", Annote = "PROMELA" } @Article{Holzman97, Key = "Holzmann", Author = "Gerard J. Holzmann", title = "The Model Checker {SPIN}", journal = IEEETSE, pages = "279-295", month = May, year = 1997, volume = 23, number = 5, annote = "82 references." } @Book{Horebeek-Lewi89, Key="Horebeek \& Lewi", Author="I. V. Horebeek and J. Lewi", Title="Algebraic Specifications in Software Engineering: An Introduction", Publisher="Springer-Verlag", Address=NY, Year=1989, Note="ISBN 3-540-51626-3, 0-387-51626-3" } @Article{Horwitz-Teitelbaum86, Key="Horwitz \& Teitelbaum", Author="Susan Horwitz and Tim Teitelbaum", Title="Generating Editing Environments Based on Relations and Attributes", Journal=TOPLAS, Volume=8, Number=4, Month=Oct, Year=1986, Pages="577-608", Annote="27 references." } @Article{Howden-Wieand94, Key = "Howden \& Wieand", Author = "W.E. Howden and B. Wieand", Title = "QDA-A Method For Systematic Informal Program Analysis", Journal = "IEEE Transactions on Software Engineering", Year = 1994, Volume = 20, Number = 6, Month = Jun, Pages = "445-462", Annote = "30 references." } @Article{Huang-Ravishankar98, key = {Huang \& Ravishankar}, author = {Yen-Min Huang and Chinya V. Ravishankar}, title = {Constructive Protocol Specification Using {Cicero}}, journal = IEEETSE, year = 1998, volume = 24, number = 4, month = Apr, pages = {252-267}, annote = {43 references.} } @Article{Huang98, key = {Huang}, author = {Riri Huang}, title = {Formalizing Hierarchical Object-Oriented Design Method}, journal = SIGSOFT, year = 1998, volume = 23, number = 5, month = Sep, pages = {82-88}, annote = {10 references.} } @InCollection{Huber-Jensen-Shapiro90, Key = "Huber \& Jensen \& Shapiro", Author = "Peter Huber and Kurt Jensen and Robert M. Shapiro", Title = "Hierarchies in {Coloured Petri Nets}", BookTitle = "Advances in Petra nets 1990", Publisher = "Springer-Verlag", Year = 1990, Editor = "G. Rosenberg", Series = LNCS, Volume = 483, Address = NY, Annote = "28 references." } @Book{Humphrey95, author = "Watts S. Humphrey", title = "A Discipline for Software Engineering", publisher = "Ad{\-d}i{\-s}on-Wes{\-l}ey", address = "Reading, MA, USA", year = "1995", ISBN = "0-201-54610-8", LCCN = "QA76.758 .H857 1995", series = "SEI series in software engineering", keywords = "software engineering", annote = "Some references." } @Article{Humphrey96, author = "Watts S. Humphrey", title = "Using a Defined and Measured Personal Software Process", key = "Humphrey", journal = "IEEE Software", year = 1996, volume = 13, number = 3, pages = "77-88", month = "May", annote = "The PSP. 9 references." } @InProceedings{Hung-Zucker91, Key = "Hung \& Zucker", Author = "Hing-Kai Hung and Jeffery I. Zucker", Title = "Semantics of Pointers, Referencing and Dereferencing with Intensional Logic", BookTitle = "Proceedings of the Sixth Annual Symposium on Logic in Computer Science", Year = 1991, Pages = "127-136", Organization = "IEEE Computer Society", Address = "10662 Los Vaqueros Circle, P.O. Box 3014, Los Alamitos, CA 90720-1264", Month = Jul, Annote = "25 references." } @InCollection{Hursch94, Key = "Hursch", Author = "Walter L. Hursch", Title = "Should Superclasses be Abstract?", BookTitle = "Object-Oriented Programming 8th European Conference, ECOOP '94 Bologna, Italy, Proceedings", Publisher = "Springer-Verlag", Year = 1994, Editor = "Mario Tokoro and Remo Pareschi", Series = LNCS, Volume = 821, Pages = "12-31", Address = NY, Month = Jul, Annote = "30 references." } @Book{Hutt94, key = "Hutt", author = "Andrew T. F. Hutt", title = "Object Analysis and Design: Comparison of Methods", publisher = "John Wiley \& Sons, Inc.", year = 1994, address = NY, annote = "A few key references." } @Misc{ISO-LOTOS89, Key = "ISO", Author = "International Standards Organization", Title = "LOTOS --- a formal description technique based on the temporal ordering of observational behaviour", HowPublished = "ISO IS 8807", Year = 1989 } @InCollection{Iida-Futatsugi-Diaconescu98, author = {Shusaku Iida and Kokichi Futatsugi and R\u{a}zvan Diaconescu}, title = {Component Based Algebraic Specifications}, booktitle = {Seventh OOPSLA Workshop on Behavioral Specifications of OO Business and System Specifications}, key = {Iida \& Futatsugi \& Diaconescu}, publisher = {Technical University of Munich, Institut f\"{u}r Informatik}, month = Aug, year = 1998, editor = {Hiam Kilov and Bernhard Rumpe and Ian Simmonds}, number = {TUM-I9820}, series = {Technical Report}, pages = {167-182}, note = {Cafe OBJ. 18 references.} } @Book{Ince88, Key = "Ince", Author = "D. Ince", Title = "An Introduction to Discrete Mathematics and Formal System Specification", Publisher = "Oxford University Press", Year = 1988 } @InCollection{Ishikawa-Tokuda-Mercer92, Key = "Ishikawa \& Tokuda \& Mercer", Author = "Y. Ishikawa and H. Tokuda and C.W. Mercer", Title = "Object-Oriented Real-Time Language Design: Constructs for Timing Constraints", BookTitle = "Real-Time Systems: Abstractions, Languages, and Design Methodologies", Publisher = "IEEE Computer Society Press", Year = 1992, Editor = "Krishna M. Kavi", Pages = "498-526", Address = "Los Alamitos, California", Month = Oct, Annote = "13 references." } @Article{Jaaksi98, key = {Jaaksi}, author = {Ari Jaaksi}, title = {A Method for Your First Object-Oriented Project}, journal = JOOP, year = 1998, volume = 10, number = 8, month = Jan, pages = {17-25}, annote = {18 references.} } @InProceedings{Jackson78, Key="Jackson", Author="M. A. Jackson", Title="Information Systems: Modelling, Sequencing and Transformations", BookTitle="3rd International Conference on Software Engineering", Organization=IEEE, Year=1978, Pages="72-81", Annote="Model systems as network of sequential processes communicating by serial data streams. Transformations for uniprocessors. 10 references." } @TechReport{Jackson88, Key="Jackson", Author="Daniel Jackson", Title="Composing Data \& Process Descriptions in the Design of Software Systems", Institution=MITLCS, Number="TR-419", Month=May, Year=1988, Annote="26 references." } @InProceedings{Jackson93, Key = "Jackson", Author = "Daniel Jackson", Title = "Analysis with Aspect", Booktitle= "Proceedings of the 1993 international symposium on Software testing and analysis", Year= 1993, Publisher =ACM, Address="New York", Annote = "ACM order number 59493. 13 references." } @Article{Jackson95, key = "Jackson", author = "Daniel Jackson", title = "Structuring {Z} Specifications with Views", journal = TOSEM, year = 1995, volume = 4, number = 4, pages = "365-389", month = Oct, annote = "Views allow one to describe a state space from different perspecitves. Notes that Z does not have real preconditions, only guards (enabling conditions). 30 references." } @Article{Jackson98, key = {Jackson}, author = {Michael Jackson}, title = {Will There Ever Be Software Engineering?}, journal = {IEEE Software}, year = 1998, volume = 15, number = 1, month = Jan, pages = {36-39}, annote = {Software developers must specialize by requirement and product. 2 references.} } @Article{Jackson-Jha-Damon98, Key = "Jackson \& Jha \& Damon", Author = "Daniel Jackson and Somesh Jha and Craig A. Damon", Title = "Isomorph-Free Model Enumeration: A New Method for Checking Relational Specifications", journal = TOPLAS, year = 1998, volume = 20, number = 2, month = Mar, pages = {302-343}, annote = {55 references.} } @InBook{Jackson84, key = "Jackson84", author = "M. I.\ Jackson", editor = "T.\ Anderson", title = "Software -- Requirements, Specification and Testing", chapter = "7. Pragmatic Aspects of Formal Specification", pages = "64--74", publisher = "Blackwell Scientific Publications", year = "1984", month = apr } @Book{Jackson95, author = {Michael Jackson}, title = {Software Requirements and Specification: a lexicon of practice, principles and prejudices}, publisher = {Addison-Wesley}, year = 1995, key = {Jackson}, address = {Wokhingham, England}, annote = {Many references.} } @Article{Jackson-Damon96, key = "Jackson & Damon", author = {Daniel Jackson and Craig A. Damon}, title = "Elements of Style: Analyzing a Software Design Feature with a Counterexample Detector", journal = IEEETSE, year = 1996, volume = 22, number = 7, month = Jul, pages = {484-495}, annote = {37 references.} } @Article{Jackson98, key = {Jackson}, author = {Daniel Jackson}, title = {An Intermediate Design Language and its Analysis}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {121-130}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {The language Nitpick/NP. 22 references.} } @InProceedings{Jacobs-etal98, key = {Jacobs, {\em et al.}}, author = {Bart Jacobs and Joachim van der Berg and Marieke Huisma and Martijn van Berkum and Ulrich Hensel and Hendrik Tews}, title = {Reasoning about {Java} Classes (Preliminary Report)}, BookTitle = "OOPSLA '98 Conference Proceedings", Series = SIGPLAN, Volume = "33(10)", Month = Oct, Year = 1998, organization = ACM, pages = {329-340}, annote = {The LOOP tool, which is based on PVS, can be used to prove some properties of Java classes. 26 references.} } @InCollection{Jacobs96a, author = "Bart P. F Jacobs", title = "Automata and behaviours in categories of processes", booktitle = "120", pages = "14", publisher = "Centrum voor Wiskunde en Informatica (CWI)", address = "ISSN 0169-118X", month = feb # " 27", year = "1996", keywords = "automaton, behaviour, realization, process, replication.", url = "http://www.cwi.nl/pub/CWIreports/AP/CS-R9607.ps.Z", abstract = "An early result of Goguen describes the fundamental adjunction between categories of deterministic automata and their behaviours. Our first step is to redefine (morphisms in) these categories of automata and behaviours so that a restriction in Goguen's approach can be avoided. Subsequently we give a coalgebraic analysis of this behaviour-realization adjunction; it yields a second generalization to other types of (not only deterministic) automata (and their behaviours). We further show that our (redefined) categories of automata and behaviours support elementary process combinators like renaming, restriction, parallel composition, replication and feedback (some of which also occur, for example, in the $\pi$-calculus). One of the main contributions is that replication $!P$ is defined for an automaton $P$ such that $!P$ is the terminal coalgebra $!P \stackrel{\cong}{\rightarrow} P \| !P$ of the functor $P \| (-)$ ``compose with $P$''. The behaviour functor from automata to their behaviours preserves these process combinators, so that the behaviour of a complex automaton can be understood from the behaviour of its components.", note = "CS-R9607" } @Article{Jacobs96b, key = "Jacobs", author = "B. Jacobs", title = "Coalgebraic Specifications and Models of Deterministic Hybrid Systems", journal = "Lecture Notes in Computer Science", volume = "1101", pages = "520--535", year = "1996", url = "http://www.cwi.nl/pub/CWIreports/AP/CS-R9609.ps.Z" } @InProceedings{Jacobs96c, key = "Jacobs", author = "Bart Jacobs", editor = "P. Cointe", title = "Inheritance and Cofree Constructions", booktitle = "Proceedings ECOOP '96", series = "LNCS 1098", pages = "210--231", publisher = "Springer-Verlag", address = "Linz, Austria", month = jul, year = "1996", keywords = "olit ecoop96", URL = "http://www.cwi.nl/pub/CWIreports/AP/CS-R9564.ps.Z" } @InCollection{Jacobs96d, key = "Jacobs", author = "Bart P. F. Jacobs", title = "Objects and classes, coalgebraically", editor = "B. Freitag and C. B. Jones and C. Lengauer and H.J. Schek", booktitle = "Object-Orientation with Parallelism and Persistence", pages = "83-103", publisher = "Kluwer Academic Publishers", address = "Boston", year = "1996", keywords = "object, class, (terminal) coalgebraic, specification, bisimulation.", url = "http://www.cwi.nl/pub/CWIreports/AP/CS-R9536.ps.Z", abstract = "The coalgebraic perspective on objects and classes in object-oriented programming is elaborated: objects consist of a (unique) identifier, a local state, and a collection of methods described as a coalgebra; classes are coalgebraic (behavioural) specifications of objects. The creation of a ``new'' object of a class is described in terms of the terminal coalgebra satisfying the specification. We present a notion of ``totally specified'' class, which leads to particularly simple terminal coalgebras. We further describe local and global operational semantics for objects. Associated with the local operational semantics is a notion of bisimulation (for objects belonging to the same class), expressing observational indistinguishability." } @InCollection{Jacobs97, Key = "Jacobs", Author = "Bart Jacobs", Title = "Behavior-Refinement of Coalgebraic Specifications with Coinductive Correctness Proofs", BookTitle = "{TAPSOFT '97}: Theory and Practice of Software Development, 7th International Joint Conference {CAAP/FASE}, Lille, France", Publisher = "Springer-Verlag", Year = 1997, Editor = "Michel Bidoit and Max Dauchet", Series = LNCS, Volume = 1214, Pages = "787-802", Address = NY, Annote = "25 references." } @Book{Jacobson-Booch-Rumbaugh99, author = {Ivar Jacobso and Grady Booch and James Rumbaugh}, title = {The Unified Software Development Process}, publisher = {Addison Wesley Longman}, year = 1999, key = {Jacobson \& Booch \& Rumbaugh}, series = {Object Technology Series}, address = {Reading, Mass.} } @Book{Jacobson-Griss-Jonsson97, key = {Jacobson \& Griss \& Jonsson}, author = {Ivar Jacobson and Martin Griss and Patrik Jonsson}, title = {Software Reuse : Architecture Process and Organization for Business Success}, publisher = {Addison-Wesley}, year = 1997 } @Article{Jaffe-etal91, Key = "Jaffe {\em et al.}", Author = "Matthew S. Jaffe and Nancy G. Leveson and Mats P. E. Heimdahl and Bonnie E. Melhart", Title = "Software Requirements Analysis for Real-Time Process-Control Systems", Journal = IEEETSE, Year = 1991, Volume = 17, Number = 3, Month = Mar, Pages = "241-258", Annote = "27 references." } @Book{Jalote91, key = "Jalote", author = "Pankaj Jalote", title = "An Integrated Approach to Software Engineering", publisher = "Springer-Verlag", year = 1991, address = NY, annote = "Many references." } @Book{Jalote97, key = "Jalote", author = "Pankaj Jalote", title = "An Integrated Approach to Software Engineering", publisher = "Springer-Verlag", year = 1997, address = NY, edition = "Second", annote = "Many references." } @Proceedings{Jazayeri-Schauer97, title = {Software Engineering --- ESCE/FSE '97: 6th European Software Engineering Conference Held Jointly with the 5th ACM SIGSOFT Symposium on the Foundations of Software Engineering Zurich, Switzerland, September 1997}, booktitle = {Software Engineering --- ESCE/FSE '97: 6th European Software Engineering Conference Held Jointly with the 5th ACM SIGSOFT Symposium on the Foundations of Software Engineering Zurich, Switzerland, September 1997}, year = 1997, key = {Jazayeri \& Schauer}, editor = {Mehdi Jazayeri and Helmut Schauer}, volume = 1301, series = LNCS, publisher = {Springer-Verlag}, address = NY } @InProceedings{Jeffreson-Kamin86, Key="Jefferson \& Kamin", Author="Stanley Jefferson and Samuel Kamin", Title="Executable specifications with quantifiers in the fase system", BookTitle="Conference record of the Thirteenth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, St. Petersburg Beach, Florida", Year=1986, Organization=ACM, Month=Jan, Pages="318-326" } @Article{Jeffords-Heitmeyer98, key = {Jeffords \& Heitmeyer}, author = {Ralph Jeffords and Constance Heitmeyer}, title = {Automatic Generation of State Invariants from Requirements Specifications}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {56-69}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {Generated from SCR requirements specifications. 34 references.} } @InCollection{Jeng-Cheng93, Key="Jen \& Cheng", Author="J. J. cheng and B. H. C. Cheng", Title="Using Formal Methods to construct a Software Component Library", Journal=LNCS, Number=717, Editor="Ian SommrVille and Manfred Paul", Publsiher="Springer-Verlag", Address=NY, Year=1993, Note="Software Engineering= ESEC '93. 4th European Software Engineering Conference, Germany, Sep 93. Proceedings", Page="397-417", Annote="34 references" } @InCollection{Jensen90a, Key = "Jensen", Author = "Kurt Jensen", Title = "{Coloured Petri Nets}: A High Level Language for System Analysis and Design", BookTitle = "Advances in Petri Nets 1990", Publisher = "Springer-Verlag", Year = 1991, Editor = "G. Rozenberg", Series = LNCS, Volume = 483, Note = "Also a technical report from the CS Dept, Aarhus University, DAIMI PB-338, Nov. 1990", Annote = "64 references." } @TechReport{Jensen90b, Key = "Jensen", Author = "Kurt Jensen", Title = "Application and Theory of {Colored Petri Nets}, Reference List", Institution = "Meta Software and Aarhus University", Year = 1990, Month = May, Annote = "37 references." } @Article{Johnson-etal89, Key="Johnson, {\em et al.}", Author="Jeff Johnson and Teresa L. Roberts and William Verplank and David C. Smith and Charles H. Irby and Marian Beard and Kevin Mackey", Title="The Xerox Star: A Retrospective", Journal="Computer", Volume=22, Number=9, Month=Sep, Year=1989, Pages="11-28", Annote="Discussion of design issues, user-interface. 9 references, plus some additional readings." } @Article{Johnson92, Key = "Johnson", Author = "Ralph E. Johnson", Title = "Documenting Frameworks using Patterns", Journal = SIGPLAN, Volume = 27, Number = 10, Month = Oct, Year = 1992, Pages = "63-76", Note = "{\em OOPSLA '92 Proceedings}, Andreas Paepcke (editor).", Annote = "13 references." } @Article{Johnson97, key = {Johnson}, author = {Ralph E. Johnson}, title = {Frameworks = (Components + Patterns)}, journal = CACM, year = 1997, volume = 40, number = 10, month = Oct, pages = {39-42}, annote = {12 references.} } @Article{Jones-Middelburg94, key = "Jones \& MIddelburg", author = "Cliff B.\ Jones and Kees Middelburg", title = "A Typed Logic of Partial Functions Reconstructed Classically", journal = "Acta Informatica", volume = "31", number = "5", pages = "399-430", year = "1994", annote = "This paper gives a comprehensive description of the typed version of the logic LPF which is basic to formal specification and verified design in VDM. It provides an overview of the extensions needed to deal with recursively defined functions, the data types used in VDM, ect. and it examines some of them in detail. It is shown how this non-classical logic - and the extensions - can be reconstructed classically by embeddings into classical infinitary logic.", } @Article{Jones-Schwarz80, Key="Jones \& Schwarz", Author="A. K. Jones and P. Schwarz", Title="Experience Using Multiprocessor Systems--A Status Report", Journal=ACMCS, Volume=12, Year=1980, Pages="121-165" } @Book{Jones-Shaw90, Key = "Jones \& Shaw", Author = "Cliff B. Jones and Roger C. Shaw", Title = "Case Studies in Systematic Software Development", Publisher = "Prentice-Hall", Year = 1990, Series = "International Series in Computer Science", Address = "Englewood Cliffs, NJ" } @Book{Jones-etal91, Key="Jones, {\em et al.}", title = "{\sl mural}: A Formal Development Support System", author = "C. B. Jones and K. D. Jones and P. A. Lindsay and R. Moore", publisher = "Springer-Verlag", year = "1991", Annote = "ISBN 3-540-19651-X" } @Article{Jones79, Key="Jones", Author="Cliff B. Jones", Title="Constructing a Theory of a Data Structure as an Aid to Program Development", Journal="Acta Informatica", Volume=11, Number=2, Pages="119-137", Year=1979, Annote="22 references." } @Book{Jones80, Key="Jones", Author="Cliff B. Jones", Title="Software development : a rigorous approach", Publisher=Prentice-Hall, Series="International Series in Computer Science", Address="Englewood Cliffs, N.J.", Year=1980 } @TechReport{Jones86, Key="Jones", Author="Cliff B. Jones", Title="Program Specification and Verification in {VDM}", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Number="UMCS-86-10-5", Month=Nov, Year=1986, Annote="49 references." } @Book{Jones86b, Key="Jones", Author="Cliff B. Jones", Title="Systematic software development using {VDM}", Publisher=Prentice-Hall, Series="International Series in Computer Science", Address="Englewood Cliffs, N.J.", Year=1986 } @TechReport{Jones87, Key="Jones", Author="Cliff B. Jones", Title="Teaching Notes for Systematic Software Development Using {VDM}", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Month=Dec, Year=1987, Number="UMCS-87-12-9", Annote="160 references." } @Book{Jones90, Key="Jones", Author="Cliff B. Jones", Title="Systematic Software Development Using {VDM}", Publisher="Prentice Hall", Series="International Series in Computer Science", Address="Englewood Cliffs, N.J.", Edition = "Second", Year=1990 } @TechReport{Jones91, Key = "Jones", Author = "Kevin D. Jones", Title = "{LM3}: A {Larch} Interface Language for {Modula-3}: A Definition and Introduction: Version 1.0", Institution = DECSRC, Year = 1991, Number = 72, Month = Jun, Address = "130 Lytton Avenue Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote = "13 references." } @Book{Jones91c, Key="Jones", Author="Capers Jones", Title="Applied Software Measurement: Assuring Productivity and Quality", Publisher="McGraw-Hill", Address=NY, Year=1991, Note="ISBN 0-07-032813-7" } @InCollection{Jones92, Key="Jones", Author="K. D. Jones", Title="A Semantics for Larch/Modula-3 Interface Language", Editor="Ursala Martin and Jeanete M. Wing", BookTitle="First International Workshop on Larch, Dedham 1992", Publisher="Springer-Verlag", Year=1992, Pages="142-158", Annote="10 references" } @TechReport{Jones92b, Key = "Jones", Author = "C. B. Jones", Title = "An Object-Based Design Method for Concurrent Programs", Institution = "Department of Computer Science, University of Manchester", Year = 1992, Number = "UMCS-92-12-1", Address = "Manchester M13 9PL, England", Annote = "78 references." } @InCollection{JonesCliff93, Key = "Jones", Author = "C.B. Jones", Title = "Reasoning about Interference in an Object-Based Design Method", BookTitle = "Industrial-Strength Formal Methods, First International Symposium of Formal Methods Europe, Odense, Denmark", Publisher = "Springer-Verlag", Year = 1993, Editor = "J.C.P. Woodcock and P.G. Larsen", Series = LNCS, Volume = 670, Pages = "1-18", Address = NY, Month = Apr, Annote = "48 references." } @article{Jones95e, author = "C.B. Jones", title = "Partial functions and logics: A warning", journal = IPL, volume = 54, number = 2, pages = "65--67", year = 1995 } @InCollection{Jonkers91, Key = "Jonkers", Author = "H. B. M. Jonkers", Title = "Upgrading the pre- and postcondition technique", BookTitle = "VDM '91 Formal Software Development Methods 4th International Symposium of VDM Europe Noordwijkerhout, The Netherlands, Volume 1: Conference Contributions", Publisher = "Springer-Verlag", Year = 1991, Editor = "S. Prehn and W. J. Toetenel", Series = LNCS, Volume = 551, Pages = "428-456", Address = NY, Month = Oct, Annote = "12 references." } @Article{Jonsson94, Key = "Jonsson", Author = "Bengt Jonsson", Title = "Compositional Specification and Verification of Distributed Systems", Journal = TOPLAS, Year = 1994, Volume = 16, Number = 2, Month = Mar, Pages = "259-303", Annote = "43 references." } @InCollection{Jouannaud91, Key = "Jouannaud", Author = "Jean-Pierre Jouannaud", Title = "Executable Higher-order Algebraic Specifications", BookTitle = "STACS 91, 8th Annual Symposium on Theoretical Aspects of Computer Science, Hamburg, Germany", Publisher = Springer-Verlag, Year = 1991, Editor = "C. Choffrut and M. Jantzen", Series = LNCS, Volume = 480, Pages = "16-25", Address = NY, Month = Feb } @InCollection{Jungclaus-Saake-Sernadas91, Key = "Jungclaus \& Saake \& Sernadas", Author = "R. Jungclaus and G. Saake and C. Sernadas", Title = "Formal Specification of Object Systems", BookTitle = "TAPSOFT '91, Proceedings of the International Joint Conference on Theory and Practice of Software Development, Brighton, UK, Volume 2, Advances in Distributed Computing (ADC) and Colloquium on Combining Paradigms for Software Development (CCPSD)", Publisher = "Springer-Verlag", Year = 1991, Editor = "S. Abramsky and T. S. E. Maibaum", Series = LNCS, Volume = 494, Pages = "60-82", Address = NY, Month = Apr } @TechReport{Kahr-Sannella-Tarlecki95, author = "Stefan Kahrs, Donald Sannella and Andrzej Tarlecki", title = "The definition of {Extended ML}: a gentle introduction", institution = "Laboratory for Foundations of Computer Science, University of Edinburgh", year = 1995, key = "Kahr & Sannella & Tarlecki", number = "ECS-LFCS-95-322", month = Oct, note = "To appear in {\it Theoretical Computer Science}", URL = "http://www.dcs.ed.ac.uk/%7Edts/eml/gentle-tcs.ps", annote = "50 references" } @Book{Kaldewau90, Key = "Kaldewau", Author = "Anne Kaldewau", Title = "Programming: the derivation of algorithms", Publisher = "Prentice-Hall", Year = 1990, Series = "International Series in Computer Science", Address = "Englewood Cliffs, NJ" } @Article{Kamath-Smith92, Key = "Kamath \& Smith", Author = "Y. Kamath and J. Smith", Title = "Experiences in C++ and O-O Design", Journal = "Journal of Object-Oriented Programming", Volume = 5, Year = 1992, Pages = "23-28", Annote = "7 references." } @Unpublished{Kamin-Kraus93, Key = "Kamin \& Kraus", Author = "Samuel Kamin and Tim Kraus", Title = "Executable Specifications of C++ Classes", Month = Oct, Year = 1993, Note = "submitted for publication (obtained from the authors)", Annote = "30 references." } @InProceedings{Kamin80, Key="Kamin", Author="S. Kamin", Title="Final Data Type Specifications: A New Data Type Specifications Method", BookTitle="Conference Record of the Seventh Annual ACM Symposium on Principles of Programming Languages, Las Vegas, Nevada", Organization="Association of Computing Machinery", Year=1980, Month=Jan, Pages="131-138" } @InProceedings{Kamin85, Key="Kamin", Author="S. Kamin", Title="Final Data Types and Their Specifications", Journal=TOPLAS, Volume=5, Number=1, Month=Jan, Year=1983, Pages="97-121" } @InProceedings{Kaplan-Deutsch91, Key = "Kaplan \& Deutsch", Author = "S. Kaplan and G. Deutsch", Title = "Algebraic Semantics of Real-Time Process Specifications", BookTitle = "Proceedings of the Second International Conference on Algebraic Methodology and Software Technology", Year = 1991, Pages = "67-81", Organization ="The University of Iowa, Department of Computer Science", Address = "Iowa City, Iowa", Month = "May", Annote = "17 references." } @TechReport{Kapur-Mandayam80, Key="Kapur \& Mandayam", Author="Deepak Kapur and Srivas Mandayam", Title="Expressiveness of the Operation Set of a Data Abstraction", Institution=MITLCS, Type="Computation Structures Group Memo", Number="179-1", Month=Jan, Year=1980, Note="A condensed version apears in the Conference Record of the Seventh Annual ACM Symposium on Principles of Programming Languages.", Annote="Expressive completeness and expressive richness of operation sets. 18 references." } @TechReport{Kapur-Zhang89, Key="Kapur \& Zhang", Author="Deepak Kapur and Hantao Zhang", Title="RRL: Rewrite Rule Laboratory User's Manual", Institution="Department of Computer Science, The University of Iowa", Address="Iowa City, Iowa", Number="89-03", Month=May, Year=1989, Annote="52 references." } @TechReport{Kapur80, Key="Kapur", Author="Deepak Kapur", Title="Towards a Theory for Abstract Data Types", Institution=MITLCS, Year=1980, Number="TR-237", Month=May, Annote="Algebraic and behavioral approach to data type definitions. Hierarchical specification language. 77 references." } @Article{Katrib-Coira97, key = {Katrib \& Coira}, author = {Miguel Katrib and Jes\'{u}s Coira}, title = {Improving Eiffel Assertions Using Quantified Iterators}, journal = JOOP, year = 1997, volume = 10, number = 7, month = Nov, pages = {35-43}, annote = {Adds quantifiers to Eiffel. 11 references.} } @Article{Katzenelson79, Key="Katzenelson", Author="J. Katzenelson", Title="Clusters and Dialogues for Set Implementations", Journal=IEEETSE, Year=1979, Month=May, Volume="SE-5", Number=3, Pages="256-275" } @Article{Kaufmann-Moore97, key = {Kaufmann \& Moore}, author = {Matt Kaufmann and J S. Moore}, title = {An Industrial Strength Theorem Prover for a Logic Based on {Common Lisp}}, journal = IEEETSE, year = 1997, volume = 23, number = 4, month = Apr, pages = {203-213}, annote = {ACL2 is a successor to the Boyer-Moore prover. 42 references.} } @InProceedings{Keller-Schauer98, key = {Keller \& Schauer}, author = {Rudolf K. Keller and Reinhard Schauer}, title = {Design Components: Towards Software Composition at the Design Level}, booktitle = {Proceedings of the 1998 International Conference on Software Engineering: ICSE 98, Kyoto, Japan}, year = 1998, organization = IEEE, address = {Los Alamitos, California}, month = Apr, pages = {302-311}, annote = {25 references.} } @Article{Kemerer98, key = {Kemerer}, author = {Chris F. Kemerer}, title = {Progress, Obstacles, and Opportunities in Software Engineering Economics}, journal = CACM, year = 1998, volume = 41, number = 8, month = Aug, pages = {63-66}, annote = {12 references.} } @InProceedings{Kent97, key = {Kent}, author = {Stuart Kent}, title = {Constraint Diagrams: Visualizing Invariants in Object-Oriented Models}, BookTitle = "Conference Proceedings of OOPSLA '97, Atlanta", Series = SIGPLAN, Volume = "32(10)", Month = Oct, Year = 1997, organization = ACM, pages = {327-341}, annote = {18 references.} } @Book{Kernighan-Pike84, Key = "Kernighan \& Pike", Author = "Brian W. Kernighan and Rob Pike", Title = "The UNIX Programming Environment", Publisher = "Prentice-Hall", Year = 1984, Series = "Prentice-Hall Software Series", Address = "Englewood Cliffs, NJ", Annote = "0 references but bibliographic notes at end of each chapter." } @Book{Kernighan-Pike99, Key = "Kernighan \& Pike", Author = "Brian W. Kernighan and Rob Pike", Title = "The Practice of Programming", Publisher = "Addison-Wesley", Year = 1999, Series = "Addison-Wesley Professional Computing Series", Address = "Englewood Cliffs, NJ", Annote = "0 references but there is a supplementary reading section at the end of each chapter." } @Book{Kernighan-Plauger76, Key = "Kernighan \& Plauger", Author = "Brian W. Kernighan and P. J. Plauger", Title = "Software Tools", Publisher = "Addison-Wesley", Year = 1976, Address = "Reading, MA", Annote = "0 references but bibliographic notes at end of each chapter." } @Book{Kernighan-Plauger78, Key = "Kernighan \& Plauger", Author = "Brian W. Kernighan and P. J. Plauger", Title = "The Elements of Programming Style", Publisher = "McGraw-Hill", Year = 1978, Address = NY, Edition = "Second", Annote = "5 references." } @InCollection{Khosla-Maibaum87, author = "S. Khosla and T. S. E. Maibaum", title = "The Prescription and Description of State Based Systems", key = "Khosla \& Maibaum", booktitle = "Temporal Logic in Specification", publisher = "Springer-Verlag", year = 1987, editor = "B. Banieqbal and H. Barringer and A. Puneli", volume = 398, series = LNCS, pages = "243-294" } @Article{Kiczales-Lamping92, Key = "Kiczales \& Lamping", Author = "Gregor Kiczales and John Lamping", Title = "Issues in the Design and Documentation of Class Libraries", Journal = SIGPLAN, Volume = 27, Number = 10, Month = Oct, Year = 1992, Pages = "435-451", Note = "{\em OOPSLA '92 Proceedings}, Andreas Paepcke (editor).", Annote = "13 refrences." } @InCollection{Kiczales93, Key = "Kiczales", Author = "Gregor Kiczales", Title = "Traces (A Cut at the ``Make Isn't Generic'' Problem)", BookTitle = "Object Technologies for Advanced Software", Publisher = "Springer-Verlag", Year = 1993, Editor = "Shojiro Nishio and Akinori Yonezawa", Series = LNCS, Volume = 742, Pages = "27-42", Month = Aug, Annote = "16 references." } @Article{Kiczales96, author = {Gregor Kiczales}, title = {Beyond the Black Box: Open Implementation}, journal = {IEEE Software}, year = 1996, key = {Kiczales}, volume = 13, number = 1, month = {Jan}, pages = {8-11} } @Article{Kifer-Wu93, Key = "Kifer \& Wu", Author = "Michael Kifer and James Wu", Title = "A Logic for Programming with Complex Objects", Journal = "Journal of Computer and System Sciences", Volume = 47, Year = 1993, Pages = "77-120", Annote = "35 refrences." } @Article{Kilov94, Key = "Kilov", Author = "H. Kilov", Title = "Formal Methods and Standards", Journal = "Software Engineering Notes ", Year = 1994, Volume = 19, Number = 3, Month = Jul, Pages = 40, Annote = "1 reference." } @Book{Kilov-Harvey96, key = {Kilov Harvey}, editor = {Haim Kilov and William Harvey}, title = {Object-Oriented Behavioral Specifications}, booktitle = {Object-Oriented Behavioral Specifications}, publisher = {Kluwer Academic Publishers}, year = 1996, series = {Kluwer International Series in Engineering and Computer Science}, address = {Boston}, annote = {Many references.} } @TechReport{Klarlund90, Key="Klarlund", Author="Nils Klarlund", Title="Progress Measures and Finite Arguments for Infinite Computations", Institution="Department of Computer Science, Cornell University", Address="Ithaca, New York", Number="90-1153", Month=Sep, Year=1990, Annote="Progress measures for specification and verification of problems involving nondeterminism, fairness, and liveness properties. 52 references." } @InCollection{Kligerman-Stoyenko92, Key = "Kligerman \& Stoyenko", Author = "E. Kligerman and A.D. Stoyenko", Title = "Real-Time Euclid: A language for Reliable Real-Time Systems", BookTitle = "Real-Time Systems: Abstractions, Languages, and Design Methodologies", Publisher = "IEEE Computer Society Press", Year = 1992, Editor = "Krishna M. Kavi", Pages = "455-463", Address = "Los Alamitos, California", Month = Oct, Annote = "20 references." } @InCollection{Klop90, Key = "Klop", Author = "Jan Willem Klop", Title = "Term Rewriting systems: from Church-Rosser to Knuth-Bendix and beyond", BookTitle = "17th International Colloquium on Automata, Languages, and Programming (ICALP), Warwick, England", Publisher = Springer-Verlag, Year = 1990, Editor = "M. S. Paterson", Series = LNCS, Pages = "350-369", Address = NY, Month = Jul } @Article{Knuth74, Key="Knuth", Title="Structured Programming with Goto Statements", Author="D. E. Knuth", Journal=ACMCS, Year=1974, Month=Dec, Volume=6, Number=4, Pages="261-301" } @Article{Kozacynski-Booch98, key = {Kozacynski \& Booch}, author = {Wojtek Kozacynski and Grady Booch}, title = {Component-Based Software Engineering}, journal = {IEEE Software}, year = 1998, volume = 15, number = 5, month = Sep, pages = {34-36}, annote = {Guest editor's introduction with some suggestions for further reading.} } @Article{Konikowska-Tarlecki-Blikle91, author = "B. Konikowska and A. Tarlecki and A. Blikle", title = "A three-valued logic for software specification and validation", key = "Konikowski \& Tarlecki \& Blikle", journal = "Fundamenta Informaticae", year = 1991, volume = "XIV", pages = "411-453" } @Article{Korel-Al-Yami98, key = {Korel \& Al-Yami}, author = {Bogdan Korel and Ali M. Al-Yami}, title = {Automated Regression Test Generation}, journal = SIGSOFT, year = 1998, volume = 23, number = 2, month = Mar, pages = {143-152}, note = {ISSTA 98: Proceedings of the ACM SIGSOFT Internatioal Symposium on Software Testing and Analysis}, annote = {26 references.} } @Article{Korson-McGregor90, Key = "Korson \& McGregor", Author = "Tim Korson and John D. McGregor", Title = "Understanding Object-Oriented: A Unifying Paradigm", Journal = CACM, Year = 1990, Volume = 33, Number = 9, Month = Sep, Pages = "40-60", Annote = "29 references." } @Article{Kowaltowski77, Key = "Kowaltowski", Author = "T. Kowaltowski", Title = "Axiomatic approach to side effects and general jumps", Journal = "Acta Informatica", Year = 1977, Volume = 7, Pages = "357-360" } @InCollection{Koymans92, Key="Koymans", Author="Ron Koymans", Title="Specifying Message Passing and Time-Critical Systems with Temporal Logic", Series="Lecture Notes in Computer Science", Editor="G. Goos and J. Hartmanis", Number=651, Publisher="Springer-Verlag", Address="Berlin Heidelberg", Annote="115 references" } @InCollection{Kozen-Tiuryn90, Key = "Kozen \& Tiuryn", Author = "Dexter Kozen and J. Tiuryn", Booktitle = "Handbook of Theoretical Computer Science", Title = "Logics of Programs", Chapter = 14, Publisher = MITP, Year = 1990, Editor = "J. van Leewen", Pages = "789-840", Volume = "B: Formal Models and Semantics", Address = NY, Annote = "Discussion of dynamic logic. 172 references." } @TechReport{Kraus87, Key = "Kraus", Author = "Timothy Kraus", Title = "The FASE3 System for Executable Data Type Specification", Institution = "Computer Science Department, Univ. of Illinois at Urbana-Champaign", Year = 1987, Number = "UIUCDCS-R-87-1405", Month = Dec } @Article{Krishnamurthi-Felleisen98, key = {Krishnamurthi \& Felleisen}, author = {Shriram Krishnamurthi and Matthias Felleisen}, title = {Toward a Formal Theory of Extensible Software}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {88-98}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {Allowing clients to customize software without access to the source. Forces abstraction and delegation. 32 references.} } @Article{Krueger92, Key = "Krueger", Author = "Charles W. Krueger", Title = "Software Reuse", Journal = ACMCS, Year = 1992, Volume = 24, Number = 2, Month = Jun, Pages = "131-183", Annote = "105 references." } @Book{Krzysztof-Olderog91, Key = "Krzysztof \& Olderog", Author = "R. A. Krzysztof and Ernst-RudigerOlderog", Title = "Verification of Sequential and Concurrent Programs", Publisher = "Springer-Verlag", Year = 1991, Series = "Texts and Monographs in Computer Science", Address = NY } @Book{Kubiak-Rudzinski-Sokolowski91, Key = "Kubiak \& Rudzinski \& Sokolowski", Author = "Ryszard Kubiak and Roman Rudzinski and Stefan Sokolowski", Title = "An Introduction to Programming with Specifications: A Mathematical Approach", Publisher = "Academic Press", Year = 1991, Volume = 35, Series = "A.P.I.C.", Address = NY, Annote = "Introduction to Computer Science for mathematically minded people. Some introduction to Standard ML towards the end. 34 references." } @InCollection{Kuehne99, key = {K\"{u}hne}, author = {Thomas K\"{u}hne}, title = {Internal Iteration Externalized}, booktitle = {ECOOP '99 --- Object-Oriented Programming 13th European Conference, Lisbon Portugal}, publisher = {Springer-Verlag}, year = 1999, editor = {Rachid Guerraoui}, volume = 1628, series = LNCS, address = NY, month = Jun, pages = {329-350}, annote = {38 references.} } @Unpublished{Kung89, Key = "Kung", Author = "Chenho Kung", Title = "Process Inteface Modeling and Consistency Checking", Note = "To appear in JSS", Annote = "9 references", Month = Sep, Year = 1989 } @TechReport{Ladkin89, Key="Ladkin", Author="Peter B. Ladkin", Title="The Possibility of an Executable Specification Language", Institution="International Computer Science Institute", Address="1947 Center St., Suite 600, Berkeley, Calif. 94704", Number="TR-89-040", Month=Jul, Year=1989, Annote="40 references." } @Article{Lamb90, Key = "Lamb", Author = "D. A. Lamb", Title = "Specification of Iterators", Journal = IEEETSE, Year = 1990, Volume = 16, Number = 12, Month = Dec, Pages = "1352-1360", Annote = "9 references." } @InProceedings{Lamping-Abadi94, key = {Lamping \& Abadi}, author = "John Lamping and Mart{\'i}n Abadi", editor = "M. Tokoro and R. Pareschi", title = "Methods as Assertions", booktitle = "Proceedings ECOOP '94", series = "LNCS 821", pages = "60--80", publisher = "Springer-Verlag", address = "Bologna, Italy", month = jul, year = "1994", keywords = "olit ecoop94" } @Article{Lamping-Abadi95, author = {John Lamping and Mart{\'i}n Abadi}, title = {Methods as Assertions}, journal = {Theory and Practice of Object Systems}, year = 1995, key = {Lamping \& Abadi}, volume = 1, number = 1, pages = {5-18}, annote = {18 references.} } @Article{Lamping93, Key = "Lamping", Author = "John Lamping", Title = "Typing the Specialization Interface", Journal = SIGPLAN, Volume = 28, Number = 10, Month = Oct, Year = 1993, Pages = "201-214", Note = "{\em OOPSLA '93 Proceedings}, Andreas Paepcke (editor).", Annote = "12 refrences." } @InCollection{Lamping94, Key = "Lamping", Author = "John Lamping", Title = "Methods as Assertions", BookTitle = "Object-Oriented Programming 8th European Conference, ECOOP '94 Bologna, Italy, Proceedings", Publisher = "Springer-Verlag", Year = 1994, Editor = "Mario Tokoro and Remo Pareschi", Series = LNCS, Volume = 821, Pages = "60-80", Address = NY, Month = Jul, Annote = "18 references." } @Article{Lamport90, Key="Lamport", Author="Leslie Lamport", Title="{\em win\/} and {\em sin\/}: Predicate Transformers for Concurrency", Journal=TOPLAS, Volume=12, Number=3, Month=Jul, Year=1990, Pages="306-428", Annote="Weakest invariant and strongest invariant transformers for reasoning about concurrent programs for which the grain of atomicity is unspecified. 14 references." } @TechReport{Lamport91, Key = "Lamport", Author = "Leslie Lamport", Title = "The Temporal Logic of Actions", Institution = DECSRC, Year = 1991, Number = 79, Month = Dec, Address = "130 Lytton Avenue Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote = "A logic for specifying and reasoning about concurrent systems. 23 references." } @Article{Lamport94, Key = "Lamport", Author = "Leslie Lamport", Title = "The Temporal Logic of Actions", Journal = TOPLAS, Year = 1994, Volume = 16, Number = 3, Month = May, Pages = "872-923", Annote = "34 references." } @InCollection{Langmaack83, author = {H. Langmaack}, title = {Aspects of Programs with Finite Modes}, booktitle = {Foundations of Computation Theory}, key = {Langmaack}, publisher = {Springer-Verlag}, year = 1983, editor = {M. Karpinski}, number = 158, series = LNCS, address = NY, pages = {241-254}, annote = {Discusses transforming a program with side-effects in expressions to one in which only simple side effect statements are used (no nested expressions).} } @InCollection{Langmaack85, Key="Langmaack", Author="H. Langmaack", Title="A New Transformational Approach to Partial Correctness Proof Calculi for Algol 68-like Programs with Finite Modes and Simple Side Effects", BookTitle="Topics in the Theory of Computation", Editor="Marek Karpinski and Jan van Leeuwen", Publisher="Elsevier North-Holland, Inc.", Series="Annals of Discrete Mathematics", Number=24, Address=NY, Year=1985, Pages="73-102", Annote="20 references." } @InCollection{Lano-Haughton92, Key = "Lano \& Haughton", Author = "K. Lano and H. Haughton", Title = "Reasoning and Refinement in Object-Oriented Specification Languages", BookTitle = "ECOOP '92, European Conference on Object-Oriented Programming, Utrecht, The Netherlands", Publisher = "Springer-Verlag", Year = 1992, Editor = "Ole Lehrmann Madsen", Series = LNCS, Address = NY, Volume = 615, Pages = "78-97", Annote = "32 references" } @Book{Lano-Haughton94, Key = "Lano \& Haughton", Editor = "K. Lano and H. Haughton", Title = "Object-Oriented Specification Case Studies", Publisher = "Prentice Hall", Year = 1994, Address = NY, Series = "The Object-Oriented Series", Annote = "Features Object-Z, VDM++, OOZE, MooZ, Fresco, Z++, and Small VDM. 208 references." } @InCollection{Lano-Haughton94b, key = "Lano \& Haughton", author = "K. Lano and H. Haughton", title = "Specifying a Concept-recognition system in {Z++}", booktitle = "Object-Oriented Specification Case Studies", publisher = "Prentice-Hall", year = 1994, editor = "Kevin Lano and Howard Haughton", series = "The Object-Oriented Series", chapter = 7, Crossref = "Lano-Haughton94", pages = "137-157", address = NY } @InCollection{Lano92, Key = "Lano", Author = "Kevin C. Lano", Title = "{Z++}", Editor = "Susan Stepney and Rosalind Barden and David Cooper", BookTitle = "Object Orientation in {Z}", Publisher = "Springer-Verlag", Year = 1992, Address = "Cambridge CB2 1LQ, UK", Series = "Workshops in Computing", Crossref = "Stepney-Barden-Cooper92", Pages = "106-112" } @Book{Lano96, key = "Lano", author = "Kevin Lano", title = "The {B} Language and Method: {A} guide to Practical Formal Development", publisher = "Springer-Verlag", address = "London, UK", year = "1996", Series = "Formal Appoaches to Computing and Information Technology", ISBN = "3-540-76033-4", annote = "{B} is a formal approach to software specification and development based on the {Z} specification language. 66 references.", } @Article{Lano96, key = {Lano}, author = {Kevin Lano}, title = {Enhancing Object-Oriented Methods with Formal Notations}, journal = TAPOS, year = 1996, volume = 2, number = 4, pages = {247-268}, annote = {31 references.} } @InCollection{Laorakpong-Saeki93, Key = "Laorakpong \& Saeki", Author = "Amarit Laorakpong and Motoshi Saeki", Title = "Object-Oriented Formal Specification Development using VDM", BookTitle = "Object Technologies for Advanced Software", Publisher = "Springer-Verlag", Year = 1993, Editor = "Shojiro Nishio and Akinori Yonezawa", Series = LNCS, Volume = 742, Pages = "529-543", Month = Aug, Annote = "26 references." } @Book{Larman98, author = {Craig Larman}, title = {Applying UML and Patterns}, publisher = {Prentice Hall PTR}, year = 1998, key = {Larman}, address = {Upper Saddle River, NJ}, annote = {19 recommended readings.} } @InProceedings{Larsen-etal91, Key="Larsen, {\em et al.}", Author = "Peter Gorm Larsen and Jan van Katwijk and Nico Plat and Kees Pronk and Hans Toetenel", Title = "{SVDM}: {A}n integrated combination of {SA} and {VDM}", BookTitle = "Methods Integration Conference", Publisher = "Springer-Verlag", Year = 1991, Month = Sep } @InProceedings{Larsen-etal91b, Key = "Larsen, {\em et al.}", Author = "Peter Gorm Larsen and Jan van Katwijk and Nico Plat and Kees Pronk and Hans Toetenel", Title = "Towards an Integrated Combination of {SA} and {VDM}", Booktitle = "Structured Analysis and Formal Methods", Year = 1991, Month = Jun, Note = "ftp://ftp.ifad.dk/pub/papers/savdm.ps.gz" } @Article{Larsen-Fitzgerald-Brookes96, author = "Peter Gorm Larsen and John Fitzgerald and Tom Brookes", title = "Applying Formal Specification in Industry", journal = "IEEE Software", year = 1996, volume = 13, number = 3, pages = "48-56", month = "May", annote = "A case-study using VDM-SL. No significant cost or time overhead, helped improve understanding, preventing errors, allows gradual integration, most benefits are in early development stages, formal techniques usable after 1 week training if experts available, need industrial-strength tools. 15 references." } @Article{Larsen-Plat-Toetenel94, key = "Larsen \& Plat \& Toetenel", author = "Peter Gorm Larsen and Nico Plat and Hans Toetenel", title = "A Formal Semantics of Data Flow Diagrams", journal = "Formal aspects of Computing", year = 1994, volume = 6, number = 6, pages = "586-606", month = Dec } @TechReport{Lau-Prestwich88, Key="Lau \& Prestwich", Author="K. K. Lau and S. D. Prestwich", Title="Synthesis of Recursive Logic Procedures by Top-down Folding", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Number="UMCS-88-2-1", Year=1988, Annote="13 references." } @InProceedings{Lauer-Satterthwaite79, Key="Lauer \& Satterthwaite", Title="The Impact of Mesa on System Design", Author="H. C. Lauer and E. H. Satterthwaite", BookTitle="Fourth International Conference on Software Engineering", Organization=IEEE, Year=1979, Pages="174-181" } @Article{LeJacq91, Key = "LeJacq", Author = "Jean Peirre LeJacq", Title = "Function preconditions in object oriented software", Journal = SIGPLAN, Year = 1991, Volume = 26, Number = 10, Month = Oct, Pages = "13-18", Annote = "Example of using instance operations (member functions) in C++ code in assertions. The example shows clearly the confusion created by using program operations in assertions and then concluding subtyping relationships on the basis of what seem to be valid implications. 10 references." } @Unpublished{Lea91, Key = "Lea", Author = "Doug Lea", Title = "Position paper ECOOP Object-Oriented Methods Workshop", Note = "Obtained from the author", Annote = "0 references." } @Unpublished{Lea93, Key = "Lea", Author = "Doug Lea", Title = "Run-Time Type Information and Class Design", Note = "Obtained from the author", Annote = "6 references.", Year = 1993 } @InCollection{Lea-Marlowe95, Key = "Lea \& Marlowe", Author = "Doug Lea and Jos Marlowe", Title = "Interface-Based Protocol Specification of Open Systems using {PSL}", Series=LNCS, Publisher="Springer-Verlag", Address=NY, Editor="Walter Olthoff", Number=952, Note="ECOOP '95 - Object-Oriented Programming 9th European Conference, Aarhus, Denmark", Pages="374-398", Year=1995, Annote="68 references." } @InProceedings{Leavens-Baker99, Key = "Leavens \& Baker", Author = "Gary T. Leavens and Albert L. Baker", Title = "Enhancing the Pre- and Postcondition Technique for More Expressive Specifications", Editor = "Jeannette M. Wing and Jim Woodcock and Jim Davies", BookTitle = "FM'99 --- Formal Methods: World Congress on Formal Methods in the Development of Computing Systems, Toulouse, France, September 1999, Proceedings", Year = 1999, Series = LNCS, Publisher = "Springer-Verlag", Volume = 1709, Pages = "1087--1106", URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR97-19/TR.ps.gz", Annote = "37 references." } @TechReport{Leavens-Baker99a, Key = "Leavens \& Baker", Author = "Gary T. Leavens and Albert L. Baker", Title = "Enhancing the Pre- and Postcondition Technique for More Expressive Specifications", Institution = "Iowa State University, Department of Computer Science", Year = 1999, Number = "97-19b", Month = Jun, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR97-19/TR.ps.gz", Annote = "37 references.", Note = "Appears in FM'99, Springer-Verlag, LNCS volume 1709, pages 1087--1106, 1999." } @TechReport{Leavens-Baker-Ruby99, Key = "Leavens \& Baker \& Ruby", Author = "Gary T. Leavens and Albert L. Baker and Clyde Ruby", Title = "Preliminary Design of {JML}: A Behavioral Interface Specification Language for {Java}", Institution = "Iowa State University, Department of Computer Science", Year = 1999, Number = "98-06f", Month = Jul, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR98-06/TR.ps.gz", Annote = "55 references." } @InCollection{Leavens-Baker-Ruby99b, Key = "Leavens \& Baker \& Ruby", Author = "Gary T. Leavens and Albert L. Baker and Clyde Ruby", Title = "{JML}: A Notation for Detailed Design", BookTitle = "Behavioral Specifications of Businesses and Systems", Editor = "Haim Kilov and Bernhard Rumpe and Ian Simmonds", Year = 1999, Publisher = "Kluwer Academic Publishers", Address = "Boston", Pages = "175-188", Annote = "36 references." } @TechReport{Leavens-Cheon92a, Key = "Leavens \& Cheon", Author = "Gary T. Leavens and Yoonsik Cheon", Title = "Preliminary Design of {Larch/C++}", Institution = "Iowa State University, Department of Computer Science", Address = "226 Atanasoff Hall, Ames IA 50011", Year = 1992, Number = "92-16", Month = May, Note = "Presented at the First International Workshop on Larch, Dedham, Mass., July, 1992. Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "26 references." } @InCollection{Leavens-Cheon92b, Key = "Leavens \& Cheon", Author = "Gary T. Leavens and Yoonsik Cheon", Title = "Preliminary Design of {Larch/C++}", BookTitle = "Proceedings of the First International Workshop on Larch, July, 1992", Publisher = "Springer-Verlag", Editor = "U. Martin and J. Wing", Series = "Workshops in Computing", Pages = "159-184", Address = NY, Year = 1993, Annote = "26 references." } @TechReport{Leavens-Cheon93b, Key = "Leavens \& Cheon", Author = "Gary T. Leavens and Yoonsik Cheon", Title = "Extending {CORBA IDL} to Specify Behavior with {Larch}", Institution = "Iowa State University, Department of Computer Science", Year = 1993, Number = "93-20", Month = Aug, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR93-20/TR.txt", Note = "Presented at the OOPSLA '93 Workshop: ``Specification of Behavioral Semantics in OO Information Modeling''. Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "Discusses Larch/CORBA. 6 references." } @TechReport{Leavens-Cheon94d, Key = "Leavens \& Cheon", Author = "Gary T. Leavens and Yoonsik Cheon", Title = "Overview and Specification of the Built-in Types in {Little Smalltalk}", Institution = "Iowa State University, Department of Computer Science", Year = 1994, Number = "91-22a", Address = "226 Atanasoff Hall, Ames IA 50011", Month = Feb, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR91-22/TR.ps.Z", Note = "Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu." } @InCollection{Leavens-Dhara00, key = {Leavens \& Dhara}, author = {Gary T. Leavens and Krishna Kishore Dhara}, title = {Concepts of Behavioral Subtyping and a Sketch of Their Extension to Component-Based Systems}, booktitle = {Foundations of Component-Based Systems}, publisher = {Cambridge University Press}, year = 2000, editor = {Gary T. Leavens and Murali Sitaraman}, chapter = 6, pages = {113-136}, annote = {A survey of behavioral subtyping. 79 references.} } @Article{Leavens-Nierstrasz-Sitaraman98, key = {Leavens \& Nierstrasz \& Sitaraman}, author = {Gary T. Leavens and Oscar Nierstrasz and Murali Sitaraman}, title = {1997 Workshop on Foundations of Component-Based Systems}, year = 1998, month = Jan, journal = SIGSOFT, volume = 23, number = 1, pages = "38-41", annotate = "8 references." } @TechReport{Leavens-Pigozzi91, Key = "Leavens \& Pigozzi", Author = "Gary T. Leavens and Don Pigozzi", Title = "Typed Homomorphic Relations Extended with Subtypes", Institution="Department of Computer Science, Iowa State University", Year = 1991, Number = "91-14", Address="Ames, Iowa, 50011", Month = Jun, Note = "Appears in the proceedings of {\em Mathematical Foundations of Programming Semantics '91}, Springer-Verlag, Lecture Notes in Computer Science, volume 598, pages 144-167, 1992.", Annote = "17 references." } @InCollection{Leavens-Pigozzi92, Key = "Leavens \& Pigozzi", Author = "Gary T. Leavens and Don Pigozzi", Title = "Typed Homomorphic Relations Extended with Subtypes", BookTitle = "Mathematical Foundations of Programming Semantics '91", Publisher = "Springer-Verlag", Year = 1992, Editor = "Stephen Brookes", Series = LNCS, Volume = 598, Pages = "144-167", Address = NY, Annote = "17 references." } @TechReport{Leavens-Pigozzi96a, Key = "Leavens \& Pigozzi", Author = "Gary T. Leavens and Don Pigozzi", Title = "The Behavior-Realization Adjunction and Generalized Homomorphic Relations", Institution = "Department of Computer Science, Iowa State University", Address = "Ames, Iowa, 50011", Number = "94-18b", Month = Jul, Year = 1996, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR94-18/TR.ps.Z", Note = "Appears in {\it Theoretical Computer Science}, 177:183-216, 1977." } @TechReport{Leavens-Pigozzi96b, Key = "Leavens \& Pigozzi", Author = "Gary T. Leavens and Don Pigozzi", Title = "An Exact Algebraic Characterization of Behavioral Subtyping", Institution = "Department of Computer Science, Iowa State University", Address = "Ames, Iowa, 50011", Number = "96-15", Month = Nov, Year = 1996, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR96-15/TR.ps.Z", Note = "Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu" } @Article{Leavens-Pigozzi97, Key = "Leavens \& Pigozzi", Author = "Gary T. Leavens and Don Pigozzi", Title = "The behavior-realization adjunction and generalized homomorphic relations", Journal = TCS, Volume = 177, Year = 1997, Pages = "183-216", URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR94-18/TR.ps.Z", Annote = "25 references." } @TechReport{Leavens-Pigozzi99a, Key = "Leavens \& Pigozzi", Author = "Gary T. Leavens and Don Pigozzi", Title = "A Complete Algebraic Characterization of Behavioral Subtyping", Institution = "Department of Computer Science, Iowa State University", Address = "Ames, Iowa, 50011", Number = "96-15a", Month = Nov, Year = 1999, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR96-15/TR.ps.gz", Note = "Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu" } @TechReport{Leavens-Ruby97, Key = "Leavens \& Ruby", Author = "Gary T. Leavens and Clyde Ruby", Title = "Specification Facets for More Precise, Focused Documentation", Institution = "Department of Computer Science, Iowa State University", Address = "Ames, Iowa, 50011", Number = "97-04", Month = Jan, Year = 1997, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR97-04/TR.ps.gz", Note = "Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu" } @Proceedings{Leavens-Sitaraman97, title = {Foundations of Component-Based Systems Workshop}, year = 1997, key = {Leavens \& Sitaraman}, editor = {Gary T. Leavens and Murali Sitaraman}, month = Sep, note = {Available from http://www.cs.iastate.edu/\verb|~|leavens/FoCBS.} } @TechReport{Leavens-Wahls-Baker96, Key = "Leavens \& Wahls \& Baker", Author = "Gary T. Leavens and Tim Wahls and Albert L. Baker", Title = "Formal Semantics for Structured Analysis Style Data Flow Diagram Specification Languages", Institution = "Iowa State University, Department of Computer Science", Year = 1996, Number = "96-16", Month = Dec, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR96-16/TR.ps.Z", Note = "Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "47 references." } @InProceedings{Leavens-Wahls-Baker99, author = {Gary T. Leavens and Tim Wahls and Albert L. Baker}, title = {Formal Semantics for Structured Analysis Style Data Flow Diagram Specification Languages}, booktitle = {ACM SAC'99 -- 1999 ACM Symposium on Applied Computing, San Antonio, Texas}, key = {Leavens \& Wahls \& Baker}, year = 1999, organization = ACM, pages = {526-532}, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR96-16/TR.ps.Z", } @InProceedings{Leavens-Weihl90, Key="Leavens \& Weihl", Author="Gary T. Leavens and William E. Weihl", Title="Reasoning about Object-oriented Programs that use Subtypes (extended abstract)", BookTitle="{OOPSLA ECOOP '90 Proceedings}", Editor="N. Meyrowitz", Series=SIGPLAN, Volume="25(10)", Month=Oct, Year=1990, Pages="212-223", Organization=ACM, Annote="26 references." } @TechReport{Leavens-Weihl93, Key = "Leavens \& Weihl", Author = "Gary T. Leavens and William E. Weihl", Title = "Subtyping, Modular Specification, and Modular Verification for Applicative Object-Oriented Programs", Institution = "Department of Computer Science, Iowa State University", Address = "Ames, Iowa, 50011", Number = "92-28d", Month = Aug, Year = 1994, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR92-28/TR.ps.Z", Note = "Full version of a paper in {\em Acta Informatica}, volume 32, number 8, pages 705--778. Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu", Annote = "The journal version of the first author's thesis." } @Article{Leavens-Weihl95, author = {Gary T. Leavens and William E. Weihl}, title = {Specification and Verification of Object-Oriented Programs Using Supertype Abstraction}, journal = {Acta Informatica}, year = 1995, key = {Leavens \& Weihl}, volume = 32, number = 8, month = Nov, pages = {705-778} } @TechReport{Leavens-Wing97, Key = "Leavens \& Wing", Author = "Gary T. Leavens and Jeannette M. Wing", Title = "Protective Interface Specifications", Institution = "Iowa State University, Department of Computer Science", Year = 1997, Number = "96-04d", Month = Sep, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR96-04/TR.ps.gz", Note = "In Michel Bidoit and Max Dauchet (editors), TAPSOFT '97: Theory and Practice of Software Development, 7th International Joint Conference CAAP/FASE, Lille, France. Volume 1214 of Lecture Notes in Computer Science, Springer-Verlag, 1997, pages 520-534. Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "29 references." } @InCollection{Leavens-Wing97a, Key = "Leavens \& Wing", Author = "Gary T. Leavens and Jeannette M. Wing", Title = "Protective Interface Specifications", BookTitle = "{TAPSOFT '97}: Theory and Practice of Software Development, 7th International Joint Conference {CAAP/FASE}, Lille, France", Publisher = "Springer-Verlag", Year = 1997, Editor = "Michel Bidoit and Max Dauchet", Series = LNCS, Volume = 1214, Pages = "520-534", Address = NY, Annote = "29 references.", URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR96-04/TR.ps.gz" } @Article{Leavens-Wing98, key = {Leavens \& Wing}, author = {Gary T. Leavens and Jeannette M. Wing}, title = {Protective Interface Specifications}, journal = {Formal Aspects of Computing}, year = 1998, volume = 10, pages = {59-75}, annote = {30 references.} } @TechReport{Leavens-etal96, Key = "Leavens, {\em et al.}", Author = "Gary T. Leavens and Tim Wahls and Albert L. Baker and Kari Lyle", Title = "An Operational Semantics of Firing Rules for Structured Analysis Style Data Flow Diagrams", Institution = "Iowa State University, Department of Computer Science", Year = 1996, Number = "93-28d", Month = Jul, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR93-28/TR.ps.Z", Note = "Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "43 references." } @PhDThesis{Leavens88, Key="Leavens", Author="Gary Todd Leavens", Title="Verifying Object-Oriented Programs that use Subtypes", Month=Dec, Year=1988, School=MIT, Note="Published as MIT/LCS/TR-439 in February 1989.", Annote="44 references." } @TechReport{Leavens89, Key="Leavens", Author="Gary Todd Leavens", Title="Verifying Object-Oriented Programs that use Subtypes", Month=Feb, Year=1989, Institution=MITLCS, Number=439, Note="The author's Ph.D. thesis.", Annote="44 references." } @TechReport{Leavens90, Key="Leavens", Author="Gary T. Leavens", Title="Modular Verification of Object-Oriented Programs with Subtypes", Month=Jul, Year=1990, Institution="Department of Computer Science, Iowa State University", Address="Ames, Iowa, 50011", Number="90-09", URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR90-09/TR.ps.Z", Note="Available by anonymous ftp from ftp.cs.iastate.edu, and by e-mail from almanac@cs.iastate.edu", Annote="Revised thesis. 74 references." } @Article{Leavens91, Key = "Leavens", Author = "Gary T. Leavens", Title = "Modular Specification and Verification of Object-Oriented Programs", Journal = "IEEE Software", Year = 1991, Volume = 8, Number = 4, Month = Jul, Pages = "72-80", Annote = "8 references." } @TechReport{Leavens93b, Key = "Leavens", Author = "Gary T. Leavens", Title = "Inheritance of Interface Specifications (Extended Abstract)", Institution = "Iowa State University, Department of Computer Science", Year = 1993, Number = "93-23", Month = Sep, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR93-23/TR.ps.Z", Note = "Appears in the Workshop on Interface Definition Languages, WIDL '94. Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "28 references." } @InProceedings{Leavens94a, Key = "Leavens", Author = "Gary T. Leavens", Title = "Inheritance of Interface Specifications (Extended Abstract)", BookTitle = "Proceedings of the Workshop on Interface Definition Languages", Series = SIGPLAN, Year = 1994, Volume = "29(8)", Pages = "129-138", Month = Aug, Annote = "28 references." } @InCollection{Leavens96b, key = "Leavens", author = "Gary T. Leavens", title = "An Overview of {Larch/C++}: Behavioral Specifications for {C++} Modules", booktitle = "Specification of Behavioral Semantics in Object-Oriented Information Modeling", publisher = "Kluwer Academic Publishers", year = 1996, address = "Boston", editor = "Haim Kilov and William Harvey", chapter = 8, pages = "121-142", annote = "52 references.", note = "An extended version is TR \#96-01d, Department of Computer Science, Iowa State University, Ames, Iowa, 50011" } @Unpublished{Leavens97c, Key = "Leavens", Author = "Gary T. Leavens", Title = "{Larch/C++ Reference Manual}", URL = "ftp://ftp.cs.iastate.edu/pub/larchc++/lcpp.ps.gz", Note = "Version 5.14. Available in ftp://ftp.cs.iastate.edu/pub/larchc++/lcpp.ps.gz or on the World Wide Web at the URL http://www.cs.iastate.edu/\verb|~|leavens/larchc++.html", Annote = "Definitive reference on Larch/C++. Many references.", Month = Oct, Year = 1997, URL = "ftp://ftp.cs.iastate.edu/pub/larchc++/lcpp.ps.gz" } @TechReport{Leavens97d, key = "Leavens", author = "Gary T. Leavens", title = "An Overview of {Larch/C++}: Behavioral Specifications for {C++} Modules", Institution = "Iowa State University, Department of Computer Science", note = "Revised version of Haim Kilov and William Harvey, {\it Specification of Behavioral Semantics in Object-Oriented Information Modeling}, chapter 8, pages 121--142. Kluwer Academic Publishers, Boston, 1996.", annote = "52 references.", Year = 1997, Number = "96-01d", Month = Jul, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR96-01/TR.ps.gz", } @Unpublished{Leavens99, Key = "Leavens", Author = "Gary T. Leavens", Title = "{Larch/C++ Reference Manual}", URL = "ftp://ftp.cs.iastate.edu/pub/larchc++/lcpp.ps.gz", Note = "Version 5.41. Available in ftp://ftp.cs.iastate.edu/pub/larchc++/lcpp.ps.gz or on the World Wide Web at the URL http://www.cs.iastate.edu/\verb|~|leavens/larchc++.html", Annote = "Definitive reference on Larch/C++. Many references.", Month = Apr, Year = 1999 } @InBook{Leavens99a, author = {Gary T. Leavens}, title = {Wiley Encyclopedia of Electrical and Electronics Engineering}, chapter = {Abstract Data Types}, publisher = {John Wiley \& Sons, Inc.}, year = 1999, key = {Leavens}, editor = {John G. Webster}, volume = 1, pages = {4-14}, URL = "http://www.wiley.com/products/subject/engineering/webster/WEBSTER_PG4-25_A1.pdf", annote = {23 references.} } @Unpublished{Leavens:LarchFAQ, Key = "Leavens", Author = "Gary T. Leavens", Title = "{Larch} Frequently Asked Questions", Note = "Version 1.89. Available in http://www.cs.iastate.edu/\verb|~|leavens/larch-faq.html", Annote = "Beginner's guide to Larch, LSL, LP. Many references.", Month = Jan, Year = 1998, URL = "http://www.cs.iastate.edu/~leavens/larch-faq.html" } @Unpublished{Leavens:MathTraits, author = {Gary T. Leavens}, title = "{LSL} Math Traits", note = {http://www.cs.iastate.edu/\verb|~|leavens/Math-traits.html}, key = {Leavens}, year = 1996, month = {Jan} } @InProceedings{Ledru96, author = {Yves Ledru}, title = {Complementing Semi-Formal Specifications in {Z}}, booktitle = {11th Knowledge-Based Software Engineering Conference}, year = 1996, annote = "Systematically (could be automatically) translates entity-relationship data model into Z schemas. Uses Z for functions also. Formalization of the specification (specifically the function preconditions) helped to identify exceptional cases that required changes to the specification." } @InCollection{Lee-Gehlot92, Key = "Lee \& Gehlot", Author = "I. Lee and V. Gehlot", Title = "Language Constructs for Distributed Real-Time Programming", BookTitle = "Real-Time Systems: Abstractions, Languages, and Design Methodologies", Publisher = "IEEE Computer Society Press", Year = 1992, Editor = "Krishna M. Kavi", Pages = "478-487", Address = "Los Alamitos, California", Month = Oct, Annote = "26 references." } @Article{Lee-Litecky97, key = {Lee \& Litecky}, author = {Nam-Yong Lee and Charles R. Litecky}, title = {An Empirical Study of Software Reuse with Special Attention to Ada}, journal = IEEETSE, year = 1997, volume = 23, number = 9, month = Sep, pages = {537-549}, annote = {91 references.} } @Article{Lee-etal88, Key="Lee, {\em et al.}", Author="Peter Lee and Frank Pfenning and Gene Rollins and William Scherlis", Title="The Ergo Support System: An Integrated Set of Tools for Prototyping Integrated Environments", Journal=SIGSOFT, Volume=13, Number=5, Month=Nov, Year=1988, Pages="25-34", Note="Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments", Annote="Prototyping formal methods. 30 references." } @Article{Lehman80, Key="Lehman", Author="Meir M. Lehman", Title="Programs, Life Cycles and Laws of Software Evolution", Journal="Proceedings of the IEEE", Volume=68, Number=9, Month=Sep, Year=1980, Pages="1060-1076", Annote="Sources of evolutionary pressure in programs. Life cycle processes. Laws of program evolution. Change cannot be eliminated, but it must be made less expensive. Maintain alterability. Performance, capability and quality cannot be built into the first version of a program, they must be achieved by evolution. Problem is how to do this in a cost-effective and timely way. Correctness as a whole for real-world problem solving and embedded software is not generally well specified, but such programs should be partitioned into parts which are fully specified and proven correct. Making programs live longer is cost effective and lifetime is determined during formative period. Laws are: continuous change, increasing complexity (entropy), self-regulating evolution, invariant work rate, conservation of familiarity. 92 references." } @PhdThesis{Leino95, author = {K. Rustan M. Leino}, title = {Toward Reliable Modular Programs}, school = {California Institute of Technology}, year = 1995, key = {Leino}, note = {Available as Technical Report Caltech-CS-TR-95-03.} } @TechReport{Leino95a, author = {K. Rustan M. Leino}, title = {A myth in the modular specification of programs}, institution = DECSRC, year = 1995, key = {Leino}, number = {KRML 63}, address = {130 Lytton Avenue Palo Alto, CA 94301}, month = Nov, note = {Obtain from the author, at rustan@pa.dec.com} } @InProceedings{Leino98, key = {Leino}, author = {K. Rustan M. Leino}, title = {Data groups: Specifying the modification of extended state}, BookTitle = "OOPSLA '98 Conference Proceedings", Series = SIGPLAN, Volume = "33(10)", Month = Oct, Year = 1998, organization = ACM, pages = {144-153}, annote = {Specification of frame conditions for methods in classes. 29 references.} } @Article{Lejter-Meyers-Reiss92, Key = "Lejter \& Meyers \& Reiss", Author = "Moises Lejter and Scott Meyers and Steven P. Reiss", Title = "Support for Maintaining Object-Oriented Programs", Journal = IEEETSE, Volume = 18, Number = 12, Month = Dec, Year = 1992, Pages = "1045-1052", Annote = "21 references." } @Book{Lerman93, Key = "Lerman", Author = "Steven R. Lerman", Title = "Problem Solving and Computation for Scientists and Engineers", Publisher = "Prentice Hall", Year = 1993, Address = "Englewood Cliffs, New Jersey", Annote = "21 references" } @Techreport{Lerner91, Key = "Lerner", Author = "Richard Allen Lerner", Title = "Specifying Objects of Concurrent Systems", Institution = CMU, Year = 1991, Type = "Ph.D. Thesis", Number = "CMU-CS-91-131", Month = May } @TechReport{Leszczylowski-Bieman88a, Key="Leszczylowski \& Bieman", Author="Jacek Leszczylowski and James M. Bieman", Title="Growing Executable Specifications Using PROSPER", Institution="Department of Computer Science, Iowa State University", Number="88-1", Month=Jan, Year=1988, Annote="19 references." } @TechReport{Leszczylowski-Bieman88b, Key="Leszczylowski \& Bieman", Author="Jacek Leszczylowski and James M. Bieman", Title="PROSPER: A Language for Specification by Prototyping", Institution="Department of Computer Science, Iowa State University", Number="88-18", Month=Sep, Year=1988, Note="To appear in {\em Computer Languages}", Annote="37 references." } @Article{Leveson-Cha-Shimeall91, Key = "Leveson \& Cha \& Shimeall", Author = "Nancy Leveson and Stephen Cha and Timothy Shimeall", Title = "Safety Verification of Ada Programs Using Software Fault Trees", Journal = "IEEE Software", Year = 1991, Volume = 8, Number = 4, Month = Jul, Pages = "48-60", Annote = "9 references." } @Article{Leveson86, Key="Leveson", Author="Nancy G. Leveson", Title="Software Safety: What, Why, and How", Journal=ACMCS, Volume=18, Number=2, Month=Jun, Year=1986, Pages="125-163", Annote="Surveys the state of research into software safety. 118 references. Bibliography includes 28 further references." } @Book{Leveson95, key = {Leveson}, author = {Nancy Leveson}, title = {Safeware : System Safety and Computers}, publisher = {Addison-Wesley Pub Co.}, year = 1995, address = {Reading, Mass.} } @InCollection{Lewerentz-etal95, key = "Lewerentz, {\em et al.}", author = {C. Lewerentz and Th. Lindner and A. R\"{u}ping and E. Sekerinski}, title = "On Object-Oriented Design and Verification", crossref = "Broy-Jaehnichen95", pages = "92-111", year = 1995, series = LNCS, volume = 1009, annote = "Behavioral subtyping in the refinement calculus. 32 references." } @InCollection{Lewington90, Key = "Lewington", Author = "Lewington", Title = "Towards Constructive Program Derivation in {VDM}", BookTitle = "Foundations of Software Technology and Computer Science, Tenth Conference, Bangalore, India", Publisher = Springer-Verlag, Year = 1990, Editor = "K. V. Nori and C. E. Veni Madhavan", Series = LNCS, Volume = 472, Pages = "115-132", Address = NY, Month = Dec } @Article{Lieberherr-Holland-Riel88, Key="Lieberherr \& Holland \& Riel", Author="K. Lieberherr and I. Holland and A. Riel", Title="Object-Oriented Programming: An Objective Sense of Style", Journal=SIGPLAN, Volume=23, Number=11, Month=Nov, Year=1989, Pages="323-334", Note="OOPSLA '88 Conference Proceedings, Norman Meyrowitz (editor), October 1987, San Diego, Calif.", Annote="18 references." } @Article{Lieberherr-Holland89, Key="Lieberherr \& Holland", Author="Karl J. Lieberherr and Ian M. Holland", Title="Assuring Good Style for Object-Oriented Programs", Journal="IEEE Software", Volume=6, Number=5, Month=Sep, Year=1989, Pages="38-48", Annote="The law of Demeter. Each method can only send messages to argument objects, to self, and to instance variables. 10 references." } @Article{Lieberherr-Xiao93, Key="Lieberherr \& Xiao", Author="Karl J. Lieberherr and C. Xiao", Title="Object Oriented Software evolution", Journal="IEEETSE", Volume=19, Number=4, Month=Apr, Year=1993, Pages="313-343", Annote="48 references." } @Article{Lientz83, Key="Lientz", Author="Bennet P. Lientz", Title="Issues in Software Maintenance", Journal=ACMCS, Volume=15, Number=3, Month=Sep, Year=1983, Pages="271-278", Annote="Identifies problem areas by surveying practitioners. Biggest problems are documentation quality, demand for enhancements and extensions, competing demands for maintenance personnel time, meeting scheduled deadlines and turnover in user organizations. Enhancements consume 60% of resources in maintenance, 40% for bug fixing. 10 references." } @Book{Lightfoot91, Key = "Lightfoot", Author = "Lightfoot", Title = "Formal Specification using {Z}", Publisher = "MacMillan", Year = 1991 } @Article{Lin93,Key="Lin", Author="Huimin Lin", Title="Procedural Implementation of Algebraic Specifications", Journal=TOPLAS, Volume=15, Number=5, Month=Nov, Year=1993, Pages="876-895", Annote="20 refernces" } @InCollection{Liskov-Berzins79, Key="Liskov \& Berzins", Author="Barbara H. Liskov and Valdis Berzins", Title="An Appraisal of Program Specifications", BookTitle="Research Directions in Software Technology", Editor="Peter Wegner", Publisher=MITP, Address="Cambridge, Mass.", Year=1979, Pages="276-301", Annote="Review and evaluation of formal specification techniques. 54 references." } @Book{Liskov-Guttag86, Key="Liskov \& Guttag", Author="Barbara Liskov and John Guttag", Title="Abstraction and Specification in Program Development", Year=1986, Publisher=MITP, Address="Cambridge, Mass.", Annote="Program design. CLU used as a vehicle and defined." } @Article{Liskov-Weihl86, Key="Liskov \& Weihl", Author="Barbara Liskov and William Weihl", Title="Specifications of Distributed Programs", Journal="Distributed Computing", Publisher="Springer-Verlag", Address=NY, Year=1986, Volume=1, Pages="102-118", Annote="22 references." } @Unpublished{Liskov-Wing92, Key = "Liskov \& Wing", Author = "Barbara Liskov and Jeannette Wing", Title = "A Semantic Notion of Subtyping", Note = "Obtained from the authors.", Annote = "", Month = Aug, Year = 1992 } @TechReport{Liskov-Wing92b, Key = "Liskov \& Wing", Author = "Barbara Liskov and Jeannette M. Wing", Title = "Family Values: A Semantic Notion of Subtyping", Institution = MITLCS, Number = 562, Month = Dec, Year = 1992, Annote = "26 references." } @InCollection{Liskov-Wing93, Key = "Liskov \& Wing", Author = "Barbara Liskov and Jeannette M. Wing", Title = "A New Definition of the Subtype Relation", BookTitle = "ECOOP '93 --- Object-Oriented Programming, 7th European Conference, Kaiserslautern, Germany", Publisher = "Springer-Verlag", Year = 1993, Editor = "Oscar M. Nierstrasz", Series = LNCS, Volume = 707, Pages = "118-141", Address = NY, Month = Jul, Annote = "The discussion on page 138 of the work of Leavens and Weihl is wrong: Leavens and Weihl do not map supertype values down to subtype values. 25 references." } @Article{Liskov-Wing93b, Key = "Liskov \& Wing", Author = "Barbara Liskov and Jeannette M. Wing", Title = "Specifications and Their Use in Defining Subtypes", Journal = SIGPLAN, Volume = 28, Number = 10, Month = Oct, Year = 1993, Pages = "16-28", Note = "{\em OOPSLA '93 Proceedings}, Andreas Paepcke (editor).", Annote = "27 references." } @TechReport{Liskov-Wing93c, Key = "Liskov \& Wing", Author = "Barbara Liskov and Jeannette M. Wing", Title = "A New Definition of the Subtype Relation", Institution = MITLCS, Type = "Programming Methodology Group Memo", Number = 76, Month = May, Year = 1993, Note = "To appear in the proceedings of ECOOP '93.", Annote = "25 references." } @Article{Liskov-Wing93d, Key = "Liskov \& Wing", Author = "Barbara Liskov and Jeannette Wing", Title = "Corrigenda to ECOOP '93 Paper", Journal = SIGPLAN, Year = 1993, Volume = 29, Number = 4, Month = Apr, Pages = 4 } @Article{Liskov-Wing94, key = "Liskov \& Wing", author = "Barbara Liskov and Jeannette Wing", title = "A Behavioral Notion of Subtyping", journal = TOPLAS, year = 1994, volume = 16, number = 6, pages = "1811-1841", month = Nov, annote = "37 references." } @Article{Liskov-Zilles75, Author = "Liskov, Barbara H. and Zilles, Stephen N.", Title = "Specification Techniques for Data Abstraction", Journal = "Transactions on Software Engineering", Month = "March", Year = 1975, Volume = 1, Number = 1 } @InCollection{Liskov-Zilles77, Key="Liskov \& Zilles", Author="B. Liskov and S. N. Zilles", Title="An Introduction to Formal Specifications of Data Abstractions", BookTitle="Current Trends in Programming Methodology", Publisher=Prentice-Hall, Address="Englewood Cliffs, N.J.", Year=1977, Volume=1, Editor="Raymond T. Yeh", Pages="1-32", Note={Revised version of ``Specification Techniques for Data Abstractions'', IEEE Transactions on Software Engineering, SE-1(1), March, 1975, pages 7-19.}, Annote="Importance of formal specifications and a survey of specification techniques." } @InProceedings{Liskov72, Key="Liskov", Title="A Design Methodology for Reliable Software Systems", Author="B. H. Liskov", BookTitle="1972 Fall Joint Computer Conference", Organization=AFIPS, Year=1972, Pages="191-199" } @InCollection{Liskov80, Key="Liskov", Author="Barbara Liskov", Title="Modular Program Construction Using Abstraction", BookTitle="Abstract Software Specifications, 1979 Copenhagen Winter School Proceedings", Year=1980, Series=LNCS, Editor="D. Bjorner", Publisher="Springer-Verlag", Address=NY, Volume=86, Pages="354-389", Annote="A methodology for modular decomposition based on recognition of useful abstractions. Module dependency graph, informal specifications. 11 references." } @Article{Liu-etal98, key = {Liu, {\em et al.}}, author = {Shaoying Liu and A. Jeff Offutt and Chris Ho-Stuart and Yong Sun and Mitsuru Ohba}, title = {{SOFL}: A Formal Engineering Methodology for Industrial Applications}, journal = IEEETSE, year = 1998, volume = 24, number = 1, month = Jan, pages = {24-45}, annote = {36 references.} } @Book{Loeckx-Sieber87, Key="Loeckx \& Sieber", Author="Jacques Loeckx and Kurt Sieber", Title="The Foundations of Program Verification (Second edition)", Publisher=Wiley, Year=1987, Address=NY, Annote="121 references." } @InProceedings{Loeckx85, author = "J. Loeckx", title = "The algorithmic specification method of abstract data types: an overview", pages = "194--200", ISBN = "3-540-16444-8", editor = "W. Bibel and K. P. Jantke", booktitle = "Proceedings of the International Spring School on Mathematical Methods of Specification and Synthesis of Software Systems '85", address = "Wendisch-Rietz, GDR", month = apr, year = "1985", series = "LNCS", volume = "215", publisher = "Springer" } @Article{Loeckx87, Key="Loeckx", Author="Jacques Loeckx", Title="Algorithmic Specifications: A Constructive Specification Method for Abstract Data Types", Journal=TOPLAS, Volume=9, Number=4, Month=Oct, Year=1987, Pages="646-685", Annote="Specification method and logic. A first-order logic for strict partial functions. 60 references." } @Book{Loeckx-Ehrich-Wolf96, key = {Loeckx \& Ehrich \& Wolf}, author = {Jacques Loeckx and Hans-Dieter Ehrich and Markus Wolf}, title = {Specification of Abstract Data Types}, publisher = {John Wiley \& Sons Ltd and B. G. Teubner}, year = 1996, address = NY, annote = {Many references.} } @InProceedings{Lorenz97, key = {Lorenz}, author = {David H. Lorenz}, title = {Tiling Design Patterns---A Case Study Using the Interpreter Pattern}, BookTitle = "Conference Proceedings of OOPSLA '97, Atlanta", Series = SIGPLAN, Volume = "32(10)", Month = Oct, Year = 1997, organization = ACM, pages = {206-217}, annote = {38 references.} } @Article{Loveman77, Key="Loveman", Author="Loveman, D. B.", Title="Program Improvement by Source-to-Source Transformation", Journal=JACM, Year=1977, Month=Jan, Volume=24, Number=1, Pages="121-145" } @PhDThesis{Low74, Key="Low", Title="Automatic Coding: Choice of Data Structures", Author="J. R. Low", School="Stanford University", Year=1974 } @InCollection{Lowe-etal91, Key = "Lowe, {\em et al.}", Author = "M. Lowe and H. Ehrig and W. Fey and D. Jacobs", Title = "On the Relationahip between Algebraic Module Specifications and Program Modules", BookTitle = "TAPSOFT '91, Proceedings of the International Joint Conference on Theory and Practice of Software Development, Brighton, UK, Volume 2, Advances in Distributed Computing (ADC) and Colloquium on Combining Paradigms for Software Development (CCPSD)", Publisher = Springer-Verlag, Year = 1991, Editor = "S. Abramsky and T. S. E. Maibaum", Series = LNCS, Volume = 494, Pages = "83-98", Address = NY, Month = Apr } @Article{Lubars86, Key="Lubars", Author="Mitchell D. Lubars", Title="Code Reusability in the Large versus Code Reusability in the Small", Journal=SIGSOFT, Volume=11, Number=1, Month=Jan, Year=1986, Pages="21-28", Annote="Interesting discussion of code reuse. Distinguishes the reuse of code by a related program, in the small, from reuse of generic modules, in the large. Argues that neither kind of reuse will have a large impact until they can be combined. 12 references." } @PhdThesis{Lucas97, author = {Carine Lucas}, title = {Documenting Reuse and Evolution with Reuse Contracts}, school = {Vrije Universiteit Brussel}, year = 1997, key = {Lucas}, address = {Brussels, Belgium}, month = Sep, annote = {116 references.} } @Article{Luckham-Suzuki79, Key = "Luckham \& Suzuki", Author = "David Luckham and Norihisa Suzuki", Title = "Verification of Array, Record, and Pointer Operations in {Pascal}", Journal = TOPLAS, Year = 1979, Volume = 1, Number = 2, Month = Oct, Pages = "226-244", Annote = "Verification of complex data structures. Reachability. 21 references." } @InCollection{Luckham-etal86, Key="Luckham, {\em et al.}", Author="D. C. Luckham and D. P. Helmbold and S. Meldal and D. L. Bryan and M.~A. Haberler", Title="Task sequencing language for specifying distributed {A}da systems", BookTitle="System Development and Ada", Editor="A. N. Haberman and U. Montanari", Series=LNCS, Volume=275, Pages="249-305", Publisher="Springer-Verlag", Address=NY, Month=May, Year=1986 } @Book{Luckham-etal87, Key="Luckham, {\em et al.}", Author={David Luckham and Friedrich W. von Henke and Bernd Krieg-Br\"{u}ckner and Olaf Owe}, Title="{ANNA} - A Language for Annotating {A}da Programs", Series=LNCS, Volume=260, Publisher="Springer-Verlag", Address=NY, Year=1987 } @Article{Luckham-vonHenke85, Key="Luckham \& von Henke", Author={David Luckham and Friedrich W. von Henke}, Title="An Overview of Anna - A Specification Language for {A}da", Journal="IEEE Software", Volume=2, Number=2, Month=Mar, Year=1985, Pages="9-23" } @Book{Luckham90, Key="Luckham", Author="David Luckham", Title="Programming with Specifications: An Introduction to Anna, A Language for Specifying Ada Programs", Publisher="Springer-Verlag", Address=NY, Year=1990, Series="Texts and Monographs in Computer Science", Annote="Many references." } @Article{Luqi-Berzins-Yeh88, Key = "Luqi \& Berzins \& Yeh", Author = "Luqi and V. Berzins and R. Yeh", Title = "A Prototyping Language for Real-Time Software", Journal = IEEETSE, Year = 1988, Volume = "SE-14", Number = 10, Month = Oct, Pages = "1409-1423", Annote = "PSDL is an enhanced DFD." } @Article{Luqi-Goguen97, author = {Luqi and Joseph A. Goguen}, title = {Formal Methods: Promises and Problems}, journal = {IEEE Software}, year = 1997, key = {Luqi \& Goguen}, volume = 14, number = 1, month = Jan, pages = {73-85}, annote = {19 references.} } @MastersThesis{Lyle92, Key = "Lyle", Author = "Kari Ann Lyle", Title = "Refinement in Data Flow Diagrams", School = "Iowa State University", Year = 1992, Address = "Ames, Iowa 50011", Month = Jul, Annote = "9 references." } @Article{MacEwen-Martin81, Key="MacEwen \& Martin", Author="Glenn H. MacEwen and T. Patrick Martin", Title="Abstraction Hierarchies in Top-Down Design", Journal="The Journal of Systems and Software", Volume=2, Number=3, Month=Sep, Pages="213-224", Year=1981, Annote="Use of data and procedural abstractions in top-down design. 32 references." } @InCollection{Maddux93, key = "Maddux", author = "Roger D. Maddux", title = "Relation Algebras for Reasoning about Time and Space", booktitle = "Algebraic Methodology and Software Technology (AMAST '93)", publisher = "Springer-Verlag", year = 1993, editor = "M. Nivat and C Rattray and T. Rus and G. Scollo", series = "Workshops in Computing", pages = "27-44", address = NY, annote = "45 references." } @InProceedings{Mahony-Dong98, key = {Mahony \& Dong}, author = {Brendan Mahony and Jin Song Dong}, title = {Blending {Object-Z} and {Timed CSP}: An Introduction to {TCOZ}}, booktitle = {Proceedings of the 1998 International Conference on Software Engineering: ICSE 98, Kyoto, Japan}, year = 1998, organization = IEEE, address = {Los Alamitos, California}, month = Apr, pages = {95-104}, annote = {18 references.} } @TechReport{Maibaum-Fiadeiro-Sadler90, key = {Maibaum \& Fiadeiro \& Sadler}, author = {T. Maibaum and J. Fiadeiro and M. Sadler}, title = {Stepwise program development in $\pi$-institutions}, institution = {Imperial College of Science, Technology and Medicine, Department of Computing}, year = 1990 } @InCollection{Maibaum-Sadler85, author = {T. Maibaum and M. Sadler}, title = {Axiomatising specification theory}, booktitle = {Recent Trends in Data Type Specification}, key = {Maibaum \& Sadler}, publisher = {Springer-Verlag}, year = 1985, editor = {H.-J. Kreowski}, number = 116, address = NY, series = {Informatik-Facberichte}, pages = {171-177} } @InProceedings{Manca-Salibra-Scollo89, Key="Manca \& Salibra \& Scollo", Author="V. Manca and A. Salibra and G. Scollo", Title="On the Nature of {TELLUS} (a Typed Equational Logic Look over Uniform Specification)", BookTitle="International Symposium on Mathematical Foundations of Computer Science, Rytro, Poland", Month=Aug, Year=1989, Publisher="Springer-Verlag", Annote="Unifying equational initiality with type assignment to provide better treatment of partial functions in equational specs." } @Book{Manes92, Key = "Manes", Author = "Ernest G. Manes", Title = "Predicate Transformer Semantics", Publisher = "Cambridge University Press", Year = 1992, Series = "Cambridge tracts in theoretical computer science, v.33", Address = NY } @Book{Manna-Pnueli92, Key = "Manna \& Pnueli", Author = "Zohar Manna and Amir Pnueli", Title = "The Temporal Logic of Reactive and Concurrent Systems", Publisher = "Springer-Verlag", Year = 1992, Address = NY, Annote = "Many references." } @Article{Manna-Waldinger78, Key = "Manna \& Waldinger", Author = "Zohar Manna and Richard Waldinger", Title = "The Logic of Computer Programming", Journal = IEEETSE, Year = 1978, Volume = "SE-4", Number = 3, Month = May, Pages = "199-229", Annote = "87 references." } @Article{Manna-Waldinger78a, Key = "Manna \& Waldinger", Author = "Zohar Manna and Richard Waldinger", Title = "Is 'Sometime' Sometimes Better that 'Always'? Intermittent Assertions in Proving Program Correctness", Journal = CACM, Year = 1978, Volume = 21, Number = 2, Month = Feb, Pages = "159-172", Annote = "18 references." } @Article{Manna-Waldinger79, Key="Manna \& Waldinger", Author="Z. Manna and R. Waldinger", Title="Synthesis: Dreams => Programs", Journal=IEEETSE, Year=1979, Month=Jul, Volume="SE-5", Number=4, Pages="294-328" } @Article{Manna-Waldinger80, Key="Manna \& Waldinger", Author="Zohar Manna and Richard Waldinger", Title="A Deductive Approach to Program Synthesis", Journal=TOPLAS, Year=1980, Month=Jan, Volume=2, Number=1, Pages="90-121", Annote="Systematic derivation of program from specification. Deductive approach using transformation rules, unification, and induction to drive its theorem proving method. 14 references." } @Article{Manna-Waldinger81, Key = "Manna \& Waldinger", Author = "Z. Manna and R. Waldinger", Title = "Problematic Features of programming Languages: A Situational-Calculus Approach", Journal = "Acta Informatica", Year = 1981, Volume = 16, Pages = "371-426" } @Article{Manna-Waldinger92, Key = "Manna \& Waldinger", Author = "Zohar Manna and Richard Waldinger", Title = "Fundamentals of Deductive Program Synthesis", Journal = IEEETSE, Year = 1992, Volume = 18, Number = 8, Month = Aug, Pages = "674-704", Annote = "Good article, on deduction tableaus. 47 references." } @Book{Manna-Waldinger93, Key = "Manna \& Waldinger", Author = "Zohar Manna and Richard Waldinger", Title = "The Deductive Foundations of Computer Programming", Publisher = "Addison-Wesley", Year = 1993, Address = NY, Annote = "A one volume version of ``The Logical Basis for Computer Programming.'' Annotated bibliography." } @TechReport{Markland98, Key = "Markland", Author = "Matthew W. Markland", Title = "Design and Implementation of the {Larch/C++} Type System", Institution = "Department of Computer Science, Iowa State University", Address = "226 Atanasoff Hall, Ames, IA 50011-1040", Month = Jun, Year = 1998, Number = "98-05", URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR98-05/TR.ps.gz", Note = "Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "14 references." } @TechReport{Marshall86, Key="Marshall", Author="Lynn S. Marshall", Title="A Formal Description Method for User Interfaces", Institution="Department of Computer Science, University of Manchester", Address="Manchester M13 9PL, England", Number="UMCS-87-1-2", Month=Oct, Year=1986, Note="The author's Ph.D. dissertation.", Annote="Hybrid of transition-state diagrams and abstract model specs. Over a hundred references." } @Proceedings{Martin-Wing93, Key = "Martin \& Wing", Title = "Proceedings of the First International Workshop on Larch, July, 1992", Publisher = "Springer-Verlag", Editor = "U. Martin and J. Wing", Series = "Workshops in Computing", Address = NY, Year = 1993 } @InCollection{Martin92, Key = "Martin", Author = "T. Martin", Title = "Realtime Programming Language PEARL - Concepts and Characteristics", BookTitle = "Real-Time Systems: Abstractions, Languages, and Design Methodologies", Publisher = "IEEE Computer Society Press", Year = 1992, Editor = "Krishna M. Kavi", Pages = "439-444", Address = "Los Alamitos, California", Month = Oct, Annote = "0 references." } @InProceedings{Mason-Talcott89, Key="Mason \& Talcott", Author="Ian A. Mason and Carolyn Talcott", Title="Axiomatizing Operational Equivalence in the presence of Side Effects", BookTitle="Fourth Annual Symposium on Logic in Computer Science, Pacific Grove, California", Organization=IEEE, Month=Jun, Year=1989, Pages="284-293", Annote="Reasoning about programs with side effects. 15 references." } @InCollection{Mason-Talcott90, Key = "Mason \& Talcott", Author = "Ian Mason and Carolyn Talcott", Title = "Reasoning about programs with effects", BookTitle = "Programming Language Implementation and Logic Programming: International Workshop PLILP '90 Proceedings", Publisher = "Springer-Verlag", Year = 1990, Editor = "P. Deransart and J. Maluszynski", Series = LNCS, Volume = 456, Pages = "189-203", Month = Aug, Annote = "13 references." } @Article{Matsuura-Kuruma-Honiden97, Key = "Matsuura \& Kuruma \& Honiden", Author = "Saeko Matsuura and Hironobu Kuruma and Shinichi Honiden", title = "{EVA}: A Flexible Programming Method for Evolving Systems", journal = IEEETSE, pages = "296-313", month = May, year = 1997, volume = 23, number = 5, annote = "27 references." } @InProceedings{Maung-Howse93, Key="Maung \& Howse", Author = {I. Maung and J. R. Howse}, Title = {Introducing {Hyper-Z} -- A New Approach to Object Orientation in {Z}}, Crossref = "Bowen-Nicholls93", Pages = "149-165" } @InProceedings{Maung-Howse-Mitchel94, Key="Maung \& Howse \& Mitchell", Author = "I. Maung and J. R. Howse and R. J. Mitchell", Title = "Towards a Formalization of Programming-by-Difference", booktitle = "{FME '94}: Industrial Benefits of Formal Methods", publisher = "Springer-Verlag", year = 1995, editor = "Maurice Naftalin and Tim Denvir and Miquel Bertran", volume = 873, series = LNCS, pages = "134-153", address = NY, annote = "26 references." } @Article{McCullough92, Key = "McCullough", Author = "Paul McCullough", Title = "Reuse: Truth or Fiction", Journal = SIGPLAN, Volume = 27, Number = 10, Month = Oct, Year = 1992, Pages = "44", Note = "{\em OOPSLA '92 Proceedings}, Andreas Paepcke (editor)." } @TechReport{McCurley89, Key="McCurley", Author="E. Robert McCurley", Title="Auxiliary Variables in Partial Correctness Programming Logics", Institution="School of Information and Computer Science, Georgia Institute of Technology", Month=Nov, Year=1989, Number="GIT-ICS-89/44", Annote="Unsoundness of the rule for eliminating auxiliary variables in the Owicki-Gries logic for partial correctness of parallel programs. 9 references." } @Book{McGettrick82, author = {A. D. McGettrick}, title = {Program Verification using Ada}, publisher = {Cambridge University Press}, year = 1982, key = {McGettrick}, number = 13, series = {Cambridge Computer Science Texts}, address = {Cambridge, UK}, annote = {Many references.} } @Article{Mead-Carter97, key = {Mead \& Carter \& Lutz}, author = {Nancy Mead and David Carter and Michael Lutz}, title = {The State of Software Engineering Education and Training}, journal = {IEEE Software}, year = 1997, volume = 14, number = 6, month = Nov, pages = {22-25}, annote = {Introduction to special issue.} } @Book{Meertens86, Key="Meertens", Editor="L. G. L. T Meertens", Title="Program Specification and Transformation", Publisher="North-Holland", Year=1987 } @InCollection{Meira-Cavalcanti92, author = "Silvio Lemos Meira and Ana L\'{u}cia C. Cavalcanti", title = "{MooZ} Case Studies", Editor = "Susan Stepney and Rosalind Barden and David Cooper", BookTitle = "Object Orientation in {Z}", Publisher = "Springer-Verlag", Year = 1992, Address = "Cambridge CB2 1LQ, UK", Series = "Workshops in Computing", Crossref = "Stepney-Barden-Cooper92", Pages = "37-58" } @InCollection{Meira-Cavalcanti-Santos94, author = "Silvio Lemos Meira and Ana L\'{u}cia C. Cavalcanti and Cassio Souza Santos", title = "The {Unix} Filing System: A {MooZ} Specification", key = "Meira \& Cavalcanti \& Santos", booktitle = "Object-Oriented Specification Case Studies", publisher = "Prentice-Hall", year = 1994, editor = "Kevin Lano and Howard Haughton", series = "The Object-Oriented Series", chapter = 4, Crossref = "Lano-Haughton94", pages = "80-109", address = NY } @TechReport{Melton-etal88, Key="Melton, {\em et al.}", Author="Austin C. Melton and Albert L. Baker and James M. Bieman and David M Gustafson", Title="A Mathematical Perspective for Software Measures Research", Institution="Department of Computer Science, Iowa State University", Number="88-5", Month=Jan, Year=1988, Annote="46 references." } @Article{Melton-etal90, Key="Melton, {\em et al.}", Author="Austin C. Melton and David M Gustafson and James M. Bieman and Albert L. Baker ", Title="A Mathematical Perspective for Software Measures Research", Journal="Software Engineering Journal", Volume=5, Number=5, Month=Sep, Year=1990, Pages="246-254" } @InCollection{Meseguer-Goguen85, Title = "Initiality, Induction and Computability", Author = "Jos\'e Meseguer and Joseph Goguen", BookTitle = "Algebraic Methods in Semantics", Editor = "Maurice Nivat and John Reynolds", Publisher = "Cambridge University Press", Address = "Cambridge", Year = 1985, Pages = "459-541" } @Article{Metayer-Nicolas-Ridoux98, key = {M\'{e}tayer \& Nicolas \& Ridoux}, author = {Daniel M\'{e}tayer and Val\'{e}rie-Anne Nicolas and Oliver Ridoux}, title = {Exploring the Software Development Trilogy}, journal = {IEEE Software}, year = 1998, volume = 15, number = 6, month = Nov, pages = {75-81}, annote = {Automated test generation based on machine learning techniques. 17 references.} } @InCollection{Meusel-Czarnecki-Koepf97, key = {Meusel \& Czarnecki \& K\"{o}pf}, author = {Matthias Meusel and Krzysztof Czarnecki and Wolfgang K\"{o}pf}, title = {A Model for Structuring User Documentation of Object-Oriented Frameworks using Patterns and Hypertext}, booktitle = {ECOOP '97 --- Object-Oriented Programming 11th European Conference, Jyv\"{a}skyl\"{a}, Finland}, publisher = {Springer-Verlag}, year = 1997, editor = {Mehmet Ak\c{s}it and Satoshi Matsuoka}, volume = 1241, series = LNCS, address = NY, month = Jun, pages = {496-510}, annote = {34 references.} } @Book{Meyer-Wieringa93, editor = "John-Jules Ch. Meyer and Roel J. Wieringa", title = "Deontic Logic in Computer Science", publisher = "John Wiley and Sons", year = 1993, series = "Wiley Professional Computing Series", address = "Chichester, UK" } @Book{Meyer-Wieringa93, key = "Meyer \& Wieringa", editor = "John-Jules Ch. Meyer and Roel J. Wieringa", title = "Deontic Logic in Computer Science", publisher = "John Wiley and Sons", year = 1993, series = "Wiley Professional Computing Series", address = "Chichester, UK" } @InBook{Meyer-Wieringa93a, author = "John-Jules Ch. Meyer and Roel J. Wieringa", title = "Deontic Logic: A Concise Overview", chapter = 1, crossref = "Meyer-Wieringa93", key = "Meyer \& Wieringa", pages = "3-16", annote = "Historical survey. Many references." } @InBook{Meyer-Wieringa93b, author = "Roel J. Wieringa and John-Jules Ch. Meyer", title = "Applications of Deontic Logic in Computer Science: A Concise Overview", chapter = 2, crossref = "Meyer-Wieringa93", key = "Meyer \& Wieringa", pages = "17-40", annote = "Many references." } @Article{Meyer85, Key="Meyer", Author="B. Meyer", Title="On Formalism in Specification", Journal="IEEE Software", Month=Jan, Year=1985, Pages="6-26" } @Article{Meyer90b, Key = "Meyer", Author = "Bertrand Meyer", Title = "Lessons from the Design of the Eiffel Libraries", Journal = CACM, Year = 1990, Volume = 33, Number = 9, Month = Sep, Pages = "69-88", Annote = "20 references." } @Article{Meyer92a, Key = "Meyer", Author = "Bertrand Meyer", Title = "Applying ``Design by Contract''", Journal = "Computer", Year = 1992, Volume = 25, Number = 10, Month = Oct, Pages = "40-51", Annote = "10 references." } @Article{Meyer98, key = {Meyer}, author = {Bertrand Meyer}, title = {Prelude to a Theory of Void}, journal = JOOP, year = 1998, volume = 11, number = 7, month = Nov, pages = {36-48}, annote = {How to avoid null pointer dereferences. No references.} } @Book{Meyers75, Key="Meyers", Author="G. J. Meyers", Title="Reliable Software Through Composite Design", Publisher="Petrocelli/Charter", Year=1975 } @InProceedings{Mezini-Lieberherr98, author = {Mira Mezini and Karl Lieberherr}, title = {Adaptive Plug-and-Play Components for Evolutionary Software Development}, BookTitle = "OOPSLA '98 Conference Proceedings", Series = SIGPLAN, Volume = "33(10)", Month = Oct, Year = 1998, key = {Mezini \& Lieberherr}, organization = ACM, pages = {97-116}, annote = {31 references.} } @InProceedings{Mezini97, key = {Mezini}, author = {Mira Mezini}, title = {Maintaining The Consistency and Behavior of Class Libraries During their Evolution}, BookTitle = "Conference Proceedings of OOPSLA '97, Atlanta", Series = SIGPLAN, Volume = "32(10)", Month = Oct, Year = 19971997, organization = ACM, pages = {1-21}, annote = {25 references.} } @InProceedings{Mikhajlova-Sekerinski97, key = {Mikhajlova \& Sekerinski}, author = {Anna Mikhajlova and Emil Sekerinski}, title = {Class refinement and interface refinement in object-oriented programs}, booktitle = {FME '97: Industrial Applications and Stengthened Foundations of Formal Metohds}, editor = {John Fitzgerald and Cliff B. Jones and Peter Lucas}, volume = 1313, series = LNCS, year = 1997, publisher = {Springer-Verlag}, address = {NY}, pages = {82-101} } @InProceedings{Mikhajlova-Sekerinski98, Key = {Mikhajlova \& Sekerinski}, AUTHOR = "Leonid Mikhajlov and Emil Sekerinski", TITLE = "A Study of the Fragile Base Class Problem", BOOKTITLE = "Proceedings of ECOOP'98", PUBLISHER = "Springer-Verlag", EDITOR = "Eric Jul", MONTH = Jul, YEAR = 1998, PAGES = "355--382" } @TechReport{Mikhajlova-Sekerinski-Laibinis99, Key = {Mikhajlova \& Sekerinski \& Laibinis}, author = "Leonid Mikhajlov and Emil Sekerinski and Linas Laibinis", title = "Developing Components in the Presence of Re-entrance", institution = "TUCS - Turku Centre for Computer Science", number = "TUCS-TR-239", month = Feb, year = 1999, keywords = "software components, modular reasoning, software correctness, specification and verification methodology, component re-entrance", url = "http://www.tucs.fi/publications/techreports/TR239.html" } @InProceedings{Mikhajlova98, Author = "Anna Mikhajlova", Title = "Refinement of Generic Classes as Semantics of Correct Polymorphic Reuse", BookTitle = "Proceedings of the International Refinement Workshop, and Formal Methods Pacific {(IRW/FMP'98)}", Year = 1998, Series = "Springer Series in Discrete Mathematics and Theoretical Computer Science", Publisher = {Springer-Verlag}, Pages = "266-285", Address = NY, Month = "Jul" } @InProceedings{Mikhajlova98b, Key = "Mikhajlova", Author = "Anna Mikhajlova", Title = "Consistent Extension of Components in Presence of Explicit Invariants", EDITOR = "Wolfgang Weck and Jan Bosch and Clemens Szyperski", YEAR = 1998, MONTH = Jul, BOOKTITLE = "Third International Workshop on Component-Oriented Programming (WCOP'98) held in conjunction with ECOOP'98", PUBLISHER = "{TUCS} General Publication Series, No. 10", ISBN = "952-12-0284-X" } @InProceedings{Mikkonen98, key = {Mikkonen}, author = {Tommi Mikkonen}, title = {Formalizing Design Patterns}, booktitle = {Proceedings of the 1998 International Conference on Software Engineering: ICSE 98, Kyoto, Japan}, year = 1998, organization = IEEE, address = {Los Alamitos, California}, month = Apr, pages = {115-124}, annote = {The DisCo method. 17 references.} } @Article{Mili-Desharnais-Gagne86, Key="Mili \& Desharnais \& Gagne", Author="Ali Mili and Jules Desharnais and Jean Raymond Gagne", Title="Formal Models of Stepwise Refinement of Programs", Journal=ACMCS, Volume=18, Number=3, Month=Sep, Year=1986, Pages="231-276", Annote="Comparison of three specification and decomposition techniques: pairs of Floyd-Hoare assertions, functions mapping admissible input states to correct final states as used by Mills, and relations containing the input/output pairs considered correct. 53 references." } @Book{Mili-Desharnais-Mili94, key = "Mili \& Desharnais \& Mili", author = "Ali Mili and Jules Desharnais and Fatma Mili", title = "Computer Program Construction", publisher = "Oxford University Press", year = 1994, address = NY, annote = "Relations as a basic tool. Does not use the general model. 83 references." } @Article{Mills-Dyer-Linger87, Key="Mills \& Dyer \& Linger", Author="Harlan D. Mills and Michael Dyer and Richard Linger", Title="Cleanroom Software Engineering", Journal="IEEE Software", Volume=4, Number=5, Month=Sep, Year=1987, Pages="19-25", Annote="Defect prevention using human mathematical verification. Statstical certification. 10 references." } @InProceedings{Mills71, Key="Mills", Title="Top Down Programming in Large Systems", Author="H. D. Mills", BookTitle="Debugging Techniques in Large Systems", Editor="R. Rustin", Organization="Courant Computer Science Symposium 1", Year=1971, Pages="41-55", Publisher=Prentice-Hall, Address="Englewood Cliffs, N.J." } @InCollection{Mills73a, Key="Mills", Author="H. D. Mills", Title="The Complexity of Programs", BookTitle="Program Test Methods", Editor="W. C. Hetzel", Year=1973, Publisher=Prentice-Hall, Address="Englewood Cliffs, N.J." } @InProceedings{Mills73b, Key="Mills", Author="H. D. Mills", Title="On the Development of Large Reliable Programs", BookTitle="Proceedings of the IEEE Symposium on Computer Software Reliability", Organization=IEEE, Year=1973, Pages="155-159" } @InProceedings{Mills75, Key="Mills", Title="How to Write Correct Programs and Know It", Author="H. D. Mills.", BookTitle="Proceedings of the International Conference on Reliable Software", Organization=SIGPLAN, Year=1975, Month=Jun, Pages="363-370" } @Article{Mills86, Key="Mills", Author="Harlan D. Mills", Title="Structured Programming: Retrospect and Prospect", Journal="IEEE Software", Volume=3, Number=6, Month=Nov, Year=1986, Pages="58-66", Annote="Review of the history and fundamentals of structured programming. The structure theorem, the top-down corollary, correctness and verification. Functional verification. 15 references." } @Article{Mills88, Key="Mills", Author="Harlan D. Mills", Title="Stepwise Refinement and Verification in Box-Structured Systems", Journal="IEEE Computer", Volume=21, Number=6, Month=Jun, Year=1988, Pages="23-36", Annote="8 references." } @TechReport{Milne90, Key = "Milne", Author = "Robert Milne", Title = "The proof theory for the {RAISE} specification language", Institution = "STC/STL", Year = 1990, Number = "RAISE/STC/REM/12/V3", Address = "Harlow, UK", Month = Nov, Annote = "3 references." } @InProceedings{Minsky-Rozenshtein89, author = "Naftaly H. Minsky and David Rozenshtein", title = "A Law-Based Approach to Object-Oriented Programming", booktitle = "Proceedings of {OOPSLA '87}, Conference on Object-oriented Programming Systems, Languages and Applications", pages = "482-493", month = Dec, year = 1987, note = "{\em ACM SIGPLAN Notices}, volume 22, number 12.", annote = "9 references." } @InProceedings{Minsky-Rozenshtein89, author = "Naftaly H. Minsky and David Rozenshtein", title = "Controllable Delegation: An Exercise in Law-Governed Systems", booktitle = "Proceedings of {OOPSLA '89} Conference on Object-oriented Programming Systems, Languages and Applications", pages = "371-380", month = Oct, year = 1989, note = "{\em ACM SIGPLAN Notices}, volume 24, number 10." } @Article{Minsky91a, author = "Naftaly H. Minsky", title = "Law-governed systems", journal = "IEE Software Engineering Journal", organization = "IEE", year = "1991", pages = "285--302", editor = "Nazim Madhavji and Wilhelm Sch{\"a}fer", month = sep, volume = "6", number = "5", keywords = "Law-governed systems, LGS" } @Article{Minsky91b, author = "N. H. Minsky", title = "The Imposition of Protocols over Open Distributed Systems", pages = "183--195", journal = IEEETSE, volume = "17", number = "2", month = Feb, year = "1991", publisher = "IEEE Computer Society", address = "Washington, DC" } @Article{Miriyala-Harandi91, Key = "Miriyala \& Harandi", Author = "K. Miriyala and M. T. Harandi", Title = "Automatic Derivation of Formal Software Specifications from Informal Descriptions", Journal = IEEETSE, Year = 1991, Volume = 17, Number = 10, Month = Oct, Pages = "1126-1142", Annote = "37 references." } @Article{Minsky-Pal97, key = {Minsky \& Pal}, author = {Naftaly H. Minsky and Partha Pratim Pal}, title = {Law-Governed Regularities in Object Systems. Part 2: A Concrete Implementation}, journal = TAPOS, year = 1997, volume = 3, number = 2, pages = {87-101}, annote = {The Darwin-E environment. 21 references.} } @Article{Minsky96, key = {Minsky}, author = {Naftaly H. Minsky}, title = {Law-Governed Regularities in Object Systems. Part 1: An Abstract Model}, journal = TAPOS, year = 1996, volume = 2, number = 4, pages = {283-301}, annote = {37 references.} } @Article{Mitchell-Urban-McDonald87, Key="Mitchell-Urban-McDonald", Author="Jeffrey Mitchell and Joseph E. Urban and Robert McDonald", Title="The Effect of Abstract Data Types on Program Development", Journal="IEEE Computer", Volume=20, Number=8, Month=Aug, Year=1987, Pages="85-88", Annote="Experiment on novice programmers concludes that the requirement of using abstract data types reduced productivity and the efficiency of the finished programs. 9 references." } @InCollection{Mitra94, author = "Swapan Mitra", title = "Object-oriented Specification in {VDM++}", key = "Mitra", booktitle = "Object-Oriented Specification Case Studies", publisher = "Prentice-Hall", year = 1994, editor = "Kevin Lano and Howard Haughton", series = "The Object-Oriented Series", chapter = 6, Crossref = "Lano-Haughton94", pages = "130-136", address = NY } @InCollection{Mitsui-etal93, Key = "Mitsui, {\em et al.}", Author = "Kin'ichi Mitsui and Hiroaki Nakamura and Theodore C. Law and Shahram Javey", Title = "Design of an Integrated and Extensible C++ Programming Environment", BookTitle = "Object Technologies for Advanced Software", Publisher = "Springer-Verlag", Year = 1993, Editor = "Shojiro Nishio and Akinori Yonezawa", Series = LNCS, Volume = 742, Pages = "95-109", Month = Aug, Annote = "18 references." } @Article{Mody92, Key = "Mody", Author = "R. P. Mody", Title = "Is Programming an Art?", Journal = "Software Engineering Notes", Volume = 17, Number = 4, Month = Oct, Year = 1992, Pages = "19-21", Annote = "5 references." } @Article{Moeller85, Key = "Moeller", Author = {B. M\"{o}ller}, Title = "On the algebraic specification of infinite objects---Ordered and continuous models of algebraic types", Journal = "Acta Informatica", Year = 1985, Volume = 22, Pages = "537-578" } @TechReport{Moore88, Key = "Moore", Author = "J. Strother Moore", Title = "A Mechanically Verified Language Implementation", Institution = "Computational Logic, Inc.", Year = 1988, Number = 30, Address = "1717 W. 6th St., Suite 290, Austin TX" } @InCollection{Moreira-Clark94, Key = "Moreira \& Clark", Author = "Ana M. D. Moreira and Robert G. Clark", Title = "Combining Object-Oriented Analysis and Formal Descriptions Techniques", BookTitle = "Object-Oriented Programming 8th European Conference, ECOOP '94 Bologna, Italy, Proceedings", Publisher = "Springer-Verlag", Year = 1994, Editor = "Mario Tokoro and Remo Pareschi", Series = LNCS, Volume = 821, Pages = "344-364", Address = NY, Month = Jul, Annote = "22 references." } @Article{Morell90, Key = "Morell", Author = "Larry J. Morell", Title = "A Theory of Fault-Based Testing", Journal = IEEETSE, Year = 1990, Volume = 16, Number = 8, Month = Aug, Pages = "844-857", Annote = "32 references." } @Article{Morgan-Gardiner90, Key = "Morgan \& Gardiner", Author = "Carroll Morgan and P. H . B. Gardiner", Title = "Data Refinement by Calculation", Journal = "Acta Informatica", Year = 1990, Volume = 27, Number = 6, Month = May, Pages = "481-503", Annote = "25 references." } @Book{Morgan-Vickers94, Key = "Morgan \& Vickers", Title = "On the refinement calculus", Publisher = "Springer-Verlag", Year = 1994, Editor = "Carroll Morgan and Trevor Vickers", Series = "Formal approaches of computing and information technology series", Address = NY, Annote = "62 references." } @Article{Morgan88, key = "Morgan", title = "Procedures, Parameters and Abstraction: separate concerns", author = "Carroll Morgan", journal = "Science of Computer Programming", volume = 11, number = 1, month = Oct, year = 1988, note = {Reprinted in the book {\it On the Refinement Calculus}.} } @Book{Morgan90, Key="Morgan", Author="Carroll Morgan", Title="Programming from Specifications", Publisher="Prentice Hall International", Address="Hempstead, UK", Year=1990, Annote="32 references." } @InCollection{Morgan93, Key = "Morgan", Author = "Carroll Morgan", Title = "The refinement calculus, and literate development", BookTitle = "Formal Program Development", Publisher = "Springer-Verlag", Year = 1993, Editor = "Bernhard Moeller and Helmut Partsch and Steve Schuman", Series = LNCS, Volume = 755, Pages = "161-182", Address = NY, Month = Jul, Annote = "13 references." } @Book{Morgan94, Key="Morgan", Author="Carroll Morgan", Title="Programming from Specifications: Second Edition", Publisher="Prentice Hall International", Address="Hempstead, UK", Year=1994, Annote="44 references." } @InCollection{Morgan94b, Key = {Vickers}, author = {Caroll Morgan}, title = {Procedures, Parameters and Abstraction: separate concerns}, booktitle = {On the Refinement Calculus}, Publisher = "Springer-Verlag", Year = 1994, Editor = "Carroll Morgan and Trevor Vickers", Series = "Formal approaches of computing and information technology series", Address = NY, Annote = "62 references.", Crossref = {Morgan-Vickers94}, Pages = "47-58" } @Article{Moriconi-Hare86, Key="Moriconi \& Hare", Author="Mark Moriconi and Dwight F. Hare", Title="The PegaSys System: Pictures as Formal Documentation of Large Programs", Journal=TOPLAS, Volume=8, Number=4, Month=Oct, Year=1986, Pages="524-546", Annote="22 references." } @Article{Morris87, title = "A Theoretical Basis for Stepwise Refinement and the Programming Calculus", author = "Joseph M. Morris", pages = "287--306", journal = "Science of Computer Programming", month = Dec, year = 1987, volume = 9, number = 3 } @Article{Morris89, Key = "Morris", Author = "Joseph M. Morris", Title = "Laws of Data Refinement", Journal = "Acta Informatica", Year = 1989, Volume = 26, Number = 4, Month = Feb, Pages = "287-308", Annote = "11 references." } @Article{Morrison-etal91, Key="Morrison, {\em et al.}", Author="R. Morrison and A. Dearle and R. C. Connor and A. L. Brown", Title="An ad hoc Approach to the Implementation of Polymorphism", Journal = TOPLAS, Year = 1991, Volume = 13, Number = 3, Month = Jul, Pages = "342-371", Annote = "42 references." } @Article{Moss92, Key = "Moss", Author = "J. Eliot B. Moss", Title = "Working with Persistent Objects: To Swizzle or Not to Swizzle", Journal = IEEETSE, Year = 1992, Volume = 18, Number = 8, Month = Aug, Pages = "657-673", Annote = "57 references." } @Article{Mrdalj90, Key = "Mrdalj", Author = "Stevan Mrdalj", Title = "Bibliography of Object-Oriented System Development", Journal = SIGSOFT, Year = 1990, Volume = 15, Number = 5, Month = Oct, Pages = "60-63", Annote = "83 references." } @Book{Mullin89, Key="Mullin", Author="Mark Mullin", Title="Object Oriented Program Design With Examples in {C}++", Publisher=Addison-Wesley, Address="Reading, Mass.", Year=1989 } @InProceedings{Musser80a, Key="Musser", Author="D. R. Musser", Title="Abstract Data Type Specifications in the Affirm System", BookTitle="IEEE Conference on the Specification of Reliable Software", Organization=IEEE, Year=1979, Pages="47-57" } @InProceedings{Musser80b, Key="Musser", Author="D. R. Musser", Title="On Proving Inductive Properties of Abstract Data Types", BookTitle="Conference Record of the Seventh Annual ACM Symposium on Principles of Programming Languages, Las Vegas, Nevada", Organization=ACM, Year=1980, Pages="154-162", Annote="Full specification notion like sufficient completeness. 29 references." } @Article{Myers92, Key = "Myers", Author = "Brad A. Myers", Title = "Demonstrational Interfaces: A Step Beyond Direct Manipulation", Journal = "Computer", Year = 1992, Volume = 25, Number = 8, Month = Aug, Pages = "61-73", Annote = "12 references." } @Proceedings{Najm-Stefani97, title = {Formal Methods for Open Object-Oriented Distributed Systems}, booktitle = {Formal Methods for Open Object-Oriented Distributed Systems}, year = 1997, key = {Najm \& Stefani}, editor = {Elie Najm and Jean-Bernard Stefani}, publisher = {Chapman \& Hall}, address = {London}, annote = {Proceedings of FMOODS '96} } @Article{Nakajima-Honda-Nakahara80, Key="Nakajima \& Honda \& Nakahara", Author="Reiji Nakajima and Michio Honda and Hayao Nakahara", Title="Hierarchical Program Specification and Verification --- a Many-sorted Logical Approach", Journal="Acta Informatica", Volume=14, Number=2, Year=1980, Pages="135-155", Annote="IOTA allows one to build theories and write the implementations. Validation of data and procedural abstractions. Generalization of type parameterization. 22 references." } @Book{Nakajima-Yuasa83, Key="Nakajima \& Yuasa", Editor="R. Nakajima and T. Yuasa", Title="The IOTA Programming System: A Modular Programming Environment", Series=LNCS, Volume=160, Publisher="Springer-Verlag", Address=NY, Year=1983, Annote="51 references." } @InProceedings{Naumann94, author = "David A. Naumann", title = "Predicate transformer semantics of an Oberon-like language", booktitle = "Proceedings of the IFIP WG2.1/WG2.2/WG2.3 Working Conference on Programming Concepts, Methods, and Calculi", where = "San Miniato, Italy", publisher = "Elsevier", year = 1994, month = Jun, pages = "467--487" } @Article{Neil-etal98, key = {Neil, {\em et al.}}, author = {Martin Neil and Gary Ostrolenk and Mary Tobin and Mark Southworth}, title = {Lessons from Using Z to Specify a Software Tool}, journal = IEEETSE, year = 1998, volume = 24, number = 1, month = Jan, pages = {15-23}, annote = {Unsuccessful application of formal methods. 13 references.} } @Article{Nelson89, Key="Nelson", Author="Greg Nelson", Title="A Generalization of {Dijkstra's} Calculus", Journal=TOPLAS, Volume=11, Number=4, Month=Oct, Year=1989, Pages="517-561", Annote="28 references." } @Article{Newman82, Key="Newman", Author="P. S. Newman", Title="Towards an Integrated Development Environment", Journal="IBM Systems Journal", Volume=21, Number=1, Year=1982, Pages="81-107", Annote="Systems development environment. Need for environment integration. Integration requires fundamental reworking of approaches, not superficial connections. Very high level languages. 60 references." } @InCollection{Nickl-Wirsing93, Key = "Nickl \& Wirsing", Author = "F. Nickl and M. Wirsing", Title = "A Formal Approach to Requirements Engineering", BookTitle = "Formal Methods in Programming and Their Applications", Publisher = "Springer-Verlag", Year = 1993, Editor = "Dines Bjoerner and Manfred Broy and Igor V. Pottosin", Series = LNCS, Volume = 735, Pages = "312-334", Month = Jul, Annote = "21 references." } @InProceedings{Nielsen-etal88, Key = "Nielsen, {\em et al.}", Author = "Mogens Nielsen and Klaus Havelund and Kim Ritter Wagner and Chris George", Title = "The RAISE Language, Method and Tools", BookTitle = "VDM '88", Year = 1988, Pages = "376-405" } @Article{Nielsen-etal89, Key = "Nielsen, {\em et al.}", Author = "Mogens Nielsen and Klaus Havelund and Kim Ritter Wagner and Chris George", Title = "The RAISE Language, Method and Tools", Journal= "Formal Aspects of computing", Volume= 1, Number= 1, Month= "Jan-Mar", Year = 1989, Pages = "85-114" } @Article{Nielsen92, Key = "Nielsen", Author = "Jakob Nielsen", Title = "The usability Engineering Life Cycle", Journal = "Computer", Year = 1992, Volume = 25, Number = 3, Month = Mar, Pages = "12-22", Annote = "12 references." } @InCollection{Nierstrasz-Tsichritzis89, Key="Nierstrasz \& Tsichritzis", Author="O. M. Nierstrasz and D. C. Tsichritzis", Title="Integerated Office Systems", Editor="Won Kim and Frederick H. Lochovsky", BookTitle="Object-Oriented Concepts, Databases, and Applications", Publisher=Addison-Wesley, Address="Reading, Mass.", Year=1989, Chapter=9, Pages="199-212", Annote="33 references" } @Book{Nierstrasz-Tsichritzis95, key = {Nierstrasz \& Tsichritzis}, editor = {Oscar Nierstrasz and Dennis Tsichritzis}, title = {Object-Oriented Software Composition}, booktitle = {Object-Oriented Software Composition}, publisher = {Prentice-Hall}, address = {Hemel Hempstead, Hertfordshire, UK}, year = 1995, series = {The Object-Oriented Series} } @Article{Nipkow86, Key="Nipkow", Author="Tobias Nipkow", Title="Non-deterministic Data Types: Models and Implementations", Journal="Acta Informatica", Volume=22, Number=16, Pages="629-661", Month=Mar, Year=1986, Annote="34 references." } @PhDThesis{Nipkow87, Key="Nipkow", Author="Tobias Nipkow", Title="Behavioural Implementation Concepts for Nondeterministic Data Types", School="University of Manchester", Month=May, Year=1987, Annote="97 references." } @InCollection{Nipkow89, Key="Nipkow", Author="T. Nipkow", Title="Formal Verification of Data Type Refinement --- Theory and Practice", BookTitle="Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, REX Workshop, Mook, The Netherlands", Month="May/June", Year=1989, Publisher="Spring-Verlag", Series=LNCS, Volume=430, Editor="J. W. de Bakker and W.-P. de Roever and G. Rozenberg", Pages="561-591" } @Article{Nishida-etal91, Key = "Nishida, {\em et al.}", Author = "Fujio Nishida and Shinobu Takamatsu and Yoneharu Fujita and Tadaaki Tani", Title = "Semi-Automatic Program Construction From Specifications Using Library Modules", Journal = IEEETSE, Year = 1991, Volume = 17, Number = 9, Month = Sep, Pages = "853-871", Annote = "Users write specifications, modify and rearrange them so that the specifications can be refined with the aid of library modules. 30 references." } @InProceedings{Noble-Vitek-Potter98, author = {James Noble and Jan Vitek and John Potter}, title = {Flexible Alias Protection}, BookTitle = {ECOOP '98 -- Object-Oriented Programming, 12th European Conference, Brussels, Belgium}, Editor = "Eric Jul", Series = LNCS, Volume = 1445, Month = Jul, Year = 1998, key = {Noble \& Vitek \& Potter}, publisher = {Springer-Verlag}, pages = {158-185} } @Article{Nord-Lee-Scherlis90, Key = "Nord \& Lee \& Scherlis", Author = "Robert L. Nord and Peter Lee and William L. Scherlis", Title = "Formal Manipulation and Modular Software Systems", Journal = SIGSOFT, Year = 1990, Volume = 15, Number = 4, Month = Sep, Pages = "90-99", Note = "Proceedings of the ACM SIGSOFT: International Workshop on Formal Methods in Software Development, Mark Moriconi (editor).", Annote = "23 references." } @InCollection{Norvell-Hehner93, Key = "Norvell \& Hehner", Author = "Theodore S. Norvell and Eric C.R. Hehner", Title = "Logical Specification for Functional Programs", BookTitle = "Mathematics of Program Construction, Second International Conference, Oxford, U.K.", Publisher = "Springer-Verlag", Year = 1993, Editor = "R.S. Bird and C.C. Morgan and J.C.P. Woodcock", Series = LNCS, Volume = 669, Pages = "269-290", Address = NY, Month = "June/July", Annote = "20 references." } @InCollection{Odenthal-Quibeldey-Cirkel97, key = {Odenthal \& Quibeldey-Cirkel}, author = {Georg Odenthal and Klaus Quibeldey-Cirkel}, title = {Using Patterns for Design and Documentation}, booktitle = {ECOOP '97 --- Object-Oriented Programming 11th European Conference, Jyv\"{a}skyl\"{a}, Finland}, publisher = {Springer-Verlag}, year = 1997, editor = {Mehmet Ak\c{s}it and Satoshi Matsuoka}, volume = 1241, series = LNCS, address = NY, month = Jun, pages = {511-529}, annote = {27 references.} } @Article{Ogden-etal94, author = {William F. Ogden and Murali Sitaraman and Bruce W. Weide and Stuart H. Zweben}, title = {Part {I}: The {RESOLVE} Framework and Discipline --- A Research Synopsis}, journal = SIGSOFT, year = 1994, key = {Ogden, {\em et al.}}, volume = 19, number = 4, month = {Oct}, pages = {23-28} } @InCollection{Olderog-Rossig, Key="Olderog \& Rossig", Author="E. R. Olderog and S. Rossig", Title="A Case Study in Transformational Design of Concurrent Systems", Journal=LNCS, Number=668, Publisher="Springer-Verlag", Address=NY, Editor="M. C. Gaudel and J. P. Jouannaud", Year=1993, Note="TAPSOFT '93: Theory and Practice of Software Development. 4th International Joint Conference CAAP/FASE France, April 1993. Proceedings.", Pages="90-104", Annote="25 references" } @Article{Olderog83, Key="Olderog", Author={Ernst-R\"{u}diger Olderog}, Title="On the notion of expressiveness and the rule of adaptation", Journal=TCS, Volume=24, Pages="337-347", Year=1983, Annote="Verification for languages with aliasing and pointers?" } @TechReport{Olender-Bieman91, Key = "Olender \& Bieman", Author = "Kurt M. Olender and James M. Bieman", Title = "Generating Sequencing Constraints From Algebraic Specifications", Institution = "Department of Computer Science, Colorado State University", Year = 1991, Number = "CS-91-104", Address = "Fort Collins, Colo.", Month = Mar, Annote = "22 references." } @Article{Olsson-etal91, Key = "Olsson, {\em et al,}", Author = "Ronald A. Olsson and Richard H. Crawford and W. Wilson Ho and Christopher E. Wee", Title = "Sequential Debugging at a High Level of Abstraction", Journal = "IEEE Software", Year = 1991, Volume = 8, Number = 3, Month = May, Pages = "27-36", Annote = "6 references." } @Book{Orfali-Harkey-Edwards95, key = {Orfali \& Harkey \& Edwards}, author = {Robert Orfali and Dan Harkey and Jeri Edwards}, title = {The Essential Distributed Objects Survival Guide}, publisher = {John Wiley \& Sons}, year = 1995 } @Book{Orfali-Harkey-Edwards97, key = {Orfali \& Harkey \& Edwards}, author = {Robert Orfali and Dan Harkey and Jeri Edwards}, title = {Instant {CORBA}}, publisher = {John Wiley \& Sons}, year = 1997 } @Book{Orfali-Harkey98, key = {Orfali \& Harkey}, author = {Robert Orfali and Dan Harkey}, title = {Client/Server Programming with {Java} and {CORBA}}, publisher = {John Wiley \& Sons}, year = 1998, edition = {Second Editon} } @Article{Oshana98, key = {Oshana}, author = {Robert Oshana}, title = {Tailoring Cleanroom for Industrial Use}, journal = {IEEE Software}, year = 1998, volume = 15, number = 6, month = Nov, pages = {46-55}, annote = {15 references.} } @PhDThesis{Oskarsson82, Key="Oskarsson", Author={\"{O}sten Oskarsson}, Title="Mechanisms of Modifiability in Large Software Systems", School={Software Systems Research Center, Link\"{o}ping University, S-581 83 Link\"{o}ping, Sweden}, Year=1982, Note={Link\"{o}ping Studies in Science and Technology, Dissertations, Number 77}, Annote="Relation between modifiability and modularization, measures of scattering of changes among modules caused by various kinds of change. Stability, extensibility, observability and simplicity are conjectured to aid modifiability. Case study of a release of a large telephone switching system. The following factors helped modifiability: prepared changes modules for external interfaces, indirection through data for some functions, general modules for important abstractions, encapsulated service functions and some application specific paradigms. The following factors hindered modifiability: features which were implemented in multiple modules, or with multiple alternate implementations, features spread among several modules, implementation of decisions in wrong places, changing hardware, data localized in less than general modules, indirect communication, and unnecessary software limits. Trade-offs among these concerns and other goals. 58 references." } @Article{Osterweil96, key = "Osterweil", author = "Leon Osterweil and others", title = "Strategic Directions in Software Quality", journal = ACMCS, volume = 28, number = 4, pages = "727-737", month = Dec, year = 1996, annote = "25 references." } @InCollection{Ostroff92, Key = "Ostroff", Author = "J.S. Ostroff", Title = "Formal Methods for the Specification and Design of Real-Time Safety Critical Systems", BookTitle = "Real-Time Systems: Abstractions, Languages, and Design Methodologies", Publisher = "IEEE Computer Society Press", Year = 1992, Editor = "Krishna M. Kavi", Pages = "60-87", Address = "Los Alamitos, California", Month = Oct, Annote = "144 references." } @Article{Owre-etal95, author = "Sam Owre and John Rushby and Natarajan Shankar and Friedrich von Henke", title = "Formal Verification for Fault-Tolerant Architectures: Prolegomena to the Design of {PVS}", key = "Owre, {\em et al.}", journal = IEEETSE, year = 1995, volume = 21, number = 2, pages = "107-125", month = Feb, annote = "84 references." } @TechReport{Paech-Rumpe94, Key = "Paech \& Rumpe", Author = "Barabara Paech and Berhard Rumpe", Title = "A new Concept of Refinement used for Behavior Modelling with Automata", Institution = "Institut fur Informatik", Year = 1994, Number = "TUM-I9413", Address = "Technische Universitat Munchen, D-80290 Munchen", Month = May, Annote = "14 references." } @InProceedings{Paech-Rumpe95, Key = "Paech \& Rumpe", Author = "Barabara Paech and Berhard Rumpe", Title = "A new Concept of Refinement used for Behavior Modelling with Automata", booktitle = "{FME '94}: Industrial Benefits of Formal Methods", publisher = "Springer-Verlag", year = 1995, editor = "Maurice Naftalin and Tim Denvir and Miquel Bertran", volume = 873, series = LNCS, pages = "154-174", address = NY, annote = "14 references." } @Article{Paige86, Key="Paige", Author="Robert Paige", Title="Programming with Invariants", Journal="IEEE Software", Month=Jan, Year=1986, Pages="56-69", Annote="Examples in extended SETL. 12+36 references." } @Article{Palasinska-Pigozzi95, author = {K. Pa{\l}asi\'{n}ska and D. Pigozzi}, title = {Gentzen-Style Axiomatizations in Equational Logic}, journal = {Algebra Universalis}, year = 1995, key = {Palasinska \& Pigozzi}, volume = 34, pages = {128-143} } @TechReport{Palasinska-Pigozzi95b, author = {K. Pa{\l}asi\'{n}ska and D. Pigozzi}, title = {Implication in Abstract Algebraic Logic}, institution = {Centre de Recerca Matematica}, address = {Barcelona, Spain}, key = {Palasinska \& Pigozzi}, year = 1995, month = Dec, type = {preprint}, number = "311" } @InCollection{Palsberg92, Key = "Palsberg", Author = "Jens Palsberg", Title = "A Provably Correct Compiler Generator", BookTitle = "ESOP '92, 4th European Symposium on Programming, Rennes, France, February 1992, Proceedings", Publisher = "Springer-Verlag", Year = 1992, Editor = "Bernd Krieg-Bruckner", Series = LNCS, Address = NY, Volume = 582, Pages = "418-434", Annote = "65 references" } @Article{Palsberg97, key = {Palsberg}, author = {Jens Palsberg}, title = {Class-Graph Inference for Adaptive Programs}, journal = TAPOS, year = 1997, volume = 3, number = 2, pages = {75-85}, annote = {25 references.} } @Article{Parikh85, Key="Parikh", Author="Girish Parikh", Title="Discovering the World of Software Maintenance: Selected Readings", Journal=SIGSOFT, Volume=10, Number=5, Month=Oct, Year=1985, Pages="79-88", Annote="Annotated and graded bibliography with 47 references." } @Article{Parissis-Ouabdesselam96, key = {Parissis \& Ouabdesselam}, author = {Ioannis Parissis and Farid Ouabdesselam}, title = {Specification-based Testing of Synchronous Software}, journal = SIGSOFT, year = 1996, editor = {David Garlan}, volume = 21, number = 6, month = Nov, pages = {127-134}, note = {SIGSOFT '96: Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, San Francisco, California}, annote = {25 references.} } @Book{Parker93, key = "Parker", author = "Alan Parker", title = "Algorithms and Data Structures in {C++}", publisher = "CRC Press", year = 1993, address = "Boca Raton, LA" } @InCollection{Parkin-Wichman93, Key = "Parkin \& Wichman", Author = "Graeme I. Parkin and Brian Wichmann", Title = "Conformity Clause for VDM-SL", BookTitle = "Industrial-Strength Formal Methods, First International Symposium of Formal Methods Europe, Odense, Denmark", Publisher = "Springer-Verlag", Year = 1993, Editor = "J.C.P. Woodcock and P.G. Larsen", Series = LNCS, Volume = 670, Pages = "501-520", Address = NY, Month = Apr, Annote = "27 references." } @TechReport{Parnas-Madey91, key = "Parnas \& Madey", author = "D. L. Parnas and J. Madey", title = "Functional documentation for computer systems engineering", type = "CRL Report", number = "No.\ 237, Version 2", institution = "TRIO, Communications Research Laboratory", address = "Faculty of Engineering, McMaster University, Hamilton, Ontario, Canada L8S 4K1", month = Sep, year = 1991 } @Article{Parnas-Madey95, key = "Parnas \& Madey", title = "Functional documents for computer systems", author = "David Lorge Parnas and Jan Madey", pages = "41--61", journal = "Science of Computer Programming", month = Oct, year = 1995, volume = 25, number = 1 } @Article{Parnas-Madey-Iglewski94, key = "Parnas \& Madey \& Iglewski", author = "David Lorge Parnas and Jan Madey and Michal Iglewski", title = "Precise Documentation of Well-Structured Programs", journal = "IEEE Transactions on Software Engineering", year = "1994", volume = "20", number = "12", pages = "948--976", month = Dec } @Article{Parnas-Siewiorek75, Key="Parnas \& Siewiorek", Author="D. L. Parnas and D. P. Siewiorek", Title="Transparency in the Design of Hierarchically Structured Systems", Journal=CACM, Volume=18, Year=1975, Number=7, Month=Jul, Pages="401-408", Annote="Design of hierarchically structured systems. Method for evaluating the cost of requiring programmers to work with an abstraction on a real machine. 18 references." } @TechReport{Parnas-Smith-Pearce88, Key="Parnas \& Smith \& Pierce", Author="David L. Parnas and David G. Smith and Trevor Pearce", Title="Making Formal Software Documentation More Practical A Progress Report", Month=Nov, Year=1988, Number="88-236", Institution="Department of Computing and Information Science, Queen's University at Kingston", Address="Kingston, Ontario, Canada", Annote="21 references." } @TechReport{Parnas-Wang89, Key="Parnas \& Wang", Author="David Lorge Parnas and Yabo Wang", Title="The Trace Assertion Method of Module Interface Specification", Month=Oct, Year=1989, Number="89-261", Institution="Department of Computing and Information Science, Queen's University at Kingston", Address="Kingston, Ontario, Canada", Annote="Reference and summary of the trace assertion method. 18 references." } @InProceedings{Parnas71, Key="Parnas", Title="Information Distribution Aspects of Design Methodology", Author="D. L. Parnas", BookTitle="Proceedings of IFIP Congress 71", Organization=IFIP, Year=1971, Pages="339-344" } @Article{Parnas72a, Key="Parnas", Author="D. L. Parnas", Title="A Technique for the Specification of Software Modules with Examples", Journal=CACM, Volume=15, Year=1972, Number=5, Month=May, Pages="330-336", Annote="Complete but not overly constrained specifications are stressed. 6 references." } @Article{Parnas72b, Key="Parnas", Title="On the Criteria to be Used in Decomposing Systems into Modules", Author="D. L. Parnas", Journal=CACM, Year=1972, Month=Dec, Volume=15, Number=12 } @InCollection{Parnas75, Key="Parnas", Author="D. L. Parnas", Title="Software Engineering or Methods for the Multi-Person construction of Multi-Version Programs", BookTitle="Programming Methodology, 4th Informatik Symposium, IBM Germany, Wildbad, 25-27 September, 1974", Series=LNCS, Editor="Clemens E. Hackl", Publisher="Springer-Verlag", Address=NY, Volume=23, Year=1975, Pages="225-235", Annote="Overview of methods to achieve desired properties. Limitations of information hiding for efficiency. 13 references." } @Article{Parnas76, Key="Parnas", Author="David L. Parnas", Title="On the Design and Development of Program Families", Journal="IEEE Transactions on Software Engineering", Volume="SE-2", Year=1976, Number=1, Month=Mar, Pages="1-9", Annote="Development of a whole set of programs. 16 references." } @Article{Parnas79a, Key="Parnas", Author="D. L. Parnas", Title="Designing Software for Ease of Expansion and Contraction", Journal=IEEETSE, Volume="SE-5", Year=1979, Number=2, Month=Mar, Pages="128-138", Annote="Focuses on design of software that can be subseted and expanded. Families of programs sharing subsets of modules. Loops in the 'uses' relation should be avoided. Minimal program subset and minimal increments. Virtual machines, modules, uses relation. Criteria for letting a module use another module. Example. 21 references." } @InCollection{Parnas79b, Key="Parnas", Author="David L. Parnas", Title="The Role of Program Specifications", BookTitle="Research Directions in Software Technology", Editor="Peter Wegner", Publisher=MITP, Address="Cambridge, Mass.", Year=1979, Pages="364-370", Annote="Requirements and design specifications should not be distinguished. Use of informal specifications is better than formal ones. Abstract specifications always better than operational specs. 11 references." } @Article{Parnas93, Key="Parnas", Author="D. L. Parnas", Title="Predicate Logic for Software Engineering", Journal=IEEETSE, Volume=19, Year=1993, Number=9, Month=Sep, Pages="856-862", Annote="Logic that deals with partial functions. 9 refenences." } @Article{Partsch-Steinbruggen83, Key={Partsch \& Steinbr\"{u}ggen}, Author={H. Partsch and R. Steinbr\"{u}ggen}, Title="Program Transformation Systems", Journal="Computing Surveys", Volume=15, Number=3, Month=Sep, Year=1983, Pages="199-236", Annote="Comprehensive survey of current research efforts. 184 references." } @Book{Partsch90, Key = "Partsch", Author = "Helmut A. Partsch", Title = "Specification and transformation of programs: a formal approach to software development", Publisher = "Springer-Verlag", Year = "1990", Series = "Texts and Monographs in Computer Science", Address = NY } @InCollection{Partsch93, Key = "Partsch", Author = "Helmut Partsch", Title = "Formal problem specification on an algebraic basisi", BookTitle = "Formal Program Development", Publisher = "Springer-Verlag", Year = 1993, Editor = "Bernhard Moeller and Helmut Partsch and Steve Schuman", Series = LNCS, Volume = 755, Pages = "183-224", Address = NY, Month = Jul, Annote = "42 references." } @Article{Paulo-Masiero-deOliveira99, key = {Paulo \& Masiero \& de Oliveira}, author = {Fabiano Borges Paulo and Paulo Cesar Masiero and Maria Cristina Fierreira de Oliveira}, title = {Hypercharts: Extended Statecharts to Support Hypermedia Specification}, journal = IEEETSE, year = 1999, volume = 25, number = 1, month = Jan, pages = {33-49}, annote = {18 references.} } @InProceedings{Paulson90, key = "Paulson", author = "Lawrence Paulson", title = "Isabelle: The next seven hundred theorem provers", booktitle = "Proceedings of the Tenth International Conference on Automated Deduction (Kaiserslautern, West Germany)", editor = "M. Stickel", series = LNCS, publisher = sv, address = "Berlin", volume = "449", year = "1990", pages = "7??--7??" } @Book{Paulson94, key = "Paulson", author = "Lawrence C. Paulson", title = "Isabelle: {A} Generic Theorem Prover", publisher = "Springer-Verlag", Series = LNCS, Volume = 828, year = "1994", keywords = "Isabelle" } @InCollection{Penny-Holt-Godfrey91, Key = "Penny \& Holt \& Godfrey", Author = "David A. Penny and Richard C. Holt and Michael W. Godfrey", Title = "Formal Specification in Metamorphic Programming", BookTitle = "VDM '91 Formal Software Development Methods 4th International Symposium of VDM Europe Noordwijkerhout, The Netherlands, Volume 1: Conference Contributions", Publisher = Springer-Verlag, Year = 1991, Editor = "S. Prehn and W. J. Toetenel", Series = LNCS, Volume = 551, Pages = "11-30", Address = NY, Month = Oct, Annote = "Tries to minimize gaps between analysis, specification, prototyping, implementation, and tuning. Idea is that the outside view of the software is a cocoon that doesn't change, and keeps metamorphis inside. 26 references." } @InCollection{Pepper93, Key = "Pepper", Author = "Peter Pepper", Title = "Program development in an algebraic setting", BookTitle = "Formal Program Development", Publisher = "Springer-Verlag", Year = 1993, Editor = "Bernhard Moeller and Helmut Partsch and Steve Schuman", Series = LNCS, Volume = 755, Pages = "225-262", Address = NY, Month = Jul, Annote = "37 references." } @InProceedings{Perry89, author = "D. E. Perry", title = "The {Inscape} Environment", booktitle = "Proceedings of the~11th~International Conference on Software Engineering", pages = "2--12", month = may, year = "1989", abstract = "The Inscape Environment is an integrated software development environment for building large software systems by large groups of developers. It provides tools that are knowledgeable about the process of system construction and evolution and that work in symbiosis with the system builders and evolvers. These tools are integrated around the constructive use of formal module interface specifications. The author first discusses the problems that Inscape addresses, outlines his research strategies and approaches to solving these problems, and summarizes the contributions of the Inscape Environment. He then discusses the major aspects of the Inscape Environment: the specification language, system construction, system evolution, use and reuse, and validation. The author illustrates these various components with examples and discussions.", } @InProceedings{Perry89a, author = "Dewayne E. Perry", title = "An Overview of the {Inscape} environment", booktitle = "Proceedings of the International Workshop on Environments", year = "1989", editor = "Fred Long", pages = "131--135", address = "Chinon, France", organization = "Lecture Notes in Computer Science Nr. 467", publisher = "Springer--Verlag", month = sep, } @Article{Perry90, Key="Perry-Kaiser", Author="D. E. Perry and G. E. Kaiser", Title="Adequate Testing and Object-Oriented Programming", Journal=JOOP, Volume=2, Number=5, Pages="13-19", Year=1990, Month="Jan/Feb" } @Article{Peters-Parnas98, author = {Dennis K. Peters and David Lorge Parnas}, title = {Using Test Oracles Generated from Program Documentation}, journal = IEEETSE, year = 1998, key = {Peters \& Parnas}, volume = 24, number = 3, pages = {161-173}, month = {Mar}, annote = {LD-relations and tabular forms of specification. 37 references.} } @InProceedings{Petre-Winder88, Key = "Petre \& Winder", Author = "M. Petre and R. L. Winder", Title = "Issues Governing the Suitability of Programming Languages for Programming Tasks", BookTitle = "People and Computers IV: Proceedings of HCI'88", Year = 1988, Publisher = "Cambridge University Press", Address = "Cambridge" } @InCollection{Pettorossi-Proietti93, Key = "Pettorossi \& Proietti", Author = "Alberto Pettorossi and Maurizio Proietti", Title = "Rules and Strategies for program transformation", BookTitle = "Formal Program Development", Publisher = "Springer-Verlag", Year = 1993, Editor = "Bernhard Moeller and Helmut Partsch and Steve Schuman", Series = LNCS, Volume = 755, Pages = "263-304", Address = NY, Month = Jul, Annote = "84 references." } @Article{Pfleeger-etal97, key = {Pfleeger, {\em et al.}}, author = {Shari Lawrence Pfleeger and Ross Jeffery and Bill Curtis and Barbara Kitchenham}, title = {Status Report on Software Measurement}, journal = {IEEE Software}, year = 1997, volume = 14, number = 2, month = Mar, pages = {33-43}, annote = {Software metrics. More than 23 references.} } @Book{Pfleeger98, author = {Shari Lawrence Pfleeger}, title = {Software Engineering: Theory and Practice}, publisher = {Prentice-Hall}, year = 1998, key = {Pfleeger}, address = {Upper Saddle River, NJ}, annote = {Annotated bibliography with many references.} } @Article{Pillai-Nair97, key = {Pillai \& Nair}, author = {Krishnakumar Pillai and V. S. Suhumaran Nair}, title = {A Model for Software Development Effort and Cost Estimation}, journal = IEEETSE, year = 1997, volume = 23, number = 8, month = Aug, pages = {485-497}, annote = {17 references.} } @InCollection{Pinci-Shapiro90, Key = "Pinci \& Shapiro", Author = "Valerio O. Pinci and Robert M. Shapiro", Title = "An Integrated Software Development Methodology Based on {Hierarchical Colored Petri Nets}", BookTitle = "Advances in Petra nets 1990", Publisher = "Springer-Verlag", Year = 1990, Editor = "G. Rosenberg", Series = LNCS, Volume = 483, Address = NY, Annote = "10 references." } @Article{Plat-Larsen92, Key = "Plat \& Larsen", Author = "Nico Plat and Peter Gorm Larsen", Title = "An Overview of the {ISO/VDM-SL} Standard", Journal = SIGPLAN, Year = 1992, Volume = 27, Number = 8, Month = Aug, Pages = "76-82", Annote = "16 references." } @InCollection{Plat-vanKatwijk-Pronk91, Key="Plat \& van Katwijk \& Pronk", Author = "N. Plat and J. van Katwijk and K. Pronk", Title = "A case for structured analysis/formal design", BookTitle = "{V}{D}{M} 91 - Formal Software Development Methods", Publisher = "Springer-Verlag", Series=LNCS, Volume=551, Year = 1991 } @InCollection{Pnueli86, Key="Pnueli", Author="A. Pnueli", Title="Applications of Temporal Logic to the Specification and Verification of Reactive Systems: A Survey of Current Trends", BookTitle="Current trends in Concurrency: Overviews and Tutorials", Series=LNCS, Volume=224, Editor="W.-P. de Roever and G. Rozenberg", Publisher="Springer-Verlag", Address=NY, Year=1986, Pages="510-584" } @InCollection{Pnueli93, Key="Pnueli", Author="A. Pnueli", Title="System Specification and Refinement in Temporal Logic", Series=LNCS, Volume=652, Editor="R. Shyamasundar", Publisher="Springer-Verlag", Address=NY, Year=1993, Pages="1-38", Annote="30 references" } @InProceedings{Poetzsch-Heffter-Mueller99, key = { Poetzsch-Heffter \& M{\"u}ller }, author = { Poetzsch-Heffter, A. and M{\"u}ller, P. }, title = { A Programming Logic for Sequential {J}ava }, booktitle = { European Symosium un Programming ({ESOP}~'99) }, editor = { Swierstra, S. D. }, series = LNCS, volume = 1576, pages = {162--176}, year = 1999, publisher = { Springer-Verlag }, URL = "http://www.informatik.fernuni-hagen.de/import/pi5/forschung/veroeffentlichungen/esop99.ps.gz" } @InCollection{Mueller-Poetzsch-Heffter00, key = {M{\"u}ller \& Poetzsch-Heffter}, author = {Peter M{\"u}ller and Arnd Poetzsch-Heffter}, title = {Modular Specification and Verification Techniques for Object-Oriented Software Components}, booktitle = {Foundations of Component-Based Systems}, publisher = {Cambridge University Press}, year = 2000, editor = {Gary T. Leavens and Murali Sitaraman}, chapter = 7, pages = {137-159}, annote = {15 references.} } @InProceedings{Poetzsch-Heffter95, author = {Arnd Poetzsch-Heffter}, title = {Interface Specifications for Program Modules Supporting Selective Updates and Sharing and their Use in Correctness Proofs}, booktitle = {Softwaretechnik 95}, editor = {G.~Snelting}, year = 1995 } @Misc{Poetzsch-Heffter97, Key = "Poetzsch-Heffter", Author = { Arnd Poetzsch-Heffter }, Title = { Specification and Verification of Object-Oriented Programs }, HowPublished = { Habilitation thesis, Technical University of Munich }, Month = { January }, Year = 1997, URL = "http://www.informatik.fernuni-hagen.de/pi5/publications/habil.ps.gz" } @InProceedings{Polak81, Key="Polak", Author="Wolfgang Polak", Title="Program Verification Based on Denotational Semantics", BookTitle="Conference Record of the Eighth ACM Symposium on Principles of Programming Languages", Publisher=ACM, Month=Jan, Year=1981, Pages="149-158", Annote="24 references." } @Article{Ponder-Bush94, Key = "Ponder \& Bush", Author = "C. Ponder and B. Bush", Title = "Polymorphism Considered Harmful", Journal = "Software Engineering Notes", Year = 1994, Volume = 19, Number = 2, Month = Apr, Pages = "35-37", Annote = "3 references." } @Article{Porat-Fertig95, author = {Sara Porat and Paul Fertig}, title = {Class assertions in C++}, journal = JOOP, year = 1995, key = {Porat \& Fertig}, volume = 8, number = 2, month = {May}, pages = {30-37}, annote = {Similar to Eiffel. 15 references.} } @Book{Potter-Sinclair-Till91, Key = "Potter \& Sinclair \& Till", Author = "B. Potter and J. Sinclair and D. Till", Title = "An Introduction to Formal Specification and {Z}", Publisher = "Prentice-Hall", Year = 1991 } @InProceedings{Pratt80, Key="Pratt", Author="V. R. Pratt", Title="On Specifying Verifiers", BookTitle="Conference Record of the Seventh Annual ACM Symposium on Principles of Programming Languages, Las Vegas, Nevada", Organization=ACM, Month=Jan, Year=1980, Pages="106-116", Annote="Reply to the De Millo, Lipton, Perlis paper. 11 references." } @InCollection{Presicce-Pierantonio91, Key = "Presicce-Pierantonio", Author = "F. Parisi Presicce and A. Pierantonio", Title = "An Algebraic View of Inheritance and Subtyping in Object Oriented Programming", BookTitle = "ESEC '91: 3rd European Software Engineering Conference, Milan, Italy", Publisher = "Springer-Verlag", Year = 1991, Editor = "A. van Lamsweerde and A. Fugetta", Series = LNCS, Volume = 550, Pages = "364-379", Month = Oct, Annote = "19 references." } @Book{Pressman86, Key = "Pressman", Author = "R. S. Pressman", Title = "Software Engineering: A Practitioner's Approach", Publisher = "McGraw-Hill", Year = 1986, Address = NY, Edition = "Second Edition" } @InProceedings{Pritchard77, Key = "Pritchard", Author = "P. Pritchard", Title = "Program Proving --- expression languages", BookTitle = "Information Processing 77", Year = 1977, Pages = "727-731", Publisher = "North-Holland", Address = "Amsterdam" } @Article{Puente-etal93, key = "Puente, {\em et al.}", author = "Juan A. de la Puente and Alejandro Alonso and Gonzalo Le\'{o}n and Juan Carlos Due\~{n}as", title = "Distributed Execution of Specifications", journal = "Real-Time Systems", year = 1993, volume = 5, pages = "235-248", annote = "The IPTES environment's method of prototyping. 20 references." } @InProceedings{Pun-Winder89, Key="Pun \& Winder", Author="Winnie W. Y. Pun and Russell L. Winder", Title="A Design Method for Object-Oriented Programming", BookTitle="{ECOOP'89}, European Conference on Object-Oriented Programming, British Computer Society Workshop Series", Editor="Stephen Cook", Month=Jul, Year=1989, Publisher="Cambridge University Press", Pages="225-240", Annote="9 references." } @Article{Qian-Goldberg93, Key = "Qian \& Goldberg", Author = "Xiaolei Qian and Allen Goldberg", Title = "Referential Opacity in Nondeterministic Data Refinement", Journal = "ACM Letters on Programming Languages and Systems", Year = 1993, Volume = 2, Number = "1-4", Month = "March-December", Pages = "233-241", Annote = "13 references." } @Article{Quiros-Millan97, key = {Quir\'{o}s \& Millan}, author = {Pedro de las Heras Quir\'{o}s and Jos\'{e} M. Olmo Millan}, title = {Inheritance Anomaly in {CORBA} Multithreaded Environments}, journal = TAPOS, year = 1997, volume = 3, number = 1, pages = {45-54}, annote = {27 references.} } @InProceedings{Rafsanjani-Colwill93, Key = "Rafsanjani \& Colwill", Author = "G-H. B. Rafsanjani and S. J. Colwill", Title = {From {Object-Z} to {C$^{++}$}: A Structural Mapping}, Crossref = "Bowen-Nicholls93", Pages = "166-179" } @TechReport{Raj-Levy89, Key="Raj \& Levy", Author="Rajendra K. Raj and Henry M. Levy", Title="A Compositional Model for Software Reuse", BookTitle="{ECOOP'89}, European Conference on Object-Oriented Programming, British Computer Society Workshop Series", Editor="Stephen Cook", Month=Jul, Year=1989, Publisher="Cambridge University Press", Pages="3-24", Note="Also TR 89-01-04, Department of Computer Science, University of Washington", Annote="Discussion of Emerald, which has type inheritance, but not code inheritance. Other kinds of code sharing. The Jade system for programming in the large. 31 references." } @Article{Ram-Dwivedi-Ongole98, key = {Ram \& Dwivedi \& Ongole}, author = {D. Janaki Ram and R. A. Dwivedi and Ramakrishna Ongole}, title = {An Implementation Mechanism for Design Patterns}, journal = SIGSOFT, year = 1998, volume = 23, number = 5, month = Sep, pages = {52-56}, annote = {7 references.} } @Article{Ramesh98, key = {Ramesh}, author = {Balasubramaniam Ramesh}, title = {Factors Influencing Requirements Traceability Practice}, journal = CACM, year = 1998, volume = 41, number = 12, month = Dec, pages = {37-44}, annote = {Results from a survey. 12 references.} } @Book{Rann-Turner-Whitworth94, author = "David Rann and John Turner and Jenny Whitworth", title = "{Z}: {A} Beginner's Guide", publisher = "Chapman \& Hall", address = "London", ISBN = "0 412 55660 X", year = "1994", Annote = "A book for self-study" } @Article{Reddy90, Key = "Reddy", Author = "Uday S. Reddy", Title = "Formal Methods in Transformational Derivation of Programs", Journal = SIGSOFT, Year = 1990, Volume = 15, Number = 4, Month = Sep, Pages = "104-114", Note = "Proceedings of the ACM SIGSOFT: International Workshop on Formal Methods in Software Development, Mark Moriconi (editor).", Annote = "30 references." } @Article{Reed-Yeh88, Key="Reed \& Yeh", Author="Joylyn Reed and Raymond T. Yeh", Title="Specification and Verification of Liveness Properties of Cyclic, Concurrent Processes", Journal=TOPLAS, Volume=10, Number=1, Month=Jan, Year=1988, Pages="156-177", Annote="Specification and verification of concurrent, distributed systems. 25 references." } @InProceedings{Reichgelt-Shadbolt90, Key = "Reichgelt \& Shadbolt", Author = "Han Reichgelt and Nigel Shadbolt", Title = "A Specification Tool for Planning Systems", BookTitle = "Proceedings of the 9th European Conference on Artificial Intelligence (ECAI-90), Stockholm, Sweden", Year = "1990", Pages = "541-546", Annote = "25 references." } @InProceedings{Riehle97, key = {Riehle}, author = {Riehle97}, title = {Composite Design Patterns}, BookTitle = "Conference Proceedings of OOPSLA '97, Atlanta", Series = SIGPLAN, Volume = "32(10)", Month = Oct, Year = 1997, organization = ACM, pages = {218-228}, annote = {34 references.} } @Book{Riel96, author = {Arthur J. Riel}, title = {Object-Oriented Design Heuristics}, publisher = {Addison-Wesley}, year = 1996 } @Book{Rescher69, Key="Rescher", author = "N. Rescher", title = "Many-valued Logic", publisher = "McGraw-Hill", address = "New York", year = "1969" } @MastersThesis{Restivo85, Key="Restivo", Author="James P. Restivo", Title="Adding Type Information to the Argus Debugging System", School=MIT, Month=May, Year=1985, Annote="Describes the separation approach, where type information is available to the debugger for type checking but not to the program itself. 12 references." } @Article{Rettig91, Key = "Rettig", Author = "Marc Rettig", Title = "Practical Programmer: Nobody Reads Documentation", Journal = CACM, Year = 1991, Volume = 34, Number = 4, Month = Jul, Pages = "19-24", Annote = "0 references." } @Article{Rich-Feldman92, Key = "Rich \& Feldman", Author = "Charles Rich and Yishai A. Feldman", Title = "Seven Layers of Knowledge Representation and Reasoning in Support of Software Development", Journal = IEEETSE, Year = 1992, Volume = 18, Number = 6, Month = Jun, Pages = "451-469", Annote = "35 references." } @Article{Rich-Shrobe78, Key="Rich \& Shrobe", Author="C. Rich and H. L. Shrobe", Title="Initial Report on a Lisp Programmer's Apprentice", Journal=IEEETSE, Year=1978, Month=Jun, Volume="SE-4", Number=6, Pages="454-467" } @TechReport{Rich-Waters81, Key="Rich \& Waters", Author="C. Rich and R. C. Waters", Title="Abstraction, Inspection and Debugging in Programming", Institution=MITAI, Number=634, Year=1981, Month=Jun } @Book{Rich-Waters90, Key="Rich \& Waters", Author="Charles Rich and Richard C. Waters", Title="The Programmer's Apprentice", Publisher=Addison-Wesley, Address=NY, Year=1990, Series="ACM Frontier Series", Annote="158 references." } @Book{Riddle-Fairley80, Key="Riddle \& Fairley", Editor="W. E. Riddle and R. E. Fairley", Title="Software Development Tools", Note="Proceedings of a workshop held at Pingree Park, Colorado in May 1979", Publisher="Springer-Verlag", Address=NY, Year=1980 } @InProceedings{Riecke-Subrahmanyam93, Key="Riecke \& Subrahmanyam", Author="Jon G. Riecke and Ramesh Subrahmanyam", Title="Algebraic Reasoning and Completeness in Typed Languages", BookTitle=" Conference record of the Twentieth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Charleston, South Carolina", Organization=ACM, Year=1993, Month=Jan, Pages="185-195", Annote="17 references" } @Article{Robinson-Levitt77, Key="Robinson", Author="Lawrence Robinson and Karl N. Levitt", Title="Proof Techniques for Hierarchically Structured Programs", Journal=CACM, Volume=20, Number=4, Pages="271-283", Month=Apr, Year=1977, Annote="Program represented as levels of abstractions. Help for proofs of large programs. 44 references." } @Article{Robinson-etal75, Key="Robinson, {\em et al.}", Author="J. Robinson and K. N. Levitt and P. G. Neumann and A. R. Saxena", Title="On attaining Reliable Software for a Secure Operating System", Journal=SIGPLAN, Year=1975, Volume=10, Number=5, Month=May, Pages="267-284", Note="International Conference on Reliable Software" } @Article{Rodriguez-Dapena99, key = {Rodriguez-Dapena}, author = {Patricia Rodriguez-Dapena}, title = {Software Safety Certification: A Multidomain Problem}, journal = {IEEE Software}, year = 1999, volume = 16, number = 4, month = Jul, pages = {31-38}, annote = {12 references.} } @Unpublished{Rollins-Wing91, Key = "Rollins \& Wing", Author = "Eugene J. Rollins and Jeannette M. Wing", Title = "Specifications as Search Keys for Software Libraries", Note = "To appear in the Proceedings of the International Conference on Logic Programming, Paris, June 1991.", Annote = "20 references.", Month = Jun, Year = 1991 } @InCollection{Rose92, Key = "Rose", Author = "Gordon Rose", Title = "Object-{Z}", Editor = "Susan Stepney and Rosalind Barden and David Cooper", BookTitle = "Object Orientation in Z", Publisher = "Springer-Verlag", Year = 1992, Address = "Cambridge CB2 1LQ, UK", Series = "Workshops in Computing", Crossref = "Stepney-Barden-Cooper92", Pages = "59-77" } @InCollection{Rose-Duke94, author = "Gordon Rose and Roger Duke", title = "An {Object-Z} Specification of a Mobile Phone System", key = "Rose \& Duke", booktitle = "Object-Oriented Specification Case Studies", publisher = "Prentice-Hall", year = 1994, editor = "Kevin Lano and Howard Haughton", series = "The Object-Oriented Series", chapter = 5, Crossref = "Lano-Haughton94", pages = "110-129", address = NY } @InProceedings{Rosenblum92, author = "D. S. Rosenblum", title = "Towards a Method of Programming with Assertions", booktitle = "Proceedings of the~14th~International Conference on Software Engineering", pages = "92--104", month = may, year = "1992", abstract = "Embedded assertions have long been recognized as a potentially powerful tool for automatic runtime detection of software faults during debugging, testing and maintenance. However, they have seen little widespread use in practice because previous assertion processing tools did not integrate easily with existing programming environments, and it is not well understood what kinds of assertions are most effective at detecting software faults. The author describes experience using an assertion processing tool that was built to address the concerns of ease-of-use and effectiveness. The tool is called APP, an Annotation Pre-Processor for C programs developed in UNIX-based development environments. APP has been used to develop a number of software systems over three years. Based on this experience, the author presents a classification of the assertions that were most effective at detecting faults. While the assertions that are described guard against many common kinds of faults and errors, the very commonness of such faults demonstrates the need for an explicit, high-level, automatically checkable specification of required behavior.", } @Article{Rosenblum95, author = "David S. Rosenblum", title = "A Practical Approach to Programming With Assertions", journal = "IEEE Transactions on Software Engineering", year = "1995", volume = "21", number = "1", pages = "19--31", month = jan, } @InProceedings{Rossie98, key = {Rossie}, author = {Jonathan G. {Rossie Jr.}}, title = {Logical Observable Entities}, BookTitle = "OOPSLA '98 Conference Proceedings", Series = SIGPLAN, Volume = "33(10)", Month = Oct, Year = 1998, organization = ACM, pages = {154-165}, annote = {Subtyping for state machines. 42 references.} } @Book{Rumbaugh-Jacobson-Booch99, author = {James Rumbaugh and Ivar Jacobson and Grady Booch}, title = {The Unified Modeling Language Refrence Manual}, publisher = {Addison Wesley Longman}, year = 1999, key = {Rumbaugh \& Jacobson \& Booch}, series = {Object Technology Series}, address = {Reading, Mass.} } @Article{Rushby-Owre-Shankar98, author = {John Rushby and Sam Owre and Natarajan Shankar}, title = {Integration of Sequential Scenarios}, journal = IEEETSE, year = 1998, key = {Rushby \& Owre \& Shankar}, volume = 24, number = 9, month = Sep, pages = {709-720}, annote = {31 references.} } @Techreport{Rushby-vonHenke-Owre91, Key = "Rushby \& von Henke \& Owre", Author = "John Rushby, Friedrich von Henke and Sam Owre", Title = "An Introduction to Formal Specification and Verification Using EHDM", Institution = "SRI International", Month = Feb, Year = 1991, Number = "CSL-91-02", Annote = "28 references." } @Article{Russell-Strom-Yellin94, Key = "Russell \& Strom \& Yellin", Author = "James R. Russell and Robert E. Strom and Daniel M. Yellin", Title = "A Checkable Interface Language for Pointer-Based Structures", Journal = SIGPLAN, Year = 1994, Volume = 29, Number = 8, Month = Aug, Pages = "59-73", Annote = "13 references." } @Article{Sakkinen88b, Key = "Sakkinen", Author = "Markku Sakkinen", Title = "Comments on ``the Law of Demeter'' and C++", Journal = SIGPLAN, Year = 1988, Volume = 23, Number = 12, Month = Dec, Pages = "38-44", Annote = "7 references." } @Book{Sametinger97, key = {Sametinger}, author = {Johannes Sametinger}, title = {Software Engineering with Reusable Components}, publisher = {Springer-Verlag}, year = 1997, address = NY } @InProceedings{Sands95, Key = {Sands}, Author = {David Sands}, Title = "Total Correctness by Local Improvement in Program Transformation", BookTitle = "Conference Record of POPL '95: 22nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Francisco, Calif.", Month = Jan, Year = 1995, Organization = ACM, Address = NY, Pages = "221-232", Annote = "Functional programming. 41 references." } @Article{Sangiorgi99, key = {Sangiorgi}, author = {Davide Sangiorgi}, title = {Typed $\pi$-Calculus at Work: A Correctness Proof of {Jones's} Parallelisation Transformation on Concurrent Objects}, journal = TAPOS, year = 1999, volume = 5, number = 1, pages = {25-33}, annote = {26 references.} } @Article{Sannella-Sokolowski-Tarlecki92, Key = "Sannella \& Sokolowski \& Tarlecki", Author = "Donald Sannella and Stefan Sokolowski and Andrzej Tarlecki", Title = "Towards formal development of programs from algebraic specifications: parameterisation revisited.", Journal = "Acta Informatica", Year = 1992, Volume = 29, Number = 8, Pages = "689-736" } @Article{Sannella-Tarlecki84, Key="Sannella \& Tarlecki", Author="Donald Sannella and Andrzej Tarlecki", Title="Specifications in an Arbitrary Institution", Journal="Information and Computation", Volume=76, Number="2/3", Month="February/March", Year=1988, Pages="165-210", Note="A revised version of the paper that appeared in the 1984 Semantics of Data Types Symposium, LNCS 173, pages 337--356.", Annote="59 references." } @InCollection{Sannella-Tarlecki85a, Key="Sannella \& Tarlecki", Author="Donald Sannella and Andrzej Tarlecki", Title="On Observational Equivalence and Algebraic Specification", BookTitle="Mathematical Foundations of Software Development, Proceedings of the International Joint Conference on Theory and Practice of Software Development (TAPSOFT), Berlin. Volume 1: Colloquium on Trees in Algebra and Programming (CAAP '85)", Month=Mar, Year=1985, Pages="308-322", Editor="Hartmut Ehrig and Christiane Floyd and Maurice Nivat and James Thatcher", Series=LNCS, Volume=185, Publisher="Springer-Verlag", Address=NY, Annote="38 references." } @InProceedings{Sannella-Tarlecki85b, Key="Sannella \& Tarlecki", Author="Donald Sannella and Andrzej Tarlecki", Title="Program Specification and Developemnt in Standard ML", BookTitle="Conference Record of the Twelveth ACM Symposium on Principles of Programming Languages", Publisher=ACM, Month=Jan, Year=1985, Pages="67-77" } @Article{Sannella-Tarlecki87, Key="Sannella \& Tarlecki", Author="Donald Sannella and Andrzej Tarlecki", Title="On Observational Equivalence and Algebraic Specification", Journal=JCSS, Volume=34, Number="2/3", Month="April/June", Year=1987, Pages="150-178", Note="An earlier version appeared in the TAPSOFT, CAAP '85 proceedings, Springer-Verlag LNCS volume 185, pages 308-322." } @TechReport{Sannella-Tarlecki89, Key="Sannella \& Tarlecki", Author="Donald Sannella and Andrzej Tarlecki", Title="Toward formal development of ML programs: foundations and methodology (preliminary version)", Organization="Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh", Month=Feb, Year=1989, Number="ECS-LFCS-89-71 (also CSR-289-89)", Annote="59 references." } @TechReport{Sannella-Tarlecki91, Key="Sannella \& Tarlecki", Author="Donald Sannella and Andrzej Tarlecki", Title="Extended {ML}: Past, present and future", Organization="Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh", Month=Feb, Year=1991, Number="ECS-LFCS-91-138", Annote="60 references." } @TechReport{Sannella88, Key="Sannella", Author="Donald Sannella", Title="A Survey of Formal Software Development Methods", Organization="Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh", Month=Jul, Year=1988, Number="ECS-LFCS-88-56", Annote="76 references." } @TechReport{Sannella89, Key="Sannella", Author="Donald Sannella", Title="Formal program development in Extended {ML} for the working programmer", Organization="Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh", Month=Dec, Year=1989, Number="ECS-LFCS-89-102", Annote="24 references." } @TechReport{Saxe-etal91, Key = "Saxe, {\em et al.}", Author = "James B. Saxe and Stephen J. Garland and John V. Guttag and James J. Horning", Title = "Using Transformation and Verification in Circuit Design", Institution = DECSRC, Year = 1990, Number = 78, Month = Sep, Address = "130 Lytton Avenue Palo Alto, CA 94301", Note="Order from src-report@src.dec.com", Annote = "10 references." } @Book{Schach97, author = {Stephen R. Schach}, title = {Software Engineering with Java}, publisher = {Irwin}, year = 1997, key = {Schach}, address = {Chicago}, annote = {Textbook. Many references.} } @InProceedings{Scherlis-Scott83, Key="Scherlis \& Scott", Author="W. L. Scherlis and D. Scott", Title="First Steps Toward Inferential Programming", BookTitle="Proceedings IFIPS 83, Paris", Year=1983, Pages="199-212", Annote="Good introduction to internal logics for reasoning." } @InProceedings{Scherlis81, Key = "Scherlis", Author = "William L. Scherlis", Title = "Program Improvement by Internal Specialization", BookTitle="Conference Record of the Eighth ACM Symposium on Principles of Programming Languages", Publisher=ACM, Month=Jan, Year=1981, Pages="41-49", Annote="Program transformation with a generalized procedure construct. 13 references." } @TechReport{Schoett82, Key="Schoett", Author="Oliver Schoett", Title="A Theory of Program Modules, their Specifications and Implementation (Extended Abstract)", Institution="Department of Computer Science, University of Edinburgh", Year=1982, Month=Dec, Type="Internal Report", Number="CSR-155-83", Annote="24 references." } @TechReport{Schoett85, Key="Schoett", Author="Oliver Schoett", Title="Behavioural Correctness of Data Representations", Institution="Department of Computer Science, University of Edinburgh", Year=1985, Month=Apr, Type="Internal Report", Number="CSR-185-85", Annote="16 references." } @TechReport{Schoett87, Key="Schoett", Author="Oliver Schoett", Title="Data Abstraction and the Correctness of Modular Programming", Institution="Department of Computer Science, University of Edinburgh", Year=1987, Type="Thesis", Number="CST-42-87", Note="also ECS-LFCS-87-19" } @Article{Schoett90, Key="Schoett", Author="Oliver Schoett", Title="Behavioural Correctness of Data Representations", Journal="Science of Computer Programming", Volume=14, Number=1, Month=Jun, Year=1990, Pages="43-57", Annote="Two methods for proving the correctness of data representations. Behavioural equivalence relations and behavioural inclusion. Behavioural inclusion allows one to show `partial' implementations. Using relations as a more general technique than abstraction functions. 23 references." } @InCollection{Schoett91, Key = "Schoett", Author = "Oliver Schoett", Title = "An Observational Subset of First-Order Logic Cannot Specify the Behavior of a Counter", BookTitle = "STACS 91 8th Annual Symposium on Theoretical Aspects of Computer Science Hamburg, Germany, February 1991 Proceedings", Publisher = "Springer-Verlag", Year = 1991, Editor = "C. Choffrut and M. Jantzen", Series = LNCS, Volume = 480, Pages = "499-510", Address = NY, Annote = "15 references." } @InCollection{Scholefield-Zedan-Jifeng93, Key = "Scholefield \& Zedan \& Jifeng", Author = "David Scholefield and Hussein Zedan and He Jifeng", Title = "A Categorical Interpretation of Landin's Correspondence Principle", BookTitle = "Mathematical Foundations of Programming Semantics 9th International Conference, New Orleans, LA, USA, Proceedings", Publisher = "Springer-Verlag", Year = 1993, Editor = "S. Brookes and M. Main and A. Melton and M. Mislove and D. Schmidt", Series = LNCS, Volume = 802, Pages = "230-249", Address = NY, Month = Apr, Annote = "11 references." } @Article{Snelting-Tip98, key = {Snelting \& Tip}, author = {Gregor Snelting and Frank Tip}, title = {Reengineering Class Hierarchies Using Concept Analysis}, journal = SIGSOFT, year = 1998, volume = 23, number = 6, month = Nov, pages = {99-110}, note = {Proceedings of the ACM SIGSOFT Sixth Internatioal Symposium on the Foundations of Software Engineering}, annote = {28 references.} } @Article{Snoeck-Dedene98, key = {Snoeck \& Dedene}, author = {Monique Snoeck and Guido Dedene}, title = {Existence Dependency: The Key to Semantic Integrity Between Structural and Behavioral Aspects of Object Types}, journal = IEEETSE, year = 1998, volume = 24, number = 4, month = Apr, pages = {233-251}, annote = {For use in conceptual modeling along with generalization/specialization. 25 references.} } @Article{Seiter-Palsberg-Lieberherr98, key = {Seiter \& Palsberg \& Lieberherr}, author = {Linda Seiter and Jens Palsberg and Karl J. Lieberherr}, title = {Evolution of Object Behavior Using Context Relations}, journal = IEEETSE, year = 1998, volume = 24, number = 1, month = Jan, pages = {79-92}, annote = {Context relations model dynamic relationships, which allow one to easily express several design patterns. Extensions to the UML. Extension of Java. Context relations can be seen as a replacement for delegation. 37 references.} } @InCollection{Sekerinski93, Key = "Sekerinski", Author = "Emil Sekerinski", Title = "A Calculus for Predicative Programming", BookTitle = "Mathematics of Program Construction, Second International Conference, Oxford, U.K.", Publisher = "Springer-Verlag", Year = 1993, Editor = "R.S. Bird and C.C. Morgan and J.C.P. Woodcock", Series = LNCS, Volume = 669, Pages = "302-322", Address = NY, Month = "June/July", Annote = "15 References." } @InProceedings{Sekerinski-Erasmy94, key = "Sekerinski \& Erasmy", author = "Emil Sekerinski Francois Erasmy", editor = "M. Bertran and M. Naftalin and T. Denvir", title = "Stepwise Refinement of Control Software - {A} Case Study Using {RAISE}", booktitle = "FME'94: Industrial Benefit of Formal Methods", publisher = "Springer-Verlag", year = "1994", month = oct, pages = "547--566" } @TechReport{Sekerinski96, author = "Emil Sekerinski", title = "Deriving Control Programs by Weakest Preconditions", institution = "TUCS - Turku Centre for Computer Science", number = "TUCS-TR-4", month = apr, year = "1996", url = "http://www.tucs.abo.fi/publications/techreports/TR4.html", abstract = "A control program is understood as a reactive component that maintains a continuous interaction with its environment. A formal criterion for the correctness of a control program is given. This criterion can be applied in reverse for deriving a control program from properties of the whole control system. This is illustrated by an example of two conveyor belts. The formal reasoning is based on the weakest precondition calculus. Action systems are used for modeling the control system." } @InProceedings{Semmens-Allen91, Key="Semmens \& Allen", Author = "L. Semmens and P. Allen", Title = "Using {Y}ourdon and {Z}: An Approach to Formal Specification", BookTitle = "{Z} User Workshop", Publisher = "Springer-Verlag", Year = 1991 } @Article{Semmens-France-Docker92, Key="Semmens \& France \& Docker", Author = "L. Semmens and R. B. France and T. W. G. Docker", Title = "Integrated Structured Analysis and Formal Specification Techniques", Journal = "The Computer Journal", Volume = 35, Number = 6, Year = 1992 } @TechReport{Shapiro-Pinci-Mameli90, Key = "Shapiro \& Pinci \& Mameli", Author = "Robert M. Shapiro and Valerio Pinci and Roberto Mameli", Title = "Modeling a {NORAD} Command Post Using {SADT} and {Colored Petri Nets}", Institution = "IDEF Users Group", Year = 1990, Address = "Washington, DC", Month = May, Annote = "12 references." } @Book{Sessions97, key = {Sessions}, author = {Roger Sessions}, title = {{COM} and {DCOM}: Microsoft's Vision for Distributed Objects}, publisher = {John Wiley \& Son}, year = 1997 } @Book{Shaw-Garlan96, author = {Mary Shaw and David Garlan}, title = {Software Architecture: Perspectives on an Emerging Discipline}, publisher = {Prentice-Hall}, year = {1996} } @Article{Sheil81, Key="Sheil", Author="B. A. Sheil", Title="The Psychological Study of Programming", Journal=ACMCS, Volume=13, Number=1, Year=1981, Month=Mar, Pages="101-120", Annote="Review of Gannon's results, concludes that most of the benefits of a strongly typed language are in providing data representations and that it does not present a really strong case for strong typing. Good analysis of the problems in Computer Science and what needs to be learned and done to solve them. 42 references." } @Article{Siff-Reps96, key = {Siff \& Reps}, author = {Michael Siff and Thomas Reps}, title = {Program Generalization for Software Reuse From {C} to {C++}}, journal = SIGSOFT, year = 1996, editor = {David Garlan}, volume = 21, number = 6, month = Nov, pages = {135-146}, note = {SIGSOFT '96: Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, San Francisco, California}, annote = {20 references.} } @InCollection{Simmons-Graham98, author = {Anthony J. H. Simmons and Ian Graham}, title = {37 Things that Don't Work in Object-Oriented Moideling with {UML}}, booktitle = {Second ECOOP Workshop on Precise Behavioral Semantics (with an Emphasis on OO Business Specifications)}, key = {Simmons \& Graham}, publisher = {Technical University of Munich, Institut f\"{u}r Informatik}, year = 1998, month = Jun, editor = {Hiam Kilov and Bernhard Rumpe}, number = {TUM-I9838}, series = {Technical Report}, pages = {209-232}, note = {16 references.} } @Article{Sitaraman-Weide94, author = {Murali Sitaraman and Bruce W. Weide}, title = {Special Feature: Component-Based Software Using {RESOLVE}}, journal = SIGSOFT, year = 1994, key = {Sitaraman \& Weide}, volume = 19, number = 4, month = {Oct}, pages = {21-22}, annote = {Introduction to a series of articles on RESOLVE.} } @Article{Sitaraman-Weide-Ogden97, key = "Sitaraman \& Weide \& Ogden", author = "Murali Sitaraman and Bruce W. Weide and William F. Ogden", title = "On the Practical Need for Abstraction Relations to Verify Abstract Data Type Representations", journal = IEEETSE, pages = "157--170", month = Mar, year = 1997, volume = 23, number = 3, annote = "26 references." } @Article{Sitaraman-Welch-Harms93, author = "Murali Sitaraman and Lonnie R. Welch and Douglas E. Harms", title = "On Specification of Reusable Software Components", key = "Sitaraman \& Welch \& Harms", journal = "International Journal of Software Engineering and Knowledege Engineering", year = 1993, volume = 3, number = 2, pages = "207-229", annote = "34 references." } @Unpublished{Sitaraman97, key = "Sitaraman", author = "Murali Sitaraman", title = "Impact of Performance Considerations on Formal Specification Design", Note = "To appear in Formal Aspects of Computing", year = 1997 } @TechReport{Sivaprasad95, key = "Sivaprasad", author = "Gowri Sivaprasad", title = "{Larch/CORBA}: Specifying the Behavior of {CORBA-IDL} Interfaces", institution = "Department of Computer Science, Iowa State University", year = 1995, number = "95-27a", address = "Ames, Iowa, 50011", month = Dec, annote = "18 references." } @Unpublished{Smith-Duke-King90, Key="Smith \& Duke \& King", Author="Graeme Smith and Roger Duke and Paul King", Title="Formalization of Object-Oriented Concepts", Year=1990, Note="Submitted to ECOOP/OOPSLA '90, obtained from Roger Duke", Annote="Concepts of an object being observationally compatible with a type (obeys its spec) and being operationally compatible (obeys its spec but may be more deterministic). Histories and transitions. 22 references." } @Book{Smith91, Key = "Smith", Author = "David N. Smith", Title = "Concepts of Object-Oriented Programming", Publisher = "McGraw-Hill", Year = 1991, Address = NY, Annote = "23 referrences." } @Article{Smith92, Key = "Smith", Author = "Leslie S. Smith", Title = "A Framework for Neural Net Specification", Journal = IEEETSE, Year = 1992, Volume = 18, Number = 7, Month = Jul, Pages = "601-612", Annote = "19 references." } @Article{Snyder93, Key = "Snyder", Author = "Alan Snyder", Title = "The Essence of Objects: Concepts and Terms", Journal = "IEEE Software", Year = 1993, Month = Jan, Volume = 10, Number = 1, Pages = "31-42", Annote = "1 reference." } @Book{Sommerville96, author = "Ian Sommerville", title = "Software Engineering", publisher = "Addison-Wesley", year = "1996", edition = "fifth" } @Book{Soukup94, key = {Soukup}, author = {Jiri, Soukup}, title = {Taming C++: Pattern Classes and Persistence for Large Projects}, publisher = {Addison-Wesley}, year = 1994, address = {Reading, Mass.} } @Article{Spitzen-Wegbreit75, Key = "Spitzen \& Wegbreit", Author = "J. Spitzen and B. Wegbreit", Title = "The Verification and Synthesis of Data Structures", Journal = "Acta Informatica", Year = 1975, Volume = 4, Pages = "127-144", Annote = "Generator induction." } @Book{Spivey88, Key="Spivey", Author="J. M. Spivey", Title="Understanding {Z}: a Specification Language and its Formal Semantics", Publisher="Cambridge University Press", Address=NY, Year=1988, Annote="Meta-circular definition. 42 references." } @Book{Spivey89a, Key="Spivey", Author="J. Michael Spivey", Title="The {Z} Notation: A Reference Manual", Publisher="Prentice-Hall", Series="International Series in Computer Science", Year="1989", Address=NY, Note="ISBN 013983768X" } @Article{Spivey89b, Key = "Spivey", Author = "J. Spivey", Title = "An Introduction to {Z} and Formal Specifications", Journal = "Software Engineering Journal", Year = 1989, Month = Jan } @Article{Spivey90, Key="Spivey", Author="J. Michael Spivey", Title="Specifying a Real-Time Kernel", Journal="IEEE Software", Volume=7, Number=5, Month=Sep, Year=1990, Pages="21-28", Annote="3 references." } @Book{Spivey92, Key="Spivey", Author="J. Michael Spivey", Title="The {Z} Notation: A Reference Manual", Publisher="Prentice-Hall", Edition="Second", Series="International Series in Computer Science", Year="1992", Address=NY } @TechReport{Sridhar-Hoare85, Key="Sridhar \& Hoare", Author="K. T. Sridhar and C. A. R. Hoare", Title="{JSD} Expressed in {CSP}", Institution="Oxford University Computing Laboratory, Programming Research Group", Address="Oxford OX1 3QD, England", Number="PRG-51", Type="Technical Monograph", Month=Jul, Year=1985, Annote="8 references." } @Article{Srinivasan99, key = {Srinivasan}, author = {Savitha Srinivasan}, title = {Design Patterns in Object-Oriented Frameworks}, journal = {Computer}, year = 1999, volume = 32, number = 2, month = Feb, pages = {24-32}, annote = {12 references.} } @TechReport{Standish-etal76a, Key="Standish, {\em et al.}", Author="T. A. Standish and A. Harriman and D. Kibler and J. M. Neighbors", Title="The Irvine Program Transformation Catalogue", Institution="Dept. of Computer and Information Sciences, U.C. Irvine", Year=1976, Month=Jan } @InProceedings{Standish-etal76b, Key="Standish, {\em et al.}", Author="T. A. Standish and A. Harriman and D. Kibler and J. M. Neighbors", Title="Improving and refining programs by program manipulation", BookTitle="Proceedings of the 1976 ACM Annual Conference", Organization=ACM, Year=1976, Pages="509-516" } @Article{Staringer94, key = {Staringer}, author = {Werner Staringer}, title = {Constructing Applications from Reusable Software}, journal = {IEEE Software}, year = 1994, volume = 11, number = 5, month = Sep, pages = {61-68}, annote = {8 references.} } @InProceedings{Stata-Guttag95, author = {Raymie Stata and John V. Guttag}, title = {Modular Reasoning in the Presence of Subclassing}, booktitle = {Proceedings of OOPSLA '95 Tenth Annual Conference on Object-Oriented Programming Systems, Languages, and Applications}, key = {Stata \& Guttag}, volume = 30, number = 10, series = {ACM SIGPLAN Notices}, year = 1995, organization = ACM, month = Oct, pages = {200-214}, annote = {15 references.} } @TechReport{Stata97, author = "Raymie Stata", title = {Modularity in the Presence of Subclassing}, institution = DECSRC, year = 1997, key = "Stata", number = 145, address = {130 Lytton Avenue Palo Alto, CA 94301}, month = {Apr}, note = {Order from src-report@pa.dec.com or ftp from gatekeeper.dec.com}, annote = {57 references.} } @Article{Stavstrup92, author = {Bjorn Stavstrup}, title = {A Proposal Regarding Invisible Logic for Object-Oriented Languages}, journal = {Journal of Object-Oriented Programming}, year = 1992, month = {March/April} } @TechReport{Steele81, Key="Steele", Author="Barbara Sue Kerns Steele", Title="An Accountable Source-to-Source Transformation System", Institution=MITAI, Number="TR-636", Year=1981, Month=Jun } @TechReport{Steffen-etal93, Key="Steffen {\em et al}", Author="Bernhard Steffen and Tiziana Margaria and Burkhard Freitag", Title="Module Configuration by Minimal Model Construction", Institution="University of Passau, Germany", Number="MIP-9313", Year=1993, Month=Dec, Annote="19 refernces" } @Book{Stepney-Barden-Cooper92, Key = "Stepney \& Barden \& Cooper", Editor = "Susan Stepney and Rosalind Barden and David Cooper", Title = "Object Orientation in Z", Publisher = "Springer-Verlag", Year = 1992, Address = "Cambridge CB2 1LQ, UK", Series = "Workshops in Computing", Annote = "64 references." } @Article{Stevens-Myers-Constantine74, author = {W. P. Stevens and G. J. Myers and L. L. Constantine}, title = {Structured Design}, journal = {IBM Systems Journal}, year = 1974, key = {Stevens \& Myers \& Constantine}, volume = 2, pages = {115-139} } @Book{Stewart84, Key = "Stewart", Author = "George Stewart", Title = "The Apple Program Factory", Publisher = "Osborne McGraw-Hill", Year = 1984, Address = "Berkeley, California" } @InProceedings{Steyaert-etal96, author = {Patrick Steyaert and Carine Lucas and Kim Mens and Theo D'Hondt}, title = {Reuse Contracts: Managing the Evolution of Reusable Assets}, booktitle = {OOPSLA '96 Conference on Object-Oriented Programming Systems, Languagges and Applications}, key = {Steyaert, {\em et al.}}, year = 1996, publisher = {ACM Press}, month = {October}, pages = {268-285}, note = {ACM SIGPLAN Notices, Volume 31, Number 10}, annote = {16 references} } @Article{Stocks-Carrington96, key = {Stocks \& Carrington}, author = {Phil Stocks and David Carrington}, title = {A Framework for Specification-Based Testing}, journal = IEEETSE, year = 1996, volume = 22, number = 11, month = Nov, pages = {777-793}, annote = {A formal method for defining and structuring testing. Test templates. 41 references.} } @InCollection{Stoyenko92, Key = "Stoyenko", Author = "A.D. Stoyenko", Title = "The Evolution and State-of-the-Art of Real-Time Languages", BookTitle = "Real-Time Systems: Abstractions, Languages, and Design Methodologies", Publisher = "IEEE Computer Society Press", Year = 1992, Editor = "Krishna M. Kavi", Pages = "394-416", Address = "Los Alamitos, California", Month = Oct, Annote = "161 references." } @Article{Sullivan-Notkin92, author = {Kevin J. Sullivan and David Notkin}, title = {Reconciling Environment Integration and Software Evolution}, journal = TOSEM, year = 1992, key = {Sullivan \& Notkin}, volume = 1, number = 3, month = Jul, pages = {229-268}, annote = {Implicit invocation to promote component independence. 34 references.} } @Article{Sweet85, Key="Sweet", Author="Richard E. Sweet", Title="The Mesa Programming Environment", Journal=SIGPLAN, Volume=20, Number=20, Month=Jul, Year=1985, Note="Proceedings of the ACM SIGPLAN 85 Symposium on Language Issues in Programming Environments", Pages="216-229", Annote="Survey and retrospective evaluation of Mesa's environment. 23 references." } @Article{Swinehart-Zellweger-Hagmann85, Key="Swinehart \& Zellweger \& Hagmann", Author="Daniel C. Swinehart and Polle T. Zellweger and Robert B. Hagmann", Title="The Structure of Cedar", Journal=SIGPLAN, Volume=20, Number=20, Month=Jul, Year=1985, Note="Proceedings of the ACM SIGPLAN 85 Symposium on Language Issues in Programming Environments", Pages="230-244", Annote="Description of the Cedar environment, especially layering of modules. Strong typing and explicit interfaces help support the layered structure. Safe storage, i.e. garbage collection helps too. Comparison to Interlisp-D, Smalltalk-80, and UNIX. 40 references." } @Article{Swinehart-etal86, Key="Swinehart, {\em et al.}", Author="Daniel C. Swinehart and Polle T. Zellweger and Richard J. Beach and Robert B. Hagmann", Title="A Structural View of the Cedar Programming Environment", Journal=TOPLAS, Volume=8, Number=4, Month=Oct, Year=1986, Pages="419-490", Annote="59 references." } @Article{Szczepanska91, Key = "Szczepanska", Author = "Danuta Szczepanska", Title = "A Hoare-like verification system for a language with an exception handling mechanism", Journal = TCS, Year = 1991, Volume = 80, Number = 2, Month = Mar, Pages = "319-335" } @InCollection{Szyperski-Pfister97, author = {C. Szyperski and C. Pfister}, title = {Workshop on Component-Oriented Programming, Summary}, booktitle = {Special Issues in Object-Oriented Programming---{ECOOP} '96 Workshop Reader}, key = {Szyperski \& Pfister}, publisher = {dpunkt Verlag}, year = 1997, editor = {M. M\"{u}hlh\"{a}user} } @Book{Szyperski98, key = {Szperski}, author = {Clemens Szyperski}, title = {Component Software: Beyond Object-Oriented Programming}, publisher = {ACM Press and Addison-Wesley}, year = 1998, address = NY, annotate = "An excellent overview of component-based programming. Many references." } @Article{Talcott92, Key="Talcott", Author="Carolyn Talcott", Title="A Theory for program and data type specification", Journal=TCS, Volume=104, Number=1, Month=Oct, Year=1992, Pages="129-159" } @InCollection{Tan92, Key="Tan", Author="Y. M. Tan", Title="Semantic Analysis of Larch Interface Specifications", Editor="Ursala Martin and Jeanete M. Wing", BookTitle="First International Workshop on Larch, Dedham 1992", Publisher="Springer-Verlag", Year=1992, Pages="246-261", Annote="16 references" } @Unpublished{Tan92b, Key = "Tan", Author = "Yang Meng Tan", Title = "Semantic Analysis of Formal Specifications", Note = "MIT EECS PhD Thesis Proposal", Annote = "26 references.", Month = Nov, Year = 1992 } @Article{Tan94, Key = "Tan", Author = "Yang Meng Tan", Title = "Interface Language for Supporting Programming Styles", Journal = SIGPLAN, Year = 1994, Volume = 29, Number = 8, Month = Aug, Pages = "74-83", Note = "Proceedings of the Workshop on Interface Definition Languages.", Annote = "13 references." } @TechReport{Tan94b, Key = "Tan", Author = "Yang Meng Tan", Title = "Formal Specification Techniques for Promoting Software Modularity, Enhancing Documentation, and Testing Specifications", Institution = MITLCS, Year = 1994, Number = 619, Address = "545 Technology Square, Cambridge, Mass.", Month = Jun } @Book{Tan95, author = "Yang Meng Tan", title = {Formal Specification Techniques for Engineering Modular C Programs}, publisher = {Kluwer Academic Publishers}, year = 1995, key = {Tan}, volume = 1, series = {Kluwer International Series in Software Engineering}, address = {Boston} } @InCollection{Tarlton-Tarlton89, Key="Tarlton \& Tarlton", Author="Mark A. Tarlton and P. Nong Tarlton", Title="Pogo: A Declarative Representation System for Graphics", Editor="Won Kim and Frederick H. Lochovsky", BookTitle="Object-Oriented Concepts, Databases, and Applications", Publisher=Addison-Wesley, Address="Reading, Mass.", Year=1989, Chapter=7, Pages="151-176", Annote="7 references" } @Article{Terwilliger93, Key="Terwilliger", Author="Robert B. Terwilliger", Title="Towards Tools to Support the Gries/Djikstra Design Process", Journal=SIGSOFT, Volume=18, Number=2, Month=Apr, Year=1993, Pages="50-59", Annote="52 references" } @Article{Thatcher-Wagner-Wright82, Key="Thatcher \& Wagner \& Wright", Author="J. W. Thatcher and E. G. Wagner and J. B. Wright", Title="Data Type Specification: Parameterization and the Power of Specification Techniques", Journal=TOPLAS, Volume=4, Number=4, Month=Oct, Year=1982, Pages="711-732", Annote="Shows need for conditionals to augment the equational approach to specification of abstract types. Gives a formal basis for parameterized types. 26 references." } @Book{Thimbleby90, Key = "Thimbleby", Author = "Harold Thimbleby", Title = "User Interface Design", Publisher = "ACM Press, Addison-Wesley", Year = 1990, Series = "Frontier Series", Address = "NY", Annote = "ISBN 0-201-41618-2. 72 references." } @InProceedings{Thompson86, Key = "Thompson", Author = "Thompson", Title = "Laws in Miranda", BookTitle = "ACM Conference on LISP and Functional Programming", Year = 1986, Pages = "1-12", Organization = ACM, Month = Aug, Annote = "13 references." } @Article{Thompson90, Key="Thompson", Author="Simon Thompson", Title="Lawful Functions and Program Verification in Miranda", Journal="Science of Computer Programming", Volume=13, Number="2-3", Month=May, Year=1990, Pages="181-218", Annote="A type with equations (an invariant) has an associated free type (AFT) that is the same except it has not equations. Problem is how to use transformational reasoning about operators of types with equations. Idea is to reason about the AFT equationally. Use normalizer function as a retract from AFT carrier to subset satisfying type's invariant. To prove property of x:T, prove if for (norm y), where y:AFT. Or if can show property holds for AFT, then holds for the type. A function is faithful if it preserves equivalence classes of the normalizer. Equations for faithful functions can be used regardless of the laws. If associated function is not faithful, can sometimes find a faithful representing function to reason with. 10 references." } @Article{Tockey97, key = {Tockey}, author = {Steve Tockey}, title = {A Missing Link in Software Engineering}, journal = {IEEE Software}, year = 1997, volume = 14, number = 6, month = Nov, pages = {31-36}, annote = {Engineering economy and other educational needs. 15 references.} } @Article{Tracey-Clark-Mander98, key = {Tracey \& Clark \& Mander}, author = {Nigel Tracey and John Clark and Keith Mander}, title = {Automated Program Flaw Finding using Simulated Annealing}, journal = SIGSOFT, year = 1998, volume = 23, number = 2, month = Mar, pages = {73-81}, note = {ISSTA 98: Proceedings of the ACM SIGSOFT Internatioal Symposium on Software Testing and Analysis}, annote = {22 references.} } @Book{Tracez95, author = {Will Tracez}, title = {Confessions of a Used Program Salesman: Institutionalizing Software Reuse}, publisher = {Addison-Wesley}, year = 1995, key = {Tracez}, address = {Reading, Mass.}, annote = {Many references.} } @Article{Tse-Pong89, Key = "Tse \& Pong", Author = "T. H. Tse and L. Pong", Title = "Towards a Formal Foundation for {Demarco} Data Flow Diagrams", Journal = "The Computer Journal", Year = 1989, Volume = 32, Number = 1, Month = Feb, Pages = "1-12", Annote = "36 references." } @Book{Tse91, Key = "Tse", Author = "T. H. Tse", Title = "A Unifying Framework for Structured Analysis and Design Models", Publisher = "Cambridge Univerity Press", Year = 1991, Volume = 11, Series = "Cambridge Tracts in Theoretical Computer Science", Address = NY, Annote = "Algebraic description of the syntax of Yourdon structure charts, DeMarco flow diagrams and Jackson structure texts. Mappings between these. Over 100 references." } @InCollection{Tucker-Zucker91, Key = "Tucker \& Zucker", Author = "J. V. Tucker and J. I. Zucker", Title = "Toward a General Theory of Computation and Specification over Abstract Data Types", BookTitle = "Advances in Computing and Information ICCI '90, International Conference on Computing and Information, Niagara Falls, Canada, May 1990", Publisher = "Springer-Verlag", Year = 1991, Editor = "S. G. Akl and F. Fiala and W. W. Koczkodaj", Series = LNCS, Volume = 468, Pages = "129-133", Address = NY, Annote = "10 references." } @InCollection{Turner82, Key="Turner", Author="D. A. Turner", Title="Functional programming and proofs of program correctness", BookTitle="Tools and Notions for Program Construction", Editor="D. Neel", Publisher="Cambridge University Press", Address=NY, Year=1982 } @Book{Turski-Maibaum87, Key="Turski \& Maibaum", Author="W. M. Turski and T. S. E. Maibaum", Title="The Specification of Computer Programs", Publisher="Addison-Wesley", Year=1987 } @InCollection{Utting-Robinson92, Key = "Utting \& Robinson", Author = "Mark Utting and Ken Robinson", Title = "Modular Reasoning in an Object-Oriented Refinement Calculus", BookTitle = "Mathematics of Program Construction, Second International Conference, Oxford, U.K., June/July", Publisher = "Springer-Verlag", Year = 1992, Editor = "R. S. Bird and C. C. Morgan and J. C. P. Woodcock", Series = LNCS, Volume = 669, Pages = "344-367", Address = NY, Annote = "25 references." } @PhdThesis{Utting92, Key = "Utting", Author = "Mark Utting", Title = "An Object-Oriented Refinement Calculus with Modular Reasoning", School = "University of New South Wales", Year = 1992, Address = "Kensington, Australia", Note = "Draft of February 1992 obtained from the Author." } @InProceedings{Utting95, key = "Utting", author = "Mark Utting", title = "Reasoning about Aliasing", pages = "195-211", booktitle = "Proceedings of the {Fourth Australasian Refinement Workshop (ARW-95)}", year = 1995, publisher = "School of Computer Science and Engineering, The University of New South Wales", month = apr, note = {Available from \verb!http://www.cs.waikato.ac.nz/~marku!} } @Article{Utting97, author = {Mark Utting}, title = {Reasoning about Aliasing}, journal = {Formal Aspecs of Computing}, year = 1997, key = {Utting}, volume = 3, pages = {1-15} } @Article{VanderLinden94, Key = "VanderLinder", Author = "Frank J. VanderLinden", Title = "Formal methods: from object-based to object-oriented", Journal = SIGPLAN, Year = 1994, Volume = 29, Number = 7, Month = Jul, Pages = "29-38", Annote = "14 references." } @InCollection{Vandevoorde92, Key="Vandevoorde", Author="M. T. Vandevoorde", Title="Optimizing Programs with Partial Specifications", Editor="Ursala Martin and Jeanete M. Wing", BookTitle="First International Workshop on Larch, Dedham 1992", Publisher="Springer-Verlag", Year=1992, Pages="262-281", Annote="14 references" } @InCollection{Vandevoorde93, Key="Vandervoode", Author="M. T. Vandervoode", Title="Specifications can make the Programs run faster", Journal=LNCS, Number=668, Publisher="Springer-Verlag", Address=NY, Editor="M. C. Gaudel and J. P. Jouannaud", Year=1993, Note="TAPSOFT '93: Theory and Practice of Software Development. 4th International Joint Conference CAAP/FASE France, April 1993. Proceedings.", Pages="215-229", Annote="17 references" } @Article{VanHilst-Notkin96, key = {VanHilst \& Notkin}, author = {Micheal VanHilst and David Notkin}, title = {Decoupling Change from Design}, journal = SIGSOFT, year = 1996, editor = {David Garlan}, volume = 21, number = 6, month = Nov, pages = {58-69}, note = {SIGSOFT '96: Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, San Francisco, California}, annote = {Letting change be addressed at the submodule level, while allowing high level modularization to address other issues. 18 references.} } @Article{Veloso93, author = {P. Veloso}, title = {A new, simpler proof of the modularization theorem for logical specifications}, journal = {Journal Bulletin of the IGPL}, year = 1993, key = {Veloso}, volume = 1, pages = {3-12} } @TechReport{Veloso-Maibaum92, author = {P. Veloso and T. Maibaum}, title = {On the modularisation theorem for logical specifications}, institution = {Imperial College of Science, Technology and Medicine, Department of Computing}, year = 1992, key = {Veloso \& Maibaum}, type = {Research Report}, number = {DoC 92/35}, month = Oct } @TechReport{Venkatesh-Fischer89, Key="Venkatesh \& Fischer", Author="G. A. Venkatesh and Charles N. Fischer", Title="{SPARE}: Reference Manual", Institution="Computer Sciences Department, University of Wisconsin-Madison", Number=850, Month=Jun, Year=1989, Annote="Structured Program Analysis Refinement Environment is a tool for rapid prototyping. 7 references." } @InProceedings{Viswanadha-Sankar96, author = {Sreenivasa Rao Viswanadha and Sriram Sankar}, title = {Preliminary Design of {ADL/C++} --- A Specification Language for {C++}}, booktitle = {Second Conference on Object-Oriented Technologies and Systems (COOTS), Toronto, Canada}, key = {Viswanadha \& Sankar}, year = 1996, month = Jun, note = "Obtained from http://www.cs.albany.edu/\verb|~|sreeni/cootsfinal.ps" } @Article{Voas97, key = {Voas}, author = {Jeffrey Voas}, title = {How Assertions Can Increase Test Effictiveness}, journal = {IEEE Software}, year = 1997, volume = 14, number = 2, month = Mar, pages = {118-119,122} } @Article{Voas98, key = {Voas}, author = {Jeffrey M. Voas}, title = {Certifying Off-the-Shelf Software Components}, journal = {Computer}, year = 1998, volume = 31, number = 6, month = Jun, pages = {53-59}, annote = {9 references.} } @Article{Voas99, key = {Voas}, author = {Jeffrey Voas}, title = {Certifying Software for High-Assurance Environments}, journal = {IEEE Software}, year = 1999, volume = 16, number = 4, month = Jul, pages = {48-54}, annote = {12 references.} } @InCollection{Wagner-etal76, author = "Eric Wagner and Jesse Wright and Joseph Goguen and James Thatcher", title = "Some Fundamentals of Order-Algebraic Semantics", booktitle = "Proceedings, Fifth Symposium on Mathematical Foundations of Computer Science", editor = "Andrzej Mazurkiewicz", publisher = "Springer", year = "1976", location = "Gda\'nsk, Poland", volume = 45, series = LNCS, pages = "153--168" } @InCollection{Wagner-Thatcher-Wright78, Key = "Wagner \& Thatcher \& Wright", Author = "E. G. Wagner and J. W. Thatcher and J. B. Wright", Title = "Programming languages as mathematical objects", BookTitle = "Mathematical Foundations of Computer Science", Publisher = "Springer-Verlag", Year = 1978, Editor = "J. Winkowski", Series = LNCS, Volume = 10, Pages = "84-101", Address = NY } @MastersThesis{Wagner85, Key="Wagner", Author="Richard Martin Wagner", Title="Program Animation Tools and Techniques", School=MIT, Address="Cambridge, Mass.", Year=1985, Month=Nov, Annote="All done in Smalltalk-80. 26 references." } @TechReport{Wahls-Baker-Leavens93, Key = "Wahls \& Baker \& Leavens", Author = "Tim Wahls and Albert L. Baker and Gary T. Leavens", Title = "An Executable Semantics for a Formalized Data Flow Diagram Specification Language", Institution = "Department of Computer Science, Iowa State University", Year = 1993, Number = "93-27", Address = "226 Atanasoff Hall, Ames, Iowa 50011", Month = Nov, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR93-27/TR.ps.Z", Note = "Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu.", Annote = "21 references." } @TechReport{Wahls-Leavens-Baker98, Key = "Wahls \& Leavens \& Baker", Author = "Tim Wahls and Gary T. Leavens and Albert L. Baker", Title = "Executing Formal Specifications with Constraint Programming", Institution = "Department of Computer Science, Iowa State University", Year = 1998, Number = "97-12a", Address = "226 Atanasoff Hall, Ames, Iowa 50011", Month = Aug, URL = "ftp://ftp.cs.iastate.edu/pub/techreports/TR97-12/TR.ps.gz", Note = "Available by anonymous ftp from ftp.cs.iastate.edu or by e-mail from almanac@cs.iastate.edu." } @Article{Wakid-Kuhn-Wallace99, key = {Wakid \& Kuhn \& Wallace}, author = {Shukri A. Wakid and D. Richard Kuhn and Delores R. Wallace}, title = {Towards Credible IT Testing and Certification}, journal = {IEEE Software}, year = 1999, volume = 16, number = 4, month = Jul, pages = {39-47}, annote = {7 references.} } @Article{Walicki-Meldal97, author = {Micha{\l} Walicki and Sigurd Meldal}, title = {Algebraic Approaches to Nondeterminism: An Overview}, journal = ACMCS, year = 1997, key = {Walicki \& Meldal}, volume = 29, number = 1, month = Mar, pages = {30-81}, annote = {Many references.} } @Article{Wand79, Key="Wand", Author="Mitchell Wand", Title="Final Algebra Semantics and Data Type Extensions", Journal=JCSS, Volume=19, Number=1, Month=Aug, Year=1979, Pages="27-44", Annote="Final algebras in a category of extensions of some base type. 24 references." } @Article{Wang-Musser97, Key = "Wang \& Musser", Author = "Changqing Wang and David R. Musser", title = "Dynamic Verification of {C++} Generic Algorithms", journal = IEEETSE, pages = "314-323", month = May, year = 1997, volume = 23, number = 5, annote = "32 references." } @Book{Ward-Mellor85a, Key = "Ward \& Mellor", Author = "Paul T. Ward and Stephen J. Mellor", Title = "Structured Development for Real-Time Systems", Publisher = "Yourdon, Inc.", Year = 1985, Volume = "1: Introduction and Tools", Address = "Englewood Cliffs, New Jersey" } @Book{Ward-Mellor85b, Key = "Ward \& Mellor", Author = "Paul T. Ward and Stephen J. Mellor", Title = "Structured Development for Real-Time Systems", Publisher = "Yourdon, Inc.", Year = 1985, Volume = "volume 2: Essential Modeling Techniques", Address = "Englewood Cliffs, New Jersey" } @Book{Ward-Mellor86, Key = "Ward \& Mellor", Author = "Paul T. Ward and Stephen J. Mellor", Title = "Structured Development for Real-Time Systems", Publisher = "Yourdon, Inc.", Year = 1986, Volume = "volume 3: Implementation Modeling Techniques", Address = "Englewood Cliffs, New Jersey" } @Article{Ward86, Key = "Ward", Author = "Paul T. Ward", Title = "The Transformation Schema: An Extension of the Data Flow Diagram to Represent Control and Timing", Journal = IEEETSE, Year = "1986", Volume = "SE-12", Number = 2, Month = Feb, Pages = "198-210", Annote = "11 references." } @InCollection{Ward92, Key = "Ward", Author = "S.A. Ward", Title = "An Approach to Real Time Computation", BookTitle = "Real-Time Systems: Abstractions, Languages, and Design Methodologies", Publisher = "IEEE Computer Society Press", Year = 1992, Editor = "Krishna M. Kavi", Pages = "430-438", Address = "Los Alamitos, California", Month = Oct, Annote = "27 references." } @InCollection{Ward93, Key = "Ward", Author = "Nigel Ward", Title = "Adding Specification Constructors to the Refinement Calculus", BookTitle = "Industrial-Strength Formal Methods, First International Symposium of Formal Methods Europe, Odense, Denmark", Publisher = "Springer-Verlag", Year = 1993, Editor = "J.C.P. Woodcock and P.G. Larsen", Series = LNCS, Volume = 670, Pages = "652-670", Address = NY, Month = Apr, Annote = "12 references." } @Book{Warmer-Kleppe99, author = {Jos Warmer and Anneke Kleppe}, title = {The Object Constraint Language: Precise Modeling with UML}, publisher = {Addison Wesley Longman}, year = 1999, key = {Warmer \& Kleppe}, address = {Reading, Mass.}, annote = {The OCL. 18 references.} } @Article{Warmer-Kleppe99b, key = {Warmer \& Kleppe}, author = {Jos Warmer and Anneke Kleppe}, title = {{OCL}: The Constraint Language of the {UML}}, journal = JOOP, year = 1999, volume = 12, number = 1, month = Mar, pages = {10-13,28}, annote = {3 references.} } @Article{Wasserman-Pircher90, Key = "Wasserman \& Pircher", Author = "Anthony J. Wasserman and Peter A. Pircher", Title = "The object-oriented structured design notation for software design representation", Journal = "Computer", Year = 1990, Volume = 23, Number = 3, Month = Mar, Pages = "50-63" } @Article{Waters82, Key="Waters", Author="R. C. Waters", Title="The Programmer's Apprentice: Knowledge Based Program Editing", Journal=IEEETSE, Year=1981 , Month=Jan, Volume="SE-1", Number=1, Pages="1-12" } @Article{Wegbreit76, Key="Wegbreit", Author="B. Wegbreit", Title="Goal-Directed Program Transformation", Journal=IEEETSE, Year=1976, Month=Jun, Volume=2, Number=2, Pages="69-80" } @Article{Wegbreit77, Key = "Wegbreit", Author = "Ben Wegbreit", Title = "Constructive Methods in Program Verification", Journal = IEEETSE, Year = 1977, Volume = "SE-3", Number = 3, Month = May, Pages = "193-209", Annote = "17 references." } @Book{Wegner80, Key="Wegner80", Editor="Peter Wegner", Title="Research Directions in Software Technology", Publisher=MITP, Address="Cambridge, Mass.", Year=1980 } @Article{Wegner92, Key = "Wegner", Author = "Peter Wegner", Title = "Dimensions of Object-Oriented Modeling", Journal = "Computer", Year = 1992, Volume = 25, Number = 10, Month = Oct, Pages = "12-20", Annote = "10 references." } @TechReport{Weide-Heym-Hollingsworth94, key = "Weide \& Heym \& Hollingsworth", author = "Bruce W. Weide and Wayne D. Heym and Joseph E. Hollingsworth", title = "Reverse Engineering of Legacy Code is Intractable", institution = "Dept. of Computer and Information Science, The Ohio State University", year = 1994, number = "OSU-CISRC-10/94-TR55", address = "Columbus, Ohio", month = "Oct", note = "Available from ftp://ftp.cis.ohio-state.edu/pub/tech-report/1994/TR55.ps.gz" } @InCollection{Weide-Ogden-Zeben91, key = {Weide \& Ogden \& Zeben}, author = {B. W. Weide and W. F. Ogden and S. H. Zeben}, title = {Reusable Software Components}, booktitle = {Advances in Computers}, publisher = {Academic Press}, year = 1991, editor = {M. Yovits}, volume = 33, pages = {1-65} } @Article{Weide-Ogden-Sitaraman94, key = {Weide \& Ogden \& Sitaraman}, author = {Bruce W. Weide and William F. Ogden and Murali Sitaraman}, title = {Recasting Algorithms to Encourage Reuse}, journal = {IEEE Software}, year = 1994, volume = 11, number = 5, month = Sep, pages = {80-88}, annote = {8 references.} } @Article{Weide-etal94, key = {Weide, {\em et al.}}, author = {Bruce W. Weide and Stephen H. Edwards and Douglas E. Harms and David Alex Lamb}, title = {Design and Specification of Iterators Using the Swapping Paradigm}, journal = IEEETSE, year = 1994, volume = 20, number = 8, month = Aug, pages = {631-643}, annote = {Iterators in RESOLVE. 20 references.} } @InProceedings{Weihe97, key = {Weihe}, author = {Karsten Weihe}, title = {Reuse of Algorithms: Still a Challenge to Object-Oriented Programming}, BookTitle = "Conference Proceedings of OOPSLA '97, Atlanta", Series = SIGPLAN, Volume = "32(10)", Month = Oct, Year = 1997, organization = ACM, pages = {34-48}, annote = {39 references.} } @Book{Weinberg98, key = {Weinberg}, author = {Gerald M. Weinberg}, title = {The Psychology of Computer Programming : Silver Anniversary Edition}, publisher = {Dorset House}, year = 1998, address = NY } @Article{Weinberg99, key = {Weinberg}, author = {Gerald M. Weinberg}, title = {Egoless Programming}, journal = {IEEE Software}, year = 1999, volume = 16, number = 1, month = Jan, pages = {118-120}, note = {Reprinted from {\em The Psychology of Computer Programming}, (Dorset House, 1998), chapter 4.}, annote = {1 reference.} } @Book{Weiss91, Key = "Weiss", Author = "Edmond H. Weiss", Title = "How to Write Usable User Documentation", Publisher = "Oryx Press", Year = 1991, Edition = "Second", Annote = "Categorized list of 21 references." } @Article{Welch-Strong98, key = {Welch \& Strong}, author = {David Welch and Scott Strong}, title = {An Exception-Based Assertion Mechanism for {C++}}, journal = JOOP, year = 1998, volume = 11, number = 4, month = Jul, pages = {50-60}, annote = {1 reference.} } @Article{Weyuker98, key = {Weyuker}, author = {Elaine J. Weyuker}, title = {Testing Component-Based Software: A Cautionary Tale}, journal = {IEEE Software}, year = 1998, volume = 15, number = 5, month = Sep, pages = {54-59}, annote = {Need specification, test suite, and links between them for components. 7 references.} } @Article{Wiener98, key = {Wiener}, author = {Richard Wiener}, title = {Watch Your Language!}, journal = {IEEE Software}, year = 1998, volume = 15, number = 3, month = May, pages = {55-56}, annote = {A reply to a paper by Hatton, claiming that C++ is not a representative OO language. No references.} } @InCollection{Wieringa91, Key = "Wieringa", Author = "R. J. Wieringa", Title = "A formalization of objects using equational dynamic logic", BookTitle = "Deductive and object-Oriented Databases", Publisher = "Springer-Verlag", Year = 1991, Editor = "C. Delobel and M. Kifer and Y. Masanaga", Series = LNCS, Volume = 566, Pages = "431-452", Address = NY, Annote = "51 references." } @Article{Wieringa98, author = {Roel Wieringa}, title = {A Survey of Structured and Object-Oriented Software Specification Methods and Techniques}, journal = ACMCS, year = 1998, key = {Wieringa}, volume = 30, number = 4, month = Dec, pages = {459-527}, annote = {Many references.} } @Article{Wilde-Huitt92, Key = "Wilde \& Huitt", Author = "Norman Wilde and Ross Huitt", Title = "Maintenance Support for Object-Oriented Programs", Journal = IEEETSE, Volume = 18, Number = 12, Month = Dec, Year = 1992, Pages = "1038-1044", Annote = "32 references." } @Book{Wilkie93, Key = "Wilkie", Author = "George Wilkie", Title = "Object-Oriented Software Engineering", Publisher = "Addison-Wesley", Year = 1993, Address = "Reading, Mass.", Annote = "77 references." } @Article{Williams94, Key = "Williams", Author = "Lloyd Williams", Title = "Assessmant of Safety-Critical Specifications", Journal= "IEEE Software", Volume= 11, Number= 1, Year = 1994, Month= Jan, Pages = "51-60", Annote = "10 references." } @InCollection{Wills91, Key = "Wills", Author = "Alan Wills", Title = "Capsules and Types in {Fresco}: Program Validation in {Smalltalk}", BookTitle = "ECOOP '91: European Conference on Object Oriented Programming", Publisher = "Springer-Verlag", Year = 1991, Editor = "P. America", Series = LNCS, Volume = 512, Pages = "59-76", Address = NY } @InCollection{Wills92b, Key = "Wills", Author = "Alan Wills", Title = "Specification in {Fresco}", BookTitle = "Object Orientation in {Z}", Editor = "Susan Stepney and Rosalind Barden and David Cooper", Publisher = "Springer-Verlag", Year = 1992, Address = "Cambridge CB2 1LQ, UK", Series = "Workshops in Computing", Chapter = 11, Crossref = "Stepney-Barden-Cooper92", Pages = "127-135", Annote = "64 references." } @InCollection{Wills94, Key = "Wills", Author = "Alan Wills", Title = "Refinement in {Fresco}", BookTitle = "Object-Oriented Specification Case Studies", Chapter = "9", Publisher = "Prentice-Hall", Year = 1994, Editor = "Kevin Lano and Howard Houghton", Crossref = "Lano-Haughton94", Pages = "184-201", Address = "Englewood Cliffs, NJ" } @Book{Winblad-Edwards-King90, Key="Winblad \& Edwards \& King", Author="Ann L. Winblad and Samuel D. Edwards and David R. King", Title="Object-Oriented Software", Publisher=Addison-Wesley, Address="Reading, Mass.", Year=1990, Annote="82 references." } @Article{Wing-Gong90, Key = "Wing \& Gong", Author = "Jeannette M. Wing and Chun Gong", Title = "Experience with the {Larch Prover}", Journal = SIGSOFT, Year = 1990, Volume = 15, Number = 4, Month = Sep, Pages = "140-143", Note = "Proceedings of the ACM SIGSOFT: International Workshop on Formal Methods in Software Development, Mark Moriconi (editor).", Annote = "18 references." } @InCollection{Wing-Rollins-Zaremski92, Key="Wing \& Rollins \& Zaremski", Author="J. M. Wing and E. Rollins and A. M. Zaremski", Title="Thoughts on a Larch/ML and a new Application for LP", Editor="Ursala Martin and Jeanete M. Wing", BookTitle="First International Workshop on Larch, Dedham 1992", Publisher="Springer-Verlag", Year=1992, Pages="297-312", Annote="14 references" } @InCollection{Wing-Zaremski91, Key = "Wing \& Zaremski", Author = "Jeannette M. Wing and Amy Moormann Zaremski", Title = "Unintrusive Ways to Integrate Formal Specifications in Practice", BookTitle = "VDM '91 Formal Software Development Methods 4th International Symposium of VDM Europe Noordwijkerhout, The Netherlands, Volume 1: Conference Contributions", Publisher = "Springer-Verlag", Year = 1991, Editor = "S. Prehn and W. J. Toetenel", Series = LNCS, Volume = 551, Pages = "545-569", Address = NY, Month = Oct, Annote = "28 references." } @InCollection{Wing-Rollins-Zaremski93, Key = "Wing \& Rollins \& Zaremski", Author = "Jeannette M. Wing and Eugene Rollins and Amy Moormann Zaremski", Title = "Thoughts on a Larch/{ML} and a New Application for {LP}", BookTitle = "Proceedings of the First International Workshop on Larch, July, 1992", Publisher = "Springer-Verlag", Editor = "U. Martin and J. Wing", Series = "Workshops in Computing", Pages = "297-312", Address = NY, Year = 1993, Note = "Also Technical Report CMU/CS-92-135, Carnegie Mellon University, School of Computer Science, May 1992.", Annote = "14 references." } @TechReport{Wing83, Key="Wing", Author="Jeannette Marie Wing", Title="A Two-Tiered Approach to Specifying Programs", Institution=MITLCS, Number="TR-299", Year=1983, Annote="Semantics of two-tiered approach, design of a CLU interface language, framework for reasoning about two-tiered specifications, and ways of exploiting the framework for specification evaluation. 84 references." } @Article{Wing87, Key="Wing", Author="Jeannette M. Wing", Title="Writing {Larch} Interface Language Specifications", Journal=TOPLAS, Month=Jan, Year=1987, Volume=9, Number=1, Pages="1-24", Annote="Describes Larch interface specifications for CLU. Description of the two-tiered approach. 56 references." } @InProceedings{Wing88, Key="Wing", Author="Jeannette M. Wing", Title="Specifying Recoverable Objects", BookTitle="Proceedings of the Sixth Annual Pacific Northwest Software Quality Conference, Portland, OR", Month=Sep, Year=1988, Note="CMU-CS-88-170", Annote="10 references." } @InCollection{Wing89a, Key="Wing", Author="J. M. Wing", Title="Verifying Atomic Data Types", BookTitle="Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, REX Workshop, Mook, The Netherlands", Month="May/June", Year=1989, Publisher="Spring-Verlag", Series=LNCS, Volume=430, Editor="J. W. de Bakker and W.-P. de Roever and G. Rozenberg", Pages="731-758" } @TechReport{Wing89b, Key="Wing", Author="Jeannette M. Wing", Title="What is a Formal Method?", Institution=CMU, Number="CMU-CS-89-200", Month=Nov, Year=1989, Annote="Survey of Formal methods with some examples. 76 references." } @Article{Wing90a, Key="Wing", Author="Jeannette M. Wing", Title="A Specifier's Introduction to Formal Methods", Journal="Computer", Volume=23, Number=9, Month=Sep, Year=1990, Pages="8-24", Annote="Survey with categorized references on formal methods and specification languages." } @Article{Wing90b, Key="Wing", Author="Jeannette M. Wing", Title="Using {Larch} to Specify {Avalon/C++} Objects", Journal=IEEETSE, Volume=16, Number=9, Month=Sep, Year=1990, Pages="1076-1088", Annote="29 references." } @TechReport{Wing95, author = "Jeannette M. Wing", title = "Hints to Specifiers", institution = "School of Computer Science Carnegie Mellon University", year = 1995, key = "Wing", number = "CMU-CS-95-118R", address = "Pittsburgh, PA 15213", month = "May", annote = "19 references." } @Article{Wirfs-Brock-Johnson90, Key = "Wirfs-Brock \& Johnson", Author = "Rebecca J. Wirfs-Brock and Ralph E. Johnson", Title = "Surveying Current Research in Object-Oriented Design", Journal = CACM, Year = 1990, Volume = 33, Number = 9, Month = Sep, Pages = "105-124", Annote = "61 references." } @Book{Wirfs-Brock-Wilkerson-Wiener90, Key = "Wirfs-Brock \& Wilkerson \& Wiener", Author = "Rebecca Wirfs-Brock and Brian Wilkerson and Lauren Wiener", Title = "Designing Object-Oriented Software", Publisher = "Prentice-Hall", Year = 1990, Address = "Englewood Cliffs, NJ 07632", Annote = "Model of responsibility-driven design. Hierarchy and collaborations graphs. No references." } @Article{Wirfs-Brock-Wilkerson89, Key="Wirfs-Brock \& Wilkerson", Author="Rebecca Wirfs-Brock and Brian Wilkerson", Title="Object-Oriented Design: A Responsibility-Driven Approach", Journal=SIGPLAN, Volume=24, Number=10, Month=Oct, Year=1989, Pages="71-75", Note="OOPSLA '89 Conference Proceedings, Norman Meyerowitz (editor), October 1989, New Orleans, Louisiana.", Annote="Distinguishes data-driven design from responsibility-driven design. 13 references." } @InCollection{Wirsing-Broy82, Key="Wirsing \& Broy", Author="Martin Wirsing and Manfred Broy", Title="An Analysis of Semantic Models for Algebraic Specifications", BookTitle="Theoretical Foundations of Programming Methodology: Lecture Notes of an International Summer School directed by F. L. Bauer, E. W. Dijkstra and C. A. R. Hoare", Editor="Manfred Broy and Gunther Schmidt", Year=1982, Publisher="D. Ridel", Address="Dordrecht, Holland", Pages="351-412", Series="C", Volume=91, Annote="44 references." } @Article{Wirsing-etal83, Key="Wirsing, {\em et al.}", Author="Martin Wirsing and Peter Pepper and Helmut Partsch and Walter Dosch and Manfred Broy", Title="On Hierarchies of Abstract Data Types", Journal="Acta Informatica", Volume=20, Number=1, Month=Oct, Year=1983, Pages="1-33", Annote="43 references." } @InCollection{Wirsing90, Key = "Wirsing", Author = "Martin Wirsing", Booktitle = "Handbook of Theoretical Computer Science", Title = "Algebraic Specification", Chapter = 13, Publisher = MITP, Year = 1990, Editor = "J. van Leewen", Pages = "675-788", Volume = "B: Formal Models and Semantics", Address = NY, Annote = "186 references." } @Article{Wirth71b, Key="Wirth", Author="Wirth, N.", Title="Program Development by Stepwise Refinement", Journal=CACM, Year=1971, Month=Apr, Volume=14, Number=4, Pages="221-227" } @Book{Wirth73, Key = "Wirth", Author = "Niklaus Wirth", Title = "Systematic Programming: An Introduction", Publisher = "Prentice-Hall", Year = 1973, Series = "Series in Automatic Computation", Address = "Englewood Cliffs, NJ" } @Article{Wirth77b, Key="Wirth", Author="N. Wirth", Title="Algorithms + Data Structures = Programs", Journal=SPandE, Year=1977, Volume=7, Number=1 } @InCollection{Wolter-etal95, key = "Wolter, {\em et al.}", author = {U. Wolter and K. Didrich and F. Cornelius and M. Klar and R. Wess\"{a}ly and H. Ehrig}, title = "How to cope with the Spectrum of {\sc Spectrum}", pages = "173-189", annote = "17 references.", editor = {Manfred Broy and Stefan J\"{a}hnichen}, booktitle = "{KORSO}: Methods, Languages and Tools for the Construction of Correct Software", Publisher = "Springer-Verlag", address = NY, Series = LNCS, Volume = 1009, Year = 1995 } @Article{Woo-Dunlop-Wolf, Key="Woo \& Dunlop \& Wolf", Author="Nam-Sung Woo and Alfred E. Dunlop and Wayne Wolf", Title="Codesign from Cospecification", Journal="Computer", Volume=27, Number=1, Month=Jan, Year=1994, Pages="42-48" } @Book{Woodcock-Davies96, key = "Woodcock \& Davies", author = "Jim Woodcock and Jim Davies", title = "Using {Z}: Specification, Refinement, and Proof", publisher = "Prentice Hall International Series in Computer Science", url = "http://www.comlab.ox.ac.uk/usingz.html", ISBN = "0-13-948472-8", year = "1996", annote = "Provides an introduction to the world of logic, sets and relations. It explains the use of the Z notation in the specification of realistic systems. ", } @article{Woodcock89, Key="Woodcock", Author="J. C. P. Woodcock", Title="Structuring Specifications in {Z}", Journal="Software Engineering Journal", Volume=4, Number=1, Month=Jan, Year=1989, Pages="51-66", Annote="Extended tutorial on Z's schema calculus." } @InCollection{Woodcock91, Key = "Woodcock", Author = "J. C. P. Woodcock", Title = "A Tutorial on the Refinement Calculus", BookTitle = "VDM '91 Formal Software Development Methods 4th International Symposium of VDM Europe Noordwijkerhout, The Netherlands, Volume 2: Tutorials", Publisher = "Springer-Verlag", Year = 1991, Editor = "S. Prehn and W. J. Toetenel", Series = LNCS, Volume = 552, Pages = "79-140", Address = NY, Month = Oct, Annote = "Part 1 is a tutorial on the refinement calculus. Part 2 is an introduction to refinement in Z. Part 3 is two refinement case studies." } @Book{Wulf-etal81, Key = "Wulf, {\em et al.}", Author = "William A. Wulf and Mary Shaw and Paul N. Hilfinger and Lawrence Flon", Title = "Fundamental Structures of Computer Science", Publisher = Addison-Wesley, Year = 1981, Address = "Reading, Mass.", Annote = "56 references." } @Article{Yamaura98, key = {Yamaura}, author = {Tsuneo Yamaura}, title = {How to Design Practical Test Cases}, journal = {IEEE Software}, year = 1998, volume = 15, number = 6, month = Nov, pages = {30-36}, annote = {4 references.} } @Article{Yar-Tsai86, Author="Stephen S. Yau and Jeffery J.-P. Tsai", Title="A Survey of Software Design Techniques", Journal=IEEETSE, Volume="SE-12", Number=6, Month=Jun, Year=1986, Pages="713-721", Annote="83 references." } @TechReport{Yelick91, Key = "Yelick", Author = "Katherine Yelick", Title = "Using Abstraction In Explicitly Parallel Programs", Institution = "Laboratory for Computer Science, MIT", Year = 1991, Number = "MIT/LCS/TR-507", Address = "545 Technology Square, Cambridge, MA 02139", Month = Jul, Annote = "79 references." } @Article{Yemini-Berry87, Key="Yemini \& Berry", Author="Shaula Yemini and Daniel M. Berry", Title="An Axiomatic Treatment of Exception Handling in an Expression-Oriented Language", Journal=TOPLAS, Volume=9, Number=3, Month=Jul, Year=1987, Pages="390-407", Annote="Axiomatic semantics of the replacement model of exception handling 27 references." } @InCollection{Yodaiken90, Key = "Yodaiken", Author = "Victor Yodaiken", Title = "A logic-free method for modular compostion of specifications", BookTitle = "Advances in Computing and Information - ICCI'90", Publisher = "Springer-Verlag", Year = 1990, Editor = "S.G. Akl and F. Fiala and W.W. Koczkodaj", Series = LNCS, Volume = 468, Pages = "196-205", Address = NY, Annote = "14 references." } @TechReport{Yonezawa77, Key="Yonezawa", Author="Akinori Yonezawa", Title="Specification and Verification Techniques for Parallel Programs based on Message Passing Semantics", Institution=MITLCS, Number=191, Month=Dec, Year=1977, Annote="Specification using an abstract model approach called conceptual representations. Deals with mutable objects, message passing in actor systems and parallel processing. 59 references." } @Article{Young97, key = {Young}, author = {William D. Young}, title = {Comparing Verification Systems: Interactive Consistency in {ACL2}}, journal = IEEETSE, year = 1997, volume = 23, number = 4, month = Apr, pages = {214-223}, annote = {First-order logic may be good enough for some problems. Comparisons with PVS. 23 references.} } @Book{Yourdon89, Key = "Yourdon", Author = "Edward Yourdon", Title = "Modern Structured Analysis", Publisher = "Prentice-Hall", Year = 1989, Series = "Yourdon Press computing series", Address = "Englewood Cliffs, New Jersey" } @InCollection{Zamulin93, Key = "Zamulin", Author = "A. V. Zamulin", Title = "Algebraic Modelling of Imperative Languages with Pointers", BookTitle = "Formal Methods in Programming and Their Applications", Publisher = "Springer-Verlag", Year = 1993, Editor = "Dines Bjoerner and Manfred Broy and Igor V. Pottosin", Series = LNCS, Volume = 735, Pages = "81-97", Month = Jul, Annote = "18 references." } @TechReport{Zamulin94a, Key = "Zamulin", Author = "Alexandre Zamulin", Title = "The Database Specification Language Ruslan (a preliminary communication)", Institution = "Siberian Division of the Russian Academy of Sciences Institute of Informatics Sytems", Year = 1994, Number = "Preprint 28", Address = "Novosibirsk", Annote = "12 references." } @TechReport{Zamulin94b, Key = "Zamulin", Author = "Alexandre Zamulin", Title = "The Database Specification Language Ruslan (specification examples)", Institution = " Division of the Russian Academy of Sciences Institute of Informatics Sytems", Year = 1994, Number = "Preprint 29", Address = "Novosibirsk", Annote = "2 references." } @InProceedings{Zaremski-Wing95, key = "Zaremski \& Wing", author = "Amy Moormann Zaremski and Jeannette M. Wing", title = "Specification Matching of Software Components", booktitle = "Proceedings of SIGSOFT'95 Third ACM SIGSOFT Symposium on the Foundations of Software Engineering", pages = "6--17", month = Oct, year = 1995 } @Article{Zaremski-Wing97, key = "Zaremski \& Wing", author = "Amy Moormann Zaremski and Jeannette M. Wing", title = "Specification Matching of Software Components", journal = TOSEM, year = 1997, volume = 6, number = 4, month = Oct, pages = {333-369}, annote = {46 references} } @InProceedings{Zave-Jackson, Key="Zave \& Jackson", Author="Pamela Zave and Daniel Jackson", Title="Practical Specification Techniques for Control-Oriented Systems", BookTitle="Information Processing '89", Editor="G. X. Ritter", Year=1989, Publisher="Elsevier Science publishers B. V. (North-Holland)", Pages="83-88", Annote="Combination of structure diagrams (from JSP and JSD) with Statecharts. 16 references." } @Article{Zave-Jackson93, Key="Zave \& Jackson", Author="P. Zave and Michael Jackson", Title="Conjunction as composition", Journal="ACM Transactions on Software Engineering and Methodology", Volume=2, Number=4, Month=Oct, Year=1993, Pages="379-411", Annote="36 References" } @Article{Zave-Jackson98, key = {Zave \& Jackson}, author = {Pamela Zave and Michael Jackson}, title = {A Component-Based Approach to Telecommunications Software}, journal = {IEEE Software}, year = 1998, volume = 15, number = 5, month = Sep, pages = {70-87}, annote = {10 references.} } @Article{Zave72, Key="Zave", Author="P. Zave", Title="An Operational Approach to Requirements Specification for Embedded Systems", Journal=IEEETSE, Volume=8, Number=3, Month=May, Year=1972, Pages="250-269" } @Article{Zave84, Key="Zave", Author="Pamela Zave", Title="The Operational Versus the Conventional Approach to Software Development", Journal=CACM, Volume=27, Number=2, Month=Feb, Year=1984, Pages="104-118", Annote="Operational approach specifies systems operationally, that is, at problem-level and transforms it to an implementation level program. Separation of problem-oriented from implementation oriented concerns. Executable specifications. Efficiency versus maintenance trade-off is between localizing information or spreading it around. 42 references." } @Article{Zave97, author = {Pamela Zave}, title = {Classification of Research Efforts in Requirements Engineering}, journal = ACMCS, year = 1997, key = {Zave}, volume = 29, number = 4, month = Dec, pages = {315-321}, annote = {39 references.} } @Book{Zeigler97, key = {Zeigler}, author = {Bernard P. Zeigler}, title = {Objects and systems: principled design with implementations in C++ and Java}, publisher = {Springer-Verlag}, year = 1997, series = {Springer undergraduate texts in computer science}, address = NY, annote = {Includes formal specification and verification.} } @Article{Zelkowitz90, Key = "Zelkowitz", Author = "Marvin V. Zelkowitz", Title = "A Functional Correctness Model of Program Verification", Journal = "Computer", Year = 1990, Volume = 23, Number = 1, Month = Nov, Pages = "30-39", Note = "This model's verification conditions depend only on elementary symbolic execution of a trace table. An easy-to-learn technique, it's used in a freshman computer science class", Annote = "8 references." } @TechReport{Zhang88, Key="Zhang", Author="Hantao Zhang", Title="Reduction, Superposition and Induction: Automated Reasoning in an Equational Logic", Institution="Department of Computer Science, The University of Iowa", Address="Iowa City, Iowa", Number="86-06", Month=Nov, Year=1988, Note="The author's Ph.D. thesis, from RPI", Annote="Systematic study of automated reasoning techniques based on equational logic. About a hundred references." } @Article{Zhao99, key = {Zhao}, author = {Jianjun Zhao}, title = {Bibliography on Software Architecture Analysis}, journal = SIGSOFT, year = 1999, volume = 24, number = 3, month = May, pages = {61-62}, URL = "http://www.fit.ac.jl/~zhaz/pub/sa.html", annote = {44 references.} } @Article{Zheng-Zhang-Wang98, key = {Zheng \& Zhang \& Wang}, author = {Mingchun Zheng and Jiahong Zhang and Yanbing Wang}, title = {Integrating a Formal Specification Notation with {HOOD}}, journal = SIGSOFT, year = 1998, volume = 23, number = 5, month = Sep, pages = {47-61}, annote = {Integration with Z. 8 references.} } @Article{Zhu-Hall-May97, author = {Hong Zhu and Patrick A. V. Hall and John H. R. May}, title = {Software Unit Test Coverage and Adequacy}, journal = ACMCS, year = 1997, key = {Zhu \& Hall \& May}, volume = 29, number = 4, month = Dec, pages = {366-427}, annote = {Many references.} } @Article{Zhu94, Key = "Zhu", Author = "Hong Zhu", Title = "How powerful are folding/unfolding transformations?", Journal = "Journal of Functional Programming", Year = 1994, Volume = 4, Number = 1, Month = Jan, Pages = "89-112", Annote = "24 references." } @Article{Zwaenpoel-Lantz84, Key="Zwaenpoel \& Lantz", Author="Willy Zwaenpoel and Keith A. Lantz", Title="Perseus: Retrospective on a Portable Operating System", Journal=SPandE, Volume=14, Number=1, Month=Jan, Year=1984, Pages="31-48" } @Book{deBakker80, Key="de Bakker", Author="Jaco de Bakker", Title="Mathematical Theory of Program Correctness", Publisher=Prentice-Hall, Address="Englewood Cliffs, N.J.", Year=1980, Series="International Series in Computer Science", Annote="Program verification. Bibliographical notes and 134 references." } @InProceedings{deBoer90, Key="de Boer", Author="Frank S. de Boer", Title="A Proof System for the Parallel Object-Oriented Language POOL", BookTitle="17th International Colloquium on Automata, Languages, and Programming (ICALP), Warwick, England", Month=Jul, Year=1990, Annote="Hoare-style proof system for partial correctness. Deals with aliasing. Does not allow use of subtyping for assignments or message passing." } @InCollection{deBoer91, Key = "de Boer", Author = "Frank S. de Boer", Title = "A Proof System for the Language POOL", BookTitle = "Foundations of Object-Oriented Languages, REX School/Workshop, Noordwijkerhout, The Netherlands, May/June 1990", Publisher = "Springer-Verlag", Year = 1991, Editor = "J. W. de Bakker and W. P. de Roever and G. Rozenberg", Series = LNCS, Volume = 489, Pages = "124-150", Address = NY, Annote = "Hoare-logic for POOL. Deals with pointers. 15 references." } @Article{deChampeaux-Faure92, Key = "deChampeaux \& Faure", Author = "Dennis de Champeaux and Penelope Faure", Title = "A Comparative Study of object-oriented analysis methods", Journal = JOOP, Year = 1992, Volume = 5, Number = 1, Month = Mar, Pages = "21-33", Annote = "33 references." } @Article{deChampeaux-Lea-Faure92, Key = "de Champeaux \& Lean \& Faure", Author = "Dennis de Champeaux and Doug Lea and Penelope Faure", Title = "The Process of Object-Oriented Design", Journal = SIGPLAN, Volume = 27, Number = 10, Month = Oct, Year = 1992, Pages = "45-62", Note = "{\em OOPSLA '92 Proceedings}, Andreas Papecke (editor).", Annote = "20 references." } @Book{deChampeaux-Lea-Faure93, Key = "de Champeaux \& Lean \& Faure", Author = "Dennis de Champeaux and Doug Lea and Penelope Faure", Title = "Object Oriented System Development", Year = 1993, Publisher=Addison-Wesley, Address="Mass,", Annote = "20 references." } @InProceedings{deChampeaux-etal91, Key = "deChampeaux, {\em et al.}", Author = "Dennis de Champeaux and Pierre America and Derek Coleman and Roger Duke and Doug Lea and Gary Leavens", Title = "Formal Techniques for {OO} Software Development", BookTitle = "OOPSLA '92 Proceedings", Editor = "Andreas Paepcke", Series = SIGPLAN, Year = 1991, Volume = "26(11)", Month = Nov, Pages = "166-170", Annote = "no references" } @Article{deChampeaux91, Key = "de Champeaux", Author = "Dennis de Champeaux", Title = "Formal Techniques for Object Oriented Software Development", Journal = "OOPS Messenger", Volume = 3, Number = 4, Month = Oct, Year = 1992, Pages = "49", Note = "{\em OOPSLA '91 Addendum to the Proceedings}, Jerry L. Archibald (editor)." } @Book{deRoever-Englhardt98, author = {Willem-Paul de Roever and Kai Englhardt}, title = {Data Refinement: Model-Oriented Proof Methods and their Comparison}, publisher = {Cambridge University Press}, year = 1998, key = {deRoever \& Englhardt}, volume = 47, series = {Cambridge Tracts in Theoretical Computer Science}, address = NY, annote = {Comprehensive and systematic introduction to data refinement. Many references.} } @InCollection{vanHee-Somers-Voorheve91, Key = "van Hee \& Somers \& Voorhoeve", Author = "K. M. van Hee and L. J. Somers and M. Voorhoeve", Title = "{Z and High Level Petri Nets}", BookTitle = "VDM '91 Formal Software Development Methods 4th International Symposium of VDM Europe Noordwijkerhout, The Netherlands, Volume 1: Conference Contributions", Publisher = Springer-Verlag, Year = 1991, Editor = "S. Prehn and W. J. Toetenel", Series = LNCS, Volume = 551, Pages = "204-219", Address = NY, Month = Oct, Annote = "11 references." } @Article{vanLamsweerde-Darimont-Letier98, key = {vanLamsweerde \& Darimont \& Letier}, author = {Axel van Lamsweerde and Robert Darimont and Emmanuel Letier}, title = {Managing Conflicts in Goal-Directed Requirements Engineering}, journal = IEEETSE, year = 1998, volume = 24, number = 11, month = Nov, pages = {908-925}, annote = {57 references.} } @Article{vanVliet-Gladney85, Key="van Vliet \& Gladney", Author="J. C. van Vliet and H. M. Gladney", Title="An Evaluation of Tagging", Journal=SPandE, Volume=15, Number=9, Month=Sep, Year=1985, Pages="823-837", Annote="Two programs coded in object-oriented languages and compared to codings done in PL/1. The object-oriented version was found to be easier to understand, easier to change, and easier to maintain. But other factors besides dynamic binding also helped, e.g., storage allocation and abstract data type support." } @InProceedings{vandeSnepscheut94, author = {Jan L. van de Snepscheut}, title = {Mechanized Support for Stepwise Refinement}, booktitle = {Programming Languages and System Architecture}, key = {van de Snepscheut}, editor = {J. Gutknecht}, year = 1994, publisher = {Springer-Verlag}, address = NY, pages = {35-48} }