Agile Software Development – Approach

Agile development methodology – Approach

  • In the Agile methodology, each project is broken up into several ‘Iterations’.
  • All Iterations should be of the same time duration (between 2 to 8 weeks).
  • At the end of each iteration, a working product should be delivered.
  • For example, in the agile approach the project will be broken up into ‘N’ releases (assuming each iteration is set to last 4 weeks).
  • Then the team will decide the basic core features that are required in the product and decide which of these features can be developed in the first iteration.
  • Any remaining features that cannot be delivered in the first iteration will be taken up in the next iteration or subsequent iterations, based on priority.
  • At the end of the first iterations, the team will deliver working software with the features that were finalized for that iteration.
  • Each iteration involves a cross-functional team working in all functions: planning, requirements analysis, design, coding, unit testing, and acceptance testing.
  • There will be N iterations and at the end of each iteration the customer is delivered working software that is incrementally enhanced and updated with the features that were shortlisted for that iteration.

In Agile way of working, each feature is completed in terms of design, development, code, testing and rework, before the feature is called done. There are no separate phases and all the work is done in single phase only. Defining agile methodology using different parameters:

  • Approach is incremental, flexible and adapts to change.
  • The size of the project is usually small.
  • The operating style is more distributed and not centralized.
  • Less documentation required.
  • Minimum planning required in the beginning.
  • Agile is more people oriented and gives importance to communication.
  • Size of the team is usually small with good expertise.

 

The Agile Triangle

Agile Triab

The agile triangle addresses the practical goals of the project. It provides value to the customer by delivering the working software.  The working software is characterized by intrinsic quality achieved by the self-motivated team. The quality  is achieved with specific tools and techniques, such as continuous integration, automated unit testing, pair programming, test-driven development, design patterns, domain-driven design, code refactoring and other techniques are often used to improve quality and enhance project agility.

And all these are achieved within the triple constrains (cost, schedule and the scope). The quality is measured both by its reliability in the current scenario and it’s adaptability to the future requirements. The design should be flexible enough to anticipate the future changes to adapt to them.

Final Words

If you aspire to become a successful agile professional why not as a certified agile practitioner? At Whizlabs we have leveraged complete guidance through our PMI-ACP online course and practice test.  These practice test series also helps to face many critical agile interview questions as these are designed in more elaborate and in-depth way.

Join us and achieve the best benefits towards the success goal of your career!

 

About Sparsh Goyal

A passionate IT professional, Sparsh Goyal boasts of 4.3+ years of experience. He has worked for various projects under AWS, Google Cloud Platform, Spring Boot, Python, Microservices, RESTful, RESTFUL APIs/SOAP, Scripting, Shell and JAVA. He is also working towards gaining proficiency in Oracle Cloud PaaS, DevOps, SaaS and Docker/Kubernetes. His primary and secondary skills validate his relentless pursuits of expanding his horizon and developing more as an IT person. He boasts of the following certifications: *Google Professional Cloud Security Engineer. *AWS Cloud Solutions Architect Associate. *Oracle certified JAVA programmer.

Leave a Comment

Your email address will not be published. Required fields are marked *


Scroll to Top