Table of contents for Software engineering fundamentals / Ali Behforooz, Frederick J. Hudson.


Bibliographic record and links to related information available from the Library of Congress catalog


Information from electronic data provided by the publisher. May be incomplete or contain other coding.


Counter
Unit One: Introduction
1. Overview of System and Software Development Life Cycles
1.0. Objectives
1.1. Introduction
1.2. System: Definition and Discussion
1.3. System Level Project Planning
1.4. System Development Life Cycle Definition and Overview
1.5. Software Development Life Cycle: A Brief Overview
1.6. SWDLC Models
1.7. The Software Engineering Process
1.8. Some General Observations on SDLC and SWDLC
1.9. Chapter Summary
1.10. Exercises
2. Case Studies
2.0. Objectives
2.1. Introduction
2.2. Case Study Problem Statements
2.3. The XYZ Project: Analysis
2.4. The Bidder Perspective
2.5. Chapter Summary
2.6. Exercises
3. Technical Planning
3.0. Objectives
3.1. Introduction
3.2. Software Development Planning
3.3. The Use of SDP as a Management Tool
3.4. Attribute (Metrics) Estimation
3.5. Automated Planning Tools
3.6. Management, Methodology and Metrics
3.7. Chapter Summary
3.8. Unit One Summary
3.9. Exercises
Unit Two: Analysis and Design
4. Software Specifications and Requirement Analysis
4.0. Objectives
4.1. Introduction
4.2. People Involved in the Software Development Process
4.3. Software Requirements Specification (SRS)
4.4. Examples of SRS Preparation
4.5. Other Software Specification Documents
4.6. Software Specification Attributes
4.7. Chapter Summary
4.8. Exercies
5. Software Specification Tools
5.0. Objectives
5.1. Introduction
5.2. Data Dictionary
5.3. Decision Support Tools
5.4. Data Flow Diagrams
5.5. Finite State Machines
5.6. Petri Nets
5.7. Mathematical Logic
5.8. Operational Timelines
5.9. Chapter Summary
5.10. Exercises
6. Software Development Environment
6.0. Objectives
6.1. Introduction
6.2. Software Development Environment Configuration
6.3. Software Development Platform (SDPF)
6.4. Computer-Aided Software Engineering Tools
6.5. An Ideal Software Development Platform
6.6. Chapter Summary
6.7. Exercises
7. Software Design
7.0. Objectives
7.1. Introduction
7.2. An Overview of the Software Design Process
7.3. Software Design
7.4. A Design Example
7.5. Chapter Summary
7.6. Exercises
8. Object-Oriented Analysis and Design
8.0. Objectives
8.1. Introduction
8.2. Object-Oriented Paradigm
8.3. Basic Definitions and Symbols
8.4. Object-Oriented Analysis
8.5. Object-Oriented Design
8.6. Chapter Summary
8.7. Exercises
Unit Three: Implementation and Maintenance
9. Fundamentals of Coding
9.0. Objectives
9.1. Introduction
9.2. Programming Languages
9.3. Programming Style and Program Quality
9.4. A Programming Example
9.5. Chapter Summary
9.6. Exercises
10. Software System Test and Integration
10.0. Objectives
10.1. Introduction
10.2. Basic Concepts in Testing
10.3. An Overview of System and Software Test and Integration
10.4. The Incremental Build of Modules into Systems
10.5. Test and Integration Plan
10.7. Perspective on Build Testing
10.8. Alpha and Beta Testing
10.9. Chapter Summary
10.10. Exercises
11. Module Level Testing
11.0. Objectives
11.1. Introduction
11.2. Module Test Planning
11.3. Static Testing
11.4. Dynamic Testing
11.5. Test Case Execution
11.6. Formal Testing
11.7. Perspective on Module Testing
11.8. Chapter Summary
11.9. Exercises
12. Debugging
12.0. Objectives
12.1. Introduction
12.2. Program Errors
12.3. The Debugging Process
12.4. Perspectives on Debugging
12.5. Debugging Tools
12.6. An Example
12.7. Chapter Summary
12.8. Exercises
13. Software Maintenance and Maintainability
13.0. Objectives
13.1. Introduction
13.2. Software Maintenance
13.3. Software Maintenance Process
13.4. Maintenance Resource Estimation
13.5. Directly Specified Maintenace Attributes
13.6. Reverse Engineering
13.7. Re-engineering a Software Product
13.8. Chapter Summary
13.9. Exercises
Unit Four: Software Metrics or Attributes
14. Software Attributes and Their Estimation
14.0. Objectives
14.1. Introduction
14.2. Identification Related Attributes
14.3. Size Related Attributes
14.4. Design and Development Attributes
14.5. Software Quality Attributes
14.6. Complexity Related Attributes
14.7. Execution Time Related Attributes
14.8. Test Related Attributes
14.9. Documentation Related Attributes
14.10. Performance Related Attributes
14.11. Labor Related Attributes
14.12. Operating Environment Attributes
14.13. Data Collection
14.14. Chapter Summary
14.15. Exercises
15. Software Developement Resource Estimation
15.0. Objectives
15.1. Introduction
15.2. Software Product Cost and Schedule Estimation
15.3. Cost and Schedule Estimation Models
15.4. Grass Roots Resource and Schedule Estimation
15.5. An Example of Schedule Development
15.6. Closing Comments
15.7. Chapter Summary
15.8. Exercises
16. Software Development Risk Assessment and Containment
16.0. Objectives
16.1. Introduction
16.2. Software Development Risk Areas
16.3. The Risk Model
16.4. Risk Containment and Risk Management
16.5. Technical Performance Management
16.6. Examples to Illustrate Software Development Risk Analysis
16.7. Chapter Summary
16.8. Exercises
17. Reliability
17.0. Objectives
17.1. Introduction
17.2. Overview
17.3. Review of Probability Theory
17.4. Reliability Definitions
17.5. Reliability Models
17.6. Software Faults
17.7. Design Rules
17.8. System Reliability and Availability
17.9. Applications of a Software Reliability Model
17.10. Redundancy and Fault Tolerance
17.11. Failure Modes and Effects and Other Analysis Tools
17.12. Chapter Summary
17.13. Exercises
18. Software Quality and Quality Assurance
18.0. Objectives
18.1. Introduction
18.2. Software Quality Assurance Planning
18.3. Software Quality Assurance Process
18.4. Software Quality Attributes
18.5. Guidelines and Checklists
18.6. Software Safety
18.7. Chapter Summary
18.8. Exercises
Unit Five: Special Topics
19. Real-Time Software
19.0. Objectives
19.1. Introduction
19.2. Real-Time Requirements Specification
19.3. Design Guidlines for Real-Time Software
19.4. Schedulability Concerns
19.5. Testing Real-Time Software
19.6. Chapter Summary
19.7. Exercises
20. Human Factors in Software Engineering
20.0. Objectives
20.1. Introduction
20.2. Human Factors History
20.3. HCI Requirements and Design Process
20.4. The Human as an Information System Component
20.5. Operator Task Development
20.6. Operator Characteristics
20.7. Chapter Summary
20.8. Exercises
Appendix A. Communication Skills
Appendix B. Cost Benefit Analysis
Appendix C. Decisions and Trade-Offs
Appendix D. Reviews



Library of Congress subject headings for this publication:
Software engineering.