Proceso

Para alcanzar el éxito debemos tener un proceso organizado y planeado.

Idea y Análisis

Una vez que el cliente o stakeholder solicite un proyecto, lo primero que debemos elaborar es el plan estratégico que se adecue más al negocio, para esto debemos comprender la misión, visión, metas, objetivos y la situación actual con la finalidad de definir y alinear los requerimientos hacia el éxito del proyecto y partiendo desde una base sólida.

Entregables

  • Análisis de la situación actual.

    Herramientas

    • Google Meet / Facetime / Call
    • Google Docs
    • Correos electrónico

      Planeamiento e investigación

      El siguiente paso es comprender los requisitos técnicos del proyecto y su viabilidad. Cada pieza de software, ya sea una aplicación, un rediseño del sitio web o una nueva función, debe resolver el requerimiento del cliente.

      A medida que avancemos la fase de planificación, debemos realizar reuniones o brainstorming para recolectar los detalles específicos del proyecto.

      Una vez que el equipo obtiene la información necesaria, podemos comenzar a definir los requisitos técnicos, los términos de prueba, fases y la tecnología que más se ajuste al cliente. En esta fase también podemos comenzar la planificación del sprint (si estamos utilizando un proceso ágil) o dividir las tareas grandes en pasos más procesables.

      Entregables

      • Plan de dirección de proyecto
      • Definir el alcance, tiempos y costo.
      • Definición de requerimientos
      • Casos de uso
      • Evaluación de riesgos

        Herramientas

        • Google Meet / Facetime / Call
        • Google Docs
        • Correos electrónico

          Diseño

          Con los requisitos establecidos, es hora de comenzar a diseñar, cómo se verá el software y cómo funcionará. No estamos hablando de estética aquí, sino de funcionalidad y flujo.
          Es hora que los expertos en UX/UI desarrollen los bocetos y flujos que resuelvan los requerimientos anteriormente definidos. Teniendo como prioridad experiencia de uso y satisfacción del usuario.

          Dependiendo del proceso de desarrollo que usemos, podemos definir sprints con tramas simples para mostrar cómo funcionarán las interacciones en el software, o crear prototipos completos que emulen el comportamiento del producto final.

          Alternativamente, podemos utilizar la información recolectada del feedback para mejorar el diseño, una característica o idea.

          Entregables

          • Bocetos
          • Storyboards
          • Wireframes
          • Flujos de usuario

            Herramientas

            • Adobe XD
            • Sketch
            • Marvel App
            • Adobe Photoshop

              Desarrollo

              Con los requerimientos y diseños ya definidos, es hora de darle vida. Esta fase es obviamente la etapa más difícil y potencialmente más riesgosa. Sin embargo, ya sea que estemos trabajando en Sprints ágiles o utilizando el método de cascada más tradicional, tenga la confianza que podremos desarrollar cualquier característica o función definida en los diseños, ya que contamos con desarrolladores full stack altamente capacitados.

              Entregables

              • Demo (frontend y backend integrados)
              • HTML, CSS, Javascript y CMS
              • Lenguajes Frontend (React, VanillaJS, JQuery)
              • Lenguajes backend (Php. Python, .Net, Java)
              • Configuración de base de datos (Sql, NoSql, Transact sql, PL/Sql)

                Herramientas

                • Visual Studio Code / Sublime
                • WordPress, Drupal, Joomla, Django
                • WooCommerce, Magento, Shopify
                • Boilerplate propio: Bootstrap 4, librerías básicas, configuración de velocidad y seguridad
                • Preprocesadores: Sass, postcss
                • Gulp / Webpack
                • Integración continua: Jenkins
                • Mysql, MariaDb, PostgreSQL, SQL Server, Oracle DB

                  Pruebas

                  Una vez tengamos un prototipo funcional, realizamos diferentes tipos de pruebas adecuadas a la solución informática, tecnología y metodología usada. Algunas automáticas y otras emulando entornos reales, de tal manera que rastreamos y reparamos errores. Sim embargo, a pesar del esfuerzo anterior puede presentarse errores en pruebas con el cliente, siendo el caso son solucionadas de manera inmediatamente.

                  Entregables

                  • Reporte de errores

                    Herramientas

                    • Selenium
                    • Appium
                    • Mantis
                    • Firebug / Firepath
                    • Junit, PHPUnit
                    • Control de versiones: Git, Mercurial

                      Despliegue

                      Con el trabajo pesado realizado es hora de lanzar la solución informática. De lo que estamos hablando es pasar el código a producción, no presentar o implementar una estrategia de lanzamiento al mercado (esto depende más de sus equipos de ventas y marketing).

                      Entregables

                      • Manual de usuario

                        Herramientas

                        • Hosting Compartido
                        • Servidor Dedicado
                        • VPS (Servidor Privado Virtual)
                        • Cloud Hosting (AWS, Google Cloud)
                        • Hosting Reseller
                        • Mail Hosting
                        • Cpanel, Plesk, WHM, Terminal, FTP, SFTP, SSH
                        • Base de datos (Sql, NoSql)
                        • Zapier

                          Mantenimiento y actualizaciones

                          Los requisitos y las necesidades del cliente siempre están evolucionando. Y a medida que los usuarios comienzan a usar la solución informática, indudablemente solicitarán más o diferentes funcionalidades. (Sin mencionar el mantenimiento básico y el mantenimiento de su software para garantizar el tiempo de actividad y la satisfacción del cliente).

                          Todas estas solicitudes deben regresar a la lista de tareas pendientes que se presupuestara y desarrollara en una segunda fase.


                          Metodología usadas

                          Empleamos la metodología que más se adapta al cliente, tiempo y costos.

                          Waterfall

                          Fases:

                          • Planning
                          • Requirements
                          • System and software design
                          • Implementation
                          • Testing
                          • Deployment
                          • Maintenance/Updates

                          Agile and Scrum

                          Fases:

                          • Product Backlog
                          • Sprint backlog
                          • Sprint (Design & Develop)
                          • Release working software
                          • Feedback and validation (add to backlog)
                          • Plan next sprint