Testing Imprecise Requirements Presented by: David - - PDF document

testing imprecise requirements
SMART_READER_LITE
LIVE PREVIEW

Testing Imprecise Requirements Presented by: David - - PDF document

T17 Testing & Requirements Thursday, October 4th, 2018 1:30 PM Testing Imprecise Requirements Presented by: David Gelperin


slide-1
SLIDE 1

¡ ¡ T17 ¡

Testing ¡& ¡Requirements ¡ Thursday, ¡October ¡4th, ¡2018 ¡1:30 ¡PM ¡ ¡ ¡ ¡ ¡

Testing ¡Imprecise ¡Requirements ¡ ¡

Presented ¡by: ¡ ¡ ¡

¡ David ¡Gelperin ¡

¡ ClearSpecs ¡Enterprises ¡ ¡

Brought ¡to ¡you ¡by: ¡ ¡ ¡ ¡

¡

¡

¡ ¡

350 ¡Corporate ¡Way, ¡Suite ¡400, ¡Orange ¡Park, ¡FL ¡32073 ¡ ¡ 888-­‑-­‑-­‑268-­‑-­‑-­‑8770 ¡·√·√ ¡904-­‑-­‑-­‑278-­‑-­‑-­‑0524 ¡-­‑ ¡info@techwell.com ¡-­‑ ¡http://www.starwest.techwell.com/ ¡ ¡ ¡

¡

¡ ¡

¡

slide-2
SLIDE 2

David ¡Gelperin ¡

¡ David ¡Gelperin ¡has ¡more ¡than ¡50 ¡years ¡experience ¡in ¡software ¡engineering ¡with ¡an ¡ emphasis ¡on ¡requirements ¡risk ¡management ¡and ¡development ¡and ¡software ¡quality, ¡ verification, ¡and ¡test ¡(SQVT). ¡Dave ¡has ¡been ¡a ¡SQVT ¡consultant/mentor ¡and ¡ instructor ¡(20 ¡years), ¡quality ¡support ¡manager ¡(5 ¡years), ¡verification ¡lead ¡(2 ¡years), ¡ project ¡lead ¡(2 ¡years), ¡and ¡programmer ¡(5 ¡years). ¡He ¡has ¡consulted ¡for ¡both ¡ commercial ¡and ¡in-­‑house ¡software ¡development ¡organizations, ¡including ¡some ¡with ¡ safety ¡and ¡mission ¡critical ¡applications. ¡Many ¡consulting ¡assignments ¡entailed ¡ assessments ¡of ¡software ¡engineering ¡or ¡test ¡practices ¡and ¡recommendations ¡for ¡

  • improvement. ¡Dave ¡cofounded ¡Software ¡Quality ¡Engineering ¡(now ¡TechWell)-­‑the ¡

leading ¡provider ¡of ¡software ¡quality ¡information ¡worldwide-­‑in ¡1986 ¡and ¡catalyzed ¡ the ¡launch ¡of ¡Better ¡Software ¡magazine. ¡He ¡recently ¡completed ¡a ¡book ¡titled ¡ Understanding ¡Requirements. ¡His ¡articles ¡can ¡be ¡found ¡here. ¡David ¡has ¡a ¡PhD ¡in ¡ Computer ¡Science, ¡but ¡has ¡managed ¡to ¡help ¡people ¡do ¡useful ¡work ¡anyway. ¡ ¡

slide-3
SLIDE 3

9/4/2018 1

1

Warning – high density of new ideas

2

slide-4
SLIDE 4

9/4/2018 2

On Complexity

  • Complex means difficult to understand by people of average intelligence
  • Simple means easy to understand by people of average intelligence

We are biologically programmed to prefer simplicity, but we often overdo it

  • Simplistic means too simple

e.g., mating strategy of the jewel beetle

3

Oversimplification Bias

4

slide-5
SLIDE 5

9/4/2018 3

For every complex problem there is an answer that is clear, simple, and wrong.

  • H. L. Mencken

Ideas should be made as simple as possible

  • - but no simpler.

paraphrasing A. Einstein

5

Complexity is not simple

Simple

Benzene ring DNA General Relativity

Complex (3 types) Essential Complexity Unnecessary Complexity

Rube Goldberg devices London Underground necessary and sufficient sufficient, but partly unnecessary Spaghetti code

6

slide-6
SLIDE 6

9/4/2018 4

Complexity of Agile Methods

Simple Essential Complexity Unnecessary Complexity Insufficient Complexity (Simplistic)

Agile Reqts Agile Verification Refactored Domain Functions

Technical debt

Complex (3 types)

necessary, but insufficient

7

Complexity of Reqts Models

Simple Essential Complexity Insufficient Complexity (Simplistic)

LiteRM Quality Model

ISO 25010

  • et. al.

necessary, but insufficient

UR Reqts Model BABOK Reqts Model

Complex (3 types)

8

Defective Reqts: causes & mitigations

necessary and sufficient (but imperfect)

slide-7
SLIDE 7

9/4/2018 5

9

But, essential complexity is a very hard sell

(See handout)

10

slide-8
SLIDE 8

9/4/2018 6

Ambiguous Inconsistent Incomplete Precise Consistent (sometimes) Complete (sometimes) Needs, Desires, & Preferences Implemented Systems

11 12

slide-9
SLIDE 9

9/4/2018 7

13 14

slide-10
SLIDE 10

9/4/2018 8

Reduce obscurity by (1) using common (short) instead of uncommon (long) synonyms e.g., “begin” and “end” instead of “initiate” and “terminate” and (2) removing unnecessary words.

15

Adequate understanding entails learning precise definitions for named: derived conditions: people detected, people indicators detected (e.g., strollers), substantial objects detected (e.g., jackknifed trucks) derived values: safe stopping distance procedures: safe swerving, quickly apply maximum pressure

16

slide-11
SLIDE 11

9/4/2018 9

Patterns Objects Examples

Entity profile Nouns, unmodified customer Nouns, modified VAR controller Derived value Nouns, modified employee bonus Derived condition Nouns, modified potential customer Verbs, premodified rarely fail Quality measures Nouns, modified satisfied customer Verbs, premodified accurately identify Action contract Verbs, postmodified display complaints Verbs, premodified tentatively identify Procedures Verbs, postmodified plan vacation Event profile Events accurately identify potential customers for our new system

17 18

slide-12
SLIDE 12

9/4/2018 10

For new domains or applications, terminology management is very important Tower of Babel Tower of Unrecognized Ambiguity

19

Video game industry earns over 100 billion USD a year Goblet Gobbler game A target market

20

slide-13
SLIDE 13

9/4/2018 11

21

ID

Fun-measure 1.1

ATTRIBUTE

Fun of game – enjoyment caused by playing the game for at least 1 hour.

MEASURE

Consensus of player opinions after playing the game. Each player assesses fun on a scale from 1 (no fun), 2 (not boring), 3 (fun) to 4 (really fun).

METHOD

After playing the game for at least 1 hour, gather opinions from at least 2 players from each of the 3 target markets, as well as at least 2 expert game testers.

MINIMUM

At least 60% “really fun”s and only 3s and 4s

GOAL

At least 75% “really fun”s and only 3s and 4s

Stretch

At least 85% “really fun”s and only 3s and 4s

Past [last game]

At least 65% “really fun”s and only 3s and 4s

22

slide-14
SLIDE 14

9/4/2018 12

Intended imprecise specs state complete, necessary, possibly achievable, and subjectively verifiable restrictions

  • n an implementation.

Subjective verification entails agreement by a “sufficient majority”

  • f the stakeholders, where the composition of the sufficient majority

is precisely defined. For example: Autonomous vehicles approved for use outside Australian cities (or in Montana) must “recognize kangaroos” on or “near” the roadway and take “mitigating actions”.

23 24

slide-15
SLIDE 15

9/4/2018 13

25

System failures

  • all/some sensors fail
  • classifier fails e.g., misclassifies
  • effector logic fails
  • cpu with guidance software dies
  • GPS signal lost
  • software fails e.g., causes unanticipated

acceleration

  • software enables hacking
  • software fails to adapt to new environments e.g.

entry into school zone Vehicle conditions

  • motor dies
  • tires go flat
  • brakes fail
  • battery fails
  • vehicle catches fire
  • top is sheared off
  • vehicle skids (e.g., on ice)
  • vehicle is submerged

Roadway conditions

  • weather conditions
  • different zones e.g., school, hospital, or work
  • large, heavy, stationary object (e.g., firetruck)

blocking the roadway or lane

  • roadway collapses (e.g. bridge or sink hole)
  • kangaroo on or near roadway
  • traffic light outages
  • stale yellow light

Traffic conditions

  • wrong way driver
  • car ahead/beside drives erratically
  • car behind tailgates
  • dangerously merging car ahead (high-speed e.g.,

70 mph, close e.g., 2 car lengths) with my vehicle accelerating to set speed (e.g., 80 mph)

26

slide-16
SLIDE 16

9/4/2018 14

If <hazard condition>, then <mitigating action(s)> If the motor dies on a roadway and the vehicle is moving and a “safe and traversable glide path” is accessible, then turn on hazard lights, call for help, signal appropriately, steer onto the glide path, decrease speed as needed, and brake when “stopping is safe”.

27

Intended imprecision is appropriate when: (1) supplier knows or will know more details than specifier (2) neither supplier nor specifier know details Intended imprecision should be “marked”.

28

slide-17
SLIDE 17

9/4/2018 15

Example: Product manager writes – Our next generation chromatograph must have a “faster” cycle time than our fastest current model.

29

Selecting an alternative causes “derived precision” in a requirement

30

slide-18
SLIDE 18

9/4/2018 16

31

Remember Jewel Beetles and Kangaroos

32

slide-19
SLIDE 19

9/4/2018 17

33

Two content-rich support sites

  • 1. UnderstandingRequirements.com

88 downloadable readings > 1K pages of additional material 2. Quality-Aware.com Downloadable quality model with > 60 qualities > 30 characteristics/quality

34

slide-20
SLIDE 20

9/4/2018 18

Contact Dave with questions and comments E-mail: david@clearspecs.com Phone: 480-296-3559

35