requirements are boring, and other myths (eclipsecon 2013 lightning talk)

Post on 08-May-2015

181 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

MichaelJastram

... and I do requirements

my Blog &Newsletter:

formalmind.com

/blog

Image (Post-it) courtesy of Master isolated images / FreeDigitalPhotos.net

Requirements are

boringImage courtesy of graur codrin / FreeDigitalPhotos.net

Image courtesy of David Castillo / FreeDigitalPhotos.net

Do you remember…

… and JUnit?

Imag

e co

urt

esy

of M

aste

r is

ola

ted

imag

es /

Fre

eDig

ital

Ph

oto

s.n

et

Understand why requirements matter

Measure whether requirements are realized

Try to Automate as much as possible

Image courtesy of photostock / FreeDigitalPhotos.net

Joel Spolsky on requirements (1)

Images courtesy of sheelamohan, koratmember and Ambro / FreeDigitalPhotos.net

Speedy, at Hasty Bananas Software, never writes

specs

Mr. Rogers, at The Well-Tempered Software

Company, refuses to write code without spec

v1.0

v2.0

Task: Word Processor Migration Feature

Painless Functional Specifications: http://www.joelonsoftware.com/articles/fog0000000036.html

Understand

Joel Spolsky on requirements (2)

Speedy, at Hasty Bananas Software, never writes

specs

Mrs. Rogers, at The Well-Tempered Software

Company, refuses to write code without spec

Understand

Writes Converter1.0 → 2.0

Duration: 2 weeks

CustomerUnhappy

Writes Converter2.0 → 1.0

Duration: 2 weeks

CustomerSatisfied

Result:Mediocre

Duration: 4 weeks

Joel Spolsky on requirements (3)

Speedy, at Hasty Bananas Software, never writes

specs

Mrs. Rogers, at The Well-Tempered Software

Company, refuses to write code without spec

Understand

Writes Converter1.0 → 2.0

Duration: 2 weeks

CustomerUnhappy

Writes Converter2.0 → 1.0

Duration: 2 weeks

CustomerSatisfied

Result:Mediocre

Duration: 4 weeks

Writes Converter1.0 → 2.0

Customercomments

Writes Spec v.1“When opening a file created with an older version of the

product, the file is converted to the new format”

Duration: 20 minutes

Bosscomments

Writes Spec v.2Duration: 20 minutes

Joel Spolsky on requirements (4)

Speedy, at Hasty Bananas Software, never writes

specs

Mrs. Rogers, at The Well-Tempered Software

Company, refuses to write code without spec

Understand

Writes Converter1.0 → 2.0

Customercomments

Writes Spec v.1“When opening a file created with an older version of the

product, the file is converted to the new format”

Duration: 20 minutes

Bosscomments

Result:Great

Duration: 3 weeks, 1 hour

Writes Spec v.2Duration: 20 minutes

Writes Spec v.3Duration: 20 minutes

Implemen-tation

Writes Converter1.0 → 2.0

Duration: 2 weeks

CustomerUnhappy

Writes Converter2.0 → 1.0

Duration: 2 weeks

CustomerSatisfied

Result:Mediocre

Duration: 4 weeks

MeasureHow to write good requirements (1)

#1 Use the right approach

#2 KISSImages courtesy of Master isolated images / FreeDigitalPhotos.net

MeasureHow to write good requirements (3)

#3 Requirements: What Specification: How

#4 Define Scope!Images courtesy of renjith krishnan / FreeDigitalPhotos.net

MeasureHow to write good requirements (3)

#5 Quantify if you can (If you can't know why)

#6 Atomic and IdentifiableImages courtesy of David Castillo Dominici / FreeDigitalPhotos.net

complete, clear, realizable, understandable, no contradictions, no redundancy, traceability to source

MeasureHow to write good requirements (4)

Images courtesy of Master isolated images / FreeDigitalPhotos.net

Automate

Automate through Modeling

Image courtesy of nokhoog_buchachon / FreeDigitalPhotos.net

Automate

Domain Properties

Specification

Requirements

What?

How the world b

ehaves

Image courtesy of anankkml, Felixco, Inc and Baitong333 / FreeDigitalPhotos.net

How? re

alize

realize

Automate through Modeling (2)

realize

Automate

Domain Properties

Specification

Requirements

What?

How the world b

ehaves

How?

Automate through Modeling (3)

realiz

e

realize

justify

justify

Automate

Domain Properties

Specification

Requirements

Implementation

What?

How the world b

ehaves

How? re

alize

realize

refine

Automate through Modeling (4)

justify

justify

Automate

Automate through Modeling (5)

What models?- UML- SysML- B / Event-B- VDM- Design by Contract… and many more.

Image courtesy of nokhoog_buchachon / FreeDigitalPhotos.net

What about …

● Requirements vs. Goals vs. Specification?

● Use Cases?

● Traceability?

● Testing?

...?

Visit my talk:

6 June (Thu)

14:15 – 14:50

Room DiamantThankyou!

... and requirements arenot boring!

Image (Post-it) courtesy of Master isolated images / FreeDigitalPhotos.net

top related