SOFTWARE VERIFICATION AND VALIDATION BY: MITCHELL LANE
TOPICS • T erms and Methods • Historic Failures • Licenses and certifjcation • Warranties • Ethical Evaluations
• Software Validation- Does the model accurately represent the system • Ensures design specifjcations are meet • Ensures user’s needs are meet • Predict to validate • Experts • Software Verifjcation- Does the program Implement the model • Does the product fulfjll its plans • Done by quality assurance team
INDEPENDENT SOFTWARE VERIFICATION AND VALIDATION (ISVV) • Goal is to increase software quality of safety-critical systems • Consists of fjve phases • Planning- selection of tools and methods • Requirements Verifjcation- verifjes completeness, correctness, and testability along with feasibility and maintenance • Design Verifjcation- does is meet standards of software requirements • Code Verifjcation- verifjes completeness, correctness, and testability • Validation- Identifjes weak components. Black and white box testing.
Types of Testing Black Box White Box Functional Unit System Integration Stress Performance Usability Acceptance Regression Beta
IEC 62304
MIL-STD-498 • Establishes uniform requirements for software development and documentation • Consists of plans, requirements, design, quality, manuals, support manuals, software • 22 Data Item descriptions • Quality • Software test plan- plan for qualifjcation testing • Software test description- T est cases/procedures for qualifjcation tests • Software test report- T est results of qualifjcation testing
WHY WE NEED TO VALIDATE OR VERIFY SOFTWARE • Lives are at stake • Money • Security • Meeting owner/user requirements Problems • Many difgerent User inputs • Fully tested software is impossible • T esting only reveals bugs, doesn’t prove none exist
NECESSITY OF HIGH AVAILABILITY • Medical • Air traffjc control • Emergency services
THERAC-25 • Designed to administer x-ray and electron beams from a difgerent room to the Patient • Re-used software from Therac-6 and Therac-20 to save money • Had variety of software and hardware issues (two software issues were race conditions) • Changing mistakes quickly caused change to go unnoticed • 0-255 counter used to determine if gun was ready to fjre. If administer hit set at right time it could administer the radiation because counter is 0.
MINNESOTA LICENSING AND REGISTRATION SYSTEM (MNLARS) • Replace 30 year old legacy system • Pre-launch testing was not meet • During testing said low number of bugs • Inaccuracies and delays in processing of license and title transactions
OTHER HISTORIC FAILURES • Software billing errors from Qwest • London’s ambulance dispatch system • iPAQ computers on Amazon ofgered below retail price • Patriot Missile • Mars Climate Orbiter • T okyo Stock Exchange
LICENSE AND CERTIFICATION • No Licensing or Certifjcation required • College Degree not Required • No continuing of education • Membership in society is optional
WARRANTIES • T oday many company’s guarantee money back if the program fails. • Many company’s guarantee difgerent outcomes of there product. • Microsoft Offjce 2010- says if instructions are followed, the software will perform substantially as described • Railroad T ycoon- promised only the ability of being able to install the software • Civilization Revolution game- “licensor does not warrant… that the software will meet your requirements; that operation of the software will be uninterrupted or error-free, or that the software will be compatible with third party software or hardware or that any errors in the software will be corrected.”
RELEASING PREMATURE OR UNTESTED SOFTWARE TO BE THE FIRST • Kantianism - uses people as a means to end to be the fjrst competitor • Act Utilitarianism - wrong because the negative of efgects that come from buggy software out weigh the good. • Good- Receive program faster, potential for company to fjx errors • Bad- Slow productivity, Inaccuracies, could be unusable • Rule Utilitarianism - everyone releasing software prematurely would lead to unhappiness
CITATIONS • https://en.wikipedia.org/wiki/Software_verifjcation_and_validation • http://toolsqa.com/software-testing/difgerence-between-verifjcation- and-validation/ • https://en.wikipedia.org/wiki/IEC_62304#Software_development_pr ocess • https://en.wikipedia.org/wiki/MIL-STD-498 • https://dps.mn.gov/divisions/dvs/programs/mnlars/Pages/default.as px • https://en.wikipedia.org/wiki/High_availability • Ethics for the information age Michael J. Quinn
QUESTIONS
Recommend
More recommend