TABLE OF CONTENTS Foreword XVIl Foreword to the 2004 Edition Editors Coeditors Contributing Editors Change Control Board Knowledge Area Editors xxiii Knowledge Area Editors of Previous SWEBOK Versions XXV Review Team XXVii Acknowledgements XXIX Professional Activities Board,2013 Membership XXIX Motions Regarding the Approval of SWEBOK Guide V3.0 XXX Motions Regarding the Approval of SWEBOK Guide 2004 Version XCXX Introduction to the Guide XXXI Chapter 1:Software Requirements 1-1 1.Software Requirements Fundamentals 1-1 1.1.Definition of a Software Requirement 1-1 1.2.Product and Process Requirements 1-2 1.3.Functional and Nonfunctional Requirements 1-3 1.4.Emergent Properties 1-3 1.5.Quantifiable Requirements 1.6.System Requirements and Software Requirements 2.Requirements Process 2.1.Process Models 2.2.Process Actors 2.3.Process Support and Management 2.4.Process Quality and Improvement 3211119 3.Requirements Elicitation 3.1.Requirements Sources 3.2.Elicitation Techniques 1-6 4.Requirements Analysis 1-7 4.1.Requirements Classification 1-7 4.2.Conceptual Modeling 1-8 4.3.Architectural Design and Requirements Allocation 1-9 4.4.Requirements Negotiation 1-9 4.5.Formal Analysis 1-10 5.Requirements Specification 1-10 5.1.System Definition Document 1-10 5.2.System Requirements Specification 1-10 5.3.Software Requirements Specification 1-11 6.Requirements Validation 1-11 6.1.Requirements Reviews 1-11 6.2.Prototyping 1-12v TABLE OF CONTENTS Foreword xvii Foreword to the 2004 Edition xix Editors xxi Coeditors xxi Contributing Editors xxi Change Control Board xxi Knowledge Area Editors xxiii Knowledge Area Editors of Previous SWEBOK Versions xxv Review Team xxvii Acknowledgements xxix Professional Activities Board, 2013 Membership xxix Motions Regarding the Approval of SWEBOK Guide V3.0 xxx Motions Regarding the Approval of SWEBOK Guide 2004 Version xxx Introduction to the Guide xxxi Chapter 1: Software Requirements 1-1 1. Software Requirements Fundamentals 1-1 1.1. Definition of a Software Requirement 1-1 1.2. Product and Process Requirements 1-2 1.3. Functional and Nonfunctional Requirements 1-3 1.4. Emergent Properties 1-3 1.5. Quantifiable Requirements 1-3 1.6. System Requirements and Software Requirements 1-3 2. Requirements Process 1-3 2.1. Process Models 1-4 2.2. Process Actors 1-4 2.3. Process Support and Management 1-4 2.4. Process Quality and Improvement 1-4 3. Requirements Elicitation 1-5 3.1. Requirements Sources 1-5 3.2. Elicitation Techniques 1-6 4. Requirements Analysis 1-7 4.1. Requirements Classification 1-7 4.2. Conceptual Modeling 1-8 4.3. Architectural Design and Requirements Allocation 1-9 4.4. Requirements Negotiation 1-9 4.5. Formal Analysis 1-10 5. Requirements Specification 1-10 5.1. System Definition Document 1-10 5.2. System Requirements Specification 1-10 5.3. Software Requirements Specification 1-11 6. Requirements Validation 1-11 6.1. Requirements Reviews 1-11 6.2. Prototyping 1-12