An integrated approach to software engineering
By: Pankaj Jalote.
Edition: 2nd ed.
Series: Undergraduate texts in computer science
Publisher: Springer
Published: 1997
Place of publication: New York
Language: eng
Number of pages: 497
Subjects: Software engineeering
Notes: Includes bibliographical references (p. [481]-488) and index.
Table of contents: title: Preface to the Second Edition
pagenum: v; title: Preface to the First Edition
pagenum: vii; label: 1
title: Introduction
pagenum: 1; label: 1.1
title: The Software Problem
pagenum: 2; label: 1.1.1
title: Software Is Expensive
pagenum: 3; label: 1.1.2
title: Late, Costly, and Unreliable
pagenum: 4; label: 1.1.3
title: Problem of Change and Rework
pagenum: 5; label: 1.2
title: Software Engineering Problem
pagenum: 7; label: 1.2.1
title: The Problem of Scale
pagenum: 8; label: 1.2.2
title: Cost, Schedule, and Quality
pagenum: 10; label: 1.2.3
title: The Problem of Consistency
pagenum: 12; label: 1.3
title: The Software Engineering Approach
pagenum: 13; label: 1.3.1
title: Phased Development Process
pagenum: 13; label: 1.3.2
title: Project Management and Metrics
pagenum: 17; label: 1.4
title: Summary
pagenum: 19; label: 1.5
title: Overview of the Book
pagenum: 19; title: Exercises
pagenum: 21; label: 2
title: Software Processes
pagenum: 23; label: 2.1
title: Software Process
pagenum: 23; label: 2.1.1
title: Processes, Projects, and Products
pagenum: 24; label: 2.1.2
title: Component Software Processes
pagenum: 25; label: 2.2
title: Characteristics of a Software Process
pagenum: 28; label: 2.2.1
title: Predictability
pagenum: 28; label: 2.2.2
title: Support Testability and Maintainability
pagenum: 30; label: 2.2.3
title: Early Defect Removal and Defect Prevention
pagenum: 32; label: 2.2.4
title: Process Improvement
pagenum: 33; label: 2.3
title: Software Development Process
pagenum: 34; label: 2.3.1
title: A Process Step Specification
pagenum: 34; label: 2.3.2
title: Waterfall Model
pagenum: 36; label: 2.3.3
title: Prototyping
pagenum: 40; label: 2.3.4
title: Iterative Enhancement
pagenum: 43; label: 2.3.5
title: The Spiral Model
pagenum: 44; label: 2.4
title: Project Management Process
pagenum: 46; label: 2.4.1
title: Phases of Management Process
pagenum: 47; label: 2.4.2
title: Metrics, Measurement, and Models
pagenum: 49; label: 2.5
title: Software Configuration Management Process
pagenum: 51; label: 2.5.1
title: Configuration Identification
pagenum: 53; label: 2.5.2
title: Change Control
pagenum: 55; label: 2.5.3
title: Status Accounting and Auditing
pagenum: 58; label: 2.6
title: Process Management Process
pagenum: 59; label: 2.6.1
title: Building Estimation Models
pagenum: 59; label: 2.6.2
title: Process Improvement and Maturity
pagenum: 63; label: 2.7
title: Summary
pagenum: 69; title: Exercises
pagenum: 70; label: 3
title: Software Requirements Analysis and Specification
pagenum: 73; label: 3.1
title: Software Requirements
pagenum: 74; label: 3.1.1
title: Need for SRS
pagenum: 75; label: 3.1.2
title: Requirement Process
pagenum: 79; label: 3.2
title: Problem Analysis
pagenum: 83; label: 3.2.1
title: Analysis Issues
pagenum: 84; label: 3.2.2
title: Informal Approach
pagenum: 87; label: 3.2.3
title: Structured Analysis
pagenum: 87; label: 3.2.4
title: Object-Oriented Modeling
pagenum: 98; label: 3.2.5
title: Other Modeling Approaches
pagenum: 107; label: 3.2.6
title: Prototyping
pagenum: 115; label: 3.3
title: Requirements Specification
pagenum: 120; label: 3.3.1
title: Characteristics of an SRS
pagenum: 121; label: 3.3.2
title: Components of an SRS
pagenum: 123; label: 3.3.3
title: Specification Languages
pagenum: 126; label: 3.3.4
title: Structure of a Requirements Document
pagenum: 130; label: 3.4
title: Validation
pagenum: 133; label: 3.4.1
title: Requirement Reviews
pagenum: 134; label: 3.4.2
title: Other Methods
pagenum: 136; label: 3.5
title: Metrics
pagenum: 137; label: 3.5.1
title: Size Measures
pagenum: 138; label: 3.5.2
title: Quality Metrics
pagenum: 143; label: 3.6
title: Summary
pagenum: 146; title: Exercises
pagenum: 147; title: Case Study
pagenum: 150; label: 4
title: Planning a Software Project
pagenum: 159; label: 4.1
title: Cost Estimation
pagenum: 160; label: 4.1.1
title: Uncertainties in Cost Estimation
pagenum: 161; label: 4.1.2
title: Building Cost Estimation Models
pagenum: 163; label: 4.1.3
title: On Size Estimation
pagenum: 165; label: 4.1.4
title: COCOMO Model
pagenum: 166; label: 4.1.5
title: An Example
pagenum: 169; label: 4.2
title: Project Scheduling
pagenum: 170; label: 4.2.1
title: Average Duration Estimation
pagenum: 171; label: 4.2.2
title: Project Scheduling and Milestones
pagenum: 172; label: 4.2.3
title: Example Continued
pagenum: 173; label: 4.3
title: Staffing and Personnel Planning
pagenum: 173; label: 4.3.1
title: Rayleigh Curve
pagenum: 174; label: 4.3.2
title: Personnel Plan
pagenum: 176; label: 4.3.3
title: Example Continued
pagenum: 176; label: 4.3.4
title: Team Structure
pagenum: 178; label: 4.4
title: Software Configuration Management Plans
pagenum: 179; label: 4.5
title: Quality Assurance Plans
pagenum: 180; label: 4.5.1
title: Verification and Validation (V&V)
pagenum: 181; label: 4.5.2
title: Inspections and Reviews
pagenum: 183; label: 4.6
title: Project Monitoring Plans
pagenum: 189; label: 4.6.1
title: Time Sheets
pagenum: 189; label: 4.6.2
title: Reviews
pagenum: 190; label: 4.6.3
title: Cost-Schedule-Milestone Graph
pagenum: 190; label: 4.6.4
title: Earned Value Method
pagenum: 191; label: 4.6.5
title: Unit Development Folder
pagenum: 192; label: 4.7
title: Risk Management
pagenum: 193; label: 4.7.1
title: Risk Management Overview
pagenum: 194; label: 4.7.2
title: Risk Assessment
pagenum: 196; label: 4.7.3
title: Risk Control
pagenum: 200; label: 4.8
title: Summary
pagenum: 201; title: Exercises
pagenum: 202; title: Case Study Plan
pagenum: 204; label: 5
title: Function-Oriented Design
pagenum: 209; label: 5.1
title: Design Principles
pagenum: 211; label: 5.1.1
title: Problem Partitioning and Hierarchy
pagenum: 212; label: 5.1.2
title: Abstraction
pagenum: 214; label: 5.1.3
title: Modularity
pagenum: 215; label: 5.1.4
title: Top-Down and Bottom-Up Strategies
pagenum: 215; label: 5.2
title: Module-Level Concepts
pagenum: 217; label: 5.2.1
title: Coupling
pagenum: 217; label: 5.2.2
title: Cohesion
pagenum: 218; label: 5.3
title: Design Notation and Specification
pagenum: 221; label: 5.3.1
title: Structure Charts
pagenum: 222; label: 5.3.2
title: Specification
pagenum: 226; label: 5.4
title: Structured Design Methodology
pagenum: 227; label: 5.4.1
title: Restate the Problem as a Data Flow Diagram
pagenum: 228; label: 5.4.2
title: Identify the Most Abstract Input and Output Data Elements
pagenum: 230; label: 5.4.3
title: First-Level Factoring
pagenum: 231; label: 5.4.4
title: Factoring the Input, Output, and Transform Branches
pagenum: 233; label: 5.4.5
title: Design Heuristics
pagenum: 235; label: 5.4.6
title: Transaction Analysis
pagenum: 236; label: 5.4.7
title: Discussion
pagenum: 238; label: 5.5
title: Verification
pagenum: 240; label: 5.5.1
title: Design Reviews
pagenum: 240; label: 5.5.2
title: Automated Cross-Checking
pagenum: 241; label: 5.6
title: Metrics
pagenum: 242; label: 5.6.1
title: Network Metrics
pagenum: 243; label: 5.6.2
title: Stability Metrics
pagenum: 244; label: 5.6.3
title: Information Flow Metrics
pagenum: 247; label: 5.7
title: Summary
pagenum: 249; title: Exercises
pagenum: 251; title: Case Study
pagenum: 253; label: 6
title: Object-Oriented Design
pagenum: 273; label: 6.1
title: OO Analysis and OO Design
pagenum: 274; label: 6.2
title: Concepts
pagenum: 276; label: 6.2.1
title: Classes and Objects
pagenum: 277; label: 6.2.2
title: Relationships Among Objects
pagenum: 282; label: 6.2.3
title: Inheritance and Polymorphism
pagenum: 284; label: 6.2.4
title: Design Concepts
pagenum: 291; label: 6.3
title: Design Notation and Specification
pagenum: 294; label: 6.4
title: Design Methodology
pagenum: 296; label: 6.4.1
title: Dynamic Modeling
pagenum: 298; label: 6.4.2
title: Functional Modeling
pagenum: 301; label: 6.4.3
title: Defining Internal Classes and Operations
pagenum: 302; label: 6.4.4
title: Optimize and Package
pagenum: 302; label: 6.4.5
title: Examples
pagenum: 304; label: 6.5
title: Metrics
pagenum: 311; label: 6.6
title: Summary
pagenum: 315; title: Exercises
pagenum: 316; title: Case Study
pagenum: 318; label: 7
title: Detailed Design
pagenum: 329; label: 7.1
title: Module Specifications
pagenum: 330; label: 7.1.1
title: Specifying Functional Modules
pagenum: 331; label: 7.1.2
title: Specifying Classes
pagenum: 332; label: 7.2
title: Detailed Design
pagenum: 336; label: 7.2.1
title: PDL
pagenum: 337; label: 7.2.2
title: Logic/Algorithm Design
pagenum: 340; label: 7.2.3
title: State Modeling of Classes
pagenum: 343; label: 7.3
title: Verification
pagenum: 345; label: 7.3.1
title: Design Walkthroughs
pagenum: 345; label: 7.3.2
title: Critical Design Review
pagenum: 345; label: 7.3.3
title: Consistency Checkers
pagenum: 347; label: 7.4
title: Metrics
pagenum: 347; label: 7.4.1
title: Cyclomatic Complexity
pagenum: 348; label: 7.4.2
title: Data Bindings
pagenum: 350; label: 7.4.3
title: Cohesion Metric
pagenum: 351; label: 7.5
title: Summary
pagenum: 352; title: Exercises
pagenum: 353; label: 8
title: Coding
pagenum: 355; label: 8.1
title: Programming Practice
pagenum: 356; label: 8.1.1
title: Top-Down and Bottom-Up
pagenum: 357; label: 8.1.2
title: Structured Programming
pagenum: 358; label: 8.1.3
title: Information Hiding
pagenum: 361; label: 8.1.4
title: Programming Style
pagenum: 363; label: 8.1.5
title: Internal Documentation
pagenum: 366; label: 8.1.6
title: Law of Demeter for OO Programs
pagenum: 366; label: 8.2
title: Verification
pagenum: 369; label: 8.2.1
title: Code Reading
pagenum: 369; label: 8.2.2
title: Static Analysis
pagenum: 370; label: 8.2.3
title: Symbolic Execution
pagenum: 373; label: 8.2.4
title: Proving Correctness
pagenum: 378; label: 8.2.5
title: Code Inspections or Reviews
pagenum: 384; label: 8.2.6
title: Unit Testing
pagenum: 386; label: 8.3
title: Metrics
pagenum: 386; label: 8.3.1
title: Size Measures
pagenum: 386; label: 8.3.2
title: Complexity Metrics
pagenum: 388; label: 8.3.3
title: Style Metrics
pagenum: 391; label: 8.4
title: Summary
pagenum: 393; title: Exercises
pagenum: 395; title: Case Study
pagenum: 398; label: 9
title: Testing
pagenum: 403; label: 9.1
title: Testing Fundamentals
pagenum: 404; label: 9.1.1
title: Error, Fault, and Failure
pagenum: 404; label: 9.1.2
title: Test Oracles
pagenum: 405; label: 9.1.3
title: Top-Down and Bottom-Up Approaches
pagenum: 407; label: 9.1.4
title: Test Cases and Test Criteria
pagenum: 408; label: 9.1.5
title: Psychology of Testing
pagenum: 412; label: 9.2
title: Functional Testing
pagenum: 412; label: 9.2.1
title: Equivalence Class Partitioning
pagenum: 413; label: 9.2.2
title: Boundary Value Analysis
pagenum: 414; label: 9.2.3
title: Cause-Effect Graphing
pagenum: 415; label: 9.2.4
title: Special Cases
pagenum: 418; label: 9.3
title: Structural Testing
pagenum: 419; label: 9.3.1
title: Control Flow-Based Criteria
pagenum: 419; label: 9.3.2
title: Data Flow-Based Testing
pagenum: 422; label: 9.3.3
title: An Example
pagenum: 425; label: 9.3.4
title: Mutation Testing
pagenum: 428; label: 9.3.5
title: Test Case Generation and Tool Support
pagenum: 431; label: 9.4
title: Testing Object-Oriented Programs
pagenum: 434; label: 9.4.1
title: Issues in Testing Classes
pagenum: 435; label: 9.4.2
title: State-Based Testing
pagenum: 436; label: 9.4.3
title: Incremental Testing for Subclasses
pagenum: 440; label: 9.5
title: Testing Process
pagenum: 442; label: 9.5.1
title: Comparison of Different Techniques
pagenum: 443; label: 9.5.2
title: Levels of Testing
pagenum: 445; label: 9.5.3
title: Test Plan
pagenum: 447; label: 9.5.4
title: Test Case Specifications
pagenum: 449; label: 9.5.5
title: Test Case Execution and Analysis
pagenum: 450; label: 9.6
title: Metrics-Reliability Estimation
pagenum: 453; label: 9.6.1
title: Basic Concepts and Definitions
pagenum: 454; label: 9.6.2
title: Musa's Basic Model
pagenum: 457; label: 9.6.3
title: Failure Data and Parameter Estimation
pagenum: 461; label: 9.6.4
title: Translating to Calendar Time
pagenum: 464; label: 9.6.5
title: An Example
pagenum: 466; label: 9.7
title: Summary
pagenum: 467; title: Exercises
pagenum: 468; title: Case Study
pagenum: 472; title: References
pagenum: 481; title: Index
pagenum: 489