Wednesday, April 20, 2011

Agile Development?Why Agile?

We follow a systematic and time bound approach to web application development, adhering to the following key agile principles:
  • Short terms goals and smaller release cycles
  • Product is built inside-out, i.e. starting from simple features and gradually adding more sophistication
  • Stable version of product deployed frequently
  • Test driven development to ensure high quality/reliability of codes
  • Concurrent quality assurance to ensure bug-free product all the time
Agile Development
We follow a systematic and time bound approach to web application development, adhering to the following key agile principles:
  • Short terms goals and smaller release cycles
  • Product is built inside-out, i.e. starting from simple features and gradually adding more sophistication
  • Stable version of product deployed frequently
  • Test driven development to ensure high quality/reliability of codes
  • Concurrent quality assurance to ensure bug-free product all the time

A typical software development cycle by RailsTeam: development-process




Agile Development Process
We execute your project in small iterations across several phases depending on the scope of your project.

Project Discovery

We work with you to create a product wish-list, writing out everything which will satisfy business objectives.

Planning

Product development goals are broken down into product releases called Sprints. Sprint goals are executed in smaller development cycles called Iterations. Iterations length usually range from 3 days to 2 weeks.

Daily Goal Setting

Everyday, team members communicate on what they did, what are their roadblocks and their goals for the day. This helps everyone remain on the same page and ensures every team member is aware of overall progress.

Test Driven Development

RailsTeam maintains a test:code ratio of 1:4 to ensure high quality and reliability of code. Both functional and unit tests are written to maintain full code integrity. Any commits on source code repository is done only when both functional and unit test pass 100%.

Quality Assurance

Quality analysts closely work with the team to ensure business rules are implemented correctly. Test scenarios and test cases are documented concurrently. Both automated and manual testing approaches are followed to test the product.

Performance Tuning

At RailsTeam we lay high emphasis on performance and scalability of your app. Performance fine tuned at three levels:

  • Reducing page load time by optimizing html, css and javascripts
  • Optimizing database response time by database caching
  • Improving application response time by action caching and fragment caching

Why Agile?


Agile development reduces the communication gap that occurs between client vs. project manager as well as project manager vs. development team. A smaller development cycle means greater visibility/control over the project. Better quality of codes as there is lot more transparency and communication among the developers themselves.

Product goals are met with accuracy

Due to extremely dynamic nature of development, chances of gap between client requirements and actual functionality is very low.

Product grows organically

New features in product are introduced with extremely realistic approach keeping in mind immediate priorities.

Greater team satisfaction

Since there is reduced amount of 'redundancy' or repeat work in development, the development team stays on top of their spirit. They can see the results quickly and experiment / innovate with greater freedom.

Better product quality

Quality of end result is much better because everything is taken care on a smaller scale. Testing goes on parallel with the development.

Reduced cost of development

There is optimum usage of resource as a result, efforts do not get waste and end user or client does not have to wait for months to see the result. There is a huge savings in cost of development.

 

No comments:

Post a Comment