SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Moqod quality assurance
guidelines
quality standards
02
Vision:
At Moqod it’s our main goal to deliver high-quality software. Ideal world software
quality standard is completely bug-free software. We strive to deliver bug-free
software.
Definition of a bug:
Bug is an error, flaw, failure, or fault in a computer program or system that causes
it to produce an incorrect or unexpected result, or to behave in unintended ways.
(Wikipedia).
key points
03
Quality standards:
Therefore software quality standard at Moqod is simple and straight forward -
“Software functions as expected”. As expected means as specified and described
in the project functional documents and artefacts.
But this doesn't mean blindly following the docs. Because of continuous
communication with the customer, “software functions as expected” also means -
as expected by the customer and the end-user.
key points
04
The following points apply to all projects to ensure highest possible quality of the
software products:
● Moqod employs a dedicated full-time QA engineer.
● QA engineer must be introduced to the project at the earliest stage possible.
● All issues must be reported and document to a tracking system! Otherwise
the issues can be disregarded. This concerns all project stakeholders (dev
team, QA engineers, PMs, Customers etc).
general rules
05
● QA engineer at Moqod is the main quality gate.
● We praise proactive approach in solving problems. This includes: fast
reaction on reported issues, self-driven problem solving, looking at all
possible sources to quickly localize and solve a problem.
● We praise transparency through our whole workflow. The customer is in
direct contact with the team and is encouraged to ask/answer questions
from the team.
● Device, browser and OS compatibility will be stated in the project
specification. The product will be tested in these environments.
general rules
06
software development
quality gates at moqod
Code review
Automated
test scripts
(optional)
Manual testing
Regression
tests
(Manual and
automated)
code review
process
08
Code review is the first step in delivering quality software. It helps to identify
potential errors at early stages. Currently at Moqod P2P code review is in place.
Code review is done in the following way:
1. All developers pair up.
2. Every day every developer spends up to one hour to review the code of his
partner. One developer shows pull of changes during the last 24 hours and
describes the tasks he had to resolve. His partner evaluates the solution and
adds his comments or suggestions. Once the review is done, developers
switch roles.
3. Every month tech lead reviews and when needed changes the pairs.
code review process
The main advantage of this approach is that the reviewer understands
the context and all details of the solution from his partner.
Automated test scripts
AWS Device Farm
10
For the maximum coverage of test devices Moqod offers automated testing using Amazon Device
Farm and automated test scripts. This is an optional item that can be added to a project quote.
How this works:
1. Create a list of test cases for the app. Coverage to be discussed.
2. For iOS Apple UI automation is used as an instrument. For Android Robotium Framework.
3. These scripts will be run on AWS Device Farm to perform the test cases on the target
devices.
4. Afterwards the test scenarios can be run at any time with a mouse click, automating
regression tests.
Important:
AWS Device Farm uses real devices, so we get a coverage and environment close to real life.
Automated test scripts
AWS Device Farm
12
It is highly recommended to cover backend (web API calls, database calls,
front end and admin section) with unit tests and run these automatically on
staging environment with every deploy.
This ensures all APIs and so clients (mobile, front-end etc) will remain
intact and will funcion properly. Otherwise, the problem can be identified at
the moment changes are deployed to staging.
API Unit tests
13
Due to the specific nature of mobile development (data access, device
location, different hardware and software environments etc) manual testing
is the key component in QA process. During the manual testing we use
various monkey scripts and monitoring tools for all mobile platforms.
Manual testing process
rules and guidelines for
manual testing process
15
1. QA engineer reviews project documentation.

a. Documentation is sufficient – go to step 2.
b. Otherwise, the documentation is to be revised by the Customer and PM.
2. QA engineer estimates the amount of work needed for testing.
3. The team plans iterations and release dates for interim milestones and
final release.
Stage 1.
QA Planning
16
1. At the end of every iteration upon delivery of an interim milestone a testing
round is held.
a. Functional tests are executed on newly delivered features.
b. Regression tests are executed on previously delivered features.
Stage 2.
Interim release testing
17
2. The results of interim release test are:
a. Delivery successful. QA engineer approves the release. The build is sent to
customer together with a short report containing release notes. Go to step 3.
b. Delivery failed. QA engineer rejects the release. The build is not sent to
customer. A report with action plan is provided to customer. The release is sent
back to dev team for the needed fixes. However, a PM can still provide the build
to Customer to showcase the progress.
Stage 2.
Interim release testing
18
3. Customer receives the build. Possible actions:
a. Customer accepts the build and signs off the milestone as is.
b. Customer rejects the delivery and the release is sent back to dev team for the
needed fixes.
c. Customer accepts the build and signs off the milestone, but with minor
feedback and comments. This feedback is added to backlog for future
releases.
Stage 2.
Interim release testing
19
1. Upon reaching final milestone a complete acceptance test is executed on the
product. QA engineer reviews all use cases to check against the actual functionality
of the product.
2. GUI testing is held on the final delivery. All screen dimensions, fonts and colors
need to be checked.
Stage 3. Final release.
Acceptance testing.
20
3. The results of Acceptance testing can be:
a. Release accepted by QA engineer. The build is sent to customer
accompanying acceptance report. The report contains a list of all use cases
and test results against the use cases (success/failed). The product is
provided to customer for sign off.
b. Release is rejected by QA engineer. The product is not provided to customer
for acceptance. A report with further action plan is sent.
Stage 3. Final release.
Acceptance testing.
21
4. Customer reviews the final product delivery:
a. Customer accepts the delivery and signs off the project. The product is
processed to Store upload or live environment.
b. Customer accepts the delivery and signs off the project, but with some
comment or improvements. The product will still be sent to store or live
environment. The feedback will be taken into new version of the product as a
separate statement of work
c. Customer rejects the delivery and the release is sent back to dev team for the
needed fixes.
Stage 3. Final release.
Acceptance testing.
QA Engineer responsibilities
and authorities
23
At Moqod a QA engineer is the main jury who is in charge to accept or reject the
work. The list of responsibilities of a QA engineer is the following:
●  Accept/reject deliveries.
●  Help find the root cause of a problem.
●  Review and accept/reject project documentation.
●  Report to PM and dev team upon results of testing.
●  Set specific rules for QA process on projects.
●  Ensure all project stakeholders follow the rules and process.
QA Engineer responsibilities
and authorities
01
MQD BV
Amsterdam, the Netherlands
+31 20 893 2331
info@moqod.com

Mais conteúdo relacionado

Mais procurados

Unit Testing in Action - C#, NUnit, and Moq
Unit Testing in Action - C#, NUnit, and MoqUnit Testing in Action - C#, NUnit, and Moq
Unit Testing in Action - C#, NUnit, and MoqXPDays
 
Software testing
Software testingSoftware testing
Software testingK Lingaraju
 
Improving Code Quality Through Effective Review Process
Improving Code Quality Through Effective  Review ProcessImproving Code Quality Through Effective  Review Process
Improving Code Quality Through Effective Review ProcessDr. Syed Hassan Amin
 
Software Testing As a Career Path
Software Testing As a Career PathSoftware Testing As a Career Path
Software Testing As a Career PathRock Interview
 
Software Testing Basic Concepts
Software Testing Basic ConceptsSoftware Testing Basic Concepts
Software Testing Basic Conceptswesovi
 
Code Review: How and When
Code Review: How and WhenCode Review: How and When
Code Review: How and WhenPaul Gower
 
Elements of a Test Framework
Elements of a Test FrameworkElements of a Test Framework
Elements of a Test FrameworkSmartBear
 
Sustainable agile testing
Sustainable agile testingSustainable agile testing
Sustainable agile testingmimmozzo_
 
Clean Code: Successive Refinement
Clean Code: Successive RefinementClean Code: Successive Refinement
Clean Code: Successive RefinementAli A Jalil
 
New trends in testing automation
New trends in testing automationNew trends in testing automation
New trends in testing automationEran Kinsbrunner
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsKMS Technology
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation TestingArchana Krushnan
 
Code-Review-Principles-Process-and-Tools (1)
Code-Review-Principles-Process-and-Tools (1)Code-Review-Principles-Process-and-Tools (1)
Code-Review-Principles-Process-and-Tools (1)Aditya Bhuyan
 
Peer Code Review An Agile Process
Peer Code Review An Agile ProcessPeer Code Review An Agile Process
Peer Code Review An Agile Processgsporar
 
Behavior Driven Development with SpecFlow
Behavior Driven Development with SpecFlowBehavior Driven Development with SpecFlow
Behavior Driven Development with SpecFlowRachid Kherrazi
 
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...Edureka!
 
Topic production code
Topic production codeTopic production code
Topic production codeKavi Kumar
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test AutomationPekka Klärck
 

Mais procurados (20)

SW Testing Fundamentals
SW Testing FundamentalsSW Testing Fundamentals
SW Testing Fundamentals
 
Unit Testing in Action - C#, NUnit, and Moq
Unit Testing in Action - C#, NUnit, and MoqUnit Testing in Action - C#, NUnit, and Moq
Unit Testing in Action - C#, NUnit, and Moq
 
Software testing
Software testingSoftware testing
Software testing
 
Improving Code Quality Through Effective Review Process
Improving Code Quality Through Effective  Review ProcessImproving Code Quality Through Effective  Review Process
Improving Code Quality Through Effective Review Process
 
Software Testing As a Career Path
Software Testing As a Career PathSoftware Testing As a Career Path
Software Testing As a Career Path
 
Software Testing Basic Concepts
Software Testing Basic ConceptsSoftware Testing Basic Concepts
Software Testing Basic Concepts
 
Code Review: How and When
Code Review: How and WhenCode Review: How and When
Code Review: How and When
 
Elements of a Test Framework
Elements of a Test FrameworkElements of a Test Framework
Elements of a Test Framework
 
Sustainable agile testing
Sustainable agile testingSustainable agile testing
Sustainable agile testing
 
Clean Code: Successive Refinement
Clean Code: Successive RefinementClean Code: Successive Refinement
Clean Code: Successive Refinement
 
New trends in testing automation
New trends in testing automationNew trends in testing automation
New trends in testing automation
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and Tools
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Code-Review-Principles-Process-and-Tools (1)
Code-Review-Principles-Process-and-Tools (1)Code-Review-Principles-Process-and-Tools (1)
Code-Review-Principles-Process-and-Tools (1)
 
Peer Code Review An Agile Process
Peer Code Review An Agile ProcessPeer Code Review An Agile Process
Peer Code Review An Agile Process
 
Behavior Driven Development with SpecFlow
Behavior Driven Development with SpecFlowBehavior Driven Development with SpecFlow
Behavior Driven Development with SpecFlow
 
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
 
Topic production code
Topic production codeTopic production code
Topic production code
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test Automation
 
Testing Best Practices
Testing Best PracticesTesting Best Practices
Testing Best Practices
 

Semelhante a Moqod QA Guidelines for Delivering High Quality Software

functional testing
functional testing functional testing
functional testing bharathanche
 
Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)bharathanche
 
Agile lifecycle handbook by bhawani nandan prasad
Agile lifecycle handbook by bhawani nandan prasadAgile lifecycle handbook by bhawani nandan prasad
Agile lifecycle handbook by bhawani nandan prasadBhawani N Prasad
 
IRJET- Technique of Finding the Defect in Software Testing
IRJET- Technique of Finding the Defect in Software TestingIRJET- Technique of Finding the Defect in Software Testing
IRJET- Technique of Finding the Defect in Software TestingIRJET Journal
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET Journal
 
Basic of Software Testing.pptx
Basic of Software Testing.pptxBasic of Software Testing.pptx
Basic of Software Testing.pptxaparna14patil
 
Sivareddy 0000000000000000
Sivareddy 0000000000000000Sivareddy 0000000000000000
Sivareddy 0000000000000000sivareddyeda
 
Continuous integration practices to improve the software quality
Continuous integration practices to improve the software qualityContinuous integration practices to improve the software quality
Continuous integration practices to improve the software qualityFabricio Epaminondas
 
Continuous Integration Practices
Continuous Integration Practices Continuous Integration Practices
Continuous Integration Practices Marcelo Freire
 
CIPL Application Development Process
CIPL Application Development ProcessCIPL Application Development Process
CIPL Application Development Processreetamclassic
 
An Explicit Guide to Regression Testing
An Explicit Guide to Regression TestingAn Explicit Guide to Regression Testing
An Explicit Guide to Regression TestingSerena Gray
 
11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil BarotHarshil Barot
 
Fundamentals of software testing
Fundamentals of software testingFundamentals of software testing
Fundamentals of software testingNoha Gamal
 
Interview questions and answers for quality assurance
Interview questions and answers for quality assuranceInterview questions and answers for quality assurance
Interview questions and answers for quality assuranceGaruda Trainings
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answersMehul Chauhan
 
Software Quality Assurance training by QuontraSolutions
Software Quality Assurance training by QuontraSolutionsSoftware Quality Assurance training by QuontraSolutions
Software Quality Assurance training by QuontraSolutionsQUONTRASOLUTIONS
 
Introduce Test Harness for Direct To Consumer Solutions.pdf
Introduce Test Harness for Direct To Consumer Solutions.pdfIntroduce Test Harness for Direct To Consumer Solutions.pdf
Introduce Test Harness for Direct To Consumer Solutions.pdfKnoldus Inc.
 
Manual testing real time questions by subbu
Manual testing real time questions by subbuManual testing real time questions by subbu
Manual testing real time questions by subbupalla subrahmanyam
 
21UCAE65 Software Testing.pdf(MTNC)(BCA)
21UCAE65 Software Testing.pdf(MTNC)(BCA)21UCAE65 Software Testing.pdf(MTNC)(BCA)
21UCAE65 Software Testing.pdf(MTNC)(BCA)ssuser7f90ae
 

Semelhante a Moqod QA Guidelines for Delivering High Quality Software (20)

functional testing
functional testing functional testing
functional testing
 
Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)Quality assuarance bharath anche (1)
Quality assuarance bharath anche (1)
 
Stlc 12 Steps Ppt
Stlc 12 Steps PptStlc 12 Steps Ppt
Stlc 12 Steps Ppt
 
Agile lifecycle handbook by bhawani nandan prasad
Agile lifecycle handbook by bhawani nandan prasadAgile lifecycle handbook by bhawani nandan prasad
Agile lifecycle handbook by bhawani nandan prasad
 
IRJET- Technique of Finding the Defect in Software Testing
IRJET- Technique of Finding the Defect in Software TestingIRJET- Technique of Finding the Defect in Software Testing
IRJET- Technique of Finding the Defect in Software Testing
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLC
 
Basic of Software Testing.pptx
Basic of Software Testing.pptxBasic of Software Testing.pptx
Basic of Software Testing.pptx
 
Sivareddy 0000000000000000
Sivareddy 0000000000000000Sivareddy 0000000000000000
Sivareddy 0000000000000000
 
Continuous integration practices to improve the software quality
Continuous integration practices to improve the software qualityContinuous integration practices to improve the software quality
Continuous integration practices to improve the software quality
 
Continuous Integration Practices
Continuous Integration Practices Continuous Integration Practices
Continuous Integration Practices
 
CIPL Application Development Process
CIPL Application Development ProcessCIPL Application Development Process
CIPL Application Development Process
 
An Explicit Guide to Regression Testing
An Explicit Guide to Regression TestingAn Explicit Guide to Regression Testing
An Explicit Guide to Regression Testing
 
11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot
 
Fundamentals of software testing
Fundamentals of software testingFundamentals of software testing
Fundamentals of software testing
 
Interview questions and answers for quality assurance
Interview questions and answers for quality assuranceInterview questions and answers for quality assurance
Interview questions and answers for quality assurance
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answers
 
Software Quality Assurance training by QuontraSolutions
Software Quality Assurance training by QuontraSolutionsSoftware Quality Assurance training by QuontraSolutions
Software Quality Assurance training by QuontraSolutions
 
Introduce Test Harness for Direct To Consumer Solutions.pdf
Introduce Test Harness for Direct To Consumer Solutions.pdfIntroduce Test Harness for Direct To Consumer Solutions.pdf
Introduce Test Harness for Direct To Consumer Solutions.pdf
 
Manual testing real time questions by subbu
Manual testing real time questions by subbuManual testing real time questions by subbu
Manual testing real time questions by subbu
 
21UCAE65 Software Testing.pdf(MTNC)(BCA)
21UCAE65 Software Testing.pdf(MTNC)(BCA)21UCAE65 Software Testing.pdf(MTNC)(BCA)
21UCAE65 Software Testing.pdf(MTNC)(BCA)
 

Último

9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7Pooja Nehwal
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRnishacall1
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPsychicRuben LoveSpells
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Pooja Nehwal
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceanilsa9823
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceanilsa9823
 

Último (7)

9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
 

Moqod QA Guidelines for Delivering High Quality Software

  • 3. 02 Vision: At Moqod it’s our main goal to deliver high-quality software. Ideal world software quality standard is completely bug-free software. We strive to deliver bug-free software. Definition of a bug: Bug is an error, flaw, failure, or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways. (Wikipedia). key points
  • 4. 03 Quality standards: Therefore software quality standard at Moqod is simple and straight forward - “Software functions as expected”. As expected means as specified and described in the project functional documents and artefacts. But this doesn't mean blindly following the docs. Because of continuous communication with the customer, “software functions as expected” also means - as expected by the customer and the end-user. key points
  • 5. 04 The following points apply to all projects to ensure highest possible quality of the software products: ● Moqod employs a dedicated full-time QA engineer. ● QA engineer must be introduced to the project at the earliest stage possible. ● All issues must be reported and document to a tracking system! Otherwise the issues can be disregarded. This concerns all project stakeholders (dev team, QA engineers, PMs, Customers etc). general rules
  • 6. 05 ● QA engineer at Moqod is the main quality gate. ● We praise proactive approach in solving problems. This includes: fast reaction on reported issues, self-driven problem solving, looking at all possible sources to quickly localize and solve a problem. ● We praise transparency through our whole workflow. The customer is in direct contact with the team and is encouraged to ask/answer questions from the team. ● Device, browser and OS compatibility will be stated in the project specification. The product will be tested in these environments. general rules
  • 7. 06 software development quality gates at moqod Code review Automated test scripts (optional) Manual testing Regression tests (Manual and automated)
  • 9. 08 Code review is the first step in delivering quality software. It helps to identify potential errors at early stages. Currently at Moqod P2P code review is in place. Code review is done in the following way: 1. All developers pair up. 2. Every day every developer spends up to one hour to review the code of his partner. One developer shows pull of changes during the last 24 hours and describes the tasks he had to resolve. His partner evaluates the solution and adds his comments or suggestions. Once the review is done, developers switch roles. 3. Every month tech lead reviews and when needed changes the pairs. code review process The main advantage of this approach is that the reviewer understands the context and all details of the solution from his partner.
  • 11. 10 For the maximum coverage of test devices Moqod offers automated testing using Amazon Device Farm and automated test scripts. This is an optional item that can be added to a project quote. How this works: 1. Create a list of test cases for the app. Coverage to be discussed. 2. For iOS Apple UI automation is used as an instrument. For Android Robotium Framework. 3. These scripts will be run on AWS Device Farm to perform the test cases on the target devices. 4. Afterwards the test scenarios can be run at any time with a mouse click, automating regression tests. Important: AWS Device Farm uses real devices, so we get a coverage and environment close to real life. Automated test scripts AWS Device Farm
  • 12. 12 It is highly recommended to cover backend (web API calls, database calls, front end and admin section) with unit tests and run these automatically on staging environment with every deploy. This ensures all APIs and so clients (mobile, front-end etc) will remain intact and will funcion properly. Otherwise, the problem can be identified at the moment changes are deployed to staging. API Unit tests
  • 13. 13 Due to the specific nature of mobile development (data access, device location, different hardware and software environments etc) manual testing is the key component in QA process. During the manual testing we use various monkey scripts and monitoring tools for all mobile platforms. Manual testing process
  • 14. rules and guidelines for manual testing process
  • 15. 15 1. QA engineer reviews project documentation.
 a. Documentation is sufficient – go to step 2. b. Otherwise, the documentation is to be revised by the Customer and PM. 2. QA engineer estimates the amount of work needed for testing. 3. The team plans iterations and release dates for interim milestones and final release. Stage 1. QA Planning
  • 16. 16 1. At the end of every iteration upon delivery of an interim milestone a testing round is held. a. Functional tests are executed on newly delivered features. b. Regression tests are executed on previously delivered features. Stage 2. Interim release testing
  • 17. 17 2. The results of interim release test are: a. Delivery successful. QA engineer approves the release. The build is sent to customer together with a short report containing release notes. Go to step 3. b. Delivery failed. QA engineer rejects the release. The build is not sent to customer. A report with action plan is provided to customer. The release is sent back to dev team for the needed fixes. However, a PM can still provide the build to Customer to showcase the progress. Stage 2. Interim release testing
  • 18. 18 3. Customer receives the build. Possible actions: a. Customer accepts the build and signs off the milestone as is. b. Customer rejects the delivery and the release is sent back to dev team for the needed fixes. c. Customer accepts the build and signs off the milestone, but with minor feedback and comments. This feedback is added to backlog for future releases. Stage 2. Interim release testing
  • 19. 19 1. Upon reaching final milestone a complete acceptance test is executed on the product. QA engineer reviews all use cases to check against the actual functionality of the product. 2. GUI testing is held on the final delivery. All screen dimensions, fonts and colors need to be checked. Stage 3. Final release. Acceptance testing.
  • 20. 20 3. The results of Acceptance testing can be: a. Release accepted by QA engineer. The build is sent to customer accompanying acceptance report. The report contains a list of all use cases and test results against the use cases (success/failed). The product is provided to customer for sign off. b. Release is rejected by QA engineer. The product is not provided to customer for acceptance. A report with further action plan is sent. Stage 3. Final release. Acceptance testing.
  • 21. 21 4. Customer reviews the final product delivery: a. Customer accepts the delivery and signs off the project. The product is processed to Store upload or live environment. b. Customer accepts the delivery and signs off the project, but with some comment or improvements. The product will still be sent to store or live environment. The feedback will be taken into new version of the product as a separate statement of work c. Customer rejects the delivery and the release is sent back to dev team for the needed fixes. Stage 3. Final release. Acceptance testing.
  • 23. 23 At Moqod a QA engineer is the main jury who is in charge to accept or reject the work. The list of responsibilities of a QA engineer is the following: ●  Accept/reject deliveries. ●  Help find the root cause of a problem. ●  Review and accept/reject project documentation. ●  Report to PM and dev team upon results of testing. ●  Set specific rules for QA process on projects. ●  Ensure all project stakeholders follow the rules and process. QA Engineer responsibilities and authorities
  • 24. 01 MQD BV Amsterdam, the Netherlands +31 20 893 2331 info@moqod.com