Software Evolution and Maintenance A Practitioner's Approach.
Autor principal: | |
---|---|
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Newark :
John Wiley & Sons, Incorporated,
2014.
|
Colección: | New York Academy of Sciences Ser.
|
Temas: | |
Acceso en línea: | Texto completo |
Tabla de Contenidos:
- Intro
- Software Evolution and Maintenance
- Contents
- Preface
- Who should read this book?
- How should this book be read?
- Notes for instructors
- Acknowledgments
- List of Figures
- List of Tables
- 1 Basic Concepts and Preliminaries
- 1.1 Evolution Versus Maintenance
- 1.1.1 Software Evolution
- 1.1.2 Software Maintenance
- 1.2 Software Evolution Models and Processes
- 1.3 Reengineering
- 1.4 Legacy Systems
- 1.5 Impact Analysis
- 1.6 Refactoring
- 1.7 Program Comprehension
- 1.8 Software Reuse
- 1.9 Outline of The Book
- References
- Exercises
- 2 TAXONOMY OF SOFTWARE MAINTENANCE AND EVOLUTION
- 2.1 General Idea
- 2.1.1 Intention-Based Classification of Software Maintenance
- 2.1.2 Activity-Based Classification of Software Maintenance
- 2.1.3 Evidence-Based Classification of Software Maintenance
- 2.2 Categories of Maintenance Concepts
- 2.2.1 Maintained Product
- 2.2.2 Maintenance Types
- 2.2.3 Maintenance Organization Processes
- 2.2.4 Peopleware
- 2.3 Evolution of Software Systems
- 2.3.1 SPE Taxonomy
- 2.3.2 Laws of Software Evolution
- 2.3.3 Empirical Studies
- 2.3.4 Practical Implications of the Laws
- 2.3.5 Evolution of FOSS Systems
- 2.4 Maintenance of Cots-Based Systems
- 2.4.1 Why Maintenance of CBS Is Difficult?
- 2.4.2 Maintenance Activities for CBSs
- 2.4.3 Design Properties of Component-Based Systems
- 2.5 Summary
- Literature Review
- References
- Exercises
- 3 Evolution and Maintenance Models
- 3.1 General Idea
- 3.2 Reuse-Oriented Model
- 3.3 The Staged Model for Closed Source Software
- 3.4 The Staged Model for Free, Libre, Open Source Software
- 3.5 Change Mini-Cycle Model
- 3.6 IEEE/EIA Maintenance Process
- 3.7 ISO/IEC 14764 Maintenance Process
- 3.8 Software Configuration Management
- 3.8.1 Brief History
- 3.8.2 SCM Spectrum of Functionality
- 3.8.3 SCM Process
- 3.9 CR Workflow
- 3.10 Summary
- Literature Review
- References
- Exercises
- 4 Reengineering
- 4.1 General Idea
- 4.2 Reengineering Concepts
- 4.3 A General Model for Software Reengineering
- 4.3.1 Types of Changes
- 4.3.2 Software Reengineering Strategies
- 4.3.3 Reengineering Variations
- 4.4 Reengineering Process
- 4.4.1 Reengineering Approaches
- 4.4.2 Source Code Reengineering Reference Model
- 4.4.3 Phase Reengineering Model
- 4.5 Code Reverse Engineering
- 4.6 Techniques Used for Reverse Engineering
- 4.6.1 Lexical Analysis
- 4.6.2 Syntactic Analysis
- 4.6.3 Control Flow Analysis
- 4.6.4 Data Flow Analysis
- 4.6.5 Program Slicing
- 4.6.6 Visualization
- 4.6.7 Program Metrics
- 4.7 Decompilation Versus Reverse Engineering
- 4.8 Data Reverse Engineering
- 4.8.1 Data Structure Extraction
- 4.8.2 Data Structure Conceptualization
- 4.9 Reverse Engineering Tools
- 4.10 Summary
- Literature Review
- References
- Exercises
- 5 Legacy Information Systems
- 5.1 General Idea
- 5.2 Wrapping