Smoke and Sanity Testing

--> Smoke testing deals with the developed program in the software works appropriately as expected and all functions are working good and smooth.

--> Also, in hardware it tests whether smoke is produced when connected to the power supply. Thus it gets the name as smoke testing.

--> Sanity testing deals with any modifications or new features added to the existing software works correctly and smoothly as expected and can move on to the next step.

Understanding Smoke and Sanity Testing - Incredibuild

Difference between Smoke and Sanity testing

Smoke TestingSanity Testing
* It is used to test the critical functionalities of the program is working fine or not.* It is done to check the new functionality have been fixed and working good.
* It is performed by the developers or testers.* It is performed by testers.
* Smoke testing is documented for future references.* Sanity testing is not documented.
* Smoke testing tests the entire system from start to end.* Sanity testing tests only the particular component of the entire system.
* It is a part of acceptance testing* It is a part of regression testing.

Validation and Verification

--> Validation is the process of checking whether the product we are developing is right i.e checking between actual and expected result.

--> Verification is the process of checking whether the product developed meet the expectations and requirements that is necessary.

Difference between Validation and Verification

ValidationVerification
* It includes checking and testing the actual product.* It includes checking the documents , designs, codes and programs.
* It comes under the dynamic testing* It comes under the static testing.
* It checks whether it meets the customer requirements or not.* It checks whether the software conforms to specifications or not.
* It comes under Quality control team.* It comes under the Quality assurance team.
* It finds the errors which the verification cannot.* It finds the error which the validation cannot at early stage.
* It is computer based process.* It is human based process.

AGILE METHODOLOGY

--> This is the process of project management where the team involves divides or breaks the project into series of phases and working for development of project.

--> It involves the cycle of planning, executing and evaluating.

--> It deals with the collaborative work and flexibility of the team to achieve the required high quality product as per the customer requirements within the expected time without any bugs or errors.

--> It involves several stages while developing the product.

  • Requirements

  • Planning and Design

  • Implementing

  • Testing

  • Review and Deployment

THE BENEFITS OF ADOPTING AN AGILE METHODOLOGY FOR SOFTWARE DEVELOPMENT -  Inzint - IT Partner of your choice

--> First of all, the team checks what are all the requirements that are needed to complete the given project as per the customer requirements.

--> It is important to step to understand the project and its directions whether can be completed within the time or not with no errors.

--> Then to deal with the planning of the process like the human resources, expected result, investments to be done for completing the project.

--> The product design should also be created within this stage to make the product without any distractions or any doubts in between the process.

--> It also deals with the how many iterations are required to complete the development of project. This method comes under the iterative process.

--> After these steps, the process is implemented according to the planning with the required hardware, tools and program codes. This stage is done by the developing team using frequent and rapid iterations.

--> They work with the collaborative manner and frequently modifies the product features as per the requirements during the development stage itself as it reduces the processing time and errors or bugs if any in the final or actual product.

--> Then comes the testing team where the product is tested for any defects or errors, the product done by the organisation is correct and smooth, whether it meets requirements.

--> In this method , the entire process is observed by the management and the client. If they found any bugs it is sent back to the development team for the modifications or changes it required for better result.

--> If the product meets the actual requirements and expected result, then it is launched or deployed for the end users.

--> The developed software is regularly maintained to meet the customer's needs and expectations are fulfilled.

There are several terms involved in the Agile Methodology, they are

  • Product Owner

  • Epic

  • User Story

  • Product Backlog - Contains the features prepared by the product owner

  • Sprint - The period of time to complete the user story (to code and test the feature)

  • Sprint Planning Meeting - Conducted within the time to discuss which sprint is to be completed on which time

  • Sprint Backlog

  • Scrum Master - Deals with team co-ordination and close co-operation within the team

  • Scrum meeting - Conducted by scrum master every day to discuss the ongoing process

EPIC AND USER STORIES

--> Epic refers to the requirements and needs of the user or customer for their product, i.e collection of user stories. These are large bodies which are broken into small tasks.

--> This always deals with multiple teams and multiple projects, as it is delivered over the number of sprints.

--> It makes the team to better understand of the project they are working through various development and customer feedback.

--> User Story refers to the features or modules in the software to be developed. These are the shorter requirement in the perspective of end user.

--> These are completed in a single sprint, the defined set of work to be completed within the given time i.e sprint.