INDEX. As-is analysis, tool supporting, 302 Attributes, FPA, Availability, software contract requirement, 258

Size: px
Start display at page:

Download "INDEX. As-is analysis, tool supporting, 302 Attributes, FPA, Availability, software contract requirement, 258"

Transcription

1 INDEX A Acceptance test phase, 200 Actual Effort (Person Hours), as estimation unit, 16 ADD (Added FP), 185, 188 Add elementary process, 79 Agile software projects case study, complex issues in, project milestones in, Albrecht, Allan, 52 55, Algorithm-based estimation approach, Analogy-based estimation approach, 278 Application maintenance contracts, Application servers, 140 Applications change management in, components of, estimating total cost of ownership, estimation case study. See Invoicing system case study functional and non-functional requirements of, of insourcing IT environment, 235 maintenance contracts for, in outsourcing IT environment, 237 scope and boundary of, Arbitrary guesstimates, 226 Architecture, IT, 257 estimating efforts and costs, overview of, role of architect in project execution process, 257 As-is analysis, tool supporting, 302 Attributes, FPA, Availability, software contract requirement, 258 B Back tier, in IT architecture, 140 Big bang approach, in software contract, 258 Boehm, Barry, 282, Bottom-up estimation approach defining, 278 overview of, 283 Simple, Medium, and Complex method, Boundaries, 57, Bradley, Bill, Budget estimates manipulating project costs, outsourcing, vs. insourcing, 239, project approval phase, project contract phase, in truncated/partial projects, 261 using flexible contracts for limited, Bug fixes estimating FP count for, found only during final testing phase, 212 impacting maintenance projects, 183, 253 Build phase complex issues in, 199 in failed dream project, 5 impacting project costs,

2 374 Index Business functions in development projects, in engineering projects, 178 in estimation case study, 308, 315 as functional requirements, identifying entities, 309, outsourcing estimate process, 241 in reengineering projects, 180 user view of, user view vs. developer view, C Calibration tools, 301 Capacity, as non-functional requirement, 123 Capturing process, for requirements, 268 Case studies agile software projects, application maintenance contracts, 254 counting ILF/EIF of invoicing application, estimation case studies, Invoicing system. See Invoicing system case study Certified Function Point Specialist (CFPS), IFPUG, 59 CFPS (Certified Function Point Specialist), 59 CFPs (conversion function points), , , 188 Cfsu (COSMIC Function Size Unit), 290 Change management defined, 222 in fixed price contracts, 251 modifying scope estimates, 62 CHGA (Changed FP), , 188 COCOMO II (COnstructive COst MOdel), , 292 Coding stage, 190, 207 Common Off The Shelf (COTS) products, 20 Communication paths, team size vs., Complex Processing GSC overview of, Quality of Service mapping and, technology platforms and, 143, 145 Complex projects, estimating, 43 Complexity EIF and ILF, EO, EI and EQ, estimation and measurement, FP count contributions and, 86 88, general system characteristics. See GSC (General System Characteristics), guidelines requests for service, Constraints as non-functional requirements, 123 tools for identifying, 301 COnstructive COst MOdel (COCOMO II), , 292 Construx Estimate tool, 303 Continuous improvement cycle of insourcing IT environment, 236 monitoring estimation methods with, 211 overview of, Contracts. See Software contracts Control information, 77 78, 106 Conversion FP (CFP), 186, 188 Conversion function points. See CFPs (conversion function points) COSMIC (Common Software Measurement International Consortium), 288 COSMIC Function Size Unit (Cfsu), 290 Cosmic Measurement Manual, 291 COSMIC-FFP (Full Function Points) estimation method, Cost matrix, developing, Cost Xpert estimation tool, 303 Costar estimation tool, 303 Costs. See Budget estimates; Project costs, estimating COTS (Common Off The Shelf) products, 20 CPM (Counting Practices Manual) classifying data files, 74 classifying data functions, classifying FPA process, 58 59, CRUD (Create, Read, Update, and Delete) operations, 56,

3 Index 375 Customers. See Users (customers) Customizable estimation tools, D Data analysis estimation tools, 301 Data Communications GSC high-performing technology and, 141 overview of, Quality of Service mapping and, Data Element Type. See DET (Data Element Type) counts Data elements, defined, 66 Data files, Data functions, complexity and FP counting, defined by IFPUG, embedded terms for, identifying, in case study, 310, , ILF vs. EIF, ILF/EIF, counting (case study), ILF/EIF, determining complexity, ILF/EIF, identifying, 80 81, overview of, reference tables, references on, 96 tips for, 88 Data items, , Data movements, COSMIC-FPP method, Defect Density, Degree of Influence. See DI (Degree of Influence) DEL (Delete FP), 186, 188 Delete elementary process, 80 Delivery schedules contract negotiations, , 256 evaluation traps, invoicing system case study, 349 measuring input, 162 obtaining in FP counting process, 312 overview of, 159 productivity and, DeMarco, Tom, 21 Design phase complex issues in, 199 contract negotiations in, 206 failed dream project, 4, 206 impacting project costs, parameters to consider in, performance requirements addressed in, DET (Data Element Type) counts ambiguities in estimating, defined, 66 67, 109 deriving complexity of ILF/EIF with, FP counting process, invoice system, FP counting process, step-by-step, 87 88, of ILF/EIF in invoicing application, invoicing system case study, , invoicing system case study, adding enhancements, rules for, for transaction functions, 109, Developers fluctuating software projects and, of insourcing IT environment, in outsourcing IT environment, 238 understanding software estimation, 21 user view vs. view of, 95 96, Developing cost matrix, Development costs, 273 Development projects, case study, invoicing application, defining, 173 FPA process for, 62, , functional decomposition in, DI (Degree of Influence) of Complex Processing GSC, correct evaluation of, of Data Communications GSC, 126 of Distributed Data Processing GSC, of End-User Efficiency GSC, of Heavily Used Configuration GSC, of Installation Ease GSC, 134 of Multiple Sites GSC,

4 376 Index DI (Degree of Influence) (continued) obtaining in FP counting process, of Online Data Entry GSC, of Online Update GSC, of Operational Ease GSC, overview of, 125 of Performance GSC, relationship among GSCs, NFRs and technology platform, 143, 145 of Reusability GSC, total degree of influence, 125, 363 of Transaction Rate GSC, 129 Distributed Data Processing GSC, , Documentation, insourced IT environment, 236 Domain defined, 139 experts, for cost matrix, 272 impacting estimation methods, 33 Dream project catching signals, overview of, 2 3 warning signs, 3 5 E Efficiency, QoS framework, 142 Effort estimates Actual Effort (person hours) unit in, 16 contractual agreements for, 260 costing, 167 deriving, invoicing system case study, obtaining in FP counting process, 312 outsourcing estimate process and, 240 overview of, references, scheduling projects based on, 165 summary, EFP (Enhancement FP), 185, 188 EI (External Input) transaction functions calculating VAF with, contribution FP count table for, 367 defined by Albrecht, defined by CPM (IFPUG), determining complexity factor of, , 367 EI/EO/EQ FP count table, 362 in FP contribution calculation, FP counting process, invoice system, FPA method in development projects, FPA method in reengineering projects, invoicing system case study, overview of, rules for, similarity to human systems, EIFs (External Interface Files) calculating VAF with, case study, 320 contribution FP count table for, 366 as data function type, determining complexity of, 81 82, DETs and, embedded terms for, FP contribution calculation, 87 88, FPA method in development projects, FPA method in reengineering projects, generally included, 95 identification rules, 81 ILF/EIF FP count table, 361 ILFs vs., overview of, reference matrix for complexity of, 365 RETs and, Elementary process defining, for EI, EO and EQ, in FP contribution calculation, identification rules, 108, 328 maintained, in transactional functions, Embedded mode, COCOMO II, 287 Embedded terms EI, EO and EQ, ILF, End-User Efficiency GSC, , 144 Enhancement FP (EFP), 185, 188

5 Index 377 Enhancements case study, assessing impact of, case study, step-by-step FP counting process, estimating with FPA method, 185 in maintenance projects, ratio between application size and, Entity-Relation (E-R) diagram, 89 Environment, project developing cost matrix, 272 estimation case study, 308 impacting project costs, insourcing IT organizations, as key estimation element, 2, 6 7, outsourcing IT organizations, EO (External Output) transaction functions calculating VAF with, contribution FP count table for, 367 defined by Albrecht, defined by CPM (IFPUG), determining complexity factor of, 112, 367 EI/EO/EQ FP count table, 362 in FP contribution calculation, FP counting process, invoice system, FPA method in development projects, FPA method in reengineering projects, invoicing system case study, overview of, rules for, similarity to human systems, EQ (External Inquiry) transaction functions calculating VAF with, defined by Albrecht, defined by CPM (IFPUG), determining complexity factor of, 112 EI/EO/EQ FP count table, 362 in FP contribution calculations, FPA method in development projects, FPA method in reengineering projects, invoicing system case study, overview of, rules for, similarity to human systems, E-R (Entity-Relation) diagram, 89 Estimation, 1 23 continuous improvement cycle and, defining, 1 2 dilemma in, failure of, in dream project, 2 5 hazarding guesstimates, 226 importance of, ingredients, 6 8 insourcing, 239 maturity, metrics collecting, outsourcing, pervasive, references, softness of software, software vs. other types of, 8 9 stakeholders need for, summary, tools. See Tools, estimation Estimation, role of, in large application systems, measurement and. See Measurement project budget approval phase, project contract phase, project execution phase, references, 43 successful, Estimation case study, See also Invoicing system case study basic assumptions, overview of, 307 references, 359 step-by-step FP counting process, Estimation flavors development projects, maintenance projects, migration projects, reengineering projects, references, 192 summary, 192 updating IT systems,

6 378 Index Estimation methods, adopting multiple types of, choosing tools, 298 heuristic approach, mentoring and monitoring, outsourcing vs. insourcing of, overview of, 46 47, 277 parametric approach, 279, pros and cons of, references, summary, 294 Estimation tips, invisible overheads, lifecycle model, overview of, project team size, proof-of-concept, prototypes, 220 references, 231 summary, warranty support, 220 Estimation traps, application size and delivery schedule, arbitrary guesstimates, 226 counting FP of existing applications, estimation tools, GSC evaluation, overview of, references, 231 summary, Estimation tricks, accuracy of inputs, balancing effect, manipulating project costs, overview of, references, 231 summary, user vs. developer view, Estimators, skills of FPA, 59 Evolution, estimation tool, 298 Execution phase, estimation in, 43 Experience of estimator, 2 as key element of estimation, 7 in metrics collection process, 17 project team competency and, 8, 11 Expertise-based estimation approach, 278 External Inputs. See EI (External Input) transaction functions External Inquiries. See EQ (External Inquiry) transaction functions External Interface Files. See EIFs (External Interface Files) External Outputs. See EO (External Output) transaction functions F Facilitate Change GSC, , 145 Fast Cars case study. See Invoicing system case study Features, evaluating estimation tool, Files, data, Fixed price contracts, 51, Flexible contracts, Formats, converting data from source to target, 180 FP (function point) count estimation method case study, enhancements, , of data functions, 86 88, in data migration, defined, 16, 186 development projects working with, 173 guidelines for existing applications, modularized estimation, case study, 39 popularity of, 35 in project contract phase, 28 project metrics using, 30 reference tables, step-by-step process for, FPA (Function Point Analysis) estimation method, calculating VAF, count data functions, count transaction functions, counting process, defining, determine type of count, 62 63

7 Index 379 for development projects, for general system characteristics. See GSC (general system characteristics) for maintenance requests, measuring software size with, for migration projects, model, objectives of, obtaining project information, overview of, prescribed transaction functions of, 98, pros and cons of, 292 for reengineering projects, references, 72 scope and boundary of application in, user view in, FP/PM (Function Points per Person Month), 16 FR (functional requirements) software, Front tier, IT architecture, 139 Front tier, of IT architecture, 139 FSM (Functional Size Measurement) method, FTEs (full-time equivalent resources), 183, FTPs (full-time persons), in maintenance contracts, FTR (file type referenced) files defined, 109 FP contribution calculation, FP counting process, , identification rules, 109, Full-time equivalent resources (FTEs), 183, Function Point WORKBENCH estimation tool, 304 Function points. See also FP (function point) count estimation method; IFPUG (International Function Point Users Group) Certified Function Point Specialist, 59 conversion function points, , , 188 defined, 55 Function Points per Person Month (FP/PM), 16 Functional decomposition of modules, in development projects, Functional requirements, software, Functional Size Measurement (FSM) method, Functionality, 48 49, 239 G GDM (Global Delivery Model), 254 General system, GIGO (Garbage In = Garbage Out) principle, 297 Global Delivery Model (GDM), 254 Graphic user interface (GUI), 38 GSC (General System Characteristics), calculating VAF from, 69 70, 363 correct evaluation of, FPA method in development projects, 176 FPA method in maintenance projects, FPA method in reengineering projects, FPA model, 57 functional requirements, non-functional requirements, 123 obtaining in FP counting process, obtaining values in invoicing system case study, overview of, references, 147 GSC (General System Characteristics), and NFRs, case study, from dinosaur era to jet age, ISO/IEC 14143:1, definition of user requirements, layers, 139 overview of, Quality of Service, 140, technology platform and, tiers,

8 380 Index GSC (General System Characteristics), guidelines Complex Processing, Data Communications, 126 Degree of Influence and, 125 Distributed Data Processing, End-User Efficiency, Facilitate Change, Heavily Used Configuration, Installation Ease, 134 Multiple Sites, Online Data Entry, Online Update, Operational Ease, overview of, Performance, Reusability, Transaction Rate, 129 Guesstimates, hazards of, 226 GUI (graphic user interface), 38 H Hardware Heavily Used Configuration GSC guidelines for, of insourcing IT environment, 235 in outsourcing IT environment, 237 Heavily Used Configuration GSC, , 144 Heterogenous application portfolios, Heuristic approach, bottom-up estimation, defining, 279 top-down estimation, types of, Historic data, estimation tools maintaining, 301 I Identification rules DET and FTR, 328 EIF and ILF, EIs, elementary process, 108, 328 EOs and EQs, FP contribution calculation, ILF, IFPUG (International Function Point Users Group). See also CPM (Counting Practices Manual) counting data migration FP, data functions defined by, defined, 73 development projects defined by, 173 transactional functions defined by, 97, ILFs (Internal Logical Files) calculating VAF from, case study, enhanced invoicing system, case study, invoicing system, as data function type, determining complexity of, 81 82, 86 87, 365 DETs and, EIFs vs., embedded terms for, FP contribution calculation, 87 88, FP count contribution table for, 366 FP count of existing applications, FPA method in development projects, FPA method in reengineering projects, generally included, ILF/EIF FP count table, 361 overview of, RETs and, rules for, 80 81, Impact analysis stage, maintenance projects, Implementation elements, in estimation, 308 IMS (Inventory Management System), Incremental development, 239 Incubation, role of estimation in, 43 Infrastructure architecture, 139 Infrastructure costs, 274

9 Index 381 Inputs accuracy of, FPA model and, 56 impacting project costs, 266 outsourcing estimate process and, 240 as type of transaction, Inquiries, FPA model, Insourcing, vs. outsourcing, estimation approach, financial considerations, operations considerations, overview of, 233 project environment considerations, reference, 247 strategic considerations, summary, 247 technical considerations, Installation Ease GSC, , 145 Integration projects, contractual agreements for, 262 Intelligence, of estimation tools, 299 Interfaces, FPA model, 57 Internal files, FPA model, 57 Internal Logical Files. See ILFs (Internal Logical Files) International Function Point Users Group. See IFPUG (International Function Point Users Group) Interoperability, QoS framework, 142 Inventory Management System (IMS), Invoicing system case study counting ILF/EIF of, enhanced, overview of, references, 359 Invoicing system case study, Invoice module, aggregate data and transaction function (unadjusted) FP counts, identifying category of information and data items, 317 identifying data functions, identifying stakeholders, identifying transaction functions, mapping resource loading to meet delivery schedule, obtaining GSC values for invoice application, overview of, 315 transforming adjusted FP count into total effort, transforming total effort into delivery schedule, 349 ISO, IT architecture. See architecture, IT Iterative lifecycle model contractual agreements for, 257 estimation tips, impacting project costs, 271 learning from experience to use, 8 as solution to delivery limitations, 205 K KnowledgePLAN estimation tool, 304 L Large application systems complexities of, 40 43, estimation maturity required for, negotiating contracts for, , 260 as risk prone, 208 Layers, of IT architecture, 139 Legacy systems defined, 172 in insourcing IT environment, insourcing vs. outsourcing, 245 migrating data in, in outsourcing IT environment, 238 Lifecycle models creating software contract for, 257 developing cost matrix, 272 estimation tips for, estimation tools for, 301 impacting project costs, Lines of Code. See LOC (Lines of Code) LOC (Lines of Code) defined, 16, 35 FPA method vs., 52 55

10 382 Index LOC (Lines of Code) (continued) as oldest method of measuring software size, 149 problems with measuring using, in project contract phase, 28 M Maintainability, QoS framework, 142 Maintained defining, in transactional functions, 107 Maintenance contracts, , Maintenance projects, affecting total cost of ownership, 273 case study, Function Point Analysis estimation for, outsourcing, request for service in, , Making Accurate Estimates (Fairley), 225 Mandatory subgroups, record element types, Mapping phase, COSMIC-FPP method, 289 Materials, defining in contract measuring, 51 Maturity, estimation, McConnell, Steve, 12, 218 Measurement, complexities of, estimation vs., modularized, phase, COSMIC-FPP method, 289 Mentors, outsourcing, 238 Metrics collection estimation tools that store, 301 insourcing estimate process and, 236 at milestones, 195 modularized estimation using, 39 outsourcing estimate process and, 240 overview of, in project execution phase, 30 Middle tier, IT architecture, 140 Migration projects, affecting total cost of ownership, 273 FPA estimation for, to newer technology platforms, 172 overview of, 182 within reengineering projects, Milestones, 29 30, See also Time, tracking progress Mobile phones, Modularized estimation benefits of, case study of, in development projects, functional decomposition of, invoicing system case study, 314 for iterative lifecycle module, 219 overview of, Monitoring estimation methods, insourcing vs. outsourcing, 243 in project execution phase, 30 Multi-platform application portfolios, Multiple Sites GSC, , 145 N Navigation, 38, 251 NFR (non-functional requirements), 123. See also GSC (general system characteristics), and NFRs O Objects, defined, 132 Online Data Entry GSC, , 144 Online Update GSC, , 144 Operational Ease GSC, , 145 Operations estimating total cost of ownership, 274 outsourcing, vs. insourcing, Optional subgroups, record element types, Organic mode, COCOMO II, 287 Organization structure of insourcing IT environment, 234 in outsourcing IT environment, 237 Outputs Function Point Analysis model, 56 as type of transaction, 67 69

11 Index 383 Outsourcing, vs. insourcing, environmental differences, estimation approach, financial considerations, operations considerations, overview of, 233 reference, 247 strategic considerations, summary, 247 technical considerations, Over-engineered requirements, 268 Overhead contractual agreements for truncated/ partial projects, contractual agreements on, estimating invisible, modularized estimation of, 36 P Parametric approach, COCOMO II model, COSMIC-FFP method, examples of, 279 overview of, popular estimation tools using, Partial projects, software contracts for, Performance, 123, 258, 308 Performance GSC, , 144 Person Hours (Actual Effort), as estimation unit, 16 Pervasive estimations, for project success, Planning, in project execution phase, POC (proof-of-concept) phase, , Portability, QoS framework, 143 Portfolio of applications, 253 PRICE-S estimation tool, 304 Priorities, estimation tools identifying, 301 Process type, modularized estimation of, 35 36, Processing logic, 106, 230 Production support, in maintenance projects, 183 Productivity assessing at every milestone, 195 defined, 7, estimation case study, 308 measuring programmer delivery rate, modularized estimation of, 36, outsourcing estimate process and, 240 references, size of maintenance request not always impacting, 191 Project, dream, 2 5 catching signals, overview of, 2 3 warning signs, 3 5 Project approval phase, Project category, impacting estimation methods, 33 Project costs, estimating, build and test phase, design phase, developing cost matrix, ingredients of, 265 lifecycle model, overview of, 265 reference, 275 requirements phase, resource allocations, 271 summary, Total Cost of Ownership, Project execution methods, integration projects, 262 lifecycle models, overview of, 256 product quality, project specific overheads, truncated/partial projects, Project execution phase estimating project based on environment in, 196 metrics, 30 milestones, monitoring, 30 planning, resource allocations, 29

12 384 Index Project kick-off, warning signs, 3 Project managers estimating project based on, 196 traits of successful, 20 understanding all lifecycle stages, Project teams defining competency of software, 11 estimating productivity of, 36, 196, experience of developers in, 7 in failed dream project, 3 5 impacting project costs, 267 insisting on highly trained, 205 understanding continuous improvement cycle, Project tracking, bottom-up estimation approach, 283 Proof-of-concept (POC) phase, , Prototypes estimating tips for, 220 software contracts for, 259 Q QoS (Quality of Service) controlling architecture, 140 framework for, impacting fixed price contracts, mapping to GSC description, Quality Requirements, 140 software contract for, Quality processes, 236, Queries, as type of transaction, R Rand Corporation, 280, 282 Rapid Development (McConnell), 218 Record Element Types. See RET (Record Element Type) count Reengineering projects Function Point Analysis estimation for, objectives of, reasons for, 177 Reference tables data function points, transaction function counts, Reliability as non-functional requirement, 123 in QoS framework, 142 in software contracts, 258 Reporting, estimation tools for, 301 Request for Proposal, in contract negotiations, 222 Requests for service case study, complexity in estimating, FPA method for analyzing, triggering maintenance activity with, Requirements collating project, contract negotiations relative to, estimation maturity in, 209 in failed dream project, 4, functional, impacting project costs, non-functional, 123 user, Resource allocation, 271, 272 Resource loading in FP counting process, 312 invoicing system case study, outsourcing estimates and, 240 overview of, Response time in fixed price contracts, 251 as non-functional requirement, 123 RET (Record Element Type) count ambiguities in estimating, defined, deriving complexity of ILF/EIF with, in FP contribution calculation, 87 88, invoicing system case study, , invoicing system case study, adding enhancements, for migration FP count, 181 overview of, 84 86

13 Index 385 Retirement, of previous applications, 172, 273 Reusability GSC, , 144 Reverse engineering process. See Reengineering projects Rippling effect, causes of, Risk, in large projects, 208 S Scalability contract negotiations regarding, 258 impacting fixed price contracts, as non-functional requirement, 123 Scheduling of projects calculating, 165 contract negotiations regarding, costing, 167 deriving effort in, evaluation traps, failure of, 3 5 overview of, references, summary, tracking project progress. See Time, tracking progress Scope complex issues in, 199 defining, 26 estimating project based on, 196 flexible contracts for undefined project, 255 FPA process for, as key element of estimation, 6 software estimation methods for, 9 10 Scope creep defined, 21 estimation tools that track, 301 fixed price contracts mitigating risk of, inaccuracy of user input leading to, measuring and trapping using FP as sizing tool, 51 rippling effect of, Security Heavily Used Configuration GSC guidelines, 128 as non-functional requirement, 123 QoS framework, 142 SEER-SEM estimation tool, 305 SEI CMMI, 16 17, 236, Semi-detached mode, COCOMO II, 287 Service level agreements (SLAs), , 253 Simple, Medium, and Complex estimation method. See SMC (Simple, Medium, and Complex) estimation method Size, of software development contract negotiations, defined, 150 delivery schedule traps, differentiating functions from production effort/costs, estimating in project contract phase, 28 estimation and measurement determining, 30 FPA method for, importance of, 149 inputs to, , metrics used to measure, 16 modularized estimation method for, references, relationship to enhancement, relationship to scope, 9 Sizing method, in estimation tools, 301 SLAs (service level agreements), , 253 SLIM-Estimate tool, 305 SLOC (Source Lines-Of-Code) unit of measurement in COCOMO II model, 286 defined, 34 problems with using, 52 SMC (Simple, Medium, and Complex) estimation method defined, 209 overview of, pros and cons of, 293

14 386 Index SMEs (Subject Matter Experts) for cost matrix development, 272 impacting project costs, 267 for partial projects, understanding software estimation, 20 Software complexity impacting estimation methods, 33 development for reuse, 133 development with re-usable codes, 132 functional and non-functional requirements of, softness of, Software contracts, estimation vs. measurement in, for integration projects, 262 for lifecycle models, 258 manipulating costs in, 222 overview of, 249 for product quality, for project specific overheads, reference, 265 role of estimation in, 27 28, 43 summary, 265 for truncated/partial projects, Software contracts, types of application maintenance, fixed price, 52, flexible, Time and Material, 51, Software Engineering Economics (Boehm), Source Lines-Of-Code. See SLOC (Source Lines-Of-Code) unit of measurement Sponsors, project, 20, 257 Stakeholders assessing support of, 195 identifying, 309, understanding software estimation, Storage files, temporary, 230 Subgroups, RET, 84 85, 93 Subject Matter Experts. See SMEs (Subject Matter Experts) Sub-modules, System architecture, 139 T T & M (Time and Material) contracts, 51, , 254 TCO (Total Cost of Ownership), TDI (total degree of influence), 125, 363 Technical architecture, 139 Technical Requirements, 141 Technology in application maintenance contracts, 253 estimations based on, 196 impacting estimation methods, 33 insourcing vs. outsourcing, , 238, 243, modularized estimation of, 35, non-functional requirements and, ongoing changes to newer, upgrading, 12 user vs. developer view, Terms, embedded external inputs, outputs and inquiries, Internal Logical Files, Testing stage business process related bugs in, 212 complex issues in, estimating invisible overhead for, 216 estimation tips for iterative lifecycle module, 219 impacting fixed price contracts, 252 liabilities of outsourced IT environment, 237 in maintenance projects, in requirements phase, 268 The Sense of Where You Are (McPhee), Tickets, 184 Tiers, of IT architecture, Time, tracking progress, See also Scheduling of projects agile software projects, case study,

15 Index 387 defining project contract measuring, 51 dream projects catching signals, estimation maturity and, overview of, pervasive estimations, references, sensing where you are, summary, Time and Material (T & M) contracts, 51, , 254 Tools, estimation, deploying, developing cost matrix for, 272 evaluating, evolution of, 298 impact on project costs, 270 as key element, 7 8 list of popular, reasons to use, 297 references, 306 in software development lifecycle, traps of, Top-down estimation approach defining, 278 overview of, Wideband Delphi method, Work-Breakdown Structure method, Total Cost of Ownership (TCO), Total Degree Of Influence GSC, 125 Total degree of influence (TDI), 125, 363 Training, insourcing vs. outsourcing, 243 Transaction functions, FPA process count, Transaction Rate GSC Online Update GSC guidelines, overview of, 129 Quality of Service mapping and, 144 relationship of technology platform to, 143, 145 Transactional functions, complexity and FP count contributions, defined by Albrecht, defined by IFPUG, defining, EI, EO and EQ, identifying in FP counting process, , 311 for invoicing system case study, , overview of, 97 reference tables for counting, references, 119 summary, unadjusted FP count and, Transactions, 97 Truncated/partial projects, contracts for, U UC (Use Case) size estimation method, 35 UI (user interface), 101, 251 Unadjusted FP count defined, 67 invoicing system case study, , obtaining in FP counting process, 311 in transaction functions, 69 Update elementary process, 79 Upgrades insourcing vs. outsourcing, 243 to latest operating systems, 172 Usability, QoS framework, 142 Use Case (UC) size estimation method, 35 User identifiable, 78, 106 User interface (UI), 101, 251 Users (customers). See also View, user acceptance test phase issues, contract negotiation with, , developer view vs. view of, 95 96, End-User Efficiency activities for, fluctuating software projects and, 12, FP counting, identifying, 309 FPA process, view of, 60 62, functional requirements visible to, outsourcing and, 242 project costs and,

16 388 Index Users (customers) (continued) project execution role of, 257 project planning involvement of, 20 proof-of-concept for, 220 prototype development and, 220 requests for service issued by, V VAF (Value Adjustment Factor) calculating from GSC, 69 70, 227 calculating from GSC, reference table, 363 defined, 67 in development projects, 176 in maintenance projects, in maintenance request, 186, 188 obtaining in FP counting process, 312 in reengineering projects, VAFA-VAF, 186, 188 VAFB-VAF, 186, 188 Vendors. See Outsourcing, vs. insourcing View, user vs. developer view, 95 96, of existing applications, in FPA, understanding, in FPA, W Warranty support, 220, Waterfall lifecycle model contractual agreements for, 258 impacting project costs, vs. iterative, WBS (Work-Breakdown Structure) estimation method, Wideband Delphi estimation method, , 293 Workflow, invoicing system case study,