Ruby On Rails Development Workflow

Information Gathering

Our project discussion methodology includes gathering all the requirements from the client through different means depending on the client expertise. These can be in form of questionnaire, use cases, agile story boards, wire frames etc.

Tools – Customized templates, Questionnaires, Agile story board, Use cases

01

Business Analysis

Next, we analyze the requirements and provide process/product improvement suggestions and comments. Our experience and expertise helps us to innovate in this phase as this defines the success and architectural foundation of the product. The customer is a part of entire process till project delivery.

Tools – User cases, Agile Story Boards, Business research and analysis document

02

Project Planning

This phase sets up the expectations with the client. The different parts of project execution including what to expect and when, are handled in this phase. It also lists out the processes, tools and techniques we will be following. Normally, the design and development process goes hand in hand, so we plan them accordingly.

Tools – Sprint Docs, Backlog Docs, Redmine, Pivotal tracker, Basecamp

03

Project View

Once the planning is done the actual implementation starts. Project Development plan, technical specification docs to developers and unit test cases with validations are prepared here.

Tools – Redmine, Pivotal tracker, Basecamp

04

Database Design and Architecture

First we go ahead and prepare a robust and scalable architecture of the application keeping in mind the future requirements. This phase also covers the database design using which we will start the development process. The ERD is shared with the client for approval.

Tools – MS Visio, DB design tools

05

Design Process

This process decides how exactly the application will look and the output of this process will be wireframes, PSD, CSS/HTML which is W3C compliant and is tested on all browsers. Usability guidelines, design philosophy of the application based on the users are taken into consideration here.

Tools – Photoshop, Dreamweaver, Illustrator, MS Visio

06

Development

Development Process

This process follows pure SCRUM methodologies and product gets evolved in iterations or sprints. We focus on continuous deployment and regular code commits at the end of every sprint so that customer can be in touch with the evolution of the application over different stages. The aim would be to take the product to market as soon as possible reducing time to market and generating end user feedback in parallel for product improvement. 

Tools – Photoshop, Dreamweaver, Illustrator, MS Visio

07

Testing

Continuous testing is a must as the builds are pushed to server on sprint basis. We promote Test Driven and Behavior Driven Development and follow all standard test processes – unit, functional and integration tests. For larger applications, we also do load and performance assessments.

Tools –Rspec, Cucumber, Selenium, Whitebox and blackbox testing

08

Mobile

Deployment

This is an important phase where we have to judge the best platform for deployment; infrastructure related decisions are taken here. We advise to deploy the application on cloud because of scalability, uptime, cost effectiveness and many other factors. We are experts in deployment on cloud, be it Heroku, Rackspace or AWS.

Tools Capistrano, Apache, Passanger, Heroku, GIT/SVN

09

Post-Deployment (1)

Post Deployment

Once the application is live there is always a need to support the application so that end user will have a delightful experience. We take up AMC for the applications we develop, and engage resources to take care of new feature enhancements, bug fixes as well as 24×7 server maintenance. In short, we thereby guarantee that the application we develop is also managed and maintained well!

Tools BugZilla, Redmine, Pivotal Tracker, Helpdesks, Kayako Support Suite

10

We Help Modernize Your
Applications Portfolio

Learn How To Move Business Smoother & Faster

Interested In RailsCarma Services