+ All Categories
Home > Documents > Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance Ensure follow process Solid, reviewed...

Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance Ensure follow process Solid, reviewed...

Date post: 19-Jan-2016
Category:
Upload: henry-mills
View: 212 times
Download: 0 times
Share this document with a friend
13
SE 3800 NOTE 11 QUALITY Dr. Rob Hasker Dr. Brad Dennis
Transcript
Page 1: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

SE 3800NOTE 11QUALITY

Dr. Rob Hasker

Dr. Brad Dennis

Page 2: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

Classic Quality Assurance Ensure follow process

Solid, reviewed requirementsReviewed designReviewed, passing tests

Why doesn’t “we did a good job” work? Why isn’t this model needed for Scrum? Why do we need something?

Page 3: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

A little history

What’s the Hippocratic oath? Therac-25: medical linear accelerator

Generates high-energy beamsTargets tumors from multiple angles

June, 198561-year old woman receives radiation therapyShe received 15,000 to 20,000 rads

○ Typical therapeutic does: in range of 200 rads○ 1000 rads can be fatal

Her breast had to be removed, constant pain in arms Nov 3, 1985: patient dies after receiving 13,000 to

17,000 rads

Page 4: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

A little history

March, April 1986Patient receives 16,500 to 25,000 rads in < 1 secWithin weeks: paralysis in an arm, legs, vocal cordsDied 5 months later

At least 3 other documented deaths Cause: poor software design

Interface assumed operators would type slowlyExperienced operators could type faster than SW

allowed, so data entry was setting a different field than shown on screen

Classic race condition: timing assumptions gone wrong

Page 5: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

What is the root cause?

Simple root cause analysis: ask why 6 times

Multiple failures beyond designManufacturer: poor safety model

○ Relied on hardware reliability○ Reliability: likely to work ≠ safety: no harm

Hardware engineers: assumed SW worked○ Inadequate logs

SW Developers: poor specs, no processMedical authorities: slow to respond

Page 6: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

But that can’t happen today, right?

July, 2015: Wired reports ability to remotely control JeepsSet radio blaringEngaged windshield

wipersDisabled acceleratorDisabled brakes

Method:Connect via cellularRewrite entertainment firmwareConnect to CAN busSend signals to engine, brakes, etc.

Page 7: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

Software Quality Assurance Need a process to ensure SW well

designed, testedWho signs off on that in an agile model?What do they look for?

Open questions!!

Page 8: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

SQA

Definition of software quality Goals Methods Quality metrics

Page 9: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

CMMI

How can an organization establish it provides quality software?

One solution: capability maturity model

Page 10: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.
Page 11: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

Another approach What can you accomplish by testing?

Showing the existence of bugsNOT: showing system has no bugs

Solution: prove system correctProvide formal specification

○ Basic tool: mathematics – esp. set theoryCan then prove theorems

LimitationsWriting specifications is difficultLimited support for theorems

Has been done for compilers, safety critical systemsEasy to dismiss, but strong limits to testing

Page 12: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

Model-based Development

Page 13: Dr. Rob Hasker Dr. Brad Dennis. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests.

Proving code works

Z specification:


Recommended