Test and Verification Solutions128 th Feb 2012 Test and Verification Solutions How I Learned to Stop Worrying and Love Benchmarking Functional Verification!

Slides:



Advertisements
Similar presentations
Develop an Information Strategy Plan
Advertisements

Extreme Programming Alexander Kanavin Lappeenranta University of Technology.
The Secrets of Practical Verification… © 2008 Think Verification.
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
Evaluating Requirements. Outline Brief Review Stakeholder Review Requirements Analysis Summary Activity 1.
ITIL: Service Transition
MS-SoC Best Practices – Advanced Modeling & Verification Techniques for first-pass success By Neyaz Khan Greg Glennon Dan Romaine.
Process Improvement.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 28 Slide 1 Process Improvement.
Capability Maturity Model (CMM) in SW design
Lecture 2b: Software Project Management CSCI102 - Introduction to Information Technology B ITCS905 - Fundamentals of Information Technology.
Fundamentals of Information Systems, Second Edition
1 R&D SDM 1 Software Project Management Capability Maturity Model 2009 Theo Schouten.
Introduction to Software Testing
Organizational Project Management Maturity: Roadmap to Success
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
Chapter : Software Process
Process: A Generic View
Integrated Capability Maturity Model (CMMI)
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Module CC3002 Post Implementation Issues Lecture for Week 6 AY 2013 Spring.
N By: Md Rezaul Huda Reza n
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
Software Testing Life Cycle
Testing – A Methodology of Science and Art. Agenda To show, A global Test Process which work Like a solution Black Box for an Software Implementation.
Business Analysis and Essential Competencies
Testing Challenges in an Agile Environment Biraj Nakarja Sogeti UK 28 th October 2009.
Incorporating Pragmatic Usability Testing Into a Software Test Plan Carla Merrill, Ph.D. Focused Design focuseddesign.com
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
1 Software Development Configuration management. \ 2 Software Configuration  Items that comprise all information produced as part of the software development.
INT-Evry (Masters IT– Soft Eng)IntegrationTesting.1 (OO) Integration Testing What: Integration testing is a phase of software testing in which.
Software Engineering Lecture # 17
Service Transition & Planning Service Validation & Testing
Leaders in Asset Management Big Plans for your Property System? How to plan for a Property System Project Prepared by: Yudiann Carlo, CPPS
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
Commissioning Self Analysis and Planning Exercise activity sheets.
The First in GPON Verification Classic Mistakes Verification Leadership Seminar Racheli Ganot FlexLight Networks.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 2 The Software Process Discussion of the Software Process: Process Framework,
University of Sunderland CIFM03Lecture 2 1 Quality Management of IT CIFM03 Lecture 2.
Lecture Topics covered CMMI- - Continuous model -Staged model PROCESS PATTERNS- -Generic Process pattern elements.
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
Jeffrey Murray Test Manager PowerPoint Microsoft Silicon Valley.
Assessment Workshop Title of the Project (date). Project Title Assessment Workshop October 25, 2015© Company Name All rights reserved2 Agenda Purpose.
System Analysis (Part 3) System Control and Review System Maintenance.
@2002 Copyright, Itreya Technologies CMMI kick off July 2005.
Software Engineering - I
Introduction to Software Engineering. Why SE? Software crisis manifested itself in several ways [1]: ◦ Project running over-time. ◦ Project running over-budget.
Document Number: Version: 1v0 © Outperform UK Ltd 1 Assessing the change capability of an organisation Jennifer Stapleton.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
1 Chapter 3 1.Quality Management, 2.Software Cost Estimation 3.Process Improvement.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
1 SEI Capability Maturity Model Advanced Software Engineering COM360 University of Sunderland © 2000.
Self Assessment SELF ASSESSMENT FOR YOU Ann Pike 30 th September 2010.
COMPGZ07 Project Management CMMI Project Planning Lecture 5b Graham Collins, UCL.
CS223: Software Engineering Lecture 18: The XP. Recap Introduction to Agile Methodology Customer centric approach Issues of Agile methodology Where to.
Tool Support for Testing Classify different types of test tools according to their purpose Explain the benefits of using test tools.
Judy Stafford Comp 190 – Meeting 2 February 2, Working to get it Right.
PROCESS ASSESSMENT AND IMPROVEMENT. Process Assessment  A formal assessment did not seem financially feasible at the onset of the company’s process improvement.
Software Project Configuration Management
Software Engineering (CSI 321)
SAMPLE Develop a Comprehensive Competency Framework
CMMI Q & A.
Information Technology Project Management – Fifth Edition
9/16/2018 The ACT Government’s commitment to Performance and Accountability – the role of Evaluation Presentation to the Canberra Evaluation Forum Thursday,
Introduction to Software Testing
Software Verification, Validation, and Acceptance Testing
Extreme Programming.
Patient and Staff Experience Thematic Reviews
Presentation transcript:

Test and Verification Solutions128 th Feb 2012 Test and Verification Solutions How I Learned to Stop Worrying and Love Benchmarking Functional Verification! DVCon 2012 Mike Bartley, TVS

2 Test and Verification Solutions228 th Feb 2012 Recognise any of these? Why do we always miss our verification deadlines? Surely we could have found these bugs earlier? How comes we seem to have bugs in some basic use case scenarios? Why do our sites have such different verification capabilities? How do I integrate this new team in ….? Why do we seem to make the same mistakes over and over again?

3 Test and Verification Solutions328 th Feb 2012 Why benchmark? To understand current verification capability –and identify improvements Better prepare for tomorrow –Increasing verification complexity –Reduced time to market –Reducing costs How does benchmarking help with that? –Measure the maturity of functional verification activities –Gain an integrated view of the organisation functional verification capability –A framework for continuous process improvement Define goals, priorities and actions Regular measurement of progress

4 Test and Verification Solutions428 th Feb 2012 Other benchmarks are available CMMi –General purpose and heavyweight –Does not address the specific capabilities relevant to verification Evolving Capabilities Model –Foster and Warner How is FV-CMM different? –View of the whole org from functional verif aspect –Objective measure –Framework for process improvement –Top-down decomposition and bottom-up evaluation –3 key elements: capability, maturity and process

5 Test and Verification Solutions528 th Feb 2012 Different Views of Verification Within a Project

6 Test and Verification Solutions628 th Feb 2012 Process areas 1 Specification and design 2 Functional Verification Planning and Scenario 3 Block level 4 Top level stress testing 5 System level 6 Regressions 7 Metrics, coverage and closure 8 Checkers and properties 9 Configuration control 10 Debug 11 Bug Tracking 12 Reviews 13 Organisational Capability

7 Test and Verification Solutions728 th Feb 2012 Verification Teams Can Have Wildly Different Views

8 Test and Verification Solutions828 th Feb 2012 Evaluation: Axes and levels InitialManagedDefinedQuantitativeOptimising OwnershipIndividualProject TeamProject Stakeholders or ad hoc groups of projects CommunityCompany wide or institutionalised VisibilityNot documented No reviews. No metrics. Documents incomplete or unmaintained. Point reviews. Progress metrics. Maintained docs. Continuous tracking against quality metrics. Living docs. Quantified quality metrics. Data integrated across the organisation. ExecutionAd hocTasks performed but completion not explicitly checked Tasks planned and implemented in a systematic fashion. Check completion of planned tasks. Quantifiable metrics used for coverage closure and release determinism Quantifiable metrics used to drive continuous improvement.

9 Test and Verification Solutions928 th Feb 2012 Looking at Different Sites Across the Organisation

10 Test and Verification Solutions1028 th Feb 2012 The Benchmarking Process FV-CMM process areas Maturity Ownership VisibilityExecution 5 System level testing 3. Defined2. Project Team 3. Maintained documents and point reviews 3. Tasks planned and implemented in a systematic fashion 5.1 The purpose of each test bench should be clearly identified 3. Defined2. Project Team 3. Maintained documents and point reviews 3. Tasks planned and implemented in a systematic fashion The purpose and the scenarios to be reached by each test bench should be clearly identified. The purpose must consider the appropriate level of testing for the various scenarios (e.g. integration with other IP, software debug features, low power features, performance validation via benchmarking) Environment to run real world software. This is the big thing emulators gives them and it hits things they wouldn't find anywhere else. A mix of what historically available (Symbian, WinCE and Linux), what feels as though it could be useful and the available simulation capacity. Use irritators for OS booting and stress apps. that try to make use of some key system features such as virtualisation and TrustZone. Some reusable software like "crashme", "memcopy". Run this againstr different configs of hardware such as a small L2 cache to increase stress. Can also use Cambridge knowledge from A9 of what cases found bugs Regression testing, using appropriate scenarios and checkers, should be used to validate bug fixes and ensure errors are never reintroduced. Figure 3 Example of completed spreadsheet

11 Test and Verification Solutions1128 th Feb 2012 So how does benchmarking answer these? Why do we always miss our verification deadlines? –Weakness in particular process areas Surely we could have found these bugs earlier? –Is system verification stronger than block and/or top? How comes we seem to have bugs in some basic use case scenarios? –Weak verification planning and reviews

12 Test and Verification Solutions1228 th Feb 2012 So how does benchmarking answer these? Why do our sites have such different verification capabilities? – Weak organisational capabilities do not promote knowledge sharing How do I integrate this new team in ….? –First understand their strengths and areas for improvement Why do we seem to make the same mistakes over and over again? –Are you collecting the right data? –Are you doing continuous improvement via benchmarking?

13 Test and Verification Solutions1328 th Feb 2012 Summary Benchmarking helps to –Measure the maturity of functional verification activities –Gain an integrated view of the organisation functional verification capability –A framework for continuous process improvement FV-CMM is proven lightweight becnhmarking process