SE 3800 Software Engineering Process II

SE 3800 Software Engineering Process II

Dr. Rob Hasker SE 3800 NOTE 12 QUALITY Classic Quality Assurance Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests

Why doesnt we did a good job work? Why isnt this model needed for Scrum? Why do we need something? A little history Whats the Hippocratic oath? Therac-25: medical linear accelerator Generates high-energy beams Targets tumors from multiple angles

June, 1985 61-year old woman receives radiation therapy She 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 A little history

March, April 1986 Patient receives 16,500 to 25,000 rads in < 1 sec Within weeks: paralysis in an arm, legs, vocal cords Died 5 months later At least 3 other documented deaths Cause: poor software design Interface assumed operators would type slowly Experienced 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 What is the root cause? Simple root cause analysis: ask why 6 times Multiple failures beyond design Manufacturer: 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 process Medical authorities: slow to respond But that cant happen today, right? July, 2015: Wired reports ability to remotely control Jeeps Set radio blaring Engaged windshield wipers Disabled accelerator Disabled brakes

Method: Connect via cellular Rewrite entertainment firmware Connect to CAN bus Send signals to engine, brakes, etc. Software Quality Assurance Need a process to ensure SW well designed, tested Who signs off on that in an agile model? What do they look for?

Open questions!! DO-178C Software Considerations in Airborn Systems and Equipment Certification Used by FAA, EASA (European), Transport Canada Published 2012, replaced DO-178B Core: documentation standards Plan for Software Aspects of Certification

Software Quality Assurance Plan Software Development Plan Software Verification Plan Software Levels: failure conditions Level A: Catastrophic Multiple fatalities, often loss of aircraft Level B: Hazardous Crew under high stress, workload Potential fatalities among passengers

Level C: Major Reduced safety margin, slight increase to crew workload Possible passenger discomfort and even injuries Level D: Minor Slight crew function impairment, routine change in flight plan Level E: No safety effect DO 178C

Traceability Requirements Trace required for this certification level SQA Software quality assurance (Wikipedia): Monitoring the SE processes and methods used to ensure quality Sample quality metrics:

Code coverage metrics Errors per line of code during development Defect tracking metrics, esp. defects/user CMMI How can an organization establish it provides quality software? One solution: capability maturity model Another approach What can you accomplish by testing?

Showing the existence of bugs NOT: showing system has no bugs Solution: prove system correct Provide formal specification Basic tool: mathematics esp. set theory Can then prove theorems Limitations Writing specifications is difficult Limited support for theorems

Has been done for compilers, safety critical systems Easy to dismiss, but strong limits to testing Quality past and future Old school software quality Convincing engineers to follow process Ensuring adequate testing CMMI: ensuring quality standards in place, effective Agile: software quality assurance is dead?

Problem: how to certify? Future: proven quality

Recently Viewed Presentations

  • Employee Recognition Training - California

    Employee Recognition Training - California

    This employee recognition training provided by department training officers to their respective managers and supervisors will meet the Continual Leadership Training and Development requirements for leaders as long as it "focuses on improving or expanding leadership skills and aligns with...
  • Distincitve Qualities of Anthropology Concept of Culture ...

    Distincitve Qualities of Anthropology Concept of Culture ...

    aka "Lucy's Baby" Prehistoric Cultures ... we would LOVE to take you along with us around the world, ... Distincitve Qualities of Anthropology Concept of Culture Comparative Method Wholistic Approach Last modified by: Tim Roufs Company:
  • Fluids and Electrolytes - Faculty Site Listing

    Fluids and Electrolytes - Faculty Site Listing

    Fluids and Electrolytes. Metropolitan Community College. Fall 2013. Jane Miller, RN MSN. ... excessive aldosterone secretion. Diabetes insipidus: excessive fluid loss ... Head trauma = can cause increased secretion of ADH despite normal fluid volume.
  • Informative Writing - 6th Grade Humanities

    Informative Writing - 6th Grade Humanities

    An Introduction An informative essay, also known as an expository essay, gives the reader detailed information about a specific topic. Informative/expository essays ...
  • Managed Care contracting in an ASP World - ANCO On-Line

    Managed Care contracting in an ASP World - ANCO On-Line

    Managed Care contracting in an ASP World John E. Hennessy Executive Director ... the prescription drug business is still AWP driven. 2005 Admin codes use G-codes, which commercial payor systems do not like. This means that the 2004 compensation models...
  • A glance at interesting projects - LEGO Engineering

    A glance at interesting projects - LEGO Engineering

    Calibri MS Pゴシック Arial Office Theme A glance at interesting projects Slide 2 Context Diana's nail polish device Women in Engineering and Computer Science Lilypad Arduino Service learning Support Links Research What works? Why it works? CEEO Research Research in...
  • Introduction and Falling Balls

    Introduction and Falling Balls

    (Earnshaw's Theorem) / 전자석을 이용할 경우: 전자석은 전류가 흐를 때만 자성을 띠는 코일이기 때문에, 전류를 통제( 궤환)함으로써 자기부상을 안정화 할 수 있으나, 매우 복잡한 통제 시스템과 거의 완벽한 기차와 철로를 필요로 한다.
  • 2016 Budget Planning

    2016 Budget Planning

    In addition, she served as senior investment advisor to the executive management of BNY Mellon Investment Management, was a member of the BNY Mellon Benefit Investment Committee, and headed up the firm's outsourced CIO efforts. Cynthia has more than 20...