Page 17 -
P. 17

Chapter 6, Software Requirements
                            Use Cases
                            Functional and Nonfunctional Requirements
                            Software Requirements Specifications

                            Change Control
                          Chapter 7, Design and Programming
                            Configuration Management
                            Subversion

                            Refactoring
                            Unit Tests
                            Project Automation Software
                          Chapter 8, Software Testing
                            Test Plans
                            Test Cases
                            Test Automation
                            Defect Tracking System
                            Postmortem Meetings
                            Metrics

                          Most of these tools and techniques can be applied independently of one another. However,
                          there are a few that rely on tools in other parts of the book. (For example, it is very difficult
                          to build a test plan and test cases without a software requirements specification.) When this
                          is the case, it is always because the software project will be better off with the other tool in
                          place first, and the project will see a greater gain by implementing the other tool instead.

                          Many of the practices in this book are described using a process script that contains step-by-step
                          instructions to help guide the team through the practice. “Script” should bring to mind a
                          script read by an actor, rather than a script run by a computer. All scripts follow the same for-
                          mat (which is based on the template used for use cases, defined in Chapter 6) that contains:

                          • A name, one-line description of the purpose, and a brief summary.
                          • A list of work products that are used in the script. Work products are labeled as “input”
                            if they already exist and are used in the script; they are labeled as “output” if they are
                            generated or updated by the script.
                          • Entry criteria that must be satisfied before the script can begin.
                          • A basic course of events, which consists of step-by-step instructions to lead the team
                            through the script activities.

                          • Alternate paths that the team members may follow to deviate from the basic course of
                            events.
                          • Exit criteria that should be satisfied when the script ends.

                                                                                            INTRODUCTION  9
   12   13   14   15   16   17   18   19   20   21   22