Sunday, November 12, 2017

Overview Of Waterfall Model in Testing

I. Overview
Nowadays, the software that people create is more complex. Algorithms are increasingly difficult to build and manage. Therefore, software managers are constantly learning and researching to create better software development methods. Compared to the past, people have been constantly creating cheaper, faster computers and more powerful programming languages. The greater theoretical knowledge requires support tools and software.

On the other hand, to develop and launch such software, many models have been applied such as waterfall model, V-model, iterative model, spiral model, agile model… Along with the software development process is the testing process. Testing is performed as soon as possible in the software development process in order to find bugs within the software that could be potential harmful problems inside software. This helps to perfect the software applications to meet user requirements.
One of the most widely used models in companies around the world is the Agile model, which is considered to be an improvement over older model Waterfall. We will learn about these two models to understand the differences between them.

II. Overview of software testing using Waterfall
Waterfall model is a development process that looks like a flow with phases in strict order without turning or jumping phase. If any errors occur before the test period, it will have to be re-started.


 Software testing includes:
a. Figure out and analyze requirements  
The first step in software testing process is to review customer requirements that must be thoroughly analyzed and tested. In case of any incomprehensible or unreasonable, report to the analysis team. This phase helps us to answer the question: What will be tested?
b. Prepare strategies and plans
After figuring out the customer requirements, the next step is to set up a test strategy and plan. We need to determine the scope of the test in this step:
  • ·         The key functions of the project.
  • ·         Non-functional requirements.
  • ·         The approach and identification of test activities can be either manual or automated, or a combination of both.
  • ·         References
  • ·         Estimate the cost of testing and building, reasonable time division.
  • ·         Division of human resources for testing.
  • ·         ......
Regardless of the project, we need to have a strategy and plan. It will be difficult to implement without a clear strategy and plan.

c. Design & Setup environment
The next step after the planning is to design them. This stage is very important, it ensures all test situations "cover" all the testing requirements. Designing a test is not just a one-time. It will be repaired, updated, added or subtracted throughout the software testing period, at any time with any required change, or notice that it needs to be repaired or added after analysis.
Writing test cases from functional and non-functional requirements of the software consists of three cases: True, Fail and unidentified results (case incurred, not in the specification document). Testcase should cover all aspects of testing for each software requirement. Write test scripts if you use the tool to perform automation tests for interfaces, functional tests.
Preparing the environment is the foundation for software testing to include the operating systems (Win 7, Win 8, IOS, ...), browsers (Opera, IE, ...), devices (Mobile, tablet , destop, ...)

d. Perform: 
After designing, we run the test in a variety of ways         
  • Run the test for each test case / test script
  • ·         Perform special ad-hoc testing
  • ·         Review bugs that have been fixed.
  • ·         The tester should report the bugs to the developer during the implementation and track them until the bugs are fixed.
  • ·         And during the implementation, there may be some additional missing cases (if any).
e. Report and summarize
After the software is tested, we make a report.
  • ·         Create bug reports.
  • ·         Evaluate test results, list the changes made during the test.
  • ·         Make a summary of the test performance.
  • ·         Determine whether the software reachs the criteria for success or be completed...

b4usolution group



1 comment: