Файл: Руководство по стилю программирования и конструированию по.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 30.11.2023
Просмотров: 742
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
856
1 ... 96 97 98 99 100 101 102 103 104
Библиография
Newcomer, Joseph M. 2000. «Optimization: Your Worst Enemy,» May 2000,
www.flounder. com/
optimization.htm.
Norcio, A. F. 1982. «Indentation, Documentation and Programmer Comprehension.»
Proceedings:
Human Factors in Computer Systems, March 15–17, 1982, Gaithersburg, MD: 118–20.
Norman, Donald A. 1988.
The Psychology of Everyday Things. New York, NY: Basic Books. (Also published in paperback as
The Design of Everyday Things. New York, NY: Doubleday, 1990.)
Oman, Paul and Shari Lawrence Pfleeger, eds. 1996.
Applying Software Metrics. Los Alamitos, CA:
IEEE Computer Society Press.
Oman, Paul W., and Curtis R. Cook. 1990a. «The Book Paradigm for Improved Maintenance.»
IEEE
Software, January, 39–45.
Oman, Paul W., and Curtis R. Cook. 1990b. «Typographic Style Is More Than Cosmetic.»
Commu-
nications of the ACM 33, no. 5 (May): 506–20.
Ostrand, Thomas J., and Elaine J. Weyuker. 1984. «Collecting and Categorizing Software Error Data in an Industrial Environment.»
Journal of Systems and Software 4, no. 4 (November): 289–300.
Page-Jones, Meilir. 2000.
Fundamentals of Object-Oriented Design in UML. Boston, MA: Addison-
Wesley.
Page-Jones, Meilir. 1988.
The Practical Guide to Structured Systems Design. Englewood Cliffs, NJ:
Yourdon Press.
Parikh, G., and N. Zvegintzov, eds. 1983.
Tutorial on Software Maintenance. Los Alamitos, CA: IEEE
Computer Society Press.
Parikh, Girish. 1986.
Handbook of Software Maintenance. New York, NY: John Wiley & Sons.
Parnas, David L. 1972. «On the Criteria to Be Used in Decomposing Systems into Modules.»
Communications of the ACM 5, no. 12 (December): 1053–58.
Parnas, David L. 1976. «On the Design and Development of Program Families.»
IEEE Transactions
on Software Engineering SE-2, 1 (March): 1–9.
Parnas, David L. 1979. «Designing Software for Ease of Extension and Contraction.»
IEEE Trans-
actions on Software Engineering SE-5, no. 2 (March): 128–38.
Parnas, David L. 1999. ACM Fellow Profile: David Lorge Parnas,»
ACM Software Engineering Notes,
May 1999, 10–14.
Parnas, David L., and Paul C. Clements. 1986. «A Rational Design Process: How and Why to Fake
It.»
IEEE Transactions on Software Engineering SE-12, no. 2 (February): 251–57.
Parnas, David L., Paul C. Clements, and D. M. Weiss. 1985. «The Modular Structure of Complex
Systems.»
IEEE Transactions on Software Engineering SE-11, no. 3 (March): 259–66.
Perrott, Pamela. 2004. Private communication.
Peters, L. J., and L. L. Tripp. 1976. «Is Software Design Wicked»
Datamation, Vol. 22, No. 5 (May
1976), 127–136.
Peters, Lawrence J. 1981.
Handbook of Software Design: Methods and Techniques. New York, NY:
Yourdon Press.
Peters, Lawrence J., and Leonard L. Tripp. 1977. «Comparing Software Design Methodologies.»
Datamation, November, 89– 94.
Peters, Tom. 1987. Thriving on Chaos: Handbook for a Management Revolution. New York, NY:
Knopf.
Petroski, Henry. 1994.
Design Paradigms: Case Histories of Error and Judgment in Engineering.
Cambridge, U.K.: Cambridge University Press.
Pietrasanta, Alfred M. 1990. «Alfred M. Pietrasanta on Improving the Software Process.»
Software
Engineering: Tools, Techniques, Practices 1, no. 1 (May/ June): 29–34.
Библиография
857
Pietrasanta, Alfred M. 1991a. «A Strategy for Software Process Improvement.»
Ninth Annual Pacific
Northwest Software Quality Conference, October 7–8, 1991. Oregon Convention Center, Portland, OR
Pietrasanta, Alfred M. 1991b. «Implementing Software Engineering in IBM.» Keynote address.
Ninth
Annual Pacific Northwest Software Quality Conference, October 7– 8, 1991. Oregon Convention
Center, Portland, OR.
Pigoski, Thomas M. 1997.
Practical Software Maintenance. New York, NY: John Wiley & Sons.
Pirsig, Robert M. 1974. Zen and the Art of Motorcycle Maintenance: An Inquiry into Values. William
Morrow.
Plauger, P. J. 1988. «A Designer’s Bibliography.»
Computer Language, July, 17–22.
Plauger, P. J. 1993.
Programming on Purpose: Essays on Software Design. New York, NY: Prentice
Hall.
Plum, Thomas. 1984.
C Programming Guidelines. Cardiff, NJ: Plum Hall.
Polya, G. 1957.
How to Solve It: A New Aspect of Mathematical Method, 2d ed. Princeton, NJ: Princeton
University Press.
Post, Ed. 1983. «Real Programmers Don’t Use Pascal,»
Datamation, July 1983, 263– 265.
Prechelt, Lutz. 2000. «An Empirical Comparison of Seven Programming Languages,»
IEEE Computer,
October 2000, 23–29.
Pressman, Roger S. 1987.
Software Engineering: A Practitioner’s Approach. New York, NY: McGraw-Hill.
Pressman, Roger S. 1988. Making Software Engineering Happen: A Guide for Instituting the
Technology. Englewood Cliffs, NJ: Prentice Hall.
Putnam, Lawrence H. 2000. «Familiar Metric Management – Effort, Development Time, and Defects
Interact.» Downloadable from
www.qsm.com.
Putnam, Lawrence H., and Ware Myers. 1992.
Measures for Excellence: Reliable Software On Time,
Within Budget. Englewood Cliffs, NJ: Yourdon Press, 1992.
Putnam, Lawrence H., and Ware Myers. 1997.
Industrial Strength Software: Effective Management
Using Measurement. Washington, DC: IEEE Computer Society Press.
Putnam, Lawrence H., and Ware Myers. 2000. «What We Have Learned.» Downloadable from
www.qsm.com, June 2000.
Raghavan, Sridhar A., and Donald R. Chand. 1989. «Diffusing Software-Engineering Methods.»
IEEE Software, July, 81–90.
Ramsey, H. Rudy, Michael E. Atwood, and James R. Van Doren. 1983. «Flowcharts Versus Program
Design Languages: An Experimental Comparison.»
Communications of the ACM 26, no. 6 (June):
445–49.
Ratliff, Wayne. 1987. Interview in
Solution System.
Raymond, E. S. 2000. «The Cathedral and the Bazaar,»
www.catb.org/esr/writings/cathedral-bazaar.
Raymond, Eric S. 2004.
The Art of Unix Programming. Boston, MA: Addison-Wesley.
Rees, Michael J. 1982. «Automatic Assessment Aids for Pascal Programs.»
ACM Sigplan Notices 17,
no. 10 (October): 33–42.
Reifer, Donald. 2002. «How to Get the Most Out of Extreme Programming/Agile Methods,»
Proceedings, XP/Agile Universe 2002. New York, NY: Springer; 185–196.
Reingold, Edward M., and Wilfred J. Hansen. 1983.
Data Structures. Boston, MA: Little, Brown.
Rettig, Marc. 1991. «Testing Made Palatable.»
Communications of the ACM 34, no. 5 (May): 25–29.
Riel, Arthur J. 1996.
Object-Oriented Design Heuristics. Reading, MA: Addison-Wesley.
Rittel, Horst, and Melvin Webber. 1973. «Dilemmas in a General Theory of Planning.»
Policy Sciences
4: 155–69.
858
Библиография
Robertson, Suzanne, and James Robertson, 1999.
Mastering the Requirements Process. Reading,
MA: Addison-Wesley.
Rogers, Everett M. 1995.
Diffusion of Innovations, 4th ed. New York, NY: The Free Press.
Rombach, H. Dieter. 1990. «Design Measurements: Some Lessons Learned.»
IEEE Software, March,
17–25.
Rubin, Frank. 1987. «‘GOTO Considered Harmful’ Considered Harmful.» Letter to the editor.
Communications of the ACM 30, no. 3 (March): 195–96. Follow-up letters in 30, no. 5 (May 1987):
351–55; 30, no. 6 (June 1987): 475–78; 30, no. 7 (July 1987): 632–34; 30, no. 8 (August 1987):
659–62; 30, no. 12 (December 1987): 997, 1085.
Sackman, H., W. J. Erikson, and E. E. Grant. 1968. «Exploratory Experimental Studies Comparing Online and Offline Programming Performance.»
Communications of the ACM 11, no. 1 (January): 3–11.
Schneider, G. Michael, Johnny Martin, and W. T. Tsai. 1992. «An Experimental Study of Fault
Detection in User Requirements Documents,»
ACM Transactions on Software Engineering and
Methodology, vol 1, no. 2, 188–204.
Schulmeyer, G. Gordon. 1990.
Zero Defect Software. New York, NY: McGraw-Hill.
Sedgewick, Robert. 1997.
Algorithms in C, Parts 1-4, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 2001.
Algorithms in C, Part 5, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 1998.
Algorithms in C++, Parts 1-4, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 2002.
Algorithms in C++, Part 5, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 2002.
Algorithms in Java, Parts 1-4, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 2003.
Algorithms in Java, Part 5, 3d ed. Boston, MA: Addison-Wesley.
SEI 1995.
The Capability Maturity Model: Guidelines for Improving the Software Process, Software
Engineering Institute, Reading, MA: Addison-Wesley, 1995.
SEI, 2003. «Process Maturity Profile: Software CMM®, CBA IPI and SPA Appraisal Results: 2002
Year End Update,» Software Engineering Institute, April 2003.
Selby, Richard W., and Victor R. Basili. 1991. «Analyzing Error-Prone System Structure.»
IEEE
Transactions on Software Engineering SE-17, no. 2 (February): 141–52.
SEN 1990. «Subsection on Telephone Systems,»
Software Engineering Notes, April 1990, 11–14.
Shalloway, Alan, and James R. Trott. 2002.
Design Patterns Explained. Boston, MA: Addison-Wesley.
Sheil, B. A. 1981. «The Psychological Study of Programming.»
Computing Surveys 13, no. 1 (March):
101–20.
Shen, Vincent Y., et al. 1985. «Identifying Error-Prone Software—An Empirical Study.»
IEEE
Transactions on Software Engineering SE-11, no. 4 (April): 317–24.
Sheppard, S. B., et al. 1978. «Predicting Programmers’ Ability to Modify Software.»
TR 78-388100-
3, General Electric Company, May.
Sheppard, S. B., et al. 1979. «Modern Coding Practices and Programmer Performance.»
IEEE
Computer 12, no. 12 (December): 41–49.
Shepperd, M., and D. Ince. 1989. «Metrics, Outlier Analysis and the Software Design Process.»
Information and Software Technology 31, no. 2 (March): 91–98.
Shirazi, Jack. 2000.
Java Performance Tuning. Sebastopol, CA: O’Reilly & Associates.
Shlaer, Sally, and Stephen J. Mellor. 1988.
Object Oriented Systems Analysis—Modeling the World
in Data. Englewood Cliffs, NJ: Prentice Hall.
Shneiderman, Ben, and Richard Mayer. 1979. «Syntactic/Semantic Interactions in Programmer
Behavior: A Model and Experimental Results.»
International Journal of Computer and Information
Sciences 8, no. 3: 219–38.
Библиография
859
Shneiderman, Ben. 1976. «Exploratory Experiments in Programmer Behavior.»
International Journal
of Computing and Information Science 5: 123–43.
Shneiderman, Ben. 1980. Software Psychology: Human Factors in Computer and Information
Systems. Cambridge, MA: Winthrop.
Shneiderman, Ben. 1987. Designing the User Interface: Strategies for Effective Human-Computer
Interaction. Reading, MA: Addison-Wesley.
Shull, et al. 2002. «What We Have Learned About Fighting Defects,»
Proceedings, Metrics 2002.
IEEE; 249–258.
Simon, Herbert. 1996.
The Sciences of the Artificial, 3d ed. Cambridge, MA: MIT Press.
Simon, Herbert. The Shape of Automation for Men and Management. Harper and Row, 1965.
Simonyi, Charles, and Martin Heller. 1991. «The Hungarian Revolution.»
BYTE, August, 131–38.
Smith, Connie U., and Lloyd G. Williams. 2002. Performance Solutions: A Practical Guide to Creating
Responsive, Scalable Software. Boston, MA: Addison-Wesley.
Software Productivity Consortium. 1989.
Ada Quality and Style: Guidelines for Professional Progra-
mmers. New York, NY: Van Nostrand Reinhold.
Soloway, Elliot, and Kate Ehrlich. 1984. «Empirical Studies of Programming Knowledge.»
IEEE
Transactions on Software Engineering SE-10, no. 5 (September): 595–609.
Soloway, Elliot, and Sitharama Iyengar, eds. 1986.
Empirical Studies of Programmers. Norwood,
NJ: Ablex.
Soloway, Elliot, Jeffrey Bonar, and Kate Ehrlich. 1983. «Cognitive Strategies and Looping Constructs:
An Empirical Study.»
Communications of the ACM 26, no. 11 (November): 853–60.
Solution Systems. 1987. World-Class Programmers’ Editing Techniques: Interviews with Seven
Programmers. South Weymouth, MA: Solution Systems.
Sommerville, Ian. 1989.
Software Engineering, 3d ed. Reading, MA: Addison-Wesley.
Spier, Michael J. 1976. «Software Malpractice—A Distasteful Experience.»
Software—Practice and
Experience 6: 293–99.
Spinellis, Diomidis. 2003.
Code Reading: The Open Source Perspective. Boston, MA: Addison-Wesley.
SPMN. 1998.
Little Book of Configuration Management. Arlington, VA; Software Program Managers
Network.
Starr, Daniel. 2003. «What Supports the Roof?»
Software Development. July 2003, 38–41.
Stephens, Matt. 2003. «Emergent Design vs. Early Prototyping,» May 26, 2003,
www.softwarereality.com/
design/early_prototyping.jsp.
Stevens, Scott M. 1989. «Intelligent Interactive Video Simulation of a Code Inspection.»
Communi-
cations of the ACM 32, no. 7 (July): 832–43.
Stevens, W., G. Myers, and L. Constantine. 1974. «Structured Design.»
IBM Systems Journal 13, no.
2 (May): 115–39.
Stevens, Wayne. 1981.
Using Structured Design. New York, NY: John Wiley & Sons.
Stroustrup, Bjarne. 1997.
The C++ Programming Language, 3d ed. Reading, MA: Addison-Wesley.
Strunk, William, and E. B. White. 2000.
Elements of Style, 4th ed. Pearson.
Sun Microsystems, Inc. 2000. «How to Write Doc Comments for the Javadoc Tool,» 2000. Available from
http://java.sun.com/j2se/javadoc/writingdoccomments/.
Sutter, Herb. 2000. Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions.
Boston, MA: Addison-Wesley.
Tackett, Buford D., III, and Buddy Van Doren. 1999. «Process Control for Error Free Software: A
Software Success Story,»
IEEE Software, May 1999.
860
Библиография
Tenner, Edward. 1997. Why Things Bite Back: Technology and the Revenge of Unintended
Consequences. Vintage Books.
Tenny, Ted. 1988. «Program Readability: Procedures versus Comments.»
IEEE Transactions on
Software Engineering SE-14, no. 9 (September): 1271–79.
Thayer, Richard H., ed. 1990.
Tutorial: Software Engineering Project Management. Los Alamitos,
CA: IEEE Computer Society Press.
Thimbleby, Harold. 1988. «Delaying Commitment.»
IEEE Software, May, 78–86.
Thomas, Dave, and Andy Hunt. 2002. «Mock Objects,»
IEEE Software, May/June 2002.
Thomas, Edward J., and Paul W. Oman. 1990. «A Bibliography of Programming Style.»
ACM Sigplan
Notices 25, no. 2 (February): 7–16.
Thomas, Richard A. 1984. «Using Comments to Aid Program Maintenance.»
BYTE, May, 415–22.
Tripp, Leonard L., William F. Struck, and Bryan K. Pflug. 1991. «The Application of Multiple Team
Inspections on a Safety-Critical Software Standard,»
Proceedings of the 4th Software Engineering
Standards Application Workshop, Los Alamitos, CA: IEEE Computer Society Press.
U.S. Department of Labor. 1990. «The 1990– 91 Job Outlook in Brief.»
Occupational Outlook
Quarterly, Spring. U.S. Government Printing Office. Document 1990-282-086/20007.
Valett, J., and F. E. McGarry. 1989. «A Summary of Software Measurement Experiences in the Software
Engineering Laboratory.»
Journal of Systems and Software 9, no. 2 (February): 137–48.
Van Genuchten, Michiel. 1991. «Why Is Software Late? An Empirical Study of Reasons for Delay in
Software Development.»
IEEE Transactions on Software Engineering SE-17, no. 6 (June): 582–90.
Van Tassel, Dennie. 1978.
Program Style, Design, Efficiency, Debugging, and Testing, 2d ed. Englewood
Cliffs, NJ: Prentice Hall.
Vaughn-Nichols, Steven. 2003. «Building Better Software with Better Tools,»
IEEE Computer,
September 2003, 12–14.
Vermeulen, Allan, et al. 2000.
The Elements of Java Style. Cambridge University Press.
Vessey, Iris, Sirkka L. Jarvenpaa, and Noam Tractinsky. 1992. «Evaluation of Vendor Products: CASE
Tools as Methodological Companions.»
Communications of the ACM 35, no. 4 (April): 91–105.
Vessey, Iris. 1986. «Expertise in Debugging Computer Programs: An Analysis of the Content of
Verbal Protocols.»
IEEE Transactions on Systems, Man, and Cybernetics SMC-16, no. 5 (September/
October): 621–37.
Votta, Lawrence G., et al. 1991. «Investigating the Application of Capture-Recapture Techniques to Requirements and Design Reviews.»
Proceedings of the Sixteenth Annual Software Engineering
Workshop, December 4–5, 1991. Greenbelt, MD: Goddard Space Flight Center. Document SEL-
91-006.
Walston, C. E., and C. P. Felix. 1977. «A Method of Programming Measurement and Estimation.»
IBM Systems Journal 16, no. 1: 54–73.
Ward, Robert. 1989.
A Programmer’s Introduction to Debugging C. Lawrence, KS: R & D Publications.
Ward, William T. 1989. «Software Defect Prevention Using McCabe’s Complexity Metric.»
Hewlett-
Packard Journal, April, 64–68.
Webster, Dallas E. 1988. «Mapping the Design Information Representation Terrain.»
IEEE Computer,
December, 8–23.
Weeks, Kevin. 1992. «Is Your Code Done Yet?»
Computer Language, April, 63–72.
Weiland, Richard J. 1983. The Programmer’s Craft: Program Construction, Computer Architecture,
and Data Management. Reston, VA: Reston Publishing.
Weinberg, Gerald M. 1983. «Kill That Code!»
Infosystems, August, 48–49.
1 ... 96 97 98 99 100 101 102 103 104
Библиография
857
Pietrasanta, Alfred M. 1991a. «A Strategy for Software Process Improvement.»
Ninth Annual Pacific
Northwest Software Quality Conference, October 7–8, 1991. Oregon Convention Center, Portland, OR
Pietrasanta, Alfred M. 1991b. «Implementing Software Engineering in IBM.» Keynote address.
Ninth
Annual Pacific Northwest Software Quality Conference, October 7– 8, 1991. Oregon Convention
Center, Portland, OR.
Pigoski, Thomas M. 1997.
Practical Software Maintenance. New York, NY: John Wiley & Sons.
Pirsig, Robert M. 1974. Zen and the Art of Motorcycle Maintenance: An Inquiry into Values. William
Morrow.
Plauger, P. J. 1988. «A Designer’s Bibliography.»
Computer Language, July, 17–22.
Plauger, P. J. 1993.
Programming on Purpose: Essays on Software Design. New York, NY: Prentice
Hall.
Plum, Thomas. 1984.
C Programming Guidelines. Cardiff, NJ: Plum Hall.
Polya, G. 1957.
How to Solve It: A New Aspect of Mathematical Method, 2d ed. Princeton, NJ: Princeton
University Press.
Post, Ed. 1983. «Real Programmers Don’t Use Pascal,»
Datamation, July 1983, 263– 265.
Prechelt, Lutz. 2000. «An Empirical Comparison of Seven Programming Languages,»
IEEE Computer,
October 2000, 23–29.
Pressman, Roger S. 1987.
Software Engineering: A Practitioner’s Approach. New York, NY: McGraw-Hill.
Pressman, Roger S. 1988. Making Software Engineering Happen: A Guide for Instituting the
Technology. Englewood Cliffs, NJ: Prentice Hall.
Putnam, Lawrence H. 2000. «Familiar Metric Management – Effort, Development Time, and Defects
Interact.» Downloadable from
www.qsm.com.
Putnam, Lawrence H., and Ware Myers. 1992.
Measures for Excellence: Reliable Software On Time,
Within Budget. Englewood Cliffs, NJ: Yourdon Press, 1992.
Putnam, Lawrence H., and Ware Myers. 1997.
Industrial Strength Software: Effective Management
Using Measurement. Washington, DC: IEEE Computer Society Press.
Putnam, Lawrence H., and Ware Myers. 2000. «What We Have Learned.» Downloadable from
www.qsm.com, June 2000.
Raghavan, Sridhar A., and Donald R. Chand. 1989. «Diffusing Software-Engineering Methods.»
IEEE Software, July, 81–90.
Ramsey, H. Rudy, Michael E. Atwood, and James R. Van Doren. 1983. «Flowcharts Versus Program
Design Languages: An Experimental Comparison.»
Communications of the ACM 26, no. 6 (June):
445–49.
Ratliff, Wayne. 1987. Interview in
Solution System.
Raymond, E. S. 2000. «The Cathedral and the Bazaar,»
www.catb.org/esr/writings/cathedral-bazaar.
Raymond, Eric S. 2004.
The Art of Unix Programming. Boston, MA: Addison-Wesley.
Rees, Michael J. 1982. «Automatic Assessment Aids for Pascal Programs.»
ACM Sigplan Notices 17,
no. 10 (October): 33–42.
Reifer, Donald. 2002. «How to Get the Most Out of Extreme Programming/Agile Methods,»
Proceedings, XP/Agile Universe 2002. New York, NY: Springer; 185–196.
Reingold, Edward M., and Wilfred J. Hansen. 1983.
Data Structures. Boston, MA: Little, Brown.
Rettig, Marc. 1991. «Testing Made Palatable.»
Communications of the ACM 34, no. 5 (May): 25–29.
Riel, Arthur J. 1996.
Object-Oriented Design Heuristics. Reading, MA: Addison-Wesley.
Rittel, Horst, and Melvin Webber. 1973. «Dilemmas in a General Theory of Planning.»
Policy Sciences
4: 155–69.
858
Библиография
Robertson, Suzanne, and James Robertson, 1999.
Mastering the Requirements Process. Reading,
MA: Addison-Wesley.
Rogers, Everett M. 1995.
Diffusion of Innovations, 4th ed. New York, NY: The Free Press.
Rombach, H. Dieter. 1990. «Design Measurements: Some Lessons Learned.»
IEEE Software, March,
17–25.
Rubin, Frank. 1987. «‘GOTO Considered Harmful’ Considered Harmful.» Letter to the editor.
Communications of the ACM 30, no. 3 (March): 195–96. Follow-up letters in 30, no. 5 (May 1987):
351–55; 30, no. 6 (June 1987): 475–78; 30, no. 7 (July 1987): 632–34; 30, no. 8 (August 1987):
659–62; 30, no. 12 (December 1987): 997, 1085.
Sackman, H., W. J. Erikson, and E. E. Grant. 1968. «Exploratory Experimental Studies Comparing Online and Offline Programming Performance.»
Communications of the ACM 11, no. 1 (January): 3–11.
Schneider, G. Michael, Johnny Martin, and W. T. Tsai. 1992. «An Experimental Study of Fault
Detection in User Requirements Documents,»
ACM Transactions on Software Engineering and
Methodology, vol 1, no. 2, 188–204.
Schulmeyer, G. Gordon. 1990.
Zero Defect Software. New York, NY: McGraw-Hill.
Sedgewick, Robert. 1997.
Algorithms in C, Parts 1-4, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 2001.
Algorithms in C, Part 5, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 1998.
Algorithms in C++, Parts 1-4, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 2002.
Algorithms in C++, Part 5, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 2002.
Algorithms in Java, Parts 1-4, 3d ed. Boston, MA: Addison-Wesley.
Sedgewick, Robert. 2003.
Algorithms in Java, Part 5, 3d ed. Boston, MA: Addison-Wesley.
SEI 1995.
The Capability Maturity Model: Guidelines for Improving the Software Process, Software
Engineering Institute, Reading, MA: Addison-Wesley, 1995.
SEI, 2003. «Process Maturity Profile: Software CMM®, CBA IPI and SPA Appraisal Results: 2002
Year End Update,» Software Engineering Institute, April 2003.
Selby, Richard W., and Victor R. Basili. 1991. «Analyzing Error-Prone System Structure.»
IEEE
Transactions on Software Engineering SE-17, no. 2 (February): 141–52.
SEN 1990. «Subsection on Telephone Systems,»
Software Engineering Notes, April 1990, 11–14.
Shalloway, Alan, and James R. Trott. 2002.
Design Patterns Explained. Boston, MA: Addison-Wesley.
Sheil, B. A. 1981. «The Psychological Study of Programming.»
Computing Surveys 13, no. 1 (March):
101–20.
Shen, Vincent Y., et al. 1985. «Identifying Error-Prone Software—An Empirical Study.»
IEEE
Transactions on Software Engineering SE-11, no. 4 (April): 317–24.
Sheppard, S. B., et al. 1978. «Predicting Programmers’ Ability to Modify Software.»
TR 78-388100-
3, General Electric Company, May.
Sheppard, S. B., et al. 1979. «Modern Coding Practices and Programmer Performance.»
IEEE
Computer 12, no. 12 (December): 41–49.
Shepperd, M., and D. Ince. 1989. «Metrics, Outlier Analysis and the Software Design Process.»
Information and Software Technology 31, no. 2 (March): 91–98.
Shirazi, Jack. 2000.
Java Performance Tuning. Sebastopol, CA: O’Reilly & Associates.
Shlaer, Sally, and Stephen J. Mellor. 1988.
Object Oriented Systems Analysis—Modeling the World
in Data. Englewood Cliffs, NJ: Prentice Hall.
Shneiderman, Ben, and Richard Mayer. 1979. «Syntactic/Semantic Interactions in Programmer
Behavior: A Model and Experimental Results.»
International Journal of Computer and Information
Sciences 8, no. 3: 219–38.
Библиография
859
Shneiderman, Ben. 1976. «Exploratory Experiments in Programmer Behavior.»
International Journal
of Computing and Information Science 5: 123–43.
Shneiderman, Ben. 1980. Software Psychology: Human Factors in Computer and Information
Systems. Cambridge, MA: Winthrop.
Shneiderman, Ben. 1987. Designing the User Interface: Strategies for Effective Human-Computer
Interaction. Reading, MA: Addison-Wesley.
Shull, et al. 2002. «What We Have Learned About Fighting Defects,»
Proceedings, Metrics 2002.
IEEE; 249–258.
Simon, Herbert. 1996.
The Sciences of the Artificial, 3d ed. Cambridge, MA: MIT Press.
Simon, Herbert. The Shape of Automation for Men and Management. Harper and Row, 1965.
Simonyi, Charles, and Martin Heller. 1991. «The Hungarian Revolution.»
BYTE, August, 131–38.
Smith, Connie U., and Lloyd G. Williams. 2002. Performance Solutions: A Practical Guide to Creating
Responsive, Scalable Software. Boston, MA: Addison-Wesley.
Software Productivity Consortium. 1989.
Ada Quality and Style: Guidelines for Professional Progra-
mmers. New York, NY: Van Nostrand Reinhold.
Soloway, Elliot, and Kate Ehrlich. 1984. «Empirical Studies of Programming Knowledge.»
IEEE
Transactions on Software Engineering SE-10, no. 5 (September): 595–609.
Soloway, Elliot, and Sitharama Iyengar, eds. 1986.
Empirical Studies of Programmers. Norwood,
NJ: Ablex.
Soloway, Elliot, Jeffrey Bonar, and Kate Ehrlich. 1983. «Cognitive Strategies and Looping Constructs:
An Empirical Study.»
Communications of the ACM 26, no. 11 (November): 853–60.
Solution Systems. 1987. World-Class Programmers’ Editing Techniques: Interviews with Seven
Programmers. South Weymouth, MA: Solution Systems.
Sommerville, Ian. 1989.
Software Engineering, 3d ed. Reading, MA: Addison-Wesley.
Spier, Michael J. 1976. «Software Malpractice—A Distasteful Experience.»
Software—Practice and
Experience 6: 293–99.
Spinellis, Diomidis. 2003.
Code Reading: The Open Source Perspective. Boston, MA: Addison-Wesley.
SPMN. 1998.
Little Book of Configuration Management. Arlington, VA; Software Program Managers
Network.
Starr, Daniel. 2003. «What Supports the Roof?»
Software Development. July 2003, 38–41.
Stephens, Matt. 2003. «Emergent Design vs. Early Prototyping,» May 26, 2003,
www.softwarereality.com/
design/early_prototyping.jsp.
Stevens, Scott M. 1989. «Intelligent Interactive Video Simulation of a Code Inspection.»
Communi-
cations of the ACM 32, no. 7 (July): 832–43.
Stevens, W., G. Myers, and L. Constantine. 1974. «Structured Design.»
IBM Systems Journal 13, no.
2 (May): 115–39.
Stevens, Wayne. 1981.
Using Structured Design. New York, NY: John Wiley & Sons.
Stroustrup, Bjarne. 1997.
The C++ Programming Language, 3d ed. Reading, MA: Addison-Wesley.
Strunk, William, and E. B. White. 2000.
Elements of Style, 4th ed. Pearson.
Sun Microsystems, Inc. 2000. «How to Write Doc Comments for the Javadoc Tool,» 2000. Available from
http://java.sun.com/j2se/javadoc/writingdoccomments/.
Sutter, Herb. 2000. Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions.
Boston, MA: Addison-Wesley.
Tackett, Buford D., III, and Buddy Van Doren. 1999. «Process Control for Error Free Software: A
Software Success Story,»
IEEE Software, May 1999.
860
Библиография
Tenner, Edward. 1997. Why Things Bite Back: Technology and the Revenge of Unintended
Consequences. Vintage Books.
Tenny, Ted. 1988. «Program Readability: Procedures versus Comments.»
IEEE Transactions on
Software Engineering SE-14, no. 9 (September): 1271–79.
Thayer, Richard H., ed. 1990.
Tutorial: Software Engineering Project Management. Los Alamitos,
CA: IEEE Computer Society Press.
Thimbleby, Harold. 1988. «Delaying Commitment.»
IEEE Software, May, 78–86.
Thomas, Dave, and Andy Hunt. 2002. «Mock Objects,»
IEEE Software, May/June 2002.
Thomas, Edward J., and Paul W. Oman. 1990. «A Bibliography of Programming Style.»
ACM Sigplan
Notices 25, no. 2 (February): 7–16.
Thomas, Richard A. 1984. «Using Comments to Aid Program Maintenance.»
BYTE, May, 415–22.
Tripp, Leonard L., William F. Struck, and Bryan K. Pflug. 1991. «The Application of Multiple Team
Inspections on a Safety-Critical Software Standard,»
Proceedings of the 4th Software Engineering
Standards Application Workshop, Los Alamitos, CA: IEEE Computer Society Press.
U.S. Department of Labor. 1990. «The 1990– 91 Job Outlook in Brief.»
Occupational Outlook
Quarterly, Spring. U.S. Government Printing Office. Document 1990-282-086/20007.
Valett, J., and F. E. McGarry. 1989. «A Summary of Software Measurement Experiences in the Software
Engineering Laboratory.»
Journal of Systems and Software 9, no. 2 (February): 137–48.
Van Genuchten, Michiel. 1991. «Why Is Software Late? An Empirical Study of Reasons for Delay in
Software Development.»
IEEE Transactions on Software Engineering SE-17, no. 6 (June): 582–90.
Van Tassel, Dennie. 1978.
Program Style, Design, Efficiency, Debugging, and Testing, 2d ed. Englewood
Cliffs, NJ: Prentice Hall.
Vaughn-Nichols, Steven. 2003. «Building Better Software with Better Tools,»
IEEE Computer,
September 2003, 12–14.
Vermeulen, Allan, et al. 2000.
The Elements of Java Style. Cambridge University Press.
Vessey, Iris, Sirkka L. Jarvenpaa, and Noam Tractinsky. 1992. «Evaluation of Vendor Products: CASE
Tools as Methodological Companions.»
Communications of the ACM 35, no. 4 (April): 91–105.
Vessey, Iris. 1986. «Expertise in Debugging Computer Programs: An Analysis of the Content of
Verbal Protocols.»
IEEE Transactions on Systems, Man, and Cybernetics SMC-16, no. 5 (September/
October): 621–37.
Votta, Lawrence G., et al. 1991. «Investigating the Application of Capture-Recapture Techniques to Requirements and Design Reviews.»
Proceedings of the Sixteenth Annual Software Engineering
Workshop, December 4–5, 1991. Greenbelt, MD: Goddard Space Flight Center. Document SEL-
91-006.
Walston, C. E., and C. P. Felix. 1977. «A Method of Programming Measurement and Estimation.»
IBM Systems Journal 16, no. 1: 54–73.
Ward, Robert. 1989.
A Programmer’s Introduction to Debugging C. Lawrence, KS: R & D Publications.
Ward, William T. 1989. «Software Defect Prevention Using McCabe’s Complexity Metric.»
Hewlett-
Packard Journal, April, 64–68.
Webster, Dallas E. 1988. «Mapping the Design Information Representation Terrain.»
IEEE Computer,
December, 8–23.
Weeks, Kevin. 1992. «Is Your Code Done Yet?»
Computer Language, April, 63–72.
Weiland, Richard J. 1983. The Programmer’s Craft: Program Construction, Computer Architecture,
and Data Management. Reston, VA: Reston Publishing.
Weinberg, Gerald M. 1983. «Kill That Code!»
Infosystems, August, 48–49.
1 ... 96 97 98 99 100 101 102 103 104
Библиография
861
Weinberg, Gerald M. 1998. The Psychology of Computer Programming: Silver Anniversary Edition.
New York, NY: Dorset House.
Weinberg, Gerald M., and Edward L. Schulman. 1974. «Goals and Performance in Computer
Programming.»
Human Factors 16, no. 1 (February): 70–77.
Weinberg, Gerald. 1988.
Rethinking Systems Analysis and Design. New York, NY: Dorset House.
Weisfeld, Matt. 2004.
The Object-Oriented Thought Process, 2d ed. SAMS, 2004.
Weiss, David M. 1975. «Evaluating Software Development by Error Analysis: The Data from the
Architecture Research Facility.»
Journal of Systems and Software 1, no. 2 (June): 57–70.
Weiss, Eric A. 1972. «Review of
The Psychology of Computer Programming, by Gerald M. Weinberg.»
ACM Computing Reviews 13, no. 4 (April): 175–76.
Wheeler, David, Bill Brykczynski, and Reginald Meeson. 1996.
Software Inspection: An Industry
Best Practice. Los Alamitos, CA: IEEE Computer Society Press.
Whittaker, James A. 2000 «What Is Software Testing? And Why Is It So Hard?»
IEEE Software, January
2000, 70–79.
Whittaker, James A. 2002.
How to Break Software: A Practical Guide to Testing. Boston, MA: Addison-
Wesley.
Whorf, Benjamin. 1956.
Language, Thought and Reality. Cambridge, MA: MIT Press.
Wiegers, Karl. 2002.
Peer Reviews in Software: A Practical Guide. Boston, MA: Addison-Wesley.
Wiegers, Karl. 2003.
Software Requirements, 2d ed. Redmond, WA: Microsoft Press.
Williams, Laurie, and Robert Kessler. 2002.
Pair Programming Illuminated. Boston, MA: Addison-
Wesley.
Willis, Ron R., et al. 1998. «Hughes Aircraft’s Widespread Deployment of a Continuously Improving
Software Process,» Software Engineering Institute/Carnegie Mellon University, CMU/SEI-98-TR-
006, May 1998.
Wilson, Steve, and Jeff Kesselman. 2000.
Java Platform Performance: Strategies and Tactics. Boston,
MA: Addison-Wesley.
Wirth, Niklaus. 1995. «A Plea for Lean Software,»
IEEE Computer, February 1995.
Wirth, Niklaus. 1971. «Program Development by Stepwise Refinement.»
Communications of the
ACM 14, no. 4 (April): 221–27.
Wirth, Niklaus. 1986.
Algorithms and Data Structures. Englewood Cliffs, NJ: Prentice Hall.
Woodcock, Jim, and Martin Loomes. 1988.
Software Engineering Mathematics. Reading, MA: Addison-
Wesley.
Woodfield, S. N., H. E. Dunsmore, and V. Y. Shen. 1981. «The Effect of Modularization and Comments on Program Comprehension.»
Proceedings of the Fifth International Conference on Software
Engineering, March 1981, 215–23.
Wulf, W. A. 1972. «A Case Against the GOTO.»
Proceedings of the 25th National ACM Conference,
August 1972, 791–97.
Youngs, Edward A. 1974. «Human Errors in Programming.»
International Journal of Man-Machine
Studies 6: 361–76.
Yourdon, Edward, and Larry L. Constantine. 1979.
Structured Design: Fundamentals of a Discipline
of Computer Program and Systems Design. Englewood Cliffs, NJ: Yourdon Press.
Yourdon, Edward, ed. 1979.
Classics in Software Engineering. Englewood Cliffs, NJ: Yourdon Press.
Yourdon, Edward, ed. 1982. Writings of the Revolution: Selected Readings on Software Engineering.
New York, NY: Yourdon Press.
861
Weinberg, Gerald M. 1998. The Psychology of Computer Programming: Silver Anniversary Edition.
New York, NY: Dorset House.
Weinberg, Gerald M., and Edward L. Schulman. 1974. «Goals and Performance in Computer
Programming.»
Human Factors 16, no. 1 (February): 70–77.
Weinberg, Gerald. 1988.
Rethinking Systems Analysis and Design. New York, NY: Dorset House.
Weisfeld, Matt. 2004.
The Object-Oriented Thought Process, 2d ed. SAMS, 2004.
Weiss, David M. 1975. «Evaluating Software Development by Error Analysis: The Data from the
Architecture Research Facility.»
Journal of Systems and Software 1, no. 2 (June): 57–70.
Weiss, Eric A. 1972. «Review of
The Psychology of Computer Programming, by Gerald M. Weinberg.»
ACM Computing Reviews 13, no. 4 (April): 175–76.
Wheeler, David, Bill Brykczynski, and Reginald Meeson. 1996.
Software Inspection: An Industry
Best Practice. Los Alamitos, CA: IEEE Computer Society Press.
Whittaker, James A. 2000 «What Is Software Testing? And Why Is It So Hard?»
IEEE Software, January
2000, 70–79.
Whittaker, James A. 2002.
How to Break Software: A Practical Guide to Testing. Boston, MA: Addison-
Wesley.
Whorf, Benjamin. 1956.
Language, Thought and Reality. Cambridge, MA: MIT Press.
Wiegers, Karl. 2002.
Peer Reviews in Software: A Practical Guide. Boston, MA: Addison-Wesley.
Wiegers, Karl. 2003.
Software Requirements, 2d ed. Redmond, WA: Microsoft Press.
Williams, Laurie, and Robert Kessler. 2002.
Pair Programming Illuminated. Boston, MA: Addison-
Wesley.
Willis, Ron R., et al. 1998. «Hughes Aircraft’s Widespread Deployment of a Continuously Improving
Software Process,» Software Engineering Institute/Carnegie Mellon University, CMU/SEI-98-TR-
006, May 1998.
Wilson, Steve, and Jeff Kesselman. 2000.
Java Platform Performance: Strategies and Tactics. Boston,
MA: Addison-Wesley.
Wirth, Niklaus. 1995. «A Plea for Lean Software,»
IEEE Computer, February 1995.
Wirth, Niklaus. 1971. «Program Development by Stepwise Refinement.»
Communications of the
ACM 14, no. 4 (April): 221–27.
Wirth, Niklaus. 1986.
Algorithms and Data Structures. Englewood Cliffs, NJ: Prentice Hall.
Woodcock, Jim, and Martin Loomes. 1988.
Software Engineering Mathematics. Reading, MA: Addison-
Wesley.
Woodfield, S. N., H. E. Dunsmore, and V. Y. Shen. 1981. «The Effect of Modularization and Comments on Program Comprehension.»
Proceedings of the Fifth International Conference on Software
Engineering, March 1981, 215–23.
Wulf, W. A. 1972. «A Case Against the GOTO.»
Proceedings of the 25th National ACM Conference,
August 1972, 791–97.
Youngs, Edward A. 1974. «Human Errors in Programming.»
International Journal of Man-Machine
Studies 6: 361–76.
Yourdon, Edward, and Larry L. Constantine. 1979.
Structured Design: Fundamentals of a Discipline
of Computer Program and Systems Design. Englewood Cliffs, NJ: Yourdon Press.
Yourdon, Edward, ed. 1979.
Classics in Software Engineering. Englewood Cliffs, NJ: Yourdon Press.
Yourdon, Edward, ed. 1982. Writings of the Revolution: Selected Readings on Software Engineering.
New York, NY: Yourdon Press.
862
Библиография
Yourdon, Edward. 1986a. Managing the Structured Techniques: Strategies for Software Development in the 1990s, 3d ed. New York, NY: Yourdon Press.
Yourdon, Edward. 1986b.
Nations at Risk. New York, NY: Yourdon Press.
Yourdon, Edward. 1988. «The 63 Greatest Software Books.»
American Programmer, September.
Yourdon, Edward. 1989a.
Modern Structured Analysis. New York, NY: Yourdon Press.
Yourdon, Edward. 1989b.
Structured Walk-Throughs, 4th ed. New York, NY: Yourdon Press.
Yourdon, Edward. 1992.
Decline & Fall of the American Programmer. Englewood Cliffs, NJ: Yourdon
Press.
Zachary, Pascal. 1994.
Showstopper! The Free Press.
Zahniser, Richard A. 1992. «A Massively Parallel Software Development Approach.»
American
Programmer, January, 34–41.
G
GUI 44
I
IDE 695
P
Pseudocode Programming Process
См. ППП
U
UDT 272
UML (Unified Modeling Language) 115
А
абстрактный тип данных
См. АТД
абстракция 86, 135, 149, 160
аккреция 14
алгоритм 11
архитектура 41
— безопасность 45
— бизнес-правила 44
— ввод-вывод 46
— взаимодействие с другими системами 45
— возможность реализации 48
— избыточная функциональность 48
— интернационализация/локализация 46
— масштабируемость 45
— обработка ошибок 46
— общее качество 50
— организация данных 43
— организация программы 42
— основные классы 43
— отказоустойчивость 47
— повторное использование 49
— пользовательский интерфейс 44
— производительность 45
— стратегия изменений 49
— управление ресурсами 44
АТД (абстрактный тип данных) 122, 123, 125,
126, 127, 128, 129, 132
атрибут 84
Б
баррикада 198, 200
см. также изоляция по- вреждений блок 436,
см. также оператор, составной
— границы 725
— эмуляция 723
— явный 722
В
время связывания 104
Г
глобальные данные 326, 327, 328, 329, 330, 334
Д
диаграмма 104
директива 11
З
заглушка 203
И
иерархия
102
изоляция повреждений 198
см. также бар- рикада индекс
— длины строки 613
— цикла 257, 258
инкапсуляция 87, 135
инкрементное улучшение 108
инспекция 477
интеграция 3, 4, 673
— инкрементная 676, 678
— — восходящая 681
— — нисходящая 678
— — риск-ориентированная 683
Предметный указатель
864
Предметный указатель
— — сэндвич-подход 682
— — Т-образная 685
— — функционально-ориентирован- ная 684
— непрерывная 690
— поэтапная 675
интегрированные среды разработки
См. IDE
интеллектуальный инструментарий 19
интерфейс 129–137, 170, 697, 752
исключение 193–198
итерация 107, 590
К
класс 86, 121, 145–152
— включение 139
— данные-члены 146
— конструирование всех методов 210
— конструктор 147
— контракт 103
— метод-член 146
— наследование 140
— — множественное 145
— оценка 210
— пакет 153
— проект 575
— создание общей структуры 210
— тестирование 210
— форматирование 752
ключевое слово 152
код
— библиотека 701
— инструменты для сборки 701
— компилятор 700
— компиляция 575
— компоновщик 700
— мастер для генерации 702
— оптимизация 574, 576, 581, 582, 595, 704
— создание 700
— транслятор 699
кодирование 2, 3, 4
комментарий 220, 221, 222, 747, 764
конвенции программирования 63
конвенция именования 263, 264, 266, 267, 268,
269, 270, 271
константа 263
— именованная 299
конструирование 3, 4, 5, 22, 70
— график 655
— методика 66
— план 2, 4
— подготовка 23
— совместное 472, 487
кэширование 614
Л
литерал 289
логические выражения 424, 428, 430, 435
М
массив 301, 379, 611
метафора 8, 9, 10, 11, 12, 14, 15, 19
метод 133, 138, 143, 157, 158, 160, 162, 163, 165
— встраиваемый 178, 180
— встраивание 625
— доступа 331, 332, 333
— заголовок 217
— имя 167, 168, 215
— интерфейс 170, 175, 219, 224
— кодирование 218
— комментирование 787
— компиляция 223
— макрос 178–186
— множественные возвраты 382
— наследование 161
— объем 169
— параметр 170–177
— проверка кода 223
— проект 575
— проектирование 214
— псевдокод 217
— размещение 750
— рекурсия 385
— связанность 163
— создание 211
— табличный 405
— тестирование 224
методология 23
моделирование 8
модель 9
модульность проекта системы 104
Предметный указатель
865
О
обработка ошибок 189–198, 215, 393
объект 84
оператор 338
—
case 353
—
if 346
—
switch 353
— порядок выполнения 342
— пустой 437
— составно
См. также блок
— составной 436
— форматирование 736
оптимизация 573
отладка 2, 3, 4, 5, 200, 201, 202, 203, 204, 524
оценка 659
П
переменная 230
— булева 261
— временная 260
— время жизни 239, 241
— время связывания 246
— единственность цели 249
— имя 253, 254, 257, 274, 275, 277, 279
— — длина 255
— инициализация 233, 234, 235, 236
— логическая 292
— область видимости 238, 239, 242, 244,
255
— обращение 238
— объявление 232, 236
— — неявное 232, 233
— персистентность 245
— статуса 258, 259
— указатель 318
— цикла 374
перечисление 262
портируемость 161
построение 15
ППП (процесс программирования с псевдоко- дом) 209, 214, 225
префикс 272–273
приращение 14
программирование
— парное 475
— структурное 448
— — выбор 449
— — итерация 450
— — последовательность 448
проект
— анализ 484
— измерение 661
— презентация 487
— размер 5, 635
— чтение кода 486
проектирование 70, 71, 72, 73, 74, 84
— восходящее 108, 109, 110
— высокоуровневое 2
— детальное 2, 3, 4
— инструмент 695
— метод 163
— методика 107
— нисходящее 108, 110
— программная система 79
— методов 83
— разделение
— — классов на методы 83
— — подсистем на классы 82
— — системы на подсистемы или паке- ты 79
— регистрация
114
— связность 102
— совместное 112
— управление сложностью 74, 75
— характеристики проекта
— — возможность повторного использо- вания 78
— — высокий коэффициент объедине- ния по входу 78
— — минимальная сложность 77
— — минимальная, но полная функцио- нальность 78
— — низкий или средний коэффициент разветвления по выходу 78
— — портируемость 78
— — простота сопровождения 77
— — расширяемость 77
— — слабое сопряжение 77
— — соответствие стандартным методи кам 78
— — стратификация 78
866
Предметный указатель
— характеристики проекта 77
— часто используемые подсистемы
— — подсистема бизнес-правил 82
— — подсистема доступа к БД 82
— — подсистема изоляции зависимостей от ОС 82
— — подсистема пользовательского ин- терфейса 82
— часто используемые подсистемы 82
— шаблон 99, 100, 101
прототипирование 110, 111
процедура 177
процесс программирования с псевдоко- дом
См. ППП
псевдокод 211, 212, 213, 216, 219
Р
рефакторинг 108, 553
— безопасный 566
— интерфейсов классов 562
— исходного кода 699
— на уровне данных 559
— на уровне отдельных методов 561
— на уровне отдельных операторов 560
— на уровне системы 563
— реализации классов 562
— стратегия 568
С
связанность 163
связность 135
— временная 165
— коммуникационная 164
— логическая 166
— последовательная 164
— процедурная 165
— случайная 166
— функциональная 164
селективные данные 248
символ 289
словарь данных 700
сокрытие информации 89, 90, 91, 92, 93
сопровождение корректирующее 3
сопряжение 96, 98, 102, 139, 164
спецификатор вычисляемых значений 256
стандарты 646, 795
строка 289, 290
структура 310, 313
Т
тестирование 22, 492
— автоматизированное 519
— блочное 3, 4, 5, 490
— инструменты 513
— — возмущения состояния систе- мы 517
— — генераторы тестовых данных 515
— — леса 513
— — мониторы покрытия кода теста- ми 516
— — регистраторы данных 516
— — символические отладчики
517
— — сравнения файлов 515
— интеграционное 3, 4, 5, 491
— компонента 490
— неполное 497
— оптимизация 518
— основанное на потоках данных 500
— планирование 518
— прием 496
— протокол 520
— регрессивное 491, 515, 518
— системы 3, 5, 491
— структурированное базисное 497
тип данных 247, 257, 282
— изменение 611
— перечислимый 294, 330
— создание 303
тип проекта 28
точка управления 104
требование 2, 36–39, 650
У
указатель 61, 314, 316, 323, 324, 325, 326
— инициализация 316
— область памяти 314
— переменная 318
унифицированный язык моделирования
См. UML
управление конфигурацией 649
управляющая структура 247