The First in GPON Verification Classic Mistakes Verification Leadership Seminar Racheli Ganot FlexLight Networks.

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

Testing and Quality Assurance
The Secrets of Practical Verification… © 2008 Think Verification.
Annoucements  Next labs 9 and 10 are paired for everyone. So don’t miss the lab.  There is a review session for the quiz on Monday, November 4, at 8:00.
Chapter 2Test Specification Process. n Device Specification Sheet – Purpose n Design Specification – Determine functionality of design n Test List Generation.
Chapter 10 Schedule Your Schedule. Copyright 2004 by Pearson Education, Inc. Identifying And Scheduling Tasks The schedule from the Software Development.
Abirami Poonkundran 2/22/10.  Goal  Introduction  Testing Methods  Testing Scope  My Focus  Current Progress  Explanation of Tools  Things to.
S EMINAL : Searching for ML Type-Error Messages Benjamin Lerner, Dan Grossman, Craig Chambers University of Washington.
(Quickly) Testing the Tester via Path Coverage Alex Groce Oregon State University (formerly NASA/JPL Laboratory for Reliable Software)
CSE 331 wrapup CSE 331 University of Washington. CSE 331 goals Enable students to manage complexity ensure correctness write modest programs.
Debugging CPSC 315 – Programming Studio Fall 2008.
Individuals and interactions
20-Jun-15 XP Again. Test-Driven Development Advantages of writing tests first: Clarifies what the methods are supposed to do Methods are testable Methods.
Quality is about testing early and testing often Joe Apuzzo, Ngozi Nwana, Sweety Varghese Student/Faculty Research Day CSIS Pace University May 6th, 2005.
2/9/2007EECS150 Lab Lecture #41 Debugging EECS150 Spring2007 – Lab Lecture #4 Laura Pelton Greg Gibeling.
EE694v-Verification-Lect5-1- Lecture 5 - Verification Tools Automation improves the efficiency and reliability of the verification process Some tools,
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
02/10/06EECS150 Lab Lecture #41 Debugging EECS150 Spring 2006 – Lab Lecture #4 Philip Godoy Greg Gibeling.
Introduction to Software Testing
VENDORS, CONSULTANTS AND USERS
Approaches to ---Testing Software Some of us “hope” that our software works as opposed to “ensuring” that our software works? Why? Just foolish Lazy Believe.
Presented by Brian Griffin On behalf of Manu Goel Mohit Goel Nov 12 th, 2014 Building a dynamic GUI, configurable at runtime by backend tool.
Scenario testing Tor Stålhane. Scenario testing – 1 There are two types of scenario testing. Type 1 – scenarios used as to define input/output sequences.
CSE 486/586 CSE 486/586 Distributed Systems PA Best Practices Steve Ko Computer Sciences and Engineering University at Buffalo.
1 Design and Integration: Part 1 Nuggets about Design vs Project Management.
DIRAC Web User Interface A.Casajus (Universitat de Barcelona) M.Sapunov (CPPM Marseille) On behalf of the LHCb DIRAC Team.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
Data Flow Diagram A method used to analyze a system in a structured way Used during: Analysis stage: to describe the current system Design stage: to describe.
CMSC 345 Fall 2000 Unit Testing. The testing process.
CMIS 470 Structured Systems Design Object-Oriented Analysis and Design – Sequence Diagrams; BPP details Week 5.
1 Reportnet for Noise: Feedback from member countries Colin Nugent Eionet National Reference Centres for Noise meeting Copenhagen October 2009.
CSC 395 – Software Engineering Lecture 12: Reusability –or– Programming was Bjarne Again.
Testing 99 PART 2: Getting Going (chapter 10) Gradual adoption Current practice is changed little in each step. First step: use coverage. If coverage is.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Topics n Design methodologies.
Professional IT Roles Investigate IT professional roles. Find out what each role involves, what the job entails. Identify what personal qualities are needed.
CS 350, slide set 5 M. Overstreet Old Dominion University Spring 2005.
Software Development. Software Developers Refresher A person or organization that designs software and writes the programs. Software development is the.
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
Systems Life Cycle. Know the elements of the system that are created Understand the need for thorough testing Be able to describe the different tests.
VENDORS, CONSULTANTS AND USERS. WHY CAN’T COMPANIES DEVELOP THEIR OWN ERP PACKAGES? To develop an ERP package is a complex & time consuming activity which.
BA Team: Product Ownership, Analysis, and Solution Design BA Bi-Weekly Mini-meeting May 19, Acceptance Criteria Defining Success one Story.
1 Design and Integration: Part 2. 2 Plus Delta Feedback Reading and lecture repeat Ambiguous questions on quizzes Attendance quizzes Boring white lecture.
Chapter 7 The Practices: dX. 2 Outline Iterative Development Iterative Development Planning Planning Organizing the Iterations into Management Phases.
CSE 331 Software Design & Implementation Hal Perkins Autumn 2012 Wrapup 1.
Software Testing Process By: M. Muzaffar Hameed.
Software Maintenance Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
Software Engineering Jon Walker. What is Software Engineering? Why do we call it Software Engineering? Why not just call it programming or software development?
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Software Quality Assurance and Testing Fazal Rehman Shamil.
Version Control and SVN ECE 297. Why Do We Need Version Control?
Work Arbitrage  get paid helping others find work! Zero investment Work from home Immediate start Fast and easy Zero training or investment.
Week # 4 Quality Assurance Software Quality Engineering 1.
CLASSIFICATION AND DIVISION A type of analysis. Analysis Breaking something down into parts to understand or explain it better Division takes a whole.
 Is it a struggle to keep on top of program or donor information?  Are you wasting postage and effort mailing to your entire list rather than tailoring.
Software Documentation in an Agile Environment
CSE 331 Software Design & Implementation
C++ coding standard suggestion… Separate reasoning from action, in every block. Hi, this talk is to suggest a rule (or guideline) to simplify C++ code.
environment infrastructure
Software Documentation
VENDORS, CONSULTANTS AND USERS
Web User Interface (WUI) Behavior
Introduction to Software Testing
CSCE 315 – Programming Studio, Fall 2017 Tanzir Ahmed
EECS150 Fall 2007 – Lab Lecture #4 Shah Bawany
Experiment with course materials concerning ‘Threads’
Software Verification, Validation, and Acceptance Testing
Test Cases, Test Suites and Test Case management systems
Think about your view of QA
Presentation transcript:

The First in GPON Verification Classic Mistakes Verification Leadership Seminar Racheli Ganot FlexLight Networks

The First in GPON Introduction It’s easy to make mistakes when verifying a DUT or planning a testing effort. Some mistakes are made so often, so repeatedly, by so many different people, that they deserve the label Classic Mistakes.

The First in GPON The presentation contents is divided to three main topics:  Verification team / personnel issues  Planning the testing efforts  The verificator at work

The First in GPON Mistake Declarations: Suggesting solution.

The First in GPON Verification team Personnel Issues Who should test?

The First in GPON Hire one verificator per two or more designers. Ideal verification team includes at least equal amount of engineers as a design team, In particular if the designers don’t write tests at all.

The First in GPON Using new and inexperienced engineers as verificators. A bozo in verification is dangerous like a bozo in design ( and even more ).

The First in GPON Recruiting verificators from the ranks of failed designers. A bad designer likely has some work habits that will make him a bad verificator too. For example, someone who makes lots of bugs because he is inattentive to details will miss lots of bugs from the same reason.

The First in GPON Relying on designer explanations about his updates. Suspicion is a good quality for the verificator.

The First in GPON Designers can’t test their own code. Designers test their own code all the time and they do find bugs, just not enough of them, which is why we need independent verification. Designers can do a perfectly fine job, finding basic functional bugs, but the verificators are the ones to perform the most thorough tests ( different & complex scenarios, special cases, error cases, interaction with other blocks etc.).

The First in GPON Planning the testing effort How should the whole team’s work be organized?

The First in GPON Starting verification too late. Starting verification design when starting HDL design. It doesn’t only improve the environment and give time to develop friendly user interface, but also can prevent designer’s bugs (because he knows the cases that will be checked).

The First in GPON Working with no methodologies. Defining set of verification rules for the team:  Enable each one to understand and support the others’ code.  Enable smooth interaction between blocks in the full chip level.  Very helpful for new employees.

The First in GPON Design block level environment with no preparation / matching for full-chip. These plans are never perfect, but they still decrease the full-chip conversions time.

The First in GPON Test plans are biased toward too specific functional testing. Test plans should include real scenarios, i.e. a set of functions in reasonable order.

The First in GPON Verification plan review is done by the verificator and the block design owner Including more verificators and designers in these reviews can save a lot of time. It is done by learning from others’ experience, sharing similar features and parts of code.

The First in GPON It is preferable to verify more features for basic functions, than checking deeply less features. Complete verification of a single module before starting the next one.

The First in GPON Implementing stress tests on the last minute. For example: DUT that works with several channels and has been checked with only a single one, is almost the same as if this DUT hasn’t been checked at all.

The First in GPON The Verificator at work Designing, writing, debugging, and maintaining tests.

The First in GPON Writing / updating specs at the end of the project (“when we will have time”). Keep your docs open on your desktop during coding and update changes immediately.

The First in GPON Writing tests without enough knowledge about the DUT. It’s better to waste two more days of learning and understanding the DUT, instead of ten days of confusion and uncertainty debugging.

The First in GPON Effort to find bugs for rare scenarios. Important bug is the one that important to customers.

The First in GPON Tests that are understandable only by their owners. Printing clear information and detailed error messages during the test.

The First in GPON Paying more attention to running tests than to designing them.  Test review meetings  Adding coverage items  Increase / decrease randomization in tests according to the coverage results

The First in GPON Relying on the generation in the checker. Less is better mainly for the modularity in full- chip.

The First in GPON Checking that the product does what it’s supposed to do, but not that it doesn’t do what it isn’t suppose to do. Examples:  The output signals need to be checked all the time, not only when a change is expected.  All registers need to be checked after updating a single register (particular test).

The First in GPON Repeat same mistakes at the same team. Sharing knowledge and insights can save a lot of the team’s spent time.

The First in GPON Failing to take notes for the next project After each project is ended, it is mandatory to take notes and come up with conclusions, and then follow them in the next projects.

The First in GPON The End! "If I had to live my life again, I'd make the same mistakes, only sooner". -- Tallulah Bankhead