SlideShare a Scribd company logo
STATIC TESTING
       Hoang V. Nguyen
       startnewday85@gmail.com
       startnewday85.blogspot.com
       Dept. of Computer Science – FIT - HUA




Tester Training Course
User                                                            Acceptance
requirements                                                          Testing

        System
                                                           System Testing
     requirements

                                                      Integration
          Global Design
                                                        Testing


               Detailed Design                    Unit Testing



                                 implementation

Tester Training Course                                                       2011
• To find defects            • To find defects
• Examine the work product   • Use the product to collect
for errors                   failures
• without executing the      • must execute the code
code
 Tester Training Course                               2011
Tester Training Course   2011

Recommended for you

Static Testing
Static Testing Static Testing
Static Testing

Static testing involves examining a program's code and documentation without executing the code. It aims to improve quality by finding errors early. Techniques include informal reviews with minimal documentation; formal reviews following steps like planning, preparation, and follow-up; technical reviews of specifications; walkthroughs where authors explain work; and inspections led by moderators. Static testing allows early feedback but cannot find runtime issues and is time-consuming.

Strategies For Software Test Documentation
Strategies For Software Test Documentation Strategies For Software Test Documentation
Strategies For Software Test Documentation

Strategies For Software Test Documentation by Suriya G of Vishwak.com for Anna University Workshop on testing

testing documentation
Testing Best Practices
Testing Best PracticesTesting Best Practices
Testing Best Practices

The document discusses testing best practices for rich client applications. It outlines the challenges of testing user interfaces and interactions. It then describes different levels of testing from ad hoc to crowdsourcing. Unit testing, continuous integration, and automated functional testing are explained. The current state of testing tools for Titanium is presented along with a demo. Future directions including more automation and crowdsourced testing are envisioned.

titaniumsoftware testingappcelerator
 Early testing principle
      • rework cost in average is responsible for ~40% of the
      total software development cost
      • engineers spend up to 1/3 of their compiling & testing,
      relying on these activities to detect defects
  Development productivity can be improved
 and timescales reduced
  Testing costs and time can be reduced



Tester Training Course                                            2011
 Reductions in lifetime costs

     Improved communication results

     Gaining understand

     Aiding in professional development for
    team members



Tester Training Course                         2011
Tester Training Course   2011
 What can be inspected
          • anything that is written or typed

      What can be tested by static testing
          • Requirement specifications
          • Design document
          • Code
          • Schedules
          • Test plans, test cases, defect reports




Tester Training Course                               2011

Recommended for you

STLC
STLCSTLC
STLC

The document outlines the software testing life cycle (STLC) which is a systematic and planned process for testing software. The STLC includes requirement analysis to define what will be tested, test planning to identify activities, resources and schedules, test case development to detail test cases and data, test execution to run test cases and log results, and test cycle closure to generate reports and complete testing.

QA process Presentation
QA process PresentationQA process Presentation
QA process Presentation

The Heuristic Test Strategy Model provides a framework for designing effective test strategies. It involves considering four key areas: 1) the project environment including resources, constraints, and other factors; 2) the product elements to be tested; 3) quality criteria such as functionality, usability, and security; and 4) appropriate test techniques to apply. Some common test techniques include functional testing, domain testing, stress testing, flow testing, and scenario testing.

Software Testing Life Cycle
Software Testing Life CycleSoftware Testing Life Cycle
Software Testing Life Cycle

The document describes the key stages of the software testing life cycle (STLC), including contract signing, requirement analysis, test planning, test development, test execution, defect reporting, and product delivery. It provides details on the processes, documents, and activities involved in each stage. Risk analysis and bug/defect management processes are also summarized. Various test metrics and bug tracking tools that can be used are listed.

testingsoftware
 Deviations from standards

                          Requirements defects

                          Design defects

                          Insufficient maintainability

                          Incorrect interface specifications


Tester Training Course                                      2011
Tester Training Course   2011
Tester Training Course   2011
Tester Training Course   2011

Recommended for you

TESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPTTESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPT

The document describes the testing life cycle process which includes test plan preparation, test case design, test execution and log preparation, defect tracking, and test report preparation. It then provides details about each step of the testing life cycle process such as how to prepare test plans, design test cases, execute tests and log results, track defects, and prepare test reports.

Chapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for TestingChapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for Testing

Tool Support for Testing as Chapter 6 of ISTQB Foundation 2018. Topics covered are Tool Benefits, Test Tool Classification, Benefits of Test Automation, Risk of Test Automation, Selecting a tool for Organization, Pilot Project, Success factor for using a tool

istqb foundation level certificationistqb foundationistqb
Software testing
Software testingSoftware testing
Software testing

Testing is the process of evaluating a system or its components to find whether it satisfies specified requirements. Testing is generally done by software testers, developers, project managers, and end users. There are different types of testing like unit testing, integration testing, system testing, and acceptance testing. Testing is performed at various stages of the software development life cycle to verify that the system is built correctly and meets requirements.

 is a moderated meeting in which
                         reviewers list all issues and defects
                         they have found in the document and
                         log them so that they can be addressed
                         by author

                          commonly inspected work products
                         such as SRS, design documents and
                         test plans



Tester Training Course                                        2011
 A work product and an inspection team is
   selected

    A moderator is chosen to moderate the meeting

    Each inspector prepares for the meeting by
   reading the work product and noting each defect

    Meeting: discussion is focused on each defect,
   and coming up with a specific resolution

    The moderator compiles all of the defect
   resolutions into a inspection log

Tester Training Course                                2011
Review             Follow
Planning    Kick off      Preparation             Rework
                                        meeting              up




 Tester Training Course                                         2011
Review             Follow
Planning    Kick off      Preparation             Rework
                                        meeting              up


 Work product and inspection team is selected
 Moderator(inspection leader) is chosen
 Define entry and exit criteria
 Decide which part of work product to review
 Assign the roles to the reviewers




 Tester Training Course                                         2011

Recommended for you

Istqb chapter 5
Istqb chapter 5Istqb chapter 5
Istqb chapter 5

This document discusses test management. It covers organizational structures for testing like having developers test their own code or having a dedicated testing team. It also discusses estimating testing time, monitoring testing progress through metrics like incident reports, and using configuration management to control testing activities and products. The key aspects of test management covered are organizational structures, estimation, monitoring, control, and configuration management.

Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models

The document introduces software process models including the waterfall model, evolutionary development, and component-based software engineering. It describes the Rational Unified Process model and discusses key process activities like requirements engineering, design, implementation, testing, and evolution. Computer-aided software engineering tools are introduced as a way to support various activities in the software development process.

Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycle

The process of testing a software in a well planned and systematic way is known as software testing life cycle(STLC).

stlctesting phases descriptionsoftware testing life cycle
Review             Follow
Planning    Kick off      Preparation             Rework
                                        meeting              up


 Distributing documents
 Explaining the objectives, process, and documents
 Checking entry criteria
 Note: role assignments, checking rate, the pages to be checked




 Tester Training Course                                            2011
Review                      Follow
Planning    Kick off      Preparation                 Rework
                                        meeting                       up


 The participants work individually on the
                                                             Time
work product under review
 Can use the related documents, rules and
checklists provided
 Identify defects, questions and comments
and write a report for them
                                                  Checking
 Note: should use checklist                       rate              Size



 Tester Training Course                                                  2011
Checklist
     a list of problems which must be checked
     usually in the form of questions
     Why
        • objectively
        • based on lessons learned
        • as general as possible
     can be used by both authors and reviewers
     Example checklist for code review
        • Are comments accurate and meaningful?
        • Are all variables declared?

 Tester Training Course                           2011
Review             Follow
Planning    Kick off      Preparation             Rework
                                        meeting              up

   The meeting typical consists of: logging, discussion and
  decision phase
   The meeting is moderated by moderator(inspection leader)
   During the logging phase the issues are mentioned page by
  page, reviewer by reviewer, and should not discuss
   In discussion phase, focused on issues, and classify
  them(critical, major and minor)
   At the end of the meeting, a decision on the work product
  under review has to be made by the participants

 Tester Training Course                                         2011

Recommended for you

Iseb, ISTQB Static Testing
Iseb, ISTQB Static TestingIseb, ISTQB Static Testing
Iseb, ISTQB Static Testing

Iseb, ISTQB Static Testing Foundation Level Software Testing Lecture Notes, Static Testing www.onsoftwaretest.com

isebistqbstatic
Introduction to Software Test Automation
Introduction to Software Test AutomationIntroduction to Software Test Automation
Introduction to Software Test Automation

This is my complete introductory course for Software Test Automation.If you need full training that includes different automation tools (Selenium, J-Meter, Burp, SOAP UI etc), feel free to contact me by email (amraldo@hotmail.com) or by mobile (+201223600207).

Chapter 5 - Test Management
Chapter 5 - Test ManagementChapter 5 - Test Management
Chapter 5 - Test Management

Test Management as Chapter 5 of ISTQB Foundation 2018. Topics covered are Test Organization, Test Planning and Estimation, Test Monitoring and Control, Test Execution Schedule, Test Strategy, Risk and Testing, Defect Management

istqb foundation level certificationistqb foundationistqb
Review             Follow
Planning    Kick off      Preparation             Rework
                                        meeting              up



 Based on the defects detected, the author will improve the
work product under review step by step
 Changes that are made to the document should be easy to
identify during follow up




 Tester Training Course                                         2011
Review                Follow
Planning    Kick off      Preparation             Rework
                                        meeting                 up


 The moderator will check that the agreed defects have been
addressed
 and will gather metrics such as how time was spent on the
review, how many defects were found
 will also check the exit criteria to ensure that they have been
met




 Tester Training Course                                             2011
 is a discussion meeting that focuses on
   achieving consensus about the technical
   content
    The experts that are needed for a technical
   review
       • architects

       • chief designers

       • key users


Tester Training Course                             2011
 Goals
       • assess the value of technical concepts and alternatives
       in the product and project environment

       • establish consistency in the use and representation of
       technical concepts

       • ensure, at an early stage, that technical concepts are
       used correctly

       • inform participants of the technical content of the
       document


Tester Training Course                                             2011

Recommended for you

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance

The document discusses software quality assurance. It covers key concepts like quality, quality control, quality assurance, cost of quality. It then discusses topics like software reviews, formal technical reviews, statistical quality assurance, and the SQA plan. The overall goal of software quality assurance is to achieve high-quality software products.

Tlc
TlcTlc
Tlc

The document outlines the key steps in a software testing life cycle including test plan preparation, test case design, test execution and logging, defect tracking, and test reporting. It provides details on each step such as how test plans define the overall testing approach and objectives, test cases define what to test and expected results, and defects identified during testing are tracked, assigned a severity, and prioritized for resolution.

Quality assurance work throughand inspections(report2)
Quality assurance work throughand inspections(report2)Quality assurance work throughand inspections(report2)
Quality assurance work throughand inspections(report2)

Quality assurance work involves planned activities to ensure quality requirements are met. This includes managing raw materials, production processes, and documentation. Quality is determined by customers rather than general society. Walkthroughs are informal meetings to find problems and discuss solutions with little preparation. Inspections are more formal and aim to find problems early by thoroughly preparing. They involve defined roles like inspector leader and recorder. The inspection process has phases for planning, overview, preparation, examination meeting, and rework.

 Key characteristics
       • is documented

       • includes peers and technical experts

       • often performed as a peer review with out
       management participant

       • ideally it is lead by a trained moderator, but possibly
       also by technical expert

       • Reviewers prepare for review meeting and prepare a
       review report with a list of findings

Tester Training Course                                             2011
The author sends a copy of the
                         work product to selected project
                         team members. The team
                         members read it, and then write
                         up defects and comments to send
                         back to the author




Tester Training Course                                  2011
Tester Training Course   2011
 is a simple review
    does not produce written logs
    can be used as predecessors to inspections
       • to reduce the amount of effort involved in the
       inspection

       • to meet entry criteria of inspection process




Tester Training Course                                    2011

Recommended for you

Fundamentals of Testing 2
Fundamentals of Testing 2Fundamentals of Testing 2
Fundamentals of Testing 2

This document provides an overview of fundamentals of software testing. It discusses the five parts of the fundamental test process in broad chronological order: planning and control, analysis and design, implementation and execution, evaluating exit criteria and reporting, and test closure activities. It also covers topics like regression testing, confirmation testing, the differences between re-testing and regression testing, and the importance of independence in testing.

software testingsoftware engineering
Pm deep dive quality management
Pm deep dive   quality managementPm deep dive   quality management
Pm deep dive quality management

The document discusses project quality management. It defines quality management as determining quality policies, objectives, and responsibilities to ensure the project satisfies its requirements. Quality management includes quality planning, quality assurance, and quality control. Quality planning identifies relevant standards. Quality assurance applies quality activities to meet requirements. Quality control monitors results to ensure they comply with standards. The document also discusses quality definitions, goals, costs, and techniques used in quality planning, assurance, and control.

Unit 8
Unit 8Unit 8
Unit 8

This document provides an overview of quality management concepts and techniques for software engineering. It discusses quality assurance, software reviews, formal technical reviews, statistical quality assurance, software reliability, and the ISO 9000 quality standards. The document includes slides on these topics with definitions, descriptions, and examples.

 To present the document to stakeholders both
                     within and outside the software discipline, in
                     order to gather information regarding the topic
                     under documentation
                      To explain (knowledge transfer) and evaluate
                     the contents of the document
                      To establish a common understanding of the
                     document
                      To examine and discuss the validity of
                     proposed solutions and the viability of
                     alternatives, establishing consensus


Tester Training Course                                            2011
Tester Training Course   2011
 A code review is a special kind of inspection in
    which the team examines a sample of code and
    fixes any defects in it.
   In a code review, a defect is a block of code which
    does not properly implement its requirements,
    which does not function as the programmer
    intended, or which is not incorrect but could be
    improved
           • For example, it could be made more readable or its
             performance could be improved



Tester Training Course                                            2011
 It’s important to review the code which is most likely
    to have defects. This will generally be the most
    complex, tricky or involved code.
   Good candidates for code review include:
       • A portion of the software that only one person has the
         expertise to maintain
       • Code that implements a highly abstract or tricky algorithm
       • An object, library or API that is particularly difficult to work
         with
       • Code written by someone who is inexperienced or has not
         written that kind of code before, or written in an unfamiliar
         language
       • Code which employs a new programming technique
       • An area of the code that will be especially catastrophic if
         there are defects

Tester Training Course                                                      2011

Recommended for you

Qa In Agile
Qa In AgileQa In Agile
Qa In Agile

QA activities in agile development include regression testing, iteration/release tasks testing, and optional release/demo management and documentation management. Common issues faced by QA teams include lack of time and resources, lack of automation, and lack of integration between QA and development teams. The document recommends implementing a QA process with phases for planning, automated acceptance testing, story testing, regression testing, demos, and retrospectives to help address these issues. Key best practices include automating tests, integrating QA earlier, and increasing collaboration between QA and development teams.

QA в Agile
QA в AgileQA в Agile
QA в Agile

QA activities in agile development include regression testing, iteration/release tasks testing, and optional release/demo management and documentation management. Common issues faced by QA teams include lack of time and resources, lack of automation, and lack of integration between QA and development teams. The document recommends implementing a QA process with phases for planning, automated acceptance testing, story testing, regression testing, demos, and retrospectives to help address these issues. It also provides best practices for test automation, continuous integration, collaboration between QA and developers, and ensuring the QA team has adequate skills and resources.

Static techniques
Static techniquesStatic techniques
Static techniques

Static techniques provide powerful ways to improve software quality and productivity. Static testing finds defects early by reviewing work products like requirements, design, code, and documentation. Reviews can be informal or formal, following a defined process. Formal reviews typically involve planning, a kickoff meeting, individual preparation, a group review meeting, reworking by the author, and follow up by a moderator. The goal is to improve quality by identifying and fixing defects early in development.

http://fst.uin-suska.ac.id/http://sif.uin-suska.ac.id/http://www.uin-suska.ac.id/
Tester Training Course   2011
 Pair programming is a technique in which two
    programmers work simultaneously at a single
    computer and continuously review each others’
    work
   Although many programmers were introduced to
    pair programming as a part of Extreme
    Programming, it is a practice that can be valuable
    in any development environment.
   Pair programming improves the organization by
    ensuring that at least two programmers are able
    to maintain any piece of the software

Tester Training Course                                   2011
 In pair programming, two programmers sit at one
     computer to write code. Generally, one programmer will
     take control and write code, while the other watches and
     advises
       • Some teams have found that pair programming works best for
         them if the pairs are constantly rotated; this helps diffuse the
         shared knowledge throughout the organization. Others prefer to
         pair a more junior person with a more senior for knowledge
         sharing
    The project manager should not try to force pair
     programming on the team; it helps to introduce the
     change slowly, and where it will meet the least resistance
       • It is difficult to implement pair programming in an organization
         where the programmers do not share the same nine-to-five (or
         ten-to-six) work schedule.
       • Some people do not work well in pairs, and some pairs do not
         work well together

Tester Training Course                                                      2011
 Review is a static testing method(without running)
   We have many types of review
   From informal to formal
   How to choose the appropriate level of formality
       • The maturity of the development process

       • Legal or regulatory requirements




Tester Training Course                                   2011

Recommended for you

Bab 3
Bab 3Bab 3
Bab 3

This document discusses static testing techniques, including reviews. It describes the review process and roles involved in reviews. The review process consists of six main phases: planning, entry check, kick-off meeting, preparation, review meeting, rework, and follow-up. Key roles include the moderator, author, scribe, and reviewers. The goal of reviews is to improve quality and productivity by finding defects early.

techniq
QA in Agile
QA in AgileQA in Agile
QA in Agile

Presentation from Agile Ukraine conference (Kiev 2008) about QA process establishment in Agile environment.

qatestingagile
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1

This document provides an overview of fundamentals of testing, including: 1. It discusses why testing is necessary due to the likelihood of faults in software and the potential harms and costs of failures. 2. Key terms related to defects are defined, including the differences between errors, faults, bugs, failures, and mistakes. 3. Testing principles are outlined, such as the impossibility of exhaustive testing, the need to prioritize based on risk, and the fact that testing can only find defects but not prove their absence. 4. Factors related to quality, reliability, and debugging are addressed in the context of testing.

software testingsoftware engineering
 Manager
       • decides on What is to be reviewed; schedule; closure
    Moderator(review leader)
       • planning the review, moderate review meeting and
       follow up after meeting
    Author
       • takes responsibility for fixing any agreed defects
    Reviewer
     • identify and describes defects(with solutions)
    Scriber(recorder)
     • attends the review meeting and documents all of the
     issues and defects, problems and open points
Tester Training Course                                          2011
Tester Training Course   2011
Tester Training Course   2011
Explicitly plan
and track review activities




Tester Training Course    2011

Recommended for you

Verification Learning & Development Plan
Verification Learning & Development PlanVerification Learning & Development Plan
Verification Learning & Development Plan

This document outlines a competence development plan with four courses to improve testing skills across roles. The Introduction course provides overviews of testing fundamentals. Basics covers early-stage testing, methods, and reporting. Test Automation & Tools focuses on automation, tools, and testability. Test Management discusses test organization, process, planning, and communication. Completing the courses provides basic testing knowledge for roles like testers, managers, and developers, with more learning opportunities beyond.

verificationdistance learningdistance education
QA In Agile: solutions
QA In Agile: solutionsQA In Agile: solutions
QA In Agile: solutions

1. The document discusses QA activities and issues in an Agile development process. It outlines required activities like regression testing and optional activities like release management and documentation. 2. Common issues with QA in Agile include not enough QA engineers, too much manual work, lack of testing structure, bugs in new tasks, and QA work not being fully integrated into sprint planning and completion criteria. 3. The document proposes a six phase QA iteration model including planning, automated acceptance testing, story testing, regression testing, demo, and retrospective to help address these issues through practices like automated testing, early testing, and collaboration between QA and developers.

alimenkouukrainegathering
Testing in the lifecycle
Testing in the lifecycleTesting in the lifecycle
Testing in the lifecycle

The document discusses different types of testing performed at various stages of the software development lifecycle, including unit testing, integration testing, system testing, and acceptance testing. It provides details on the goals, test bases, and typical participants for each type of testing. The document also covers topics like integration strategies, performance testing, usability testing, and maintenance testing.

Train participants




Tester Training Course      2011
Tester Training Course   2011
Process issues
     must follow the rules but keep it simple
     make the process only as formal as the
    project culture or maturity level allows
     do not become too theoretical or
    too detailed
     checklist and roles are
    recommended to increase
    the effectiveness of
    defect identification

Tester Training Course                           2011
Continual Improvement

            Process      Tools


Tester Training Course           2011

Recommended for you

Interview with a tester
Interview with a testerInterview with a tester
Interview with a tester

This document provides sample questions and exercises that could be used to evaluate potential testers during the hiring process. It covers four main areas: testing mindset, basic testing skills, test automation, and test management. For each area, it provides examples of open-ended questions and hands-on exercises to assess a candidate's testing knowledge and abilities. It also provides a scoring guide to evaluate candidates' responses. The goal is to evaluate candidates' testing competencies in under an hour as part of a broader recruitment and assessment process.

testerrecruitment and staffingassessment
Software validation!
Software validation!Software validation!
Software validation!

The document outlines the software validation process which includes developing test software to check if a software was created according to customer specifications. It describes the human and material resources needed and constraints of limited resources and budget. It provides an overview and details the key project steps of documentation, test bench setup, test development, execution, reporting, result analysis, defect retesting, regression testing, and closure. The goal is to test the software thoroughly while keeping the project on time and within budget.

test
testtest
test

The document discusses testing within a Scrum environment at Planon, a software company. It covers how Planon integrated testers into development teams, emphasized automated regression testing, and adapted traditional test practices like documentation, activities, and reporting to fit an agile process. The lessons learned section emphasizes treating quality as a team responsibility and coaching testers to work effectively within Scrum.

Cost              Benefit




Tester Training Course             2011
Tester Training Course   2011
Question
                              What is the main difference between a
                                walkthrough and an inspection?

                         An inspection is lead by the author, whilst a
                         walkthrough is lead by a trained moderator

                         An inspection has a trained leader, whilst a
                         walkthrough is lead by a trained moderator

                         A walkthrough is lead by the author, whilst an
                         inspection is lead by trained moderator

                         Authors are not present during inspections, whilst
                         they are during walkthroughs




Tester Training Course                                                        2011
Question
   Which of the following statements about reviews
                       is true?



Reviews cannot be performed on user reuirements
specifications

Reviews are the least effective way of testing code


Reviews are unlikely to find faults in test plans

Reviews should be performed on specifications,
code and test plans




 Tester Training Course                               2011

Recommended for you

test
testtest
test

The document discusses testing within a Scrum environment at Planon, a software company. It covers how Planon integrated testers into development teams, emphasized automated regression testing, and adapted traditional test practices like documentation, activities, and reporting to be more iterative and team-focused. The lessons learned section emphasizes treating quality as a team responsibility and coaching testers to work effectively within Scrum.

Software review
Software reviewSoftware review
Software review

A software review is a process where software products are examined by various parties to provide feedback or approval. There are three main categories of reviews: peer reviews conducted by colleagues to evaluate technical quality; management reviews conducted by managers to evaluate progress; and audit reviews conducted by external personnel to evaluate compliance. Common types of reviews include code reviews, inspections, walkthroughs, and technical reviews. The generic IEEE review process involves entry evaluation, planning, preparation, group examination, rework, and exit evaluation to systematically identify defects early in the development process when they are least costly to fix.

software project management Software inspection
software project management Software inspectionsoftware project management Software inspection
software project management Software inspection

The document discusses software inspection, which involves reviewing software artifacts like analysis, designs, and code with others besides the original developer. Inspections aim to find errors early in development. An inspection team consists of 3-8 members filling roles like moderator, author, reader, and recorder. Benefits include new perspectives finding flaws, knowledge sharing, and catching defects early to reduce rework and testing effort. Studies found inspections can reduce "rework" costs by 50% and save 20 hours of testing for every 1 hour spent inspecting.

inspectionsoftware inspectionproject
Question
                                      Which review is inexpensive



                         Walkthrough


                         Informal Review


                         Techincal Review


                         Inspection




Tester Training Course                                              2011
Question
   Review is one of the methods of V&V. The other
                     method are



Inspection


Walkthrough


Testing


All of the above




 Tester Training Course                             2011
Question
                             In formal review, Rework: fixing defects
                                 found typically done by_______


                         Moderator


                         Author


                         Reviewer


                         Recorder




Tester Training Course                                                  2011
Question
   An important benefit of code inspections is that
                        they:



Are cheap to perform

Can be performed by the person who wrote the
code

Can be performed by inexperienced staff

Enable the code to be tested before the execution
enviroment is ready




 Tester Training Course                               2011

Recommended for you

Static techniques
Static techniquesStatic techniques
Static techniques

The document discusses static testing techniques, which involve examining software work products like requirements and code manually or with tools, without executing the software. It covers topics like formal reviews, roles in reviews, types of reviews including walkthroughs, inspections and technical reviews. It also discusses using static analysis tools to check for adherence to coding standards and metrics. There are multiple choice questions at the end to test understanding of reviews and static analysis.

GANs and Applications
GANs and ApplicationsGANs and Applications
GANs and Applications

This document summarizes generative adversarial networks (GANs) and their applications. It begins by introducing GANs and how they work by having a generator and discriminator play an adversarial game. It then discusses several variants of GANs including DCGAN, LSGAN, conditional GAN, and others. It provides examples of applications such as image-to-image translation, text-to-image synthesis, image generation, and more. It concludes by discussing major GAN variants and potential future applications like helping children learn to draw.

generative adversarial networskganmachine learning
Scrum - An introduction
Scrum - An introductionScrum - An introduction
Scrum - An introduction

The document provides an overview of Scrum and its key elements. It discusses that Scrum is an iterative, collaborative framework for managing product development. It also summarizes that Scrum uses sprints, daily stand-up meetings, product backlogs and user stories to help development teams work in an agile way. The document outlines the core Scrum roles of Product Owner, Scrum Master and Development Team and how they work together.

waterfallscrumsoftware engineering
Question
                             Objective of design review meeting is



                         To identify problems with design


                         To solve the problems with design


                         Both A and B


                         None of the above




Tester Training Course                                               2011
Question
    ______reviews are often held with just the
    programmer who wrote the code and one or two
    other programmers or testers


Formal Reviews


Peer Reviews


Semi Formal Reviews


All of the above




 Tester Training Course                            2011
Question
                         Which of the following activities differentiate a
                         walkthrough from a formal review



                         A walkthrough does not follow a defined process

                         For a walkthrough individual preparation by the
                         reviewers is optional

                         A walkthrough requires meeting

                         A walkthrough finds the causes of failures, while
                         formal review finds the failures




Tester Training Course                                                       2011
Question
    What makes an inspection different from other
    review types



It is led by a trained leader, uses formal entry and
exit criteria and checklists

It is led by the author of the document to be
inspected

It can only be used for reviewing design and code

It is led by the author, uses checklists, and collects
data for improvement




 Tester Training Course                                  2011

Recommended for you

ORM in Django
ORM in DjangoORM in Django
ORM in Django

The document discusses Object Relational Mapping (ORM) in Django. It begins by explaining that ORM provides an API that allows accessing databases in an object-oriented style, making the database more transparent. It then provides examples of how to define models by inheriting from Django's Model class and adding fields. Various field types like CharField, IntegerField, DateField are demonstrated. It also shows how to define relationships and primary keys. The document concludes by explaining how to perform CRUD operations on models in an object-oriented way using Django's ORM APIs.

pythonobject-relational mappingorm
Introduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentIntroduction to Cross-platform App Development
Introduction to Cross-platform App Development

Cross-platform mobile app development allows writing code once that can run on multiple operating systems and devices. It uses a virtual machine that compiles source code into bytecode that can run on different hardware platforms. Xamarin allows building native mobile apps for Android, iOS, and Windows using C# and .NET. Apps are compiled to native code for each platform, delivering native performance while sharing most of the development code cross-platform.

cross-platform mobile developmentcross-platform app developmentxamarin
Conistency of random forests
Conistency of random forestsConistency of random forests
Conistency of random forests

The document discusses consistency of random forests. It summarizes recent theoretical results showing that random forests are consistent estimators under certain conditions. Specifically, it is shown that random forests are consistent if the number of features sampled at each node (mtry) increases with sample size and the minimum node size decreases with sample size. The document also discusses how consistency holds even when the splitting criteria are randomized, as in random forests, as long as the base classifiers are consistent.

machine learningrandom forests
Tester Training Course   2011
 A form of automated static testing
          • exactly automated review
          • check for violations of standards
          • check for things which may be fault
      often used by developer to automated code
     review, and is called Static Code Analysis
      also used by designer to review software
     models, and is called Analysis of Models

Tester Training Course                            2011
 Does the program terminate?
                     How large can the heap become during
                    execution?
                     What is the possible output?
                     Some question about PC
                         • what is value of variable x when it is used
                         • Can the pointer p be null
                         • is the variable x initialized before it is read
                         • what is a lower and upper bound on the value of a
                         variable
                         • etc

Tester Training Course                                                       2011
 Ensure correctness
          • verify behavior
          • catch bugs early
       Increase efficiency
          • resource usage
          • compiler optimizations




Tester Training Course               2011

Recommended for you

Trust - Digital Signature
Trust - Digital SignatureTrust - Digital Signature
Trust - Digital Signature

The document appears to be lecture slides on information security. It discusses several topics: - Digital signature schemes and what it means for them to be secure - Approaches for building secure digital signature schemes such as using hash functions and RSA - Public key infrastructure and how certificate authorities can be used to securely distribute public keys - Alternative models for establishing trust between parties such as web of trust without a centralized trusted authority The document contains definitions, theorems, and examples related to these information security concepts.

publickeydigital signatureinformation security
Key Exchange
Key ExchangeKey Exchange
Key Exchange

This document appears to be notes from an information security course. It discusses several methods for generating and sharing secret keys securely, including using an online trusted third party, Merkle puzzles, and the Diffie-Hellman key exchange protocol. The notes cover how each method works at a high level and their advantages and disadvantages. The document focuses on generating mutual keys between two parties without needing an online trusted third party.

SOME SECURITY CHALLENGES IN CLOUD COMPUTING
SOME SECURITY CHALLENGES  IN CLOUD COMPUTINGSOME SECURITY CHALLENGES  IN CLOUD COMPUTING
SOME SECURITY CHALLENGES IN CLOUD COMPUTING

There are several security challenges with cloud computing including issues of trust, broad attacking surfaces, and data breaches. Ensuring data integrity and privacy is difficult when data is outsourced to cloud storage. Techniques like encryption, secure auditing, and proofs of data redundancy can help address some of these challenges, but protecting access patterns and enabling secure computation outsourcing remain open problems.

securitycomputer and network securityinformation security
Tester Training Course   2011
Tester Training Course   2011
Tester Training Course   2011
Tester Training Course   2011

Recommended for you

Stream ciphers
Stream ciphersStream ciphers
Stream ciphers

This document appears to be notes from an information security course taught by Van Hoang Nguyen in the fall of 2013. The notes cover topics such as secure ciphers, perfect secrecy, stream ciphers, pseudorandom generators, semantic security, and the RC4 stream cipher. Examples of ciphers discussed include the one-time pad and RC4 stream cipher. Requirements for ciphers, pseudorandom generators, and semantic security are defined.

information safe
Classical ciphers
Classical ciphersClassical ciphers
Classical ciphers

The document appears to be notes from an Information Security course taught by Van Hoang Nguyen in the fall of 2013. It includes topics like cryptography, ciphertexts, transposition ciphers, and frequency analysis. There are examples of encrypting and decrypting messages using different ciphers.

information securitysecuritycomputer and network security
Confidentiality
ConfidentialityConfidentiality
Confidentiality

The document appears to be notes from an Information Security course taught by Van Hoang Nguyen in the fall of 2013. It covers topics such as when private information becomes data, how to implement information security, cryptography, and steganography. The notes are broken into various sections and include the instructor's contact information.

information security
 Static Code Analysis to the rescue




Tester Training Course                      2011
 Use an automatic systematic approach
     Use formal methods and measures
     Without running code => can be applied
    earlier
     Some kinds of defects are hard to find by
    dynamic testing



Tester Training Course                            2011
Tester Training Course   2011
 Programming(code) standard violations
     Security vulnerabilities
     Unreachable(dead) code
     Undeclared variables
     Inconsistent interface
     Boundary violations
     Syntax violations
Tester Training Course                        2011

Recommended for you

Information, Data and Decision Making
Information, Data and Decision MakingInformation, Data and Decision Making
Information, Data and Decision Making

This document appears to be notes from an information security course taught by Van Hoang Nguyen in the fall of 2013. It includes definitions of information and data, discussions of objectivity and subjectivity, the relationship between information and interpretation, and challenges balancing security and usability. Key topics covered include what constitutes information, how information differs from raw data, and tradeoffs involved in system security design.

information security
Multiple processor systems
Multiple processor systemsMultiple processor systems
Multiple processor systems

The document is about an advanced operating systems course for fall 2012 taught by Van Hoang Nguyen. It discusses topics like communication techniques for multiprocessors, multicomputers and distributed systems. It also covers OS code, scheduling, deadlocks, message passing performance, and processor allocation algorithms for multiprocessors, multicomputers and distributed systems.

Multiprocessor Systems
Multiprocessor SystemsMultiprocessor Systems
Multiprocessor Systems

This document appears to be slides from a lecture on advanced operating systems given in the fall of 2012. It discusses computational biology, physics simulations, limitations of wire communications speeds and heat dissipation, examples of high-performance computer systems, shared memory architectures, message passing between processes, cache hit rates, and directory-based cache coherence. The document is attributed to Van Hoang Nguyen from the Department of Computer Science at HUA.

operating systems
 The most well-known feature of SCA
     Define coding standard
         • a set of programming rules
     Often configured on IDE
     Without such tools, more violations
         • the number of rules is usually so large that nobody
         can remember them all
         • some context-sensitive rules that demand reviews
         of several files are very hard to check by human being
         • avoid checking coding standards in review, that will
         distract them from other defects
Tester Training Course                                            2011
 Is the study of data flow structure
     Data flow structure follows the trail of
    data items as it is accessed and modified
    by the code
     Typical defects can be found
         • referencing a variable with an undefined value

         • variables that are never used



Tester Training Course                                      2011
 Data flow structure
         • variable defined where a value is stored into it
         • variable used where the stored value is accessed
         • variable is undefined before it is defined or when it
         goes out of scope

    y = x+z;
    //y is defined; x,z are used
    if a>b then read(c);
    //a,b are used; c is defined


Tester Training Course                                             2011
n := 0;
                             n is re-defined without
    read (x);                being used
    n := 1;                  ==> Data flow anomaly
    while x > y do
       begin                 y is used before it has
              read (y);      been defined
                             ==> Data flow fault
              write( n*y);
              x := x – n;
       end;

Tester Training Course                                 2011

Recommended for you

Introduction to AOS course
Introduction to AOS courseIntroduction to AOS course
Introduction to AOS course

The document appears to be lecture slides for an Advanced Operating Systems course taught in the fall of 2012. It contains over 40 slides covering topics like operating system structure, scheduling, concurrency, memory management, file systems, and more. The slides are authored by Van Hoang Nguyen and reference various textbooks.

operating systems
Background Knowledge
Background KnowledgeBackground Knowledge
Background Knowledge

The document appears to be slides from a course on Information Security presented in the fall of 2012. It was presented by Van Hoang Nguyen and covers topics such as information theory, automata theory, computability theory, and complexity theory. Shannon's definition of entropy as a way to measure information is discussed.

securitycomputer and network security
Introduction to Information Security Course
Introduction to Information Security CourseIntroduction to Information Security Course
Introduction to Information Security Course

This document appears to be a course syllabus for an Information Security course taught by Van Hoang Nguyen at the Department of Computer Science - FITA - HUA in the fall of 2012. The syllabus outlines that the course will cover topics such as the differences between data and information, definitions of information security, principles of confidentiality, integrity, and trust, and network security. It also lists the grading breakdown as 10% for attention, 30% for a midterm, and 60% for a final exam.

securitycomputer and network security
 Data structure refers to the organization
    of the data itself, independent of the
    program
     Provides a lot of information about the
    difficulty in writing programs to handle the
    data; then is used in designing test cases
     Sometimes a program is complex
    because it has a complex data structure,
    rather than because of complex control or
    data flow
Tester Training Course                             2011
 Is the study of control flow structure
     Control flow structure addresses the
    sequence in which the instructions are
    executed
     Typical defects can be found
         • unreachable(dead) code
         • infinite loops
         • any jumps to undefined labels
         • provide the code metrics
         • whether code conforms to a flowchart grammar
Tester Training Course                                    2011
a := 4;
    b := 15;
    z := 7;
    while b > z do
       begin
             writeln(z);
             z++;
             if(a>b) then
                         b:=a;   unreachable(dead) code
       end;
Tester Training Course                                2011
 Why
      • How big and complex
      • Help to decide among several design alternatives
      • Help to decide how much risk

  Typical code metrics
      • LOC – Lines of code
      • operands & operators(Halstead’s metrics)
      • fan-in & fan-out
      • nesting levels
      • OO metrics: inheritance tree depth, coupling & cohesion

Tester Training Course                                            2011

Recommended for you

Introduction to CNS Course
Introduction to CNS CourseIntroduction to CNS Course
Introduction to CNS Course

The document appears to be a course syllabus for a Computer and Network Security class taught by Van Hoang Nguyen in the fall of 2012. It includes the instructor's contact information, an outline of course topics, grading breakdown, and slides on various security-related topics like vulnerabilities over time and malware threats.

securitycomputer and network security
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing

Here are the rules for the supermarket loyalty scheme: Rule 1: All customers are eligible for a loyalty card. Rule 2: Loyalty cardholders get either additional discounts on all purchases or earn loyalty points. Rule 3: Additional discounts are offered on all purchases to loyalty cardholders. Rule 4: Loyalty cardholders can earn points which can be converted to vouchers or points with partner schemes. Given: - Customer has a loyalty card - Made a purchase of £50 Test case: Loyalty cardholder who made a £50 purchase earns 50 loyalty points Expected result: Valid (matches Rule 4)

software testingtesting
Nosql intro
Nosql introNosql intro
Nosql intro

This document discusses the future of data storage and the rise of NoSQL databases. It notes that while SQL databases have dominated for decades, their suitability is cracking due to limitations in scaling and integration. NoSQL databases are designed to run on clusters across many machines, have flexible schemas, and are open source. They allow for embracing large scale and reducing development drag. However, relational databases are still relevant for some use cases. The future is one of "polyglot persistence" using the best data storage technology for each application's needs.

 Is a measure of the complexity of a flow
     graph
        • the code that the flow graph represents
    the more complex the flow graph, the
     greater the measure
    it can most easily be calculated as:
        • complexity = number of decisions + 1




Tester Training Course                              2011
What is the cyclomatic complexity?




           1




            2                   3              5

Tester Training Course                             2011
Question
           Static analysis is best described as




The analysis of batch programs


The reviewing of test plans


The analysis of program code


The use of black box testing




 Tester Training Course                           2011
Question
                                       Data flow analysis studies



                         Possible communications bottlenecks in a program

                         The rate of change of data values as a program
                         executes

                         The use of data on paths through the code


                         The intrinsic complexity of the code




Tester Training Course                                                      2011

Recommended for you

RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx

Your comprehensive guide to RPA in healthcare for 2024. Explore the benefits, use cases, and emerging trends of robotic process automation. Understand the challenges and prepare for the future of healthcare automation

rpa in healthcarerpa in healthcare usarpa in healthcare industry
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation

Manual Method of Product Research | Helium10 | MBS RETRIEVER

product researchhelium10 | mbs retriever
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024

Everything that I found interesting about engineering leadership last month

quantumfaxmachine
Question
                         Static analysis




Same as static testing


Done by the developers


Both A and B


None of the above




 Tester Training Course                    2011
Question
                            Cyclomatic complexity is used to calculate


                         Number of independent paths in the basic set of a
                         program

                         Number of binary decisions + 1

                         Number bound for the number of test that must be
                         conducted to ensure that all statements have been
                         executed at least one

                         Number of braches and decisions




Tester Training Course                                                       2011
Question
                     Code Walkthrough




Type of dynamic testing


Type of static testing


Neither dynamic or static


Performed by the testing team




 Tester Training Course                 2011
Question
                           Which of the following statements is true
                                       of static analysis


                         Compiling code is not a form of static analysis

                         Static analysis need not be performed before
                         imperative code is executed
                         Static analysis can find faults that are hard to find
                         with dynamic testing
                         Extensive static analysis will not needed if white-
                         box testing is to be performed




Tester Training Course                                                           2011

Recommended for you

20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024

Everything that I found interesting about machines behaving intelligently during June 2024

quantumfaxmachine
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024

This is a powerpoint that features Microsoft Teams Devices and everything that is new including updates to its software and devices for May 2024

microsoft teamsmicrosoft
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry

Are you interested in dipping your toes in the cloud native observability waters, but as an engineer you are not sure where to get started with tracing problems through your microservices and application landscapes on Kubernetes? Then this is the session for you, where we take you on your first steps in an active open-source project that offers a buffet of languages, challenges, and opportunities for getting started with telemetry data. The project is called openTelemetry, but before diving into the specifics, we’ll start with de-mystifying key concepts and terms such as observability, telemetry, instrumentation, cardinality, percentile to lay a foundation. After understanding the nuts and bolts of observability and distributed traces, we’ll explore the openTelemetry community; its Special Interest Groups (SIGs), repositories, and how to become not only an end-user, but possibly a contributor.We will wrap up with an overview of the components in this project, such as the Collector, the OpenTelemetry protocol (OTLP), its APIs, and its SDKs. Attendees will leave with an understanding of key observability concepts, become grounded in distributed tracing terminology, be aware of the components of openTelemetry, and know how to take their first steps to an open-source contribution! Key Takeaways: Open source, vendor neutral instrumentation is an exciting new reality as the industry standardizes on openTelemetry for observability. OpenTelemetry is on a mission to enable effective observability by making high-quality, portable telemetry ubiquitous. The world of observability and monitoring today has a steep learning curve and in order to achieve ubiquity, the project would benefit from growing our contributor community.

cloudcloud native observabilitycloud native
Question
              Peer reviews are also called as:




Inspection


Walkthrough


Technical Review


Formal Review




 Tester Training Course                          2011
Question
                         Success Factors for a review include
                         i.   Each review does not have a predefined
                              objective
                         ii. Defects found are welcomed and expressed
                              objectively
                         iii. Management supports a good review process
                         iv. There is an emphasis on learning and process
                              improvement

                         Ii, iii, iv are correct and i is incorrect


                         iii, i, iv are correct and ii is incorrect


                         i, iii, iv, ii are in correct


                         Ii is correct


Tester Training Course                                                      2011
Question
    The Kick Off phase of a formal review includes
                    the following:



Explaining the objective


Fixing defects found typical done by author


Follow up


Individual meeting preparations




 Tester Training Course                              2011
Question
                               A series of probing questions about the
                               completeness and attributes an application
                               system is called


                         Cheklist


                         Checkpoint review


                         Decision table


                         Decision tree




Tester Training Course                                                      2011

Recommended for you

WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf

Profile portofolio

How RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptxHow RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptx

Revolutionize your transportation processes with our cutting-edge RPA software. Automate repetitive tasks, reduce costs, and enhance efficiency in the logistics sector with our advanced solutions.

rpa in transportationrpa in transportation industryrpa in transportation sector
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfINDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf

These fighter aircraft have uses outside of traditional combat situations. They are essential in defending India's territorial integrity, averting dangers, and delivering aid to those in need during natural calamities. Additionally, the IAF improves its interoperability and fortifies international military alliances by working together and conducting joint exercises with other air forces.

air force fighter planebiggest submarinezambia port

More Related Content

What's hot

Basic Guide to Manual Testing
Basic Guide to Manual TestingBasic Guide to Manual Testing
Basic Guide to Manual Testing
Hiral Gosani
 
STLC (Software Testing Life Cycle)
STLC (Software Testing Life Cycle)STLC (Software Testing Life Cycle)
STLC (Software Testing Life Cycle)
Ch Fahadi
 
Agile QA and Testing process
Agile QA and Testing processAgile QA and Testing process
Agile QA and Testing process
Gloria Stoilova
 
Static Testing
Static Testing Static Testing
Static Testing
Suraj Vishwakarma
 
Strategies For Software Test Documentation
Strategies For Software Test Documentation Strategies For Software Test Documentation
Strategies For Software Test Documentation
Vishwak Solution
 
Testing Best Practices
Testing Best PracticesTesting Best Practices
Testing Best Practices
Axway Appcelerator
 
STLC
STLCSTLC
QA process Presentation
QA process PresentationQA process Presentation
QA process Presentation
Nadeeshani Aththanagoda
 
Software Testing Life Cycle
Software Testing Life CycleSoftware Testing Life Cycle
Software Testing Life Cycle
Udayakumar Sree
 
TESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPTTESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPT
suhasreddy1
 
Chapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for TestingChapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for Testing
Neeraj Kumar Singh
 
Software testing
Software testingSoftware testing
Software testing
Kalyan Vadapalli
 
Istqb chapter 5
Istqb chapter 5Istqb chapter 5
Istqb chapter 5
nstprabakaran
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Jesse Manalansan
 
Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycle
Garuda Trainings
 
Iseb, ISTQB Static Testing
Iseb, ISTQB Static TestingIseb, ISTQB Static Testing
Iseb, ISTQB Static Testing
onsoftwaretest
 
Introduction to Software Test Automation
Introduction to Software Test AutomationIntroduction to Software Test Automation
Introduction to Software Test Automation
Amr Ali (ISTQB CTAL Full, CSM, ITIL Foundation)
 
Chapter 5 - Test Management
Chapter 5 - Test ManagementChapter 5 - Test Management
Chapter 5 - Test Management
Neeraj Kumar Singh
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
university of education,Lahore
 
Tlc
TlcTlc

What's hot (20)

Basic Guide to Manual Testing
Basic Guide to Manual TestingBasic Guide to Manual Testing
Basic Guide to Manual Testing
 
STLC (Software Testing Life Cycle)
STLC (Software Testing Life Cycle)STLC (Software Testing Life Cycle)
STLC (Software Testing Life Cycle)
 
Agile QA and Testing process
Agile QA and Testing processAgile QA and Testing process
Agile QA and Testing process
 
Static Testing
Static Testing Static Testing
Static Testing
 
Strategies For Software Test Documentation
Strategies For Software Test Documentation Strategies For Software Test Documentation
Strategies For Software Test Documentation
 
Testing Best Practices
Testing Best PracticesTesting Best Practices
Testing Best Practices
 
STLC
STLCSTLC
STLC
 
QA process Presentation
QA process PresentationQA process Presentation
QA process Presentation
 
Software Testing Life Cycle
Software Testing Life CycleSoftware Testing Life Cycle
Software Testing Life Cycle
 
TESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPTTESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPT
 
Chapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for TestingChapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Istqb chapter 5
Istqb chapter 5Istqb chapter 5
Istqb chapter 5
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycle
 
Iseb, ISTQB Static Testing
Iseb, ISTQB Static TestingIseb, ISTQB Static Testing
Iseb, ISTQB Static Testing
 
Introduction to Software Test Automation
Introduction to Software Test AutomationIntroduction to Software Test Automation
Introduction to Software Test Automation
 
Chapter 5 - Test Management
Chapter 5 - Test ManagementChapter 5 - Test Management
Chapter 5 - Test Management
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Tlc
TlcTlc
Tlc
 

Similar to Static Testing

Quality assurance work throughand inspections(report2)
Quality assurance work throughand inspections(report2)Quality assurance work throughand inspections(report2)
Quality assurance work throughand inspections(report2)
kimk2
 
Fundamentals of Testing 2
Fundamentals of Testing 2Fundamentals of Testing 2
Fundamentals of Testing 2
Hoang Nguyen
 
Pm deep dive quality management
Pm deep dive   quality managementPm deep dive   quality management
Pm deep dive quality management
Niraj Agarwal
 
Unit 8
Unit 8Unit 8
Unit 8
anuragmbst
 
Qa In Agile
Qa In AgileQa In Agile
Qa In Agile
Denis Petelin
 
QA в Agile
QA в AgileQA в Agile
QA в Agile
Denis Petelin
 
Static techniques
Static techniquesStatic techniques
Static techniques
Arif Rakhmatullah.M
 
Bab 3
Bab 3Bab 3
QA in Agile
QA in AgileQA in Agile
QA in Agile
Mikalai Alimenkou
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1
Hoang Nguyen
 
Verification Learning & Development Plan
Verification Learning & Development PlanVerification Learning & Development Plan
Verification Learning & Development Plan
Johan Hoberg
 
QA In Agile: solutions
QA In Agile: solutionsQA In Agile: solutions
QA In Agile: solutions
Alexey Krivitsky
 
Testing in the lifecycle
Testing in the lifecycleTesting in the lifecycle
Testing in the lifecycle
Hoang Nguyen
 
Interview with a tester
Interview with a testerInterview with a tester
Interview with a tester
Johan Hoberg
 
Software validation!
Software validation!Software validation!
Software validation!
Robert Phe
 
test
testtest
test
gikrauss
 
test
testtest
test
gikrauss
 
Software review
Software reviewSoftware review
Software review
amjad_09
 
software project management Software inspection
software project management Software inspectionsoftware project management Software inspection
software project management Software inspection
REHMAT ULLAH
 
Static techniques
Static techniquesStatic techniques
Static techniques
aidul azmi
 

Similar to Static Testing (20)

Quality assurance work throughand inspections(report2)
Quality assurance work throughand inspections(report2)Quality assurance work throughand inspections(report2)
Quality assurance work throughand inspections(report2)
 
Fundamentals of Testing 2
Fundamentals of Testing 2Fundamentals of Testing 2
Fundamentals of Testing 2
 
Pm deep dive quality management
Pm deep dive   quality managementPm deep dive   quality management
Pm deep dive quality management
 
Unit 8
Unit 8Unit 8
Unit 8
 
Qa In Agile
Qa In AgileQa In Agile
Qa In Agile
 
QA в Agile
QA в AgileQA в Agile
QA в Agile
 
Static techniques
Static techniquesStatic techniques
Static techniques
 
Bab 3
Bab 3Bab 3
Bab 3
 
QA in Agile
QA in AgileQA in Agile
QA in Agile
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1
 
Verification Learning & Development Plan
Verification Learning & Development PlanVerification Learning & Development Plan
Verification Learning & Development Plan
 
QA In Agile: solutions
QA In Agile: solutionsQA In Agile: solutions
QA In Agile: solutions
 
Testing in the lifecycle
Testing in the lifecycleTesting in the lifecycle
Testing in the lifecycle
 
Interview with a tester
Interview with a testerInterview with a tester
Interview with a tester
 
Software validation!
Software validation!Software validation!
Software validation!
 
test
testtest
test
 
test
testtest
test
 
Software review
Software reviewSoftware review
Software review
 
software project management Software inspection
software project management Software inspectionsoftware project management Software inspection
software project management Software inspection
 
Static techniques
Static techniquesStatic techniques
Static techniques
 

More from Hoang Nguyen

GANs and Applications
GANs and ApplicationsGANs and Applications
GANs and Applications
Hoang Nguyen
 
Scrum - An introduction
Scrum - An introductionScrum - An introduction
Scrum - An introduction
Hoang Nguyen
 
ORM in Django
ORM in DjangoORM in Django
ORM in Django
Hoang Nguyen
 
Introduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentIntroduction to Cross-platform App Development
Introduction to Cross-platform App Development
Hoang Nguyen
 
Conistency of random forests
Conistency of random forestsConistency of random forests
Conistency of random forests
Hoang Nguyen
 
Trust - Digital Signature
Trust - Digital SignatureTrust - Digital Signature
Trust - Digital Signature
Hoang Nguyen
 
Key Exchange
Key ExchangeKey Exchange
Key Exchange
Hoang Nguyen
 
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
SOME SECURITY CHALLENGES  IN CLOUD COMPUTINGSOME SECURITY CHALLENGES  IN CLOUD COMPUTING
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
Hoang Nguyen
 
Stream ciphers
Stream ciphersStream ciphers
Stream ciphers
Hoang Nguyen
 
Classical ciphers
Classical ciphersClassical ciphers
Classical ciphers
Hoang Nguyen
 
Confidentiality
ConfidentialityConfidentiality
Confidentiality
Hoang Nguyen
 
Information, Data and Decision Making
Information, Data and Decision MakingInformation, Data and Decision Making
Information, Data and Decision Making
Hoang Nguyen
 
Multiple processor systems
Multiple processor systemsMultiple processor systems
Multiple processor systems
Hoang Nguyen
 
Multiprocessor Systems
Multiprocessor SystemsMultiprocessor Systems
Multiprocessor Systems
Hoang Nguyen
 
Introduction to AOS course
Introduction to AOS courseIntroduction to AOS course
Introduction to AOS course
Hoang Nguyen
 
Background Knowledge
Background KnowledgeBackground Knowledge
Background Knowledge
Hoang Nguyen
 
Introduction to Information Security Course
Introduction to Information Security CourseIntroduction to Information Security Course
Introduction to Information Security Course
Hoang Nguyen
 
Introduction to CNS Course
Introduction to CNS CourseIntroduction to CNS Course
Introduction to CNS Course
Hoang Nguyen
 
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing
Hoang Nguyen
 
Nosql intro
Nosql introNosql intro
Nosql intro
Hoang Nguyen
 

More from Hoang Nguyen (20)

GANs and Applications
GANs and ApplicationsGANs and Applications
GANs and Applications
 
Scrum - An introduction
Scrum - An introductionScrum - An introduction
Scrum - An introduction
 
ORM in Django
ORM in DjangoORM in Django
ORM in Django
 
Introduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentIntroduction to Cross-platform App Development
Introduction to Cross-platform App Development
 
Conistency of random forests
Conistency of random forestsConistency of random forests
Conistency of random forests
 
Trust - Digital Signature
Trust - Digital SignatureTrust - Digital Signature
Trust - Digital Signature
 
Key Exchange
Key ExchangeKey Exchange
Key Exchange
 
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
SOME SECURITY CHALLENGES  IN CLOUD COMPUTINGSOME SECURITY CHALLENGES  IN CLOUD COMPUTING
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
 
Stream ciphers
Stream ciphersStream ciphers
Stream ciphers
 
Classical ciphers
Classical ciphersClassical ciphers
Classical ciphers
 
Confidentiality
ConfidentialityConfidentiality
Confidentiality
 
Information, Data and Decision Making
Information, Data and Decision MakingInformation, Data and Decision Making
Information, Data and Decision Making
 
Multiple processor systems
Multiple processor systemsMultiple processor systems
Multiple processor systems
 
Multiprocessor Systems
Multiprocessor SystemsMultiprocessor Systems
Multiprocessor Systems
 
Introduction to AOS course
Introduction to AOS courseIntroduction to AOS course
Introduction to AOS course
 
Background Knowledge
Background KnowledgeBackground Knowledge
Background Knowledge
 
Introduction to Information Security Course
Introduction to Information Security CourseIntroduction to Information Security Course
Introduction to Information Security Course
 
Introduction to CNS Course
Introduction to CNS CourseIntroduction to CNS Course
Introduction to CNS Course
 
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing
 
Nosql intro
Nosql introNosql intro
Nosql intro
 

Recently uploaded

RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
SynapseIndia
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
welrejdoall
 
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024
Matthew Sinclair
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
Matthew Sinclair
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
Stephanie Beckett
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
Eric D. Schabell
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
ArgaBisma
 
How RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptxHow RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptx
SynapseIndia
 
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfINDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
jackson110191
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
BookNet Canada
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Bert Blevins
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
Adam Dunkels
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
BookNet Canada
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
Research Directions for Cross Reality Interfaces
Research Directions for Cross Reality InterfacesResearch Directions for Cross Reality Interfaces
Research Directions for Cross Reality Interfaces
Mark Billinghurst
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
Bert Blevins
 

Recently uploaded (20)

RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
 
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
 
How RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptxHow RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptx
 
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfINDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
Research Directions for Cross Reality Interfaces
Research Directions for Cross Reality InterfacesResearch Directions for Cross Reality Interfaces
Research Directions for Cross Reality Interfaces
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
 

Static Testing

  • 1. STATIC TESTING Hoang V. Nguyen startnewday85@gmail.com startnewday85.blogspot.com Dept. of Computer Science – FIT - HUA Tester Training Course
  • 2. User Acceptance requirements Testing System System Testing requirements Integration Global Design Testing Detailed Design Unit Testing implementation Tester Training Course 2011
  • 3. • To find defects • To find defects • Examine the work product • Use the product to collect for errors failures • without executing the • must execute the code code Tester Training Course 2011
  • 5.  Early testing principle • rework cost in average is responsible for ~40% of the total software development cost • engineers spend up to 1/3 of their compiling & testing, relying on these activities to detect defects  Development productivity can be improved and timescales reduced  Testing costs and time can be reduced Tester Training Course 2011
  • 6.  Reductions in lifetime costs  Improved communication results  Gaining understand  Aiding in professional development for team members Tester Training Course 2011
  • 8.  What can be inspected • anything that is written or typed  What can be tested by static testing • Requirement specifications • Design document • Code • Schedules • Test plans, test cases, defect reports Tester Training Course 2011
  • 9.  Deviations from standards  Requirements defects  Design defects  Insufficient maintainability  Incorrect interface specifications Tester Training Course 2011
  • 13.  is a moderated meeting in which reviewers list all issues and defects they have found in the document and log them so that they can be addressed by author  commonly inspected work products such as SRS, design documents and test plans Tester Training Course 2011
  • 14.  A work product and an inspection team is selected  A moderator is chosen to moderate the meeting  Each inspector prepares for the meeting by reading the work product and noting each defect  Meeting: discussion is focused on each defect, and coming up with a specific resolution  The moderator compiles all of the defect resolutions into a inspection log Tester Training Course 2011
  • 15. Review Follow Planning Kick off Preparation Rework meeting up Tester Training Course 2011
  • 16. Review Follow Planning Kick off Preparation Rework meeting up  Work product and inspection team is selected  Moderator(inspection leader) is chosen  Define entry and exit criteria  Decide which part of work product to review  Assign the roles to the reviewers Tester Training Course 2011
  • 17. Review Follow Planning Kick off Preparation Rework meeting up  Distributing documents  Explaining the objectives, process, and documents  Checking entry criteria  Note: role assignments, checking rate, the pages to be checked Tester Training Course 2011
  • 18. Review Follow Planning Kick off Preparation Rework meeting up  The participants work individually on the Time work product under review  Can use the related documents, rules and checklists provided  Identify defects, questions and comments and write a report for them Checking  Note: should use checklist rate Size Tester Training Course 2011
  • 19. Checklist  a list of problems which must be checked  usually in the form of questions  Why • objectively • based on lessons learned • as general as possible  can be used by both authors and reviewers  Example checklist for code review • Are comments accurate and meaningful? • Are all variables declared? Tester Training Course 2011
  • 20. Review Follow Planning Kick off Preparation Rework meeting up  The meeting typical consists of: logging, discussion and decision phase  The meeting is moderated by moderator(inspection leader)  During the logging phase the issues are mentioned page by page, reviewer by reviewer, and should not discuss  In discussion phase, focused on issues, and classify them(critical, major and minor)  At the end of the meeting, a decision on the work product under review has to be made by the participants Tester Training Course 2011
  • 21. Review Follow Planning Kick off Preparation Rework meeting up  Based on the defects detected, the author will improve the work product under review step by step  Changes that are made to the document should be easy to identify during follow up Tester Training Course 2011
  • 22. Review Follow Planning Kick off Preparation Rework meeting up  The moderator will check that the agreed defects have been addressed  and will gather metrics such as how time was spent on the review, how many defects were found  will also check the exit criteria to ensure that they have been met Tester Training Course 2011
  • 23.  is a discussion meeting that focuses on achieving consensus about the technical content  The experts that are needed for a technical review • architects • chief designers • key users Tester Training Course 2011
  • 24.  Goals • assess the value of technical concepts and alternatives in the product and project environment • establish consistency in the use and representation of technical concepts • ensure, at an early stage, that technical concepts are used correctly • inform participants of the technical content of the document Tester Training Course 2011
  • 25.  Key characteristics • is documented • includes peers and technical experts • often performed as a peer review with out management participant • ideally it is lead by a trained moderator, but possibly also by technical expert • Reviewers prepare for review meeting and prepare a review report with a list of findings Tester Training Course 2011
  • 26. The author sends a copy of the work product to selected project team members. The team members read it, and then write up defects and comments to send back to the author Tester Training Course 2011
  • 28.  is a simple review  does not produce written logs  can be used as predecessors to inspections • to reduce the amount of effort involved in the inspection • to meet entry criteria of inspection process Tester Training Course 2011
  • 29.  To present the document to stakeholders both within and outside the software discipline, in order to gather information regarding the topic under documentation  To explain (knowledge transfer) and evaluate the contents of the document  To establish a common understanding of the document  To examine and discuss the validity of proposed solutions and the viability of alternatives, establishing consensus Tester Training Course 2011
  • 31.  A code review is a special kind of inspection in which the team examines a sample of code and fixes any defects in it.  In a code review, a defect is a block of code which does not properly implement its requirements, which does not function as the programmer intended, or which is not incorrect but could be improved • For example, it could be made more readable or its performance could be improved Tester Training Course 2011
  • 32.  It’s important to review the code which is most likely to have defects. This will generally be the most complex, tricky or involved code.  Good candidates for code review include: • A portion of the software that only one person has the expertise to maintain • Code that implements a highly abstract or tricky algorithm • An object, library or API that is particularly difficult to work with • Code written by someone who is inexperienced or has not written that kind of code before, or written in an unfamiliar language • Code which employs a new programming technique • An area of the code that will be especially catastrophic if there are defects Tester Training Course 2011
  • 34.  Pair programming is a technique in which two programmers work simultaneously at a single computer and continuously review each others’ work  Although many programmers were introduced to pair programming as a part of Extreme Programming, it is a practice that can be valuable in any development environment.  Pair programming improves the organization by ensuring that at least two programmers are able to maintain any piece of the software Tester Training Course 2011
  • 35.  In pair programming, two programmers sit at one computer to write code. Generally, one programmer will take control and write code, while the other watches and advises • Some teams have found that pair programming works best for them if the pairs are constantly rotated; this helps diffuse the shared knowledge throughout the organization. Others prefer to pair a more junior person with a more senior for knowledge sharing  The project manager should not try to force pair programming on the team; it helps to introduce the change slowly, and where it will meet the least resistance • It is difficult to implement pair programming in an organization where the programmers do not share the same nine-to-five (or ten-to-six) work schedule. • Some people do not work well in pairs, and some pairs do not work well together Tester Training Course 2011
  • 36.  Review is a static testing method(without running)  We have many types of review  From informal to formal  How to choose the appropriate level of formality • The maturity of the development process • Legal or regulatory requirements Tester Training Course 2011
  • 37.  Manager • decides on What is to be reviewed; schedule; closure  Moderator(review leader) • planning the review, moderate review meeting and follow up after meeting  Author • takes responsibility for fixing any agreed defects  Reviewer • identify and describes defects(with solutions)  Scriber(recorder) • attends the review meeting and documents all of the issues and defects, problems and open points Tester Training Course 2011
  • 40. Explicitly plan and track review activities Tester Training Course 2011
  • 43. Process issues  must follow the rules but keep it simple  make the process only as formal as the project culture or maturity level allows  do not become too theoretical or too detailed  checklist and roles are recommended to increase the effectiveness of defect identification Tester Training Course 2011
  • 44. Continual Improvement Process Tools Tester Training Course 2011
  • 45. Cost Benefit Tester Training Course 2011
  • 47. Question What is the main difference between a walkthrough and an inspection? An inspection is lead by the author, whilst a walkthrough is lead by a trained moderator An inspection has a trained leader, whilst a walkthrough is lead by a trained moderator A walkthrough is lead by the author, whilst an inspection is lead by trained moderator Authors are not present during inspections, whilst they are during walkthroughs Tester Training Course 2011
  • 48. Question Which of the following statements about reviews is true? Reviews cannot be performed on user reuirements specifications Reviews are the least effective way of testing code Reviews are unlikely to find faults in test plans Reviews should be performed on specifications, code and test plans Tester Training Course 2011
  • 49. Question Which review is inexpensive Walkthrough Informal Review Techincal Review Inspection Tester Training Course 2011
  • 50. Question Review is one of the methods of V&V. The other method are Inspection Walkthrough Testing All of the above Tester Training Course 2011
  • 51. Question In formal review, Rework: fixing defects found typically done by_______ Moderator Author Reviewer Recorder Tester Training Course 2011
  • 52. Question An important benefit of code inspections is that they: Are cheap to perform Can be performed by the person who wrote the code Can be performed by inexperienced staff Enable the code to be tested before the execution enviroment is ready Tester Training Course 2011
  • 53. Question Objective of design review meeting is To identify problems with design To solve the problems with design Both A and B None of the above Tester Training Course 2011
  • 54. Question ______reviews are often held with just the programmer who wrote the code and one or two other programmers or testers Formal Reviews Peer Reviews Semi Formal Reviews All of the above Tester Training Course 2011
  • 55. Question Which of the following activities differentiate a walkthrough from a formal review A walkthrough does not follow a defined process For a walkthrough individual preparation by the reviewers is optional A walkthrough requires meeting A walkthrough finds the causes of failures, while formal review finds the failures Tester Training Course 2011
  • 56. Question What makes an inspection different from other review types It is led by a trained leader, uses formal entry and exit criteria and checklists It is led by the author of the document to be inspected It can only be used for reviewing design and code It is led by the author, uses checklists, and collects data for improvement Tester Training Course 2011
  • 58.  A form of automated static testing • exactly automated review • check for violations of standards • check for things which may be fault  often used by developer to automated code review, and is called Static Code Analysis  also used by designer to review software models, and is called Analysis of Models Tester Training Course 2011
  • 59.  Does the program terminate?  How large can the heap become during execution?  What is the possible output?  Some question about PC • what is value of variable x when it is used • Can the pointer p be null • is the variable x initialized before it is read • what is a lower and upper bound on the value of a variable • etc Tester Training Course 2011
  • 60.  Ensure correctness • verify behavior • catch bugs early  Increase efficiency • resource usage • compiler optimizations Tester Training Course 2011
  • 65.  Static Code Analysis to the rescue Tester Training Course 2011
  • 66.  Use an automatic systematic approach  Use formal methods and measures  Without running code => can be applied earlier  Some kinds of defects are hard to find by dynamic testing Tester Training Course 2011
  • 68.  Programming(code) standard violations  Security vulnerabilities  Unreachable(dead) code  Undeclared variables  Inconsistent interface  Boundary violations  Syntax violations Tester Training Course 2011
  • 69.  The most well-known feature of SCA  Define coding standard • a set of programming rules  Often configured on IDE  Without such tools, more violations • the number of rules is usually so large that nobody can remember them all • some context-sensitive rules that demand reviews of several files are very hard to check by human being • avoid checking coding standards in review, that will distract them from other defects Tester Training Course 2011
  • 70.  Is the study of data flow structure  Data flow structure follows the trail of data items as it is accessed and modified by the code  Typical defects can be found • referencing a variable with an undefined value • variables that are never used Tester Training Course 2011
  • 71.  Data flow structure • variable defined where a value is stored into it • variable used where the stored value is accessed • variable is undefined before it is defined or when it goes out of scope y = x+z; //y is defined; x,z are used if a>b then read(c); //a,b are used; c is defined Tester Training Course 2011
  • 72. n := 0; n is re-defined without read (x); being used n := 1; ==> Data flow anomaly while x > y do begin y is used before it has read (y); been defined ==> Data flow fault write( n*y); x := x – n; end; Tester Training Course 2011
  • 73.  Data structure refers to the organization of the data itself, independent of the program  Provides a lot of information about the difficulty in writing programs to handle the data; then is used in designing test cases  Sometimes a program is complex because it has a complex data structure, rather than because of complex control or data flow Tester Training Course 2011
  • 74.  Is the study of control flow structure  Control flow structure addresses the sequence in which the instructions are executed  Typical defects can be found • unreachable(dead) code • infinite loops • any jumps to undefined labels • provide the code metrics • whether code conforms to a flowchart grammar Tester Training Course 2011
  • 75. a := 4; b := 15; z := 7; while b > z do begin writeln(z); z++; if(a>b) then b:=a; unreachable(dead) code end; Tester Training Course 2011
  • 76.  Why • How big and complex • Help to decide among several design alternatives • Help to decide how much risk  Typical code metrics • LOC – Lines of code • operands & operators(Halstead’s metrics) • fan-in & fan-out • nesting levels • OO metrics: inheritance tree depth, coupling & cohesion Tester Training Course 2011
  • 77.  Is a measure of the complexity of a flow graph • the code that the flow graph represents  the more complex the flow graph, the greater the measure  it can most easily be calculated as: • complexity = number of decisions + 1 Tester Training Course 2011
  • 78. What is the cyclomatic complexity? 1 2 3 5 Tester Training Course 2011
  • 79. Question Static analysis is best described as The analysis of batch programs The reviewing of test plans The analysis of program code The use of black box testing Tester Training Course 2011
  • 80. Question Data flow analysis studies Possible communications bottlenecks in a program The rate of change of data values as a program executes The use of data on paths through the code The intrinsic complexity of the code Tester Training Course 2011
  • 81. Question Static analysis Same as static testing Done by the developers Both A and B None of the above Tester Training Course 2011
  • 82. Question Cyclomatic complexity is used to calculate Number of independent paths in the basic set of a program Number of binary decisions + 1 Number bound for the number of test that must be conducted to ensure that all statements have been executed at least one Number of braches and decisions Tester Training Course 2011
  • 83. Question Code Walkthrough Type of dynamic testing Type of static testing Neither dynamic or static Performed by the testing team Tester Training Course 2011
  • 84. Question Which of the following statements is true of static analysis Compiling code is not a form of static analysis Static analysis need not be performed before imperative code is executed Static analysis can find faults that are hard to find with dynamic testing Extensive static analysis will not needed if white- box testing is to be performed Tester Training Course 2011
  • 85. Question Peer reviews are also called as: Inspection Walkthrough Technical Review Formal Review Tester Training Course 2011
  • 86. Question Success Factors for a review include i. Each review does not have a predefined objective ii. Defects found are welcomed and expressed objectively iii. Management supports a good review process iv. There is an emphasis on learning and process improvement Ii, iii, iv are correct and i is incorrect iii, i, iv are correct and ii is incorrect i, iii, iv, ii are in correct Ii is correct Tester Training Course 2011
  • 87. Question The Kick Off phase of a formal review includes the following: Explaining the objective Fixing defects found typical done by author Follow up Individual meeting preparations Tester Training Course 2011
  • 88. Question A series of probing questions about the completeness and attributes an application system is called Cheklist Checkpoint review Decision table Decision tree Tester Training Course 2011