Bibliography
Abbot83 Abbott, R. 1983. Program Design by Informal English Descriptions . Communications of the ACM vol. 26(11).AIS77 Alexander, C., Ishikawa, S. , and Silverstein, M. 1977. A Pattern LanguageTowns-Building-Construction . Oxford University Press.Ambler00 Ambler, S. 2000. The Unified ProcessElaboration Phase . Lawrence, KA.: R&D Books.Ambler00a Ambler, S., Constantine, L. 2000. Enterprise-Ready Object IDs . The Unified ProcessConstruction Phase . Lawrence, KA.: R&D BooksAmbler00b Ambler, S. 2000. Whitepaper: The Design of a Robust Persistence Layer For Relational Databases . www.ambysoft.com.Ambler02 Ambler, S. 2002. Agile Modeling , John Wiley & Sons.BDSSS00 Beedle, M., Devos, M., Sharon, Y., Schwaber, K., and Sutherland, J. 2000. SCRUM: A Pattern Language for Hyperproductive Software Development . Pattern Languages of Program Design vol. 4. Reading, MA.: Addison-Wesley.BC87 Beck, K., and Cunningham, W. 1987. Using Pattern Languages for Object-Oriented Programs . Tektronix Technical Report No. CR-87-43.BC89 Beck, K., and Cunningham, W. 1989. A Laboratory for Object-oriented Thinking . Proceedings of OOPSLA 89 . SIGPLAN Notices , Vol. 24, No. 10.BCK98 Bass, L., Clements, P., and Kazman, R. 1998. Software Architecture in Practice . Reading, MA.: Addison-Wesley.Beck94 Beck, K. 1994. Patterns and Software Development . Dr. Dobbs Journal . Feb 1994.Beck00 Beck, K. 2000. Extreme Programming ExplainedEmbrace Change . Reading, MA.: Addison-Wesley.Bell04 Bell, A. 2004. Death by UML Fever . ACM Queue . March 2004.BF00 Beck, K., Fowler, M. , 2000. Planning Extreme Programming . Reading, MA.: Addison-Wesley.BJ78 Bjørner, D., and Jones, C. editors. 1978. The Vienna Development Method: The Meta-Language , Lecture Notes in Computer Science . vol. 61. Springer-Verlag.BJR97 Booch, G., Jacobson, I., and Rumbaugh, J. 1997. The UML specification documents . Santa Clara, CA.: Rational Software Corp. See documents at www.rational.com.BMRSS96 Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., and Stal, M. 1996. Pattern-Oriented Software Architecture: A System of Patterns . West Sussex, England: Wiley.Boehm88 Boehm. B. 1988. A Spiral Model of Software Development and Enhancement . IEEE Computer . May 1988.Boehm00+ Boehm, B. , et al. 2000. Software Cost Estimation with COCOMO II . Englewood Cliffs, NJ.: Prentice-Hall.Booch82 Booch, G. 1982. Object-Oriented Design . Ada Letters vol. 1(3).Booch94 Booch, G. 1994. Object-Oriented Analysis and Design . Redwood City, CA.: Benjamin/Cummings.Booch96 Booch, G. 1996. Object Solutions: Managing the Object-Oriented Project . Menlo Park, CA.: Addison-Wesley.BP88 Boehm, B., and Papaccio, P. 1988. Understanding and Controlling Software Costs . IEEE Transactions on Software Engineering . Oct 1988.BRJ99 Booch, G., Rumbaugh, J, and Jacobson, I. 1999. The Unified Modeling Language User Guide . Reading, MA.: Addison-Wesley.Brooks75 Brooks, F. 1975. The Mythical Man-Month . Reading, MA.: Addison-Wesley.Brown01 Brown, K., 2001. The Convert Exception pattern is found online at the Portland Pattern Reposity, http://c2.com.BW95 Brown, K., and Whitenack, B. 1995. Crossing Chasms, A Pattern Language for Object-RDBMS Integration , White Paper, Knowledge Systems Corp.BW96 Brown, K., and Whitenack, B. 1996. Crossing Chasms . Pattern Languages of Program Design vol. 2. Reading, MA.: Addison-Wesley.CD94 Cook, S., and Daniels, J. 1994. Designing Object Systems . Englewood Cliffs, NJ.: Prentice-Hall.CDL99 Coad, P., De Luca, J., Lefebvre, E. 1999. Java Modeling in Color with UML . Englewood Cliffs, NJ.: Prentice-Hall.CL99 Constantine, L, and Lockwood, L. 1999. Software for Use: A Practical Guide to the Models and Methods of Usage-Centered Design . Reading, MA.: Addison-Wesley.CMS74 Constantine, L., Myers, G., and Stevens, W. 1974. Structured Design . IBM Systems Journal , vol. 13 (No. 2, 1974),pp. 115-139.Coad92 Coad, P. 1992. Object-oriented Patterns . Communications of the ACM , Sept. 1992.Coad95 Coad, P. 1995. Object Models: Stategies, Patterns and Applications . Englewood Cliffs, NJ.: Prentice-Hall.Cockburn92 Cockburn, A. 1992. Using Natural Language as a Metaphoric Basis for Object-Oriented Modeling and Programming . IBM Technical Report TR-36.0002 , 1992.Cockburn97 Cockburn, A. 1997. Structuring Use Cases with Goals . Journal of Object-Oriented Programming , Sep-Oct, and Nov-Dec. SIGS Publications.Cockburn01 Cockburn, A. 2001. Writing Effective Use Cases . Reading, MA.: Addison-Wesley.Coleman+94 Coleman, D. , et al. 1994. Object-Oriented Development: The Fusion Method . Englewood Cliffs, NJ.: Prentice-Hall.Constantine68 Constantine. L. 1968. Segmentation and Design Strategies for Modular Programming . In Barnett and Constantine (eds.), Modular Programming: Proceedings of a National Symposium . Cambridge, MA.: Information & Systems Press.Constantine94 Constantine, L. 1994. Essentially Speaking . Software Development May. CMP Media.Conway58 Conway, M. 1958. Proposal for a Universal Computer-Oriented Language . Communications of the ACM . 5-8 Volume 1, Number 10, October.Coplien95 Coplien, J. 1995. The History of Patterns . See http://c2.com/cgi/wiki?HistoryOfPatterns.Coplien95a Coplien, J. 1995. A Generative Development-Process Pattern Language . Pattern Languages of Program Design vol. 1. Reading, MA.: Addison-Wesley.CS95 Coplien, J., and Schmidt, D., eds. 1995. Pattern Languages of Program Design vol. 1. Reading, MA.: Addison-Wesley.Cunningham96 Cunningham, W. 1996. EPISODES: A Pattern Language of Competitive Development . Pattern Languages of Program Design vol. 2. Reading, MA.: Addison-Wesley.Cutter97 Cutter Group. 1997. Report: The Corporate Use of Object Technology .CV65 Corbato, F., and Vyssotsky, V. 1965. Introduction and overview of the Multics system . AFIPS Conference Proceedings 27 ,185-196.Dijkstra68 Dijkstra, E. 1968. The Structure of the THE-Multiprogramming System . Communications of the ACM , 11(5).Eck95 Eck, D. 1995. The Most Complex Machine . A K Paters Ltd.Fowler96 Fowler, M. 1996. Analysis Patterns: Reusable Object Models . Reading, MA.: Addison-Wesley.Fowler99 Fowler, M. 1999. Refactoring: Improving the Design of Existing Code . Reading, MA.: Addison-Wesley.Fowler00 Fowler, M . 2000. Put Your Process on a Diet . Software Development . December. CMP Media.Fowler01 Fowler, M. 2001. Draft patterns on object-relational persistence services . www.martinfowler.com.Fowler02 Fowler, M. 2002. Patterns of Enterprise Application Architecture . Reading, MA.: Addison-Wesley.Fowler03 Fowler, M. 2003. UML Distilled , 3rd edition. Reading, MA.: Addison-Wesley.Gartner95 Schulte, R. , 1995. Three-Tier Computing Architectures and Beyond . Published Report Note R-401-134. Gartner Group.Gemstone00 Gemstone Corp., 2000. A set of architectural patterns at www.javasuccess.com.GHJV95 Gamma, E., Helm, R., Johnson, R., and Vlissides, J. 1995. Design Patterns . Reading, MA.: Addison-Wesley.Gilb88 Gilb, T. 1988. Principles of Software Engineering Management . Reading, MA.: Addison-Wesley.GK00 Guiney, E., and Kulak, D. 2000. Use Cases: Requirements in Context . Reading, MA.: Addison-Wesley.GK76 Goldberg, A., and Kay, A. 1976. Smalltalk-72 Instruction Manual . Xerox Palo Alto Research Center.GL00 Guthrie, R., and Larman, C. 2000. Java 2 Performance and Idiom Guide . Englewood Cliffs, NJ.: Prentice-Hall.Grady92 Grady, R. 1992. Practical Software Metrics for Project Management and Process Improvement . Englewood Cliffs, NJ.: Prentice-Hall.Groso00 Grosso, W. 2000. The Name The Problem Not The Thrower exceptions pattern is found online at the Portland Pattern Reposity, http://c2.com.GW89 Gause, D., and Weinberg, G. 1989. Exploring Requirements . NY, NY.: Dorset House.Harrison98 Harrison, N. 1998. Patterns for Logging Diagnostic Messages . Pattern Languages of Program Design vol. 3. Reading, MA.: Addison-Wesley.Hay96 Hay, D. 1996. Data Model Patterns: Conventions of Thought . NY, NY.: Dorset House.Highsmith00 Highsmith, J. 2000. Adaptive Software Development: A Collaborative Approach to Managing Complex Systems . NY, NY.: Dorset House.Hohman03 Hohman, L. 2003. Beyond Software Architecture: Creating and Sustaining Winning Solutions . Reading, MA.: Addison-Wesley.HNS00 Hofmeister, C., Nord, R., and Soni, D. 2000. Applied Software Architecture . Reading, MA.: Addison-Wesley.Jackson95 Jackson, M. 1995. Software Requirements and Specification . NY, NY.: ACM Press.Jacobson92 Jacobson, I. , et al . 1992. Object-Oriented Software Engineering: A Use Case Driven Approach . Reading, MA.: Addison-Wesley.JAH00 Jeffries, R., Anderson, A., Hendrickson, C. 2000. Extreme Programming Installed . Reading, MA.: Addison-Wesley.JBR99 Jacobson, I., Booch, G., and Rumbaugh, J. 1999. The Unified Software Development Process . Reading, MA.: Addison-Wesley.Johnson02 Johnson, J. 2002. ROIIt's Your Job, XP 2002 , Sardinia, Italy.Jones97 Jones, C. , 1997. Applied Software Measurement . NY, NY.: McGraw-Hill.Jones98 Jones, C. 1998. Estimating Software Costs . NY, NY.: McGraw-Hill.Kay68 Kay, A. 1968. FLEX, a flexible extensible language . M.Sc. thesis, Electrical Engineering, University of Utah. May. (Univ. Microfilms).KL01 Kruchten, P, and Larman, C. How to Fail with the Rational Unified Process: 7 Steps to Pain and Suffering . (in German) Objekt Spektrum . June 2001.Kovitz99 Kovitz, B. 1999. Practical Software Requirements . Greenwich, CT.: Manning.Kruchten00 Kruchten, P. 2000. The Rational Unified ProcessAn Introduction , 2nd edition. Reading, MA.: Addison-Wesley.Kruchten95 Kruchten, P. 1995. The 4+1 View Model of Architecture . IEEE Software 12(6).Lakos96 Lakos, J. 1996. Large-Scale C++ Software Design . Reading, MA.: Addison-Wesley.Larman03 Larman, C. 2003. Agile and Iterative Development: A Manager's Guide . Reading, MA.: Addison-Wesley.Larman04 Larman, C. 2004. What UML Is and Isn't . JavaPro Magazine . March 2004.LB03 Larman, C., and Basili, V. Iterative and Incremental Development: A Brief History , IEEE Computer , June 2003.Lieberherr88 Lieberherr, K., Holland, I, and Riel, A. 1988. Object-Oriented Programming: An Objective Sense of Style . OOPSLA 88 Conference Proceedings . NY, NY.: ACM SIGPLAN.Liskov88 Liskov, B. 1988. Data Abstraction and Hierarchy , SIGPLAN Notices , 23,5 (May, 1988).LW00 Leffingwell, D., and Widrig, D. 2000. Managing Software Requirements: A Unified Approach . Reading, MA.: Addison-Wesley.MacCormack01 MacCormack, A. 2001. Product-Development Practices That Work . MIT Sloan Management Review . Volume 42, Number 2.Martin95 Martin, R. 1995. Designing Object-Oriented C++ Applications Using the Booch Method . Englewood Cliffs, NJ.: Prentice-Hall.McConnell96 McConnell, S. 1996. Rapid Development . Redmond, WA.: Microsoft Press.Meyer88 Meyer, B. 1988. Object-Oriented Software Construction , first edition. Englewood Cliffs, NJ.: Prentice-Hall.MO95 Martin, J., and Odell, J. 1995. Object-Oriented Methods: A Foundation . Englewood Cliffs, NJ.: Prentice-Hall.Moreno97 Moreno, A. M. Object Oriented Analysis from Textual Specifications . Proceedings of the 9th International Conference on Software Engineering and Knowledge Engineering , Madrid, June 17-20 (1997).MP84 McMenamin, S., and Palmer, J. 1984. Essential Systems Analysis . Englewood Cliffs, NJ.: Prentice-Hall.MW89 1989. The Merriam-Webster Dictionary . Springfield, MA.: Merriam-Webster.Nixon90 Nixon, R. 1990. Six Crises . NY, NY.: Touchstone Press.OMG03a Object Management Group, 2003. UML 2.0 Infrastructure Specification . www.omg.org.OMG03b Object Management Group, 2003. UML 2.0 Superstructure Specification . www.omg.org.Parkinson58 Parkinson, N. 1958. Parkinson's Law: The Pursuit of Progress , London, John Murray.Parnas72 Parnas, D. 1972. On the Criteria To Be Used in Decomposing Systems Into Modules , Communications of the ACM , Vol. 5, No. 12, December 1972. ACM.PM92 Putnam, L., and Myers, W. 1992. Measures for Excellence: Reliable Software on Time, Within Budget . Yourdon Press.Pree95 Pree, W. 1995. Design Patterns for Object-Oriented Software Development . Reading, MA.: Addison-Wesley.Renzel97 Renzel, K. 1997. Error Handling for Business Information Systems: A Pattern Language . Online at http://www.objectarchitects.de/arcus/cookbook/exhandling/.Rising00 Rising, L. 2000. Pattern Almanac 2000 . Reading, MA.: Addison-Wesley.RJB99 Rumbaugh, J., Jacobson, I., and Booch, G. 1999. The Unified Modeling Language Reference Manual . Reading, MA.: Addison-Wesley.RJB04 Rumbaugh, J., Jacobson, I., and Booch, G. 2004. The Unified Modeling Language Reference Manual, 2e . Reading, MA.: Addison-Wesley.Ross97 Ross, R. 1997. The Business Rule Book: Classifying, Defining and Modeling Rules . Business Rule Solutions Inc.Royce70 Royce, W. 1970. Managing the Development of Large Software Systems . Proceedings of IEEE WESCON . Aug 1970.Rumbaugh91 Rumbaugh, J. , et al . 1991. Object-Oriented Modelling and Design . Englewood Cliffs, NJ.: Prentice-Hall.RUP The Rational Unified Process Product . The browser-based online documentation for the RUP, sold by IBM, and previously by Rational Corp.Rumbaugh97 Rumbaugh, J. 1997. Models Through the Development Process . Journal of Object-Oriented Programming May 1997. NY, NY: SIGS Publications.Shaw96 Shaw, M. 1996. Some Patterns for Software Architectures . Pattern Languages of Program Design vol. 2. Reading, MA.: Addison-Wesley.Standish94 Jim Johnson . 1994. Chaos: Charting the Seas of Information Technology . Published Report. The Standish GroupSW98 Schneider, G., and Winters, J. 1998. Applying Use Cases: A Practical Guide . Reading, MA.: Addison-Wesley.Thomas01 Thomas, M. 2001. IT Projects Sink or Swim . British Computer Society Review .TK78 Tsichiritzis, D., and Klug, A. The ANSI/X3/SPARC DBMS framework: Report of the study group on database management systems . Information Systems , 3 1978.Tufte92 Tufte, E. 1992. The Visual Display of Quantitative Information . Graphics Press.VCK96 Vlissides, J. , et al. 1996. Patterns Languages of Program Design vol. 2. Reading, MA.: Addison-Wesley.Wirfs-Brock93 Wirfs-Brock, R. 1993. Designing Scenarios: Making the Case for a Use Case Framework . Smalltalk Report Nov-Dec 1993. NY, NY: SIGS Publications.WK99 Warmer, J., and Kleppe, A. 1999. The Object Constraint Language: Precise Modeling With UML . Reading, MA.: Addison-Wesley.WM02 Wirfs-Brock, R., and McKean, A. 2002. Object Design: Roles, Responsibilities, and Collaborations . Reading, MA.: Addison-Wesley.WWW90 Wirfs-Brock, R., Wilkerson, B., and Wiener, L. 1990. Designing Object-Oriented Software . Englewood Cliffs, NJ.: Prentice-Hall.