Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000004809335 | QA76.758 C52 2001 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
Since the earliest days of the computer industry, managing a software project has been a complex and demanding activity. While the technical content of software products and the technical methods used to build them have changed over time, the fundamental issues that determine the success or failure of software projects have remain fairly constant. That is, the same fundamental management mistakes continue to be made. To cite a few examples; requirements are unclear at the beginning of projects and are not managed during the project, the product is not tested adequately, schedules are misestimated or not tracked in sufficient detail. The contents of this book, together with the underlying IEEE Standards, are dedicated to helping the reader in their work: The continuing quest to produce quality software products in a predictable manner.
This book, containing all original material, is based on the proposition that the IEEE Software Engineering Standards capture many of the fundamental 'best practices' of software project management. It is written to assist the reader in applying those standards to their projects and company. To meet this goal, the authors discuss and elaborate the standards that bear on the three key management areas of: Software systems engineering, Processes for developing software products, Planning and control of software project activities.
The body of the book is correspondingly organized into three parts. Software Systems Engineering, which argues that software development projects are most successful when developed using a systems level viewpoint. Process Management and Control, which describes the key activities needed to define, support, and manage a project's software development processes. Project Planning and Management completes the book, integrating the elements of cost and schedule estimation and control, risk management, and the role metrics play in performing those tasks.
Author Notes
Mark J. Christensen, Ph.D., is an independent consultant based in St. Charles, Illinois, USA. Dr. Christensen serves a national client base, offering process and project evaluation services, and project management training. His customers include industrial, governmental, and academic organizations.
Dr. Christensen is a member of the Association for Computing Machinery (ACM) and the IEEE Computer Society (IEEE CS). He chairs the Press Operations Committee of the Computer Society. He is co-author with Dr. Richard Thayer of an upcoming book (1st Quarter 2002) describing how to apply the IEEE Software Engineering Standards to the Management of software projects.
He holds a BS degree in physics and mathematics from Wayne State University and an MS in physics from Purdue, where he was a Woodrow Wilson Fellow. His doctorate from Wayne State is in probability theory.
Richard H. Thayer, Ph.D., is consultant in the field of software engineering and project management. Prior to this hew was a Professor of Software Engineering at California State University, Sacramento, California, United States of America. Dr. Thayer travels widely where he consults and lectures on software engineering, project management, software engineering standards, software requirements engineering, and software quality assurance. He is a Visiting Researcher and Lecturer at the University of Strathclyde, Glasgow, Scotland. His technical interests lay in software project management and software engineering standards.
Dr. Thayer is a Fellow of the IEEE, a member of the IEEE Computer Society, and the IEEE Software Engineering Standards Committee. He is a principle author for a Standard for a Concept of Operations (ConOps) document (IEEE std 1362-1998) and a principle author of the Standard for Software project Management Plans (IEEE std 1058-1998).
He is also an Associate Fellow of the American Institute of Aeronautics and Astronautics (AIAA) where he served on the AIAA Technical Committee on Computer Systems, and he is a member of the Association for Computing Machinery (ACM). He is also a registered professional engineer.
He holds a BSEE degree and an MS degree from the University of Illinois at Urbana (1962) and a Ph.D. from the University of California at Santa Barbara (1979) each in Electrical Engineering.
Table of Contents
Foreword | p. ix |
Preface | p. xi |
Acknowledgements | p. xiii |
Reviewers | p. xv |
I Software Systems Engineering | p. 1 |
1 Software Systems Engineering | p. 5 |
1.1 Introduction | p. 5 |
1.2 Objectives | p. 6 |
1.3 Systems Engineering Concepts | p. 7 |
1.4 Software Systems Engineering | p. 12 |
1.5 Software Requirements Analysis | p. 19 |
1.6 Software Design | p. 24 |
1.7 Process Planning | p. 27 |
1.8 Process Control | p. 30 |
1.9 Verification, Validation, and Testing | p. 33 |
1.10 Summary | p. 38 |
Applicable Standards | p. 38 |
Additional References | p. 39 |
2 Concept of Operations | p. 41 |
2.1 Introduction | p. 41 |
2.2 Objectives | p. 42 |
2.3 ConOps Purposes, Roles, Content, and Format | p. 43 |
2.4 Developing the ConOps | p. 46 |
2.5 Maintaining the ConOps | p. 60 |
2.6 Summary | p. 60 |
Applicable Standards | p. 61 |
Additional References | p. 61 |
3 Software Requirements Specification | p. 63 |
3.1 Introduction | p. 63 |
3.2 Objectives | p. 65 |
3.3 Purposes of Software Requirements | p. 66 |
3.4 Categories of Requirements | p. 71 |
3.5 Requirements Development Process | p. 77 |
3.6 Expressing Requirements | p. 86 |
3.7 Managing the SRS: Product and Processes | p. 89 |
3.8 Summary | p. 90 |
Applicable Standards | p. 92 |
Additional References | p. 92 |
4 Software User Documentation | p. 95 |
4.1 Introduction | p. 95 |
4.2 Objectives | p. 95 |
4.3 Uses and Forms of User Documentation | p. 96 |
4.4 Developing Software User Documents | p. 100 |
4.5 Structure and Content of a Software User Document | p. 104 |
4.6 Producing Software User Documents | p. 104 |
4.7 Summary | p. 110 |
Applicable Standards | p. 111 |
Additional References | p. 111 |
5 Software Verification and Validation | p. 113 |
5.1 Introduction | p. 113 |
5.2 Objectives | p. 115 |
5.3 Verification and Validation Concepts and Examples | p. 115 |
5.4 Defining the Objectives | p. 121 |
5.5 Validation and Verification Tasks Mapped to the Software Life Cycle | p. 131 |
5.6 Creating the SVVP | p. 138 |
5.7 Summary | p. 145 |
Applicable Standards | p. 145 |
Additional References | p. 146 |
6 Software Maintenance | p. 149 |
6.1 Introduction | p. 149 |
6.2 Objectives | p. 149 |
6.3 Software Maintenance | p. 150 |
6.4 The Seven Phases of Software Maintenance | p. 161 |
6.5 Summary | p. 172 |
Applicable Standards | p. 172 |
Additional References | p. 172 |
II Process Management and Control | p. 175 |
7 Software Life Cycle Process Management | p. 179 |
7.1 Introduction | p. 179 |
7.2 Objectives | p. 184 |
7.3 Software Life Cycle Models and Processes | p. 184 |
7.4 Selecting a Software Life Cycle Model | p. 195 |
7.5 Creating the Life Cycle Processes | p. 197 |
7.6 Implementing and Managing the Software Life Cycle Process | p. 202 |
7.7 Summary | p. 206 |
Applicable Standards | p. 206 |
Additional References | p. 207 |
8 Software Process Improvement | p. 209 |
8.1 Introduction | p. 209 |
8.2 Objectives | p. 210 |
8.3 Background | p. 210 |
8.4 Models for Software Process Improvement | p. 212 |
8.5 Capability Determination | p. 225 |
8.6 Software Process Improvement | p. 225 |
8.7 Existing and Emerging Standards | p. 229 |
8.8 Summary | p. 231 |
Applicable Standards | p. 232 |
Additional References | p. 232 |
9 Software Configuration Management | p. 237 |
9.1 Introduction | p. 237 |
9.2 Objectives | p. 237 |
9.3 Software Configuration Management | p. 238 |
9.4 Software Configuration Management Concepts and Mechanisms | p. 242 |
9.5 Software Configuration Management Activities and Functions | p. 251 |
9.6 Summary | p. 268 |
Applicable Standards | p. 269 |
Additional References | p. 269 |
10 Software Quality Assurance | p. 271 |
10.1 Introduction | p. 271 |
10.2 Objectives | p. 272 |
10.3 Software Quality Assurance | p. 273 |
10.4 Software Quality Assurance Plan | p. 277 |
10.5 Summary | p. 286 |
Applicable Standards | p. 287 |
Additional References | p. 287 |
11 Software Reviews | p. 291 |
11.1 Introduction | p. 291 |
11.2 Objectives | p. 293 |
11.3 Overview of Software Reviews | p. 293 |
11.4 Management and Technical Reviews | p. 302 |
11.5 Walkthroughs and Inspections | p. 307 |
11.6 Audits | p. 313 |
11.7 Summary | p. 318 |
Applicable Standards | p. 318 |
Additional References | p. 319 |
III Project Planning and Management | p. 323 |
12 Software Cost and Schedule | p. 327 |
12.1 Introduction | p. 327 |
12.2 Objectives | p. 329 |
12.3 Initial Software Cost and Schedule Estimates | p. 329 |
12.4 Detailed Costing and Scheduling | p. 345 |
12.5 Monitoring Project Performance | p. 355 |
12.6 Summary | p. 367 |
Applicable Standards | p. 368 |
Additional References | p. 368 |
13 Software Engineering Project Management | p. 371 |
13.1 Introduction | p. 371 |
13.2 Objectives | p. 373 |
13.3 Software Engineering Project Management Functions and Objectives | p. 374 |
13.4 Software Engineering Project Management Functions | p. 376 |
13.5 Creating the Project Plan | p. 411 |
13.6 Summary | p. 413 |
Applicable Standard | p. 413 |
Additional References | p. 413 |
14 Software Risk Management | p. 417 |
14.1 Introduction | p. 417 |
14.2 Objectives | p. 417 |
14.3 Elements of Risk Management | p. 418 |
14.4 Identifying Risks | p. 422 |
14.5 Risk Analysis | p. 431 |
14.6 Risk Treatment | p. 434 |
14.7 Estimating Risk Impacts and Avoidance Costs | p. 438 |
14.8 Monitoring and Controlling Risks | p. 441 |
14.9 Planning a Risk Management Program | p. 442 |
14.10 Summary | p. 446 |
Applicable Standards | p. 446 |
Additional References | p. 446 |
15 Software Metrics | p. 449 |
15.1 Introduction | p. 449 |
15.2 Objectives | p. 451 |
15.3 Measurement and Metric Concepts | p. 452 |
15.4 Planning and Implementing a Metrics Program | p. 466 |
15.5 Techniques for Selecting Metrics | p. 471 |
15.6 Sample Core Metrics | p. 476 |
15.7 Associated IEEE Standards | p. 481 |
15.8 Summary | p. 493 |
Applicable Standards | p. 494 |
Additional References | p. 494 |
A The Work Breakdown Structure | p. 497 |
B Representing Project Schedules | p. 501 |
B.1 Activity Lists | p. 501 |
B.2 Activity Networks | p. 501 |
B.3 CPM | p. 503 |
B.4 PERT Charts | p. 505 |
B.5 Gantt Charts | p. 507 |
B.6 Comparisons | p. 509 |
Additional References | p. 511 |
Index | p. 513 |
About the Authors | p. 531 |