Muutke küpsiste eelistusi

E-raamat: Estimating Software Costs: Bringing Realism to Estimating

  • Formaat: 644 pages
  • Ilmumisaeg: 10-May-2007
  • Kirjastus: Osborne/McGraw-Hill
  • Keel: eng
  • ISBN-13: 9780071776790
  • Formaat - PDF+DRM
  • Hind: 89,86 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: 644 pages
  • Ilmumisaeg: 10-May-2007
  • Kirjastus: Osborne/McGraw-Hill
  • Keel: eng
  • ISBN-13: 9780071776790

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

Publisher's Note: Products purchased from Third Party sellers are not guaranteed by the publisher for quality, authenticity, or access to any online entitlements included with the product.







Deliver bug-free software projects on schedule and within budget

Get a clear, complete understanding of how to estimate software costs, schedules, and quality using the real-world information contained in this comprehensive volume. Find out how to choose the correct hardware and software tools, develop an appraisal strategy, deploy tests and prototypes, and produce accurate software cost estimates. Plus, you'll get full coverage of cutting-edge estimating approaches using Java, object-oriented methods, and reusable components.





Plan for and execute project-, phase-, and activity-level cost estimations

Estimate regression, component, integration, and stress tests

Compensate for inaccuracies in data collection, calculation, and analysis

Assess software deliverables and data complexity

Test design principles and operational characteristics using software prototyping

Handle configuration change, research, quality control, and documentation costs 



"Capers Jones' work offers a unique contribution to the understanding of the economics of software production. It provides deep insights into why our advances in computing are not matched with corresponding improvements in the software that drives it. This book is absolutely required reading for an understanding of the limitations of our technological advances." --Paul A. Strassmann, former CIO of Xerox, the Department of Defense, and NASA
Foreword xv
Preface xix
Acknowledgments xxv
SECTION 1 INTRODUCTION TO SOFTWARE COST ESTIMATION
Chapter
1. Introduction
3
How Software Cost-Estimating Tools Work
4
Cautions About Accidental Omissions from Estimates
15
Software Cost Estimating and Other Development Activities
17
References
20
Chapter
2. The Origins of Software Cost Estimation
23
The Early History of Software Cost Estimation
24
The Expansion and Use of Functional Metrics for Software Cost Estimating
28
References
32
Chapter
3. Six Forms of Software Cost Estimation
33
Overview of Manual Software-Estimating Methods
34
Overview of Automated Software-Estimating Methods
36
Comparison of Manual and Automated Estimates for Large Software Projects
48
References
49
Chapter
4. Software Cost-Estimating Tools and Project Success and Failure Rates
53
Probabilities of Software Project Success or Failure
55
References
59
Chapter
5. Sources of Error in Software Cost Estimation
61
Judging the Accuracy of Software Cost Estimates
65
Classes of Software Estimation Errors
68
References
86
SECTION 2 PRELIMINARY ESTIMATION METHODS
Chapter
6. Manual Software-Estimating Methods
91
Rules of Thumb Based on Lines-of-Code Metrics
92
Rules of Thumb Based on Ratios and Percentages
95
Rules of Thumb Based on Function Point Metrics
99
Function Point Sizing Rules of Thumb
102
Rules of Thumb for Schedules, Resources, and Costs
117
Rules of Thumb Using Activity-Based Cost Analysis
121
Summary and Conclusions
127
References
128
Chapter
7. Manual Estimating Methods Derived from Agile Projects and New Environments
131
Metrics Used for Rules of Thumb
135
Rules of Thumb for Manual Software Cost Estimates
140
Component-Based Development
143
Dynamic System Development Method (DSDM)
146
Enterprise Resource Planning (ERP) Deployment
148
Extreme Programming (XP)
152
International Outsourcing
155
Object-Oriented (00) Development
159
Capability Maturity Model (CMM)
162
Software Methods with Only Partial Rules of Thumb
167
Cleanroom Development
167
Crystal Development Approach
168
Feature-Driven Development (FDD)
168
ISO 9000-9004 Quality Standards
169
Iterative or Incremental Development
169
Pattern-Based Software Development
171
Quality Function Deployment (QFD)
174
Rapid Application Development (RAD)
175
Scrum
176
six-sigma for Software
177
Spiral Software Development
179
Unified Modeling Language (UML)
180
Use Cases for Software Requirements
181
Web-Based Applications
183
Summary and Conclusions
185
References
185
Chapter
8. Automated Estimates from Minimal Data
189
Stage 1: Recording Administrative and Project Information
190
Stage 2: Preliminary Sizing of Key Deliverables
203
Stage 3: Producing a Preliminary Cost Estimate
219
Summary and Conclusions
224
References
225
SECTION 3 SIZING SOFTWARE DELIVERABLES
Chapter
9. Sizing Software Deliverables
229
General Sizing Logic for Key Deliverables
229
Sizing Methods Circa 2007
230
Pattern Matching from Historical Data
232
Using Historical Data to Predict Growth in Requirements
233
Mathematical or Statistical Attempts to Extrapolate Size from Partial Requirements
234
Arbitrary Rules of Thumb for Adding Contingency Factors
235
Freezing Requirements at Fixed Points in Time
236
Producing Formal Cost Estimates Only for Subsets of the Total Application
237
Volume of Function Point Data Available
245
Software Complexity Analysis
247
Software Sizing with Reusable Components
258
Overview of the Basic Forms of Software Sizing Metrics
260
Source Code Sizing
269
Sizing Object-Oriented Software Projects
275
Sizing Text-Based Paper Documents
277
Sizing Graphics and Illustrations
283
Sizing Bugs or Defects
286
Sizing Test Cases
293
The Event Horizon for Sizing Software Artifacts
295
What Is Known as a Result of Sizing Software Projects
297
Strengths and Weaknesses of Software Size Metrics
299
Summary and Conclusions
301
References
302
SECTION 4 COST-ESTIMATING ADJUSTMENT FACTORS
Chapter
10. Compensation and Work-Pattern Adjustments
307
Manual and Automated Methods of Adjustment
308
Exclusions from Normal Software Cost Estimates
310
Setting Up the Initial Conditions for a Cost Estimate
313
Variations in Burden Rates or Overhead Costs
316
Variations in Work Habits and Unpaid Overtime
318
References
324
Chapter
11. Activity Pattern Adjustment Factors
325
Twenty Five Common Activities for Software Projects
326
References
332
Chapter
12. Software Technology Adjustment Factors
335
Adjustment Factors and Macro-Estimation Tools
336
Factors That Influence Software Development Productivity
340
Factors That Influence Software Maintenance Productivity
343
Patterns of Positive and Negative Factors
345
Adjustment Factors and Micro-Estimating Tools
347
References
362
SECTION 5 ACTIVITY-BASED SOFTWARE COST ESTIMATING
Chapter
13. Estimating Software Requirements
367
Function Points and Software Requirements
374
Primary Topics for Software Requirements
381
Secondary Topics for Software Requirements
382
Positive and Negative Requirements Adjustment Factors
383
Requirements and End-User Software
386
Requirements and Agile Applications
386
Requirements and Management Information Systems (MIS) Projects
386
Requirements and Outsourced Projects
387
Requirements and Systems Software
387
Requirements and Commercial Software
388
Requirements and Military Software Projects
389
Requirements and Web-Based Applications
390
Evaluating Combinations of Requirements Factors
390
References
393
Chapter
14. Estimating Software Prototypes
395
Disposable Prototypes
398
Time box Prototypes
398
Evolutionary Prototypes
400
Default Values for Estimating Disposable Prototypes
402
Positive and Negative Factors That Influence Software Prototypes
404
References
407
Chapter
15. Estimating Software Specifications and Design
409
Positive Design Adjustment Factors
414
Negative Design Adjustment Factors
415
References
418
Chapter
16. Estimating Design Inspections
421
Inspection Literature
421
Inspection Process
423
Value of Inspections
426
References
432
Chapter
17. Estimating Programming or Coding
435
The Impact of Reusability on Programming
442
The Impact of Experience on Programming
444
The Impact of Bugs or Errors on Programming
444
The Impact of Unpaid Overtime on Programming
446
The Impact of Creeping Requirements on Programming
448
The Impact of Code Structure and Complexity on Programming
449
The Impact of Unplanned Interruptions on Programming
450
The Impact of Application Size on Programming
451
The Impact of Office Space and Ergonomics on Programming
452
The Impact of Tools on Programming
454
The Impact of Programming Languages on Programming
455
The Impact of Schedule Pressure on Programming
459
References
459
Chapter
18. Estimating Code Inspections
461
Code Inspection Literature
461
Effectiveness of Code Inspections
462
Considerations for Estimating Code Inspections
466
References
470
Chapter
19. Estimating Software Configuration Control and Change Management
471
The Literature on Change Management
473
Measuring Software Change
475
Changes in User Requirements
479
Changes in Specifications and Design
480
Changes Due to Bugs or Defect Reports
481
Summary and Conclusions
482
References
483
Chapter
20. Estimating Software Testing
485
General Forms of Software Testing
491
Specialized Forms of Software Testing
495
Forms of Testing Involving Users or Clients
498
Number of Testing Stages
499
Testing Pattern Variations by Industry and Type of Software
501
Testing Pattern Variations by Size of Application
503
Testing Stages Noted in Lawsuits Alleging Poor Quality
504
Using Function Points to Estimate Test-Case Volumes
505
Using Function Points to Estimate the Numbers of Test Personnel
507
Testing and Defect-Removal Efficiency Levels
508
Using Function Points to Estimate Testing Effort and Costs
510
Testing by Developers or by Professional Test Personnel
512
Test Case Coverage
514
The Factors That Affect Testing Performance
514
References
515
Chapter
21. Estimating User and Project Documentation
519
Estimating Tools and Software Documentation
521
Quantifying the Number and Sizes of Software Document Types
523
Software Documentation Tools on Lagging and Leading Projects
527
References
529
Chapter
22. Estimating Software Project Management
531
The Roles of Software Project Management
535
Project Managers Who Are Also Technical Contributors
537
Project Management for Hybrid Projects Involving Hardware and Software
538
Project Management and External Schedule Pressures
538
Project Management Tools
539
Project Management on Large Systems with Many Managers
542
Time-Splitting, or Managing Several Projects Simultaneously
544
The Span of Control, or Number of Staff Members per Manager
545
Managing Multiple Occupation Groups
546
The Presence or Absence of Project Offices for Large Systems
548
Experience Levels of Software Project Managers
549
Quality-Control Methods Selected by Project Managers
550
Project Managers and Metrics
551
Summary of Project Management Findings
551
References
551
SECTION 6 MAINTENANCE AND ENHANCEMENT COST ESTIMATING
Chapter
23. Maintenance and Enhancement Estimating
557
Nominal Default Values for Maintenance and Enhancement Activities
562
Metrics and Measurement Problems with Small Maintenance Projects
566
Best and Worst Practices in Software Maintenance
567
Software Entropy and Total Cost of Ownership
570
Installing New Releases and Patches from Software Vendors
572
Major Enhancements
573
Minor Enhancements
574
Maintenance (Defect Repairs)
576
Warranty Repairs
581
Customer Support
581
Economics of Error-Prone Modules
582
Mandatory Changes
584
Complexity Analysis
585
Code Restructuring and Refactoring
586
Performance Optimization
588
Migration Across Platforms
588
Conversion to New Architectures
589
Reverse Engineering
589
Re-engineering
590
Dead Code Removal
590
Dormant Application Removal
591
Nationalization
591
Mass Update Projects
592
Retirement or Withdrawal of Applications
593
Field Service
594
Combinations and Concurrent Maintenance Operations
594
References
599
Chapter
24. Software Cost-Estimating Research Issues
603
Metrics Conversion
604
Automatic Sizing from User Requirements
606
Activity-Based Costs for Agile, Object-Oriented, and Web Projects
608
Complexity Analysis of Software Applications
610
Value Analysis of Software Applications
611
Risk Analysis and Software Cost Estimates
613
Including Specialists in Software Cost Estimates
615
Reuse Analysis and Software Cost Estimates
617
Process Improvement Estimation
622
Methodology Analysis and Software Cost Estimating
625
Summary and Conclusions About Software Cost-Estimating Research
629
Index 631


McGraw-Hill authors represent the leading experts in their fields and are dedicated to improving the lives, careers, and interests of readers worldwide