+ All Categories
Home > Documents > Sidebar 4.1 Why Are Requirements Important?

Sidebar 4.1 Why Are Requirements Important?

Date post: 07-Jan-2016
Category:
Upload: elias
View: 21 times
Download: 1 times
Share this document with a friend
Description:
Sidebar 4.1 Why Are Requirements Important?. Top factors that caused project to fail Incomplete requirements Lack of user involvement Unrealistic expectations Lack of executive support Changing requirements and specifications Lack of planning System no longer needed - PowerPoint PPT Presentation
12
Pfleeger and Atlee, Software Engineering: Theory and Practice Page 4.1 © 2006 Pearson/Prentice Hall Sidebar 4.1 Why Are Requirements Important? Top factors that caused project to fail Incomplete requirements Lack of user involvement Unrealistic expectations Lack of executive support Changing requirements and specifications Lack of planning System no longer needed Requirements error can be expensive if not detected early
Transcript
Page 1: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.1© 2006 Pearson/Prentice Hall

Sidebar 4.1 Why Are Requirements Important?

• Top factors that caused project to fail– Incomplete requirements– Lack of user involvement– Unrealistic expectations– Lack of executive support– Changing requirements and specifications– Lack of planning– System no longer needed

Requirements error can be expensive if not detected early

Page 2: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.2© 2006 Pearson/Prentice Hall

The Requirements Process

• Outcome – Software Requirements Specification (SRS)

Page 3: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.3© 2006 Pearson/Prentice Hall

Stakeholders

• Clients: pay for the software to be developed• Customers: buy the software after it is developed• Users: use the system• Domain experts: familiar with the problem that

the software must automate• Market Researchers: conduct surveys to

determine future trends and potential customers• Lawyers or auditors: familiar with government,

safety, or legal requirements• Software engineers or other technology experts

Page 4: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.4© 2006 Pearson/Prentice Hall

Entity-Relationship Diagram for turnstile problem

Page 5: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.5© 2006 Pearson/Prentice Hall

UML Class Diagram for Library Problem

Page 6: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.6© 2006 Pearson/Prentice Hall

Message Sequence Chart for library load

Page 7: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.7© 2006 Pearson/Prentice Hall

State Machines for Turnstile Problem

Page 8: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.8© 2006 Pearson/Prentice Hall

Use Cases

• Library use cases including borrowing a book, returning a borrowed book, and paying a library fine

Page 9: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.9© 2006 Pearson/Prentice Hall

Prototyping Example

• First a workable simple Interface for entering a date

Page 10: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.10© 2006 Pearson/Prentice Hall

Prototyping Example

• A more interesting and sophisticated interface

Page 11: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.11© 2006 Pearson/Prentice Hall

Prototyping Example

• Next version – user is presented with three slide bars– Pros and Cons?

Page 12: Sidebar 4.1  Why Are Requirements Important?

Pfleeger and Atlee, Software Engineering: Theory and Practice

Page 4.12© 2006 Pearson/Prentice Hall

Techniques to validate requirements

Validation Walkthroughs

Reading

Interviews

Reviews

Checklists

Models to check functions and

relationships

Scenarios

Prototypes

Simulation

Formal inspections

Verification

Checking

Cross- referencing

Simulation

Consistency checks

Completeness checks

Check for unreachable states or

transitions

Model checking

Mathematical proofs


Recommended