Bubble

JOB for PHP programmers
Senior WEB-developer | Junior WEB-developer

New project

workflow

Projects from scratch are the most interesting for us as we can purely implement all our ideas using full set of technologies and Agile methodologies we have mastered.

At the same time project from scratch can cause problems when clearly defining requirements to the product that should be delivered as it is not easy to transfer the whole vision of the customer to the team. Forma-Pro does its best to eliminate all problems that can happen during planning and development of a project.

The general workflow for a project includes raw budget estimation, planning to get in sync with the customer concept, estimating, development and release stages.

Raw budget estimation.

As the very first stage we do a quick raw estimate of the project based on a short customer description. Usually we provide a preliminary range of man-hours that we think will be spent on a project where low and higher limits can be 2-3 times different. This information can be used by a potential customer to estimate a raw budget needed for the project.

Planning

During this phase we determine requirements and discuss all project details to write down a set of user stories that forms product backlog. User stories, functional specification or any other project documentation available from the customer can speed up work during planning. Having design sketches can also help and is an indicator that the customer has a clear vision of the product. During planning the customer will be required to provide prompt and clear responses to our questions.

Estimating

The goal of this stage is to provide a final budget and development plan for the project. As the first step customer is asked to prioritize user stories defined in a backlog. Than using this information we split user stories into sprints (or milestones) and define calendar plan for each sprint. Each sprint is 1-2 weeks long and after each sprint we deliver results to the customer.

Development

When sprint planning and estimates are done we are ready to proceed with the development. Our customers can be sure that their project is developed using high quality standards, effective methodologies and modern PHP technologies like:

  • Test Driven Development (TDD) with full code coverage by functional and unit tests – approach that guarantees well tested and high quality code
  • Continuous integration – automatic builds of the project on a staging server
  • Symfony framework

During the whole development we keep customer involved into the process. We consider this to be very important as without customer feedback it's not possible to build the product that meets all customer requirements and expectation. The main instruments of getting customer involved are sprint acceptance and retrospective meetings. During them we present sprint results to the customer to review what has been done and we together discuss if the sprint is closed.

Release

The last phase is releasing the project. This includes deployment to the live server, beta-testing and if it's needed – performance testing under load.