Skip to main content

5 Best Features and Development Model for Agile

In Agile development model each sprint has phases of requirements, design, development and testing. In the development phase, development team concentrates on new features to be developed and unit testing around it. But it misses on the regression of existing working functionality. 

This leads to defect seepage from Development phase to Test phase. Consequence of it is late defect identification, reporting, fixing and re-verification of the defect. This defect cycle continues till it is fixed.

Drawback of Agile
The drawback of this approach is project teams put in extra effort of identifying defects and reporting. Late identification of defects also leads to risk of schedule slippage.
Here in this article is a mechanism proposed to minimize defect leakage from development phase to testing phase in agile software development life cycle by moving the regressed automated scripts from testing phase to development phase.

  1. The advantages of this approach of agile software development are:
  2. Early identification of defects in already working functionality.
  3. Development teams can use the regressed automation pieces as and when required to ensure that their new code is not introducing bugs in already existing functionality.
  4. Earlier identification of any requirement or design misses.
  5. It would save effort invested in reporting and documentation of the bug.
  6. Would help in restricting schedule slippages due to bugs being identified in later stages.
  7. It would further remove chances of test phase misses of bugs in already working functionality.
 Brief overview of Agile Software development Life Cycle:
In agile software development life cycle the product or solution is first divided into features which need to be developed. If there are new features identified in the midst of complete product release it again gets planned across sprints. Agile Sprint duration is decided based on feature to be developed. Every sprint goes through the phases of Requirement, Design, Development and Testing phase. 

In the requirements phase, software requirements are framed.

In the Design phase, design of the product / solution to be done is come up with. Here test team understands the requirements and comes up with a test strategy / plan to proceed with testing of the piece being developed. 

In the Development phase, Developers are actively involved in writing source for solutions to be provided and then in unit testing of the functionalities developed. Here the test team is involved in writing test cases for functionalities being developed. 

In the Test phase, Manual testing happens on the basis of test cases written. Automation testing for the test cases automated is also done. Here the development team is involved in fixing the bugs reported and test team re-verifies it.
 Development Model flow chart (ref: IBM)

Identified Gap:
While identifying the test cases to be automated, the first choices are those test cases which need to be run in each regression run. In SDLC mode of development as new features keep being added, test cases are added to automation suite. This keeps increasing the regression automation bed.

As the new suites are added to automation bed they mature only after multiple runs in that sprint. After sprint is over the automated regression suite is also stable to be used without any hiccups.

Using an agile mode of development, means the functionality developed in the last sprint would be integrated with the new functionality developed. This leads to changes in modules developed in previous sprints, which may result in bugs in the already developed functionality.

As the current models tie automation testing in the test phase, bugs introduced in previously working functionality get tracked in Test phase. This leads to a cycle of identification of bugs, reporting, fixing and re-verification of it.

Related: Agile vs Waterfall Model

Why Companies need Agile model?
Agile development methodology provides opportunities to assess the direction of a project throughout the development lifecycle. This is achieved through regular cadences of work, known as sprints or iterations, at the end of which teams must present a potentially shippable product increment. 

By focusing on the repetition of abbreviated work cycles as well as the functional product they yield, agile methodology is described as “iterative” and “incremental.” In waterfall, development teams only have one chance to get each aspect of a project right. In an agile paradigm, every aspect of development — requirements, design, etc. — is continually revisited throughout the lifecycle. When a team stops and re-evaluates the direction of a project every two weeks, there’s always time to steer it in another direction.

Comments

Popular posts from this blog

Top 20 ultimate ETL Questions really good for interviews

How to print/display the first line of a file?  there are many ways to do this. However the easiest way to display the first line of a file is using the [head] command.  $> head -1 file. Txt no prize in guessing that if you specify [head -2] then it would print first 2 records of the file.  another way can be by using [sed] command. [sed] is a very powerful text editor which can be used for various text manipulation purposes like this.  $> sed '2,$ d' file. Txt how does the above command work?  The 'd' parameter basically tells [sed] to delete all the records from display from line 2 to last line of the file (last line is represented by $ symbol). Of course it does not actually delete those lines from the file, it just does not display those lines in standard output screen. So you only see the remaining line which is the 1st line.  how to print/display the last line of a file?  the easiest way is to use the [tail] command.  $> tail -1 file. Txt if you want to do it using…

The unique helpful SAN architecture simplified one

Storage Area Networks (SANs)

A SAN is connected behind the servers. SANs provide block-level access to shared data storage. Block level access refers to the specific blocks of data on a storage device as opposed to file level access. One file will contain several blocks. 

SANs provide high availability and robust business continuity for critical data environments. SANs are typically switched fabric architectures using Fibre Channel (FC) for connectivity. The term switched fabric refers to each storage unit being connected to each server via multiple SAN switches also called SAN directors which provide redundancy within the paths to the storage units. This provides additional paths for communications and eliminates one central switch as a single point of failure.Ethernet has many advantages similar to Fibre Channel for supporting SANs. Some of these include high speed, support of a switched fabric topology, widespread interoperability, and a large set of management tools. In a storage ne…

Four Tableau products a quick review and explanation

I want to share you what are the Products most popular.

Total four products. Read the details below.

Tableau desktop-(Business analytics anyone can use) - Tableau  Desktop  is  based  on  breakthrough technology  from  Stanford  University  that  lets  you drag & drop to analyze data. You can connect to  data in a few clicks, then visualize and create interactive dashboards with a few more.

We’ve done years of research to build a system that supports people’s natural  ability  to  think visually. Shift fluidly between views, following your natural train of thought. You’re not stuck in wizards or bogged down writing scripts. You just create beautiful, rich data visualizations.  It's so easy to use that any Excel user can learn it. Get more results for less effort. And it’s 10 –100x faster than existing solutions.

Tableau server
Tableau  Server  is  a  business  intelligence  application  that  provides  browser-based  analytics anyone can use. It’s a rapid-fire alternative to th…