Metodología
Realizamos nuestros proyectos de software siguiendo un proceso certificado por la norma ISO 9001, llevando a cabo las siguientes actividades:
Nuestro proceso es lo suficientemente flexible para permitirnos trabajar bajo metodologías lineales, como el desarrollo en cascada, o bajo metodologías ágiles o iterativas.
Definición de Requisitos
Planificamos y conducimos reuniones de relevamiento de requisitos con foco en las necesidades de los usuarios y en el objetivo del sistema deseado.
Utilizamos las herramientas más adecuadas de acuerdo al nivel de madurez de los requisitos lo que nos permite agilizar el proceso de relevamiento.
Planificación
Durante la etapa de planificación se realiza la definición de los perfiles que estarán involucrados en el desarrollo de la solución de acuerdo a la tecnología, complejidad y tamaño del proyecto.
Se prioriza el involucramiento de personal con conocimiento de la solución (en caso de proyectos de mantenimiento evolutivo) y/o del cliente, lo cual ayuda a mitigar riesgos asociados a desconocimiento en ambos aspectos.
Como resultado se obtiene un detalle y descripción de las actividades a realizar durante la ejecución del proyecto, un plan temporal que contempla todas las etapas del proyecto y la definición de los mecanismos de seguimiento.
Análisis y Diseño
El análisis de los requisitos tiene como finalidad la detección de requisitos incompletos o inconsistentes y riesgos asociados a su cumplimiento. El diseño tiene como finalidad sentar las bases para la construcción de un sistema confiable. En esta etapa se definen las tecnologías a utilizar, si estas no hubieran sido definidas de antemano por el cliente.
Durante esta etapa se generan los artefactos modelados en UML que son más relevantes para la construcción de la solución. Estos artefactos son definidos de acuerdo a las características de la solución. De este modo, se busca hacer foco en las partes complejas y generar documentación útil que pueda ser mantenida y actualizada durante la vida de la solución.
También se desarrollan los casos de prueba funcionales.
Codificación
Contemplando los lineamientos planteados en las etapas anteriores, la etapa de construcción se lleva a cabo siguiendo las mejores prácticas de la tecnología utilizada con el objetivo de obtener un producto confiable, escalable, usable, performante y mantenible.
Utilizamos herramientas para la gestión del código, gestión del conocimiento e incidentes. Los casos de prueba unitarios nos permiten verificar el código en forma continua detectando errores en etapas tempranas. Contamos además con herramientas que nos permiten obtener métricas de calidad de los productos desarrollados.
Al finalizar la etapa de desarrollo se actualizan y ejecutan los casos de prueba funcionales para verificar el cumplimiento de los requisitos.
Aceptación del Cliente
Acompañamos a los usuarios durante la ejecución de los casos de prueba para que puedan validar el cumplimiento de los requisitos.
En proyectos extensos se realizan despliegues parciales para que los usuarios tomen contacto temprano con la solución, esto nos permite contar con tiempo para realizar ajustes antes de la finalización del proyecto.
Puesta en Marcha
Emulamos el entorno de ejecución de acuerdo a las especificaciones de nuestros clientes para minimizar riesgos asociados a diferencias entre los ambientes.
Durante el despliegue de las soluciones, brindamos asistencia siguiendo procedimientos documentados y validados en nuestro ambiente y aquellos que el cliente disponga como fases previas a la puesta en producción.
Gestión y Seguimiento
Durante la construcción de la solución llevamos a cabo actividades de soporte al desarrollo que nos permiten realizar el correcto seguimiento del avance del proyecto, detectar y corregir desvíos, asegurar la calidad del producto, mantener un canal activo de comunicación con el cliente y premiar el buen desempeño del equipo.
Entre estas actividades se encuentra: gestión de riesgos, reuniones de seguimiento de proyecto, redacción de reportes de avance, revisión del diseño, gestión por objetivos, gestión y documentación del procesos de implementación.
Tecnologías
Utilizamos nuestros conocimientos y experiencia en las siguientes tecnologías para la construcción y despliegue de nuestras aplicaciones.
Plataformas / Lenguajes Servidores de Aplicación Servidores de Base de Datos Tecnologías Web Tecnologías Java / Frameworks Tecnologías mobile Builds / SCM / Calidad