Top Border
  • Get a 30-Day Trial
  • Sign-up to get advanced capabilities to add new efficiencies to your test management process.
  • Full Name*
  • First and Last name
  • Email*
  • Provide a business email
  • Company Name*
  • Yes, I would like to subscribe to QMetry�s newsletter for useful tips and valuable resources.
Bottom Border

Incremental Development Methodology

See how QMetry integrates with the Incremental Development Methodology

incrementalThis guide is designed to help companies that use an Incremental development methodology often referred to as iterative development. The Incremental methodology is an evolution of the Waterfall model, where the Waterfall model is incrementally applied using the iterative philosophy of prototyping. With Incremental development the project is designed, implemented and tested incrementally with a little more is added each time until the product is finished. It involves both development and maintenance. The product is defined as finished when it satisfies all of its requirements.

 

How To:
Organization of Assets
QMetry organizes assets into Projects, Releases, Cycles. The Project is the main container and is the equivalent to your overall Product/Project. Incremental projects are usually composed of a number of independent components designed and built separately. With QMetry each increment, or component, could be organized either as separate "Releases" or "Cycles" depending on your organizations exact needs.

 

Organizations with longer than one month increments and that expect to release each increment to their customer may benefit from using increments as Releases. This allows the organization to further break down the increment into separate testing cycles. In this scenario each component is delivered to the client when it is complete. This allows partial utilization of product and avoids a long development time.

 

Organizations with shorter than one month increments and/or organizations that often combine multiple increments / components into a single customer release may benefit from using increments as Cycles. In this scenario multiple components developed independently are combined and delivered to the client when they are complete. This allows for independent development and testing of the individual components with only limited additional cross-functional testing needed for the final combined release.

 

Phasing:

Using QMetry in Different Phases:
Planning Requirements
Incremental Development usually has a short list of requirements that need to be defined and then quickly converted into test / use cases. QMetry provides a Requirement Management module (Professional and Enterprise Editions) that allows you to create and track requirements. Whether you use Releases or Cycles for your increments QMetry can easily organize your requirements in the way that works best for your environment.If your organization is using an external tool during the requirement phase, no worries - QMetry allows you to import requirements from external tools like JIRA, Rally, or Excel.

 

Analysis and Design
Due to the smaller requirement set and shorter design cycle it is important to quickly build your test cases from the requirements so that the increment / component can be delivered on time to the client when complete. QMetry allows you to easily create  from your requirements. This provides functional coverage for your requirements that you can quickly review during Testing.


As projects progress and new increments are created the design phase is the time to assess impact and risk of new features link existing Test Cases to requirements, and create and improve the regression suite.

 

Implementation and Deployment
With the Incremental methodology it is generally easier to test and debug than other methods of software development because relatively smaller changes are made during each increment. This allows for more targeted and rigorous testing of each element within the overall product.

 

right-click executionUsing the Incremental methodology even after the first increment the expectation that a product is ready and can be delivered to the customer. This means that all requirements must be tested and passed. As mentioned in the design phase you can link Test Cases to Requirements to establish coverage; however, you can also use a simple approach of testing all Test Cases directly, or organizing your Test Cases in folders for testing.{image of right click execution of Test Case Folder see below}

 

Testing
After each increment, regression testing should be conducted. During this testing, faulty elements of the software can be quickly identified because few changes are made within any single increment.

 

In addition to testing against specific Test Cases or Test Case folders Test Suites can be used for a variety of purposes such as Smoke Test, BVT, Functional Test Suites for specific new feature. Test Suites can also be used to test against customer specific configurations are requirements; however, Platforms can also be used for this purpose.

 

Test Suites are executed against different Platforms or Configurations. With platforms you can quickly reuse the same Test Suites to record the results against different browser, mobile devices, set top boxes, etc. No need to recreate the Test Cases, or Test Suites. Simply add the platform and go.


Test Suites can be copied quickly from one cycle to the next. This allows you to reuse the Smoke and Regression Test Suites throughout the development lifecycle and to grow your Test Suites through the project's increments.

 

Usually Incremental projects test against a specific build during a single testing cycle; however, some development groups allow for multiple builds within a cycle (e.g. if the last build failed the smoke test and needed to be rebuilt). If your organization allows for this then QMetry provides you the flexibility to track test results against each of those build through QMetry's unique drop feature. At the time of execution the tester can assign a specific drop/build to be tested against. The term "drop" can also be renamed to match the nomenclature used by the organization (e.g. build, version, patch, etc.).

 

Evaluation
Based on customer feedback, a plan is developed for the next increments, and modifications are made accordingly. Often some of the features in the initial planning are removed from the scope of a project in the planning or analysis phase.In addition many bugs are found in the implementation and testing phase that are not fixed. Organizations can store these requirements and bugs in QMetry's Backlog. The Backlog contains all Test Cases and Requirements that are not associated with a specific Cycle or Release. This is an automatic process, so any time during the development lifecycle you can remove a requirement or Test Case from the scope of the release and it will move to the project backlog.

 

The issues in Backlog are not lost; however, they are separated out so they do not interfere with your planning or test status within your current increment. They are ready in the project Backlog if and when you want to provide a maintenance update. During the maintenance period patches can be created from the Backlog, or new requirements or bugs can be added. Testing can be handled either by adding a new release or cycle, or using QMetry's drop feature to create a patch and test against that.

 

Repeat

This process continues, with increments being delivered until the complete product is delivered. This Incremental philosophy is also used in Agile.