How we create a web application in drails

In drails we follow a development by steps defined from the first day. We prefer not to skip any of them to get a great resoult. This is the process that we take in a project development:

You have an idea!

Everything starts with an idea. An idea about a company project, a product or a service that needs a web page. Now you need technological expertise.

Initial meeting

  • Project data
    Document

    Project data

    Document with general information about the project.

    Data about the profile of the client of the project, what are their actual problems, company profile, history and company vision, person in charge about the website, strong points, etc

    It's not mandatory, but this document help us to focus our next steps.

  • Functional requirements
    Document

    Functional requirements

    Document with short descriptions of all the expected behaviour of the web application.

    For instance if a new user can sign up, post comments, etc .

    It will be changed during the development, that is because often the user tests will reveal something to be improved.

  • Story board draft
    Document

    Story board draft

    Beside the functional requirements this document could be added.

    It is a paper prototype of the web application.

    It will give a visual idea of what is expected in the project. Somehow it serves to simplify the functional requirements.

The first is you contact us so we can find out where can help you in the best way. We will make an appointment so you can explain us that great idea of yours. If is not possible to see each other we always can study the project via phone, email or google hangouts.

After this stage we will write some documents: the project data, the functional requirements and a story board draft.

Price estimate

  • Project cost estimation
    Document

    Project cost estimation

    The price estimation can be open, where you ask for some functional requirements and we calc the price or closed, where under a limited budget we try to include all possible features.

We will modify the functional requirements to adapt them to your budget or using your requirements we will create a project cost estimation. You have to keep in mind that usually the user testing will reveal some improvements or maybe useless features so the cost of the project can be modified (always under your approval).

We will ask you to sign the acceptation of the functional requirements, plus a percent of the cost as a deposit to begin with the project.

Design sprint

  • Sketches
    Document

    Sketches

    Sketches about the user interface . The will be drawn from all the ideas in the design sprint.
  • Wireframes
    Mockup

    Wireframes

    Elaborated version of the user interface.
  • Paper prototype
    Paper mockup

    Paper prototype

    Designed from the wireframes to be tested in the users. Paper will be used because it's easy to make changes in the place.
  • Design mockup
    Image

    Design mockup

    Possible screenshot of the web app when finished. Usefull where projects must have a great appareance.
  • HTML mock up
    Mockup

    HTML mock up

    Semifunctional mockup of the application where you can see the user flow.

In this stage we will define the elements in the user interface. It can last between 3 or 5 days. It is an important stage, because detecting errors now we will save work and money in the long term.

1. Understand the problem and create solutions

The first day we will try to understand the existent problem. We will create a lot of ideas, and possible solutions. We will write all of them in post-it or notes, and write sketches of the application in papers.

2. Decide the best ideas

We will discard some of the ideas to take the really usefull. The web application should be easy to understand by the users. The main purpose should be to have the minimum viable project (MVP).

3. Create a semifunctional prototype to be tested with real users

Using the ideas we will create a semifunctional and usable version (wireframes,paper prototypes , design mock up o maqueta en HTML) to be tested on some users. The purpose is make sure the user interface is easy to understand and created a good user experience (UX). We prefer that the client choose our testing users, usually they know better the kind of client the user is for.

Project organization

  • Project cost estimation
    Document

    Project cost estimation

    The price estimation can be open, where you ask for some functional requirements and we calc the price or closed, where under a limited budget we try to include all possible features.
  • Functional requirements
    Document

    Functional requirements

    Document with short descriptions of all the expected behaviour of the web application.

    For instance if a new user can sign up, post comments, etc .

    It will be changed during the development, that is because often the user tests will reveal something to be improved.

  • Design Brief
    Document

    Design Brief

    A document with technical info about the expected behaviour of the web application, and its features

    It will helps our developers with the implementation and coding.

  • Development schedule
    Document

    Development schedule

    We can subdivide the web application in different features ( e.g. user registration, element creation, etc). For each feature we will estimate the duration of the creation and a aproximate date where the testing users can evaluate.
  • Database Schema
    Document

    Database Schema

    The database schema defines the relationsbetween all the objects or models of the application.
  • User testing
    Test

    User testing

    With any of the mockups in the app we will ask users to perform several actions and we will check the usefullness of the user interface.

    The sooner we can find a bug or a problem the better. That will allow to ship an application in time and to keep the project cost low. It's a fundamental part in a project

  • Technical specification
    Document

    Technical specification

    In case the web application should have several computers interconnected (cluster) or have a considerable complexity, we will write a technical specification where each system will be detailed.

Using the data from previous stages we will have enough information to make a extensive calculation about timmings of the application

It may happen that the additional changes (if any) can not fit under the initial cost estimation. Or even that we recomend to drop some features in the project according the (MVP). We will contact you again our recomendation of any changes and if you agree we will modify the functional requirements and the project estimate.

Develop and code

This stage is the hearth of any project. With all the documentation ready from the previous stages we can start coding the project.

Everytime we finish a new feature, we will upload the new code to a testing environment (microrelease) so you can access and see the new changes by yourself and the testing users (testing). Driven by the user test and your opinion we can make changes in the project.

The microrelease testing cycle will be repeated for each feature until the application is completely finished.

Free support

During this time we will resolve any question or problem about the web application.