home *** CD-ROM | disk | FTP | other *** search
/ ftp.pasteur.org/FAQ/ / ftp-pasteur-org-FAQ.zip / FAQ / software-eng / part3 < prev    next >
Text File  |  2004-04-18  |  35KB  |  634 lines

  1. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!newsfeed.stanford.edu!logbridge.uoregon.edu!snoopy.risq.qc.ca!news.ccs.queensu.ca!cs.queensu.ca!dalamb
  2. From: dalamb@spamcop.net (David Alex Lamb)
  3. Newsgroups: comp.software-eng,comp.answers,news.answers
  4. Subject: Comp.software-eng FAQ (Part 3): readings
  5. Supersedes: <readmsg_1079259302@qucis.QueensU.CA>
  6. Followup-To: comp.software-eng
  7. Date: 18 Apr 2004 09:15:03 GMT
  8. Organization: Computing and Information Science, Queen's University at Kingston, Ontario,  K7L 3N6, Canada
  9. Lines: 612
  10. Approved: news-answers-request@MIT.Edu
  11. Distribution: world
  12. Expires: 30 May 2004 09:15:02 GMT
  13. Message-ID: <readmsg_1082279702@qucis.QueensU.CA>
  14. References: <faqmsg_1082279702@qucis.QueensU.CA>
  15. Reply-To: dalamb@spamcop.net (David Alex Lamb)
  16. NNTP-Posting-Host: highnoon.cs.queensu.ca
  17. Keywords: FAQ, Software Engineering
  18. X-Disclaimer: Approval for *.answers is based on form, not content.
  19. Originator: dalamb@qucis.queensu.ca
  20. Xref: senator-bedfellow.mit.edu comp.software-eng:114392 comp.answers:56897 news.answers:270076
  21.  
  22. Last-Modified: 13 Oct 2002
  23. Archive-name: software-eng/part3
  24. URL: http://www.cs.queensu.ca/FAQs/SE/reading.html
  25.  
  26. This is the monthly "frequently asked questions" (FAQ) posting on
  27. reading materials for software engineers.  Topics include:
  28.     Textbooks
  29.     Periodicals on Software Engineering
  30.         Professional Journals
  31.         Mixed Research and Practice
  32.         Research Journals
  33.         Other magazines
  34.     Other sources of information
  35.     General reading for software engineers
  36.         General
  37.         Programming in the large
  38.         Programming in the small
  39.         Mathematical Approaches
  40.         Other
  41.     Cost Estimation
  42.     Formal Specification
  43.     Metrics
  44.         Metrics - General
  45.         Metrics for object-oriented systems
  46.     Object-Oriented Analysis and Design
  47.     Programming Style
  48.     Real-Time Systems
  49.     Requirements Analysis
  50.         Requirements Analysis - General
  51.         Collaborative Requirements Analysis
  52.     Software Process
  53.     Software Testing
  54.     User Interfaces
  55. Look for lines starting with "Subject:" (control-G command in rn).
  56.  
  57. Be warned: the only mechanism we use to compose this list is to gather
  58. information submitted by people around the net, post it regularly, and
  59. incorporate feedback.  All evaluations are the opinions of those who submitted
  60. them; your mileage may vary.  Send comments to dalamb@spamcop.net (David
  61. Alex Lamb).
  62.  
  63.  
  64. ------------------------------------------------------------------------
  65. Subject: Textbooks
  66. Date:  6 Dec 1997
  67. Originally collected by: hsrender@happy.colorado.edu (Hal Render)
  68. The first 8 items are Hal Render's original list in his rough order of prefer¡
  69. ence.
  70.  
  71. 1.  Software Engineering: The Production of Quality Software by Shari Pfleeger,
  72.     2nd Edition, Macmillan, 1991, ISBN 0-02-395115-X.
  73.     hsrender@happy.colorado.edu: Like #2, had the best explanations of what
  74.     I want to cover (different engineering lifecycles, methods, and tools).
  75. 2.  Software Engineering: A Practitioner's Approach by Roger Pressman, 4th
  76.     Edition, McGraw-Hill, 1996, ISBN 0070521824
  77.     hsrender@happy.colorado.edu: (on 2nd edition): Like #1, had the best
  78.       explanations of what I want to cover (different engineering lifecycles,
  79.       methods, and tools).
  80.     robb@iotek.uucp (Robb Swanson): The definitive book on the subject as far
  81.       as I'm concerned.
  82.     johnson@aplcen.apl.jhu.edu (Michelle Johnson): A good text book as well as
  83.       reference.
  84. 3.  Software Systems Engineering by Andrew Sage and James D. Palmer.
  85.     hsrender@happy.colorado.edu: Like #1, had the best explanations of what
  86.       I want to cover (different engineering lifecycles, methods, and tools).
  87. 4.  Fundamentals of Software Engineering by Ghezzi, Jayazeri and Mandrioli,
  88.     Prentice-Hall, 1991
  89.     hsrender@happy.colorado.edu: Like #5, good, and covered the issue of
  90.       specifications and verification better, but at the expense of other
  91.       aspects of the development process.  I may use one of them for a graduate
  92.       course in software engineering.
  93.     nancy@murphy.ICS.UCI.EDU (Nancy Leveson): Better than Sommerville, although
  94.       I like much of Sommerville.
  95. 5.  Software Engineering with Abstractions by Valdis Berzins and Luqi, Addison
  96.     Wesley, 1991, 624 pages.
  97.     hsrender@happy.colorado.edu: Like #4, good, and covered the issue
  98.       of specifications and verification better, but at the expense of other
  99.       aspects of the development process.  I may use one of them for a graduate
  100.       course in software engineering.
  101.     straub@cs.UMD.EDU (Pablo A. Straub): Both this and #9 have a good emphasis
  102.       on using formal techniques (i.e.,  doing engineering properly), but they
  103.       do not disregard informal methods; chapters are roughly organized around
  104.       the traditional lifecycle.  #5 is longer and can be used in a two-term
  105.       sequence or for graduate students (it's  possible  to use  it in a one-
  106.       term undergrad course by covering only part of the material). One thing I
  107.       like is that management and validation is given in all chapters, so that
  108.       these activities are integrated into the development process.  Emphasizes
  109.       the use of formally specified abstractions.  Uses the authors'
  110.       specification language (Spec) to develop a project in Ada.
  111. 6.  Software Engineering by Ian Sommerville, Addison-Wesley, ISBN 0-201-17568-1
  112.     hsrender@happy.colorado.edu: Our current text, and my basic problem with it
  113.       is the vague way it covers many of the topics.
  114. 7.  Software Engineering with Student Project Guidance by Barbara Mynatt
  115.     hsrender@happy.colorado.edu: Like #8, not bad, but fairly low-level and
  116.       doesn't cover many tools and techniques I consider valuable.
  117. 8.  Software Engineering by Roger Jones
  118.     hsrender@happy.colorado.edu: Like #7, not bad, but fairly low-level and
  119.       doesn't cover many tools and techniques I consider valuable.
  120. 9.  Software Engineering: Planning for Change by David Alex Lamb, Prentice-
  121.     Hall, 1988, 298 pages.
  122.     straub@cs.UMD.EDU (Pablo A. Straub): Both this and #5 have a good emphasis
  123.       on using formal techniques (i.e.,  doing engineering properly), but they
  124.       do not disregard informal methods; chapters are roughly organized around
  125.       the traditional lifecycle. #9 has the advantage of being shorter, yet
  126.       covering most relevant topics (lifecycle phases, formal specs, v&v,
  127.       configurations, management, etc.).  It is very appropriate for an
  128.       undergrad course.  It emphasizes that maintenance is a given and should
  129.       be taken into account (hence the title).  Several specification
  130.       techniques are covered and used to develop a project in Pascal.
  131. 10. A Practical Handbook for Software Development by N.D. Birrell and M.A.
  132.     Ould, Cambridge University Press, 1985/88. ISBN 0-521-34792-0 (Paper
  133.     cover); ISBN 0-521-25462-0 (Hard cover).
  134.     ewoods@hemel.bull.co.uk (Eoin Woods):
  135. 11. Fundamentals of Computing for Software Engineers by Eric S. Chan & Murat M.
  136.     Tanik, Van Nostrand Reinhold.
  137.     kayaalp@csvax.seas.smu.edu (Mehmet M. Kayaalp MD):
  138. 12. Classic and Object-Oriented Software Engineering, 3rd Edition, by Stephen
  139.     R. Schach, Richard D. Irwin, Inc. (ISBN 0-256-18298-1), 1996.  Advertised
  140.     as senior/first year graduate level, emphasizing the object-oriented
  141.     paradigm, metrics, CASE tools, testing, and maintenance.
  142. 13. Practical Software Engineering by Stephen R. Schach, Aksen Associates and
  143.     Richard D. Irwin Inc. (ISBN 0-256-11455-2), 1992. Advertised as sophomore
  144.     through senior level, emphasizing teams, maintenance, reuse, CASE tools.
  145.  
  146. ------------------------------------------------------------------------
  147. Subject: Periodicals on Software Engineering
  148. Date: 31 Jul 2002
  149.  
  150. A. Professional Journals
  151. Meant for working professionals with technical backgrounds.
  152.    1.  IEEE Software
  153.        summary: often presents recent research work, but much more readably
  154.          than typical research journals.
  155.        publisher: IEEE (Institute of Electrical and Electronic Engineers)
  156.        subscriptions: IEEE Service Center, 445 Hoes Lane, P.O. Box 1331,
  157.          Piscataway, NJ 08855-1331, USA
  158.    2.  Software Engineering Notes
  159.        summary: unrefereed newsletter; includes digest of comp.risks
  160.        publisher: ACM (Association for Computing Machinery) SIGSOFT (Special
  161.          Interest Group on Software engineering)
  162.        subscriptions: ACM, 11 West 42d St, New York, NY 10036, USA
  163.    3.  Software Maintenance News
  164.        summary: monthly report on people and technology in maintenance; aimed
  165.          at practitioners
  166.        publisher: Software Maintenance News Inc, B10 Suite 237, 4546 El Camino
  167.          Real, Los Altos, CA 94022, USA
  168.        subscriptions: as above
  169.    4.  Software Testing, Verification and Reliability
  170.        summary: aimed at practitioners; dissemination of new techniques,
  171.          methodologies and standards
  172.        publisher: John Wiley & Sons Ltd, Baffins Lane, Chichester, West Sussex
  173.          PO19 1UD, UK
  174.    5.  The Software Practitioner (TSP)
  175.        summary: started late 1990; meant for real practitioners
  176.        publisher: Computing Trends, 1416 Sare Rd., Bloomington IN  47401  USA;
  177.          voice/fax: 812-337-8047
  178.    6.  Software Testing & Quality Engineering (at http://www.stqemagazine.com/)
  179.        summary: Practical and relevent. Largely authored by practicing software
  180.          QA and testing professionals.
  181.        publisher: Software Quality Engineering (see http://www.sqe.com) since
  182.          1998; previously published as Software QA by Steve Whitchurch.
  183. B. Mixed Research and Practice
  184.    1.  Journal of Software Maintenance: Research and Practice
  185.        summary: refereed; intended for both researchers and practitioners;
  186.          joint US/UK editorial board
  187.        publisher: Wiley (see above)
  188.        subscriptions: Journals Subscription Department, at above address
  189.    2.  Software Engineering Journal (SEJ)
  190.        summary: full spectrum of articles from practical experience to long-
  191.          term research
  192.        publisher: IEE (Institution of Electrical Engineers) and BCS (British
  193.          Computer Society); write to IEE Publication Sales, PO Box 96,
  194.          Stevenage, Herts, SG1 2SD, United Kingdom.
  195.    3.  Software: Practice and Experience
  196.        summary: not always software engineering; good reputation for practice
  197.        publisher: Wiley (see above)
  198.    4.  The Software Quality Journal
  199.        summary: academic research and industrial case studies and experience
  200.        publisher: Chapman & Hall, Journals Promotion Department, North
  201.          America:29 West 35th Street, New York, NY 10001-2291, USA.  Europe:
  202.          2-6 Boundary Row, London SE1 8HN, UK
  203. C. Research Journals
  204. Meant for presenting recent research results.
  205.    1.  Information and Software Technology (IST)
  206.        summary: broad spectrum, much software engineering, software process,
  207.          but also computer science topics.
  208.        publisher: Butterworth-Heineman, Linacre House, Jordan Hill, Oxford, UK
  209.    2.  Transactions on Software Engineering (TSE)
  210.        summary: main software engineering research journal
  211.        publisher: IEEE (see above)
  212.    3.  Transaction on Software Engineering Methodology (TOSEM)
  213.        summary: first issue dated January 1992; not enough track record for an
  214.          opinon yet.
  215.        publisher: Association for Computing Machinery
  216.    4.  Journal of Systems and Software
  217.        summary: meant to be more practitioner-oriented than other research
  218.          journals
  219.        publisher: Elsevier
  220. D. Other magazines
  221.    1.  Software
  222.        summary: "For Managers of Enterprise-Wide Software Resources" primarily
  223.          aimed at Management Information Systems (MIS) world
  224.        publisher: Sentry Publishing Company, Inc, 1900 West Park Drive,
  225.          Westborough, MA 01581, (508) 366-2031
  226.    2.  Testing Techniques Newsletter
  227.        summary: E-mailed on a monthly basis to support the publisher's
  228.          customers and to provide information of general use to the testing
  229.          community.
  230.        publisher: Software Research, Inc.,  625 Third Street,  San Francisco,
  231.          CA 94107-1997; Phone: (415) 957-1441; Toll Free: (800) 942-SOFT; FAX:
  232.          (415) 957-0730; E-MAIL: ttn@soft.com.
  233.  
  234. ------------------------------------------------------------------------
  235. Subject: Other sources of information
  236. Date: 21 Mar 2001
  237.  
  238. Software Quality Engineering has a publication division called Single Source,
  239. Publications, Books, and Information for Software Practitioners and Managers:
  240.  
  241.     Software Quality Engineering -- Single Source
  242.     330 Corporate Way Suite 300
  243.     Orange Park, Florida (FL) 32073
  244.     Tel: 904-278-0707
  245.     Toll Free: 800-423-8378
  246.     Fax: 904-278-4380
  247.     Email: sqeinfo@sqe.com
  248.     Web:    www.sqe.com
  249. They do regular reviews of most of the literature relevant to testing, s-eng,
  250. and management. The books which are deemed useful by the reviewers are
  251. purchased for reselling. Their catalog includes most of the literature that
  252. I've come across on Software Testing.  One of the items in the catalog is a
  253. publication which the company puts together itself, The Testing Tools
  254. Reference Guide, a sort of catalog of tools that have passed certain criteria,
  255. (number of unit sold, at least three verifiable references, etc.) They charge
  256. $145.00 for this guide.  This includes two bi-annual updates. I've found the
  257. guide very useful in tracking down vendors which specialize in CASE and
  258. testing tools, although it seems to be heavily biased towards IBM mainframe
  259. hardware and COBOL programming (shudder!).  Each text is described and
  260. summarized I'm sure SQE would be happy to send catalogs free of charge and
  261. most of the prices seem reasonable.  - Glenn Stowe glenn8@odie.cs.mun.ca
  262.  
  263. ------------------------------------------------------------------------
  264. Subject: General reading for software engineers
  265. Date: 18 Oct 1999
  266. Originally collected by: cml@cs.UMD.EDU (Christopher Lott)
  267. Summary: responses to "what should every software engineering have read?"
  268.  
  269. A. General
  270.    1.  Read about 100 pages of comp.risks
  271.    2.  Frederick P. Brooks, Jr., The Mythical Man-Month, 20th Anniversary
  272.        Edition, Addison Wesley, 1995.
  273.    3.  The anecdotal books of Robert L. Glass, from Computing Trends, P.O.Box
  274.        213, State College, PA 16804, including: "Tales of Computing Folk: Hot
  275.        Dogs and Mixed Nuts", "The Universal Elixir and other Computing Projects
  276.        Which Failed", "The Second Coming: More Computing Projects Which
  277.        Failed", "The Power of Peonage", "Computing Catastrophes", "Computing
  278.        Shakeout", "Software Folklore"
  279.    4.  Richard H. Thayer and Merlin Dorfman (editors), Software Engineering,
  280.        Second Edition, IEEE Computer Society Press, Los Alamitos, CA, 1997.
  281.    5.  Paul W. Oman & Ted G. Lewis, Milestones in Software Evolution, IEEE
  282.        Computing Society, ISBN 0-8186-9033-X.
  283.    6.  J.A. McDermid (editor), Software Engineer's Reference Book, Butterworth-
  284.        Heinemann Ltd., 1991.  ISBN No: 0 750 61040 9.  Focuses on the
  285.        foundations, and subject matter that is not volatile.  The book is
  286.        divided into three major parts: Theory and Mathematics; Methods,
  287.        Techniques, and Technology; Principles of Applications.  For a beginner,
  288.        the first two parts are indispensible.  It does not provide details of
  289.        current research, but points an interested reader to the right sources.
  290. B. Programming in the large
  291.    1.  Grady Booch, Software Engineering with Ada, second edition,
  292.        Benjamin/Cummings, 1987
  293.    2.  Bertrand Meyer.  Object-oriented software construction, Second Edition.
  294.        Prentice-Hall, 1997.  Detailed information available at
  295.        http://www.eiffel.com/doc/oosc.html.
  296.    3.  David L. Parnas, On the Criteria to be Used in Decomposing Systems into
  297.        Modules, Communications of the ACM 15,2 (December 1972).
  298. C. Programming in the small
  299.    1.  Jon Louis Bentley, Writing Efficient Programs, Prentice-Hall, 1982.
  300.    2.  Jon Bentley, Programming Pearls, Addison-Wesley, 1986.
  301.    3.  Jon Bentley, More Programming Pearls, Addison-Wesley, 1988.
  302.    4.  O.-J. Dahl, E.W. Dijkstra, C.A.R. Hoare, Structured Programming,
  303.        Academic Press, 1972.
  304.    5.  Brian W. Kernighan, and P.J. Plauger, Software Tools, Addison-Wesley,
  305.        1976.
  306.    6.  Brian W. Kernighan & P.J. Plauger, The Elements of Programming Style,
  307.        Second Edition, McGraw-Hill, 1978. ISBN 0-07-034207-5.
  308. D. Mathematical Approaches
  309.    1.  Edsger W. Dijkstra, A Discipline of Programming, Prentice-Hall, 1976.
  310.    2.  E.W.Dijkstra.  Selected writings on computing: a personal perspective.
  311.        Springer Verlag, 1982.
  312.    3.  David Gries (editor), Programming methodology. A collection of articles
  313.        by members of IFIP Working Group 2.3. Springer Verlag, 1978.
  314. E. Other
  315.    1.  Tom Demarco and Timothy Lister, Peopleware : Productive Projects and
  316.        Teams, 2nd Ed.  Paperback 2nd edition (February 1, 1999) Dorset House;
  317.        ISBN: 0932633439
  318.    2.  Daniel P. Freedman and Gerald M. Weinberg, Handbook of Walkthoughs,
  319.        Inspections and Technical Reviews, 3rd edition Dorset House Publishing,
  320.        1990, ISBN 0-932633-19-6.  Originally published by Little, Brown &
  321.        Company, 1982: ISBN 0-316-292826.
  322.    3.  Tom Gilb, Principles of Software Engineering Management, Addison-Wesley,
  323.        1988, ISBN 0-201-19246-2
  324.    4.  Glenford J. Myers, The Art of Software Testing, Wiley, 1979.
  325.    5.  Herb Simon, The Sciences of the Artificial, Second Edition, MIT Press,
  326.        1981
  327.    6.  Gerald M. Weinberg, The Psychology of Computer Programming, Silver
  328.        Anniversary Edition.  ISBN: 0-932633-42-0, Dorset House Publishing, 1998
  329.  
  330. ------------------------------------------------------------------------
  331. Subject: Cost Estimation
  332. Date:  6 Dec 1997
  333.  
  334. 1.  Lawrence Putnam and Ware Myers, "MEASURES FOR EXCELLENCE: Reliable Software
  335.     on Time, Within Budget," Prentice-Hall, 1992, ISBN 0-13-567694-0.
  336.     Suggested in Fall 1995 as the current standard by several correspondents.
  337.     Constrains solutions to those that meet the user's objectives, such as
  338.     cost, schedule, staff available, quality.
  339. 2.  Barry W. Boehm, Software Engineering Economics, Prentice-Hall, 1981.  This
  340.     used to be the standard; it introduced the COCOMO model.
  341.  
  342. ------------------------------------------------------------------------
  343. Subject: Formal Specification
  344. Date:  6 Dec 1997
  345.  
  346. See also the comp.specification.z FAQ.
  347. 1.  J.M.Spivey.  "Understanding Z: a specification language and its formal
  348.     semantics".  Cambridge University Press, 1988.
  349. 2.  David Lightfoot.  "Formal Specification Using Z".  MacMillan, 1991, ISBN
  350.     0-333-54408-0.  A clear introduction to Z and the discrete mathematics that
  351.     underlies it.
  352. 3.  B.Potter, J.Sinclair & D.Till.  "An introduction to formal specification
  353.     and Z".  Prentice Hall International Series in Computer Science, 1991.
  354. 4.  D.Bjorner & C.B.Jones.  "Formal Specification & Software Development",
  355.     Prentice-Hall International Series in Computer Science, 1980.
  356. 5.  N.Gehani & A.D.McGettrick (eds).  "Software Specification Techniques",
  357.     Addison-Wesley Publishing Company, 1986
  358. 6.  I. van Horebeek & J.Lewi.  "Algebraic Specifications in Software
  359.     Engineering", Springer Verlag, 1989.
  360. 7.  J.Bergstra, P.Klint & J.Heering.  "Algebraic Specification", ACM Frontier
  361.     Press Series. The ACM Press in co-operation with Addison-Wesley, 1989.
  362. 8.  J.Wing.  "A specifiers introduction to formal methods", IEEE Computer
  363.     23(9):8-24, 1990.
  364. 9.  Prehn & Soetenel (eds).  "Formal Software Development Methods, VDM'91",
  365.     LNCS 551 and 552, Springer-Verlag.
  366.  
  367. ------------------------------------------------------------------------
  368. Subject: Metrics
  369. Date:  6 Dec 1997
  370.  
  371. A. Metrics - General
  372.  
  373. Thanks especially to Horst Zuse, who sent his extensive bibliography on
  374. metrics.  He has an extensive database with over 500 entries on metrics;
  375. contact ZUSE%DB0TUI11.BITNET@vm.gmd.de.
  376.    1.  David N. Card and Robert L. Glass.  Measuring Software Design Quality
  377.        Prentice Hall, Engewood Cliffs, New Jersey, 1990
  378.    2.  S.D. Conte, H.E. Dunsmore, V.Y. Shen.  Software Engineering Metrics and
  379.        Models.  Benjamin/Cummings Publishing Company, Menlo Park, 1984 ISBN:
  380.        0-8053-2162-4
  381.    3.  Tom DeMarco.  Controlling Software Projects: Management, Measurement and
  382.        Estimation.  Englewood Cliffs, N.J.: Prentice Hall, 1982
  383.    4.  T.Denvir, R.Herman and R.Whitty (Eds.).  Proceedings of the
  384.        International BCS-FACS Workshop: Formal Aspects of Measurement, May 5,
  385.        1991, South Bank Polytechnic, London, UK, Series edited by Professor
  386.        C.J. van Rijsbergen, ISBN 3-540-19788-5.  Springer Publisher, 1992, 259
  387.        pages.
  388.    5.  Reiner Dumke.  Softwareentwicklung nach Ma`s - Sch`atzen - Messen -
  389.        Bewerten, Vieweg Verlag, 1992.
  390.    6.  Lem Ejiogu.  Software Engineering with Formal Metrics.  QED Information
  391.        Sciences, 1991
  392.    7.  N.E. Fenton, (Editor).  Software Metrics: A Rigorous Approach, 1991
  393.        United Kingdom: Chapman & Hall, 2-6 Boundary Row, London SE1 8HN, ISBN
  394.        0-412-40440-0.  United States: Van Nostrand Reinhold, 115 5th Avenue,
  395.        New York NY 10003, ISBN 0-442-31355-1.
  396.    8.  Robert B. Grady and Deborah L. Caswell.  Software Metrics: Establishing
  397.        a Company-Wide Program, Prentice-Hall, 1987, ISBN 0-13-821844-7
  398.    9.  Robert B. Grady.  Practical Software Metrics for Project Management and
  399.        Process Improvement.  Prentice Hall 1992 ISBN 0-13-720384-5
  400.    10. M.H. Halstead.  Elements of Software Science.  New York, Elsevier North-
  401.        Holland, 1977
  402.    11. S. Henry, D. Kafura, "Software Structure Metrics Based on Information
  403.        Flow", IEEE Transactions on Software Engineering, Vol.SE-7, No.5,
  404.        September 1981.
  405.    12. IEEE.  Standard Dictionary of Measures to Produce Reliable Software.
  406.        The Institute of Electrical and Electronics Engineers, Inc.  345 East
  407.        47th Street, New York.  IEEE Standards Board, 1989
  408.    13. IEEE.  Guide for the Use of Standard Dictionary of Measures to Produce
  409.        Reliable Software.  The Institute of Electrical and Electronics
  410.        Engineers, Inc 345 East 47th Street, New York.  IEEE Standard Board,
  411.        Corrected Edition, October 23, 1989
  412.    14. T.J. McCabe, A Complexity Measure, IEEE Transactions on Software
  413.        Engineering, VOL. SE-2, NO. 4, Dec. 1976.
  414.    15. Alan Perlis, Frederick Sayward, Mary Shaw.  Software Metrics: An
  415.        Analysis and Evaluation.  The MIT Press, 1981
  416.    16. V.Y. Shen, S.D. Conte, H.E. Dunsmore, Software Science Revisited: A
  417.        Critical Analysis of the Theory and Its Empirical Support, IEEE
  418.        Transactions on  Software Engineering, Vol. SE-9, No. 2, March 1983.
  419.        Abstract: a critical evaluation of Halstead's software science metric.
  420.    17. Martin Sheppard, Software Engineering Metrics, McGraw-Hill Book Company
  421.        (UK) Limited, Shoppenhangers Road, Maidenhead, Berkshire, SL6 2QL.  ISBN
  422.        0-07-707410-6 (UK).  Contains 24 selected papers; 1992.  Tel: +44 (0)698
  423.        23431/2 Fax: +44 (0)698 770224
  424.    18. Horst Zuse, Software Complexity: Measures and Methods, de Gruyer (200
  425.        Saw Mill River Road, Hawthorne, NY 10532 - 914/747-0110) 1991
  426. B. Metrics for object-oriented systems
  427.    1.  Morris Kenneth L.  Metrics for Object-Oriented Software Development
  428.        Environments (master's thesis). 1989, MIT.
  429.    2.  Rocacher, Daniel: Metrics Definitions for Smalltalk.  Project ESPRIT
  430.        1257, MUSE WP9A, 1988.
  431.    3.  Rocacher, Daniel: Smalltalk Measure Analysis Manual.  Project ESPRIT
  432.        1257, MUSE WP9A, 1989.
  433.    4.  Lake, Al: A Software Complexity Metric for C++.  Annual Oregon Workshop
  434.        on Software Metrics, March 22-24, 1992, Silver Falls, Oregon, USA.
  435.    5.  Bieman, J.M.: Deriving Measures of Software Reuse in Object Oriented
  436.        Systems.  Technical Report #CS91-112, July 1991, Colorado State
  437.        Universty, Fort Collins/ Colorado, USA.
  438.  
  439. ------------------------------------------------------------------------
  440. Subject: Object-Oriented Analysis and Design
  441. Date:  6 Dec 1997
  442. Originally collected by: haim@taichi.uucp (24122-kilov)
  443.  
  444. 1.  Bertrand Meyer.  Object-oriented software construction, Second Edition.
  445.     Prentice-Hall, 1997.  For the somewhat advanced - perhaps, with some
  446.     programming maturity.  Detailed information available at
  447.     http://www.eiffel.com/doc/oosc.html.
  448. 2.  B. Henderson-Sellers.  A book of object-oriented knowledge. Prentice-Hall,
  449.     1992.  This has quite a few viewgraphs in it!
  450. 3.  Grady Booch.  Object-oriented design with applications.  Addison-Wesley,
  451.     1991.
  452. 4.  Ivar Jacobson Object-Oriented Software Engineering.  Addison-Wesley, 1992.
  453.     This book gives a complete look at Object-orientation from requirement-
  454.     analysis to last phase in design and implementation.
  455.  
  456. ------------------------------------------------------------------------
  457. Subject: Programming Style
  458. Date:  6 Dec 1997
  459. Originally collected by: oman@cs.uidaho.edu (Paul W. Oman)
  460.  
  461. 1.  N. Anand (1988) "Clarify Function!"  ACM SigPLAN Notices, 23(6), 69-79.
  462.     Advocates the use of mnemonic names for entities in a system.  Rules are
  463.     presented for naming procedures, variable, pointers, etc.
  464. 2.  S. Henry (1988) "A Technique for Hiding Proprietary Details While Providing
  465.     Sufficient Information for Researchers; or, do you Recognize this Well-
  466.     known Algorithm?," Journal of Systems and Software, 8(1), 3-11.  Suggests
  467.     encryption of variable names as part of a technique for encoding
  468.     algorithms, while still providing sufficient information to researchers.
  469. 3.  R. Brooks (1980) "Studying Programmer Behavior Experimentally: The Problems
  470.     of Proper Methodology," Communications of the ACM, 23(4), 207-213.
  471.     Discusses issues and tradeoffs in proper control of experiments involving
  472.     computer programmers.
  473. 4.  E. Thomas & P. Oman "A Bibliography of Programming Style Literature," ACM
  474.     SIGPLAN Notices, Vol. 25(2), Feb. 1990, pp.  7-16.
  475.  
  476. ------------------------------------------------------------------------
  477. Subject: Real-Time Systems
  478. Date:  6 Dec 1997
  479. Originally collected by: jaws@sj.ate.slb.com (John Willmore)
  480.  
  481. 1.  Derek J. Hatley and Imtiaz A. Pirbhai.  Strategies for Real-Time System
  482.     Specification Dorset House, 1987
  483. 2.  Paul Ward and Stephen Mellor.  Structured Development for Real-Time Systems
  484.     Yourdon Press, 1985
  485. 3.  Bran Selic, Garth Gullekson and Paul Ward.  Real-Time Object-Oriented
  486.     Modeling, Wiley, 1994 (1-800-CALL-WILEY), ISBN 0471-59917-4.  Supported by
  487.     the ObjecTime CASE tool.
  488.  
  489. ------------------------------------------------------------------------
  490. Subject: Requirements Analysis
  491. Date: 12 Apr 1999
  492.  
  493. A. Requirements Analysis - General
  494.    1.  Michael Jackson.  Software Requirements & Specifications: A Lexicon of
  495.        Practice, Principles, and Prejudices.  Addison-Wesley, 1995.  Very
  496.        highly praised by several of my contacts - e.g.  "has the highest ideas-
  497.        to-pages ratio I've ever seen."
  498.    2.  Special issue on requirements gathering, Communications of the ACM,
  499.        Volume 38, #2, May 1995.
  500.    3.  Al Davis, Software Requirements: Objects, Functions, & States.
  501.        Prentice-Hall, 1993.  A revision of #2 (below).
  502.    4.  Al Davis, Software Requirements: Analysis and specification.
  503.        Prentice/Hall, 1990.  Has some treatment of all of the popular
  504.        requirements analysis and specification methods including OOA,
  505.        Structured Analysis, SREM, FSM, but not the "trendy" stuff (Information
  506.        Engineering, JAD).
  507.    5.  Donald C. Gause and Gerald M. Weinberg, Exploring Requirements: Quality
  508.        before design.  Dorset House Publishing, 353 West 12th Street, New York,
  509.        NY 10014
  510.    6.  Richard H. Thayer and Merlin Dorfman (editors), Software Requirements
  511.        Engineering, Second Edition, IEEE Computer Society Press, Los Alamitos,
  512.        CA, 1997.
  513.    7.  Benjamin L. Kovitz.  Practical Software Requirements: A Manual of
  514.        Content & Style.  Manning Publications, 1998.
  515. B. Collaborative Requirements Analysis
  516. (thanks to Annie I. Anton, anton@cc.gatech.edu).
  517.    1.  Palmer, J.D., Aiken, P. and Fields, N.A.  "A Computer Supported
  518.        Cooperative Work Environment for Requirements Engineering and Analysis",
  519.        Proceedings of the Requirements Engineering and Analysis Workshop,
  520.        Software Engineering Institute, March 12-14, 1991.
  521.    2.  Palmer, J.D. and Aiken, P.H.  "Utilizing Interactive Multimedia to
  522.        Support Knowledge-based Development of Software Requirements",
  523.        Proceedings of the 5th Annual RADC Knowledge-Based Software Assistant
  524.        Conference, Syracuse, NY, September 24-28, 1990.
  525.    3.  Marca, D.  "Specifying Groupware Requirements From Direct Experience",
  526.        Proc 6th International Workshop On Software Specification And Design,
  527.        October 1991
  528.    4.  Marca, D.  "Augmenting SADT To Develop Computer-Supported Cooperative
  529.        Work", Proceedings of the International Conference on Software
  530.        Engineering; May 1991
  531.    5.  Marca, D.  "Experiences in Building Meeting Support Software",
  532.        Proceedings of the 1st Groupware Technology Workshop; August 1989
  533.    6.  Marca, D.  "Specifying Coordinators: Guidelines for Groupware
  534.        Developers", Proceedings of the 5th International Workshop on Software
  535.        Specification and Design; May 1989
  536.  
  537. ------------------------------------------------------------------------
  538. Subject: Software Process
  539. Date: 30 Oct 1996
  540. Originally collected by: cml@cs.umd.edu (Christopher Lott)
  541.  
  542. 1.  Watts S. Humphrey.  Managing the Software Process.  Addison-Wesley
  543.     Publishing Co., Reading, Massachusetts, 1989; Chapters 13--15, 18.
  544. 2.  Watts S. Humphrey.  A Discipline for Software Engineering.  Addison Wesley,
  545.     SEI Series in Software Engineering, 1995, ISBN 0-201-54610-8.  Presents a
  546.     method for applying project management techniques to personal methods of
  547.     software engineering.
  548. 3.  Bill Curtis, Marc I. Kellner and Jim Over.  "Process Modeling,"
  549.     Communications of the ACM, Sept 92, Vol 35, No 9, 75-90.
  550. 4.  Victor R. Basili.  "Iterative Enhancement:  A Practical Technique for
  551.     Software Development".  IEEE Transactions on Software Engineering. v.~SE-1,
  552.     n.~4, December 1975, pp.~390--396.
  553. 5.  Victor R. Basili and H. Dieter Rombach.  "The TAME Project:  Towards
  554.     Improvement-Oriented Software Environments", IEEE Transactions on Software
  555.     Engineering, v. SE-14, n. 6, June 1988, pp.~758--773.
  556. 6.  Victor R. Basili, "Software Development:  A Paradigm for the Future",
  557.     Proceedings of the Thirteenth Annual International Computer Science and
  558.     Applications Conference, Orlando, Florida, September 1989, pp.~471--485.
  559. 7.  Barry W. Boehm.  "A Spiral Model of Software Development and Enhancement",
  560.     IEEE Computer, v.~21, n.~5, May 1988, pp.~61--72.
  561. 8.  Frank DeRemer and Hans H. Kron.  "Programming-in-the-Large Versus
  562.     Programming-in-the-Small", IEEE Transactions on Software Engineering,
  563.     v.~SE-2, n.~2, June 1976, pp.~80--86.
  564. 9.  M. M. Lehman.  "Process Models, Process Programs, Programming Support",
  565.     Proceedings of the Ninth International Conference on Software Engineering,
  566.     Monterey, CA, March 1987, pp.~14--16.
  567. 10. Leon Osterweil.  "Software Processes are Software Too", Proceedings of the
  568.     Ninth International Conference on Software Engineering, Monterey, CA, March
  569.     1987, pp.~2--13.
  570. 11. Winston W. Royce.  "Managing the Development of Large Software Systems:
  571.     Concepts and Techniques", 1970 WESCON Technical Papers, v.~14, Western
  572.     Electronic Show and Convention, Los Angeles, Aug. 25-28, 1970; Los Angeles:
  573.     WESCON, 1970, pp.~A/1-1 -- A/1-9; Reprinted in Proceedings of the Ninth
  574.     International Conference on Software Engineering, Pittsburgh, PA, USA, ACM
  575.     Press, 1989, pp.~328--338.
  576. 12. Peter H. Feiler and Watts S. Humphrey.  "Software Process Development and
  577.     Enactment:  Concepts and Definitions", Software Engineering Institute,
  578.     Carnegie Mellon University, Pittsburgh, PA, 1991.
  579. 13. Watts S. Humphrey.  "Session Summary:  Review of the State-of-the-Art",
  580.     Proceedings of the Fifth International Software Process Workshop,
  581.     Kennebunkport, Maine, USA, 10-13 October 1989, IEEE Computer Society Press,
  582.     Los Alamitos, CA, 1990.
  583. 14. Gail E. Kaiser.  "Rule-Based Modeling of the Software Development Process",
  584.     Proceedings of the 4th International Software Process Workshop,
  585.     Moretonhampstead, Devon, UK, 11-13 May 1988, ACM Press, Baltimore, MD,
  586.     1989, pp.~84--86.
  587. 15. Takuya Katayama.  "A Hierarchical and Functional Software Process
  588.     Description and its Enaction", Proceedings of the Ninth International
  589.     Conference on Software Engineering, Pittsburgh, PA, USA, ACM Press, 1989,
  590.     pp.~343--352.
  591. 16. Marc I. Kellner and H. Dieter Rombach.  "Comparisons of Software Process
  592.     Descriptions", Proceedings of the Sixth International Software Process
  593.     Workshop, Hakodate, Hokkaido, Japan, 29-31 October 1990, IEEE Computer
  594.     Society Press, 1991.
  595. 17. Jayashree Ramanathan and Soumitra Sarkar.  "Providing Customized Assistance
  596.     for Software Lifecycle Approaches", IEEE Transactions on Software
  597.     Engineering, v.~14, n.~6, June 1988, pp.~749--757.
  598. 18. H. Dieter Rombach.  "An Experimental Process Modeling Language: Lessons
  599.     Learned from Modeling a Maintenance Environment", Proceedings of the
  600.     Conference on Software Maintenance - 1989, IEEE, October 16-19, 1989.
  601. 19. H. Dieter Rombach.  "MVP--L:  A Language for Process Modeling
  602.     In--the--Large", University of Maryland Institute for Advanced Computer
  603.     Studies Technical Report UMIACS--TR--91--96, CS--TR--2709, Department of
  604.     Computer Science, University of Maryland, College Park, MD, 20742.
  605. 20. Stanley M. Sutton, Jr.  "APPL/A:  A Prototpye Language for Software Process
  606.     Programming", Department of Computer Science Report CU-CS-448-89,
  607.     University of Colorado, Boulder, CO, 1989.
  608.  
  609. ------------------------------------------------------------------------
  610. Subject: Software Testing
  611. Date:  6 Dec 1997
  612.  
  613. The original request that prompted the posting of this information asked for
  614. recent work, not buried in a Software Engineering tome.
  615. 1.  Boris Beizer, Software Testing Techniques, Van Nostrand Reinhold, 1990 (2nd
  616.     edition) ISBN 0-442-20672-0.  503 pages, $43.  Has 37-page annotated
  617.     bibliography of references.
  618. 2.  Cheatham and Mellinger, Testing Object Oriented Software Systems,
  619.     Proceedings of the 1990 ACM SCS Conference
  620. 3.  William C. Hetzel, The Complete Guide to Software Testing, Second edition,
  621.     QED Information Services INC, 1988.  ISBN 0-89435-242-3
  622. 4.  Testing Techniques Newsletter (see periodicals)
  623.  
  624. ------------------------------------------------------------------------
  625. Subject: User Interfaces
  626. Date:  2 May 2002
  627.  
  628. See Gary Perlman's suggested readings at http://hcibib.org/readings.html; there
  629. is a huge Human-Computer Interaction bibliography at http://hcibib.org.
  630. Contact address: director@hcibib.org.
  631. -- 
  632. "Yo' ideas need to be thinked befo' they are say'd" - Ian Lamb, age 3.5
  633. http://www.cs.queensu.ca/~dalamb/   qucis->cs to reply (it's a long story...)
  634.