SOFTWARE ENGINEERING Chapter 12 Evaluating Products, Processes, and Resources Theory and Practice (second edition) Shari Lawrence Pfleeger Lecturer:zhihong Xu Review 1 When is the software better to discard than maintain? the cost of maintenance is too high. the system’s reliability eptable. the system no longer adapt to further change within time. the system performance still beyond the prescribed constraints. other system can do the same job better, faster, or cheaper. the cost of maintenance is great enough to justify replacing it with cheaper, new hardware. Review (cont.) 2 What types of maintenance are usually made? corrective maintenance adaptive maintenance perfective maintenance preventive maintenance Approach to evaluation Four categories of evaluation technique: Feature analysis used to rate and rank the attributes of various products so we can tell which tool to buy or method to use. (table 12-1) Survey are similar in that we record data to determine how project participants reacted to a particular method, tool, or technique, or to determine trends or relationships. Case study identify key factors that may affect an activity’s e and document them: inputs, constraints, resources, and outputs. Three ways: sister project, baseline, or random selection. Formal experiment observe changes in dependent variables to determine how changes in the input affect changes in the output. Selecting an evaluation technique Key selection factors: If we have a high level of control over the variables that can affect the e, then we consider an experiment. If we do not have that control, a case study is the preferred technique. Find the link between factor x and system quality: Evaluating products Product quality models 1Boehm’s model To utility, we can consider correspond to the users: the original customer. user involved with upgraded system. programmer who maintains the system. Evaluating products (cont.) Product quality mode