Designing Maintainable Software
Autor Dennis D. Smithen Limba Engleză Hardback – 28 mai 1999
Toate formatele și edițiile | Preț | Express |
---|---|---|
Paperback (1) | 279.41 lei 39-44 zile | |
Springer – 6 oct 2012 | 279.41 lei 39-44 zile | |
Hardback (1) | 285.04 lei 39-44 zile | |
Springer – 28 mai 1999 | 285.04 lei 39-44 zile |
Preț: 285.04 lei
Preț vechi: 356.31 lei
-20%
Puncte Express: 428
Preț estimativ în valută:
54.61€ • 59.15$ • 46.83£
54.61€ • 59.15$ • 46.83£
Carte tipărită la comandă
Livrare economică 06-11 mai
Preluare comenzi: 021 569.72.76
Specificații
ISBN-13: 9780387987835
ISBN-10: 0387987835
Pagini: 169
Ilustrații: XIII, 169 p.
Dimensiuni: 155 x 235 x 14 mm
Greutate: 0.36 kg
Ediția:1999
Editura: Springer
Colecția Springer
Locul publicării:New York, NY, United States
ISBN-10: 0387987835
Pagini: 169
Ilustrații: XIII, 169 p.
Dimensiuni: 155 x 235 x 14 mm
Greutate: 0.36 kg
Ediția:1999
Editura: Springer
Colecția Springer
Locul publicării:New York, NY, United States
Public țintă
Professional/practitionerDescriere
This book is about maintaining computer software. Its aim is to improve a pro gram's capacity for altering code to fit changing requirements and for detecting and correcting errors. The book is written primarily for systems analysts and programmers. But others will also find it interesting. Managers will find ways to decrease costs, improve the organization's performance, and lessen its liability exposure. Re searchers will be given principles to expand upon, and will be able to develop techniques for solving new problems that arise in the world of maintenance. Another group to benefit is students. They will be given a foundation from which to write clear unambiguous programs. Software maintenance is an important and timely area of investigation. It is the component that gives an information system its flexibility. It is also the source of many of its problems. Software is costly to maintain. It is the usual cause of system failures and is the frequently cited reason why systems operate in unintended ways. Most software problems are not serious and require only minor repairs. But some have resulted in the loss of significant physical and financial resources. Others have cost lives. The book argues for a new way of thinking about maintaining software. Tra ditional approaches, using software engineering and management disciplines, do not adequately address maintenance issues. What is proposed to solve problems utilizes a set of human factors principles that govern the programmer-software event world interactions and form the core of the maintenance process.
Cuprins
Section I. Facing the Problem.- 1. The Problem.- The Maintenance of Software.- Program Characteristics.- The Maintenance Process.- The Maintenance Environment.- Maintenance Tools.- The Maintainer.- The Software Department.- Summary.- 2. The Approach.- Approach Definition.- Overview.- The Managerial Approach.- The Engineering Approach.- Software Science.- The Cognitive Approach.- Information Science.- Discussion and Summary.- The Nature of the Problem.- Solution Criteria.- Managerial Approach.- Engineering Approach.- Cognitive Approach.- 3. The Attack.- EATPUT—An Information Processing Model.- Software Life Cycle.- Development.- Maintenance.- Plan of Attack.- Strategy.- Tactics.- Using the Plan.- Summary.- Section II. Solutions Through Symbols.- 4. Some Basics.- Procedural Memory.- Processing.- Utilization.- Semantic Memory.- Processing.- Utilization.- Episodic Memory.- Processing.- Utilization.- Summary.- 5. Naming.- The Naming Process.- Event World.- Acquisition.- Transmission.- Processing.- Utilization and Transfer.- Analyzing Names.- Names in Context.- Words in Semantic Memory.- Summary.- 6. Words and Letters.- Symbols in Procedural Memory.- Learning Processing Operations.- Acquisition.- Learning Factors.- Procedural and Semantic Memory Interaction.- Symbols in Semantic Memory.- Recognizing Words.- Recalling Words.- Other Factors in Word Retrieval.- Degrees of Abstraction.- Word Fragments.- “Neighborhood Effect”.- Word Use.- Summary.- 7. Abbreviations and Mnemonics.- Abbreviations.- Mnemonics.- Basic Techniques.- Truncation.- Contraction.- Phonics.- Concatenation.- Discussion and Summary.- Truncation.- Contraction.- One-Syllable Words.- Multisyllable Words.- Summary.- 8. Language.- Languages Used by Programmers.- Constrained Languages.- Artificial Languages.- Language Acquisition and Syntax.- Language Usage in Programs.- Indexed Names.- Compound Names.- Parts of Speech.- Abbreviation Techniques.- 9. Language of Mnemonics.- Writing Code for the Maintainers.- Novice Programmers.- Expert Programmers.- Skill Level Comparison.- Organization and Processing.- Memory Organization.- Information Processing.- Maintenance Tasks.- Language of Mnemonics.- The Target Audience.- Naming.- Indices.- Bigrams.- Descriptor Matrices.- The Language in Operation.- Summary.- Section III. Solutions Through Structure.- 10. More on Problem Solving.- Section Overview.- Utilizing Information.- Solving Problems with Gestalt Psychology.- Means-End Analysis.- Problem-Solving Factors.- Problem-Solving Behavior.- The Expert.- The Novice.- Summary.- 11. Solving Maintenance Problems.- Understanding the Maintenance Request.- Program Comprehension.- Processing the Code.- Acquiring Program Knowledge.- Context.- Information-Seeking Strategy.- Information-Seeking Tactics.- Modifying the Code.- Summary.- 12. Other Considerations.- Errors and Barriers.- Errors.- Barriers.- More Novice/Expert Differences.- Memory Contents.- Memory Organization.- Memory Processing.- With Respect to Tasks.- Processing and Storage Limitations.- Communications Theory.- Memory Limitations.- Summary.- 13. Cognitive Structures.- Types of Structure.- Overview.- Global Structure.- Spatial Layout of a Routine.- Horizontal Layout.- Vertical Layout.- Instruction Formats.- The Subroutine Call Statement.- The Read Statement.- The Common Statement.- The Arithmetic Statement.- The Conditional Control (IF) Statement.- The Iteration (Do-Loop) Statement.- The Write Statement.- Documentation.- The Traditional Approach.- A New Approach.- Documentation Content.- Documentation Structure.- Summary and Discussion.- Section IV. Implementation and Testing.- 14. Implementing the Solutions.- In the Development Phase.- Specifications.- Design.- Implementation.- Checkout.- In the Maintenance Phase.- The Decision.- The Restoration.- Program Improvements.- Planning.- Assessing Effectiveness.- Summary.- 15. Testing.- Hardware and Software Testing.- Hardware.- Software.- Software Testing Overview.- Static Testing.- Dynamic Testing.- Test Plans.- Life Cycle Testing.- Specifications.- Design.- Implementation.- Checkout.- Maintenance.- Discussion.- Section V. Concluding Remarks.- 16. Concluding Remarks.- Appendices.- Appendix A. The Information Age.- Appendix B. Information Systems.- Hardware.- Software.- Appendix C. Software Failures.- Appendix D. Problem Solving.- Appendix E. Software Science.- Appendix F. Sensory Input Processing.- Appendix G. EATPUT Model of the Vision System.- Appendix H. Classifying Information.- Facts and Opinions.- Theories and Processes.- Appendix I. Naming as a Shortening Process.- Appendix J. Miniature Artificial Languages.- Appendix K. Cognitive Grammar.- Overview.- Sentence Construction.- Appendix L. Gestalt Psychology.