Fujii-p33 - Software Verification and Validation...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Software Verification and Validation (V&V) Validation By Roger U. Fujii Presented by Donovan Faustino Introduction Introduction The paper has these following topics. Software V&V Concepts Planning for V&V Life Cycle V&V Tasks V&V Techniques and Methods Measurements Applied to V&V What is V&V? Definitions Definitions V&V V&V – a system engineering discipline employing a rigorous methodology for evaluating and assessing the correctness and quality of software throughout the software life cycle. software Verify Verify a developers process is technically sound. sound. V&V and QA V&V V&V V&V and QA are not the same, but compliment each other. each V&V V&V usually focuses on ensuring the requirements are being met, the overall project is focused on the correct objectives, and risk is being managed. being QA is focused on the day to day aspects of a QA project and is used to determine if procedures are followed V&V Concepts V&V Benefits Early Early of V&V detection leads to a better solution rather than quick fixes rather Validating the solution is solving the “right Validating problem” against software requirements problem” Objective evidence of software and system Objective compliance to quality standards compliance Support process improvements with an Support objective feedback on the quality of development process and products development Field of Application Field Important Important to conduct V&V in its interactions with the system of which it is part. part. V&V examines the interaction with each of V&V the key system components. the The V&V process addresses the following The interactions with software environment, operators/users, hardware, and other software. software. Planning for V&V Planning Scope of work Software Integrity Levels Development of the Software V&V Plan Development (SVVP) (SVVP) Cost of V&V Planning for V&V (cont) Planning V&V V&V is more effective when initiated during the acquisition process and throughout the life cycle of the software. throughout V&V has importance levels or called V&V “Integrity Levels” “Integrity Example Example Medical device – high level Personnel record-keeping system – low level Integrity Levels Integrity The The level is a range of values that represent software complexity, criticality, risk, safety level, security level, desired performance, reliability, or other project-unique characteristics. other Each level defines the minimum required V&V Each tasks. tasks. ANSI/IEEE Std 1012 defines four levels. Level 4 ANSI/IEEE is assigned to high-assurance or critical systems is Development of the Software V&V Plan (SVVP) Plan How How the V&V process is to be accomplished accomplished Pg 36 gives a list. 13 key steps. Cost of V&V Cost How much software V&V is adequate? Rule of thumb for estimating V&V efforts ranges Rule 10% - 33% depending on the software integrity level. level. 33% - life sustainig medical devices or nuclear 33% weapons weapons 20-25% - telecommunications or financial 20-25% systems systems 10-18% systems desiring software quality but 10-18% not high-integrity not Life Cycle V&V Tasks Life Pg Pg 37-39 explains what V&V tasks go through the life cycle of the project through Goes throughout the life cycle of V&V Goes starting from the Acquisition phase and all the way to the Maintenance phase. the The tasks listed in the book is defined The from the ANSI/IEEE Std. 1012. from Life Cycle V&V Tasks Life Acquisition V&V Supply V&V Development V&V (Concept, Requirements, Development Design, Implementation) Design, Development V&V (Test) Development V&V (Installation and Checkout) Operation V&V Maintenance V&V V&V Techniques and Methods V&V Audits, Reviews, and Inspection Analytic Techniques Dynamic Techniques Audits, Reviews, and Inspection Audits, V&V V&V use these techniques to verify the software during its development process software Peer Reviews Documentation inspections Requirements/design/code reading Test witnessing Test Installation audits Analytic Techniques Analytic Static Static analysis of the software (i.e, requirements, design, or code) using graphical, mathematical formulas or diagrams. diagrams. Effective in error detection at the software Effective unit level unit Analytic Techniques Analytic Control (data) flow diagramming Interface input/output/process Interface diagramming diagramming Algorithm and equation analysis Database analysis Sizing and timing analysis Proof of correctness Dynamic Techniques Dynamic Involve the execution of the software. Effective at error detection when software Effective units are combined at the integrated subsystem and system levels subsystem Dynamic Techniques Dynamic Simulation and modeling Hardware/software benchmark testing Hardware-in-the loop testing – the system Hardware-in-the config. is heavily instrumented to simulate different test scenarios to be created. different Scientific testing – coding of the target Scientific requirements/design using a generalrequirements/design purpose computer and higher order purpose language. Measurement Applied to V&V Measurement Uses Uses various calculated measurements to determine when the analysis or testing is completed, where errors are mostly likely to occur in the software, and what development process or function is causing the largest number of errors. causing Based on these measurements, the Based software engineer can determine where to concentrate their efforts. concentrate Measurement Methods Measurement Software Software Structural Metrics – measures pinpoint program logic having greater logical or data complexity complexity Statistics-Based Measurements – examines Statistics-Based program error rates, categorization of errors, and error discovery time periods error Trend Analysis – analyzing percent of errors with Trend historical data historical Prediction-Based Measurement – using Prediction-Based reliability models to determine how much analysis and test effort to be done. analysis Conclusions Conclusions The The V&V methodology and measurements are outlined in ANSI/IEEE Standard 1012. Provides the framework for achieving an Provides effective V&V effort effective V&V is part of the software quality management V&V process as defined in the IEEE SWEBOK. process Complimentary to and supportive of the software Complimentary quality assurance, reviews, and inspections. quality Questions? Questions? ...
View Full Document

This note was uploaded on 08/25/2011 for the course EEL 6883 taught by Professor Staff during the Spring '08 term at University of Central Florida.

Ask a homework question - tutors are online