Christopher Alexander,
Sara Ishikawa, Murray Silverstein, Max Jacobson, Ingrid Fiksdahl-King, and
Shlomo Angel.
A Pattern
Language.
Oxford University Press, Oxford, 1977.
Ross Anderson.
Why information security is hard—an economic perspective.
In 17th Annual Computer Security Applications Conference
(ACSAC'01), page 0358, Los Alamitos, CA, USA, 2001. IEEE Computer
Society.
(doi:10.1109/ACSAC.2001.991552)
American National
Standard for Information Systems — programming language — C:
ANSI X3.159–1989, December 1989.
(Also ISO/IEC 9899:1990).
Phillip G. Armour.
The case for a new business model: Is software a product or a medium?
Communications of the ACM, 43(8):19–22, August 2000.
J.W. Backus, F.L.
Bauer, J.Green, C. Katz, J.McCarthy, P. Naur, A.J.Perlis, H. Rutishauser,
K. Samuelson, B. Vauquois, J.H. Wegstein, A. van Vinjgaarden, and M. Woodger.
Revised report on the algorthmic language ALGOL 60.
IFIP, 1960.
Janet Barnes, Rod
Chapman, Randy Johnson, James Widmaier, Bill Everett, and David Cooper.
Engineering the
Tokeneer enclave protection system.
In IEEE International Symposium on Secure Software Engineering,
Los Alamitos, California, March 2006.
V. Basili, C. Caldiera,
and D. H. Rombach.
Goal
question metric paradigm.
In Encyclopedia of Software Engineering, volume 2, pages 528–532.
John Wiley and Sons, New York, 1994.
L. Bass, P. Clements, and
R. Kazman.
Software Architecture in Practice.
Addison-Wesley, Reading, MA, 1998.
Hal Berenson, Phil
Bernstein, Jim Gray, Jim Melton, Elizabeth O'Neil, and Patrick O'Neil.
A critique of ANSI
SQL isolation levels.
In SIGMOD '95: Proceedings of the 1995 ACM SIGMOD international
conference on Management of data, pages 1–10, New York, NY, USA,
1995. ACM.
(doi:10.1145/223784.223785)
Frank Buschmann,
Regine Meunier, Hans Rohnert, Peter Sommerlad, and Michael Stal.
Pattern-Oriented Software Architecture, volume 1: A System of Patterns.
John Wiley and Sons, New York, 1996.
D. D. Chamberlin,
M. M. Astrahan, K. P. Eswaran, P. P. Griffiths, R. A. Lorie, J. W. Mehl,
P. Reisner, and B. W. Wade.
SEQUEL 2: A unified approach to data definition manipulation and control.
IBM Journal of Research and Development, 20(6):560–575, November
1976.
Peter Checkland.
Soft systems methodology.
In J. Rosenhead, editor, Rational Analysis for a Problematic
World, chapter 4, pages 71–100. John Wiley and Sons, New York,
1989.
Peter Pin-Shan Chen.
The entity-relationship model — toward a unified view of data.
ACM Transactions on Database Systems, 1(1):9–36, March
1976.
Clayton M. Christensen.
The Innovator's Dilemma: When New Technologies Cause Great Firms to
Fail.
Harvard Business School Press, Cambridge, 1997.
William F. Clocksin
and Christopher S. Mellish.
Programming in Prolog.
Springer Verlag, second edition, 1984.
O-J. Dahl, B. Myrhaug, and
K. Nygaard.
SIMULA common base language.
Technical Report S-22, Norwegian Computing Center, Oslo, Norway, 1970.
Markus Dahm.
Byte code
engineering.
In Clemens H. Cap, editor, JIT '99, Java-Informations-Tage
1999, pages 267–277. Springer-Verlag, September 1999.
John Daniels.
Modeling with a sense of purpose.
IEEE Software, 19(1):8–10, January/February 2002.
Fred D. Davis, Richard P.
Bagozzi, and Paul R. Warshaw.
User acceptance of computer technology: a comparison of two theoretical models.
Manage. Sci., 35(8):982–1003, 1989.
Fred D. Davis.
Perceived usefulness, perceived ease of use, and user acceptance of information
technology.
MIS Quarterly, 13(3):319–340, September 1989.
J. D. Day and
H. Zimmermann.
The OSI reference model.
Proceedings of the IEEE, 71:1334–1340, 1983.
Robert A. Day.
How to write a scientific paper.
IEEE Transactions on Professional Communication, PC-20(1):32–37,
June 1977.
H. M. Deitel and M. S.
Kogan.
The Design of OS/2.
Addison-Wesley, 1992.
R. DeMillo, R. Lipton,
and A. Perlis.
Social processes and proofs of theorems and programs.
In Proc. Fourth ACM Symposium on Principles of Programming
Languages, pages 206–214, New York, January 1977. ACM Press.
Peter J. Denning.
Working sets past and present.
IEEE Transactions on Software Engineering, 6(1):64–84, January
1980.
Edsger W. Dijkstra.
Co-operating sequential processes.
In F. Genuys, editor, Programming Languages: NATO Advanced Study
Institute, pages 43–112. Academic Press, London, 1968.
Edsger Wybe Dijkstra.
Go to statement considered harmful.
Communications of the ACM, 11(3):147–148, March 1968.
Edsger Wybe Dijkstra.
The structure of THE multiprogramming system.
Communications of the ACM, 11(5):341–346, May 1968.
Edsger W. Dijkstra.
The humble programmer — 1972 turing award lecture.
Communications of the ACM, 15(10):859–866, October 1972.
Ken Arnold (editor),
Jim Waldo, and the Jini Technology Team.
The Jini
Specifications.
Addison-Wesley, second edition, 2000.
K. P. Eswaran, J. N.
Gray, R. A. Lorie, and I. L. Traiger.
The notions of consistency and predicate locks in a database system.
Communications of the ACM, 19(11):624–633, 1976.
(doi:10.1145/360363.360369)
Jean D. Ichbiah et al.
Reference Manual for the Ada Programming Language, ANSI/MIL-STD-1815
A-1983.
Castle House Publication Ltd., 1983.
Michael E. Fagan.
Advances in software inspections.
IEEE Transactions on Software Engineering, SE-12(7):744–751,
July 1986.
Roy T. Fielding and
Richard N. Taylor.
Principled design of the modern Web architecture.
ACM Transactions on Internet Technology, 2(2):115–150, 2002.
(doi:10.1145/514183.514185)
Martin Fowler and
Kendall Scott.
UML Distilled: Applying the Standard Object Modeling Language.
Addison-Wesley, Reading, MA, 1997.
Richard P. Gabriel
and Ron Goldman.
Mob software: The
erotic life of code.
Presented at the ACM Conference on Object-Oriented Programming, Systems,
Languages, and Applications on October 19, 2000, in Minneapolis, Minnesota.,
October 2000.
Online http://oopsla.acm.org/oopsla2k/postconf/Gabriel.pdf. Current October
2004.
M. R. Garey and D. S.
Johnson.
Computers and Intractability: A Guide to the Theory of
NP-Completeness.
W. H. Freeman and Company, 1979.
Emden R. Gasner,
Eleftherios Koutsofios, Stephen C. North, and Kiem-Phong Vo.
A technique for drawing directed graphs.
IEEE Transactions on Software Engineering, 19(3):124–230, May
1993.
Joshua Gay, editor.
Free software free society : selected essays of Richard M.
Stallman.
Free Software Foundation Inc., Boston, 2002.
David Goldberg.
What every computer scientist should know about floating-point arithmetic.
ACM Comput. Surv., 23(1):5–48, 1991.
(doi:10.1145/103162.103163)
Don Gotterbarn, Keith
Miller, and Simon Rogerson.
Software engineering code of ethics is approved.
Communications of the ACM, 42(10):102–107, October 1999.
Theo Haerder and
Andreas Reuter.
Principles of transaction-oriented database recovery.
ACM Computing Surveys, 15(4):287–317, 1983.
(doi:10.1145/289.291)
M. H. Halstead.
Elements of Software Science.
Elsevier New Holland, New York, 1977.
Elisabeth
Hendrickson and Martin Fowler (editors).
The software engineering of internet software.
IEEE Software, 19(2), March/April 2002.
Special issue.
John L. Hennessy
and David A. Patterson.
Computer Architecture: A Quantitative Approach.
Morgan Kaufmann, San Mateo, CA, second edition, 1996.
S. M. Henry and
D. Kafura.
Software structure metrics based on information flow.
IEEE Transactions on Software Engineering, SE-7(5):510–518,
1981.
Val Henson.
An analysis of compare-by-hash.
In Proceedings of HotOS IX: The 9th Workshop on Hot Topics in Operating
Systems, pages 13–18, Berkeley, CA, May 2003. USENIX
Association.
A. R. Hevner, S. T.
March, J. Park, and S. Ram.
Design science in information systems research.
MIS Quarterly, 28(1):75–105, 2004.
C. A. R. Hoare.
Proof of a program: Find.
Communications of the ACM, 14(1):39–45, January 1971.
C. A. R. Hoare.
Communicating sequential processes.
Communications of the ACM, 21(8):666–677, August 1978.
Charles Antony Richard Hoare.
The emperor's old clothes.
Communications of the ACM, 24(2):75–83, 1981.
(doi:10.1145/358549.358561)
Richard C. Holt, Andy
Schürr, Susan Elliott Sim, and Andreas Winter.
GXL: a graph-based standard exchange format for reengineering.
Science of Computer Programming, 60(2):149–170, 2006.
(doi:10.1016/j.scico.2005.10.003)
R. C. Houghton.
Software development tools: a profile.
Computer, pages 63–70, May 1983.
Donald E. Knuth.
An empirical study of FORTRAN programs.
Software: Practice & Experience, 1:105–133, 1971.
Donald E. Knuth.
Computer programming
as an art.
In Robert L. Ashenhurst, editor, ACM Turing Award Lectures,
pages 33–46. Addison-Wesley, Reading, MA, 1987.
Donald E. Knuth.
Literate
Programming.
CSLI Lecture Notes Number 27. Stanford University Center for the Study of
Language and Information, Stanford, CA, 1992.
Distributed by the University of Chicago Press.
Robert Kowalski.
Predicate logic as programming language.
In Jack L. Rosenfeld, editor, Information Processing 74, Proceedings of
IFIP congress 74, pages 569–574. International Federation of
Information Processing, North-Holland, August 1974.
Glenn Krasner.
Smalltalk 80: Bits of History, Words of Advice.
Addison Wesley, 1980.
Chris Lattner and
Vikram Adve.
LLVM: A compilation framework for lifelong program analysis &
transformation.
In CGO '04: Proceedings of the 2004 International Symposium on Code
Generation and Optimization, March 2004.
(doi:10.1109/CGO.2004.1281665)
T. J. McCabe.
A complexity measure.
IEEE Transactions on Software Engineering, 2(4):308–320,
1976.
Robert M. Metcalfe
and David R. Boggs.
Ethernet: Distributed packet switchig for local computer networks.
Communications of the ACM, 19(7):395–403, July 1976.
R. Milo, S. Shen-Orr,
S. Itzkovitz, N. Kashtan, D. Chklovskii, and U. Alon.
Network motifs: Simple building blocks of complex networks.
Science, 298(5594):824–827, October 2002.
(doi:10.1126/science.298.5594.824)
P. Naur.
Programming languages, natural languages, and mathematics.
In Proc. Second ACM Symposium on Principles of Programming
Languages, pages 137–148, January 1975.
Elliot I. Organick.
The Multics System: An Examination of its Structure.
MIT Press, Cambridge, 1972.
Ian Parberry.
A guide for new referees in theoretical computer science.
Information and Computation, 112(1):96–116, July 1994.
(doi:10.1006/inco.1994.1053)
C. Northcote Parkinson.
Parkinson's Law: The Pursuit of Progress.
John Murray, London, 1958.
David Lorge Parnas.
On the criteria to be used for decomposing systems into modules.
Communications of the ACM, 15(12):1053–1058, December 1972.
Also in [HW01] pp. 145–155.
David L. Parnas.
On the design and development of program families.
IEEE Transactions on Software Engineering, SE-2(1):1–9, March
1976.
David A. Patterson.
Latency lags bandwidth.
Communications of the ACM, 47(10):71–75, 2004.
J. H. Saltzer, D. P.
Reed, and D. D. Clark.
End-to-end arguments in system design.
ACM Transactions on Computer Systems, 2(4):277–288, November
1984.
Peter H. Salus.
A Quarter Century of UNIX.
Addison-Wesley, Boston, MA, 1994.
Robert W. Scheifler
and James Gettys.
X Window System: The Complete Reference to Xlib, X Protocol,
ICCCM, XLFD.
Digital Press, third edition, 1992.
Douglas C. Schmidt,
Michael Stal, Hans Rohnert, and Frank Buschmann.
Pattern-Oriented Software Architecture, volume 2: Patterns for Concurrent and
Networked Objects.
John Wiley and Sons, New York, 2000.
Michael L. Scott.
Programming Language Pragmatics.
Morgan Kaufmann Publishers, San Francisco, 1999.
Clemens Szyperski.
Component Software: Behind Object-Oriented Programming.
Addison-Wesley, Reading, MA, second edition, 2002.
Frederick Winslow Taylor.
The Principles of Scientific Management.
Institute of Industrial Engineers, 1998.
1st edition 1911.
Teitelman and
Warren et al.
InterLISP Reference Manual.
Xerox Palo Alto Research Center, Palo Alto, California, third revision edition,
1978.
Alan M. Turing.
On computable numbers, with an application to the Entscheidungs Problem.
Proceedings of the London Mathematical Society, 2(42):230–265,
1936.
Corrections in 2(43):544–546.
Alan M. Turing.
Computability and λ-definability.
Journal of Symbolic Logic, 2:153–163, 1937.
David A. Turner.
Miranda — a non-strict functional language with polymorphic types.
In Jean-Pierre Jouannaud, editor, Proceedings of the Conference on
Functional Programming Languages and Computer Architecture, pages
1–16. Springer-Verlag, September 1985.
Lecture Notes in Computer Science 201.
Georg von Krogh
and Eric von Hippel.
The promise of research on open source software.
Management Science, 52(7):975–983, July 2006.
(doi:10.1287/mnsc.1060.0560)
Jim Waldo.
On system design.
In OOPSLA '06: Proceedings of the 21st annual ACM SIGPLAN conference on
Object-oriented programming languages, systems, and applications,
pages 467–480, New York, NY, USA, 2006. ACM Press.
(doi:10.1145/1167473.1167513)
David H. D. Warren.
An abstract Prolog instruction set.
Technical Note 309, SRI International, Artificial Intelligence Center,
Computer Science and Technology Division, 333 Ravenswood Ave., Menlo Park,
CA, October 1983.
Jane Webster and
Richard T. Watson.
Analyzing the past to prepare for the future: Writing a literature review.
MIS Quarterly, 26(2):xiii–xxiii, June 2002.
Norbert Wiener.
Cybernetics or Control and Communication in the Animal and the
Machine.
MIT Press, Cambridge, MA, 1948.
Paul R. Wilson, Mark S.
Johnstone, Michael Neely, and David Boles.
Dynamic storage
allocation: A survey and critical review.
In Henry G. Baker, editor, IWMM '95: Proceedings of the International
Workshop on Memory Management, pages 1–116, Berlin, September 1995.
Springer-Verlag.
Lecture Notes in Computer Science 986.